1、引言
最佳聲納系統的設計需要從聲納波形、聲納信道和聲納接收機三方面進行綜合考慮[1]。在聲納信道一定的假設下,需要設計最佳聲納波形和最佳接收機,使聲納系統能在給定的聲納環境中對目標有最佳的檢測效果。工作在淺水中的主動聲納,其性能主要受限于混響級。根據波形選擇與信道匹配的原則,針對混響信道,所選的聲納波形應使其模糊度函數盡量與混響信道散射函數不重合,而與聲傳輸信號散射函數盡量重合[2]。基于這樣的原則,常用的聲納信號單頻信號(CW)、線性調頻信號(LFM)抑制混響的能力比較如下:在檢測靜止或低速目標時,LFM和短CW較長CW有更好的混響抑制能力,但短CW波只適合近距離目標;在檢測高速運動目標時,長CW脈沖是最合適的信號形式[2]。由此可見,主動聲納要完成目標捕獲、識別、跟蹤等不同任務,需要發射不同的聲納波形。同時針對遠距離、低速和高速運動等目標的不同情況,也需要靈活的選擇聲納波形。正是基于這樣一種需求,本文把具有強大控制能力的微處理器ARM與具有靈活波形產生能力的直接數字頻率合成技術(DDS)結合起來,用FPGA實現DDS技術,設計出了基于ARM和FPGA的聲納波形產生系統。
2、DDS基本原理
隨著微電子技術的迅速發展,具有頻率切換時間短、頻率分辨率高、相位變化連續、易實現信號的多種調制等諸多優點的DDS技術,有了廣闊的應用前景。DDS技術可以理解為數字信號處理中信號綜合的硬件實現問題,即給定信號幅度、頻率、相位等參數,產生所需要的信號波形。
DDS的基本結構包括:相位累加器、相位-幅值轉換電路、數模轉換電路及低通濾波器等。相位-幅值轉換電路根據轉換方式的不同可分為兩大類[4]:(1)ROM查找表法。ROM中存儲有不同相位對應的幅度值,可根據相位累加器輸出的相位值尋址ROM,輸出對應的幅值序列。 (2)計算法。對相位累加器輸出的相位值,通過數學計算的方法得到對應的幅值。常用的實時計算方法有泰勒級數求值法、反函數求值法、CORDIC算法等。
相位累加器是DDS電路中核心的模塊,在工程實踐上一般用數字全加器和數字寄存器的組合來實現,是一個典型的反饋電路。如圖1所示。
其中, 為頻率控制字, 為相位累加器的位數,fclk為系統參考時鐘。相位累加器的工作過程為:每來一個參考時鐘脈沖,頻率控制字 與相位寄存器輸出的相位數據累加一次,累加后的相位一方面反饋到全加器的輸入端,以使全加器在下一時鐘的作用下繼續與頻率控制字 相加;另一方面作為采樣地址值送入ROM查找表。如此循環,當相位累加器累加滿量后,就會產生一次溢出,ROM存儲器的地址正好循環一次,完成一個周期性的動作,這個周期就是DDS合成信號的周期,累加器的溢出頻率就是合成信號的頻率[8]。圖2為相位累加過程示意圖及對應輸出的占空比1:1的CW波。
一般地,DDS輸出信號頻率為一個參考時鐘周期內的相位增量,由此可得:
由圖2可知,相當與
rad,相位累加器溢出一次所歷經的采樣脈沖(參考時鐘)個數與DDS輸出一個周期的信號所包含的采樣脈沖個數是相等的,即:
將(1)式代入(2),可得:
由(3)可知,在參考時鐘一定的情況下,頻率控制字 決定了DDS輸出頻率。 實際上改變的是信號的相位增長速率, 越大,相位累加的曲線越陡峭,溢出一次所需的時間越短,對應輸出信號的周期也越小,輸出信號的頻率就越大;與此相反, 越小,相位累加的曲線越平坦,溢出一次所需的時間越長,對應輸出信號的周期也越大,輸出信號的頻率就越小;當 按線性變化時,輸出信號即為線性調頻信號,改變 的變化規律,就可實現不同規律的調頻,如雙曲、指數、對數調頻等。當 =1時,DDS輸出最小頻率:
(4)式也是所謂的頻率分辨率。
3、系統硬件實現
系統硬件設計采用模塊化結構,由通訊模塊、控制模塊、波形產生模塊和電源模塊四部分構成,如圖3所示。
3.1 控制模塊及通訊模塊
ARM作為控制模塊的核心,選用Philips公司的ARM7TDMI系列微處理器LPC2292。控制模塊和通訊模塊實現了本系統與外部主控設備(一般為PC機)的通信,通過RS232串口,并口EPP或USB通訊接口,接收主控設備發出的聲納波形信號的幅度、頻率、相位、帶寬等參數控制字,用以控制波形產生模塊產生相應的聲納波形。
3.2 波形產生模塊
DDS技術的實現依賴于高速、高性能的數字器件,一般有兩種方案,一種是使用DDS專用芯片,另一種用可編程邏輯器件FPGA自行設計。DDS專用芯片控制方式固定,價格較高,而FPGA以其速度高、規模大、可編程,以及有強大EDA軟件支持等特性,十分適合實現DDS技術。本系統用FPGA實現DDS技術。FPGA選用Altera公司的Cyclone II系列的EP2C20F484C8N。
4、系統軟件開發
本系統的軟件主要分為主控設備應用程序設計,FPGA波形設計部分和ARM控制部分。
主控設備應用程序是在X86平臺上,VC環境下開發的。主要功能是通過RS232串口,并口EPP或USB任何一種通訊接口,實現主控設備與ARM通信。ARM控制部分的程序實現對通訊接口的訪問,并實現對FPGA的控制。
FGPA波形設計過程采用自頂向下模塊化的結構,主要包括時鐘模塊、寄存器讀寫及控制模塊、DDS模塊,如圖4所示。
相位累加器是決定DDS性能的一個關鍵部分,相位累加器設計的好壞將直接影響到整個系統的性能,因此要從FPGA內部結構出發,設計出既節約系統資源,又能大幅度提高系統速度和性能的累加器結構[3]。在設計相位累加器的加法器模塊時不用庫中提供的lmp_add_sub模塊,而是采用流水線技術,使用Verilog HDL編程實現。流水線示意圖見圖5。
相幅轉換采用ROM查找表法實現。主要考慮的問題是FPGA內部存儲器容量的大小,而EP2C20內部有大量的ROM資源可利用,因此可直接調用lpm_rom模塊來實現。
關鍵字:ARM FPGA 聲納波形產生
FPGA模塊化的設計,為ARM對其配置提供了極大的方便,ARM可把FPGA視為外掛的一片SRAM,通過外部存儲器接口進行控制。
5、軟硬件設計需要注意的幾點
在系統軟硬件設計中需要注意以下兩點:
(1)當LPC2292通過外部存儲器接口(EMC)控制FPGA時,地址線的接法如圖6所示,即需要把LPC2292的地址線A0空出來不用。這是由于FPGA實現的波形產生模塊的數據位寬為16位,當LPC2292外部存儲器總線配置為16位時,A0地址需要空出來,當總線配置為32位時,地址A0,A1都需要空出來,當總線配置為8位時,地址從A0開始使用。
?。?)EP2C20F484C8N的焊接問題,此型號為FinleLine BGA封裝,在焊接的時候要注意芯片的錫球是否含鉛,含鉛與否決定采用何種工藝流程將器件安裝在PCB板上,無鉛封裝要求焊接溫度更高,工藝更復雜。Altera公司生產的所有無鉛元件以其產品序號最后的“N”標出。因此本系統選用的芯片為無鉛芯片,需要按無鉛工藝焊接,若按有鉛工藝焊接,將造成芯片的虛焊。
6、系統測試結果
對系統軟硬件進行的測試表明,系統達到了預期的設計指標,能輸出7路方波信號,頻率固定(CW波)或線性變化(LFM波),且各路信號可選擇關斷或選通。CW波的頻率在5~45kHz范圍內任意可調;LFM波在5kHz帶寬范圍內任意可調,中心頻率在5~45kHz范圍內任意可調;輸出脈沖信號寬度在0.5~100ms間任意可調,相鄰各路信號的相位可超前和滯后,可選擇發射功率,且本系統已成功應用于某工程項目中,工作正確可靠,得到了工程實際檢驗。圖7為Tektronix邏輯分析儀采集到的對應輸出的CW波。
7、結論
該系統很好的利用了ARM和FPGA兩者的長處,ARM集中實現主控設備與FPGA通信的橋梁作用,接收主控設備發出的聲納波形參數,并根據這些參數配置FPGA內部的寄存器;FPGA充分體現了它在系統成本、體積上的優勢,設計靈活、方便,FPGA的使用為系統的升級帶來了很大方便。同時通訊接口的多樣性,極大改善了人機接口,提高了系統的靈活性。