《高速DDC系统的实现架构与仿真.docx》由会员分享,可在线阅读,更多相关《高速DDC系统的实现架构与仿真.docx(4页珍藏版)》请在第一文库网上搜索。
1、高速DDC系统的实现架构与仿真摘要:基于FPGA设计了一高速数字下变频系统,在设计中利用并行NCO和多相滤波相结合的方法有效的降低了数据的速率,以适合数字信号处理器件的工作频率。为了进一步提高系统的整体运行速度,在设计中大量的使用了FPGA中的硬核资源区48。Xi1inxISE14.4分析报告显示,电路工作速度可达360MHzo最后给出了在MatIab和Mode1Sim中仿真的结果,验证了各个模块以及整个系统的正确性。数字下变频(DigitaIDownConversion,DDC)是软件无线电系统的关键模块之一,其可将高频数据流值号变成易于后端数字信号处理器(Digita1Signa1PrOC
2、eSS更,DSP)设备实时处理的低频数据流信号。在数字下变频实现中,随着信号采样率的不断提高,数据率也会相应的提高,但是实际应用中随着数据速率的不断提高,数据处理器件(如FPGA)的处理速度会无法满足要求而不能正常工作,从而带来了数字信号处理的瓶颈问题。本设计就是以多路并行NCo技术为基础,研究了如何在FPGA中用多路并行采样数据的方式来解决数据处理器件无法提供高速率的匹配信号的问题,并给出了高速DDC实现的架构和仿真结果。1数字下变频基本原理数字下变频主要由频谱搬移和抽取两部分组成,如图1所示,其中频谱搬移包含数控振荡器(NUmeriCaI1yContro11edOsci11ators,NC
3、O)乘法器和低通滤波器(1PF,1OWPassFi1拄r);抽取桓法抽取滤波器(1PF2)和D倍的抽取,1PF2是为了限制信号的频谱,以免抽取后发生混叠。图1数字下变频结构CFig.1DDCstructure模拟信号经过A/D转换后分成两路信号,一路信号和NCO输出的正弦信号相乘(同相分量),一路和NCo输出的余弦信号相乘(正交分量),之后经过低通滤波器(1PF1)将高频分量滤除,然后信号经过抽取滤波以降低速率,最终输出的两路信号就可以送往后续的数字信号处理器中做进一步的处理。2高速DDC系统设计文中设计了一种基于并行NCO的高速DDC,可大大降低对FPGA处理速度的要求,其实现如图2所示,该
4、系统主要由换向器、并行NC0、乘法器模块和两个多相FIR滤波器组成。换向器右侧的所有电路都是工作在Fs/4的时钟频率上,换向器将速率为Fs,16bit的数据变成4路Fs/4,16bit的数据。对于输入速率要求较高的场合(例如,速率超过500M),对于输入接口需要用到Xi1inx的硬件原语IDDRo4.(加图2DDC结构框图/:1- ig.2I)1)(.b1ock1iagH换向器将一路高速率数据分成四路低速率数据输出,并行NCO的输出频率和起始相位受F1控制,分别输出8路正余弦数据,乘法器模块实现NCo输出数据和四路低速率数据的相乘,输出四路正交分量和四路同相分量,之后将这8路数据送入低通滤波器
5、中进行滤波处理,最后将同相分量和正交分量分别输出。1.1 并行NCO设计NCO是用来产生载波cos3ct和sin3ct的部件。假设NCO的多相分解路数为D,我们可以将x(n)写为如下形式:x(n)=x(0)+x(1)+x(D)+(Q-1)O+()+1)+(0-1)+1:(/?-1)+.(2/7-1)+(?-1)/?!/?-11其中,-共有行GND列,V为工()的总个数令k表示多相分解的各个支路的编号()的笫1个支路用心(,)来表示,即,()=2K(n1)+k),=0,1,2,cri由式(1)和式(2)可以看出,经过多相分解之后,数据由原来一路x(n)变为了D个支路,假设x(n)的采样率为fs,
6、那么多相分解后,每个支路的采样率为fsD,即每一条支路上数据速率变为fsD,相比原来一路x(n)的情况,数据到来的速率慢了D倍。图1中,一路x(n)的采样率为,fs,那么NCO的输出载波相位的速率也必须是fs。假设NCo输出给上面支路的余弦信号为x1C(n),NCO输出给下面支路的正弦信号为x1S(n),假设x1C(n)和x1S(n)的初始相位都为0,其频率都为f1,我们以x1C(n)为例来说明。未采样之前的模拟信号为3c(Q=(Y)s(2/)经过ADC采样,变成数字信号后.用代替上式中的乙得到r(ri7)=cos(2rj7t)=cs(2n-)其中,=1,通常将包c(TJ写作XM),即xuc(
7、n)=c!os(2t-)对于多相分解之后的第A条支路,用,/Ai代替式(3)中的,得到(/n)=cos2(mf1+)夕jZNn)=S2不m叫C沁)由式(4)可以看出,多相分解之后,虽然每个支路的采样率,即数据到来的速率变慢了D倍,但是每个支路NeO输出的频率仍然是f1我们还需要进一步降低NCo的输出本振信号频率,因为通常情况下,利用NCO产生本振信号需要使用一个主时钟fo1k,这个主时钟fo1k必须是FPGA可以稳定运行的时钟,其频率不可能太高,而且,实际应用中,NCo输出的本振信号的频率不能超过主时钟fc1k。因此无法直接产生所需要的输出频率,但是,我们可以利用三角函数的转换关系,间接的产生。本文所设计的NCO采用如图3所示的结构。频率控制字.循环-相位偏移找表相位/A偏移/巾6A查找表二AW输出相位偏口63C(O1)/电丝竺2A查找我=W筋。T输出图3NCo实现结构Fig.3C()hn1(unentationstmc1