南开大学
硕士学位
论文
政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载
直接数字频率合成器(DDS)及其FPGA实现
姓名:金学哲
申请学位级别:硕士
专业:微电子学与固体电子学
指导教师:秦世才;贾香鸾
2002.5.31
摘 要
本研究涉及到用FPGA实现直接数字频率合成器(DDS)的方法。由于DDS具有PLL
无法比拟的快速频率转换时间、极高的频率精度和分辨率以及易于控制各种调制方式,近年
来在通信、雷达和电子战等现代通信系统中得到了愈来愈广泛的应用,其与锁相环的结合技
术己经成为高性能频率基准源韵基本散法之一.
利用FPGA实现DDS专用电路芯片的主要特点是能满足用户对特殊功能的要求,而且
在使用过程中也灵活地改变系统结构。
商用DDS专用芯片虽然为电路
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
者提供了很多机会并满足了很多场合的需要.但是
也有它的局限性,并不能满足所有的要求。例如,很多商用DDS专用芯片不具备LFM(Linear
Frequ·mcyModul血on,orChirp)功能。
本文在对现有DDS技术的大量文献调研的基础上,提出了符合FPGA结构的DDS设计
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
并利用MAXPLUSII软件在ALTERAFELXl0K系列器件上进行了实现。
主要研究内容包括:
1)可以实现LFM功能的32位流水线双层累加器的设计:
2)基于ROM的相位.幅度变换器的设计;
3)DDS控制逻辑及系统设计:
4)基于CORDIC算法的相位.幅度变换器的设计;
5)CORDIC算法在QAM调制器中的应用。
本设计的ChiIpDDS的时钟顾率可以高达loo船z。频率分辨率大约为00232BHz,频
率转换时间为0.68m。
, 。 / ,
关键词:直接数字频率容磊器幅。岛:CORDIC:线性蔼磊艟麟正变丽缸镬昂墨真
相位一幅度挛换:正交输出乒'Ds(g,口∞:
Abstract
ThispaperhasinvestigatedtheusuageofFPGAinrealizingdirectdigital
frequencysynthesizer(DDS).DDShasmanyadvantagesoverPLLfrequency
synthesizer,suchasfastsettlingtime,ahigherprecisionandresolution,andaneasier
controlbycomputerandSOon.
DDShasbeenusedashighperformancereferencesoffrequencyinmanyareasof
advancedcommunicationsystemssuchasspreadspectrumcommunicationsand
Radarere.inaloneorincombinationofPLL.
FPG舡c,anbeusedtOrealizeDDS.themainsuperioritiesofwhicharethattheycall
notonlysatisfyUSer’Sspecialneeds,butalsoareflexibleenoughtochangethesystem
architecture
AlthoughsomecommercialDDSICsareavailable,but,unfortunately,havetheir
functionallimitations,forexample.mostofthemhavenoLFMfunction.
InthisWOrkafterreviewingalotofliteraturespublishedonDDStechnology,a
DDSschemebasedonFPGA'sstructureareproposed.andthenimplementedin
ALTERAFLEXlOKseriesFPGA5usingMAXPLUSIIt001.
Theresearchincludes;
1)designofpipelining32一bhfrequency—phaseaccumulatorwithLFM
funotion;
21 designofphase-amplitudeconverterbased0nsineROMLookUp
Table:
31 DDScontrollogicdesign,andsystemdesignofDDSandQDDS;
4)designofphase-amplitudeconverterbasedonCORDICalgorithm;
51 applicationofCORDICalgorithminQAMmodulator.
TheChirp—DDSofthisStUdyhasIOOMHzclockfequency,0.02328Hzfrequency
resolutionand0.68ushoppingtime.
Keyword:DirectDi昏talFrequencySynthesizer(DDS),COP.DiCAlgorithm,
LFM(Chirp),QAMModulator,Phase-AmplitudeConverter,QuadratureDDS(QDDS)
第一章绪论
1 DDS的发展状况
频率合成技术是电子系统中非常关键的技术。在通信、雷达、导航和电子战方面中,
需要在一个报宽的频率范围内以快捷的速度.提供大量高精度、商稳定度的频率信号。虽
然锁相环频率合成技术笈展非常快,应用也银广泛,但其频率转换速度不快.分辨率低,
电路和微机控制复杂。
直接数字频率合成器(DDS:DirectDigitalFrequencySynthesizer)的基本结构由
J.Tierney在1971年首次提出【l】。近年来随着VLSI技术的进步,这种结构独特的频率合
成技术得到了充分的发展f2.17261。
但是由于DDS数字化实现的固有特点,其输出频谱杂散比较大,因此80年代末90
年代初,掀起了对DDS频谱研究的热潮。文献[Is—191建立了杂散信号模型,对DDS相位
截断引起的杂敏进行了深入的分析,并以数论为基础得到了一些有益的结论。随后文献120】
从波形分析角度,文献[2H从傅氏分析角度进行了类似的讨论。
在深入研究认识了肋S杂散成因及分布规律后,对DDS杂数抑制的研究更不断出现,
其中包括对相位累加器的改进【18】、ROM压缩技术[19,22]、抖动注入[23,37]技术的使用以
及对DDS工艺结构和系统结构的改进[24,25]等等。
直接数字频率合成器的基本优点是在微处理器的控胄4下.能够准确而快捷地调节输出
信号的频率、相位和幅度。此外,DDS具有频率和相位分辨率高、频率切换速度快、易
于智能控制等突出特点。这些特点使新出现的DDS及其与锁相环技术组合技术已经成为
频率合成技术的理想的解决方案之一。
从此,近lO多年来AD和Qealcomm等几家公司根据这些改进技术推出了一系列性
能优良的DDS专用集成电路.其工作颁率可达IGI-Iz,频率分辨率可到mHz,排除DAC
的限制,杂散指标己可达.70dbc以下.其应用领域也不再限于频率合成,已有专门用于产
生LFM信号的Chj『p--DDS器件(f5】和表l-l中的Q2368)。
随着集成电路工艺的不断改善,这些产品的功能也愈来愈强大。现在不仅在一个芯片
上能够集成DDS所需要的全部功能.例如频率和相位累加器、相位一幅度变换电路和数
模转换器(DAC)等.而且也具备了一些有用的调制能力,例如相移键控(PSK)和正交
幅度调制(QAM)等『2-17,261。
目前已经开发瞳用的几种DDS专用集成电路的资料如表1-l所示。
DDS的主要性能指标为时钟频率、频率分辨率、额率之间切换数度、杂散成分和功
耗等。
不同的DDS有不同的用途.所以没有绝对优秀的产品。
2 DDS的基本结构及工作原理
从圉l-l所示基本结构可见.DDS是一种混合信号处理器件.其数字部分由数字振
荡器(NCO)构成;它包括相位累加器、相位一幅度变换电路(大多数用正弦查找表ROM)
和控制逻辑电路,其模拟部分包括数横转换器和低通滤波器。
DDS的工作原理实际上是以参考源频率(系统时钟)对相位进行等可控间隔的采样。
参考频率源一般是一个高稳定的晶体振荡器,其输出信号用于DDS中各部件同步工
作。相位累加器是实现DDS的核心.它在每一个时钟上升沿与频率控肯4字t累加一次
当累加器计数大于2‘时相逝累加器相当于做一次模余运算。正弦查询表在每个时钟周期
内,根据送给ROM的地址(相位累加器的m个MSB相位值)取出ROM中己存储与该
表l-l最近开发利用的各种DDS芯片的主要性能指标
文献 文献 文献 文献 AD Q
【111 【151 【61 【41 9850 2368
工艺 l25am0.8m 0.Sum o‘35um1.25
CMOSCMOSCMOSBiCMOSCMOSCMOS
最高时钟^dHz150巧V2‘Ⅺ俗V 3∽.3V 61.44/3V125/5V130,65,5V
分辨率Hz O.035 0.047 29 O.01430.029 0.030『o015
幅度量化字长 12 12 9 14 10 12
PSK N Y N Y Y Y
AM N Y N Y N N
QAM N Y N Y N N
删 N N N N N Y
正交输出 N Y N N N Y
DAC N N N N Y N
LPF N N N N N N
SFDRdBc90,3 843 60 84.3 50
功耗 lW 2W 95mWl47、V 380mW
晶体管数 3500052000
面积,,,坍=
16 】6 09 20.1
地址相对应的正弦幅值,最后将该值送给DAC和LPF实现量化幅值到一个纯净的正弦信
号阀的转换。
●●
▲ 上
’ ‘
● ●●——·——-—————-
I ● ●
f。 ’
r——■!一一,。
—·—--、-—-------—--—-————-----------一~ ^
1 一一
丘 ~
▲,—、÷
,Y
i、—————————。——-—————————‘—。——-—+
相位累加器输出 相位.幅度变换器输出D/AC输出 LPF输出
翟I.1直接数字频率合成嚣(DDS)的啜理图
当正弦信号采洋周期为乙=1/厶时·每个采样周期相应的相位增量为
△p=C·—2万.a-, (卜1)
2
L为相位累加器的字长,C为频率控制字,则输出信号的频率为
z=昙=等J21r却粤2“2石如 1。。‘
DDS的频率分辨率,即c=1时的输出频率为
{。={‰|t
(1-2)
(1-3)
根据Nyquist准则,DDS允许输出频率最高为正=厶/2.即Cs厶/2.在实
际情况中受LPF的限制,一般工。z40%·厶。
3 DDS的杂散来源及分析其对输出频谱的影响【18,19,261
3.1 DDS噪声与杂散的来源
图I·2表示了DDS输出噪声和杂散的7个来源。
图l-2DDS杂散来源的数学模型
图l-2中·P,:相位舍应所引起的误差,
P。。:ROM压缩算法所引起的误差,
P;:ROM存贮数据的有限字长所引起的误差
eO.4:D/A转换器所引入的误差.
P。:LPF所引入的误差.
8m时钟的相位噪声.
aJ":颁率误差。
影响比较明显的主要有以下三个因素:
相位舍逝引起的误差:在DDS中.一彀相盟累加器的位数L远大于ROM的寻址位
数m.因此累加器的输出寻址ROM时.其L-m个LSB就必须舍去,这样就不可避免地
产生相位误差,称为相位截断误差,该误差是DDS输出杂散的主要原因。
ROM存贮数据的有限字长引起的误差:由于ROM存贮的位数是有限的k.所以在幅
值量化过程中将产生量化误差。
D/A转换器引入的误差,它是由于D/A转换器的非理想特性而引起的。DAC的非理
想特性有:差分、积分的非线性、D/A转换过程中的尖峰电流、转换速率有限等。
3.2理想DDS频谱及杂散来源模型
DDS在理想情况下不考虑RoM地址的舍位和正弦波幅度量化的近似,即L=m、k=m.
同时假定DAC和LPF是完全理想的.这样DDS就等效为一个理想的采样.保持电路,其
中NCO相当于采样周期为7k=1/厶的理想采样器·DAC相当于时宽为70的理想保
持电路对采样数据实现阶梯方式重构。5蛐
∑艿(f一”
图1-3理想DDS等效框图
由图l·3所示等效框图可得
s(f)=s(")+厅(f)=lsiIl(2万,f)·∑6(f—nt。)I·向Q)
其中:
如归蛳:矾仃k,:sin(z丌乌拿"&):咖(2每,,)
(1-4)
(I.5)
加,={j。釜≯ ㈨s,
为保持器的冲击响应.采榉序列s(")是以2。/GCD(2L,JF:.)为固期的,从而知5(功的频
谱是一些离教谱线。分析(1一|)式知.在离散谱线中.幅度不为。的只有
,=C·厶/2=L一条.故对理想的DDS.其s(玎)在to,厶,2】范围内没有杂敞。
对sft)作傅氏变换得到颉域响应:
5咖属(孥)盯胁。 ¨,,
∑p(2矿+2矾一2刀如)一占(2矿一2矾一2aItf。,)]
以上式看出.理想DAC所完成的阶梯重构只改变了输出频谱的幅度和相位而未增加
新的频率点。这样5伽)的频谱结构即代表了DDS输出的频谱分布。据此可知.理想DDS
的输出中没有杂散分量。
冒P
垃,
、
然而在实际的DDS中,由于ROM容量及数据量化位数有限分别带来了相位截断误
差和幅度量化误差,同时DAC的非理想性也带来了转换误差。正是这些误差在信号频谱
中引入了杂散成分。
33 相位截断引入的杂散
只取相位累加器输出L位中的高m位对ROM寻址.即舍去低的B=L.m位。已有的
理论研究和实际应用都表明,这种相位截断是DDS杂散的主要来源。根据式(1-5)和图
1.2,很容易得到相位截断误差:
吖咖c·n'-2B"F(2鲁·刁 (1-8)
其中,G)表示对r作不大于_r的取整运算。由此可知P,(疗)是以28/oco(2。,c)
为周期的采样序列.在频域上以厶为周期.在(o,L,./2)内mA=28—1/GcDQ8,c)条
离散谱线组成a从(1-8)式可以认为P,(疗)为g,(f)的采样,ep(f)是幅值为28、周期为
28/C的锯齿波。由于P,(r)不满足狄利克莱条件.无法壹接进行傅氏分析,为此,文献
【18】在对P。(,)修正后完成了博氏分析。结合前述理想DDS分析可得到如下结论:在
(o,fo./2)内.5(疗)由r=2“/(ⅪD(2‘,c)条离散谱线组成.其中幅度不为0的谱线
最多只育(2A+1)条。在(0,厶/2)内,s(,1)的杂散频率为
厶==(足·c∥。±E):。·(务] ㈨,,
K=1,2.⋯.A
其中·(f),表示x对,的取模值。相应于乓:杂敖分量的幅值为
己一:至!竺⋯。。。f堑]¨=一1r””“l百/ (I.I(1)
式(1-10)表明.靠:为K的单调函数,这样K=1时可得到杂散幅度的最大值
毒。。=最:=2“‘·
厅·GcD∽,2。I28
sin臣·GCD(F,,28)2"]
文献【191从数论仿射变换的角度分析得到DDS杂散分量的一个重要特点,即对于
具有相同最大公约数G(!D忙,2。)的所有频率控制字只.DDs对应的输出信号中杂散
频率谱线数量及其相位的幅度也是相同的.只是这些杂散谱线的位置发生了相应的变
化。
3·4 ROM正弦瞩僵表的量化误差对频谱的影响
当ROM采用k位=进制数保存正弦函数值时,量化误差为
e。t一,=蜘(z厅·争·”)一砉·尺{z‘·sin[z丌·i;·F(争·rill}c·.-z,
其中.尺b1表示对r做最靠近x的取整运算。显然P。Q)与j印)有相同的序列周期
2L/(记’D(2‘,E).因此幅度量化误差在频谱中没有引入新的杂{牧成分,而是表现为均匀
的噪声基底。通常在一个周期内.P。(”)被认为是在I-2一/2,2一‘/2J间均匀分布的噪声,
则由量化引起的信噪比为
(SNR)。:20lgf鳖]。602七+1.76(1-13)
4 现有的DDS性能改善方法
4.1有限字长效应
直接频率合成特性的优化主要在于有限字长和正弦函数计算方法两方面【儿】。
影响频率纯度的最主要误差源是相位截断。一种相位累加器的简单优化如图l-4所
示.它能够降低谐波幅度3dB左右,同时在频率转换时,减小输出频谱对累加器中的依
赖。而且优化结构使得相位累加器的字长近似变为L+l。
相位累加器优化结构的唯一缺点是在直接数字频率合成的输出信号的频率中.引入了
,。/2。1的相位偏移量。然而对字长为32位、时钟频率为50MHz的相位累加器,其偏
移量只有0.0058Hz.在大多数应用中是可以忽略的。
4.2正弦函数计算【11.16.18.191
用相位累加器的商m=12位寻址
ROM.且ROM存贮数据的字长为
k=10时.需要2‘‘10bitROM。
读取大容量的ROM会降低系统速
度.因此.有必要采用正弦ROM
压缩技术。
42l 正弦ROM查找襄的取法
常用的一种技术是只存储州2弧度
的正弦采佯点.然后.利用正弦函
6
图lo相位累加器结构的简单优化
数的l/4波形对称性,产生整个2牙弧度的正弦采样点。当用相位累加器的最高两位代表
正弦函数的象限,则最高位表示符号,次高位表示相位在0一州2是增加还是减小,如图
1-5所示。
在大多数直接频率合成器中.数字都是二进制补码形式.因此.ROM查找表的输入
必须采用1/4相位的绝对值.并且输出要乘以.I。这样,在求补的时候就会引入I[2LSB的
失调.如图1-6、图1.7所示。在实践中,用一进制补码来代替二进制补码.它不会引入
误差。芷弦采样点的相位和幅度的l/2LSB的失调是在生成ROM查找表时进行补偿的。
这样,同时也节省了硬件,因为一进制补码可以通过一组异或门来实现。
4.22 ROM的压缩技术
在常用的压缩方法中,正弦函数ROM分为粗采样点ROM和细采样点ROM。
假定小=口+6+c是相位地址的总位数,a为最高几位,b为次高几位.c为最低几
位。因此粗采样点ROM有24“个采样点,细采样点ROM有2⋯个采样点。
№B
j
;
≮
三山一一一
1一一Soco“№BD——~
图I-5采用正弦波的l/4对称性的DDS
o,乏晤证戋焉 b,毒t县位生焉
图1-6二进制补码引入的相位失调(假设相位地址字长为3bit)
7
④园m
_l
∞
”
∞
【j/\
【r \ ,
8 M
以
∞
'f
'●
(a)无幅度失调 fb)有恫熏失调
图l·7二进制补码引入的幅度失调
当a=4.b=3、c=3时,粗采样点ROM的输出字长为9位,细采样点ROM的输出
字长为3位.则2”×10bit的ROM压缩到27×9b证粗采样点ROM和27×3bit细采样
点ROM.其压缩比为27:1。
此外还可以用相位差算法来节省两个位[191,即用
州=sl。n(三·寸P 小㈣
代替了s访(三·P].这时
一№·尸)一尸卜t一№吲
最后在ROM输出再加上相位,恢复原来的数据。
[sin(三·P]一P]-+-P=sinl2·P)
其中.P表示相位。
(1·15)
(1·16、
5 DDS的种类
5.1 输出脉冲的DDS
输出咏冲的DDS只包含相位累加器。它的输出为相位累加器的MSB或溢出信号。
5.2 具备调制功能的DDS
因为DDS是一种数字信号处理器件.所以易于对它附加调制功能。用DDS可以实现
对三个全部波形参数的调制。
j(,f)=一(Dsin乜厅(C(,,)+P加))) (1—17)
其中.爿(,,)为调幅序列.C0)为调频序列.p加)为相垃调制序列。
在现有的所有调制技术中.这些三种调制方式可以单独使用或音也可以混合使用a闰
卜8是拥有这些三种调制功能DDS的系统框图。
8
、
图1-8具有调制功能的DDS
如图所示·一个加法器放在相位累加器前,就可以实现调频功能。相位调制要求一个
加法器放在相位累加器和相位一幅度变换器之间。调幅功能通过把乘法器放在相位~调幅
变换器和D/AC之间来实现。
5.3 QAM调制器
传统的QAM调制器的系统框图如图l-9所示。
Q舢讧调制器的输出为:
』。。,D)=,(,,)cos∞。。")+Q(,r)sinb瑚疗)
Qo.,o)=Q“)c。如砌n)-l(n)siIl‘胛)(1-18’
其中,∞州,为QDDS【正交输出DDS)的输出角频率;,0)、Q白)为输入数据脉冲符号。
为了实现式(1-18)需要四个实数乘法器和两个实数加法器(看图1-9)。
重I·9正交输出QAM调制器
但是.重新整理式(1-18),则可得到
9
L,白)=,(,*osb砌门J+Sinb。。n)J+sinb脚"炮如)~,G))
瓯,∽=幽蛞。如砌由+s_m0舭打))+sin0脚抛∽一,㈣¨‘1”
因此.式【1-19)的实珊需要三个实数乘法器和五个实数加法器。
J
5.4 Chirp(LFM)DDS
用DDS可以构成Chirp信号发生器。它有效地用于频率的扫描。数字Chirp信号发生
器可以产生线性与精密的调频信号,这是用普通的模拟技术(VCO)很难得到的。
Chap波形的生成基于如下二次方程:
庐(,)=Ct2+Bt+A (I.20)
数字Chirp发生器和普通的DDS相比结构上几乎差不多,只不过包含双层累加器而
己。图1.10是它的系统结构。
CLK CLK CLK
图I-9数字Chirp发生器
6 本论文的主要研究内容
上面介绍了现有DDS专用芯片的发鼹状况、系统构成、主要误差来源和一些有效地
设计技术以及DDS芯片的种类。
可以说DDS的数字部分决定了芯片的功能.而且占有主要芯片面积。
虽然现有商用DDS专用芯片具有良好的特性.而且在很多场合中能满足用户的要求.
但是也育它的不足之处。例如.很多DDS专用芯片不具备LFM功能.而且只能在固定的
工作方式下使用。
如果这些数字部分利用FPGA来代替的话,则可以根据用户需要进行设计.而且能
在系统上灵活地改变系统结构。况且随着VLSI技术的进步,现在FPGA的性能和硬件资
源电可以构成~个系统。
利累FPGA设计DDS专用电路时.应该注意相位累句B器和相位-幅度变换电路的速度
及硬件开锁。
在通常情况下.相位累加器的位数是24壁或32缸。尽管在FPGA宏单元中包括了
16到32位加法器.用它们可以很容易实现高达32位的相位累加器.但当工作频率较高
时.这种方法是不能采用的。为了解决速度问题.需要采用流水线技术。这种流水线技术
在商用DDS芯片的设计上也是必要的。为了实现LFM功能.需要附勾Ⅱ一个频率累加器,
它的设计和相位累加器的基本上一致。
相(茔一幅度变换电路比相位累加器的实观还难一些。它不{又要解决速度问题,更重要
的是要解决资源的问题。一般常用的是基于正弦ROM查找表的方法。这种方法在结构原
理上简单.而且准确耋乜商。唯一缺点就是需要一定规模的ROM.而且它的规模.地址
线位数增加一位时.就增加到一倍。这样会引起速度和功耗问题。
相馒.幅度变换的另一种方法是采用CORDIC算法的[27-321。它不需要ROM或者使
10
詈很少的曼?鼍而且可以只使用加·减法器和移位寄存器计算出各种超越函数。这完全符
合FPGA的结构[291。
此外,CORDIC算法有效地应用在QAM调制器中【4,26】。如图1-9所示,为了实现
2竺。调制,起码需要三个乘法器、5个加法器和ROM。但CORDIC算法把这些运算都
包括在旋转过程中·而且不需要ROM。对CORDIC算法的应用在第三章和第四章将再详
细地讨论。
根据以上讨论.本论文的主要研究内容设为:
1) 设计具有LFM功能的32位流水线双层累加器:
2) 设计基于ROM的相位.幅度变换器:
3) 实现DDS控制逻辑及系统设计:
4) 设计基于CORDIC算法的相位-幅度变换器以及在正交输出DDS中的
应用:
5) 设计用于QAM调制器的CORDIC旋转器。
第二章 基于ROM的DDS设计
l 设计目标
根据第一章中的理论研究,基于ROM的DDS具有如下功能和指标:
可以用于具有固定频率的正弦波生成,而且也可以用于线性调频(Chirp):
累加器的字长L为32,用于寻址ROM的相位累加器的输出m为12,ROM的输
出字长k为ll:
时钟频率为最高100MHz。
2 频率一相位累加器设计
2.1 基本概念
本设计的DDS可以作为具有固定频率的频率基准源.而且也可作为Chirp波形发生
器。为了生成固定频率的输出信号.ROM地址必须以同样的间隔寻址。这意味着累加器
在每一个时钟周期将频率控制字E加上本来自己的累加器值。因此累加器一般由加法器
和寄存器构成。图2-l是这样的累加器的框图。
phase
Ir砣rmermnt,;■恒p#a=。t“nulator、
图2-I用于固定频率基准源的简单累加器
输出频率由相位增量的大小直接确定(见式f1-2))。因为相位增量为常量,所以输
出频率也是常量。
在Chirp立用中·正弦脉冲序列的频率从指定的起始频率工。。开始线性增加到终止
频率,Ⅻc目前·chirp波形发生器在雷达技术方面具有广泛的应用。图2.2给出chirp
波形和它的特征量。
■sjdH. . . fJs‘叩 ‘J∞lH fJstop
飞/\.|f1I.『\86i。 .八A.Ifll^^6f—
VVVV眦‰,IVVVV湖
一
f r胛
/j甲{‘ 一。⋯⋯ 、
f、∞ ————一 I L—,.
t‘lrI‘
I I ~
12
t
图2-2Chirp波形
脉冲速率厂尸RP(PRP:PulseRepetitionPefiod脉冲重复周期)表示每秒中Ch岫脉冲
数,而它的倒数表示Chirp脉冲宽度.即
l
rm2—— (2.1)
rpp.p
Chirp脉冲宽度里包含两个脉冲之间的空脉冲区fm。
图2-3表示用于Chirp波形发生的双层累加器结构。
Fr百———_.
Increment
PhaseIncrement
Freq,,kcumutator PhaseAccumulator
图2-3用于Chirp波形发生的双层累加器
第一个累加器靛叫频率累加器.它有频率增量输入。第二个累加器就是普通DDS的
相位累加器。在每一个时钟周期.不仅相位要进行累加一次.而且频率也进行一次累加。
因此可以得到线性变化的频率。
2.2 32位流水线双层累加器的逻辑设计
本设计采用流水线CRA累加器结构。理由在于其结构简单.而且有利于做成流水线
结构。如前所述-DDS用作chirp波形芨生器时-需要给定起始频率,。、终止频率,。
和每一个周期的频率增量y。(见图2-2)。
按照方程‘I-2),Chu'p发生器的起始频率控制字START_FW、终止频率控制字
STOP_Fw和颁率增量控制亨INC一刚分制为:
START—F∥:≤盟.2。(2-2)一 {娃
sTOP,7f,:互丝.:二
一
,,。
瞅,FW:芏.:二
一 f二。
(2.3)
(2.4
在每一个时钟周期·DDS的累加器从起始频率。乞。开始将颁率增量掣’如上前一个
\、d^—鼋
时钟时的频率值FW。达到终止频率‘时,频率值的累加被停止并且寻址ROM的相位
累加器的输出也被设为复位aChirp脉冲维持频率控制字eaFvw可以计算如下:
首先,时钟在一个Cl岬脉冲周期内的数为
n一≈矿厶2专吒t (2.5)
由此可见,过了Nm—mP个时钟后达到pRP频率,这时,输出频率,从工。起在
每一个时钟周期增加了频率增量V。根据式(2.5).可以得到
,一2,一七Nm—p”·坷=,一+专·氏·弩 t2.6)
由此.PRP频率控制字为
PRPFWl:盘.2c—
f。‘
(2.7)
上式的PRP频率控制字中没有考虑到由流水线结构而引起的时钟个数。对此将在后
面再讨论。
2.3 流水线加法器结构
本设计采用的流水线4位CRA加法器结构,如图2J所示.每位全加器都带着寄存
器。
一一—_叵卜_二二二二冒二二二瑶 一一mg—————一!卜——————一!『_ 4
一 ~ 一=_囵一一b!:}_叫兰兰卜固霉固{}⋯L——呈——j L——王—_J L——王—一 L星一一J
凰 ‘⋯ 回t ⋯ ⋯圈.一.===2重卜——卜~ 一——一匝卜——一一压卜一一一一—匣弓~——一匠
圈一 ·
图2一流水线4位CRA加法器
2.4 相位累加器的基本单元
柜泣累加器的基本单元是由全扣器和寄存器构成的.而且育一个复位输入.用于把输
:j复‘t为起始颁宰。它的结构如图2.j祈矗,
14
图2-5相位累加器的基本单元
2.5 频率累加器的基本单元
图2-6是频率累加器的基本单元。为了实现起始频率的输入,对上述的相位累加器加
以修正。该结构在全加器后面设有一个触发器.该触发器有着非同步设位和复位输入。与
众不同的是这两个设位或复位输入为0时.就起着设位或复位作用。
输入逻辑的真值表如表2.1所示。
舾7Z=LOAD—START—j可rASTART一.F矸7 (2—8)
RESETz=LoADS11ARTFⅣASTARTFW
回{i。“8广一L—£竖一
(2-9)
LOAD—stARTFx.V" 书O---
”uL~—CⅪ——习)。一
——p—一
图2-6频率累加器的基本单元
表2.I起始频率输入逻辑真值表
Loadstartfw Start鲰 Setz Resetz,Q
0 O l l ,D
0 1 l l :D
【 1 0 l 0 i 0
I 1 l 0 1 | 1
2.6 比较器
、勺了实现Chirp二自能.需要罱两个频率?:!??STOP—Fw和PRPjW控制累孤器的.!:
作遮呵“顿塞捧割字分别作’勾比较嚣的薹准。本设:f采璺j丁流水线终掏.因此最宣于进行
泣比较.圈2.7给出所采用的两个二进数的迭代逻辑比较过程。
图2—7两个二进数的迭代逻辑比较过程
比较器的逻辑迭代方程如下:
COMP(O)=SIG(O)v—REF—(O) f2.10)
COMP(I)=(szo(i)AREF(剜v嗯媚(,)o凡腰(_)^COMP(I一1)}(2.1Z)
2.7双层累加器的最后结构
图2-8是本设计采用的累加器结构.该结构包括频率累船器、相位累姐器和蕊个比较
器a比较器COMP_STOP用于频率累加器输出和终止频率控制宇STOP聊之间的比较,
丽比较器COMP_PRP用于频率累加器输出和PRP频率之间的比较。
控制信号RESET设为‘l‘时,相位累加器以起始频率字STARTFW被复位。
如果频率累加器的输出FW大于或等于终止频率STOPFW,比较器COMPSTOP
的输出STOP_FLAG则被设为‘r。这时.相位累加器继续进行累加操作.但是.寻址
ROM的相位累加器输出PW由STOP信号立刻被设为‘0’.从而再也不输出_FLAG ROM
地址。
为了得到所希望的chirp咏冲宽度7mP.频率累加器的输出FW达到PRP频宰控制
字PRP—FWl(式(2-7))时.频率累加器就要立刻被设为起始频率。但是.由于频率累加
器的流水线结构,起始频率字STARTFW输入到频率累加器需要32个时钟.而相位累加
器再过一个时钟后寸会输出有效的相位值。此外墒入信号RESET在PRP_FLAG设为‘l-
后第一个时钟,才设为‘r。因此,为了不要陵Chirp脉冲宽度fPRP再增加.PRPFLAG
应该在PRP_Fwl的前34个频率增量设为‘I’,即
PRP—FW=PRP—FWI一34·INC—FW
:壶巳.2‘一34.n℃FW ‘,2-12)
)cLK
一
图2-9表示信号PRPFLAG和STOPFLAG的时序。
2.8 DDS的工作方式
根据以上的内夺可以
规定
关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定
五设汁DDS的工作方式,如表2.2所示。由表2.2可知
DDS的工作方式量累朔器的摸式宋确定,
16
(bn4_ralor
!r墨擘c粤!粤篡⋯
。 ⋯鼍竺擘?翼唑?擘
图2-8DDS累加器的最后结构
J‘▲f
.,PRP一 ⋯⋯.
fStop一⋯⋯1。-jj,
^。。一。一一jj .
—————-]葛F—’
▲ 一PRPFLAG.
STOPFI.AG——一——————————一’
气4手‘
图2-9PRPFLAG和STOP—FLAG的时序
表2-2DDS的工作方式
普通方式 Chirp方式
0 >f)
频室增量af
{ 起始颁率,。。 0sj一<}。。|20s{。<}。,
: 终止颓塞,。, /二。,/o任意 ,一(}m(}一一340封
:PRP颇率‰ 任意 I‰>岛+34·v
2.9 累加器的逻辑综合及VHDL仿真
利用MAXPLUSII软件在EPFIOK20RC208.3芯片进行了逻辑综合及仿真。
双层累加器占有了336个逻辑宏单元(相当于29%)。
图2-10是逻辑仿真结果。
在仿其中使用了如下的频率特征量:
厶HzIMHz:START_FW=028f3c28H
f,n,p。2MHz:STOP_FW---05leb85IH
af=1000Hz:INC_FW=a7e5H
厶-2.IMHz:PRP_FWl---05604189H:PRP_FW=054959tII-1。
从波形图可咀看出累加器按照设计的要求正常工作,在上述的条件下Chirp脉冲周期
大约为llus。
N=me —v.m上 25u- 5ouq 75ut ’o?晶 122751US 5u2
.10
] r]
^pINC—Fw OaⅢm75
噼BF5c∞
0S明日9FF
·;—Pw—OUT 1 ∞
-oSTOP—FLAO I............一n
(a)整个仿真波形
一et匹耍复互二=二]圃Time画至垂二二二]Int·M·臣重五三二=]
P日ESEl
厂]厂]广]r]厂]广]r]厂]n广]
.pINC。P“ 0EXlAC75
028FSC:2e
.,51"C'P.7~ 061E田51
054959FF
乞.,nv0一.T ∞o Xo嚣I∞1107B鬣叫^z3co互。阮I1’F扩了西
(b)部分仿真波形图
图2.10双层累加器仿真结果
3 基于ROM查找表的相位幅度变换器的逻辑设计
3.1 ROM的压缩疗法及正弦存贮数据的计算
在第一章中.对有关ROM压缩的现有技术简单地做了概括。
在本设计中.寻址ROM的相位累加器输出字长m为12bit.其中MSB用于判断正弦
采样数据的符号(在ⅦDL代码中以SIGN表示).次MSB用于判断正弦波增加还是减
小(在ⅦDL代码中以SLOPE表示)。
18
本设计采用Nicolas的ROM压缩技术。
根据文献【18,19】的结果,剩下的低lO位分别如下分配:A=3、B=3和C--4。A包括
位7到9,B包括位4到6,C包括位0到3。
A和B用于寻址粗ROM.A和C用于寻址细ROM。
图2-11所示这个方法的原理。存贮粗ROM的正弦采样数据用下面的公式来计算。
聃瑚垴㈧掣)+专] 协㈤
嘶,啦古钟㈧丝善粤£+南肛⋯)]
考虑到相位差算法后.式(2.13)则变成为
确,班如㈧等爿+专]_等善 协㈣
由此,2”×1lbit的ROM分成为26×8bit的粗ROM和26×3bit的细ROM,其减
小比率为64:l。
反而在输出端需要设置合并加法器。
;
量
;
百
Fiaed
鼍。≮匹之鼍。\竺么一
A面打而丽而订葡面『T酊币百矿—’
B ()()o111
IaJL唣rBbckDiagram(blPmcipkofROMdivis_m
图2.1lROM压缩方法
3.2 基于ROM的相位.幅度变换器的逻辑设计
3.2.1 CSA加法器设计
墨为本设计采用ROM压缩技术,所以在输出端需要对具有不同字长和不同深度的输
入能够实现加法运算的合并加法器(在VHDL代码中表示为VMA)。
圈2-ll所示本设计的合并加法器。
4
3
2
l
Q
。=Pipe[incdReg.
(a)合并加法器的逻辑框图
l一卜i’墨⋯⋯(亚固!霉!:!j1\, 、、二 }j二‘#4二兰j\
5~1。、⋯二⋯。{卜4;3:3i10。 j_、 一 一I— z \
z{辱广■\一jj。⋯。可寸而玩/。叫i’ , \ 一 ¨ 4 l q IlJ: c⋯^-'t’
l』.⋯』.蠹j一■i丁7slceWed,’
¨-.{!pj.!_ij陋_F_7
(b)合并加法器的模块化 (c)
图2—1l合并加法器和它所代表的符号
CodeSymbol S)eboI
:
}1 7 二寥
2 .j. 8—二啦
,3 { 9l霉
I
4 ≯10:三日=,
『_——-_————t——_.■='二二一
;5l覃11三墨≥}
----------:---—·----------·----------—。............一
6≥12三;忘,
每个符号所代表逻辑图
3.2.2 deskewing设计
在合并加法器的输出端设一个deskew电路,对合并加法器的输出进行deskew操作。
在VHDL代码中.这deskew电路和对相位累加器输出的desk“v电路完全~样。
3.2.3 对基于ROM的整个相位幅度变换器的逻辑构成
图2.12表对整个ROM部分电路的逻辑图。
,帆SLOPE 睾纛号譬矿善一.,闸 下2璺下“⋯一鱼一+忌≥丽j驽._{t—赢——尝}~(9却{一旦埘一'1—0HA~旦—11+盛,;惜毒簪呼器采TtOkl—toy,2。。:旺’_“———丽越j矿—”1 1
3.3 正交输出DDS的RO、I部分逻辑
圈2·13所示正余弦输出DDSROM的逻辑结构.只存贮对应l/8弧度的正余弦采样数
据。为了简单起吧,这时只用相位差算法来计算正余弦采样数据。表2.3为相应的输出控
制逻辑。
■DD~D
.
~
~酸
^1982 Jf o
1 ’\
1 —ip塾■≮
r,
{j_
他譬一 k ! ,-9:7
7
~l,鲁3 ‘—>—二j!崤卜、 f幔Sd{
Ik旧8-f“1戥 _爿!i%。.、卧jl厂L_{曼j7_,,, p’
图2.13正余弦输出ROM逻辑
表2-3正余弦输出控制逻辑
-
signslopesolSine Cosme Sine CosiIle
AdderiIIlAddermlSampleSample
O O 0 ’0‘&addr S C
’1’&addr
0 O l ‘l’&addrC S
’0‘&addr
0 l O ’0‘&addr C S
r
’1‘&addr
O l l 。l’&addrS C
’0’&addr
4 控制逻辑电路设计
DDS有限状态札的状态图如图2-14昕示。
RERSETEXI"=el‘
匿怒日:粤!!一,..一?~ !IX.E
一‘i;■一\、雌陷f‘二D涮口
、、一一一———————~
一‘W#*7一FOR—RESTP/Rq"
PRPFLAO,旧
,(.r一.
PRPR..AG。I‘ ,—j一~、一7瓦~~.鱼燮登旺型璺
、
I乇RSET=’1.
V'nEQ_GEN,一
旺带日、口
~~7一’一
s肼毋榭口
f(’j_
图2.14DDS有限状态机
≤
S DI)S系统的逻辑综合、仿真及硬件实现
5.1 信号输入方法
图2-15所示本设计DDS的输入输出端口。
图2-15DDS的输入输出端口
为了生成om-p脉冲.需要设定起始频率、终止频率、PRP频率和频率增量。利用
输入指令LOADEN把它们写入到内部寄存器。为了防止由于很短的峰值输入而引起的
误输入,f勾部输入允许信号LATCH_ENABLE由两个寄存器的AND连接来生成(图2.16)。
因此输入LOAD_EN起码在两个时钟上升面内一直设为‘£’时.才能有效地写入这些频率
控制字。
图2—16内部输入指令L,kTCH_ENABLE的生成方法
为了输入四个32位频塞控制字.需要128位的输入端口.在实践上是很难实现的。
匿此如图2-15所示.用一小32位输入端口FREQjN来顺亭地输入四个频率控制字。
这时.内部2位寄存器FREQ_ADDR用于四个频率控制字的识别(表2-4)。
表2-‘l频率控制字输入
I FREQ_ADDRFREQrN
r 00 频率增量INC—F、V 1
i 01 起始频率START—Fw
I 10 终止频率STOP』w
i 11 PRP颁塞PRP—FW
输入信号TOGGLEEN用于相位累加器的I/2LSB补偿功能的开关.
OL:TPUT_CONTROL用于DDS输出信号的控制。输出信号OVERFLOW表示频率累加器
星暑溢出。
5.: 逻辑综合、仿真及硬件实现
5.:.1 正弦输出DDS
7兰AI旺RAEPFl0Kj0TCl“.3上进千亍了逻辑综合。结果占有丁768bit的存储单元
(60a)和709个逻辑宏单元(41%)。如果只用相位差算法.则占用了8192bit(66%)的
薛诣器阳67lL3870)个逻辑宏单元:
其婀真结果如图2.17移至2.18昕示:图2.17是工作在普通方式的DDS的仿真波形.
图2-19是工作在Chirp方式的DDS仿真波形。在仿真中使用的时钟为100MHz。
在普通方式中,第一个频率为IMHz,第二个为2MHz,第三个为4MI.-{z。在Chirp
方式中的频率特征量和累加器的仿真时所使用的完全一样。可以看出频率转换时间为
068us。
图2-17一l工作在普通方式的DDS仿真波形(整个仿真波形)
图2·17·2工作在普通方式的DDS仿真波形(部分波形)
图!-18-l工作在Chirp方式的DDS仿真波形{整个仿真波形)
。‘‘【墼业生——J团团m·:畦业坚 l㈨·㈣I!堑!垡 l
i_卜TOGGLEEN‘ 1
O
ala'--uT—CoNTRoLO
--_AD_ENABLE1 j]广b刊r]IbI一广1
J
。口如A7CS
j■,FREo^DoRH0
‘i●rs^~'PLEH(300 tuL /l=±。 IP2 7FB 7FF TFA 7FO 7E
-‘-,RFLOW0UT0
∥INCⅣ - QOOOA7C5
∥sn目jW- 嘲FSC2B
_
0S1E日B51
图2-18·2工作在Chirp方式的DDS仿真波形(部分波形)
522 正交输出DDS
计算正交输出DDS的ROM存贮数据市时,只用了正余弦的1/8弧度对称性和相位
差算法,这样简化了ROM输出逻辑。在ALTERAEPFl0K30TCl44.3上占用了8192bit
的存储器(66%)和880个逻辑单元(50%)。
其仿真波形如图2-19和图2—20所示。图2.19所示工作在普通方式的QDDS的仿真
波形·图2-20所示工作在c1=p方式的QDDS仿真波形。其他仿真条件没有变化。
频率转换时间为06$us.调谐响应时间为08us。
st·nE!!!ii!j:::::::::]Ej:Ii0EnaE!jjiiij:::::二]-n⋯··[—sgo2.,—j
—T06GLE—ENpRESET—EⅪ
—P-UT—CONTRoL
“二p—AD__Et'IABLEl l { I } l }产口面广]亢]曲厂]户口甘nR]=[00000咖
O
O口X目o∞
—,START—Fw 028FS∞e
-一sroP.Fw 80口UUU00
a口口DD0∞~月FLow—OUT
·一Sl~一SAMpLE
图2-19-l工作在普通方式的QDDS仿真波形(部分波形)
s⋯匠堕豆亘二=二二]叵圈na:匿亘亘五二=二=]一⋯·睦堑亘二=二二二
_一rOGGLEEN。
●一只EsETEx-r 广———]
-一L,1._coN'i-口oo
I_一ADEN,蝎LE IUUU叫ljUUUUU删U1兀叭肿n肌nJlf删圳Ulnnnnnnn叭nJ』J■Ⅲt-
i一}。RLoIN 一璺苎塑壁兰坠一kO(X)《 oooooooo山曲一F舟E·jAE’D尺 。一——矿一——℃妁d o—
。一INrF-vv o∞oCtX∞“+⋯rrW 口鞠F5c2日X 061£B850
——,oT-一lpFW OOUL啪OO—mFw 8口oooa∞X 81000000一
—‘,口*FLOW—oUT
‘.,。1hJsM'PLt 幽罄鲤黧氆墨罱器。 ⋯ .嬲蹬缎氅娜翘
图2·19-2工作在普通方式的QDDS仿真波形(整个波形)
图2·20一l工作在aIil’方式的QDD$仿真波形(整个波形)
图2-20-2工作在chin,方式的QDDS仿真波形(第一个,第二个ChiIp脉冲的开始)
6 第二章小节
本章根据第一章的理论研究,先确定丁设计目标.然后设计出了频率与相使累加器、
基于ROM的相位-幅度变换器和控制逻辑电路.最后利用这些模块构成了DDS及QDDS
系统。此外,利用IVIAXPLUSII软件在ALTERAFLEXlOK系列FPGA芯片上进行了逻辑
综合和仿真,证实了本设计的正确性和可行性。
蠹鞫翠一雾爰等:::善善:;》
第三章基于CORDIC算法的DDS设计
1 CO脚,IC算法的基本原理
CORDIC算法在1959年由J,Voider提f15127],后来J.Walther在1971年用它研究
出了一种能计算出多种超越函数的统一的算法[29l。在信号处理中,高速、高精度的三角
函数发生器有着广泛的应用。传统的方法是采用查找表、多项式展开或近似的方法。这些
方法在速度、精度、简单性和高效实现方面不能兼顾。
对比而言.用CORDIC算法实现的三角函数发生器能很好地兼顾这些方面.并且极
适合于VLSI实现。在CORDIC算法中有两种方法:即圆周旋转和向量旋转。这里主要关
心圆周旋转。
CORDIC算法主要用于计算三角函数、双曲函数和其他一些基本函数的运算.该算法的
基本原理如图3-1所示。
Y▲
Vl(Xl,y1)
一
y2⋯⋯⋯⋯j万⋯~一一产姬,y萄
~、 /7
’,7
7‘
一~j,,,t
,/ 妒
图3-1CORDIC算法的基本原理图
如图所示.初始向量Ii旋转角度伊后得到向量‘:。
x:=rl·cos0+Y1·sin日
Y:2Ya·cos0一■。sinp
重写式(3-1).则得
T:=cos0·(rl+,Itan0)
)-二=cos0·◇l—rltan0)
为了在硬件上实现方便.作如下约定:
只=arctan(2“)
则 cos口=
(3.1)
r3.2
每一次旋转的角度护正切值为2的锫数,即
(3.3)
(3.4)
并目.约定以d代表向量的旋转育同,+1表示逆时针疑转.一l表示ll页时针旋转
故第f步的旋转可用下式表示
其中. X=
(3.5)
(3.6)
上式的墨为模校芷园子,对于字长一定的运算.就收敛到一个常数以。以16位字
长为例.
,/—‘。o6072529、『衍i枷6072529 (3—7)
K。≈O.6073 i—÷∞ (3.8)
这样可将输入数据x,Y校正后再参与运算,避免在运算中增加校正运算。运算迭代
式可以简化成
k—r+吐Ⅵ吨⋯ l (3-9)
Yf-l=Y。一Z。t。2。 』
上式的运算就只有加或减法和移位了。迭代数接近无穷时.基于迭代式(3.8)的
CORDIC算法可以说具有系统增益G.:
Gt2