基于改进型CORDIC算法的数控振荡器的设计

时间:2022-10-21 09:20:31

基于改进型CORDIC算法的数控振荡器的设计

摘 要:数字式频率合成器广泛的应用于现代电子通信,电子对抗等重要的军事领域。作为直接数字式频率合成技术的核心部分数控振荡器的研究,就有十分必要的意义和价值。本论文在传统的数控振荡器(NumericControlOscillator,简称NCO)的基础上,采用改进的计算机坐标旋转(CoordinateRotationDigitalComputer,简称CORDIC)算法,设计的NCO硬核进行验证,最后生成一个0.8*0.8mm2的硬核。

关键词:CORDIC;数控振荡器;频率

中图分类号:TN752 文献标识码:A 文章编号:1674-7712 (2013) 08-0000-02

频率合成技术是指将一个高密度和高精度的标准频率经过加,减,乘,除的四则运算,产生同样稳定度和精确度的大量离散频率的技术。根据其原理组成的设备或者仪器成为频率合成器。数控振荡器(NCO)是一种全新的频率发生器的核心部分。NCO的目标是产生一个频率可变的正弦波或者是余弦波样本。

一、数控振荡器(NCO)原理

NCO的基本结构是一个相位累加器和一个相/幅转换器。NCO的相位地址累加器根据参考时钟Fclk对M位频率字进行累加,将累加的结果作为相/幅转换器中的输入,相/幅转换器的输出即为正弦值或余弦值。每来一个时钟脉冲Fclk,N位累加器将M位频率控制数据与相位寄存器输出的累加相位数据相加,相加后的结果送至相位寄存器的输入端。

相位寄存器一方面将在上一时钟周期作用后所产生的新的相位数据反馈到累加器的输入端,以使累加器在下一时钟的作用下继续与频率控制数据M相加;另一方面将这个值作为相/幅转换器的控制信号,进行加减和移位运算,输出相应的波形数据。累加器在基准时钟的作用下进行线性相位累加,相位累加器加满时产生一次溢出,完成一个周期,这个周期也就是NCO信号的频率周期。只要改变频率控制字Fcw,字长N,和时钟频率Fclk,就可以改变输出频率和频率分辨率。

二、NCO的硬件实现电路

NCO划分为3个大模块,分别是相位累加器,象限转换器和相/幅转换器。相位累加器由加法器,寄存器和映射单元级联构成,组合来实现相位输入的累加功能。在每一个输入时钟Fcw的边沿处,输入的频率控制字Fcw输入到加法器相加,将相加的结果送入寄存器,在通过映射将相加的部分映射到。寄存器将加法器在上一个时钟所产生的相位数据反馈到加法器,已使加法器在下一个时钟作用下继续与频率控制字相加。这样相位累加器在时钟作用下实现了相位累加。相位累加器的输入为Fcw,它代表了频率信息。Fcw数值越大,即累加的步长越长,输出信号的频率也就越大;反之,Fcw的数值越小,累加的步长越小,输出的信号频率也就越小。相位累加器的运算速度关键在于加法器的速度,为了提高加法器的速度,前面提高了采用流水线设计的40位加法器。在此基础上面,将加法器的结构进行改进,得到累加器的设计。

为了使CORDIC算法满足高速度要求,将循环迭代结构完全展开,形成平行展开结构。在平行展开结构中,只要在每一级的计算过程中插入流水线寄存器,就可形成高全流水线结构,这种结构采用N个相同的单步迭代结构在一个时钟周期内并行工作于这些单步迭代结构同时工作,平均完成一次计算结果只需要一个时钟周期,可以不断地输出计算结果,这种结构的一个主要优点就是计算速度快,相比上节提到的循环代结构在速度上提高了N倍,但是由于将单步迭代结构复制了N倍,也使得硬件开变成循环迭代结构的N倍,这是一个以增加硬件开销来换取速度提高的一个典型。在此中间插入寄存器的,就可以构成相应的流水线CORDIC运算单元。根据改性的CORDIC算法,将最后9到23级的迭代运算,按照一级进位存储加法运算,大大的减少面积。

三、NCO的验证

将此NCO的电路对进行布局布线以后的信息重新进行Primetime检验,得到关键路径的延时大概在5.98ns.关键路径为3.6ns.这样得到的信息可以完全的满足时钟频率是50Mhz的要求。对进行版图以后仿真得到的数据最高不失真输出频率是20Mhz。

参考文献:

[1]李滔,韩月秋.基于流水线CORDIC算法的三角函数发生器[J].通信与电视,1999,6:52-53.

[2]王思聪,文治平,于立新.空间用CORDIC处理器的结构级设计方法[J].微电子学与计算机,2006,23(8):58-60.

[3]周润德(译).数字集成电路-电路、系统与设计[M].北京:电子工业出版社,2004:89-291.

[4]刘树棠(译).信号与系统(第二版)[M].西安:西安交通大学出版社,1998:371-372.

上一篇:锅炉风机运行中常见故障的原因分析及处理措施... 下一篇:探讨计算机网络环境下教学方法