关闭

关闭

关闭

封号提示

内容

首页 直接数字频率合成器DDS及其FPGA实现.pdf

直接数字频率合成器DDS及其FPGA实现.pdf

直接数字频率合成器DDS及其FPGA实现.pdf

上传者: xl46512 2012-05-08 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《直接数字频率合成器DDS及其FPGA实现pdf》,可适用于IT/计算机领域,主题内容包含南开大学硕士学位论文直接数字频率合成器(DDS)及其FPGA实现姓名:金学哲申请学位级别:硕士专业:微电子学与固体电子学指导教师:秦世才贾香鸾摘要本符等。

南开大学硕士学位论文直接数字频率合成器(DDS)及其FPGA实现姓名:金学哲申请学位级别:硕士专业:微电子学与固体电子学指导教师:秦世才贾香鸾摘要本研究涉及到用FPGA实现直接数字频率合成器(DDS)的方法。由于DDS具有PLL无法比拟的快速频率转换时间、极高的频率精度和分辨率以及易于控制各种调制方式近年来在通信、雷达和电子战等现代通信系统中得到了愈来愈广泛的应用其与锁相环的结合技术己经成为高性能频率基准源韵基本散法之一.利用FPGA实现DDS专用电路芯片的主要特点是能满足用户对特殊功能的要求而且在使用过程中也灵活地改变系统结构。商用DDS专用芯片虽然为电路设计者提供了很多机会并满足了很多场合的需要.但是也有它的局限性并不能满足所有的要求。例如很多商用DDS专用芯片不具备LFM(LinearFrequmcyModul血on,orChirp)功能。本文在对现有DDS技术的大量文献调研的基础上提出了符合FPGA结构的DDS设计方案并利用MAXPLUSII软件在ALTERAFELXlK系列器件上进行了实现。主要研究内容包括:)可以实现LFM功能的位流水线双层累加器的设计:)基于ROM的相位.幅度变换器的设计)DDS控制逻辑及系统设计:)基于CORDIC算法的相位.幅度变换器的设计)CORDIC算法在QAM调制器中的应用。本设计的ChiIpDDS的时钟顾率可以高达loo船z。频率分辨率大约为BHz频率转换时间为.m。。/关键词:直接数字频率容磊器幅。岛:CORDIC:线性蔼磊艟麟正变丽缸镬昂墨真相位一幅度挛换:正交输出乒'Ds(g口:AbstractThispaperhasinvestigatedtheusuageofFPGAinrealizingdirectdigitalfrequencysynthesizer(DDS).DDShasmanyadvantagesoverPLLfrequencysynthesizer,suchasfastsettlingtimeahigherprecisionandresolutionandaneasiercontrolbycomputerandSOon.DDShasbeenusedashighperformancereferencesoffrequencyinmanyareasofadvancedcommunicationsystemssuchasspreadspectrumcommunicationsandRadarere.inaloneorincombinationofPLL.FPG舡c,anbeusedtOrealizeDDS.themainsuperioritiesofwhicharethattheycallnotonlysatisfyUSer’SspecialneedsbutalsoareflexibleenoughtochangethesystemarchitectureAlthoughsomecommercialDDSICsareavailable,butunfortunately,havetheirfunctionallimitations,forexample.mostofthemhavenoLFMfunction.InthisWOrkafterreviewingalotofliteraturespublishedonDDStechnology,aDDSschemebasedonFPGA'sstructureareproposed.andthenimplementedinALTERAFLEXlOKseriesFPGAusingMAXPLUSIIt.Theresearchincludes)designofpipelining一bhfrequencyphaseaccumulatorwithLFMfunotiondesignofphaseamplitudeconverterbasednsineROMLookUpTable:DDScontrollogicdesignandsystemdesignofDDSandQDDS)designofphaseamplitudeconverterbasedonCORDICalgorithmapplicationofCORDICalgorithminQAMmodulator.TheChirpDDSofthisStUdyhasIOOMHzclockfequency,.Hzfrequencyresolutionand.ushoppingtime.Keyword:DirectDi昏talFrequencySynthesizer(DDS)COP.DiCAlgorithmLFM(Chirp)QAMModulator,PhaseAmplitudeConverter,QuadratureDDS(QDDS)第一章绪论DDS的发展状况频率合成技术是电子系统中非常关键的技术。在通信、雷达、导航和电子战方面中需要在一个报宽的频率范围内以快捷的速度.提供大量高精度、商稳定度的频率信号。虽然锁相环频率合成技术笈展非常快应用也银广泛但其频率转换速度不快.分辨率低电路和微机控制复杂。直接数字频率合成器(DDS:DirectDigitalFrequencySynthesizer)的基本结构由J.Tierney在年首次提出【l】。近年来随着VLSI技术的进步这种结构独特的频率合成技术得到了充分的发展f.。但是由于DDS数字化实现的固有特点其输出频谱杂散比较大因此年代末年代初掀起了对DDS频谱研究的热潮。文献Is建立了杂散信号模型对DDS相位截断引起的杂敏进行了深入的分析并以数论为基础得到了一些有益的结论。随后文献】从波形分析角度文献H从傅氏分析角度进行了类似的讨论。在深入研究认识了肋S杂散成因及分布规律后对DDS杂数抑制的研究更不断出现其中包括对相位累加器的改进【】、ROM压缩技术,、抖动注入技术的使用以及对DDS工艺结构和系统结构的改进,等等。直接数字频率合成器的基本优点是在微处理器的控胄下.能够准确而快捷地调节输出信号的频率、相位和幅度。此外DDS具有频率和相位分辨率高、频率切换速度快、易于智能控制等突出特点。这些特点使新出现的DDS及其与锁相环技术组合技术已经成为频率合成技术的理想的解决方案之一。从此近lO多年来AD和Qealcomm等几家公司根据这些改进技术推出了一系列性能优良的DDS专用集成电路.其工作颁率可达IGIIz频率分辨率可到mHz排除DAC的限制杂散指标己可达.dbc以下.其应用领域也不再限于频率合成已有专门用于产生LFM信号的Chj『pDDS器件(f】和表ll中的Q)。随着集成电路工艺的不断改善这些产品的功能也愈来愈强大。现在不仅在一个芯片上能够集成DDS所需要的全部功能.例如频率和相位累加器、相位一幅度变换电路和数模转换器(DAC)等.而且也具备了一些有用的调制能力例如相移键控(PSK)和正交幅度调制(QAM)等『,。目前已经开发瞳用的几种DDS专用集成电路的资料如表l所示。DDS的主要性能指标为时钟频率、频率分辨率、额率之间切换数度、杂散成分和功耗等。不同的DDS有不同的用途.所以没有绝对优秀的产品。DDS的基本结构及工作原理从圉ll所示基本结构可见.DDS是一种混合信号处理器件.其数字部分由数字振荡器(NCO)构成它包括相位累加器、相位一幅度变换电路(大多数用正弦查找表ROM)和控制逻辑电路其模拟部分包括数横转换器和低通滤波器。DDS的工作原理实际上是以参考源频率(系统时钟)对相位进行等可控间隔的采样。参考频率源一般是一个高稳定的晶体振荡器其输出信号用于DDS中各部件同步工作。相位累加器是实现DDS的核心.它在每一个时钟上升沿与频率控肯字t累加一次当累加器计数大于‘时相逝累加器相当于做一次模余运算。正弦查询表在每个时钟周期内根据送给ROM的地址(相位累加器的m个MSB相位值)取出ROM中己存储与该表ll最近开发利用的各种DDS芯片的主要性能指标文献文献文献文献ADQ【【【【工艺lam.m.Sumo‘um.CMOSCMOSCMOSBiCMOSCMOSCMOS最高时钟^dHz巧V‘Ⅺ俗V.V./V/VV分辨率HzO..O...『o幅度量化字长PSKNYNYYYAMNYNYNNQAMNYNYNN删NNNNNY正交输出NYNNNYDACNNNNYNLPFNNNNNNSFDRdBc.功耗lWWmWl、VmW晶体管数面积坍=】.地址相对应的正弦幅值最后将该值送给DAC和LPF实现量化幅值到一个纯净的正弦信号阀的转换。上’‘If。’r!一一。、一~^一一丘~、Yi、。‘。相位累加器输出相位.幅度变换器输出D/AC输出LPF输出翟I.直接数字频率合成嚣(DDS)的啜理图当正弦信号采洋周期为乙=/厶时每个采样周期相应的相位增量为p=C万.a(卜)L为相位累加器的字长C为频率控制字则输出信号的频率为z=昙=等Jr却粤“石如。。‘DDS的频率分辨率即c=时的输出频率为{。={‰|t()()根据Nyquist准则DDS允许输出频率最高为正=厶/.即Cs厶/.在实际情况中受LPF的限制一般工。z%厶。DDS的杂散来源及分析其对输出频谱的影响【,.DDS噪声与杂散的来源图I表示了DDS输出噪声和杂散的个来源。图lDDS杂散来源的数学模型图l中P:相位舍应所引起的误差P。。:ROM压缩算法所引起的误差P:ROM存贮数据的有限字长所引起的误差eO.:D/A转换器所引入的误差.P。:LPF所引入的误差.m时钟的相位噪声.aJ":颁率误差。影响比较明显的主要有以下三个因素:相位舍逝引起的误差:在DDS中.一彀相盟累加器的位数L远大于ROM的寻址位数m.因此累加器的输出寻址ROM时.其Lm个LSB就必须舍去这样就不可避免地产生相位误差称为相位截断误差该误差是DDS输出杂散的主要原因。ROM存贮数据的有限字长引起的误差:由于ROM存贮的位数是有限的k.所以在幅值量化过程中将产生量化误差。D/A转换器引入的误差它是由于D/A转换器的非理想特性而引起的。DAC的非理想特性有:差分、积分的非线性、D/A转换过程中的尖峰电流、转换速率有限等。.理想DDS频谱及杂散来源模型DDS在理想情况下不考虑RoM地址的舍位和正弦波幅度量化的近似即L=m、k=m.同时假定DAC和LPF是完全理想的.这样DDS就等效为一个理想的采样.保持电路其中NCO相当于采样周期为k=/厶的理想采样器DAC相当于时宽为的理想保持电路对采样数据实现阶梯方式重构。蛐艿(f一”图理想DDS等效框图由图l所示等效框图可得s(f)=s(")厅(f)=lsiIl(万f)(fnt。)I向Q)其中:如归蛳:矾仃k:sin(z丌乌拿"):咖(每)()(I.)加={j。釜s为保持器的冲击响应.采榉序列s(")是以。/GCD(L,JF:.)为固期的从而知(功的频谱是一些离教谱线。分析(一|)式知.在离散谱线中.幅度不为。的只有=C厶/=L一条.故对理想的DDS.其s(玎)在to厶】范围内没有杂敞。对sft)作傅氏变换得到颉域响应:咖属(孥)盯胁。p(矿矾一刀如)一占(矿一矾一aItf。,)以上式看出.理想DAC所完成的阶梯重构只改变了输出频谱的幅度和相位而未增加新的频率点。这样伽)的频谱结构即代表了DDS输出的频谱分布。据此可知.理想DDS的输出中没有杂散分量。冒P垃、然而在实际的DDS中由于ROM容量及数据量化位数有限分别带来了相位截断误差和幅度量化误差同时DAC的非理想性也带来了转换误差。正是这些误差在信号频谱中引入了杂散成分。相位截断引入的杂散只取相位累加器输出L位中的高m位对ROM寻址.即舍去低的B=L.m位。已有的理论研究和实际应用都表明这种相位截断是DDS杂散的主要来源。根据式()和图.很容易得到相位截断误差:吖咖cn'B"F(鲁刁()其中G)表示对r作不大于r的取整运算。由此可知P(疗)是以/oco(。,c)为周期的采样序列.在频域上以厶为周期.在(oL,./)内mA=/GcDQc)条离散谱线组成a从()式可以认为P(疗)为g(f)的采样ep(f)是幅值为、周期为/C的锯齿波。由于P(r)不满足狄利克莱条件.无法壹接进行傅氏分析为此文献【】在对P。()修正后完成了博氏分析。结合前述理想DDS分析可得到如下结论:在(ofo./)内.(疗)由r=“/(ⅪD(‘c)条离散谱线组成.其中幅度不为的谱线最多只育(A)条。在(厶/)内s()的杂散频率为厶==(足c。E):。(务K=,..A其中(f)表示x对的取模值。相应于乓:杂敖分量的幅值为己一:至!竺。。。f堑=一r””“l百/(I.I()式()表明.靠:为K的单调函数这样K=时可得到杂散幅度的最大值毒。。=最:=“‘厅GcD。Isin臣GCD(F,,)"文献【从数论仿射变换的角度分析得到DDS杂散分量的一个重要特点即对于具有相同最大公约数G(!D忙。)的所有频率控制字只.DDs对应的输出信号中杂散频率谱线数量及其相位的幅度也是相同的.只是这些杂散谱线的位置发生了相应的变化。ROM正弦瞩僵表的量化误差对频谱的影响当ROM采用k位=进制数保存正弦函数值时量化误差为e。t一=蜘(z厅争”)一砉尺{z‘sinz丌iF(争rill}c.z其中.尺b表示对r做最靠近x的取整运算。显然P。Q)与j印)有相同的序列周期L/(记’D(‘E).因此幅度量化误差在频谱中没有引入新的杂{牧成分而是表现为均匀的噪声基底。通常在一个周期内.P。(”)被认为是在I一/一‘/J间均匀分布的噪声则由量化引起的信噪比为(SNR)。:lgf鳖。七.()现有的DDS性能改善方法.有限字长效应直接频率合成特性的优化主要在于有限字长和正弦函数计算方法两方面【儿】。影响频率纯度的最主要误差源是相位截断。一种相位累加器的简单优化如图l所示.它能够降低谐波幅度dB左右同时在频率转换时减小输出频谱对累加器中的依赖。而且优化结构使得相位累加器的字长近似变为Ll。相位累加器优化结构的唯一缺点是在直接数字频率合成的输出信号的频率中.引入了。/。的相位偏移量。然而对字长为位、时钟频率为MHz的相位累加器其偏移量只有.Hz.在大多数应用中是可以忽略的。.正弦函数计算【...用相位累加器的商m=位寻址ROM.且ROM存贮数据的字长为k=时.需要‘‘bitROM。读取大容量的ROM会降低系统速度.因此.有必要采用正弦ROM压缩技术。l正弦ROM查找襄的取法常用的一种技术是只存储州弧度的正弦采佯点.然后.利用正弦函图lo相位累加器结构的简单优化数的l/波形对称性产生整个牙弧度的正弦采样点。当用相位累加器的最高两位代表正弦函数的象限则最高位表示符号次高位表示相位在一州是增加还是减小如图所示。在大多数直接频率合成器中.数字都是二进制补码形式.因此.ROM查找表的输入必须采用/相位的绝对值.并且输出要乘以.I。这样在求补的时候就会引入ILSB的失调.如图、图.所示。在实践中用一进制补码来代替二进制补码.它不会引入误差。芷弦采样点的相位和幅度的l/LSB的失调是在生成ROM查找表时进行补偿的。这样同时也节省了硬件因为一进制补码可以通过一组异或门来实现。.ROM的压缩技术在常用的压缩方法中正弦函数ROM分为粗采样点ROM和细采样点ROM。假定小=口c是相位地址的总位数a为最高几位b为次高几位.c为最低几位。因此粗采样点ROM有“个采样点细采样点ROM有个采样点。Bj三山一一一一一Soco“BD~图I采用正弦波的l/对称性的DDSo乏晤证戋焉b毒t县位生焉图二进制补码引入的相位失调(假设相位地址字长为bit)园ml”【j/\【r\M以'f'(a)无幅度失调fb)有恫熏失调图l二进制补码引入的幅度失调当a=.b=、c=时粗采样点ROM的输出字长为位细采样点ROM的输出字长为位.则”bit的ROM压缩到b证粗采样点ROM和bit细采样点ROM.其压缩比为:。此外还可以用相位差算法来节省两个位即用州=sl。n(三寸P小代替了s访(三P.这时一尸)一尸卜t一吲最后在ROM输出再加上相位恢复原来的数据。sin(三P一PP=sinlP)其中.P表示相位。()(、DDS的种类.输出脉冲的DDS输出咏冲的DDS只包含相位累加器。它的输出为相位累加器的MSB或溢出信号。.具备调制功能的DDS因为DDS是一种数字信号处理器件.所以易于对它附加调制功能。用DDS可以实现对三个全部波形参数的调制。j(f)=一(Dsin乜厅(C()P加)))()其中.爿()为调幅序列.C)为调频序列.p加)为相垃调制序列。在现有的所有调制技术中.这些三种调制方式可以单独使用或音也可以混合使用a闰卜是拥有这些三种调制功能DDS的系统框图。、图具有调制功能的DDS如图所示一个加法器放在相位累加器前就可以实现调频功能。相位调制要求一个加法器放在相位累加器和相位一幅度变换器之间。调幅功能通过把乘法器放在相位~调幅变换器和D/AC之间来实现。.QAM调制器传统的QAM调制器的系统框图如图l所示。Q舢讧调制器的输出为:』。。D)=()cos。。")Q(r)sinb瑚疗)Qo.o)=Q“)c。如砌n)l(n)siIl‘胛)(’其中州为QDDS【正交输出DDS)的输出角频率)、Q白)为输入数据脉冲符号。为了实现式()需要四个实数乘法器和两个实数加法器(看图)。重I正交输出QAM调制器但是.重新整理式()则可得到L白)=(*osb砌门JSinb。。n)Jsinb脚"炮如)~G))瓯=幽蛞。如砌由sm舭打))sin脚抛一‘”因此.式【)的实珊需要三个实数乘法器和五个实数加法器。J.Chirp(LFM)DDS用DDS可以构成Chirp信号发生器。它有效地用于频率的扫描。数字Chirp信号发生器可以产生线性与精密的调频信号这是用普通的模拟技术(VCO)很难得到的。Chap波形的生成基于如下二次方程:庐()=CtBtA(I.)数字Chirp发生器和普通的DDS相比结构上几乎差不多只不过包含双层累加器而己。图.是它的系统结构。CLKCLKCLK图I数字Chirp发生器本论文的主要研究内容上面介绍了现有DDS专用芯片的发鼹状况、系统构成、主要误差来源和一些有效地设计技术以及DDS芯片的种类。可以说DDS的数字部分决定了芯片的功能.而且占有主要芯片面积。虽然现有商用DDS专用芯片具有良好的特性.而且在很多场合中能满足用户的要求.但是也育它的不足之处。例如.很多DDS专用芯片不具备LFM功能.而且只能在固定的工作方式下使用。如果这些数字部分利用FPGA来代替的话则可以根据用户需要进行设计.而且能在系统上灵活地改变系统结构。况且随着VLSI技术的进步现在FPGA的性能和硬件资源电可以构成~个系统。利累FPGA设计DDS专用电路时.应该注意相位累句B器和相位幅度变换电路的速度及硬件开锁。在通常情况下.相位累加器的位数是壁或缸。尽管在FPGA宏单元中包括了到位加法器.用它们可以很容易实现高达位的相位累加器.但当工作频率较高时.这种方法是不能采用的。为了解决速度问题.需要采用流水线技术。这种流水线技术在商用DDS芯片的设计上也是必要的。为了实现LFM功能.需要附勾Ⅱ一个频率累加器它的设计和相位累加器的基本上一致。相(茔一幅度变换电路比相位累加器的实观还难一些。它不{又要解决速度问题更重要的是要解决资源的问题。一般常用的是基于正弦ROM查找表的方法。这种方法在结构原理上简单.而且准确耋乜商。唯一缺点就是需要一定规模的ROM.而且它的规模.地址线位数增加一位时.就增加到一倍。这样会引起速度和功耗问题。相馒.幅度变换的另一种方法是采用CORDIC算法的。它不需要ROM或者使詈很少的曼鼍而且可以只使用加减法器和移位寄存器计算出各种超越函数。这完全符合FPGA的结构。此外CORDIC算法有效地应用在QAM调制器中【】。如图所示为了实现竺。调制起码需要三个乘法器、个加法器和ROM。但CORDIC算法把这些运算都包括在旋转过程中而且不需要ROM。对CORDIC算法的应用在第三章和第四章将再详细地讨论。根据以上讨论.本论文的主要研究内容设为:)设计具有LFM功能的位流水线双层累加器:)设计基于ROM的相位.幅度变换器:)实现DDS控制逻辑及系统设计:)设计基于CORDIC算法的相位幅度变换器以及在正交输出DDS中的应用:)设计用于QAM调制器的CORDIC旋转器。第二章基于ROM的DDS设计l设计目标根据第一章中的理论研究基于ROM的DDS具有如下功能和指标:可以用于具有固定频率的正弦波生成而且也可以用于线性调频(Chirp):累加器的字长L为用于寻址ROM的相位累加器的输出m为ROM的输出字长k为ll:时钟频率为最高MHz。频率一相位累加器设计.基本概念本设计的DDS可以作为具有固定频率的频率基准源.而且也可作为Chirp波形发生器。为了生成固定频率的输出信号.ROM地址必须以同样的间隔寻址。这意味着累加器在每一个时钟周期将频率控制字E加上本来自己的累加器值。因此累加器一般由加法器和寄存器构成。图l是这样的累加器的框图。phaseIr砣rmermnt恒p#a=。t“nulator、图I用于固定频率基准源的简单累加器输出频率由相位增量的大小直接确定(见式f))。因为相位增量为常量所以输出频率也是常量。在Chirp立用中正弦脉冲序列的频率从指定的起始频率工。。开始线性增加到终止频率Ⅻc目前chirp波形发生器在雷达技术方面具有广泛的应用。图.给出chirp波形和它的特征量。sjdH...fJs‘叩‘JlHfJstop飞/\.|fI.『\i。.八A.Ifll^^fVVVV眦‰IVVVV湖一fr胛/j甲{‘一。、f、一IL.t‘lrI‘II~t图Chirp波形脉冲速率厂尸RP(PRP:PulseRepetitionPefiod脉冲重复周期)表示每秒中Ch岫脉冲数而它的倒数表示Chirp脉冲宽度.即lrm(.)rpp.pChirp脉冲宽度里包含两个脉冲之间的空脉冲区fm。图表示用于Chirp波形发生的双层累加器结构。Fr百.IncrementPhaseIncrementFreq,,kcumutatorPhaseAccumulator图用于Chirp波形发生的双层累加器第一个累加器靛叫频率累加器.它有频率增量输入。第二个累加器就是普通DDS的相位累加器。在每一个时钟周期.不仅相位要进行累加一次.而且频率也进行一次累加。因此可以得到线性变化的频率。.位流水线双层累加器的逻辑设计本设计采用流水线CRA累加器结构。理由在于其结构简单.而且有利于做成流水线结构。如前所述DDS用作chirp波形芨生器时需要给定起始频率。、终止频率。和每一个周期的频率增量y。(见图)。按照方程‘I)Chu'p发生器的起始频率控制字STARTFW、终止频率控制字STOPFw和颁率增量控制亨INC一刚分制为:STARTF:盟.。()一{娃sTOPf:互丝.:二一。瞅FW:芏.:二一f二。(.)(.在每一个时钟周期DDS的累加器从起始频率。乞。开始将颁率增量掣’如上前一个\、d^鼋时钟时的频率值FW。达到终止频率‘时频率值的累加被停止并且寻址ROM的相位累加器的输出也被设为复位aChirp脉冲维持频率控制字eaFvw可以计算如下:首先时钟在一个Cl岬脉冲周期内的数为n一矿厶专吒t(.)由此可见过了NmmP个时钟后达到pRP频率这时输出频率从工。起在每一个时钟周期增加了频率增量V。根据式(.).可以得到一一七Nmp”坷=一专氏弩t.)由此.PRP频率控制字为PRPFWl:盘.cf。‘(.)上式的PRP频率控制字中没有考虑到由流水线结构而引起的时钟个数。对此将在后面再讨论。.流水线加法器结构本设计采用的流水线位CRA加法器结构如图J所示.每位全加器都带着寄存器。一一叵卜二二二二冒二二二瑶一一mg一!卜一!『一~一=囵一一b!:}叫兰兰卜固霉固{}L呈jL王JL王一L星一一J凰‘回t圈.一.===重卜卜~一一匝卜一一压卜一一一一匣弓~一匠圈一图一流水线位CRA加法器.相位累加器的基本单元柜泣累加器的基本单元是由全扣器和寄存器构成的.而且育一个复位输入.用于把输:j复‘t为起始颁宰。它的结构如图.j祈矗图相位累加器的基本单元.频率累加器的基本单元图是频率累加器的基本单元。为了实现起始频率的输入对上述的相位累加器加以修正。该结构在全加器后面设有一个触发器.该触发器有着非同步设位和复位输入。与众不同的是这两个设位或复位输入为时.就起着设位或复位作用。输入逻辑的真值表如表.所示。舾Z=LOADSTARTj可rASTART一.F矸()RESETz=LoADSARTFⅣASTARTFW回{i。“广一L£竖一()LOADstARTFx.V"书O”uL~CⅪ习)。一p一图频率累加器的基本单元表.I起始频率输入逻辑真值表LoadstartfwStart鲰SetzResetzQOllDll:D【liIl|.比较器、勺了实现Chirp二自能.需要罱两个频率:!STOPFw和PRPjW控制累孤器的.!:作遮呵“顿塞捧割字分别作’勾比较嚣的薹准。本设:f采璺j丁流水线终掏.因此最宣于进行泣比较.圈.给出所采用的两个二进数的迭代逻辑比较过程。图两个二进数的迭代逻辑比较过程比较器的逻辑迭代方程如下:COMP(O)=SIG(O)vREF(O)f.)COMP(I)=(szo(i)AREF(剜v嗯媚()o凡腰()^COMP(I一)}(.Z).双层累加器的最后结构图是本设计采用的累加器结构.该结构包括频率累船器、相位累姐器和蕊个比较器a比较器COMPSTOP用于频率累加器输出和终止频率控制宇STOP聊之间的比较丽比较器COMPPRP用于频率累加器输出和PRP频率之间的比较。控制信号RESET设为‘l‘时相位累加器以起始频率字STARTFW被复位。如果频率累加器的输出FW大于或等于终止频率STOPFW比较器COMPSTOP的输出STOPFLAG则被设为‘r。这时.相位累加器继续进行累加操作.但是.寻址ROM的相位累加器输出PW由STOP信号立刻被设为‘’.从而再也不输出FLAGROM地址。为了得到所希望的chirp咏冲宽度mP.频率累加器的输出FW达到PRP频宰控制字PRPFWl(式())时.频率累加器就要立刻被设为起始频率。但是.由于频率累加器的流水线结构起始频率字STARTFW输入到频率累加器需要个时钟.而相位累加器再过一个时钟后寸会输出有效的相位值。此外墒入信号RESET在PRPFLAG设为‘l后第一个时钟才设为‘r。因此为了不要陵Chirp脉冲宽度fPRP再增加.PRPFLAG应该在PRPFwl的前个频率增量设为‘I’即PRPFW=PRPFWI一INCFW:壶巳.‘一.nFW‘,))cLK一图表示信号PRPFLAG和STOPFLAG的时序。.DDS的工作方式根据以上的内夺可以规定五设汁DDS的工作方式如表.所示。由表.可知DDS的工作方式量累朔器的摸式宋确定(bnralor!r墨擘c粤!粤篡。鼍竺擘翼唑擘图DDS累加器的最后结构J‘f.PRP一.fStop一。jj^。。一。一一jj.葛F’一PRPFLAG.STOPFI.AG一一’气手‘图PRPFLAG和STOPFLAG的时序表DDS的工作方式普通方式Chirp方式>f)频室增量af{起始颁率。。sj一<}。。|s{。<}。:终止颓塞。/二。/o任意一(}m(}一一封:PRP颇率‰任意I‰>岛v.累加器的逻辑综合及VHDL仿真利用MAXPLUSII软件在EPFIOKRC.芯片进行了逻辑综合及仿真。双层累加器占有了个逻辑宏单元(相当于%)。图是逻辑仿真结果。在仿其中使用了如下的频率特征量:厶HzIMHz:STARTFW=fcHf,n,p。MHz:STOPFWlebIHaf=Hz:INCFW=aeH厶.IMHz:PRPFWlH:PRPFW=tII。从波形图可咀看出累加器按照设计的要求正常工作在上述的条件下Chirp脉冲周期大约为llus。N=mev.m上uouqut’o晶USu.r^pINCFwOaⅢm噼BFcS明日FFPwOUToSTOPFLAOI............一n(a)整个仿真波形一et匹耍复互二=二圃Time画至垂二二二IntM臣重五三二=P日ESEl厂厂广r厂广r厂n广.pINC。P“EXlACFSC:e."C'P.~E田FF乞.nv一.ToXo嚣IB鬣叫^zco互。阮I’F扩了西(b)部分仿真波形图图.双层累加器仿真结果基于ROM查找表的相位幅度变换器的逻辑设计.ROM的压缩疗法及正弦存贮数据的计算在第一章中.对有关ROM压缩的现有技术简单地做了概括。在本设计中.寻址ROM的相位累加器输出字长m为bit.其中MSB用于判断正弦采样数据的符号(在ⅦDL代码中以SIGN表示).次MSB用于判断正弦波增加还是减小(在ⅦDL代码中以SLOPE表示)。本设计采用Nicolas的ROM压缩技术。根据文献【】的结果剩下的低lO位分别如下分配:A=、B=和C。A包括位到B包括位到C包括位到。A和B用于寻址粗ROM.A和C用于寻址细ROM。图所示这个方法的原理。存贮粗ROM的正弦采样数据用下面的公式来计算。聃瑚垴掣)专协嘶啦古钟丝善粤£南肛)考虑到相位差算法后.式(.)则变成为确班如等爿专等善协由此”lbit的ROM分成为bit的粗ROM和bit的细ROM其减小比率为:l。反而在输出端需要设置合并加法器。量百Fiaed鼍。匹之鼍。\竺么一A面打而丽而订葡面『T酊币百矿’B()()oIaJL唣rBbckDiagram(blPmcipkofROMdivism图.lROM压缩方法.基于ROM的相位.幅度变换器的逻辑设计..CSA加法器设计墨为本设计采用ROM压缩技术所以在输出端需要对具有不同字长和不同深度的输入能够实现加法运算的合并加法器(在VHDL代码中表示为VMA)。圈ll所示本设计的合并加法器。lQ。=PipeincdReg.(a)合并加法器的逻辑框图l一卜i’墨(亚固!霉!:!j\、、二}j二‘#二兰j\~。、二。{卜:i。j、一一Iz\z{辱广\一jj。。可寸而玩/。叫i’\一lqIlJ:c^'t’l』.』.蠹j一i丁slceWed’.{!pj.!ij陋F(b)合并加法器的模块化(c)图l合并加法器和它所代表的符号CodeSymbolS)eboI:}二寥.j.二啦{l霉I:三日=『t.='二二一l覃三墨}:。............一三忘每个符号所代表逻辑图..deskewing设计在合并加法器的输出端设一个deskew电路对合并加法器的输出进行deskew操作。在VHDL代码中.这deskew电路和对相位累加器输出的desk“v电路完全~样。..对基于ROM的整个相位幅度变换器的逻辑构成图.表对整个ROM部分电路的逻辑图。帆SLOPE睾纛号譬矿善一.闸下璺下“一鱼一忌丽j驽.{t赢尝}~(却{一旦埘一'HA~旦盛惜毒簪呼器采TtOkltoy,。。:旺’“丽越j矿”.正交输出DDS的RO、I部分逻辑圈所示正余弦输出DDSROM的逻辑结构.只存贮对应l/弧度的正余弦采样数据。为了简单起吧这时只用相位差算法来计算正余弦采样数据。表.为相应的输出控制逻辑。DD~D.~~酸^Jfo’\ip塾r{j他譬一k!:~l鲁‘>二j!崤卜、f幔Sd{Ik旧f“戥爿!i%。.、卧jl厂L{曼jp’图.正余弦输出ROM逻辑表正余弦输出控制逻辑signslopesolSineCosmeSineCosiIleAdderiIIlAddermlSampleSampleOO’‘addrSC’’addrOl‘l’&addrCS’‘&addrlO’‘&addrCSr’‘addrOll。l’&addrSC’’&addr控制逻辑电路设计DDS有限状态札的状态图如图昕示。RERSETEXI"=el‘匿怒日:粤!!一..一~!IX.E一‘i一\、雌陷f‘二D涮口、、一一一~一‘W#*一FORRESTP/Rq"PRPFLAO,旧(.r一.PRPR..AG。I‘j一~、一瓦~~.鱼燮登旺型璺、I乇RSET=’.V'nEQGEN一旺带日、口~~一’一s肼毋榭口f(’j图.DDS有限状态机SDI)S系统的逻辑综合、仿真及硬件实现.信号输入方法图所示本设计DDS的输入输出端口。图DDS的输入输出端口为了生成omp脉冲.需要设定起始频率、终止频率、PRP频率和频率增量。利用输入指令LOADEN把它们写入到内部寄存器。为了防止由于很短的峰值输入而引起的误输入f勾部输入允许信号LATCHENABLE由两个寄存器的AND连接来生成(图.)。因此输入LOADEN起码在两个时钟上升面内一直设为‘£’时.才能有效地写入这些频率控制字。图内部输入指令L,kTCHENABLE的生成方法为了输入四个位频塞控制字.需要位的输入端口.在实践上是很难实现的。匿此如图所示.用一小位输入端口FREQjN来顺亭地输入四个频率控制字。这时.内部位寄存器FREQADDR用于四个频率控制字的识别(表)。表‘l频率控制字输入IFREQADDRFREQrNr频率增量INCF、Vi起始频率STARTFwI终止频率STOP』wiPRP颁塞PRPFW输入信号TOGGLEEN用于相位累加器的I/LSB补偿功能的开关.OL:TPUTCONTROL用于DDS输出信号的控制。输出信号OVERFLOW表示频率累加器星暑溢出。.:逻辑综合、仿真及硬件实现.:.正弦输出DDS兰AI旺RAEPFlKjTCl“.上进千亍了逻辑综合。结果占有丁bit的存储单元(a)和个逻辑宏单元(%)。如果只用相位差算法.则占用了bit(%)的薛诣器阳lL)个逻辑宏单元:其婀真结果如图.移至.昕示:图.是工作在普通方式的DDS的仿真波形.图是工作在Chirp方式的DDS仿真波形。在仿真中使用的时钟为MHz。在普通方式中第一个频率为IMHz第二个为MHz第三个为MI.{z。在Chirp方式中的频率特征量和累加器的仿真时所使用的完全一样。可以看出频率转换时间为us。图一l工作在普通方式的DDS仿真波形(整个仿真波形)图工作在普通方式的DDS仿真波形(部分波形)图!l工作在Chirp方式的DDS仿真波形{整个仿真波形)。‘‘【墼业生J团团m:畦业坚lI!堑!垡li卜TOGGLEEN‘Oala'uTCoNTRoLOADENABLEj广b刊rIbI一广J。口如ACSjFREo^DoRH‘irs^~'PLEH(tuL/l=。IPFBFFTFAFOE‘RFLOWUTINCⅣQOOOACsn目jW嘲FSCBSE日B图工作在Chirp方式的DDS仿真波形(部分波形)正交输出DDS计算正交输出DDS的ROM存贮数据市时只用了正余弦的/弧度对称性和相位差算法这样简化了ROM输出逻辑。在ALTERAEPFlKTCl.上占用了bit的存储器(%)和个逻辑单元(%)。其仿真波形如图和图所示。图.所示工作在普通方式的QDDS的仿真波形图所示工作在c=p方式的QDDS仿真波形。其他仿真条件没有变化。频率转换时间为$us.调谐响应时间为us。stnE!!!ii!j:::::::::Ej:IiEnaE!jjiiij:::::二nsgo.,jTGLEENpRESETEⅪPUTCONTRoL“二pADEt'IABLEll{I}l}产口面广亢曲厂户口甘nR=咖OO口X目oSTARTFwFSe一sroP.Fw口UUUa口口DD~月FLowOUT一Sl~一SAMpLE图l工作在普通方式的QDDS仿真波形(部分波形)s匠堕豆亘二=二二叵圈na:匿亘亘五二=二=一睦堑亘二=二二二一rOGGLEEN。一只EsETExr广一L.coN'i口ooI一ADEN蝎LEIUUU叫ljUUUUU删U兀叭肿n肌nJlf删圳Ulnnnnnnn叭nJ』JⅢti一}。RLoIN一璺苎塑壁兰坠一kO(X)《oooooooo山曲一F舟EjAE’D尺。一矿一妁do。一INrFvvooCtX“rrW口鞠Fc日X£BoT一lpFWOOUL啪OOmFw口oooaX一‘口*FLOWoUT‘.。hJsM'PLt幽罄鲤黧氆墨罱器。.嬲蹬缎氅娜翘图工作在普通方式的QDDS仿真波形(整个波形)图一l工作在aIil’方式的QDD$仿真波形(整个波形)图工作在chin,方式的QDDS仿真波形(第一个第二个ChiIp脉冲的开始)第二章小节本章根据第一章的理论研究先确定丁设计目标.然后设计出了频率与相使累加器、基于ROM的相位幅度变换器和控制逻辑电路.最后利用这些模块构成了DDS及QDDS系统。此外利用IVIAXPLUSII软件在ALTERAFLEXlOK系列FPGA芯片上进行了逻辑综合和仿真证实了本设计的正确性和可行性。蠹鞫翠一雾爰等:::善善:》第三章基于CORDIC算法的DDS设计CO脚IC算法的基本原理CORDIC算法在年由JVoider提f后来J.Walther在年用它研究出了一种能计算出多种超越函数的统一的算法l。在信号处理中高速、高精度的三角函数发生器有着广泛的应用。传统的方法是采用查找表、多项式展开或近似的方法。这些方法在速度、精度、简单性和高效实现方面不能兼顾。对比而言.用CORDIC算法实现的三角函数发生器能很好地兼顾这些方面.并且极适合于VLSI实现。在CORDIC算法中有两种方法:即圆周旋转和向量旋转。这里主要关心圆周旋转。CORDIC算法主要用于计算三角函数、双曲函数和其他一些基本函数的运算.该算法的基本原理如图所示。YVl(Xly)一yj万~一一产姬y萄~、/’‘一~jt/妒图CORDIC算法的基本原理图如图所示.初始向量Ii旋转角度伊后得到向量‘:。x:=rlcosYsin日Y:Yacos一。sinp重写式().则得T:=cos(rlItan))二=coslrltan)为了在硬件上实现方便.作如下约定:只=arctan(“)则cos口=(.)r.每一次旋转的角度护正切值为的锫数即(.)(.)并目.约定以d代表向量的旋转育同表示逆时针疑转.一l表示ll页时针旋转故第f步的旋转可用下式表示其中.X=(.)(.)上式的墨为模校芷园子对于字长一定的运算.就收敛到一个常数以。以位字长为例./‘。o、『衍i枷()K。O.i(.)这样可将输入数据xY校正后再参与运算避免在运算中增加校正运算。运算迭代式可以简化成kr吐Ⅵ吨l()Yfl=Y。一Z。t。。』上式的运算就只有加或减法和移位了。迭代数接近无穷时.基于迭代式(.)的CORDIC算法可以说具有系统增益G.:Gt

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/47
2下载券 下载 加入VIP, 送下载券

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部