首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的任意波形发生器设计与研究

基于FPGA的任意波形发生器设计与研究

标签:FPGA  DDS
任意波形发生器( Arbit rary Waveform Generato r,AWG) 是一种多波型的信号发生器,  它不仅能产生正弦波、指数波等常规波形, 也可以表现出载波调制的多样化, 如: 产生调频、调幅、调相和脉冲调制等。更可以通过计算机软件实现波形的编辑,  从而生成用户所需要的各种任意波形。任意波形发生器的实现方案主要有程序控制输出、DMA 输出、可变时钟计数器寻址和直接数字频率合成( DDS) 等多种方式  。目前任意波形发生器的研制主要基于DDS 技术, 与传统的频率合成器相比, DDS 具有低成本、低功耗、高分辨率和快速转换时间等优点,  广泛使用在通信、测量与电子仪器领域, 是设备全数字化的一个关键技术。
1 任意波形发生器的理论分析
1. 1 DDS 技术简介
DDS( Direct Digital Sy nthesis) 的概念由美国学者J. T ier ncy、C. M. Rader 和B. Gold  在1971 年提出。该技术是从相位的概念进行频率合成, 主要优点是输出相位连续、相对带宽较大、频率分辨率很高、可编程、准确度和稳定度都比较高 。DDS  技术是利用查表法来产生波形, 而通过修改存储在ROM 里的数据, 就可以产生任意波形。
1. 2 DDS 基本结构
DDS 主要有相位累加器、ROM 波形查询表、数模转换器组成。其基本框图如图1 所示。

图1 DDS 结构框图


线性数字信号通过相位累加器逐级实现, 波形函数存储在ROM 中, 根据累加器输出的相位值作为地址,寻找存储在ROM 中的波形函数的幅度量化值,  完成相位到幅值的转换, 输出相对应的序列。
2 硬件电路设计
2. 1 设计方案
基于FPGA 实现DDS 功能, 通过单片机实现控制。此方案的核心在于FPGA 的设计实现逻辑功能,通过对存储器查表后输出信号,  由相连接的数模转换器转换为要求的波形。单片机作为控制器, 易于控制与调试。系统框图如图2 所示。

图2 系统框图



2. 2 D/ A 转换器的使用
本案采用德州仪器的TLC7528。它是双路、8 位D/ A 转换器, 本案设计为: A 路的数字量控制B 路的电压输出, B  路则控制输出的幅度。电路图可以显示,VA1( VOB1) 处输入的A( B) 路电压范围为- 5~ 0 V,VA2( VOB2) 处为A( B) 路的电压为-  5~ 5 V。DA 电路连接图如图3 所示。

图3 TLC7528 电路连接图


其中因为转换方法的问题, 产生的零点误差可以通过调整放大器的零点来校准; 而因为温度变化产生的温漂误差在技术上就比较难消除。关于单极性DAC  的增益误差可以通过调整放大器的闭环增益来消除。
2. 3 滤波器的设计
一般情况下, 椭圆滤波器的参数灵敏度最高, 在使用用相同阶数时, 椭圆滤波器能够得到最好的矩形系数, 7 阶椭圆滤波器在通带附近的频点可得到40 dB  的带外抑制, 很适合将杂散信号滤除。DDS 输出的另一类波形是频谱复杂的任意波形, 频率比较低, 频谱结构丰富, 具有较高的谐波分量,  选用等波纹误差线性相位滤波器来滤波, 它在很大范围内具有固定的延迟, 在远离截止频率处, 其幅度响应也比较好。
2. 4 单片机的设计
单片机采用传统8051 单片机, 晶振为12 MHz, 采用内部振荡方式; 复位输入引脚为高电平有效, 保持2  个机器周期以上的的高电平便可以实现对单片机的复位; 采用MAX232 芯片作为串口芯片,  单片机通过异步通信串行接口与其他计算机或者外围设备进行信息传递。
3 基于FPGA的DDS实现
FPGA 芯片采用ALT ERA 公司的CYCLON E 系列EP1C3T 144C8。设计采用Altera 公司的Quar tus , 使用AS  方式与JTAG 配置方式。
3. 1 固定波形输出
本案使用几个8 b 的ROM, 存储深度为1 024 点,用来存储正弦波等波形数据。每个波形数据存储在一个固定的ROM 里, 如图4Sine_ROM,  Square _ROM等分别对应正弦、方波等存储模块。通过一个使能模块控制, 采取低电平有效的方式, 选择性读取任意模块的波形。输出波形时, 仅有单独一个ROM  工作, 其他模块为高电平, 保证输出所需固定波形。使能模块的输入端为行列式键盘, 设定为: 单键控制某一波形输出。

图4 波形ROM 与使能控制设计电路图



3. 2 任意波形输出
任意波形是由上位机下传的波形数据, 由单片机控制, 必须设计一个能随时接受数据更新的RAM。如图5所示。

图5 任意波形模块设计电路图


选用的D/ A 转换器为8 位, 所以RAM 的字长也为8 位, 因此波形RAM 的地址线的位数取10 位。为了实现任意波形数据的更新, 波形RAM  设计成为双口RAM。
4 性能与误差分析
4. 1 测试结果
输出波形如图6 所示。本系统测试所用到的仪器为:
示波器 T ekt ronix 公司 型号: T DS1012
计数器 创瑞科技有限公司 型号: SPF40
返回列表