基于FPGA的DDS信号发生器设计_高士
《现代电子技术》2009年第16期总第303期 计算机应用技术
基于FPGA的DDS信号发生器设计
高士友,胡学深,杜兴莉,刘 桥
(贵州大学 贵州贵阳 550025)
摘 要:介绍基于DDS的信号发生器工作原理和设计过程,并对关键模块及外围电路进行了仿真和误差分析。经功能验证和分析测试,达到了预定的各项技术指标。旨在建立一种以FPGA为核心,功能可裁剪、波形任意调整的高性能信号发生器设计方法。采用该设计法将有效地降低开发成本,提高设计效率,并具有一定的工程指导意义和实用价值。
关键词:信号发生器;DDS;任意波形;误差分析;技术指标;设计效率
中图分类号:TP271+.5 文献标识码:B 文章编号:1004-373X(2009)16-035-03
DesignofDDSSignalGeneratorBasedonFPGA
GAOShiyou,HUXueshen,DUXingli,LIUQiao
(GuizhouUniversity,Guiyang,550025,China)
Abstract:Thesignalgenerator′sworkprincipleanddesignmethodsbasedonDDStechnologyareintroduced.anditalsotheerrorforkeymodulesisanalysedandperipheralcircuitsaresimulated.Byfunctionalverificationandtestinganalysis,thesignalgeneratordesignhasachievedthepredeterminedtechnicalspecifications.Aimingtoestablishadesignmethodforthehighperformanceandcut-functionarbitarywaveformgeneratortakingFPGAasdesigncore.Thismethodishelpfulinsavingthedevelopmentcostandenhancementefficiencyofthedesign,anditalsohascertainprojectguidingsenseandpracticalvalue.
Keywords:signalgenerator;DDS;arbitarywaveform;analysisoftheerror;technologyspecifications;efficiencyofthede-sign
0 引 言
信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器的实现方法通常是采用
分立元件或单片专用集成芯片,但其频率不高,稳定性较差,且不易调试,开发和使用上都受到较大限制。随着可编程逻辑器件(FPGA)的不断发展,直接频率合成(DDS)技术应用的愈加成熟[1],利用DDS原理在FP-GA平台上开发高性能的多种波形信号发生器与基于DDS芯片的信号发生器相比,成本更低,操作更加灵活,而且还能根据要求在线更新配置,系统开发趋于软件化、自定义化。本文研究了基于FPGA的DDS信号发生器设计,实现了满足预定指标的多波形输出。1 DDS基本原理
DDS建立在采样定理基础上,首先对需要产生的波形进行采样,将采样值数字化后存入存储器作为查找表,然后通过查表读取数据,再经D/A转换器转换为模
收稿日期:2009-02-03
拟量,将保存的波形重新合成出来。DDS基本原理框图如图1所示
。
图1 DDS基本工作原理框图
除了滤波器(LPF)之外,DDS系统[2]都是通过数字集成电路实现的,易于集成和小型化。系统的参考时钟源通常是一个具有高稳定性的晶体振荡器,为各组成
部分提供同步时钟。频率控制字(FSW)实际上是相位增量值(二进制编码)作为相位累加器的累加值。相位累加器在每一个参考时钟脉冲输入时,累加一次频率字,其输出相应增加一个步长的相位增量。由于相位累加器的输出连接在波形存储器(ROM)的地址线[3]上,因此其输出的改变就相当于查表。这样就可以通过查表把存储在波形存储器内的波形抽样值(二进制编码)查找出来。ROM的输出送到D/A转换器,经D/A转换器转换成模拟量输出。
35
嵌入式技术高士友等:基于FPGA的DDS信号发生器设计
2 系统总体方案设计
该设计以FPGA开发平台为核心,将各波形的幅值/相位量化数据存储在ROM内,按照设定频率,以相应频率控制字k为步进,对相位进行累加,以累加相位
值作为地址码读取存放在存储器内的波形数据,经D/A转换和幅度控制、滤波即可得到所需波形。波形发生器采取
[4]
全数字化结构,用硬件描述语言Verilog设
计实现其频率可调可显示。经开发平台的D/A转化和外加滤波整形处理波形数据,理论上能够实现任意频率的各种波形。系统总体设计方框图如图2所示
。
图3 波形数据产生单元设计结构图
系统输入控制使用4×4键盘,键盘主要按键功能介绍如下:
“0~9”:数字键,设定信号频率;
“确定”:用于对波形信号设置的确认,波形信号的
图2 系统总体设计方框
系统按工作原理和控制对象的先后分为三个功能
单元:波形数据产生单元、D/A转化单元和滤波整形处理单元。波形数据产生单元除具有波形数据输出功能外,还有频率设置和输出显示功能。波形信号频率可设置范围为0~99999999Hz,系统时钟采用外接晶体振荡器40MHz时钟脉冲,频率稳定度优于10-4。输出采用8位LED数码循环动态显示。D/A转换单元负责对从ROM表里读取的波形数据进行D/A转换,对D/A转换器件的选用从建立时间、位数、转化误差和转换时间等四个方面考虑。滤波整形处理单元完成对D/A转换的模拟波进行平滑,滤除杂波和高频干扰,补偿频带损耗和幅度损失,最终输出低误差、高质量、满足题设要求的波形。3 系统功能单元实现3.1 波形数据产生单元
波形数据产生单元是信号发生器设计的主体。在此,采用DDS原理设计的信号发生器能完成三种波形(正弦、三角和方波)数据的产生,而且根据控制信号还可完成选定波形指定频率的输出。波形数据产生单元按功能实现上的相互联系可划分为频率控制字生成模块、相位累加器模块和波形数据ROM表模块,如图3所示。其中,频率控制字生成模块可根据输入产生指定频率字,同时显示输入频率数字。相位累加器模块负责对所选波形的相位寻址,以频率控制字作为步长反复进行累加运算。波形数据ROM表模块存放三种波形的幅值/相位量化值,通过地址选择相应波形的数据
。[5]
设置必须“确定”后才有效;
“→”:删除已输入信号频率数字的最后一位,用于修改设置的频率;
“清零”:将频率数字快速全部清零;“←”:步进增大控制;“↑”:步进减小控制。
设定频率输出范围为1kHz~10MHz,频率步进为50Hz。系统输出采用8个LED数码管,以扫描方式显示(单位为Hz)频率数字。根据DDS原理,以步进值50Hz作为频率控制字1,那么最大值10MHz对应的频率控制字为200000,用18位二进制数值就可以表示(218>200000)。从抽样值恢复出原波形数据,理论上每个周期波形数据至少抽取2个点,考虑到实际应用时受频率损耗、线间串扰等因素的限制,该设计采用22b的频率控制字和相位累加器,4Kb的8位波形ROM表,取相位累加器输出的高12b寻址波形数据,三种波形按幅值/相位对应关系分别存储782个数据。故各波形数据单位周期有800768(782×210)个相位状态,完全满足任一波形在单位周期内取4个幅值点的要求,可保证即使输出最大频率的波形仍能达到较好的效果。波形选择功能由两位开关组合实现,共有四种状态,其中三组用来表征不同的波型,另一组留作扩展波形用。3.2 D/A转换单元
数/模转换单元[6]是继波形数据产生单元之后,将数字量形式的波形幅值转换成所要求的合成频率的模拟量形式信号。DAC输出信号实际上是阶梯模拟信号,需在数/模转换后利用低通滤波器对波形进行平滑处理。在此,采用ADI公司生产的单片双8位CMOS乘法数/模转换器AD7528,线性度达到1/2,转换时间
《现代电子技术》2009年第16期总第303期
达到纳秒级,可以很准确地进行10MHz信号的量化运算。3.3 滤波处理单元
滤波器是一种能通过有用频率信号而同时抑制(或衰减)无用频率信号的电子装置。由于运算放大器具有近似理想的特性,且可以省去电感,得到接近理论预测的频率响应特性。构成有源滤波电路后还具有一定的电压放大和缓冲作用,并能减小体积。综合考虑,系统采用运算放大器SL560构成二阶低通滤波器。4 系统功能仿真和验证分析
4.1 频率控制字生成模块仿真与分析
频率控制字的生成直接影响着波形数据的寻址,该模块负责快速记录并实时显示输入的频率数字,准确计算得到相应的频率控制字。系统键盘为高速动态扫描(频率为200Hz),采用状态机设计,设置了按键去抖动功能。在FPGA开发平台对该模块[9]进行功能验证,整体无误操作产生,几乎没有时滞效应,按键的防抖动效果也良好,达到了预期的目的。
4.2 相位累加器模块仿真与分析
相位累加器用于实现相位累加,并存储其累加结果。当前,相位累加器的值和时钟周期到来后的相位累加器的值相差k(k为频率控制字)。该模块的仿真波形如图4所示
。
[8]
计算机应用技术
检测输入频率为0~10MHz时,波形形状均良好,未出现明显失真。计算理论误差为0.095%,在实测中发现,波形数字的误差相对很小,不足0.1%。由于滤波整形电路存在高频耦合通路,产生线间串扰,对滤波效果形成了不利影响,因此滤波器设计必须满足频带宽,截止特性好,抗干扰性强等特性。5 结 语
介绍了以直接数字频率合成技术(DDS)为基础的波形信号发生器工作原理和设计过程,并在FPGA实验平台上设计实现了满足各功能指标的信号发生器。系统硬件除需外加滤波整形电路外,其余部分均可在FPGA开发实验系统KH-310上集成开发,系统软件可在Quartus下编写代码,实现数据信息处理和控制操作等功能。整体开发环境成熟,应用工具齐全,随着FP-GA性价比的不断提高,基于FPGA平台开发信号发生器将逐步走向标准化、规模化和产品化。
现代电子和通信技术的发展,对信号发生器提出了更高、更严格的要求。除了对信号频率范围、带宽和频率分辨率的严格限制外,对信号的波型及调制特性等也有着苛刻的规定。研究和开发具有更高性价比的信号发生器将是当前和今后一段时间内亟需解决的课题。这里旨在建立一种基于FPGA的简单数字信号发生器设计方法。若能充分利用FPGA[10]强大的数据运算处理能力以及编程灵活、运行速率快等优点,合理整合IP核资源和SoPC技术,简化设计结构,一定可以设计出功能多样、性能更加出色的信号发生器。
参 考 文 献
[1]徐金龙,刘宇红,刘桥.基于DDS原理的任意波形信号发生
器的设计[J].现代机械,2006(4):74-76.
[2]贺敬凯.基于FPGA的信号发生器的设计[J].深圳信息职
业技术学院学报,2008,6(2):63-66.
[3]栾宝宽,方蕾,冯永浩.基于DDS的信号发生器的设计与实
现[J].电子工程师,2005,31(10):38-39.
[4]于鸿洲,宋立新,徐喆.基于DDS技术的函数波形发生器
[J].哈尔滨理工大学学报,2006,11(5):7-13.
[5]汤忠庆.一种正弦波信号发生器的设计[J].电子工程师,
2006,32(9):29-31.
[6]郝小红,罗彪.基于FPGA的函数信号发生器[J].电测与仪
表,2008,45(5):49-51.
[7]王丹,李平,文玉梅.采用DDS频率合成的虚拟信号发生器
研究[J].传感技术学报,2007,(3):586-591.
[8]李志鹏,郭勇,沈军.基于DDS技术实现信号发生器[J].微
计算机信息,2007,23(2):175-177.
(下转第40页)
图4 相位累加器的仿真截图
4.3 实验波形观测与误差分析
信号发生器功能验证无误,用示波器观测实验波形如图5所示
。
图5 示波器测试信号发生器的生成波形
37
嵌入式技术杨明堂:基于SPCE061A的激光衍射光栅测试仪设计
性,采用了数字滤波。每路数据采样150次,去掉最大值和最小值之后再取平均值。每一种合格光栅,其光斑
亮度比和透过率的值在一定的范围内,如果超过这个范围,说明该光栅参数不合格,仪器会显示U或倒U来说明该参数是上溢还是下溢,方便了用户。
1
abcde平均值参考值误差均方差(D)
0.2520.2530.2530.2550.2520.2530.2501.2%1.095×
10-3
20.2030.2010.2020.2020.2020.2020.2001.0%0.632×10-3
30.1700.1710.1730.1710.1700.1710.1720.6%1.095×10-3
40.2100.2080.2090.2090.2090.2090.2080.5%0.632×10-3
50.2450.2460.2440.2450.2470.2450.2450.0%
4 测试结果与分析
对于10个光栅样品,测试的1级和0级光斑亮度比数据如表1所示。每个相同样品测5组数据。其中参考值为光栅厂家提供的标准样品值
[8-10]
。
100.2890.2910.2920.2930.2920.2910.2900.3%1.414×
10-3
表1 样品的测试数据及分析值
60.2690.2680.2670.2640.2660.2670.2701.1%1.732×10-3
70.2410.2420.2420.24100.2410.2410.2390.8%0.632×10-3
80.2000.2020.2000.2000.2000.2000.2010.5%0.894×10-3
90.2490.2490.2500.2450.2450.2480.2521.6%2.191×10-3
1.095×10-3
δ=|Ri-R |/R
(5)(6)
[3]
426.
[2]刑雪宁,谷亚鹏.基于弯曲损耗的嵌入式光纤监测仪的实现
[J].微计算机信息,2007,23(11):48-50
VilkomersonD.,LyonsD.ClinicalBloodFlowMeasure-mentsUsingDiffraction-gratingTransducers[A].IEEEUl-trasonicSymposium[C].1998,2(8):1501-1508.[4]徐秀芳,胡晓东.半导体激光器的功率稳恒控制技术[J].光
子学报,2001,30(6):761-764.
[5]张培仁.十六位单片微处理器原理及应用[M].北京:清华
大学出版社,2005.
[6]千奕,苏弘,李小刚,等.一种快前置放大电路的研制[J].核
电子学与探测技术,2006,26(6):842-844.
[7]毛伟云,陈明,丁力.ARM嵌入式处理器在智能仪器中的应
用[J].计算机技术与应用,2006,27(1):37-39.
[8]YangSH,ChenX,AltyJL.DesignIssuesandImplementa-tionofInternet-basedProcessControlSystems[J].ControlEngineeringPractice,2003,11(6):709-719.
[9]霍戌文,李伟,李进,等.光电探测微信号放大器设计[J].浙
江理工大学学报,2005,22(3):259-262.
[10]许明耀,陈海清,付赛,等.光栅能量分布测试系统的研究
[J].武汉科技学院学报,2004,17(3):38-41.
D=i=0
R∑(
i
-R )]/N
2
式(5)和式(6)中:δ为相对误差;D为均方差;Ri为测量值;R 为平均值;N为项数。
试验结果表明,测试仪测试误差小于2%,均方差小于2.2×105 结 语
该设计利用高性能16位SPCE061A单片机实现
了DVD等设备用激光二极管衍射光栅测试仪,非常适用于小批量衍射光栅的测试。经过实际测试验证,具有较高的稳定性和精确度。具有溢出报警功能,同时,该仪器成本低,体积小,检测效率高,具有较高的推广价值。
参 考 文 献
[1]郭军团,高有行,范惠敏,等.基于单片机的光栅测试系统的
硬件设计和实现[J].西安工业大学学报,2006,26(5):423--3
,完全满足设计要求。
作者简介 杨明堂 男,1954年出生,河南襄城人,在职硕士研究生,高级讲师。主要研究方向为仪器仪表与信息技术。(上接第37页)
[9]王冠.面向CPLD/FPGA的Verilog设计[M].北京:机械工
业出版社,2007.
[10]夏雨闻.Verilog数字系统设计教程[M].北京:北京航空航
天大学出版社,2005.
作者简介 高士友 男,1985年出生,湖北荆州人,硕士。主要研究方向为FPGA开发、嵌入式系统设计和EDA应用。
胡学深 男,1985年出生,山东临沂人,硕士。主要研究方向为单片机应用、电子系统设计和信号处理。
杜兴莉 女,1985年出生,贵州水城人,硕士。主要研究方向为DSP系统开发、模式识别与信号处理和软件无线电技术。刘 桥 男,贵州贵阳人,教授,博士生导师。主要研究方向为电路设计、系统
架构
酒店人事架构图下载公司架构图下载企业应用架构模式pdf监理组织架构图免费下载银行管理与it架构pdf
。