1、- 0 - 摘 要 直接数字频率合成( DDS)技术采用全数字的合成方法,所产生的信号具有频率分辨率高、频率切换速度快、频率切换时相位连续、输出相位噪声低和可以产生任意波形等诸多优点。 本文在对现有 DDS技术的大量文献调研的基础上,提出了符合FPGA结构的 DDS设计方案并利用 Quartus 软件上进行仿真,通过单片机, D/A转换器低通滤波器来实现具体波形的频率控制和输出,将现场可编程逻辑器件 FPGA 和 DDS 技术相结合,具体的体现了基于VHDL语言的灵活设计和修改方式是对传统频率合成实现方法的一次重要改进。 FPGA器件 作为系统控制的核心,其灵活的现场可更改性,可再配置能力,对
2、系统的各种改进非常方便,在不更改硬件电路的基础上还可以进一步提高系统的性能。 文章给出仿真结果,经过验证本设计能够达到其预期性能指标。 本次设计的侧重点是 VHDL语言的编程,和单片机控制。 关键词 : 直接数字频率合成器 ; 硬件描述语言 ;现场可编程门阵列;单片机 。 1 目录 第 1 章 频率合成器及相关内容简介 . 2 1.1 频率合成的发展状况 . 2 1.2 DDS 的优点与缺点 . 3 1.2.2 DDS 的缺点 . 3 1.3 DDS 的发展前景 . 3 1.4 FPGA 简介 . 4 1.4.1 FPGA 的结构 . 4 1.4.2 FPGA 的开发流程 . 4 1.5 VH
3、DL 语言简介 . 5 第 2 章 总体设计 . 6 2.1 DDS 的基本原理 . 6 2.1.1 DDS 的基本原理 . 6 2.1.3 DDS 的输出频率及分辨率 . 7 2.2 DDS 总体框图的设计 . 7 第 3 章 单元模块的功能及实现 . 8 3.单片机控制模块 . 8 3.1.1 功能 . 8 3.1.2 硬件电路及说明 . 8 3.1.3 软件分析及设计 . 9 3.1.4 仿真结果及说明 . 9 3.分频电路 . 10 3.2.1 功能 . 10 3.2.2 电路分析及设计 . 10 3.3 FPGA 模块 . 10 3.3.1 功能 .11 3.3.2 正弦波采样值的计
4、算 .11 3.3.3 顶 层电路的设计 .11 3.3.4 各模块的功能及设计 .11 3.转换器 . 16 3.4.1 D/A 转换器原理及管脚说明 . 16 3.4.2 D/A 转换器在设计中的应用 . 18 第章 预算值与仿真对比 . 19 4.1 显示值与值的计算 . 19 4.2 仿真结果及误差计算 . 19 总结 . 21 参考文献 . 21 附录 . 23 2 第 1 章 频率合成器及相关内容简介 直接数字频率合成技术 (Direct Digital Frequency Synthesis,即 DDFS,一般简称 DDS)是从相位直接合成所需波形的一种新的频率合成技术。 近年来
5、 ,直接数字频率合成器 (DDS)由于其具有频率分辨率高、频率变换速度快、相位可连续变化等特点 ,在数字通信系统中已被广泛采用。随着微电子技术的发展 ,现场可编程门阵列 ( FPGA)器件得 到了飞速发展。由于该器件具有速度快、集成度高和现场可编程的优点 ,因而在数字处理中得到广泛应用 ,越来越得到硬件电路设计工程师的青睐。 1.1 频率合成的发展状况 频率合成器是电子系统的心脏,是决定电子系统性能的关键设备。随着现代无线电通信事业的发展,移动通信雷达制导武器和电子对抗等系统对频率合成器提出越来越高的要求。低相噪高纯频谱和高速捷变的频率合成器一直是频率合成技术发展的主要目标, DDS 技术的发
6、展将有力地推动这一目标的实现。 从频率合成技术的发展过程看频率合成的方法主要有三种: ( 1)最早的合成方法称为 直接频率合成,它是使基准信号通过脉冲形成电路来产生丰富谐波脉冲,随后通过混频分频倍频和带通滤波器完成频率的变换和组合,以产生我们需要的大量离散频率从而实现频率合成。其合成方法大致可以分为两种基本类型:一种是所谓非相关合成方法;另一类是所谓相关合成方法。这两种合成方法的主要区别在于所使用的参考频率源的数目不同。它的缺点在于制作具有相同频率稳定性和精度的多个晶体参考频率源既复杂又困难,而且成本高。 ( 2)锁相频率合成是应用模拟或数字锁相环路的间接频率合成。它被称为第二代频率合成技术。
7、早期的合成器使用模拟锁相环, 后来又出现了全数字锁相环和数模混合的锁相环。数字鉴相器、分频器加模拟环路滤波压控振荡器的混合锁相环是目前最为普遍的 PLL 组成方式。锁相环频率合成技术提供了一种从单个参考频率获得大量稳定而准确的输出频率的方法,并且频率输出范围宽,电路结构简单,成本低。 ( 3)直接数字频率合成( DDS)。为了取得更快的频率转换速度,随着数字技术的发展,出现了直接数字频率合成器 DDS。 DDS 技术是首先将相位以极小的间隔离散化,计算出正弦信号对应于这些相位的幅度值,形成一个幅度相位表,并存储于 DDS器件的 ROM 中。DDS 工 作时利用数字方式累加相位得到信号在该时刻的
8、相位值,然后按一定的相位幅度转3 换算法在 DDS 的 ROM 中查表得到信号在该时刻的幅度值,最后将信号通过 D/A 变换和低通滤波器形成模拟正弦波或存储波形的频率合成技术。 1.2 DDS 的优点与缺点 直接数字频率合成是一种比较新颖的频率合成方法。 DDS是一种全数字化的频率合成方法。 DDS频率合成器主要由频率寄存器、相位累加器、波形 ROM, D/A转换器和低通滤波器组成。在系统时钟一定的情况下,输出频率决定于频率寄存器的中的频率字。而相位累加器的字长决定了分辨率。 1.2.1 DDS的优点 基于这样的结构 DDS频率合成器具有以下优点 : (1)频率分辨率高,输出频点多,可达个频点
9、 N2 假设 DDS相位累加器的字长是 N); (2)频率切换速度快,可达 us量级 ;(3)频率切换时相位连续 ; (4)可以输出宽带正交信号 ; (5)输出相位噪声低,对参考频率源的相位噪声有改善作用 ; (6)可以产生任意波形 ; (7)全数字化实现,便于集成,体积小,重量轻。 1.2.2 DDS的缺点 虽然 DDS 有很多优点但也有其固有的 缺点。 ( 1)杂散抑制差这是 DDS的一个主要的缺点。由于 DDS一般采用了相位截断技术,它的直接后果是给 DDS的输出信号引入了杂散。 ( 2)工作频带受限。根据 DDS 的结构和工作原理 DDS 的工作频率要受到器件速度的限制和基准频率有直接
10、的关系,但随着目前微电子水平的不断提高 DDS 工作频率也有很大的提高。 ( 3) 相位噪声性能与其它频率合成器相比, DDS 的全数字结构使得相位噪声不能获得很高的指标, DDS的相位噪声主要由参考时钟信号的性质参考时钟的频率与输出频率之间的关系,以及器件本身的噪声基底决定。 1.3 DDS 的发展前景 近几年超高速数字电路的发展以及对 DDS的深入研究, DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平。随着这种频率合成技术的发展,现已广泛应用于通讯、导航、雷达、遥控遥测、电子对抗以及现代化的仪器仪表工业等领域。直接数字频4 率合成器的基本优点是在微处理器的控制下 。
11、能够准确而快捷地调节输出信号的频率、相位和幅度。此外, DDS具有频率和相位分辨率高、频率切换速度快、易于智能控制等突出特点。 随着集成电路工艺的不断改善,这些产品的功能也愈来愈强大。现在不仅在一个芯片上能够集成 DDS所需要的全部功能,而且也具备了一些有用的调制能力。 除了在仪器中的应用外, DDS在通信系统和雷达系统中也有很重要的用途。通过 DDS可以比较容易的产生一些通信中常用的调制信号如 :频移键控 (FSK)、二进制相移键控 (BPSK)和正交相移键控 (QPSK)。DDS可以产生两路相位严格正交的信号在正交调制和解调中的到广泛应用,是一中很好的本振源。在雷达中通过 DDS和 PLL
12、相结合可以产生毫米波线性调频信号, DDS移相精度高、频率捷变快和发射波形可捷变等优点在雷达系统中也可以得到很好的发挥。 1.4 FPGA 简介 FPGA 是英文 Field Programmable Gate Array 的缩写,即现场可编程门阵列,它是在PAL、 GAL、 EPLD 等可编程器件的基础上进一步发展的产物。 用户现场可编程门阵列 FPGA是一种高密度的可编程逻辑器件。由于 FPGA 器件集成度高 ,方便易用,开发和上市周期短,在数字设计和电子生产中得到迅速普及和应用,并一度在高密度的可编程逻辑器件领域中独占鳌头。 1.4.1 FPGA 的结构 FPGA 和 CPLD 都是高密
13、度现场可编程逻辑芯片,都能够将大量的逻辑功能集成于一个单片集成电路中,其集成度已发展到现 在的几百万门。现场可编程门阵列 FPGA 是由掩膜可编程门阵列( MPGA)和可编程逻辑器件二者演变而未的,并将它们的特性结合在一起,因此 FPGA 既有门阵列的高逻辑密度和通用性,又有可编程逻辑器件的用户可编程特性。FPGA 通常由接线资源分隔的可编程逻辑单元(或宏单元)构成阵列,又由可编程 I O 单元围绕阵列构成整个芯片,其内部资源是分段互联的,因而延时不可预测,只有编程完毕后才能实际测量。 1.4.2 FPGA 的开发流程 FPGA 设计人体分为设计输入、综合、功能仿真(前仿真)、实现、时序仿真(
14、后仿真)、配置下载等六 个步骤。下面分别介绍各个设计步骤。 1、设计输入 设计输入包括使用硬件描述语言 HDL、状态图与原理图输入三种方式。 2、 设计综合 5 综合,就是针对给定的电路实现功能和实现此电路的约束条件,如速度、功耗、成本及电路类型等,通过计算机进行优化处理,获得一个能满足上述要求的电路设计方案。 3、 仿真验证 从广义上讲,设计验证包括功能与时序仿真和电路验证。仿真是指使用设计软件包对已实现的设计进行完整测试,模拟实际物理环境下的工作情况。前仿真是指仅对逻辑功能进行测试模拟,以了解其实现的功能否满足原设计的要求,仿真过 程没有加入时序信息,不涉及具体器件的硬件特性,如延时特性;
15、而在布局布线后,提取有关的器件延迟、连线延时等时序参数,并在此基础上进行的仿真称为后仿真,它是接近真实器件运行的仿真。 4、 设计实现 实现可理解为利用实现工具把逻辑映射到目标器件结构的资源中,决定逻辑的最佳布局,选择逻辑与输入输出功能连接的布线通道进行连线,并产生相应文件(如配置文件与相关报告)。通常可分为如下五个步骤 :转换,映射,布局与布线,时序提取和配置。 5、时序分析 在设计实现过程中,在映射后需要对一个设计的实际功能块的延时和估计的布线延 时进行时序分析;而在布局布线后,也要对实际布局布线的功能块延时和实际布线延时进行静态时序分析。 在综合与时序仿真过程中交互使用 PrimeTim
16、e 进行时序分析,满足设计要求后即可进行FPGA 芯片投片前的最终物理验证。 6、配置下载 下载是在功能仿真与时序仿真正确的前提下,将综合后形成的位流下载到具体的 FPGA芯片中,也叫芯片配置。 FPGA 设计有两种配置形式:直接由计算机经过专用下载电缆进行配置;由外围配置芯片进行上电时自动配置。 1.5 VHDL 语言简介 EDA的关键技术之一是要求用行为抽象化方法来描述数字系 统的硬件电路 ,即硬件描述语言 (HDL)描述方式。所以采用硬件描述语言及相关的编辑、综合和仿真等技术是当今 EDA领域发展的又一重要特征。 超高速集成电路硬件描述语言 VHDL VHSIC (VeryHighSpe
17、ed IntegratedCircuit) Hardware Discription Language 作为 IEEE-1076 标准所规范的硬件描述语言 ,得到了众多EDA 公司和集成电路厂商的支持与认同 , 已经成为现代电子设计领域的通用描述语言和主6 要设计手段。 VHDL 主要用于描述数字系统的结构、行 为、功能和接口 , 尤其是其强大的行为描述能力和语言结构 , 只需直接面对对象进行系统级的逻辑行为描述 , 从而避开了具体的器件结构来进行系统设计 。 另外 , VHDL 的可移植能力和多层次设计描述能力 , 使得 VHDL的设计文件可以被不同 EDA 工具和各类 CPLD 器件所支持
18、 , 并创建为阶层式设计模块综合到 CPLD/FPGA 器件中 , 使之以最快的速度上 市并自然地转换为 ASIC 设计。 利用 VHDL 进行脱离具体目标器件的设计为大系统级、混合系统级和单片系统级设计技术的发展奠定了良好的基础。正因为 VHDL 这种与硬件电路和器件系列 (CPLD/FPGA)的极小相关性以及其简洁明确的语言结构和便于修改和共享等特点 , 使得 VHDL 在电子设计和 EDA 领域具有更好的通用性和更宽广的适用面。 第 2 章 总体设计 2.1 DDS 的基本原理 直接数字频率合成技术( Direct Digital Frequency Synthesis,即 DDFS,一
19、般简称 DDS)是从相位概念出发直接合成所需波形的一种新的频率合成技术。近年来,技术和器件水平不断发展,这使 DDS 合成技术也得到了飞速的发展,它在相对带宽、频率转换时间、相位连续性、正交输出、高分辨力以及集成化等一系列性能指标 方面已远远超过了传统的频率合成技术所能达到的水平,完成了频率合成技术的又一次飞跃,是目前运用最广泛的频率合成技术。 2.1.1 DDS 的基本原理 DDS 的主要思想是从相位的概念出发合成所需的波形 ,其结构由相位累加器 ,正弦 ROM查找表 , D/A 转换器和低通滤波器组成。它的基本原理框图如图 2.1 所示。 图 2.1 DDS 原理图 图 2.1 中 , f
20、c 为时钟频 率 , K 为频率控制字 , N 为相位累加器的字长 , m 为 ROM 地址线位数 , n 为 ROM 的数据线宽度 (一般也为 D/A 转换器的位数 ) , fo 为输出频率 , 输出频率 fo 由 fC 和 K 共同决定 : fo = fCK/2N。又因为 DDS 遵循奈奎斯特 (Nyquist)取样定律 :即最高的7 输出频率是时钟频率的一半 ,即 fo = fC/2。实际中 DDS 的最高输出频率由允许输出的杂散水平决定 ,一般取值为 fo 40% fc。 2.1.3 DDS 的输出频率及分辨率 DDS 输出信号的频率由式( 2.1)给定: Nff clk( 2.1)
21、式中, outf 为输出频率, clkf 为系统同步的时钟频率, N 为输出频率取的采样点数。可见,理论上通过设定 DDS 相位累加器位数频率控制字 N 和基准时钟 clkf 的值,就可以产生任一频率的输出。而 DDS 的频率分辨率定义: NclkfK 2 ( 2.2) 也即输出频率的步进制。由于基准时钟一般固定,因此相位累加器的位数就决定了频率分辨率。 2.2 DDS 总体框图的设计 图 2.2 总体框图 通过对 DDS 基本原理的分析,可知通过改变控制字 K 和时钟脉冲 clk 来控制输出信号的频率,所以选择单片机来控制 K 和时钟脉冲,并作相应的显示; 本次设计的侧重点是 VHDL 语言
22、的编程,和单片机控制 。 8 第 3 章 单元模块的功能及实现 3.单片机控制模块 3.1.1 功 能 根据理论预算值,通过控制按键和以循环步进的方式向输出十位控制字以及向分频电路输出时钟频率选择信号,并对相应的理论值作出显示。 3.1.2 硬件电路及说明 单片机的任务是控制 k 值的输出,通过按键 k1 来控制时钟脉冲,方式位步进循环,由LED 灯来显示当前档位, k2 控制显示频率和 k 值的输出,方式也是步进循环,由数码管显示当前频率,并由两个二极管来显示单位,由于要求频率范围是 20Hz-20KHz,所以单位是Hz 和 KHz,并由 P2 口和 P0.6, P0.7 来输出 10 位
23、K 值,时钟脉冲通过 P3.2, P3.3, P3.4, P3.5 四个管脚来控制,同时着四个口也控制当前频率的显示挡位 图 3.1 单片机硬件电路图 9 3.1.3 软件分析及设计 根据要求,需要通过按键步进的方式来控制输出,首先将一些运算好的数据存放到数组中,由于既要存放 k 值,又要存放显示频率值,所以采用二维数组,需要对输出值通过数码管进行显示,由于 I/O 口有限,须才用动态显示,顺序功能图如 图 3.2 所示 : 图 3.2 单片机控制的顺序功能图 由于分了四个时钟脉冲,所以建立了四个二维数组 ,由 A 来做循环值,取不同值时进入不同的循环,通过来控制值,来控制 i 值,做了一个两级循环完成要求 具体程序见附录 3.1.4 仿真结果及说明 当前频率为 20Hz,由数码管显示, K 值是 0000010100由发光二级管显示,十进制。