基于FPGA的数控振荡器的设计与实现摘要:介绍一种利用矢量旋转的CORDIC(COordinationRotationDIgitalComputer)算法实现正交数字混频器中的数控振荡器(NCO)的方法
推导了CORDIC算法产生正余弦信号的实现过程,给出了在FPGA中设计数控振荡器的顶层电路结构,并根据算法特点在设计中引入流水线结构设计
关键词:软件无线电;数控振荡器;CORDIC算法;现场可编程门阵列引言在正交数字混频器中,采用数字频率合成技术,可以将数字处理延续到正交调制之后或正交解调之前,滤波器和增益控制就可以用数字方法实现,I、Q两路也就不会存在增益的不平衡,加上数控振荡器(NCO)的低正交误差,可以使系统误差降低到数据的最低比特(LSB)的高精度范围
此外,正交数字混频器更容易与数字信号处理技术结合,使得数字调制更加灵活,进而实现软件无线电所要求的软件可更改的调制解调
数控振荡器是正交数字混频器的核心部分,它具有频率分辨率高、频率变化速度快、相位可连续线性变化和生成的正弦P余弦信号正交特性好等特点
而且NCO的相位、幅度均已数字化,可以直接进行高精度的数字调制解调
随着数字通信的发展,传送的数据速率越来越高
如何得到一个可数控的高频载波信号是实现高速数字通信系统必须解决的问题
为此,作者对如何在FPGA中实现高速正交数字混频器中的数控振荡器的方法进行了探讨
数控振荡器的基本实现原理数控振荡器的作用是产生正交的正弦和余弦样本
传统方法是采用查表法(LUT),即事先根据各个正余弦波相位计算好相位的正余弦值,并按相位角度作为地址存储该相位的正余弦值,构成一个幅度P相位转换电路(即波形存储器)
在系统时钟的控制下,由相位累加器对输入频率字不断累加,得到以该频率字为步进的数字相位,再通过相位相加模块进行初始相位偏移,得到要输出的当前相位,将该值作为取样地址值送入幅度P相位