微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于Delphi的DDS可视化新型任意信号发生器

基于Delphi的DDS可视化新型任意信号发生器

时间:10-26 来源:互联网 点击:
1 引言

随着微电子技术的迅速发展,DDS技术得到了广泛的应用,市场上有很多高性能多功能的DDS专用器件,但其工作方式和控制方式固定,一般用户很难按自己的要求获得相应的波形。同时任意波的输入方式目前都只限于时域,无法实现电子、通信等领域的科研与教学中所需频域参数定义的波形。本文介绍一种基于DDS的可视化信号发生器,它高精度地生成双通道±8 V、0.01 Hz~10 MHz正弦波等常规波形。还可产生数码流、调制信号、随机噪声、扫频信号及时域或频域自定义波等信号,信号参数均步进在线可调,由USB1.1与Delphi7.0完成与PC连机时的接口及图形操作界面设计,TFT实现单机工作时的图形操作界面,实验表明该设计是行之有效的。

2 系统设计

系统结构框图如图1所示,其中用Delphi来开发图形上位机软件;PDIUSBD12为USB控制器,MCU实现系统智能控制和数值运算,FPGA为系统数字载体,内建DDS、MCU接口、时钟控制、Flash读写、键盘扫描和TFT控制等模块。设计双路D/A输出通道,通过调节DAC参考电压提高小信号幅度分辨率,系统既可由上位机软件控制实现信号源功能,也可通过触摸按键和TFT图形液晶显示器智能实现便携式任意源功能。

[/table][table]



设计中取系统时标信号频率为fr=100 MHz,输出信号每一周期由N个取样点构成,取样周期为Tr=(1/fr),则输出信号的频率为fo=fr/N,设合成信号初相为ψ0,相位累加器位数为x=32,存储器位数为y=10,则


其中,f0min为合成器最低输出频率,△f为频率分辨率,设输出频率控制字为k,则:



nψ=ψ02x/2πk为初相量化值,最小相移、占空比的最小值和分辨率分别为:



当x-y>4时,正弦输出相位截断噪声的信噪比SNRP=6.02y-3.992=68.24dB[1,3],可见相位截断后仍有较高的信躁比,幅度噪声的信噪比SNRE=6.02y+20lgr,其中r为输出波形与满刻度的峰-峰值之比,取r=1,则SNRE=72.2 dB[3,4]。

3 FPGA与分段时标设计

FPGA设计原理如图2所示。DDSA、DDSB均是双通道DDS产生模块,内部由32位累加器和波形存储器RAM组成,累加器在累加时钟的控制下对频率控制字k进行累加,其结果作为波形存储器RAM的地址来读出RAM中波形数值。波形存储器RAM为双口RAM,既可在读信号、读地址的配合下进行RAM的读操作。也可在写信号、写地址和数据输入信号的配合下进行写操作,更换波形数据见图3。双通道设计为互相调制提供了方便。波形存储器RAM为双口RAM,在进行波形切换时,由MCU控制FPGA启动Flash读写单元,以10 MHz的速度从外部的Flash中读取4 096个波形数据到双口RAM中。





接口模块(interface)主要输出8位DB、24位AB、256个片选信号、读/写控制信号,寻址能力达16 MB。Reg_array是寄存器矩阵,实现MCU对FPGA及系统的控制.主要储存时钟分频系数CLK_div[63..0],双通道幅度控制字V[31..0]、Flash的地址、数据和控制信号REGF[63..0]等。Ping_lv是频率控制模块,完成调频、扫频、频率控制功能,输出DDS信号产生单元所需的频率控制字KA[31..0]和KB[31..0],由频率字选择模块、调频模块、扫频模块组成。

任意波形产生时,先将从计算机采集到的波形数据量化编码后通过USB下载到Flash存储器,从Flash中读取数据到双口RAM中。这样既能快速地产生任意波形.又能使任意波形在脱离计算机后还能继续使用。系统Flash容量为2 MB,分为32页,除了存储常规的6种波形外,还能储存26个任意波形。

DC可产生方波、数据流等其他波形,he.chen主要完成信号的合成功能,包括模拟调幅、随机信号、ASK、FSK等。Clcok时钟控制单元在CLK_div[63..0]和REGC[63..0]的控制下对外部40 MHz时钟进行倍频和分频,输出系统所需时钟。tft是TFT显示控制单元,采用查找表结构进行单色显示。输出直接接到TFT屏的三原色数据DR[5..0]、DG[5..0]、DB[5..0],和时序控制信号VS、HS、TFTCLK、REN等,实现波形菜单与图形界面显示。Keysan是键盘扫描单元,自建键盘扫描时序,输出行列矩阵式键盘行列扫描信号,能自动进行键值识别、键码锁存keyvalue[7..0],并产生中断信号int0。Flash控制模块采用NOR Flash方式,读操作与普通RAM一样,但写操作时要先擦除并输入命令后才能读写。为此设计给MCU提供与RAM一样的操作接口,同时在系统进行波形切换时.能自动地从外部Flash波形存储器中读取4 096个波形数据到DDS单元中.进行波形数据的改写。

根据DDS原理。在较低的频率段,由式(2)可知频率控制字k减小,在对其进行量化时,势必加大了量化误差,故降低了信号的时域精度,

为此,在低频段可由式(1)通过减小fr来降低f0min,提高k以提高信号的时域精度,可以采用分频的方法,即在不同的频率段采用不同的时标时钟fr来解决这个问题,分段时标见表1。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top