??? 摘? 要: 針對多通道超聲波應用提出了一種USB+FPGA+DSP的架構,模擬前端可實現8通道高速數據采集,并可實現線性增益和可變采樣率。FPGA為系統的控制核心,同時進行信號預處理方面的工作,而DSP著重于復雜算法的應用。最后通過已知信號對整個系統進行測試,驗證了該系統性能良好,具有很高的實用價值。?
??? 關鍵詞: FPGA;DSP;USB;超聲波;高速A/D
?
??? 通常,頻率高于20 000 Hz的聲波稱為“超聲波”。超聲波的波長比一般聲波短,具有較好的方向性,而且能透過不透明物質,已被廣泛用于醫療和工業方面,如:超聲波探傷、測距、超聲焊接、清洗、醫療成像等。?
??? 在傳統的超聲波儀器中,一般只采用DSP或只采用FPGA,且大部分采集數據要到PC機上進行算法分析。隨著超聲應用的深入和超聲設備功能的改進,新型的超聲波系統處理任務加重和復雜度加深,需要更快的數據處理能力。如果將數據傳到PC機上進行處理,則難以滿足實時性方面的要求。?
??? 本文提出了USB+FPGA+DSP的架構,設計了一種新型8通道超聲數據并行采集處理系統。由FPGA配合DSP進行數據采集、預處理等, 發揮了FPGA并行高速處理的優勢,而將一些稍微復雜的算法在DSP中實現,提高了算法性能,最后將處理結果通過USB送到PC進行分析。這種任務硬件分配方法可使系統性能得到很大提高。?
1 系統描述?
??? 在多通道超聲波應用中,高速A/D技術、大容量緩沖技術以及信號的實時處理、分析技術是超聲設備的關鍵,也是整個系統的瓶頸所在。本文的設計能夠實現這些技術的融合。系統框圖如圖1所示。?
?
?
??? 首先,從超聲波接收電路收到的微弱電壓信號進入8通道的可變增益運放進行放大;然后交流耦合到8通道AD轉換器進行高速模數轉換,同時輸出8路LVDS DDR數據信號進入FPGA;由FPGA對8通道的數據進行高速串并轉換并進行預處理和緩存。?
??? PC機發送采集命令到FPGA,通過EMIF口送到DSP,DSP收到命令后打開EDMA傳輸,同時使能FPGA的數據采集,將接收數據緩存在外掛的SDRAM中,然后對數據進行處理,再通過EMIF口將處理結果送給FPGA,由FPGA內部的USB接口邏輯將數據送到主機進一步處理。?
??? 同時,主機可以通過發送命令控制運放的線性增益、功耗控制等處理。PC作為主控單元,將命令送到DSP,而DSP作為二級控制單元將命令送到FPGA內部的寄存器中,而由FPGA實現各種接口的控制時序,最終實現控制。?
2 模擬信號采集模塊?
2.1 模擬前端設計?
??? 超聲波的工作原理是:高壓脈沖發生電路發射高壓脈沖,經電壓超聲換能器變換成超聲波信號,超聲波信號遇到雜質時產生反射波,再經過電壓超聲換能器變換為電壓信號,這個電壓信號是微弱的高頻窄脈沖。為使缺陷信號不失真,前置處理電路的頻帶寬度應足夠高,信號的采樣頻率應為幾十兆赫茲[1]。為了能夠測量幅度的變化值,在接收的信號進入放大器前,先經過已校準的衰減器,以便對信號幅度定量調節,用于不同信號幅度比較[2]。?
??? 傳統的多通道探傷設備需要多塊采樣模塊,這大大提高了系統價格。而TI公司的VCA8613和ADS5273兩款芯片是TI公司針對醫療和工業超聲波推出的多通道高性能芯片,可以滿足上述超聲應用的要求。?
??? 可變增益運放VCA8613的-3 dB帶寬是800 kHz~14 MHz,它集成了8個通道,并將傳統系統中低噪聲前置放大器(LNA)、壓控衰減器(VCA)、可編程增益放大器(PGA)、低通濾波器4個功能芯片集成在一起,集成后帶來的好處是減少了外界的干擾和噪聲,改進了動態范圍。這對整個輸入信號的質量至關重要,使整體系統性能大大提高。在3 V工作時每個通道的功耗僅為75 mW,輸入頻率為5 MHz時噪聲為1.2 nV每根號Hz,同時體積大大縮小,這對于開發便攜式產品具有巨大的優勢。?
??? VCA8613還提供了一個VCNTL管腳,其配合VCA和PGA可實現5 dB~50 dB的線性增益,如圖2所示。ATN是VCA的衰減系數,PG是PGA的增益系數,這兩個值可通過SPI口寫VCA8613的寄存器來實現(PG=01的圖沒有給出)。?
?
?
??? ADS5273是12 bit的高速AD,采樣速率能達到70 MHz,信噪比為70.5 dB,輸入是8通道差分輸入,輸出是8通道LVDS DDR串行輸出,其速度達到420 MHz,上下沿都有數據。這使得在PCB信號完整性上要求很高,要嚴格按照高速信號走線的要求進行設計。?
??? 在采用內部參考模式下,ADS5273的輸入端有1.4 V的共模,而VCA8613輸出有1 V的共模電壓,所以VCA8613和ADS5273間采用了交流耦合方式,TI建議串接的電阻可以從25 Ω~300 Ω,這保證了ADS5273不會過載。耦合圖如圖3所示。?
?
?
??? ADS5273也提供了一個SPI口,可以控制其內部寄存器。可以控制關閉和開啟任何一個通道及控制每一路輸出的電流大小,這對于功耗的控制非常有利。同時ADS5273還可以有幾種工作模式:正常輸出模式、同步模式、用戶定義模式等,非常適合用戶進行調試。?
??? VCA8613和ADS5273構成的模擬前端,整體噪聲比目前市場上性能最接近的同類產品要低30%,并且具有更低的功耗,其性能不僅能滿足便攜式設備的需求,還能滿足高通道密度、中程超聲波系統的要求,能實現更高、更完美的圖像質量。?
2.2 FPGA高速解串設計?
??? ADS5273的輸出除了8路LVDS DDR串行數據,還有420 MHz的差分時鐘線和70MHz的差分同步線,如圖4所示。在采用FPGA進行數據接收時,如此高速的信號在解串時需要有非常嚴格的時序要求。由于在解串的過程中,邏輯并不復雜,但對時序要求高,因為采用觸發器實現可以比較方便地進行觸發器的位置約束,所以采用最底層的觸發器來實現。?
?
?
??? 解串后的數據使用了片內FIFO進行緩存,這里采用了乒乓FIFO機制,在將采集得到的數據寫入其中一片時,后續模塊同時對另一片中的數據進行處理。FIFO緩存器由于其先進先出的特性,數據的讀寫都無需提供地址信號,簡化了電路的設計,提高了數據的吞吐率。?
3 基于FPGA+DSP+USB的數據采集通道的實現?
??? 本系統FPGA采用Xilinx公司Virtex系列的xc2vp7器件,實現了高速數據解串、SPI控制器、USB的SLAVE FIFO控制狀態機、DSP的EMIF接口控制和信號預處理。其中SPI控制器有3個,有兩個實現對VCA8613、ADS5273的SPI接口控制;另一個實現對DA5200的控制,產生VCA8613的VCNTL的控制電壓,實現VCA8613增益線性可控。如圖4所示。?
??? DSP進行數據處理,采用了TI公司的高性能數字信號處理芯片TMS320C6414,可支持1 GHz的時鐘頻率,計算能力為5 760 MIPS,同時提供了外部存儲器接口和增強的DMA控制器(EDMA),可與FPGA進行快速數據交換。DSP設計為FLASH BOOT方式。?
??? 高速數據采集系統采用USB總線與PC進行數據傳輸。USB控制芯片采用Cypress公司的CY7C68013。該芯片內含一個增強型8051處理器、一個串行接口引擎(SIE)、一個USB收發器、8 KB片上RAM、4 KB的FIFO存儲器以及一個通用可編程接口(GPIF)。Cypress公司為了方便FX2的開發,提供了固件程序框架,用戶只需少量修改即可完成固件設計,同時Cypress提供了通用的驅動程序。?
??? 分別配置USB控制芯片中的端點EP2和EP6為IN(輸入)模式和OUT(輸出)模式。設置了自動傳輸模式后,在用戶端,就可以把CY7C68013當做一個FIFO,不必關心其內部的運行情況,而只要根據FIFO的標志線對FIFO進行讀寫操作,即主機和數據采集板間的通信是透明的。首先由應用程序采用塊傳輸方式發送一個命令包到SLAVE FIFO中,FPGA讀取這個命令包緩存在FPGA的FIFO中;接著應用程序再用控制傳輸方式發送一個命令包給CY7C68013,由USB固件程序在通用IO管腳上給DSP發送一個外部中斷;DSP收到外部中斷后馬上啟動一次EDMA傳輸,將FPGA中FIFO的命令及參數數據讀到DSP的RAM中;DSP根據收到的命令和參數進行各項操作。?
4 性能測試?
4.1 可變增益運放的測試?
??? 用函數發生器產生50 mV、7 MHz的正弦波,輸入VCA8613的輸入端,衰減設為33 dB,PGA增益設為21 dB,VCNTL管腳電壓為1.0 V,用示波器觀察輸出波形,如圖5所示,得到了很好的放大波形。?
?
?
??? 同時測出,正確的放大波形的頻率在900 kHz~11 MHz間,在這范圍之外的波形就會產生失真,與TI公司文檔中提出的頻率在800 kHz~13 MHz間有些差別。?
4.2 AD測試及數據通道實驗?
??? ADS5273采用同步模式進行調試,對時序進行了嚴格的對準,然后切換到正常模式,采用C++ Builder設計了簡單的主機應用程序來采集正弦波數據,如圖6所示。?
?
?
??? 從測試結果看,超聲波信號采集、分析和成像處理系統的整體設計方案是正確的,整套系統可以滿足頻率范圍從20 MHz~70 MHz超聲波檢測采集和分析的需要,同時可以調整采樣速率,適應不同檢測頻率的記錄要求?
??? 本數據采集系統在以下方面進行了改進:首先采用了TI公司先進的VCA8613和ADS5273構成了信號調理和數據轉換電路,具有高信噪比、高精度、高速率和低功耗等優點;其次數字架構采用了USB+FPGA+DSP方式,對于復雜算法的應用具有優勢;而且采用FPGA接收8路高速串行LVDS DDR信號的實現,使得系統硬件的體積得到大大縮小。同時,本文設計的硬件架構具有通用性,只要稍做修改即可應用于各種場合,具有較高的實際工程應用價值。?
參考文獻?
[1] 孫芳,麥繼平.USB高速數據采集處理卡在超聲波無損檢測中的應用.儀器儀表用戶,2003.12,11(3):37-38.?
[2] 鄒毅,羅飛路.基于C8051F340的多通道超聲波無損檢測系統的設計.傳感器世界[J],2007,13(10):26-29.?
[3] 肖忠祥.數據采集原理[M].西安:西北工業大學出版社,2001.?
[4] 夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,2004.