1 / 27
文档名称:

多功能波形发生器系统设计.doc

格式:doc   大小:353KB   页数:27页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

多功能波形发生器系统设计.doc

上传人:知识徜徉土豆 2025/5/24 文件大小:353 KB

下载得到文件列表

多功能波形发生器系统设计.doc

相关文档

文档介绍

文档介绍:该【多功能波形发生器系统设计 】是由【知识徜徉土豆】上传分享,文档一共【27】页,该文档可以免费在线阅读,需要了解更多关于【多功能波形发生器系统设计 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。多功能波形发生器系统设计
设 计 人:潘 礼 阮赐朋 王怀涛
指导老师:黄智伟 王 彦
南华大学电子实验室
摘 要:本设计为一数字式多功能波形发生系统。系统应用VHDL语言,以FPGA为控制核心,实现了多种波形的可控输出,且支持任意波形的输入、存储和回放。系统采用了DDFS技术来产生波形,同时输出采用双DAC0832芯片完毕D/A转换,实现了输出波形幅度的数字式控制,-5 V。
关 键 字: 直接数字频率合成技术 数字幅度控制 数模转换
Abstract:This design is a digital multi_aplication function applying VHDL language, regarding FPGA as the core of control, can produce more than one function waves,morever it can store, represent random function waves. The system adopting DDFS technique to produce waves, at the fan-out double DAC0832 was used to convert the digital signals to the analog signals, at the same time the amplitude of output can be adjusted in a digital way, the precision of amplitude can reach e-5 V.
Key word: DDFS digital adjust of amplitude the D/A convert
引 言:现代工程中波形发生器的应用是很广泛,并且相称重要。由于传统的模拟波形发生器在低频段波形质量不高,且功耗比较大等因素,工程中很少用模拟波形发生器来产生低频波。而现代作为主流的数字波形发生器由于采用不同的技术、不同的器件及工艺,其产生波的质量也有很大差别。本系统以FPGA作为开发平台,采用DDFS技术产生波形,由于FPGA内部电气特性远远弱于逻辑特性,因而系统输出的波形具有毛刺少、频带宽、调节方便等优点。
方案比较
1、模拟锁相环实现
模拟锁相环技术是一项比较成熟的技术。应用模拟锁相环,可将基准频率倍频,或分频得到所需的频率,且调节精度可以做到相称高、稳定性也比较好。但模拟锁相环模拟电路复杂,不易调节,成本较高,且由于受模拟器件的影响,波形变换调节时间较长,输出波形的毛刺较多,因此模拟锁相环实现在低频(0~500KHz)信号发生系统中不是很好的方案。
直接数字频率合成实现
直接数字频率合成(DDFS)技术是经典的数字频率合成技术。由于数字量的可操作性远远高于模拟量,采用DDFS的优点在于频率精度高、波形调节方便、且输出波形毛刺少等。基于单片机的数字波形发生系统受单片机指令频率的限制,输出波形频率较低,而基于FPGA的波形发生系统就不存在这样的问题,其输出频带较单片机实现有很大的展宽。本系统设计选定以FPGA作为系统控制核心的直接数字频率合成实现方案。
总体设计
该多功能数字波形发生器的重要功能有4种基本波形(正弦波、三角波、锯齿波及芳波)的可控输出,超低幅度(MV级)方波的产生,任意波的输入、存储、输出,以及各种波的线性叠加输出。由于FPGA的高度集成化设计,系统设计中将大部分的控制集成在FPGA中央解决模块内部,如存储器(RAM)、波形产生模块、波形选择模块等。外设重要有任意波形输入器件、A/D转换器件、输入频率跟踪采样器件以及键盘、数码管等。
整体设计 总体设计框图如下
图 2-1. 系统整体框图
系统以FPGA为控制核心,基于FPGA的中央解决模块集成了RAM,用以存储各种波形特性数据。,系统通过改变输出波形相邻采样点间的脉冲个数达成调节输出频率的效果。系统输出采用双DAC0832串联的调幅方案,系统可以方便而精确的改变输出波的幅度,并且可根据需要生成幅度调制波。
各模块设计
<1>键盘输入模块
键盘重要用于输入各种控制信号以及设定频率的输入。调频数据采用BCD码直接置数方式输入,输入量通过系统内部集成的除法器转化为相邻采样点间的脉冲个数,以达成调节输出波频率的目的。任意波形的输入同样采用BCD码置数方式,任意波的表征参数有采样点数、各采样点的归一化幅度、各点的相对位置等。系统键盘扫描键盘的时间为1/8 S。应用键盘输入的缺陷是在输入波形的采样点值比较多,相应的输入操作比较烦琐,且容易犯错。而较之其他输入方式(如触摸屏等)就相称方便。下面是BCD码输入电路图:
图2-
上图中CON9为排阻,所起作用为限流,这样可保证输入的电流不会损坏FPGA。
<2>其他模拟输入模块
此模块作为预留接口,可支持各种模拟器件的波形输入方式:触摸屏、手写板等。因输入波的不拟定性,模块设计中采用自适应跟频技术(LMS),系统自动跟踪输入波的频率以选择合适的采样频率对输入波进行采样。自适应跟频技术属DSP范畴,应用FPGA实现这一功能困难较大,系统采用凌阳产的
“61板”——SPCE061A EMU BOARD(十六位单片机)——完毕此项功能的设计。A/D转换器件选用ADC0809,模拟波经ADC0809转化为数字量输入到61单片机,61单片机具有16*16位的乘法运算和内积运算的DSP功能,通过对输入波的频谱进行分析、运算,就可拟定系统对外部模拟波的采样频率——ADC0809的工作频率。这样就保证了输入波的特性数据不会漏掉。待ADC0809的工作频率拟定后,再将其转换的数据输入到FPGA进行存储。由于此类方式输入的模拟波频带较宽,系统对此类波进行特性提取后,存储需要较大的空间,因此系统必须加载专用的外部高速RAM。
<3>FPGA中央解决模块
FPGA中央解决模块内部集成了较小的波形特性存储器——RAM(应用于键盘输入的固定64点采样的任意波形)、调频输入BCD码到脉冲个数转换用的除法器、幅度调节显示模块和波形发生模块。
RAM模块
FPGA集成RAM中的部分地址相应固定正弦波的64点采样数据,这部分的作用相称于静态ROM,其余大部分空间用于存放输入任意波的特性数据。当输入波频率比较高时(相应非键盘方式输入波),系统需要相称大的空间来存储输入波的特性数据,这对系统资源的规定过高,因此,系统内部集成RAM只存储键盘输入的任意波的特性数据,而其他方式输入波的特性数据经系统的外部RAM接口,直接进入外部专用RAM器件存储。

