孙 甜 张 硕 庞存锁
(中北大学 太原 030051)
随着现代电子技术的进一步普及与发展,我们对信息要求越来越高,推动着A/D、D/A采样率的提高,信息数据的采集和传输等主要的信息技术已被广泛应用于工业、通讯、医学等众多领域。
在采集超声信号时,需要同时监测几路信号,或者需要接收处理各种信号,并且由于接收各路信号的时间不同,而且接收速率也可能不同,这时就需要使用到多速率信号处理了。由于单通道采样率提升难度大且成本高,在某些情况下要实现既要采样率高又要分辨率高时,一般就是用多块高采样精度的采样芯片进行时间上的交错采样提高采样率。在高速采样设备中由于采样速率高带宽大,不能做到实时的传输,所以大多数采样设备都采取数据缓存策略,将前端采样卡采集的数据信息进行暂时的缓存,然后再进一步进行传输。
故本文基于FPGA开发平台拟设计多路高速高精度数据采集设备结合以太网技术进行数据传输,旨在实现大规模数据采集传输实时性。
多路超声信号采集与传输系统[1-4]主要由信号调理、信号采集和数据传输三部分组成。总体设计框图如图1所示。
图1 总体设计框图
4路的模拟信号先通过一个放大电路,FPGA控制A/D转换器对所输入的模拟信号进行模数转换,然后进行数字带通滤波,最后完成了信号的采集。在以太网进行数据传输的过程中,上机位软件通过以太网芯片向上位机发送一个读数指令,然后将所有被采集的数据信号通过以太网传输返回到上位机,对这些数据都进行显示、保存。
2.1.1 数字带通滤波器
数字滤波器[5-6]常常被广泛应用在一定的时域内或频率范围内来改变信号的特征,常见的数字滤波器为线性时间非变量(LTI)滤波器。LTI与其他滤波器的输入和信号之间相互作用,经过一个关于线性卷积的输入和信号过程,线性卷积这个过程的正式定义和描述如下:
(1)
因为FIR 滤波器相对于IIR滤波器的优势在:
1)线性相位的性能很容易实现。
2)多频带滤波器是可行的。
所以采用FIR滤波器。FIR滤波器的原理如下:
一个数字滤波器的系统函数可以表示为
(2)
输入和输出之间的关系的常系数线性差分方程为
(3)
对因果的 FIR系统,式(3)可简化为
(4)
对于LTI系统,表达式(4)可以更方便地表示为Z域形式为
Y[z]=H[z]X[z]
(5)
用 FIR 的传递函数H(z)表示为
(6)
2.1.2 放大电路设计
AD603是一种具有程控增益调整功能的芯片,是一个低噪、90MHz带宽增益自动调剂的集成运放。
本设计的放大电路选用AD603作为主放大器,采用两片AD603进行顺序级联的模式进行放大,当DA转换器电压在1V~3.5V之间进行变化时,通过两级AD603可以实现从-20dB~60dB的线性动态范围。原理图如图2所示。
图2 基于AD603的放大电路原理图
2.2.1 AD9238采集原理
系统数据采集[7-10]采用的是黑金高速AD模块AN9238,它为2路65MSPS,12位的模拟信号转数字信号模块。其中AD转换模块采用的是ADI公司的AD9238芯片,AD9238芯片支持2 路AD输入转换。模拟信号的输入支持单端模拟信号的输入,输入电压范围为-5V~+5V。AD9238的原理图如图3所示。
图3 AD9238原理图
AD9238双通道AD的数字输出为+3.3V的CMOS输出模式,2路通道(A和B)独立的数据和时钟。AD数据在时钟的上升沿转换数据,FPGA端可用AD时钟在上升沿采样的AD数据。AD9238工作的时序电路如图4所示。
图4 时序电路图
2.2.2 伪同步四通道设计
伪同步采集方案的原理如图5所示。伪同步采集方案与同步采集方案的原理相似,只是伪同步采集方案只采用一路ADC进行数据转换,前一路数据采集完毕后,下一路模拟开关打开,下一路的采样保持器上的数据传到ADC进行数据转换,之前的采集通道关闭,但是采样保持器继续工作,继续采集现在的数据信息,所以叫伪同步采集。
图5 伪同步四通道采集
2.2.3 HDMI显示
本文的设计没有使用HDMI编码芯片,而是将FPGA的3.3V差分IO直接连接到HDMI连接器,FPGA完成24位RGB编码输出TMDS差分信号。
HDMI[11]显示屏开始从屏幕左上角开始扫描,并且由左向右逐点扫描。扫描各行后,电子束返回到屏幕左侧下一行开始的位置。CRT将接收到消隐电子束,并在各行的末尾使用行同步信号对其进行同步;当扫描全部线路都是形成帧时,用场同步信号与扫描器同步场,使得扫描返回到屏幕的左上角。同时,进行场消隐,开始接收下一帧。
2.3.1 ZYQN平台结构
Zynq-7000平台[12-16]是本论文设计的核心,采用ARM和FPGA相结合的架构,芯片功能被划分成 PS 和PL两部分,PS相当于ARM,而PL也就是 FPGA,是完全灵活的,满足设计。其中PS和PL两部分是通过AXI接口来实现互联的,相比于常用的AHB总线协议,AXI总线具有更好的性能和更高的带宽,而且这种片内通信模式使数据通信更加可靠、高效,还可以降低功耗。
2.3.2 数据传输模块
AD9238数据经过自定义的IP,自定义的IP将ADC数据转换成AXI流接口,通过一个Axis_register_slice改善一下时序,然后发送到DMA控制器传送到HP口写到PS端的DDR[17]里,最后通过以太网传输到上位机。数据传输模块框图如图6所示。
图6 数据传输模块框图
放大前是1VPP的信号,经过放大后实现了5VPP的放大效果,效果对比图如图7所示。
将AD9238采样后的信号在Matlab中进行量化,并以“.coe”文件形式输出,生成的“.coe”文件用来被FPGA中的IP进行调用,以实现信号带通滤波作用。
信号经过量化后产生的抽头参数如图8所示,滤波后的效果图如图9所示。
图8 采集信号进行量化后的抽头参数
图9 待滤波信号通过滤波的效果图
3.3.1 ila在线逻辑分析仪如图10所示。
图10 ila逻辑分析仪双通道信号显示
3.3.2 HDMI显示如图11所示。
图11 HDMI双通道信号采集显示
串口助手上显示的IP地址、子网掩码和默认网关三个内容以及示波器上显示的波形,说明ad9238采集来的数据通过以太网传输实现了。putty中打印的信息显示图如图12所示,示波器(上位机)上显示的波形如图13所示。
图12 putty中打印的信息显示图
图13 示波器(上位机)上显示的波形
1)用超声探头产生频率为50kHz的信号,经过AD9238采集后显示在HDMI上。详见图14至图16。
图14 50kHz超声探头硬件连接图
图15 频率为50kHz的超声信号示波器显示
图16 采集到的50kHz超声信号HDMI显示
2)超声信号频率为100kHz采集的信号在HDMI上的显示。详见图17至图19。
图17 100kHz超声探头硬件连接图
图19 采集到的100kHz超声信号HDMI显示
3)超声信号频率为250kHz采集的信号在HDMI上的显示。详见图20至图22。
图20 250kHz超声探头硬件连接图
图21 频率为250kHz的超声信号示波器显示
图22 采集到的250kHz超声信号HDMI显示
4)超声信号频率为500kHz采集的信号在HDMI上的显示。详见图23至图25。
图23 500kHz超声探头硬件连接图
图24 频率为500kHz的超声信号示波器显示
图25 采集到的500kHz超声信号HDMI显示
本设计采用zynq-7000系列的ac7010开展多通道的信号采集与传输,由于该开发板的排针数量以及以太网芯片的速率,所以采用AD9238实现伪同步四通道信号采集。在信号采集前首先进行了信号的放大:采用了两片进行顺序级联的AD603实现-20dB~60dB的动态范围的放大电路;在信号进行采集结束进入传输阶段使用了数字带通滤波器,应用的是ac7010的特点,可以将AD9238采集回来的数据在vivado中通过IP核的调用实现带通滤波的效果,并且因为是数字滤波,所以可以实现传输信号频率的多样性。因为AC7010是FPGA和ARM结合的开发板,所以AD9238采集的数据经过自定义的IP,将ADC数据转换成AXI流接口并且改善时序,然后将数据通过DMA控制器传送到HP口写到PS端的DDR里,最后通过以太网传输到上位机。