第4章 数字式移相信号发生器的设计_第1页
第4章 数字式移相信号发生器的设计_第2页
第4章 数字式移相信号发生器的设计_第3页
第4章 数字式移相信号发生器的设计_第4页
第4章 数字式移相信号发生器的设计_第5页
已阅读5页,还剩154页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.1 设计任务设计任务4.2 设计方案论证设计方案论证4.3 系统硬件设计系统硬件设计4.4 系统软件设计系统软件设计4.5 系统设计总结系统设计总结第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.1 4.1 设计任务设计任务设计一个数字式移相信号发生器,示意图如图4.1所示,设计基本要求如下: (1) 频率范围:20 Hz20 kHz,频率步进为20 Hz,输出频率可预置。(2) A、B输出的正弦信号峰峰值可分别在0.35 V范围内变化。(3)

2、 相位差范围为0359,相位差步进为1,相位差值可预置。(4) 数字显示预置的频率和相位差值。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.1 数字式移相信号发生器第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 4.2 4.2 设计方案论证设计方案论证4.2.1 方案1以MCU为核心的实现方案波形的生成及对频率和相位的控制均由单片机编程实现。波形生成程序生成正弦波信号在一个周期内的波形数据,这些数据循环输出至D/A转换器,通过在输出数据指令之间插入NOP指令实现对频率的控制,原理框图如图4.2所示。第第4章章 数字式移相信号发生器的设计数字式移相信号发

3、生器的设计图4.2 以MCU为核心的实现方案原理框图单片机D / A滤波器幅度控制正弦波信号输出AD / A滤波器幅度控制正弦波信号输出B第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计此方法产生的信号频率范围、步进值取决于所采用的每个周期的输出点数及单片机执行指令的时间(与单片机的结构及选用的晶体振荡频率等有关)。此方案的优点是硬件电路简单,所用器件少,可相对容易地产生各种波形,在低频区基本上能实现所要求的功能;缺点是控制较复杂,精度不易满足,生成波形的频率范围小,特别是难以生成高频波形。例如,对输出信号频率fmax=20 kHz而言,因为移相分辨率为1,则一个周期至少要采样

4、360个点,即MCU发送波形幅度数据的速度fcp fmax360即fcp7.2 MHz,则前后发送2个波形幅度数据的时间间隔Tmax0.1388 s,但是MCU的指令执行周期一般有几个s,从而MCU发送信号一个周期的波形数据一般要几十个s。故以MCU为核心的实现方案难以产生高频波形。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.2.2 方案2MCU与FPGA相结合的实现方案该方案采用DDS(Direct Digital Synthesis,直接数字频率合成)技术产生数字式移相正弦波信号。信号生成主要由FPGA部分实现,FPGA部分主要包括相位累加器和波形查找表(波形查找表

5、也可以由FPGA外部的存储器实现)。该方案利用单片机(MCU)作为控制芯片,由MCU产生频率控制字和相位控制字并送给FPGA。这样,需要高速运行的电路均由FPGA实现,大大减轻了对MCU速度的要求。由此可见,该实现方案更具有可行性,而且能很好地体现技术的先进性。1. 系统框图采用MCU和FPGA相结合的方案的整体系统框图如图4.3所示。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.3 采用MCU与FPGA相结合的实现方案原理框图(a)波形查找表在FPGA内部; (b)波形查找表在FPGA外部滤波、稳幅、调压输出D / A滤波、稳幅、调压输出D / AFPGAMCUAT

6、89C51键盘显示(a)滤波、稳幅、调压输出D / A滤波、稳幅、调压输出D / A波形存储器MCU键盘显示(b)波形存储器FPGA第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2. 系统功能划分在本系统中,单片机主要用来实现输出信号的频率和相位差的设置,输出信号的频率和相位差的显示,向FPGA提供频率控制字和相位控制字; FPG主要用来实现DDS技术。系统中,除了单片机和FPGA以外,还有波形查找表电路、模/数转换电路、低通滤波器电路、信号稳幅输出及幅度调节电路、直流稳压电源电路等。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 4.3 4.3 系统硬件