应用除法器实现设定输出频率与相应输出相邻采样点间脉冲数的转换是相称方便的。在输出频率在超低频段时,系统应用除法器拥有相称高的精度。,正弦波采样点数为64为例,不同频段的可调阶数如下表:
TABLE 2-1. 可调阶数频段分布表
频段
可调阶数
0~1Hz
无限
10~11Hz
4545
100~101Hz
50
1000~1001Hz
0
上表为理论计算所得,在超低频段时,波形发生器输出的精确频率分布很密集。应用除法器的好处就是在超低频段可以得到相称精确调节的输出波。当然输出频率在较高频段(≥5KHz)时,通过键盘置入的输出设定频率与实际的输出频率存在相称大的误差,然而相比其他一些算法(等步进调节),应用除法器的效果在较高频段误差更小。应用FPGA设计的除法器对运算中最后取值也许有两种不同的作法: 一种是采用四舍五入方式;另一种是向零归整法。比较两种算法,在超低频段时精度都差不多;而在较高频段,四舍五入方式的误差是设定频率所相应量阶的1/2,向零归整法的误差却是相应的整个量阶,因而本设计中除法器采用了四舍五入的除法取值方案。在逻辑器件中,加、减、乘、除各类运算都是相通的,而其中最基本的运算是加法,应用加法来解决涉及数据乘、除的问题,准确率较高,因此该除法器设计中采用的方法是: 先将除法运算转化为减法,再将减法转换到加法,最后由加法完毕。

由于系统输出采用双DAC0832串联的方式,系统输出波的幅度可通过按键来调节。系统相应不同的输出波有不同的幅度调节方式:输出为方波时,通过按键使用者即可调节输出波的归一化幅度,又可调节输出离散波形的DAC0832的基准电压(Vref: );而其他波形的输出只能调节输出波形的DAC0832的基准电压。DAC0832的分辨率是8位,只调节DAC0832的基准电压误差是一个最小量阶——5/255≈,而输出为方时,调节误差仅为5/(255*255)=-5 V。系统调幅数据的解决方式是按键累加,系统以8Hz频率扫描调幅按键端口,当得到升幅按键输入为高电平时,将幅度寄存信号加一;反之,当降幅按键为高电平时,幅度寄存信号自减一。相应幅度的显示是本模块设计的重点: 输出方波时,波形幅度值为n*N/(255e2)≈n*N*-5,应用FPGA直接进行如此高精度的运算所耗资源相称大,本设计采用近似算法实现了幅值的转换显示,:
通过简化,上式结果可表达为769*n*N*10e-7,以最高阶数255代入n,N可得Vmax=50004225*10e-7,ΔVmax=(50004225*10e-7)-=*10e-3 (V).由于规定幅度只显示4位,即精确到毫伏(MV)级,因此此种近似带来的误差可忽略。系统输出其他波时,其幅度转化算法与方波同样,但对比于方波,这些波幅度只能通过调节DAC0832的基准电压实现,其可调阶数只有255档,D/A转换自身带来的误差就比较大,5/255≈(V),应用近似算法引入的误差比之要小得多:
上式中N为DAC0832基准电压调节阶数。*10e-3/≈%。

