基于FPGA的任意波形信号发生器的设计与实现

发表时间:2021/5/13   来源:《中国电力企业管理》2021年2月   作者:赵晓燕
[导读] 任意波形信号发生器是一种能够提供正弦波、三角波、矩形波、高斯波形、不规则波形等任意波形的设备,常应用于高级研究、复杂电子测试等领域中需求苛刻激励源的情况。现有的信号发生器具有价格高、体积大、通道数少、操作复杂等缺点,现有的直接数字频率合成信号发生器具有不适宜产生不规则任意波形的缺点。

南京先进激光技术研究院   赵晓燕       210000

摘要:任意波形信号发生器是一种能够提供正弦波、三角波、矩形波、高斯波形、不规则波形等任意波形的设备,常应用于高级研究、复杂电子测试等领域中需求苛刻激励源的情况。现有的信号发生器具有价格高、体积大、通道数少、操作复杂等缺点,现有的直接数字频率合成信号发生器具有不适宜产生不规则任意波形的缺点。本文提出一种基于FPGA的任意波形信号发生器,可以提供至少六路任意波形信号发生通道,具有面向用户的操作界面,具有精度高、成本低、体积小、便于操作、便于集成等优点,能有效弥补现有信号发生器产品和直接数字频率合成信号发生器的缺点。
关键词:信号发生器、任意波形、FPGA、多通道
        引言
        信号发生器[1]是一种可以产生各种频率、各类波形和各种输出电平的电信号的设备,常被用作激励源或信号源,广泛应用于生产、科技、工业、教学等各项领域中。任意波形信号发生器是一种可以产生正弦波、三角波、矩形波、高斯波形、不规则波形等任意波形的设备,常应用于高级研究、复杂电子测试等领域中需求苛刻激励源的情况。
        目前,国内的信号发生器主要有两种:一种是成熟的面向市场的信号发生器产品,具有集成度高、功能多、产品型号丰富的优点,但具有价格高、体积大、通道数少、任意波形产生操作复杂的缺点,不便于应用于系统集成,以及需求多路通道同步工作的场景下。
        另一种是基于直接数字频率合成(DDS)技术实现的信号发生器,具有成本低、体积小的突出优点,但该方法多以产生基础信号的调幅、调频、调相信号为主,不适宜产生不规则的任意波形,不能满足特定需求场合。
        本文提出一种基于FPGA的任意波形信号发生器,可以提供至少六路任意波形信号发生通道,具有面向用户的操作界面,具有精度高、成本低、体积小、便于操作、便于集成等优点,能有效弥补现有信号发生器产品和直接数字频率合成信号发生器的缺点。
        1、任意波形信号发生器原理
        现场可编程门阵列(FPGA)是专用集成电路(ASIC)领域中的一种,具有高灵活性、高并行性和高集成性等一系列优点[2,3]。FPGA的高灵活性体现在它的半定制化特性上,用户可以根据需求设计出定制化的数字逻辑电路功能,这一特点尤其适用于任意波形信号的定制化编辑需求。FPGA的高并行性体现在它内部的硬件逻辑可以同时独立工作和运行,可以很好的弥补软件编程具有的顺序执行特性,这一特点尤其适用于产生高精度的任意波形。FPGA的高集成性体现在它具有丰富的数字逻辑资源可编程,丰富的I/O引脚支持各种外围芯片的驱动,进而可减少外围芯片的设计,这一特点尤其适用于产生多通道同步工作的任意波形。基于上述考虑,任意波形信号发生器的核心处理器选用可编程门阵列(FPGA)芯片。
        任意波形信号发生器的原理框图如图1所示,主要分为用户操作界面、数字信号处理(DSP)、高速数模转换(DA)、存储器四部分。
        用户操作界面可以面向用户提供可视化的操作界面,具有波形选择(如正弦波、高斯波、任意波)、波形参数设置(如周期、幅值等)、任意波形编辑等按键可供用户选择,具有操作简单的特点。
        数字信号处理主要选用FPGA作为核心处理器完成待输出信号的数字处理,包括接收用户操作界面下发的数据并进行调制、差值等数字信号处理。基于FPGA的数字信号处理可充分发挥FPGA的优势,具有速度高、精度高、抖动小的优点。
        高速数模转换是将FPGA处理后的数字信号转换为模拟信号的过程。通过选用高速、多通道的AD芯片,可以保障任意波形的多通道数以及信号保真度。
存储器用于存储用户通过用户操作界面下发的系列参。通过选用可靠性高、寿命长的EEPROM芯片,具有掉电保存的优点。

图1 任意波形信号发生器原理框图
        2、任意波形信号发生器的FPGA实现
        基于FPGA实现的任意波形信号发生器的软件架构框图如图2所示,步骤如下:
        (1)用户操作界面通过PC端的上位机软件实现。上位机软件与FPGA之间通过串口通信传输波形控制类参数和编辑任意波形所需要的采样点。
        (2)FPGA内部的串口通信模块用于驱动串口芯片完成与上位机软件之间的数据收发。而后,通过协议解析模块完成参数提取。提取参数主要包括用于控制周期、幅值等的控制类参数和用于编辑任意波形的采样点参数。提取的参数主要分为两个分支。
        (3)提取参数的一个分支流向存储/读取控制模块,该模块与外围存储器间通过IIC协议进行数据交换。当上位机软件设置存储功能时,提取参数写入存储器,可以满足掉电保存的功能;当FPGA上电后,自动读取存储器上一次的存储参数,可以满足上电加载的功能。
        (4)提取参数的另一个分支流向用于产生任意波形的RAM模块或者DDS模块。其中RAM模块用于存储用户设置的任意波形的采样点参数,时序控制模块则根据控制类参数产生RAM的读写控制时序,完成客户需求的任意数字信号的编辑。DDS模块则用于产生调幅、调频、调相的各种调制类信号。
        (5)本文采用xilinx公司性价比极高的Spartan-6系列FPGA和TI公司的 DAC5672高速数模转换芯片作为任意信号发生器的核心硬件成员,尺寸仅为100mm×100mm。基于图2所示的FPGA软件架构设计,设计FPGA工作时钟为250M,可完成精度为4ns,至少6个独立通道的正弦、三角、矩形、高斯、任意波形、调幅、调频、调相等任意波形的产生。图3所示为基于上述器件选型和软件设计的任意波形信号发生器产生的3个通道的信号,经示波器采集到的波形图,可见该信号发生器可产生多通道信号和不规则信号(通道4)。

图2 FPGA软件架构设计

图3 任意波形实测图
        3、结束语
        本文阐述了任意波形信号发生器的FPGA实现原理以及软件设计的详细架构,给出典型的芯片选型以及软件工作参数,通过实测结果说明该任意波形信号发生器可完成高精度、多通道的任意波形产生。其设计简单、波形编辑功能界面化、尺寸小的优点,可以弥补现有信号发生器通道数不多、任意波形编辑功能复杂、体积大的缺点;其任意波形编辑功能和内嵌DDS的优点,可以弥补直接数字频率合成信号发生器不便于产生不规则波形的缺点,可以满足工程师各种特定的信号需求。
参考文献
[1]肖奕寒. 《基于DDS技术采用FPGA的信号发生器设计与实现》[D]. 湖南大学, 2017
[2]吴厚航. 《FPGA设计实战演练(逻辑篇)》[M].清华大学出版社,2014.
[3]孟祥志. 《FPGA的静态时序分析研究与设计》[D]. 复旦大学, 2012

 

投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: