第二章 数字下变频(DDC)基础理论
Yj(Xj,Yj)Yi θ(Xi,Yi)β X j Xi
图2.9 CORDIC算法圆周系统平面坐标旋转
从图中可以看出,将向量(Xi,Yi)旋转?角之后,就会产生新的向量(Xj,Yj),由矩阵形式表示:
?Xj??cos??sin???Xi?????? 式(2-30) ?Y???sin?cos???Yi??j??式中的R是圆周的半径。如果采用迭代的方式,那么就可以在多步旋转内完成一个旋转角度,每一步的旋转完成目标角度的一小部分,多步旋转之后将会实现一个平面坐标的旋转。消除 cos 因子之后,得到单步旋转公式为:
?Xi?1??1???cos?i?Y?i?1??tan?i?tan?i??Xi????式(2-31)1??Yi?
?i?Si令tan11,??Sarctan(),其中Si= {-1;+1}。显然,所有的ii2ii2n?1i?0迭代角度之和一定等于目标旋转角度,其中单步旋转的角度 Zn可表示为:
Zn????Si?i 式(2-32)
Si为Zn的符号函数。在旋转模式下,当Zn<0,Si=-1;Zn>0,Si=+1;综合
上述等式可得:
?i1?????XXSi?1i2?i????????cos?式(2-33) i??i?????YS2Y1?i??i?1??i?经过N次迭代,也就是向量旋转N次以后:
?Xj?N?1?Si2?i??Xi??cos?i??i???? 式(2-34) ?Y???S21?i??Yi??j?i?0
从式(2-34)中可以看出,对于给定次数的向量旋转,所有的cos乘积项K是一
17
第二章 数字下变频(DDC)基础理论
个常数,可以提出来。当迭代次数N趋向于无穷大时,K值收敛于:
1K?cos(arctan())?0.607253式(2-35) ?i2i?0在旋转模式中,Z初始化为需要旋转的角,当Z旋转为0时,CORDIC算法的最后输出如式(2-36):
?Xn?1?K[X0cos(Z0)?Y0sin(Z0)]??Yn?1?K[Y0cos(Z0)?X0sin(Z0)]式(2-36) ?Z?0?n?1?2.5.2 FIR滤波器
滤波从时域角度看是从接收信号中提取目标信号并去除不感兴趣信号的过程,从频域角度看是根据某一希望的指标对信号的频谱进行修正、整形或处理的过程。数字滤波器在运算精度、可靠性、应用灵活性和处理能力等方面比模拟滤波器都更有优势。根据系统时域性能,数字滤波器分为有限长单位脉冲响应(Finite Impulse Response,FIR)和无限长单位脉冲响应(Infinite Impulse Response,IIR)滤波器。FIR滤波器最主要的特征之一就是具备线性相位的特性,也就是说,对频率不一样的正弦波,滤波器产生的相移以及正弦波自身的频率之间成直线关系。所以,通过滤波器通带的信号,除了由相频特性的斜率引起的延迟外,通带内的所有信号基本都能够不失真地保存下来,这一点在很多应用场合都有所需求。
FIR滤波器的脉冲响应由有限个采样值构成,设单位冲激响应h(n)的长度为N,其系统函数和差分方程分别如下式所示。
H(z)??h(n)z?n 式(2-37)
n?0N?1y(n)?h(n)x(n?m) 式(2-38) ?m?0N-1其中N为FIR滤波器的阶数,h(n)为第n级系数,x(n)为输入,y(n)为卷积输出。滤波器的设计方法主要有窗函数法、频率采样法和切比雪夫等波纹逼近法。现阶段应用Matlab软件中的FDATool工具可以很方便的设计各种滤波器,在后文中的工作中再详细的介绍FIR滤波器的设计。
18
第二章 数字下变频(DDC)基础理论
2.6 本章小结
本章作为论文设计的理论依据,对数字下变频处理的理论基础作了详细的介绍,包括信号采样理论、多速率信号处理理论、数字滤波器理论以及数字正交检波技术等,为后续的数字下变频打下理论基础。通过对多速率信号处理理论的研究,发现了数字下变频的多速率处理中将会遇到的问题,得出解决此类问题的办法。通过对数字滤波器理论的介绍,了解了数字滤波器在数字下变频中的重要作用。这些理论非常重要,贯穿全文,是整个数字化中频接收机从方案设计到具体实现的理论依据。
19
第三章 数字下变频(DDC)各模块设计
第三章 数字下变频(DDC)各模块设计
3.1 数字下变频的基本实现方案
数字下变频器输出信号的后续处理,主要是完成信号解调、解码、抗干扰、自适应均衡以及信号参数估计等工作。由于正交分解后的I/Q 两路基带信号对上述后续处理通常带来很大的方便和良好的性能,因此大部分数字下变频设计方案都采用了正交双通道处理的典型结构。图3.1是本设计采用的整体实现方案,主要包括4个基本模块:混频器模块、FIR 滤波抽取模块。
FIRA/D输出的数字中频信号抽取I路DDSFIR抽取Q路
图 3.1 数字下变频器的整体实现方案
模拟中频信号经由前端的模数转换器(ADC)采样而得到数字中频信号,数字信号先与数控本振(NCO)产生的两路正交本振信号在混频器(乘法器)中进行混频,将数字中频搬移到基带。经过数字混频器后的信号被输入到一个低通滤波器中,滤除倍频分量和带外的无用信号,然后再进行采样率的抽取处理。
将整个 DDC 模块分为以下3个基本模块进行分别设计:混频器模块、FIR滤波器模以及抽取模块。下面就分别介绍这三个基本模块具体的实现方案和算法。
3.2 基于DDS的数控振荡器的设计
3.2.1 混频器模块设计
本模块主要包括数控振荡器(Numerically Controlled Oscillators)和混频器(乘法器),数控振荡器(NCO)的目标就是产生一个理想的正弦或余弦波(下面用正
弦来通称正弦或余弦),更确切的说是产生一个可变频率的正弦波样本,如下式:
式(3-1)
式中,为本地振荡频率,为输入信号的采样频率。
20
第三章 数字下变频(DDC)各模块设计
正弦波样本的产生主要有两种方法[21]:
①实时计算。实时计算需要计算特殊的三角函数,正弦函数和余弦函数都是非线性的函数,在普通的DSP处理器中实现比较复杂,耗费的资源较多,因此一般不采用实时计算的方法。
②查表法。即事先根据各个DDS的相位计算好对应的正弦值,并按照相位角度作为地址存储该相位的正弦值数据。DDC工作时,每向DDC输入一个待下变频的信号采样样本,DDS就增加一个相位增量,然后按照相位累加角度作为地址,查找该地址对应的数据并送到数字混频器,与信号样本相乘,乘积样本再经低通滤波器滤波输出,这样就完成了数字下变频。
基于DDS的NCO的FPGA实现如下图3.2所示:
相位累加器相位加法器本振偏移频率输入正弦输出寄存器寄存器正/余弦表只读存储器余弦输出数字本振频率寄存器本振偏移相位输入寄存器
图3.2 NCO的FPGA实现框图
NCO由三部分组成:包括相位累加器、相位加法器及正/余弦表只读存储器。相位累加器将输入的数字本振频率与本振偏移频率之和转换成相位,每来一个时钟脉冲,相位在原来的基础上增加一个相位增量。相位加法器的功能是产生一定的初始相位,并通过累加器直接对DDS输出的相位进行调整。DDS的频率精度由累加器的字长决定,但由于受存储容量的制约,为了保证足够的频率分辨率,累加器的位数要足够长。如果直接将累加的结果作为正弦查找表的输入地址,正弦查找表将会很长,这样会浪费很多的存储资源[22]。在FPGA实现时,必须考虑资源的使用情况,因此需要对累加器的输出进行截取以得到地址信息。这种截取不会降低频率分辨率,但是会带来相位噪声,因为截取后的相位查找表的准确度将会大大降低。但是正弦查找表的大小会大大降低,相位的正弦值由查找表获得,也就是说,相位角度与其正弦值表存在一一对应关系,,表示以为地址,该地址上的内容数据。其实只要保持一一对应关系,正弦查找表的地址不一定要是真正的相位值。
21