基于HPI接口的雙CPU水中目標探測平臺設(shè)計
自動目標識別系統(tǒng)ATR(Automatic Target Recognition)的基本功能是對目標進行探測、識別及分類[1],而水中目標探測平臺是一種特殊的自動目標識別系統(tǒng)。
本文引用地址:http://butianyuan.cn/article/201706/348360.htm水中ATR平臺一般需要對信號進行連續(xù)采集并且實時處理, 以獲取目標的特征信息,從而進行目標識別和參數(shù)估計。由于水中ATR平臺工作環(huán)境的特殊性,要求整個硬件系統(tǒng)具有極低的功耗。以往的水中ATR平臺一般采用ADC+DSP(Digital Signal Processor)+FPGA(Field Programmable Gates Array)構(gòu)架[2]來實現(xiàn)目標的檢測與識別。FPGA主要負責(zé)地址譯碼和數(shù)據(jù)緩存,這種設(shè)計結(jié)構(gòu)簡化了DSP軟件設(shè)計任務(wù)。但是由于FPGA工作電流一般是幾十毫安,導(dǎo)致系統(tǒng)功耗較大。為了克服傳統(tǒng)的基于單CPU的探測平臺功耗高、控制復(fù)雜等缺點,本系統(tǒng)采用了MCU+DSP的雙CPU的結(jié)構(gòu)。該結(jié)構(gòu)的關(guān)鍵在于快速高效地實現(xiàn)兩者之間通信。傳統(tǒng)的基于串行多通道緩沖串口McBSP(Multichannel Buffered Serial Ports)的通信模式通信帶寬利用率低,數(shù)據(jù)傳輸速率低,成為整個系統(tǒng)實時處理的瓶頸。為此,本文設(shè)計了基于HPI (Host Port Interface)接口的MSP430與DSP主從式雙CPU目標探測系統(tǒng),使ATR平臺滿足系統(tǒng)低功耗和實時性的需求。
1 HPI接口
目前比較常用的多CPU之間連接方式主要有兩種:直接互連和間接互連。直接互連主要通過SPI串口、HPI并口實現(xiàn)互連;間接互連主要通過FPGA、CPLD等可編程邏輯器件、雙端口RAM、FIFO存儲器等實現(xiàn)互連。
在ATR平臺中,主要考慮使用直接互連方法。一方面,沒有額外增加器件,降低了系統(tǒng)功耗;另一方面,大大簡化了多CPU之間的硬件連接。SPI接口方式連接簡單,但數(shù)據(jù)傳輸?shù)睦碚搨鬏斔俣戎荒苓_到12.5 MB/s,在一些實時性要求比較高的場合,數(shù)據(jù)傳輸成為整個信號處理能力提高的瓶頸,致使多CPU之間通信效率下降。而DSP的HPI接口提供了一個16 bit的并行數(shù)據(jù)接口,理論傳輸速度達到50 MB/s,遠高于串行接口傳輸速度。因此,選用HPI接口可以很容易地實現(xiàn)大容量數(shù)據(jù)的快速傳輸。通過HPI,主機可以訪問DSP內(nèi)部的雙訪問數(shù)據(jù)存儲器(DARAM),此時,DSP相當于主機的一個外設(shè)。
2 系統(tǒng)設(shè)計
根據(jù)工程設(shè)計要求,水中ATR平臺必須具備低功耗特點,因此選擇德州儀器公司的超低功耗微控制器MSP430F149作為系統(tǒng)的主CPU。其擁有5種低功耗模式,在低功耗模式LPM3下,只需要2.0 μA供電電流,采用3.3 V供電情況下,全速運行也只需要420 μA的電流。它還擁有多種時鐘模式,通過程序控制,可以靈活地選擇不同的時鐘來降低系統(tǒng)功耗[4]。選擇TI DSP家族中功耗優(yōu)化產(chǎn)品TMS320C55X系列中的TMS320VC5509A作為從CPU,其最高主頻為200 MHz,功耗僅為C54的1/6??梢愿鶕?jù)所需時鐘不同靈活選擇1.2 V、1.35 V和1.6 V內(nèi)核電壓[5],電壓越高,DSP最高主頻越大,功耗越大,在實際的設(shè)計過程中,根據(jù)算法實時性需求,靈活選擇內(nèi)核電壓以達到降低系統(tǒng)功耗的目的。
MSP430F149主要負責(zé)數(shù)據(jù)采集,DSP電源管理,以及一些運算量比較小的算法的實現(xiàn)(如系統(tǒng)中的預(yù)警檢測算法)TMS320VC5509A主要實現(xiàn)運算量較大的目標識別及參數(shù)估計算法。雙CPU之間通信采用HPI接口,實現(xiàn)主從機之間的無縫連接。具體硬件結(jié)構(gòu)框圖如圖1所示。
系統(tǒng)的基本工作流程是信號經(jīng)過模擬預(yù)處理之后,在單片機MSP430的控制下,利用其內(nèi)部的ADC對經(jīng)調(diào)理后的信號進行采樣。將采集到的數(shù)據(jù)做預(yù)警檢測,當預(yù)警發(fā)現(xiàn)可疑目標時啟動DSP,MSP430將需要分析的數(shù)據(jù)傳輸?shù)紻SP中,進行高階譜分析、小波變換等參數(shù)估計及特征提取算法,最后把結(jié)果傳回MSP430,再由單片機控制其他電路工作。
2.1 電源模塊
本模塊主要是由雙輸出電源調(diào)整芯片TPS73HD301和外圍器件構(gòu)成。具體硬件連接如圖2所示。
THP73HD301輸出3.3 V和1.2 V兩路直流電源,其使能引腳接入到MSP430的IO口,可以方便地實現(xiàn)DSP電源的控制,從而決定DSP的工作與否。只有在需要進行參數(shù)估計及特征提取等運算量大的運算時才啟動DSP。這樣的電源設(shè)計模式可以有效地控制系統(tǒng)功耗。因為系統(tǒng)的功耗主要集中在DSP上,而MSP430的功耗極低。
2.2 數(shù)據(jù)采集
系統(tǒng)數(shù)據(jù)采集主要由MSP430內(nèi)部的12 bit ADC12完成,其最高采樣率達200 KS/s;具有多種轉(zhuǎn)換模式,可以通過軟件靈活選擇;依據(jù)系統(tǒng)采樣要求,對ADC12內(nèi)部寄存器進行配置。配置的內(nèi)容主要包括采樣選擇通道、參考電壓、采樣時鐘、采樣模式、采樣保持時間等。根據(jù)采樣時序要求,需要配置的寄存器有ADC12CTL0、ADC12CTL1、ADC12MCTLx。本系統(tǒng)中選擇單通道重復(fù)采樣模式,采樣觸發(fā)源選擇Timer_A.OUT1,采樣頻率完全由Timer_A來決定,在ADC12的中斷服務(wù)程序中讀取采樣結(jié)果。只有需要進行數(shù)據(jù)搬移時才中斷MSP430的CPU,CPU上電工作,這種“Sleep/Wake”工作體制使得功耗較大的CPU工作時間大大減少,從而降低了系統(tǒng)功耗。
此外,HPI傳輸數(shù)據(jù)時,ADC數(shù)據(jù)存儲采用“乒乓操作”,在RAM中開辟一個緩沖區(qū),當該緩沖區(qū)半滿時,讀數(shù)據(jù)指針指向整個緩沖區(qū)開始,寫數(shù)據(jù)指針指向另外一半緩沖區(qū)開始。這樣的設(shè)計保證數(shù)據(jù)高效、快速地傳輸?shù)紻SP中。
2.3 信號處理模塊
數(shù)字信號處理的核心是TI公司的低功耗16 bit定點DSP-TMS320VC5509A,其擁有一個增強型主機接口(HPI),可以與主處理器(如PC、DSP、ARM、51系列、MSP430系列單片機)構(gòu)成主從構(gòu)架處理器,增強系統(tǒng)的靈活性和可操作性。
信號處理模塊的主要作用就是對采集到的數(shù)據(jù)作進一步的分析,以便更加可靠地探測到目標。信號處理算法主要包括有限帶寬聲源級估計、高階譜分析中的雙譜分析、小波分析等。此外,在搭建好硬件DSP平臺上編寫相應(yīng)的驅(qū)動程序如(與MSP430通信的HPI接口程序、I2C模式的Bootloader程序)。程序的開發(fā)均采用模塊化編程,以便于后續(xù)資源的利用。
在本系統(tǒng)中,為了進一步降低系統(tǒng)功耗,在編寫信號處理模塊程序時,采用“Sleep/Wake”工作體制,當數(shù)據(jù)需要實時處理時,系統(tǒng)各個模塊均處于工作狀態(tài),此時功耗達到最大值。數(shù)據(jù)處理完畢后系統(tǒng)進入低功耗或者DSP掉電模式,此時系統(tǒng)進入微功耗狀態(tài),功耗達到最低值;微功耗狀態(tài)和工作狀態(tài)之間的切換由系統(tǒng)內(nèi)部中斷源產(chǎn)生。雙CPU通信就是基于此機制,由HPI中斷源喚醒DSP,DSP開始工作,MSP430進入低功耗模式。DSP結(jié)束數(shù)據(jù)處理之后,中斷源喚醒MSP430,MSP430開始工作,DSP進入低功耗模式,這種交替的Sleep-Wake-Sleep模式使MSP430和DSP交替工作,DSP工作時間大大減少,有效地降低了系統(tǒng)功耗。延長了水中ATR平臺的工作時間。
3 HPI通信
3.1 HPI硬件連接
3.2 HPI軟件操作
在本文所述系統(tǒng)中,MSP430擁有對DSP的控制權(quán),HPI通信是基于中斷方式進行的:主機通過對采集到的信號進行簡單算法的目標檢測,如發(fā)現(xiàn)可疑目標,啟動DSP,開始通過HPI接口傳輸數(shù)據(jù)。傳輸結(jié)束之后,中斷DSP,DSP響應(yīng)中斷,開始進行復(fù)雜的特征提取算法檢測。處理結(jié)束之后,置HINT為高,中斷MSP430,DSP停機,掉電,主機繼續(xù)工作。
從機DSP相當于主機MSP430的一個存儲器映射,通過HPI接口,MSP430可以訪問C55X系列DSP內(nèi)部映射地址范圍為000060H~003FFFH 的DRAM,HPI不能直接訪問其他外設(shè)寄存器,如果主機需要從其他外設(shè)獲取數(shù)據(jù)時,則必須通過CPU或6個DMA通道中的一個,先將數(shù)據(jù)搬移到該DRAM中[6]。
HPI接口驅(qū)動程序主要由MSP430接口程序和DSP接口程序組成。MSP430和DSP的HPI接口通信流程圖如圖4所示。
4 系統(tǒng)調(diào)試及消聲水池實驗
在上述搭建的水中低功耗ATR硬件平臺上編程實現(xiàn)雙CPU之間HPI通信、預(yù)警檢測算法以及目標特征提取算法等,從而檢測系統(tǒng)硬件平臺的可靠性。
HPI通信是本硬件系統(tǒng)的關(guān)鍵所在,圖5中上側(cè)是MSP430集成開發(fā)環(huán)境IAR中ADC采集1 kHz正弦波的256點數(shù)據(jù),采樣率為4 096 Hz。圖5下側(cè)是DSP中存入DARAM中的數(shù)據(jù)通過CCS繪制的波形圖以及DRAM中地址為0x00060處的數(shù)據(jù)。通過對比發(fā)現(xiàn),MSP430中的數(shù)據(jù)經(jīng)過HPI接口傳輸?shù)搅薉SP的SDRAM中,由此可以看出HPI數(shù)據(jù)傳輸?shù)恼_性。
為了測試水中目標探測平臺的性能,在西北工業(yè)大學(xué)消聲水池對該平臺樣機進行了測試,測試現(xiàn)場布置如圖6所示。功耗測試結(jié)果如下:當探測系統(tǒng)處于預(yù)警檢測狀態(tài)時,系統(tǒng)平均功耗為0.28 mW;當探測系統(tǒng)處于全速工作狀態(tài)時,系統(tǒng)的峰值功耗為118.2 mW??紤]實際系統(tǒng)的工作時間,按照85%的預(yù)警時間+15%的全速工作時間計算,系統(tǒng)整機平均功耗為17.97 mW。系統(tǒng)測試結(jié)果如下:正確預(yù)警檢測概率為94%,A類目標識別率達到86.3%,B類目標識別率達到了87.2%,滿足設(shè)計要求。
本文在分析了自動目標探測平臺特點的基礎(chǔ)上,提出了一種基于HPI接口的MSP430+DSP主從結(jié)構(gòu)的目標探測硬件平臺,并實現(xiàn)了主從CPU的HPI通信、目標檢測和參數(shù)估計等算法。通過HPI接口通信,可以實現(xiàn)大容量數(shù)據(jù)快速高效的傳輸。采用這種雙CPU的構(gòu)架和使用“Sleep/Wake”編程工作體制大大降低了系統(tǒng)功耗,在采用電池供電的便攜式數(shù)據(jù)處理和目標探測識別平臺中具有很好的應(yīng)用前景。
評論