波形发生模块的设计采用DDFS技术。所谓DDFS技术就是用数字量直接合成模拟量。
图2-
上图为用14个数字量合成的一个周期的正弦波波形。图中数字量以阶梯波的形式表征了模拟正弦波的周期、幅度等特性参数,用低通滤波将高频成分去掉,就可看到比较平滑的正弦波。应用DDFS实现波形合成没有复杂的乘除运算,且对波形特性的调节方便。本模块设计思绪是将RAM中的波形数据以一定的时间为间隔输出,通过改变间隔的时间来调节输出波的频率。应用FPGA作控制核心是该设计优于用单片机作控制核心的波形发生器的关键所在。DAC0832的数模转换周期为1μS,用单片机每向DAC0832传送一个数据最少要
用两条指令: MOV DPTR,#ADDR_0832
MOVX ***@DPTR, A ;A中存放要输出的数据
两条指令执行要5个机器周期——5μS,由此可见,用单片机不能完全发挥DAC0832的潜能。用FPGA作的DAC芯片驱动电路其数据输出频率可以做到很高,输出一个数据的最短时间是1/≈,可见用FPGA驱动DAC0832,使其最大限度工作绰绰有余。该系统设计过程中考虑了方波的特性——占空比,因而系统综合了两种方波的输出: 占空比可调方波和占空比不可调方波。前者产生方式类似于正弦波,通过选择64个采样点中不同的点作为0~1切换点,就可达成调节占空比的目的。但其输出波的频率也因此受到限制;而后者的频率就比较高,但其占空比是固定的——1/2。
<4>D/A转换模块
该模块的重要工作是将FPGA输出的数字量转换为模拟量。模拟量的频率由FPGA的数据输出频率拟定,而模拟量的幅度调节的实现是基于双DAC0832的设计。该模块重要由两片DAC0832组成,一片用于接受FPGA传来的波形数据,将其转化为模拟量输出;另一片接受来自FPGA的波形幅度数据,用以产生相应的幅度电压,将其作为基准电压输入到上一片DAC0832的基准电压(Vref)输入端口,实现输出波的幅度可调。双DAC0832的串接电路图如下:
图 2-4. 双DAC0832串接电路图 DAC0832将数字量(波形的电压幅度值)转化为模拟量(形式为电流),上图中DAC0832处在直通工作方式,外部运放电路的作用是将模拟电流量转化为电压量输出。电压输出即可是单极性的,也可是双极性的。在J12的输出口中,输出口1为单极性输出端,输出口2为双极性输出端。
软件实现
1、BCD码~二进制数转换模块 该模块应用计数的方法完毕BCD码到二进制数的转换,仿真图如下: 图3-1. BCD码~二进制数转换仿真图
图3-1中,A、B、C分别为三位十进制数的BCD码输入:A为百位BCD码,B为十位BCD码,C为个位BCD码输入。从仿真图中可以看出:当变量COUNT累加脉冲数到123时,BCD码才完全转换为二进制数输出。
2、波形发生模块
图3-
图中DATA为设定输出相邻采样点间隔的脉冲数。结合除法器,设定的输出频率转化为DATA来控制FPGA的输出频率。
系统测试
1、系统测试仪器
系统测试采用TeKtronix公司生产的TDS3032型数字式双通道荧光示波器,该示波器带宽300兆赫,,支持方波占空比的测量。应用该系统可较精确的反映系统的频率、幅度等各项指标。
2.、测试指标
本系统测试重要针对正弦波、三角波、方波A(占空比可调方波)、锯齿波的频率的精确性,方波B(占空比不可调方波)的频率精度,方波(A 或 B)的幅度精度等。以下为各项指标的测量图表:
正弦波、三角波、锯齿波和方波A的频率测量
表4-1. 正弦波、三角波、锯齿波和方波A的频率测量数据表格
设定频率
测得频率
测量误差值
1HZ

%
20HZ

%
50HZ

%
100HZ

%
200HZ

%
500HZ

%