传统的遥测信号源在设计上可编程性差,在很大程度上影响了其灵活型和通用性,同时也造成了资源的严重浪费。而本方案的设计具有较强的可编程性,可以灵活配置,通用性较强,大大节约了资源成本。

该遥测信号源的硬件电路主要由低成本FPGA和DDS专用芯片构成,软件采用Verilog语言编程。对于软件部分来说,该信号源的控制接口和控制字编程是软件编程的重要部分。FPGA控制接口通过编程实现串口通信协议,预设控制字必须按照控制接口的通信协议串行输出给DDS专用芯片,DDS芯片才能接收控制字信息,并根据接收到的控制字信息输出所需的波形。

2.1 遥测信号源的硬件构成

遥测信号源主要包括以下三个组成部分。

(1)按键电路。它主要是向FPGA部分输送控制信息。一部分按键提供波形选择信息,另一部分提供需要输出波形的频率信息。

(2)系统FPGA控制核心。FPGA是系统的核心控制部分。当FPGA接收到按键信息后,发送相应的控制信息给DDS芯片。通过程序设计,FPGA芯片EP1C6T144可实现灵活配置。

(3)DDS电路。该部分主要采用AD9833芯片来搭建外围电路。根据接收到的FPGA控制信息产生所需波形信号,并将其输出。

系统总体框图如图2所示。

基于FPGA技术和AD9833芯片实现可编程遥测信号源的设计

在该系统中,用户可通过波形选择按键输出默认频率的正弦波、三角波、方波等波形,如果在使用的过程中,需要输出不同频率的波形,则可以通过频率选择按键来实现。在FPGA控制模块中,当FPGA接收到数据或状态改变的信息后,所设置的相应的变量赋值会发生相应的改变,然后将相应的控制字输出给AD9833芯片,AD9833接收到控制字后通过直接数字频率合成,最终输出所需的波形。

2.2 遥测信号源的控制接口

DDS芯片AD9833为3线SPI接口,对于一些微处理器来说可以直接与其连接,但对于FPGA来说,必须通过对SPI协议进行编程实现。因此在FPGA控制中,对SPI进行了模块化设计,无论是相位控制字输出还是频率控制字的输出都需经过SPI模块后,根据SPI协议进行输出。FPGA控制原理框图如图3所示。

基于FPGA技术和AD9833芯片实现可编程遥测信号源的设计

在FPGA中,首先接收到外部的按键信息,按键状态或数据模块被触发,根据该模块提供的信息,在相位、频率控制模块内,对相应的寄存器(preq0,fdreq0,fhreq0)进行赋值,完成相位及频率控制字的配置,并输入到SPI模块,通过SPI模块进行SPI协议输出给AD9833,控制输出必须满足AD9833的时序控制,时序如图4所示。