孫 甜 張 碩 龐存鎖
(中北大學(xué) 太原 030051)
隨著現(xiàn)代電子技術(shù)的進(jìn)一步普及與發(fā)展,我們對(duì)信息要求越來越高,推動(dòng)著A/D、D/A采樣率的提高,信息數(shù)據(jù)的采集和傳輸?shù)戎饕男畔⒓夹g(shù)已被廣泛應(yīng)用于工業(yè)、通訊、醫(yī)學(xué)等眾多領(lǐng)域。
在采集超聲信號(hào)時(shí),需要同時(shí)監(jiān)測幾路信號(hào),或者需要接收處理各種信號(hào),并且由于接收各路信號(hào)的時(shí)間不同,而且接收速率也可能不同,這時(shí)就需要使用到多速率信號(hào)處理了。由于單通道采樣率提升難度大且成本高,在某些情況下要實(shí)現(xiàn)既要采樣率高又要分辨率高時(shí),一般就是用多塊高采樣精度的采樣芯片進(jìn)行時(shí)間上的交錯(cuò)采樣提高采樣率。在高速采樣設(shè)備中由于采樣速率高帶寬大,不能做到實(shí)時(shí)的傳輸,所以大多數(shù)采樣設(shè)備都采取數(shù)據(jù)緩存策略,將前端采樣卡采集的數(shù)據(jù)信息進(jìn)行暫時(shí)的緩存,然后再進(jìn)一步進(jìn)行傳輸。
故本文基于FPGA開發(fā)平臺(tái)擬設(shè)計(jì)多路高速高精度數(shù)據(jù)采集設(shè)備結(jié)合以太網(wǎng)技術(shù)進(jìn)行數(shù)據(jù)傳輸,旨在實(shí)現(xiàn)大規(guī)模數(shù)據(jù)采集傳輸實(shí)時(shí)性。
多路超聲信號(hào)采集與傳輸系統(tǒng)[1-4]主要由信號(hào)調(diào)理、信號(hào)采集和數(shù)據(jù)傳輸三部分組成??傮w設(shè)計(jì)框圖如圖1所示。
圖1 總體設(shè)計(jì)框圖
4路的模擬信號(hào)先通過一個(gè)放大電路,F(xiàn)PGA控制A/D轉(zhuǎn)換器對(duì)所輸入的模擬信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,然后進(jìn)行數(shù)字帶通濾波,最后完成了信號(hào)的采集。在以太網(wǎng)進(jìn)行數(shù)據(jù)傳輸?shù)倪^程中,上機(jī)位軟件通過以太網(wǎng)芯片向上位機(jī)發(fā)送一個(gè)讀數(shù)指令,然后將所有被采集的數(shù)據(jù)信號(hào)通過以太網(wǎng)傳輸返回到上位機(jī),對(duì)這些數(shù)據(jù)都進(jìn)行顯示、保存。
2.1.1 數(shù)字帶通濾波器
數(shù)字濾波器[5-6]常常被廣泛應(yīng)用在一定的時(shí)域內(nèi)或頻率范圍內(nèi)來改變信號(hào)的特征,常見的數(shù)字濾波器為線性時(shí)間非變量(LTI)濾波器。LTI與其他濾波器的輸入和信號(hào)之間相互作用,經(jīng)過一個(gè)關(guān)于線性卷積的輸入和信號(hào)過程,線性卷積這個(gè)過程的正式定義和描述如下:
(1)
因?yàn)镕IR 濾波器相對(duì)于IIR濾波器的優(yōu)勢在:
1)線性相位的性能很容易實(shí)現(xiàn)。
2)多頻帶濾波器是可行的。
所以采用FIR濾波器。FIR濾波器的原理如下:
一個(gè)數(shù)字濾波器的系統(tǒng)函數(shù)可以表示為
(2)
輸入和輸出之間的關(guān)系的常系數(shù)線性差分方程為
(3)
對(duì)因果的 FIR系統(tǒng),式(3)可簡化為
(4)
對(duì)于LTI系統(tǒng),表達(dá)式(4)可以更方便地表示為Z域形式為
Y[z]=H[z]X[z]
(5)
用 FIR 的傳遞函數(shù)H(z)表示為
(6)
2.1.2 放大電路設(shè)計(jì)
AD603是一種具有程控增益調(diào)整功能的芯片,是一個(gè)低噪、90MHz帶寬增益自動(dòng)調(diào)劑的集成運(yùn)放。
本設(shè)計(jì)的放大電路選用AD603作為主放大器,采用兩片AD603進(jìn)行順序級(jí)聯(lián)的模式進(jìn)行放大,當(dāng)DA轉(zhuǎn)換器電壓在1V~3.5V之間進(jìn)行變化時(shí),通過兩級(jí)AD603可以實(shí)現(xiàn)從-20dB~60dB的線性動(dòng)態(tài)范圍。原理圖如圖2所示。
圖2 基于AD603的放大電路原理圖
2.2.1 AD9238采集原理
系統(tǒng)數(shù)據(jù)采集[7-10]采用的是黑金高速AD模塊AN9238,它為2路65MSPS,12位的模擬信號(hào)轉(zhuǎn)數(shù)字信號(hào)模塊。其中AD轉(zhuǎn)換模塊采用的是ADI公司的AD9238芯片,AD9238芯片支持2 路AD輸入轉(zhuǎn)換。模擬信號(hào)的輸入支持單端模擬信號(hào)的輸入,輸入電壓范圍為-5V~+5V。AD9238的原理圖如圖3所示。
圖3 AD9238原理圖
AD9238雙通道AD的數(shù)字輸出為+3.3V的CMOS輸出模式,2路通道(A和B)獨(dú)立的數(shù)據(jù)和時(shí)鐘。AD數(shù)據(jù)在時(shí)鐘的上升沿轉(zhuǎn)換數(shù)據(jù),F(xiàn)PGA端可用AD時(shí)鐘在上升沿采樣的AD數(shù)據(jù)。AD9238工作的時(shí)序電路如圖4所示。
圖4 時(shí)序電路圖
2.2.2 偽同步四通道設(shè)計(jì)
偽同步采集方案的原理如圖5所示。偽同步采集方案與同步采集方案的原理相似,只是偽同步采集方案只采用一路ADC進(jìn)行數(shù)據(jù)轉(zhuǎn)換,前一路數(shù)據(jù)采集完畢后,下一路模擬開關(guān)打開,下一路的采樣保持器上的數(shù)據(jù)傳到ADC進(jìn)行數(shù)據(jù)轉(zhuǎn)換,之前的采集通道關(guān)閉,但是采樣保持器繼續(xù)工作,繼續(xù)采集現(xiàn)在的數(shù)據(jù)信息,所以叫偽同步采集。
圖5 偽同步四通道采集
2.2.3 HDMI顯示
本文的設(shè)計(jì)沒有使用HDMI編碼芯片,而是將FPGA的3.3V差分IO直接連接到HDMI連接器,F(xiàn)PGA完成24位RGB編碼輸出TMDS差分信號(hào)。
HDMI[11]顯示屏開始從屏幕左上角開始掃描,并且由左向右逐點(diǎn)掃描。掃描各行后,電子束返回到屏幕左側(cè)下一行開始的位置。CRT將接收到消隱電子束,并在各行的末尾使用行同步信號(hào)對(duì)其進(jìn)行同步;當(dāng)掃描全部線路都是形成幀時(shí),用場同步信號(hào)與掃描器同步場,使得掃描返回到屏幕的左上角。同時(shí),進(jìn)行場消隱,開始接收下一幀。
2.3.1 ZYQN平臺(tái)結(jié)構(gòu)
Zynq-7000平臺(tái)[12-16]是本論文設(shè)計(jì)的核心,采用ARM和FPGA相結(jié)合的架構(gòu),芯片功能被劃分成 PS 和PL兩部分,PS相當(dāng)于ARM,而PL也就是 FPGA,是完全靈活的,滿足設(shè)計(jì)。其中PS和PL兩部分是通過AXI接口來實(shí)現(xiàn)互聯(lián)的,相比于常用的AHB總線協(xié)議,AXI總線具有更好的性能和更高的帶寬,而且這種片內(nèi)通信模式使數(shù)據(jù)通信更加可靠、高效,還可以降低功耗。
2.3.2 數(shù)據(jù)傳輸模塊
AD9238數(shù)據(jù)經(jīng)過自定義的IP,自定義的IP將ADC數(shù)據(jù)轉(zhuǎn)換成AXI流接口,通過一個(gè)Axis_register_slice改善一下時(shí)序,然后發(fā)送到DMA控制器傳送到HP口寫到PS端的DDR[17]里,最后通過以太網(wǎng)傳輸?shù)缴衔粰C(jī)。數(shù)據(jù)傳輸模塊框圖如圖6所示。
圖6 數(shù)據(jù)傳輸模塊框圖
放大前是1VPP的信號(hào),經(jīng)過放大后實(shí)現(xiàn)了5VPP的放大效果,效果對(duì)比圖如圖7所示。
將AD9238采樣后的信號(hào)在Matlab中進(jìn)行量化,并以“.coe”文件形式輸出,生成的“.coe”文件用來被FPGA中的IP進(jìn)行調(diào)用,以實(shí)現(xiàn)信號(hào)帶通濾波作用。
信號(hào)經(jīng)過量化后產(chǎn)生的抽頭參數(shù)如圖8所示,濾波后的效果圖如圖9所示。
圖8 采集信號(hào)進(jìn)行量化后的抽頭參數(shù)
圖9 待濾波信號(hào)通過濾波的效果圖
3.3.1 ila在線邏輯分析儀如圖10所示。
圖10 ila邏輯分析儀雙通道信號(hào)顯示
3.3.2 HDMI顯示如圖11所示。
圖11 HDMI雙通道信號(hào)采集顯示
串口助手上顯示的IP地址、子網(wǎng)掩碼和默認(rèn)網(wǎng)關(guān)三個(gè)內(nèi)容以及示波器上顯示的波形,說明ad9238采集來的數(shù)據(jù)通過以太網(wǎng)傳輸實(shí)現(xiàn)了。putty中打印的信息顯示圖如圖12所示,示波器(上位機(jī))上顯示的波形如圖13所示。
圖12 putty中打印的信息顯示圖
圖13 示波器(上位機(jī))上顯示的波形
1)用超聲探頭產(chǎn)生頻率為50kHz的信號(hào),經(jīng)過AD9238采集后顯示在HDMI上。詳見圖14至圖16。
圖14 50kHz超聲探頭硬件連接圖
圖15 頻率為50kHz的超聲信號(hào)示波器顯示
圖16 采集到的50kHz超聲信號(hào)HDMI顯示
2)超聲信號(hào)頻率為100kHz采集的信號(hào)在HDMI上的顯示。詳見圖17至圖19。
圖17 100kHz超聲探頭硬件連接圖
圖19 采集到的100kHz超聲信號(hào)HDMI顯示
3)超聲信號(hào)頻率為250kHz采集的信號(hào)在HDMI上的顯示。詳見圖20至圖22。
圖20 250kHz超聲探頭硬件連接圖
圖21 頻率為250kHz的超聲信號(hào)示波器顯示
圖22 采集到的250kHz超聲信號(hào)HDMI顯示
4)超聲信號(hào)頻率為500kHz采集的信號(hào)在HDMI上的顯示。詳見圖23至圖25。
圖23 500kHz超聲探頭硬件連接圖
圖24 頻率為500kHz的超聲信號(hào)示波器顯示
圖25 采集到的500kHz超聲信號(hào)HDMI顯示
本設(shè)計(jì)采用zynq-7000系列的ac7010開展多通道的信號(hào)采集與傳輸,由于該開發(fā)板的排針數(shù)量以及以太網(wǎng)芯片的速率,所以采用AD9238實(shí)現(xiàn)偽同步四通道信號(hào)采集。在信號(hào)采集前首先進(jìn)行了信號(hào)的放大:采用了兩片進(jìn)行順序級(jí)聯(lián)的AD603實(shí)現(xiàn)-20dB~60dB的動(dòng)態(tài)范圍的放大電路;在信號(hào)進(jìn)行采集結(jié)束進(jìn)入傳輸階段使用了數(shù)字帶通濾波器,應(yīng)用的是ac7010的特點(diǎn),可以將AD9238采集回來的數(shù)據(jù)在vivado中通過IP核的調(diào)用實(shí)現(xiàn)帶通濾波的效果,并且因?yàn)槭菙?shù)字濾波,所以可以實(shí)現(xiàn)傳輸信號(hào)頻率的多樣性。因?yàn)锳C7010是FPGA和ARM結(jié)合的開發(fā)板,所以AD9238采集的數(shù)據(jù)經(jīng)過自定義的IP,將ADC數(shù)據(jù)轉(zhuǎn)換成AXI流接口并且改善時(shí)序,然后將數(shù)據(jù)通過DMA控制器傳送到HP口寫到PS端的DDR里,最后通過以太網(wǎng)傳輸?shù)缴衔粰C(jī)。