基于DSP和FPGA的水聲定位系統(tǒng)主控機(jī)設(shè)計
近年來,海洋開發(fā)日益影響人們的生活和國家社會的發(fā)展。海洋油氣開發(fā)、海底光纜工程、海底礦產(chǎn)資源探測等等都離不開水下聲學(xué)定位的支持。目前廣泛采用的水下目標(biāo)定向系統(tǒng)是合作目標(biāo)定向系統(tǒng),合作目標(biāo)定向系統(tǒng)可分為合作目標(biāo)、聲傳感器陣列、信號處理和數(shù)據(jù)處理等部分。合作目標(biāo)即是被測量的目標(biāo),但它能發(fā)射用于測量的合作信號。聲傳感器陣列在空間布設(shè)成一定的幾何形狀,對合作信號進(jìn)行取樣,獲得目標(biāo)的原始數(shù)據(jù)。信號處理部分把接收到的采樣信號,轉(zhuǎn)變成能反映目標(biāo)聲場特征的有用信號,形成觀測數(shù)據(jù)。上述系統(tǒng)中信號處理和數(shù)據(jù)處理部分是定位系統(tǒng)的核心部分,本文提出一種水下合作目標(biāo)定向系統(tǒng)的數(shù)字信號處理硬件平臺解決方案以及基于該平臺的聲學(xué)定位算法的硬件實現(xiàn)方案,該平臺采用FPGA和DSP為主要芯片,具有體積小、實時性強(qiáng)等特點。
本文引用地址:http://butianyuan.cn/article/201610/308370.htm1 硬件總體設(shè)計方案
1.1 硬件工作原理
該數(shù)字信號處理硬件平臺應(yīng)用于水下應(yīng)答器的定位系統(tǒng)中,具有4路模擬信號輸入和1路模擬信號輸出。系統(tǒng)工作時,主控機(jī)獲得通過網(wǎng)絡(luò)接口獲得上位機(jī)(PC)一組命令輸出一組經(jīng)過編碼的模擬信號,相應(yīng)的應(yīng)答器發(fā)送一組固定頻率脈沖信號,主控機(jī)通過計算四元十字陣接收到的4路模擬信號可以得到應(yīng)答器的方位距離信息,同時主控機(jī)通過RS232接口和艦載MCU通信獲得GPS數(shù)據(jù)、運動參考單元等信息。主控機(jī)最后將計算得出的信息及串口接收到的信息傳給上位機(jī)。
1.2 硬件框圖
系統(tǒng)硬件框圖如圖1所示。根據(jù)水下應(yīng)答器定位的處理任務(wù)及實時性要求,選用美國亞德諾半導(dǎo)體技術(shù)有限公司(Analog Device Inc,ADI)的TigerSHARC系列ADSPTS201作為主處理器。它能夠?qū)?路A/D同步采集的模擬信號進(jìn)行有限沖擊響應(yīng)(Finite Impulse Response,F(xiàn)IR)濾波、副本相關(guān)、快速傅里葉變換等運算,檢測出有用信號,精確估計信號時延并得出應(yīng)答器方位距離信息,最終將計算結(jié)果通過網(wǎng)絡(luò)接口上傳給上位機(jī),實現(xiàn)目標(biāo)的定位。
2 DSP系統(tǒng)設(shè)計
2.1 高速信號處理器ADSPTS201芯片簡介
ADSPTS201 TigerSHARC DSP是一款性能極高的靜態(tài)超標(biāo)量處理器,其內(nèi)核工作頻率高達(dá)600 MHz,具有24 Mbit的片內(nèi)存儲,專對大的信號處理任務(wù)和通信結(jié)構(gòu)進(jìn)行優(yōu)化。一
個指令周期僅需1.6 ns,且DSP每周期能夠執(zhí)行多達(dá)4條指令,24個16位定點運算和6個浮點運算。4條相互獨立的128位寬度的內(nèi)部數(shù)據(jù)總線,每條總線分別連接6個4 Mbit內(nèi)部存儲器塊中的1個,提供四字的數(shù)據(jù)、指令及I/O訪問和33.6 GB/s的內(nèi)部存儲器寬度。
2.2 FLASH接口電路設(shè)計
ADSP TS20X系列處理器支持多種程序引導(dǎo)加載方式:1)EPROM引導(dǎo)方式通過處理器外部總線進(jìn)行程序引導(dǎo)和加載:2)主機(jī)引導(dǎo)方式通過主機(jī)或者將其他處理器作為主機(jī),實現(xiàn)處理器的程序引導(dǎo)和加載;3)鏈路口引導(dǎo)方式通過處理器的鏈路口實現(xiàn)程序的引導(dǎo)和加載;4)非引導(dǎo)方式通過外部不同的Strap信號,從內(nèi)部存儲器的不同地址開始執(zhí)行程序。
本系統(tǒng)采用第一種引導(dǎo)方式,外部存儲器選擇富士通公司的FLASH器件MBM29LV400TC,連接方式如圖2所示。
ADSPTS201的FLASH加載方式比較容易實現(xiàn)。在DSP復(fù)位期間,通過確實引腳BMS信號,確認(rèn)FLASH加載方式。ADSPTS201對FLASH的少些也比較容易實現(xiàn),硬件配置好之后只要將加載程序通過編譯生成的.ldr文件通過外部總線寫入外部存入空間中即可。
2.3 網(wǎng)絡(luò)接口電路設(shè)計
系統(tǒng)與上位機(jī)PC的交流是通過網(wǎng)口的方式實現(xiàn),本系統(tǒng)的網(wǎng)口采用DSP直接控制,網(wǎng)口芯片選用W5300。W5300是WIZnet公司的單芯片器件,采用0.18μmCMOS工藝,內(nèi)部集成10/100M以太網(wǎng)控制器、MAC層協(xié)議和TCP/IP協(xié)議棧,主要應(yīng)用于高集成、高穩(wěn)定、高性能和低成本的嵌入式系統(tǒng)中。
本系統(tǒng)中采用TCP的方式進(jìn)行通信,在通信前進(jìn)行握手保證下發(fā)的命令和上傳的數(shù)據(jù)能夠?qū)崟r的傳送。上位機(jī)向下發(fā)送命令和參數(shù)時,因為可以采用中斷的方式進(jìn)行,可以有
效的節(jié)約可編程輸入輸出口FLAG口(ADSPTS201只有4個FLAG口FLAG0—FLAG3)。
2.4 電源設(shè)計
ADSPTS201處理器要求有多個電源:VDD(內(nèi)部)、VDD_A(模擬PLL)、VDD_IO(外部IO)以及VDD_DRAM。其中對電源VDD濾波可以得到VDD_A。因為本系統(tǒng)選用時鐘頻率是600MHz,所以需要3種電壓值,分別是:1.2 V(典型電流2.9 A)、1.6 V(最大電流0.43 A)、2.5 V(典型電流0.15 A)。
系統(tǒng)輸入電壓是5 V,考慮到1.2 V需要的電流較大(FPGA的內(nèi)核電壓也是1.2 V),為了減少電源復(fù)雜度,采用一個DC/DC器件單獨供電,這里選用TI公司的TPS54612器件,輸入電壓是3~6 V,輸出電流可達(dá)到6 A,滿足系統(tǒng)要求。對于1.6 V和2.5 V,電流要求比較低,分別選用TI公司TPS55386和TPS72516器件,可以滿足系統(tǒng)要求。
另外,因為ADSPTS201的內(nèi)核電壓1.2 V的工作電流較大,達(dá)到了3 A,為了保證處理器能夠正常工作,必須給TS201安裝散熱裝置如散熱片等。
3 FPGA系統(tǒng)設(shè)計
由于ADSPTS201處理器的偏重于信號處理,控制能力較弱,所以本系統(tǒng)FPGA基本完成了所有邏輯控制、外部接口、外部通信的功能。而對于FPGA而言,這些工作都能夠輕松勝任,同時也能夠讓DSP專注于信號處理任務(wù)本系統(tǒng)選擇的是Altera公司的CycloneⅢ系列FPGA。
3.1 ADC模塊設(shè)計
本系統(tǒng)的AD轉(zhuǎn)換接口采用ADI公司AD7985芯片,采樣頻率可達(dá)到2.5 Msps,采樣精度即數(shù)據(jù)位數(shù)為16 bit,采用的SPI接口。
FPGA中,首先將AD采集到的串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)存入雙口RAM,當(dāng)雙口RAM半滿和全滿時分別發(fā)送一次IRQ0中斷,完成一次乒乓緩存,保證了ADC能夠一直保持采集狀態(tài)的同時處理器能夠有足夠時間進(jìn)行數(shù)據(jù)的處理,使系統(tǒng)具有實時性。同時ADC控制器寄存器映射到DSP某一地址上,啟動/停止AD轉(zhuǎn)換,其系統(tǒng)框圖如圖3所示。
3.2 DAC模塊設(shè)計
本系統(tǒng)的DAC器件選用的ADI公司的AD5664,采用SPI接口,串行時鐘可以達(dá)到70 MHz,精度是16 bit。
FPGA中的DAC邏輯接口的主要功能是將DSP寫入FPGA的發(fā)射信號的組號信息,然后通過查表得到寫入DAC寄存器的16位并行數(shù)據(jù),保證DAC器件通過D/A轉(zhuǎn)換產(chǎn)生所需組號對應(yīng)的信號。
3.3 PGA放大模塊設(shè)計
數(shù)字量控制增益的放大器也比較多,但是帶寬及增益能夠滿足的要求比較少,單片增益無法達(dá)到60 dB,因此需要兩片可編程增益放大器級聯(lián)以實現(xiàn)60 dB的可變增益。選擇可編程增益放大器還必須考慮前級濾波器輸出為雙極性信號,而后級的ADC要求為單極性輸入。因此綜合考慮,選擇PCA113和PGA103級聯(lián),實現(xiàn)系統(tǒng)的可變增益要求。
PGA103是通用型可編程增益放大器,由兩個CMOS/TTL兼容的輸入進(jìn)行數(shù)字編程選擇,增益為1、10或100。PGA113可提供1、2、5、10、20、50、100以及200等范圍增益,采用SPI寫入命令字控制。
FPGA中放大增益的控制采用AGC的方式,首先設(shè)置一個默認(rèn)倍數(shù),將ADC采集的數(shù)據(jù)存入DSP,計算其信號的能量,通過對比實驗室數(shù)據(jù),DSP將需要的倍數(shù)寫入FPGA建立的相應(yīng)的寄存器,最后通過SPI接口和控制線寫入PGA113和PGA103,實現(xiàn)可編程放大的功能。
4 系統(tǒng)驗證與結(jié)論
將本系統(tǒng)和應(yīng)答器合作,在消聲水池進(jìn)行試驗,將TS201處理器計算所得到的數(shù)據(jù)與MATLAB環(huán)境下的計算結(jié)果進(jìn)行對比,如圖4所示,可看出理論的互相關(guān)峰值和計算得出的互相關(guān)峰值是一致的,證明該計算結(jié)果的準(zhǔn)確性。
5 結(jié)束語
文中闡述了基于DSP+PGA的水聲定位系統(tǒng)主控機(jī)設(shè)計,并且實現(xiàn)了產(chǎn)生不同組號發(fā)射信號以及對4路接收通道信號的計算,成功的計算出了合作目標(biāo)的方位信息,具有實際的工程價值。
評論