7、设计系统硬件设计4.3.1 DDS设计技术1. DDS技术的发展历史1971年,美国学者J.Tierncy、C.M.Rader和B.Gold提出了以全数字技术从相位概念出发直接合成所需波形的一种新的频率合成原理。随着电子技术的发展和水平的提高,一种新的频率合成技术直接数字频率合成(DDS,Direct Digital Synthesis)技术得到了飞速发展。DDS技术是一种把一系列数字形式的信号通过D/A转换而成模拟形式的信号合成技术,目前使用最广泛的一种DDS方式是利用高速存储器作查找表,然后通过高速D/A转换输出已经用数字形式存入存储器的正弦波。第第4章章 数字式移相信号发生器的设计数字式

8、移相信号发生器的设计DDS技术具有输出信号频率切换时间短,输出信号频率稳定度高,输出信号的频率和初相位可以快速程控切换,输出相位可连续改变,可编程以及灵活性大等优点,它以有别于其他频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。DDS广泛用于接收机本振、信号发生器、仪器仪表、通信系统、雷达系统等,尤其适合跳频无线通信系统的应用。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2. DDS的基本原理DDS技术将输出波形的一个完整周期的幅度值都顺序地存放在波形存储器中,通过控制相位增量产生频率、相位可控制的波形。DDS电路一般包括基准时钟、相位增量寄存器、相位累加器、波

9、形存储器、D/A转换器和低通滤波器(LPF)等模块,如图4.4所示。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.4 DDS的基本原理图波形存储器地址寄存器相位累加器相位增量寄存器D / A时钟CPUfcp低通滤波器DDS 发生器信号输出第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计相位增量寄存器寄存频率控制数据,相位累加器完成相位累加的功能,波形存储器存储波形数据的一个周期幅度值数据,D/A转换器将数字量形式的波形幅值数据转化为所要求合成频率的模拟量形式信号,低通滤波器可滤除高次谐波分量。整个系统在统一的时钟下工作,从而保证所合成信号的精确度。累加器

10、由N位加法器与N位累加寄存器级联构成。每来一个时钟脉冲fcp,加法器将频率控制字M与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字M累加一次,相位累加器输出的数据就是合成信号的相位,当相位累加器累加满量时就会产生一次溢出,完成一个周期性的动作,

11、这个周期就是DDS合成信号的周期,累加器的溢出频率就是DDS输出的信号频率。用相位累加器输出的数据作为波形存储器的相位取样地址,这样就可把存储在波形存储器内的波形抽样值(二进制编码)读出,完成相位到幅度值的转换。波形存储器的输出送到D/A转换器,D/A转换器将数字量形式的波形幅度值转换成所要求合成频率的模拟量形式信号。低通滤波器用于滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 DDS在相对带宽、频率转换时间、高分辨率、相位连续性、正交输出以及集成化等一系列性能指标方面远远超过了传统频率合成技术所能达到的水平,为系统提供了优

12、于模拟信号源的性能。DDS输出的信号频率可以由下式给定:NcpfMfMf20(4.1) 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 式中: fcp为系统时钟频率, f为信号频率分辨率,f0为输出信号频率,M为频率控制字,N为相位累加器的位数。可见,通过设定相位累加器的位数、频率控制字和系统时钟的值,就可以产生任意信号频率的输出。基于DDS技术的数字式移相信号发生器的主要模块框图如图4.5所示。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.5 基于DDS技术的数字式移相信号发生器主要模块框图寄存器相 位累加器寄存器Address1相 位加法器寄存器

13、寄存器Address2频率控制字相位控制字第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计3.参数确定1)确定系统时钟频率fcp 不妨设输出信号最高频率为fmax 、最高频率fmax下的最少采样点数为Smin,则有 fcpfmaxSmin(4.2)由式(4.2)确定系统时钟频率fcp的下限值。同时又要满足输出信号频率分辨率计算公式(4.3) fmaxSmin=20 kHz360=7.2 MHz,即fcp7.2 MHz,为了方便获得时钟脉冲,取fcp=10 MHz 。 Ncpff2第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2) 确定相位累加器的位数N因为信号

14、频率分辨率f=fcp/2N, 所以2N=fc/f,即 因为218=262 144 ,219=524 288,而218500 000219,所以,相位累加器的位数N的最小值应为19 bit。一方面,N的最小值19 bit已大于2 Byte,另一方面,考虑适当提高系统的频率分辨率,所以综合这两个方面,取N=24。5000001052010102010256HzMHzN第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计由 此 可 见 , 系 统 的 频 率 分 辨 率 为 f = 1 0 MHz/224=0.596 Hz。此时输出信号的频率分辨率为0.596 Hz,而题目要求为20 H

