基于FPGA的多路程控信号源设计
谢雪松,李超,张小玲,刘书萌
摘要 提出一种基于FPGA的多路程控信号源的设计方法,本设计采用直接数字频率合成技术(DDS),由AD9746高精度数/模转换器产生模拟信号,并通过高幅值输出的功率放大电路将信号放大。上位机对下位机的控制通过串口通信实现。实验结果表明,本设计可产生频率从0到1KHz,幅度从0到60V可调的正弦波、三角波、锯齿波和占空比可变的方波,并可以有选择的通过1到个通道输出。 关键词 FPGA;直接数字频率合成;信号源;功率放大器 中图分类号TN914-1 文献标识码 A
Design of Multi-channel Programmable Signal Source
Based on FPGA
Xie Xue-song,Li Chao,Zhang Xiao-ling,Liu Shu-meng
(Semiconductor Reliability Research, Beijing University of Technology, Beijing, 100124)
Abstract Proposed an FPGA-based design method of multi-channel programmable signal source. The design utilizes Direct Digital Synthesis(DDS) technology. The analog signals are produced by the high-accuracy D/A converter AD9746, and amplified by a high-amplitude power amplifier. The program – controlled between the host computer and the lower machine is achieved by using serial communication. Experimental results show that this design can produce sine wave, triangle wave, sawtooth wave and square wave with variable duty cycle , whose frequency ranges from 0 to 1KHz and amplitude ranges from 0 to 60V. The signals can be selected by 1 to channels to be output. Keywords FPGA; DDS; Signal Source; Power Amplifier
0 引言
在现代电子系统中,信号源模块往往是不可或缺的重要组件之一。随着微电子技术和计算机控制技术的不断发展,传统的模拟信号源由于其抗干扰能力差,波形种类单一,且程控性能低下等原因,已经远远不能满足系统的需求。直接数字频率合成(Direct Digital Frequency Synthesis,DDS)技术是一种从相位概念出发直接合成所需波形的全数字技术[1],具有频率分辨率高、频率转换时间短、输出连续等优点[2],目前被广泛应用于信号处理领域。
虽然在市场上可以找到多种专用的DDS芯片,但其控制方式单一且固定,配置起来也缺乏灵活性,所以不能保证达到所有系统的需求[3]。现场可编程门阵列((Field Programmable Gate Array,FPGA)设计难度低,且灵活性强,可以根据需求通过编程调节相应的配置,所以本系统选择以FPGA为
核心处理芯片实现采用DDS技术的多路程控信号源设计。
1 系统整体架构
系统采用Altera公司生产的型号为EP2C20F484C8的FPGA芯片作为核心处理芯片,整体框图如图1所示。系统可分为信号产生和开关矩阵控制两大部分,而信号产生又由DDS直接数字频率合成器和功率放大器组成,开关矩阵控制电路由光耦阵列、达林顿管阵列和继电器整列构成。
DDS波形数据图1系统架构示意图
系统可产生0到1KHz、幅值从0到60V的正弦波、三角波、锯齿波和占空比可调的
方波,所产生的波形可以从路继电器阵列中的任意一路或多路输出。
2 硬件组成及实现
2.1 DDS频率合成器
DDS技术的核心是在频率控制字的控制下,将离散的波形数据转换成一定频率的连续的模拟信号。输出频率与频率控制字及参考时钟的关系可用式(1)表示[4]
:
foKf2Nc (1)
式中的fo为输出频率,K是频率控制字,N为一正整数,fc为参考时钟频率。由式1.1可以得到系统的频率分辨率,如式(2)所示[5]:
f1of2Nc (2)
从式1.2中可以看出,系统的频率分辨率取决于fc和N的取值,而通常情况下,fc
为给定值,即系统时钟,所以频率分辨率就只取决于N。在本系统中,N取32,系统的参考时钟fc为100MHz,因此系统的频率分辨率约为0.0232Hz。
DDS频率合成器的原理图如图2所示,在每个参考时钟的上升沿,32位的累加器将频率控制字K和相位寄存器中的数据相加,
作为寻址波形存储器的地址,读出相应地址的预先写入波形存储器的波形数据,经过14位精度的D/A转换器,得到连续的阶梯电压,再经过低通滤波器,得到平滑的模拟信号。
频率控制字K相位相位 波形D/A低通累加器32 bit寄存器14bit 存储器14bit转换器滤波器参考时钟 fc
图2 DDS原理示意图
为了提高系统的频率分辨率,系统采用了32 bit的相位累加器,但如果对波形寄存器采用32位寻址,那么存储空间的占用量将远大于FPGA的片上存储资源,所以这里的波形存储器的地址位宽为14 bit。为了
[键入文字]
使相位和波形存储器的地址一一对应,需要截取相位寄存器结果的高14位作为存储器寻址的地址。另外, 由于采用了14 bit精度的AD9746 D/A转换器,波形存储器应存储16386个波形数据点,但是,由于FPGA芯片的片上存储空间有限,为了节省存储空间,考虑到正弦波及三角波波形的几何对称性,这里只保存信号四分之一周期的波形数据,即仅存储了4096个点,另外四分之三周期的数据可利用波形的对称性通过相位运算得到。对于锯齿波这样的非严格几何对称波形,处理的方法是依然采取14 bit的采样精度,但是每隔三个点取一个值存入波形存储器,由于锯齿波的波形为直线型,所以不会导致波形的失真。这样做既保证了波形数据的精度又节省了硬件资源,降低了开
发成本。
2.2 有源低通滤波器
为了获得良好的通带平坦度,本系统采用了二阶巴特沃斯(Butterworth)有源低通滤波器,图3为低通滤波器的原理图[6]。其中,集成功放芯片选用OP07。
图3 二阶巴特沃斯有源低通滤波器原理图
考虑到设计的简便性,这里选用等容、等阻的设计方法,即令R1=R2=R,C4=C5=C。则一般的传递函数可由式(3)表示
A(S)Ao1CRC(3Ao)S(CRC)2S2(3) 其中,电压放大倍数AR4o1R=1.56,
3滤波器系数a1CRC(3A0)=1.4142,b1(CRC)2=1[7],本系统中,为了满足设
计要求,给定转折频率fc=80KHz,C = C4 = 流增大,以驱动继电器的吸合,吸合的继电C5 =3.3nF,R3=1KΩ,可得到:
=602Ω,R4 = 560Ω。因为602Ω的阻值不是典型的电阻值,所以选择R1=R2=560Ω。 2.3 功率放大电路
根据系统要求,需满足输出信号峰峰值最大值为Vpp=60V,为使高压输出模块输出幅值留有余量,将高压输出信号峰峰值设计为+40V。考虑到功率管的压降,将直流供电电压设计为+50V。为了满足数字电路与模拟电路的有效隔离,采用DC/DC隔离电源模块,该模块输入电压为15V,双通道输出电压+50V。
考虑到电路中的元件需承受较高电压值,所以需采用集成功放与分立三极管共同工作的放大电路设计[8],这里的集成功放芯片依然采用OP07,PNP三极管采用2SA1306,NPN三极管采用2SC3298。电路原理图如图4所示
图4 功率放大电路原理图
其中,D1,D2,D3,D4为四个二极管,用于实现Q1、Q2、Q3、Q4的偏置,同时兼有温度补偿的作用,因此需要将二极管与三极管紧密贴合,并采用导热硅脂实现快速温度传递。由于该电路选用互补型电路结构,因此要求硬件电路严格对称,这就对印制电路板(PCB)的布局布线提出了严格要求。 2.4 开关矩阵控制电路
为了增强输出信号的抗干扰能力,减小通道间的串扰,系统的开关矩阵控制电路采用了光耦-继电器的设计。通过FPGA的个用户IO控制路光耦的导通与关断,再经由达林顿管阵列将导通的光耦输出的电
[键入文字]
器将放大的信号输出。
3 软件设计
3.1 上位机软件
本系统中,上位机软件的功能是根据用户需求,向下位机发送相应的基于RS232电平标准的串口指令。为了方便用户操作,这里采用基于LabView图形编辑工具[9]
的人机交互界面设计。用户只需要指定波形类型、幅值和频率,并同时勾选需要选通的通道编号,就可以控制信号源从个通道中的一路或多路输出所需波形。
3.2 下位机软件
下位机软件实现的功能是接收上位机发送的串口指令,进行CRC校验,并将有效指令转换为DDS的设置参数,如波形类型、频率控制字、幅值、通道选通等,控制FPGA进行相应操作,并返回指令。软件的流程图如图5所示
开始等待串口指令NCRC校验正确Y串口指令识别DDS配置返回串口指令
图5 下位机软件流程图
4 实验结果
系统输出的波形如图10-15所示,所有波形的采集都是由安捷司生产的型号为的示波器测量保存得到,其中的锯齿波由于系统需求的关系采用的是单边波形,即只有幅值大于0V的正半轴信号。另外由于波形类型的不同,波形的幅值会存在少许误差。
图6 正弦波 图7 三角波
报,2003,23(2):106-108
[7] Carter.B,Mancini.R著,姚剑清译.运算放大器权威指南[M].第三版.北京:人民邮电出版社.2010.10
[8] R.F.格拉夫著.《电子电路百科全书》翻译组译》.
电子电路百科全书[M].第二卷.北京:科学出版社.19
[9] 杨乐平,李海涛,赵勇等. LabView高级程序设计[M].北京,清华大学出版社[M], 2002.
图8占空比50%的方波 图9占空比20%的方波
图10锯齿波 图11 直流
5 结论
本系统以altera公司生产的cyclone II
系列的FPGA芯片EP2C20F484C8为核心处理器件,采用14 bit精度的AD9746数模转换芯片得到连续的模拟信号,并设计了一套完整的有源低通滤波器电路和功率放大电路,使输出波形可以在0至1KHz、0至60V之间变化,并可在1到通道中的任意一路或多路输出,所有的信号源配置都可以直接通过上位机软件进行,无需手动调节电路,因此本系统可以应用在对自动化程度要求较高的系统中,具有很强的实用性和可靠性。
[参 考 文 献]
[1] 孙素平. 基于DDS技术信号发生器的研究与设计. 哈尔滨: 哈尔滨工业大学,2010
[2] 张严,洪远泉. 基于FPGA的任意波形发生器设计
与
研
究
[J].
现
代
电
子
技
术,2011,34(10):157-159
[3] 张敏,孙丽丽,乔晓林. 直接数字频率合成器的
PFGA
实现[J]. 现代
电子技
术,2011,34(10):71-73
[4] 曾菊容. 基于FPGA和DDS技术的任意波形发生器设计[J]. 现代电子技术,2010,24:98-100 [5] 齐彩利,宋鹏,齐建中. 基于FPGA的多路信号源设计与实
现[J]. 无
线电工
程,2010,40(4):19-21
[6] 晏春海,田蔚风,王俊璞. 巴特沃斯低通滤波器的设计[J]. [键入文字]
弹箭与
制导学