1、第 卷第期 年月太 原 师 范 学 院 学 报(自然科学版)J OUR NA LO FT A I YUANN O RMA LUN I V E R S I T Y(N a t u r a lS c i e n c eE d i t i o n)V o l N o S e p 收稿日期:基金项目:四川省教育厅人才质量重点项目(J G );校科研创新团队及英才科研基金项目(C X T D ,Y C )作者简介:王睿(),女,四川资阳人,在读硕士研究生,主要从事软件无线电和E D A技术研究通信作者:肖顺文,教授,E m a i l:x i a o s h w c o m基于C O R D I C算法
2、的数字控制振荡器设计与实现王睿a,b,肖顺文b,雷小英a,b,吴静瑜b(西华师范大学a 物理与天文学院;b 电子信息工程学院,四川 南充 )摘要针对传统查表法占用R OM容量较高的不足,基于C O R D I C算法代替R OM设计一种速度快、精度高、节约资源的数字控制振荡器的目的采用了对C O R D I C算法进行旋转迭代变换,对C O R D I C算法进行角度预处理和F P G A流水线结构实现C O R D I C算法的方法通过Q u r a t u s和M o d e l S i m软件的仿真测试,得出了数字控制振荡器的正交信号、幅值以及相角,即在 级流水线结构下,计数器和角度预处
3、理正确运行,得到了完整的 循环的正、余弦波形 关键词数字控制振荡器;C O R D I C算法;F P G A;软件无线电 文章编号 ()中图分类号T N 文献标识码A 引言数字控制振荡器不仅是软件无线电、直接数据频率合成器、快速傅立叶变换等技术的性能参数的主要决定因素,并且也是其重要组成器件,作用是生成可控的正弦波或余弦波目前设计实现数字控制振荡器的方法主要有以下四种:使用s m a l l r o m存储 的正弦值或者余弦值;使用l a r g e r o m存储整个周期的正弦值或者余弦值;使用C O R D I C算法进行迭代运算;基于乘法器实现分别特点是小型表保存的波形不完整,且存在抖
4、动,而大型表虽然波形质量较高,但是对芯片的R OM容量要求很高,就乘法器而言,对使用芯片要求比较高,且资源开销过大所以为了避免使用大容量R OM,可以考虑利用算法来产生正余弦的波形样本基于矢量旋转的C O R D I C算法正好满足了这一需求,该算法主要用于计算三角函数、双曲函数及其他一些基本函数算法的特性是数字的序列和线性的收敛域,在迭代足够的次数之后,结果有很高的精度保证 数字控制振荡器的原理与设计数字控制振荡器的基本结构是相位累加器、相位加法器、波形发生器这三大部分,相位累加器是将系统时钟频率和频率控制字之和换算成相位,当每个时钟脉冲到来时,在之前的相位换算结果上加一个相位增量;相位加法
5、器是将相位累加器的寄存器中的相位与相位控制字相加,产生相移后的相位;波形发生器的作用是将当前数字相位进行对应幅值转换后输出任意的正弦波形和余弦波形综上所述,数字控制振荡器的原理结构图,如图所示波形发生器是数字控制振荡器的关键核心部分,数字相位数据送入波形发生器后,利用C O R D I C算法进行幅值转换,计算出相应的正交信号、幅值和相角通过移位操作、角度预处理等方法和 级流水线结构在F P GA中进行设计和实现波形发生器数字控制振荡器输出的信号频率FOU T和分辨率 f由下列公式决定:FOUTMFC L KN、fFC L KN其中,M是频率控制字,FC L K是系统时钟频率,N是相位累加器精
6、度N值取得越大,f就越小,相应的频率精确度越高,N的取值范围会被计算数值的正方向取整所影响,目的是确保频率分辨率在系统设计指 图数字控制振荡器原理结构图标要求内YYKZKYKZKZ图点的旋转 数字控制振荡器的C O R D I C算法实现C O R D I C算法是由J V o d e r于 年提出的,是完成直角坐标系到极坐标之间转换的一种高效快速算法 C O R D I C算法分为矢量方式和旋转方式两种方式矢量方式是给定一个矢量的X、Y坐标,计算该矢量的大小(平方和的平方根)和角度;旋转方式是给定初始矢量的X、Y坐标以及要旋转的角度,计算旋转后矢量的大小和角度其矢量方式原理叙述如下,从起始点
7、(xi,yi)不断进行矢量旋转,逐步逼近最终点(xj,yj),最后所转过的角度就是所要计算的值,如图所示根据极坐标和三角函数理论知识,可知起点和终点的关系的递推形式可写成:xn yn c o snt a nnt a nnxnyn()设t a n为i,i,得a r c t a n i,则nSnn,其中Sn那么矩阵中t a nnSnn,可得xn yn c o snSnnSnnxnyn()又设c o snK,通常定义K为模校正因子,根据递推原理,经过n次迭代后,得到n个c o s因子相乘项,当n值固定时,所有的余弦值乘积项收敛于一个常数K,在计算过程中按照常数处理若迭代 次,则K nc o sa r
8、 c t a n n()为了继续完成旋转过程,再 定义一个变 量Zi,Zn是尚未旋 转角度,Zn是所需旋 转角度,SnnSna r c t a n n是本次旋转角度,在算法执行期间追踪叠加的角度Zn ZnSna r c t a n n()在迭代过程工作中使Z旋转到,则Sn的角度由Zn确定Sn,(Zn),(Zn),经过n次旋转迭代后的结果为xn,yn,znA n(xc o sZys i nZ),A n(xs i nZyc o sZ),()其中,A nK ,若赋一组特殊的初值,xA n,y,z时,则化为太 原 师 范 学 院 学 报(自然科学版)第 卷xn,yn,zn c o s,s i n,()
9、这种工作模式称为旋转模式,得到的是数字控制振荡器的正交信号在迭代过程工作中使y旋转到,则Sn的角度由yn确定,Sn,(yn),(yn),经过n次旋转迭代后的结果为xn,yn,znA nxy,Za r c t g(yx)()若另赋一组初值,xx,yy,z时,()式则化为xn,yn,znA nxy,a r c t g(yx)()这种工作模式称为矢量模式,得到的是数字控制振荡器的幅值和相角 C O R D I C算法的优化设计C O R D I C算法的应用极广,使用频繁,但传统的C O R D I C算法还有许多可以改良优化的地方,这里结合数字控制振荡器的设计,提出以下三点优化方法使用C O R
10、D I C算法进行较多级数计算时,一个时钟周期内并不能完成如此复杂的计算,那么就需要分为一级一个时钟周期来进行计算,将上一级的结果放在寄存器中,在下一级的计算中进行使用,这样的处理方式可以采用流水线结构在C O R D I C算法中包含了i的计算,使用乘除法进 行 运 算 非 常 占 用 资 源,这 里 可 用 移 位 操 作 来 代 替C O R D I C算法的角度覆盖范围较窄,并不能完全覆盖,故需要进行角度的预处理,扩大角度范围在F P GA的设计中通常采用流水线结构,即每个时钟脉冲都接受下一条处理数据的指令这样流水线结构多个单元可以同时进行移位和加法运算,不仅减少资源的占用,而且很大程
11、度上增加了数据处理效率,运算速度较其他方式快很多前面的算法中提到了i的计算,如果按照常规乘法或者除法进行计算,会耗费过多资源,造成不必要的资源占用因为在F P GA中,数据都是转换为二进制数进行处理,这时采用移位操作即可来代替乘除法,不仅加快了运算速度,还节约了硬件资源移位操作的原理是二进制数乘以,相当于这个二进制数整体左移一位,每位扩大两倍,相加的值也会扩大两倍;二进制数乘以,相当于这个二进制数右移一位,每位缩小两倍,相加的值也会缩小两倍;那么乘以i相当于右移i位通过()式的计算,的范围为 ,并不能适用于数字控制振荡器产生,的正余弦波形,为了解决这一问题,需要对角度进行预处理,通过控制逻辑模
12、块来控制数字控制振荡器 如下对C O R D I C算法中的角度输入Z和控制模块的输出xn、yn进行相应的处理,角度预处理如表所示根据上述理论,采用 级流水线结构进行移位操作和角度预处理,C O R D I C算法的F P G A流水线设计如图所示表角度预处理Z的范围Z的处理xn的处理yn的处理,Zxnyn(,Zynxn(,Zxnyn(,Z ynxndddTJHOdddTJHOdddTJHOdddTJHOdddTJHOYOZOOZY图C O R D I C算法 级流水线结构图第期王睿,等:基于C O R D I C算法的数字控制振荡器设计与实现 仿真验证设计使用的硬件平台是A l t r e
13、a公司的C y c l o n eEE P C E F C 芯片,编程环境是Q u r a t u s ,仿真工具是M o d e l S i mS E 文中的C O R D I C算法和仿真激励文件全部采用V e r i l o gHD L语言编写设计采用的是 级流水线结构,系统时钟频率FC L K MH z 数控振荡器的仿真时序图如图所示,仿真波形图如图所示在 MH z的时钟频率下两个计数器能够正常计数,角度预处理也能正常进行,并能够显示出完整的 循环的正、余弦波形本系统基于C O R D I C算法实现了数字控制震荡器图M o d e l S i m软件中数字控制振荡器的仿真时序图图M
14、o d e l S i m软件中数字控制振荡器的仿真波形图 结论本文研究的是基于C O R D I C算法的数字控制振荡器及其通过F P GA进行实现,采用了流水线结构、移位操作和角度预处理等方法实现了数字控制振荡器相比于其他方式实现的数字控制振荡器,具有运行速度快、精度高、节约资源,生成的正余弦波形效果好等优点数字控制振荡器还广泛应用于数字上、下变频器和各种信号调制中,在软件无线电领域有着重要的用途和意义参考文献:楼才义,徐建良,杨小牛软件无线电原理与应用M 版北京:电子工业出版社,温浪明用MA T L A B在F P GA芯片中实现数字下变频设计的研究J现代信息科技,():薛金鑫,马崇鹤,
15、周磊,等基于C O R D I C算法的时域交织结构N C O设计J电子设计工程,():,孔令甲基于一种改进的C O R D I C算法的F F T芯片设计J电子技术与软件工程,():肖顺文,陈亚军,戚淮兵 C O R D I C算法的优化及其硬件实现J西华师范大学学报(自然科学版),():张银娣高精度浮点反正余弦函数运算单元硬件设计D哈尔滨:哈尔滨工业大学,王璞一种基于S D R的数字下变频模型的F P GA设计与实现D昆明:云南大学,廖翠萍,薛广月,王峰,等基于F P GA的GN S S数字中频信号源设计与实现C/第十五届全国信号和智能信息处理与应用学术会议论文集重庆:中国高科技产业化研究
16、会,:刘恒,钟俊,刘辉基于C O R D I C算法的模值计算及优化设计J龙岩学院学报,():蔡长城基于F P GA的数字下变频和数字同步技术实现D广州:华南理工大学,【责任编辑张丽萍】(下转第 页)太 原 师 范 学 院 学 报(自然科学版)第 卷N u m e r i c a l S i m u l a t i o no fE l e c t r o m a g n e t i cW a v eS i g n a lE v o l u t i o ni nP l a s m aL I UY a n l i n,L I UJ i n g c h e n,(S c h o o l o fE l
17、 e c t r o n i ca n dE l e c t r i c a lE n g i n e e r i n g,A n h u i S a n l i a nU n i v e r s i t y,H e f e i C h i n a;I f l y t e kC o,L T D,H e f e i ,C h i n a)A b s t r a c tI no r d e rt oe x p l o r et h ep r o p a g a t i o nc h a r a c t e r i s t i c so fe l e c t r o m a g n e t i cw
18、 a v ei np l a s m ae n v i r o n m e n ta sa ni m p o r t a n tc a r r i e ro f r a d i oc o mm u n i c a t i o n T h ee v o l u t i o np r o c e s so fe l e c t r o m a g n e t i cw a v e i np l a s m au n d e r f r e eb o u n d a r yc o n d i t i o n s i so b t a i n e db yu s i n gM a x w e l l
19、se q u a t i o n s,u s i n gu n i f o r mp l a s m a l a y e ra n ds o l v i n gt h en u m e r i c a l s o l u t i o no f t h e i n i t i a lv a l u ep r o b l e mi n t h ep l a n eg e o m e t r i cm o d e l B ye s t a b l i s h i n gp h y s i c a lm o d e l a n dn u m e r i c a l s i m u l a t i o
20、n,t h e i n f l u e n c eo f r e s i s t i v i t ya n dr e s i s t a n c ew a l lm o d eo ne l e c t r o m a g n e t i cw a v ee v o l u t i o np r o c e s s i sa n a l y z e d T h er e s u l t ss h o wt h a t i nt h ep r o c e s so fe l e c t r o m a g n e t i cw a v ep r o p a g a t i o ni np l a
21、s m a,t h em a g n e t i ce n e r g yo fp l a s m aw i l l g r a d u a l l y i n c r e a s ea n df i n a l l yr e a c hn o n l i n e a rs a t u r a t i o nw i t ht h ec h a n g eo f t i m e T h em a g n e t i c e n e r g yw i l l g r a d u a l l yd e c r e a s ew i t h t h e i n c r e a s eo f r e s
22、 i s t i v i t y I na d d i t i o n,t h em a g n e t i c l i n e so f f o r c ew i l lb er e c o n n e c t e dw i t hi t se v o l u t i o na n da c c o m p a n i e db yt h er e l e a s eo f e n e r g y K e yw o r d sp l a s m a;e l e c t r o m a g n e t i cw a v e;e v o l u t i o n;n u m e r i c a l
23、 s i m u l a t i o n(上接第 页)D e s i g na n dI m p l e m e n t a t i o no fD i g i t a lC o n t r o l l e dO s c i l l a t o rB a s e do nC O R D I CA l g o r i t h mWA N GR u ia,b,X I A OS h u n w e nb,L E IX i a o y i n ga,b,WUj i n g y ub(a S c h o o l o fP h y s i c sa n dA s t r o n o m y;b S c h
24、 o o l o fE l e c t r o n i c I n f o r m a t i o nE n g i n e e r i n g,C h i n aW e s tN o r m a lU n i v e r s i t y,N a n c h o n g ,C h i n a)A b s t r a c tA i m i n ga t t h e s h o r t a g eo f h i g hR OMc a p a c i t yo c c u p i e db y t r a d i t i o n a l t a b l e l o o k u pm e t h o
25、d,a n u m e r i c a l l yc o n t r o l l e do s c i l l a t o rw i t hh i g hs p e e d,h i g hp r e c i s i o na n ds a v i n gr e s o u r c e si sd e s i g n e db a s e do nC O R D I Ca l g o r i t h mi n s t e a do fR OM T h eC O R D I Ca l g o r i t h mi s i m p l e m e n t e db yr o t a t i o ni
26、 t e r a t i v et r a n s f o r m a t i o n,a n g l ep r e p r o c e s s i n ga n dF P GAp i p e l i n es t r u c t u r e T h r o u g ht h es i m u l a t i o nt e s to fQ u r a t u s a n dM o d e l S i ms o f t w a r e s,t h eo r t h o g o n a ls i g n a l,a m p l i t u d ea n dp h a s ea n g l eo f
27、 t h en u m e r i c a l l yc o n t r o l l e do s c i l l a t o ra r eo b t a i n e d,t h a t i s,u n d e r t h e s t a g ep i p e l i n es t r u c t u r e,t h ec o u n t e ra n da n g l ep r e p r o c e s s i n ga r ec o r r e c t l yo p e r a t e d,a n dt h ec o m p l e t es i n ea n dc o s i n ew a v e f o r m so f c y c l ea r eo b t a i n e d K e yw o r d sn u m e r i c a l l yc o n t r o l l e do s c i l l a t o r;C O R D I Ca l g o r i t h m;F P GA;s o f t w a r ed e f i n e dr a d i o太 原 师 范 学 院 学 报(自然科学版)第 卷