15、z,因此本设计已远远超过了设计任务提出的要求,从而提高了系统的精度。 3) 确定频率控制字M的位数由式(4.1)可以求得频率控制字为 247002102fffMNcp第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计由上式可知,频率控制字M的最大值出现在输出信号频率f0 max=20 kHz的时候,则Mmax=22420103/107=33 554.432。由于215=32 768,216=65 536,而21533 554.432216,因此取频率控制字M的位数为16 bit。系统中的24 bit相位累加器实现对频率控制字的累加,为了实现这种累加而将16 bit的频率控制字扩展

16、为24 bit,扩展的具体方法是在上述16 bit频率控制字前面(左边)添加8个逻辑0就可以了。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4) 确定波形存储器的地址位数W 本系统决定存储信号一个周期的幅度值采样点数为1024,因此波形存储器的地址位数W=10。5) 确定量化字长D信号一个周期的幅度值采样量化字长D对输出信号的失真度影响很大,本系统决定取量化字长D=10 bit。这样的话,系统中的D/A转换器的字长也应该是10 bit。6) 确定相位控制字K的位数如果“相位加法器”采用10 bit加法器实现,即以“相位累加器”的输出结果之高10位作为被加数,相位控制字K作为

17、加数,则有3601024=K第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计式中: 是相位差,K是相位差为时对应的相位控制字。K的最大值出现在取最大值359时,即则相位控制字K的位数取10 bit就能满足设计任务关于移相的要求(分辨率为1,移相范围是0359)。若“相位加法器”采用24 bit加法器实现,则上述10 bit的相位控制字应扩展成24 bit,具体扩展方法是在上述10 bit相位控制字后面(右边)添加14个逻辑0就可以了。(4.5) 451283601024K55.102145359128maxK第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.

18、误差分析1) 失真度 输出信号失真度除受D/A转换器本身的噪声影响外,还与采样点数和D/A字长有着密切的关系。设q为均匀量化间隔,则其近似数学关系为式中:S为一个周期中输出的点数,D为量化字长,q=2-(D-1)。%1001)/sin(/6122SSqTHD(4.6) 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2) 相位舍位引起的误差在DDS中,相位累加寄存器的位数N一般会大于波形存储器的寻址位数W,这使得采用相位寄存器的输出信号寻址波形存储器时,其N-W个位必须舍去,如此不可避免地会产生误差,该误差是DDS输出杂散的主要原因。总的信噪比是(4.7)3) 相位量化误差由于

