基于FPGA的直接数字频率合成器的设计说明书.doc
《基于FPGA的直接数字频率合成器的设计说明书.doc》由会员分享,可在线阅读,更多相关《基于FPGA的直接数字频率合成器的设计说明书.doc(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 毕业设计论文基于FPGA的直接数字频率合成器的设计摘要 在频率合成领域,常用的频率合成技术有直接模拟合成、模拟锁相环、小数分频锁相环等,直接数字频率合成(Direct Digital Frequency Synthesis ,DDFS,简称DDS)是近年来的新的频率合成技术。本文介绍了直接数字频率合成器的基本组成与设计原理,给出了基于FPGA的具体设计方案与编程实现方法。仿真结果表明,该设计简单合理,使用灵活方便,通用性好,可写入各种FPGA芯片,最高可将频率提高100万倍。具有良好的性价比。关键词 直接数字频率合成器(DDS) FPGA Designofdirectdigitalfrequ
2、encysynthesizerbasedonFPGAAbstract In Frequency domain, the common Synthesis technology has Direct simulation, phase lock loop simulation, decimal Frequency and phase lock loop, Direct Digital Frequency Synthesis (as some DDFS, Digital, referred to as spurious bio-synthesis) in recent years is the n
3、ew Frequency Synthesis technology. The structure and principles of Direct Digital Frequency Synthesizer is introduced. Also a detailed design and the method of program realization based on FPGA are introduced. The result of simulation shows that the design is simple and feasible, convenient and flex
4、ible, high universality, writeable various FPGA chip, the highest frequency can be 100 million times. Ratiofor quality to price.Keywords Direct Digitalfrequency Synthesizer(DDS)FPGA前言在频率合成领域,常用的频率合成技术有直接模拟合成、模拟锁相环、小数分频锁相环等,直接数字频率合成(DDS)是近年来的新的频率合成技术。DDS以稳定度高的参考时钟为参考源,通过精密的相位累加器和数字信号处理,再通过高速D/A变换器产生所
5、需的数字波形,这个数字滤波经过一个模拟滤波器后,得到最终的模拟信号波形。DDS是产生高精度、快速频率变换、输出波形失真小的优先选用技术。随着可编程逻辑器件的飞速发展,使用FPGA(FieldProgrammable Gate Array)设计DDS系统成为一种很好的选择,由于FPGA现场可编程,设计复杂或者简单系统完全从实际需要出发,通过重写RAM/ROM数据,可以做到任意波形输出和动态波形输出,这是其他方法所无法比拟的。本章提出了一种基于FPGA的直接数字频率合成设计方法,并利用比例乘法器,将频率分辨率提高到惊人的程度。目录1DDS原理11.1 直接模拟(DAS)11.2 间接式频率合成(P
6、LL)11.3 直接数字频率合成(DDS)22 系统设计62.1微控制器接口模块82.2 相位累加寄存器82.3双端口RAM83模块设计与实现153.1 微控制器接口模块153.1.1分频寄存器(FWORD1-FWORD4)163.1.2控制寄存器(DDSCR)163.1.3数据输入寄存器(DATA)173.2 比例乘法器模块313.3 相位累加器模块373.4 双端口RAM模块39致48参考文献4949 / 541 DDS原理 顾名思义频率合成技术,就是能从一个高稳定和准确度的标准频率中产生千百万个同一高稳定度和准确度的频率。频率合成技术广泛地应用于通信、导航、雷达、仪器仪表、军事装备等领域
7、、现代的电子系统对频率合成器提出越来越高的要求,主要表现在:转换速度快、频段宽、步进间隔小、杂散小、体积小、重量轻、功耗低等。随着大规模集成电路的发展,频率合成技术日趋完善,目前,主要有以下几种方式。1.1 直接模拟(DAS)直接模拟合成技术是通过对标准参考频率进行加、减、乘、除运算而合成一系列相干频率,其换频率速度主要由电路部件响应速度决定,相位噪声指标也还不错。主要技术问题是杂波干扰,由于直接模拟合成引入了大量的混频器、倍频器、分频器,这些非线性的部件使得杂波抑制相当困难、在实际应用中,这种技术的电路结构比较复杂,体积、重量、成本等方面缺点大大限制其应用、1.2 间接式频率合成(PLL)间
8、接式频率合成技术重要有鉴频器、环路滤波器、压控振荡器、分频器等4个基本部件构成,如下图1-1所示。锁相环是一个相位误差反馈控制系统,它比较输入信号和压控振荡器经分频后输出信号之间的相位差,从而产生误差控制电压来调整压控制振荡器的输出频率,以达到与输入信号倍频的关系。锁相环的频率转换速度与环路滤波器的带宽有关,环路带宽越宽,转换速度越快,而环路带宽又取决于鉴相器频率。才用这种技术产生的频谱较纯,系统体积小、重量轻、成本低、易集成,具有广泛的应用前景。但是,它也有一个致命的缺点,就是在高分辨率情况下,换频速度较慢。分频器鉴相器压控振荡器低通滤波器合成频率参考频率图 1-1 锁相环电路基本结构为了解
9、决高分辨率于高鉴相频率之间的矛盾,可以采用多环技术或者小数分频技术。如果要求分辨率很高,那么采用多环PLL就显得电路结构复杂、成本高、调试困难;而采用小数分频技术,可以轻易解决高分辨率问题,但是小数分频的主要问题是“尾数难抑”,国外对这方面的研究不少,但是还没有彻底解决。1.3 直接数字频率合成(DDS) DDS的概念最初是有美国学者J.Tierncy,C.M.Rader 和 B.Gold 提出的,它是以全数字技术,从相位概念出发直接合成所需波形的一种新的频率合成技术,典型的DDS系统由相位累加器,波形查找表(ROM/RAM),D/A,低通滤波器(Low Pass Filter简称LPF)构成
10、,如图 1-2所示。低通滤波器m相位累加器波形查找表D/A图 1-2 DDS原理框图图中,m为相位累加器步长,也有资料称为频率控制字,是参考频率,是合成频率。其系统的核心是相位累加器,它由一个累加器和一个n位相位寄存器组成(也可用带有输出锁存的累加器代替),如图1-3所示。每来一个时钟脉冲,相位累加器以步长m累加,其结果作为波形查找表地址。当相位累加器加满量程,就会产生一次溢出,完成一个周期性的动作,这个周期是合成信号的一个周期,换句话说,累加器的溢出频率也就是DDS的合成信号频率。相位累加器的输出数据作为波形查找表地址,进行波形的相位幅值的转换,即可在给定的时间上确定输出波形的抽样幅值,如图
11、1-4所示。n位的寻址RAM/ROM相当于把正弦信号离散成具有个样值的序列,以二进制数值形式存储在个地址单元,按照地址不同输出相应的信号幅值。D/A转换器的作用是把合成的数字波形转换成模拟波形。离散量化幅度序列S(n)经D/A转换后变成了阶梯波S(t),值得注意的是,频率合成系统对D/A转换器的分辨率有一定要求,D/A转换器的分辨率越高,合成的阶梯波S(t)台阶数越多,输出的波形的精度也就越高,减少了量化失真。寄存器累加器步长m参考时钟相位码序列图 1-3 相位累加器波形存储器(ROM/RAM)幅度量化序列数据相位吗序列地址图 1-4 相位幅度变换原理图 低通滤波器的作用不容忽视。对D/A输出
12、的阶梯波S(t)进行频谱分析,可知S(t)中除了主频外,还存在分布在,2两边处的非谐波分量。因此,为了取出主频,必须在D/A转换器的输出端接入截止频率为的低通滤波器。DDS具有以下特点:(1) 频率分辨率高。DDS的频率分辨率在固定时,取决于相位累加器的位数n,只要n足够大,理论上就可以获得相应的分辨率精度,这是传统方法难以实现的。(2) 频率变换速度快。在DDS中,一个频率的建立时间通常取决于滤波器的带宽。影响因素为相位累加器,ROM/RAM的工艺结构,D/A转换器与它信号处理过程中可能产生的时延。其中,信号处理的时延与时钟周期相关。由于DDS中不要相位反馈控制,频率建立与切换快,与频率分辨
13、率,频谱纯度相互独立,明显优于PLL。(3) DDS中相位改变是线性过程。数字相位累加器是优良的线性数字增值发生器。因此,DDS的相位误差主要依赖于时钟的相位特性,相位误差小。另外,DDS的相位是连续变化的,形成的信号具有良好的频谱特性,这是传统的直接频率合成法所无法实现的。(4)输出频率围宽。 理论上,DDS输出的频率围在,实际上,考虑到低通滤波器的设计,为,而FPGA的时钟频率可达到100MHz,因此,利用FPGA,可以实现输出频率围很宽的信号。根据前面的讲述,可以得到一下公式:其中,是输出波形的周期,n是相位累加器位数,m是相位累加器步长,是输入波形周期。是参考频率,是输出波形频率,是最
14、小分辨率,是最高合成频率。根据奈奎斯特(Nyquist)定理,即采样频率必须不小于被采样信号的最高频率,否则原信号不能被恢复,所以当时,得到最高合成频率,当然,这仅是理论值,实际上与D/A精度、转换速度,滤波网络性能密切相关,一般取,例如,晶振时钟为100MHz时,可知输出合成波频率将出现在较宽频段上。2 系统设计本章所需要设计的直接数字频率合成系统与前面介绍的DDS原理完全一致。从实现方式上看,有如下特色:(1) 引入8级级联的BCD比例乘法器,将频率分辨率提高100万倍!(2) 利用FPGA部嵌入式存储单元,在FPGA部集成了2Kbit容量双端口RAM,降低了硬件难度,提高了系统可靠性。从
15、前面的介绍中可以知道,增加相位累加器的位数n,可以提高频率分辨率,最低输出频率可达Hz、mHz甚至是Hz,即DDS的最低合成频率接近零频。有人计算过,如果为50MHz,那么当n为48位时,其分辨率可达179nHz。但是,增加相位累加器的位数n将使加法算法过于庞大,消耗惊人的FPGA资源。何不从入手,对实现任意可分频,利用降低来换取高分辨率呢?事实证明,使用比例乘法器是可行的,经过8级BCD比例乘法器的分频,分频比达到,例如,晶振频率为100MHz,经过分频可以是Hz任意整数频率,整个分频模块仅消耗65个宏单元。现代FPGA部集成了存储单元,这些是宝贵的存储资源,通常只有通过利用开发商提供的知识
16、产权核(IP CORE)才能使用,这些知识产权核经过严格的测试和优化,可以在特定器件上发挥最大效能,利用这些模块,就是将优秀EDA开发人员的硬件成果嵌入到自己设计中,缩短了开发时间,提高了效率。本章设计的参数选取如下。由相位累加器位数n=8,存储容量2568=2048 bit,晶振频率为100MHz,可知:(1) 频率分辨率 Hz(2) 最高合成频率MHZ前面讲过,这仅是理论值,实际中与具体电路(D/A,滤波器)有关。(3) 相位步进 本设计按照模块化层次化设计方法,根据结构功能,可以划分出3个功能模块,即微控制器接口模块、相位累加器模块、双端口RAM模块,其连接关系如图2-1所示。图 2-1
17、2.1 微控制器接口模块微控制器接口模块向微控制器提供友好,方便的操作接口,MCU可通过片选(CS)、地址选通(AS)、数据选通(DS)、数据总线和地址总线来操作其部寄存器。微控制器接口模块部实现了6个寄存器,其中,4个位分频寄存器,1个位控制寄存器,1个位数据输入寄存器。此外,8级比例乘法器组成的分频模块以端口映射的方式例化在控制器接口模块中,对外输出参考时钟频率fclk。2.2 相位累加寄存器相位累加寄存器是系统的核心模块,使用经过分频器分频后的时钟,围相当宽广。相位累加器输出相位码序列,作为查寻地址送入双端口RAM,相应地,还有读使能和读时钟信号。相位累加步长m可取,n=0,1,2, ,
18、7这里,为了减小失真,一般m取值不超过322.3 双端口RAM利用ALtera提供的Mega Wizard Plug-In Manager定制了数据线和地址线宽度均为8位,存储容量为2048bit的双端口RAM,独立的两套读/写接口,有兴趣的读者不妨使用Mega Wizard Plug-In Manager定制其他的存储器,看看哪种存储器使用起来最方便。接口信号说明如下:RESET,系统复位,低电平有效;CS,片选信号,低电平有效;AS,地址选通信号,低电平有效;DS,数据选通信号,低电平有效;DATABUS,数据总线;宽度为8位;ADDRBUS,地址总线,宽度为3位。顶层实体的VHDL程序如
19、下:- dds.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY dds ISPORT(- 与微控制器接口信号- 全局复位reset: INSTD_LOGIC;- 全局时钟clk: INSTD_LOGIC;- 地址总线addrbus: INSTD_LOGIC_VECTOR(2 DOWNTO 0);- 数据总线databus: INSTD_lOGIC_VECTOR(7 DOWNTO 0);- 片选cs: INSTD_LOGI
20、C;- 地址选通as: INSTD_LOGIC;- 数据选通ds: INSTD_LOGIC;- 数据输出,送至D/A转换器q: OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);END dds;ARCHITECTURE rtl of dds IS- 元件说明- 接口模块COMPONENT interfaceport(- 与微控制器接口信号- 全局复位reset: INSTD_LOGIC;- 全局时钟clk: INSTD_LOGIC;- 地址总线addrbus: INSTD_LOGIC_VECTOR(2 DOWNTO 0);- 数据总线databus: INSTD_lOGIC_VE
21、CTOR(7 DOWNTO 0);- 片选cs: INSTD_LOGIC;- 地址选通as: INSTD_LOGIC;- 数据选通ds: INSTD_LOGIC;- 与部模块接口信号- DDS扫频使能ddsen: OUTSTD_LOGIC;- 经比例乘法器分频后的时钟fclk: OUT STD_LOGIC;- 步长m: OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);- 数据输出,送至双端口RAMdataout: OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);- 地址输出,送至双端口RAMaddrout: OUTSTD_LOGIC_VECTOR(7 DOWNT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 直接 数字 频率 合成器 设计 说明书
限制150内