基于DSP和光纜通信的遠程高速數(shù)據(jù)采集
隨著數(shù)字信號處理技術(shù)及通信技術(shù)的發(fā)展,DSP技術(shù)應(yīng)用越來越廣泛。將DSP技術(shù)應(yīng)用于高速數(shù)據(jù)采集,可以對采集數(shù)據(jù)進行實時處理,同時將高速光纜通信技術(shù)應(yīng)用于遠程數(shù)據(jù)采集的數(shù)據(jù)傳遞,能夠使采集的大量信號高速可靠地傳遞至主控計算機作進一步的分析處理。本文介紹了一種使用TMS320VC5402作為處理器,用高速A/D轉(zhuǎn)換芯片進行數(shù)據(jù)采集與處理,使用光纜進行數(shù)據(jù)通信的高速遠程數(shù)據(jù)采集板。將此采集板應(yīng)用于油田超聲波測井系統(tǒng),為探測油井下內(nèi)壁、壁厚以及油井外固井水泥環(huán)的情況提供充分的數(shù)據(jù)基礎(chǔ)。
作為一個使用DSP芯片作為處理器的遠程數(shù)據(jù)采集系統(tǒng),不但要完成數(shù)據(jù)的采集工作,而且還要能夠?qū)?shù)據(jù)進行實時處理,然后將數(shù)據(jù)傳遞至遠處控制端。同時,數(shù)據(jù)采集部分還要能夠接收遠端控制端發(fā)出的命令,及時對數(shù)據(jù)采集進行總體上的控制。
此遠程數(shù)據(jù)采集系統(tǒng)需要完成的基本功能是:接收地面主控計算機發(fā)出的控制命令,自動完成多路超聲波電信號的采集工作:將信號放大,濾波處理后數(shù)字化,經(jīng)過短暫存儲及初步處理,將數(shù)字化的超聲波信號分組,傳遞至地面主控計算機,供分析軟件進行數(shù)據(jù)分析。
?。?系統(tǒng)硬件的設(shè)計
整個系統(tǒng)由數(shù)據(jù)采集和計算機控制卡兩部分組成。數(shù)據(jù)采集部分完成超聲波信號的放大、濾波、模數(shù)轉(zhuǎn)換以及處理和傳輸控制;計算機控制卡接收由數(shù)據(jù)采集卡經(jīng)過光纜傳遞的數(shù)據(jù)信號,送至計算機PCI總線,由處理軟件進行數(shù)據(jù)處理。PCI控制卡經(jīng)過控制軟件向數(shù)據(jù)采集卡發(fā)送數(shù)據(jù)采集命令,使數(shù)據(jù)采集卡根據(jù)命令改變工作狀態(tài)。
?。保?數(shù)據(jù)采集卡的硬件設(shè)計
圖1為數(shù)據(jù)采集卡部分的電路原理圖。由于數(shù)據(jù)采集板工作在惡劣的環(huán)境中,要求硬件電路保證完成盡可能多工作的同時,使用盡可能少的器件,以保證采集板能夠長時間地穩(wěn)定工作。
數(shù)據(jù)采集板的核心處理器是TMS320VC5402。該芯片是TI公司TMS320VC54x系列的DSP芯片,是為實現(xiàn)低功耗、高性能而專門設(shè)計的定點DSP芯片,主要應(yīng)用在通信、數(shù)據(jù)采集等系統(tǒng)中。該芯片采用CMOS制造工藝,屬于第七代DSP產(chǎn)品,它的工作頻率可以根據(jù)需要進行調(diào)整。 由于TMS320VC5402芯片內(nèi)部不帶FLASH程序存儲器,因此,在采集板上要讓FLASH存儲器保存程序。使用的芯片是SST39VF400A。此芯片是Silicon Storage Technology生產(chǎn)的256K字節(jié)的16位FLASH存儲器。在電路啟動時,由TMS320VC5402內(nèi)部ROM中的引導程序?qū)⒋鎯υ冢疲蹋粒樱戎械墓ぷ鞒绦蜣D(zhuǎn)移到SRAM中,提高程序運行效率,降低對外部ROM的速度要求。這樣,不僅可以提高系統(tǒng)硬件的成本,而且可以提高系統(tǒng)的整體抗干擾性。
?。裕停樱常玻埃郑茫担矗埃?DSP芯片內(nèi)帶16K字節(jié)的RAM,其中一部分用來運行程序,另外一部分可以用來存儲臨時數(shù)據(jù),片內(nèi)的RAM存儲器不能滿足數(shù)據(jù)存儲容量的要求,因此在采集板上還要擴充一部分SRAM。此采集卡上使用的SRAM芯片為CY7C1021。此芯片是Cypress公司生產(chǎn)的16位64K字節(jié)的靜態(tài)RAM存儲器,采用CMOS工藝,具有自動低功耗模式的功能,降低系統(tǒng)功耗,保證低散熱量。
?。粒霓D(zhuǎn)換電路使用TLC5540模數(shù)轉(zhuǎn)換芯片,這是TI公司的8位A/D轉(zhuǎn)換器,它的最高轉(zhuǎn)換速率可以達到每秒40兆字節(jié)。TLC5540采用了一種改進的半閃結(jié)構(gòu),使用CMOS工藝,因而大大減少了器件中比較器的數(shù)量,而且在高速轉(zhuǎn)換的同時,能夠保持低功耗,在推薦的工作條件下,其功耗僅為75mW。使用TLC5540進行數(shù)據(jù)采集的控制信號由TMS320VC5402產(chǎn)生,采樣時鐘經(jīng)過5402的CLKOUT端口分頻得到。當采集卡進行數(shù)據(jù)采集時,首先DSP芯片選通要采集的模擬信號通路,將經(jīng)過處理的模擬信號送至TLC5540的模擬輸入端口,然后DSP芯片通過地址使能轉(zhuǎn)換芯片TLC5540,控制轉(zhuǎn)換芯片進行模數(shù)轉(zhuǎn)換,將模擬信號轉(zhuǎn)換為數(shù)據(jù)量,送至數(shù)據(jù)總線。由于TLC5540是8位模數(shù)轉(zhuǎn)換芯片,因此只將8位數(shù)字信號送至數(shù)據(jù)總線的低8位上,由DSP芯片進一步處理。
遠程數(shù)據(jù)采集,采集端與控制端之間必須要使用高速通信電路,使得兩端能夠及時通信。在本采集系統(tǒng)中,為解決高速數(shù)據(jù)傳輸?shù)膯栴},選用了光纜進行數(shù)據(jù)傳輸?,F(xiàn)代光通信技術(shù)的發(fā)展,已經(jīng)使光纖通信的速率可以達到每秒鐘幾G比特,中繼距離也可達幾百千米,因此使用光纜進行數(shù)據(jù)通信,無疑是解決高速率遠距離數(shù)據(jù)傳輸問題的好方法。由于光纜本身的物理性質(zhì),其自身比較脆弱,但是可以在光纖外面使用鋼纜或鋼絲網(wǎng)進行加固,使得光纜的外部物理特性大大增強,保障數(shù)據(jù)的可靠傳輸。 電氣電路和光纜之間的接口使用光端機,光端機的輸入輸出接口是串行通信接口,使用非平衡傳輸方式進行數(shù)據(jù)輸入輸出。在DSP芯片與光端機通信模塊之間,必須將總線上的并行數(shù)據(jù)串行化,轉(zhuǎn)換為串行數(shù)據(jù),以便光端機進行光通信。DSP接收信號時必須將光端機輸出的串行信號反串行化,轉(zhuǎn)換為并行數(shù)據(jù),進行處理。光纜通信的速率比處理器的處理速率要高,因此,在串行器、反串行器和處理器的數(shù)據(jù)總線之間要加入先進先出存儲器,將數(shù)據(jù)暫時存儲,等積累了一定數(shù)量的數(shù)據(jù)之后,由串行化器進行發(fā)送或者處理器接收反串行化器送來的光纜上的數(shù)據(jù)。 在數(shù)據(jù)總線和串行化器/反串行化器之間加入FIFO,對于數(shù)據(jù)傳輸效率有很大的提高。
?。桑模裕罚玻郑埃彩牵桑模怨旧a(chǎn)的低電壓CMOS異步先進先出存儲器,有字節(jié)的存儲空間,可以保存1K的9位字節(jié)數(shù)據(jù)。在本設(shè)計中,數(shù)據(jù)總線上的數(shù)據(jù)為八位數(shù)據(jù),因此只使用了FIFO中的低八位數(shù)據(jù)作為有效數(shù)據(jù),第九位數(shù)據(jù)用作校驗位。串行化與反串行化芯片選用了TI公司的SN65LV1021/1212,這兩個芯片是10:1和1:10串行化/反串行化芯片,并行數(shù)據(jù)可以在10MHz~40MHz時鐘下傳輸,相應(yīng)的串行數(shù)據(jù)可以在100bps~400bps的速率下傳輸。SN65LV1021/1212均能夠工作在低功耗方式下,不傳遞數(shù)據(jù)時,可以降低整個系統(tǒng)的功耗,輸出數(shù)據(jù)總線可以保持高阻抗狀態(tài)。 由于TMS320VC5402的通用I/O接口比較少,因此數(shù)據(jù)采集板上使用了一片CPLD作為通用I/O的擴展接口。DSP芯片將A/D轉(zhuǎn)換器、FIFO、串行化/反串行化器等器件都作為統(tǒng)一的外設(shè),對每一外設(shè)進行地址編碼。通過CPLD將DSP的外設(shè)操作信號轉(zhuǎn)換為對具體芯片的控制信號。這樣在程序的效率以及整體電路工作的協(xié)調(diào)性上都有了很大的提高。
?。保?地面PCI總線控制卡的硬件設(shè)計
為了方便地面計算機對數(shù)據(jù)采集卡進行實時控制,高速接收數(shù)據(jù),因此設(shè)計一塊PCI卡,將從光纜送來的數(shù)據(jù)直接送至計算機的PCI數(shù)據(jù)總線是一種高效且實用的方法。 光端機接收光纜傳遞的光信號,由反串行化器將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù),送至存儲器進行暫時存儲,再將整個數(shù)據(jù)段送至計算機PCI總線,由軟件進行處理并存儲至硬盤。
?。校茫煽ǖ闹饕酒瑸椋校蹋毓镜模校茫桑梗埃担?。該芯片在PCI總線接口芯片市場有相當?shù)姆蓊~,是在PCI從模式接口設(shè)計卡中得到廣泛應(yīng)用的接口芯片,可以提供用于適配卡的小型而高性能的PCI總線目標,實現(xiàn)PCI數(shù)據(jù)總線上的33MHz的數(shù)據(jù)傳輸。PCI9052的主要特點有:
?。ǎ保┻M行數(shù)據(jù)接收時,PCI卡通過光端機接收由光纖送來的光信號,轉(zhuǎn)換為串行電信號由光端機接口送出,經(jīng)過SN65LVDS1212反串行器轉(zhuǎn)換成并行信號,由控制器送入到FIFO中緩存。當接收完一個數(shù)據(jù)包后,由PCI9052將數(shù)據(jù)包中的數(shù)據(jù)送到計算機PCI總線,系統(tǒng)軟件將接收的數(shù)據(jù)進行分析,并根據(jù)需要保存到硬盤。
?。ǎ玻┊斢嬎銠C控制采集卡進行數(shù)據(jù)采集時,計算機軟件向總線發(fā)出命令,PCI卡接收到系統(tǒng)軟件送至PCI總線上的數(shù)據(jù)后,轉(zhuǎn)送到串行器的數(shù)據(jù)總線上,將并行數(shù)據(jù)轉(zhuǎn)化為串行數(shù)據(jù),經(jīng)光端機轉(zhuǎn)化為光信號,送至光纜向采集卡進行傳輸。
?。?系統(tǒng)軟件的設(shè)計
遠程數(shù)據(jù)卡的實時系統(tǒng)控制軟件包括兩部分:采集卡上DSP控制及數(shù)據(jù)處理軟件;上位機接收并處理DSP發(fā)送來的數(shù)據(jù)的實時處理控制軟件。
固化在采集板上的DSP處理程序是軟件部分的主體,程序主流程圖如圖2所示。
軟件采用模塊化的設(shè)計方法,其中包括采集卡的初始化、定時器處理、數(shù)據(jù)采集控制、數(shù)據(jù)處理,以及接收和發(fā)送數(shù)據(jù)幾個模塊。采集卡啟動DSP芯片首先通過BOOT LOADER程序?qū)⒋鎯υ冢疲蹋粒樱戎械某绦虼a轉(zhuǎn)移到RAM中,高速運行程序。程序首先進行初始化,然后由DSP本身完成對數(shù)據(jù)的自動采集,計算機并不參與采集的具體過程。采集后的數(shù)據(jù)暫時存儲在RAM中,當采集到一定數(shù)量的一組數(shù)據(jù),由DSP芯片對數(shù)據(jù)根據(jù)需要進行處理。例如,對信號進行互相關(guān)、自相關(guān)、功率譜、互譜、壓縮算法等分析計算,減少傳輸過程以及上位機的負擔。經(jīng)過處理獲得數(shù)據(jù),DSP芯片將其按照一定的協(xié)議送至傳輸總線,控制串行化器通過光端機將其傳送至上位主機,以進一步分析、處理數(shù)據(jù)。DSP程序使用CCS集成開發(fā)環(huán)境開發(fā),編程語言使用C語言與匯編語言相結(jié)合的方法,程序整體使用C語言編寫以提高程序開發(fā)周期。對于實時性要求強或比較復雜的算法,為提高DSP代碼芯片的執(zhí)行效率,使用匯編語言編寫。
上位機的軟件編寫包括PCI卡驅(qū)動程序和應(yīng)用程序兩部分。在Windows操作系統(tǒng)下,普通用戶不能進行直接讀寫物理地址和讀取系統(tǒng)分配的資源信息的底層硬件操作,因此,在硬件設(shè)施完備的基礎(chǔ)上,編寫PCI接口卡的驅(qū)動程序,是上位機工作軟件中的一個重要環(huán)節(jié)。使用Jungo公司的Windriver開發(fā)工具編寫本PCI卡的驅(qū)動程序。該程序為一般的用戶應(yīng)用程序提供了一個很好的底層硬件接口,對于實時性要求不很嚴格的情況下,應(yīng)用程序能夠直接對底層硬件進行操作。由于本系統(tǒng)的數(shù)據(jù)采集工作完全由采集卡上的DSP自動控制完成,計算機對采集卡的控制只是一些工作方式的控制選擇,因此對于PCI卡的時序要求并不十分嚴格,使用Windriver開發(fā)PCI卡的驅(qū)動程序完全可以滿足需要。 用戶應(yīng)用程序使用高級語言進行開發(fā),通過Windriver提供的接口,程序控制者可以利用對PCI卡的操作向采集卡發(fā)出控制命令,同時接收PCI卡送來的采集數(shù)據(jù)信息,對數(shù)據(jù)進一步處理、存儲。 3 試驗結(jié)果 在實際的油井測量實驗中,選用1MHz的超聲波信號,對5.5英寸的套管井進行測量,用10MHz的采樣率對超聲波信號進行采樣。采集接收到的超聲波數(shù)據(jù),計算機上得到的數(shù)據(jù)經(jīng)過轉(zhuǎn)換和處理,可以為超聲波測井提供充分的依據(jù)。如圖3所示。
?。?設(shè)計中需要注意的問題 采集卡的設(shè)計過程中,主要問題在于硬件電路的設(shè)計。DSP芯片是高速數(shù)據(jù)處理芯片,外部總線的速率若達到40MHz,內(nèi)部的時鐘則可以達到更高。因此設(shè)計上要充分考慮DSP芯片引腳的外接方式和工藝特性。采集卡上有數(shù)字和模擬兩種信號系統(tǒng),在設(shè)計時要將數(shù)字信號和模擬信號電氣上相互隔離,距離要盡量遠,減少兩種信號之間相互干擾。在每個元件的電源引腳附近都要加上一個小濾波電容,減小電源的不穩(wěn)定因素。系統(tǒng)的電源設(shè)計要使用響應(yīng)快、穩(wěn)定性好、精度高的電源芯片,電源輸出加上大的濾波電容以提高整個電路板的穩(wěn)定性。盡量選用貼片封裝的元件,減小元件本身散熱量的同時增加電路焊接的可靠性以及抗干擾性。元件分布版面設(shè)計時,元件在電路板上的質(zhì)量分布要均勻,以增加電路板的機械性能。
本文介紹了一種基于DSP芯片、通過光纜進行數(shù)據(jù)傳遞的高速遠程數(shù)據(jù)采集系統(tǒng),設(shè)計了一套完整的遠程高速數(shù)據(jù)采集方案。該方案在強大的DSP處理器控制下利用高速A/D芯片完成多路模擬信號的分時采集工作,采集后的數(shù)據(jù)可以進行實時處理與高速傳輸。將該數(shù)據(jù)采集卡應(yīng)用于油田超聲波測井系統(tǒng),對超聲波測井信號進行高速采集,送至計算機進行數(shù)據(jù)分析處理,為測井工作提供了充足的數(shù)據(jù)基礎(chǔ)。
評論