19、波形是经过一系列有限的离散采样点转化而来的,因此势必存在相位量化误差,通过增加采样点数可减小此误差。NWdBSNR4420 .46244. 0lg)(第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计5. 实现器件的选择原则一般选用FPGA/CPLD器件作为DDS的实现器件。对于D/A转换器的选择,首先要考虑到D/A转换器的转换速率,要实现所需的频率,D/A的转换速度要大于fmaxSmin。然后根据D/A转换器字长所带来的误差,决定D/A的位数。由此选择D/A转换器的型号。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.2 MCU电路在本系统中,单片机主要

20、用来实现输出信号的频率和相位差的设置,输出信号的频率和相位差的显示,向FPGA提供频率控制字和相位控制字。所以,MCU电路包括单片机芯片、键盘模块、显示模块三个部分。单片机芯片采用AT89C51,键盘模块采用4行3列的矩阵式键盘,考虑到节省MCU的I/O资源,显示模块由串行输入接口驱动芯片PS7219及6个LED数码管组成。单片机部分的电路如图4.6所示。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.6 MCU电路RST1LOAD2DIN3CLK4DIG75DIG66DIG57DIG48DIG39DIG210DIG111GND12CONDIG8DOUTSDPSGSFS

21、ESDSCSBSAV+U2PS7219P1.01P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST9P3.0 RXDP3.1 TXDP3.2 INT0P3.3INT1P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30EA/VPP31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VC40U1QR11.0592 MHzS1310 k41011S1S12C130 pFC230pFC310 FR110 k5 VLOADCLKSELRESET5 Vdata0data

22、1data2data3data4data5data6data7data8data9data10data11data12data13data14data15RESETLOADDINCLKP3.4 T0P3.5 T1P3.6 WRP3.7 RDXTAL2XTAL1GNDAT89C512345678RESETDINCONPD10121416182011131517191234567abcdefg8dp9GNDabfcgdedpLED6DIG61234567abcdefg8dp9GNDabfcgdedpLED5DIG51234567abcdefg8dp9GNDabfcgdedpLED4DIG41234

23、567abcdefg8dp9GNDabfcgdedpLED3DIG31234567abcdefg8dp9GNDabfcgdedpLED2DIG21234567abcdefg8dp9GNDabfcgdedpLED1DIG103691472585 V1314151617181920212223245 VC410 FC50.1 F第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计1. AT89C51简介AT89C51是一个低功耗高性能CMOS 8位单片机,AT89C51的主要特性如下:(1) 兼容MCS-51指令系统。(2) 有32个双向I/O口。(3) 有两个16位可编程定时/计数器

24、。(4) 有1个串行中断。(5) 有两个外部中断源。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(6) 可直接驱动LED。(7) 有低功耗空闲和掉电模式。(8) 有4K可反复擦写(1000次)Flash ROM。(9) 有1个可编程UARL通道。(10) 024 MHz全静态操作。(11) 有1288 bit内部RAM。(12) 共有6个中断源。(13) 有3级加密位。(14) 具有软件设置睡眠和唤醒功能。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2. 矩阵键盘简介S1S10为数字键09,S11为系统进入信号频率设置工作状态功能键,S12为系统进入信号

25、相位差设置工作状态功能键。另外,S11和S12可实现对LED数码管显示内容的选择切换,按下S11表示6个LED数码管显示频率,按下S12表示6个LED数码管显示相位差。注意,键盘功能的实现必须结合软件编程才能完成。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计3. PS7219简介PS7219是一个高性能、低价格的多位LED显示驱动器。PS7219是武汉力源公司的产品,它在性能上完全兼容国外的产品MAX7219, 并且还增添了位闪等功能。其接口采用流行的同步串行外设接口(SPI),可与任何一种单片机方便接口,并可同时驱动8位共阴LED数码管或64个独立LED发光二极管。PS7

26、219A型内置一个可靠的P监控电路,可为外部提供一个脉宽大于140 ms、触发门限典型值为4.63 V的高电平复位信号。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计PS7219内部具有158 bit RAM功能控制寄存器,可方便寻址,对每位数字可单独控制,刷新不需重写整个显示器。显示亮度可数字控制,每位都具有闪烁使能控制位。引脚CON置高电平,可禁止所有显示,达到降低功耗的效果,但同时并不影响对控制寄存器的修改。PS7219还有一个掉电模式、一个允许用户选择从1位数显示到8位数显示的扫描界限寄存器和一个强迫所有LED接通的测试模式。N个PS7219级联,可实现N8位LED数

27、码管的显示。PS7219的应用很广泛,例如条形图显示、7段显示、工业控制、仪表控制面板、LED模型显示等。我们设计的PS7219的LED数码管段码表如表4.1所示。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计表4.1 LED数码管段码表 表略第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 PS7219的特点如下:(1) 可提供复位信号(PS7219A型)。(2) 500 kHz串行接口(16位控制字)。(3) +4.5+5.5 V工作电压。(4) 驱动共阴极LED显示。(5) 单个LED控制,扫描界限控制。(6) 按位进行BCD译码/不译码数字控制。(7)

28、 兼容国外的产品MAX7219。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(8) 16级亮度数字控制。(9) 上电LED全熄。(10) 提供闪位功能。(11) 全亮功能测试。(12) 内部自带时钟电路,无需任何外部元件。(13) 24脚加宽DIP封装。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.3 FPGA电路我们选择ALTERA公司的FPGA,芯片型号为EP1K30TC144-3。该芯片具有如下特点。1. 高密度典型门为30 000个,可用门为119 000个,逻辑单元为1728个,嵌入式阵列块(EAB)为6个,24 576位内部RAM,可用

29、I/O为102个。2. 低功耗和多电压I/O接囗该器件的核心电压为2.5 V供电,功耗小,支持高电压I/O接囗,引脚可以与2.5 V、3.3 V、5 V电压器件兼容,并且可以进行摆率控制和漏极开路输出。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计3. 增强型嵌入式结构每个EAB有以25616、5128、10244、20482位任意组合的RAM,可做单口RAM,也可设计成双口RAM。4. 时钟锁定和时钟自举该器件为设计人员提供了可供选择的时钟锁定(Clock Lock)和时钟自举(Clock Boost)电路。这两种电路都含有锁相环(PLL)。时钟锁定电路为一个同步的PLL,

30、可减小器件内的时钟延迟和偏移。时钟自举电路提供了一个时钟乘法器,可以很容易地实现时域逻辑乘法并减小对资源的占用。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 EP1K30TC144-3能够满足多功能、低功耗、低成本、高性能的系统设计要求。FPGA电路的设计我们采用手头已有的FPGA适配板(由湖南长沙三知电子有限公司生产)来实现,该FPGA适配板包含FPGA芯片EP1K30TC144-3、下载电路、FPGA配置存储器、FPGA内核电源模块等。当给FPGA配置存储器下载配置文件后,该FPGA适配板只要接入+5V电源就可以正常工作于用户应用系统中(嵌入用户系统中)。第第4章章 数

31、字式移相信号发生器的设计数字式移相信号发生器的设计 FPGA与单片机的连接框图如图4.7所示。FPGA的时钟信号clk采用40 MHz四引脚石英晶体多谐振荡器信号源,由FPGA对40 MHz信号进行四分频,得到10 MHz的信号,将此10 MHz的信号作为FPGA芯片内部电路的同步时钟信号,时钟周期为0.1 s。FPGA配置存储器选用EPC1441。EPC1441是OTP(One Time Program)型串行PROM,采用PDIP8封装,有440 8001位,3.3 V/5 V供电。用编程器对EPC1441进行编程下载配置信息时,要在其第2和第5脚之间接一个300 pF的电容器。 第第4章

32、章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.7 FPGA与单片机的连接框图16 bitADDRESS1ADDRESS2 FPGA适配板clkconsel10 bit10 bit325V40 MHzAT89C5141第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.4 波形查找表电路波形查找表的设计在FPGA内部的实现具有一定的难度,相对于外部存储器电路而言,成本较高。我们将正弦查找表放置在外部的EPROM存储器中。首先要解决正弦信号在一个周期内的采样问题,采样值的个数根据相位差要求(相位差范围为0359,相位差步进为1)至少要有360个,而该设计考虑到实

33、现更高的移相精度,拟采用1024个采样点,且波形查找表设计为10位数字量输出。这样的话,可以确定正弦查找表为102410位的结构,存储了正弦波在一个周期内波形的1024个采样点。这样,相位差分辨率实际已达到3601024=0.3515,超出了题目要求的移相精度范围。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计可以通过C语言编程来获得正弦查找表的采样值,并将10 bit的采样值分别存放在两块8 bit的27C16存储器中,其中1块27C16存放采样值的低8位,另1块27C16存放采样值的高2位。C语言程序源代码如下。#includestdafx.h#includestdio.

34、h#includemath.h main() int i; float s; for (i=0;i1024;i+)第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 s=sin(atan(1)*8*i/1024); s=(s+1)*1023/2; printf(i=%d,%d;t,i,(int)s); return 0; 该C语言程序运行结果如下:波形查找表电路如图4.8所示。 略第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.8 波形查找表电路和D/A转换电路A08A17A26A35A44A53A62A71A823A922A1019E/P18OE20VPP

35、21D09D110D211D313D414D515D616D717U427C16A08A17A26A35A44A53A62A71A823A922A1019E/P18OE20VPP21D09D110D211D313D414D515D616D717U527C16BIT11BIT22BIT33BIT44BIT55BIT66BIT77BIT88BIT99BIT1010NC11NC12NC13NC14PD15INT/EXT16REFin17FSA18BW19AGAND20Iout21Iout22BYP23+VA24NC25DGAD26+VD27CLK28U6DAC900R32 kC80.1 F5 VC7

36、R2250 C60.1F5 VD15.0conselenresetCLKCLKEPADDRESS1ADDRESS2FPGA模块D0D1D2D3D4D5D6D7D8D9CONSEL40 MHzU3326174U7LF351R43261574U8LF351R77.5kR6R815 kVCCVCCR5250 R94 k0.1F5 V5 V15 k5 V250 VCCVCC5第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.5 D/A转换电路我们采用TI公司(美国德州仪器公司)的10位高速数/模转换器DAC900,它是权电流型D/A转换器,其转换时间为30 ns,在外部适当的连接

37、情况下(如图4.8所示),输入数字量与输出电流之间的关系如表4.2所示。该系统的D/A转换电路如图4.8所示,图中运放U7(芯片型号为LF351)将DAC900的输出电流转换为05 V的电压信号,运放U8(芯片型号为LF351)构成加法器,其输出电压为5+5 V。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计表4.2 DAC900的输入输出关系 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.6 低通滤波器电路由于在本系统中我们要滤除的频率分量主要是D/A转换器产生的高频分量(如10 MHz), 与我们所要保留的信号频率(小于等于20 kHz)相差很

38、远,因此相对来说,滤波器在通带内的平坦程度对我们而言比其衰减陡度更为重要。由于ButterWorth(巴特沃思)滤波器的元件值较为合乎实际情况,不像绝大多数的其他类型的滤波器对元件值要求那么苛刻,因此,我们采用巴特沃思二阶低通滤波器。该低通滤波器由运放U10(芯片型号为LF351)构成,电路如图4.9所示。该低通滤波器的截止频率为40 kHz。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.9 低通滤波器电路和幅度调节电路2347VCC156UoutC1050 pFR1130R1251R1051UinC9200 pFR131k32415AD8176C130.01 FC14

39、3.3 F7VCCC113.3 FC120.01 FU11VCCR141kRP110 kUA输出 AU10LF351VCC第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计4.3.7 稳幅输出电路为了保证稳幅输出,选用AD817构成稳幅电路。AD817是一款低功耗、高速、宽带运算放大器,具有很强的大电流驱动能力。(实际电路测试表明:当负载为100,输出电压峰峰值为10 V时,带宽大于500 kHz,幅度变化小于1%。) 稳幅输出电路如图4.9所示。4.3.8 系统总体硬件电路图系统总体硬件电路图如图4.10所示。 图略第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设

40、计4.4 系统软件设计系统软件设计4.4.1 FPGA之VHDL程序设计及源程序FPGA的开发是在MAX+plus开发软件平台下及EDA实验开发装置上完成的。根据上面的分析不难编写出VHDL源程序代码。由系统硬件设计可知,FPGA适配板选用的上电自动配置芯片为EPC1441,配置芯片的编程是由普通编程器将*.POF文件烧进配置芯片EPC1441里来实现的。而*.POF文件是VHDL设计的源文件在编译过程中由开发平台自动产生的。配置芯片中的编程信息一般称为配置信息。FPGA上电后,可主动从配置芯片中获得配置信息。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计1. FPGA完成的

41、任务由前面的叙述可知,在系统中,FPGA主要实现DDS(直接数字频率合成)的功能,FPGA应完成的任务具体描述如下。(1) 对输入的40 MHz时钟脉冲clk0进行四分频,得到系统所需要的10 MHz同步时钟信号clk。(2) 接收由单片机发送过来的16 bit频率控制字和相位控制字。con=1且sel=1时接收频率控制字,con=1且sel=0时接收相位控制字。(3) 主要运用DDS技术,产生两个正弦查找表的地址扫描信号ADDRESS1和ADDRESS2。 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计2. FPGA的工作时序在设计时,采用同步信号(时钟脉冲clk的上升沿(

42、rising_edge))实现同步清零、同步接收和输出数据、同步加法运算等,这样可以增强系统的抗干扰能力,提高系统的可靠性。3. FPGA芯片内部电路框图根据前面的设计,不难画出FPGA芯片内部的逻辑电路框图,如图4.11所示。图中,REG1是频率控制字输入寄存器,REG2是相位控制字输入寄存器,SUM是24 bit的相位累加器, ADDER24B是24 bit的相位加法器,REG3、 REG4是地址输出寄存器,CLKGEN是四分频器。第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计图4.11 FPGA芯片内部的逻辑电路框图D15.0CLKCONSELK23.0REG25D15

43、.0CLKCONSELH23.0REG14INPUTVCCCON14INPUTVCCSEL22CLKO CLKCLKGENINPUTVCCCLKO9OUTPUT41CLKEPOUTPUT42ADDRESS2DE123.0CLK1ADDRESS29.0REG424A23.0B23.0CLKOUT123.01ADDER24BOUTPUT40ADDRESS1ADDRESS19.0DEO23.0CLK123H23.0CLKCNRESETOUTO23.0SUM8REG3INPUTVCCD15.013INPUTVCCEN16INPUTVCCRESET182第第4章章 数字式移相信号发生器的设计数字式移相信

44、号发生器的设计4. FPGA的VHDL源程序FPGA的开发是在MAX+plus开发软件平台下及EDA实验开发装置上完成的。VHDL源程序代码如下。(1) 输入寄存器REG1: REG1.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计ENTITY REG1 IS PORT(D: IN STD_LOGIC_VECTOR(15 DOWNTO 0); CLK: IN STD_

45、LOGIC; CON: IN STD_LOGIC; SEL: IN STD_LOGIC; M: OUT STD_LOGIC_VECTOR(23 DOWNTO 0);第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计END ENTITY REG1;ARCHITECTURE ART OF REG1 IS BEGIN PROCESS(CLK,SEL,CON)IS BEGIN IF (CLKEVENT AND CLK=1) THEN IF CON=1 THEN IF SEL=1THEN第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计M=0&0&0&

46、0&0&0&0&0&D; END IF; END IF; END IF; END PROCESS;END ARCHITECTURE ART; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(2) 输入寄存器REG2: REG2.VHDUSE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY REG2 IS PORT(D: IN STD_LOGIC_VECTOR(15 DOWNTO 0); CLK: IN

47、STD_LOGIC; CON: IN STD_LOGIC; SEL: IN STD_LOGIC; K: OUT STD_LOGIC_VECTOR(23 DOWNTO 0); 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计END ENTITY REG2;ARCHITECTURE ART OF REG2 IS SIGNAL TEMP:STD_LOGIC_VECTOR(9 DOWNTO 0); BEGIN PROCESS(CLK,SEL,CON)IS BEGIN IF (CLKEVENT AND CLK=1) THEN IF CON=1 THEN IF SEL=0THEN第第4章章

48、 数字式移相信号发生器的设计数字式移相信号发生器的设计TEMP=D(9 DOWNTO 0); END IF; END IF; END IF; K=TEMP&0&0&0&0&0&0&0&0&0&0&0&0&0&0; END PROCESS;END ARCHITECTURE ART; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(3) 24 bit相位累加器SUM: SUM.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE

49、 IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SUM IS PORT(M: IN STD_LOGIC_VECTOR(23 DOWNTO 0); CLK: IN STD_LOGIC; EN: IN STD_LOGIC; RESET: IN STD_LOGIC; OUT0:OUT STD_LOGIC_VECTOR(23 DOWNTO 0); 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计END ENTITY SUM;ARCHITECTURE ART OF SUM IS SIGNAL TEMP:STD_LOGIC_VECTOR(23 DOWNTO 0);

50、BEGIN PROCESS(CLK,EN,RESET) IS BEGIN IF RESET=1THEN TEMP=000000000000000000000000;第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计ELSE IF CLKEVENT AND CLK=1THEN IF EN=1THEN TEMP=TEMP+M; END IF; END IF; END IF; OUT0=TEMP; END PROCESS;END ARCHITECTURE ART; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(4) 24 bit加法器ADDER24B: ADDER2

51、4B.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ADDER24B IS PORT(A:IN STD_LOGIC_VECTOR(23 DOWNTO 0); B:IN STD_LOGIC_VECTOR(23 DOWNTO 0); 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 CLK:IN STD_LOGIC; OUT1:OUT STD_LOGIC_VECTOR(23 DOWNTO 0);END ADDER24B;ARCHITECTURE ART OF AD

52、DER24B IS SIGNAL S:STD_LOGIC_VECTOR(23 DOWNTO 0) ; BEGIN PROCESS(CLK) BEGIN 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计IF(CLKEVENT AND CLK=1)THEN S=A+B; END IF; END PROCESS; OUT1=S; END ART; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计(5) 四分频器CLKGEN: CLKGEN.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CLKGEN IS PORT(CLK0:IN STD_LOGIC; CLK:OUT STD_LOGIC);END ENTITY;ARCHITECTURE ART OF CLKGEN IS SIGNAL CNTER:INTEGER RANGE 0 TO 10#3#; 第第4章章 数字式移相信号发生器的设计数字式移相信号发生器的设计 BEGIN PROCESS(CLK0) IS BEGIN IF CLK0EVENT AND CLK0=1THEN IF CNTER=10#3# THEN CNTER=0; ELSE CNTER=CNTER+1; END IF; END IF; END PROCESS; 第第4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论