新乡职业技术学院 453006
【文章摘要】
采用FPGA 芯片及数模转换器,利用直接数字频率合成(DDS)技术,设计实现了一个相位、频率可控的正弦波信号发生器,与此同时描述了直接数字频率合成技术的工作机理、电路组成及设计的思路和实现方法。通过设计和对电路进行测试,输出正弦波形达到了要求,控制比较灵活、性能好,同时也证实了基于FPGA 的直接数字频率合成技术的可行性和可靠性。
【关键词】
现场可编程门阵列(FPGA);正弦信号发生器;直接数字频率合成(DDS)
0 引言
DDS 即直接数字频率合成技术,在1971 年,由美国学者B.Gold 和J.Tiercy,M. Rader 首次提出,以数字信号处理为基础, 从相位角度出发的来直接输出所要波形的一种全新的数字技术频率合成方法。自1971 年到现在,直接数字频率合成技术已经由一个新事物逐步发展为一种重要的设计工具。FPGA 自从1985 年由Xilinx 公司推出第一颗现场可编程逻辑组件之后,已经发展了二十多年。FPGA 不仅能够对电子系统小型化、可靠性高等问题进行解决之外,而且开发周期短、投入低、价格便宜,使得FPGA 成为首选。
1 直接数字频率合成(DDS)工作原理
直接数字频率合成(Direct Digital Frequency Synthesis, 即DDFS,一般简称DDS) 是从相位角度出发的直接合成所要波形的一种全新的频率合成技术。DDS 的主要优点是它能够在微控制器的控制下精确而快速的变换输出频率、相位和幅度,同样也可以利用DDS 技术产生其他任意的波形。其原理如图1 所示。
DDS 的工作原理是以数控振荡器的方式产生相位、频率可控制的正弦波。电路一般包括基准时钟、幅度/ 相位转换电路、频率累加器、相位累加器、低通滤波器和数模转换器。相位步进量为输入的频率控制字(X),当作相位累加器的增量;相位控制字通过相位调制器来设置波形的起始相位;系统时钟是对相位调试器、累加器和数模转换器提供时序的控制。
2 DDS 正弦波发生器的设计思路
采用DDS 技术设计一个信号发生器, 其原理框图如图2 所示:
本设计为利用单片机和FPGA 实现的DDS 正弦波信号发生器,整个DDS 正弦波信号发生器由单片机系统、FPGA 系统、模拟系统三部分组成,系统原理框图如下图所示:
FPGA 内部DDS 系统的设计:FPGA 内部分为四个模块:DDS 子系统、4X4 键盘接口、地址译码电路、LCD 模块接口。根据DDS 原理可知,DDS 子系统由相位累加器、频率字寄存器、波形数据存储器等几个模块组成。下面先来介绍波形数据存储器的功能:第一,单片机可以利用并行总线把正弦波波形数据写入存储器;第二,在相位累加器输出地址的控制下将波形数据按顺序传给高速数模转换器。C8051F360 单片机的P1 口分时段送出低8 位的地址和8 位的数据信息。在FPGA 内部设计一个8 位锁存器可以获得低8 位地址。相位累加器是DDS 子系统的核心模块,由32 位的累加寄存器与加法器级联而成,对频率控制字的频率大小进行累加运算,输出的是波形存储器的地址。由于DDS 的频率字为32 为,因此,频率字寄存器包括4 个8 位寄存器。将地址译码器发出的片选信号CS2 和地址信号A1、A0 配合再次译码就能够得到4 个寄存器片选信号CS20、CS21、CS22、CS23。为了保证数据传送的可靠性,片选信号CS20~CS23 必须和写信号先或后传入寄存器时钟输入端。单片机模块通过4 次写操作将32 位的频率字传入频率字寄存器。
单片机控制软件模块的设计:DS 信号发生器利用FPGA 等组件来完成正弦波形波形的高速产生,其工作不需要单片机过多干预。单片机子系统模块只要实现键盘的输入、液晶屏的显示、向FPGA 发送数据、输出信号的幅值和对直流偏移量的数字控制等功能。单片机控制软件是一个实现单线程、键盘功能的分支程序。
3 实验数据的测试
用存储示波器来测量反向放大器的模拟输出端正弦波信号, 测试频率设为100KHz。输出结果如图4 所示。
图4 正弦波输出波形
4 总结
本文介绍了基于FPGA 的直接数字频率合成(DDS) 设计,实现了一个正弦波信号发生器,并且阐述了其工作原理、思路及实现方法。本设计依照技术要求进行计算并且进行编程,通过仿真以及电路测试,输出波形达到设计要求,通过设计也对DDS 技术的原理和实现方法有了更深入的了解和认识。设计证明了采用FPGA 设计实现DDS 信号发生器的可行性和可靠性,也更为灵活。并且FPGA 芯片支持系统现场修改和现场调试,性能基本能达到绝大多数系统的要求,因此,将DDS 技术嵌入到FPGA 芯片所组成的系统中,将使得系统具有更高的性价比。
图2 DDS 信号发生器原理框图
图1 基于FPGA 的DDS 正弦信号发生器原理图
图3 系统原理框图012