本文介紹了衛(wèi)星測(cè)控多波束系統(tǒng)DSP模塊的設(shè)計(jì)以及功能實(shí)現(xiàn),在DSP模塊的設(shè)計(jì)中使用了兩片TigerSHARC DSP芯片并行連接,在500 ms內(nèi)完成測(cè)向和波束合成權(quán)值的計(jì)算。高性能的DSP芯片和優(yōu)越的陣列信號(hào)處理算法保證信號(hào)能夠得到及時(shí)準(zhǔn)確的處理,滿足了系統(tǒng)的需求。
?。粒猓螅簦颍幔悖簦篢he design of the DSP module and function realization of multibeam system for satellite measurement and control is introduced.Two chips of TigerSHARC DSP that are connected in parallel are used in the design of DSP module.It takes 500ms to accomplish the DOA (Direction of Arrival) measurement and the power calculation of beamforming. High performance DSP and superior array signal processor algorithm make it possible to process the signal accurately and in time.The module satifies the requirement of system.
一、引言
衛(wèi)星測(cè)控多波束系統(tǒng)主要針對(duì)衛(wèi)星信號(hào)實(shí)施測(cè)控,它包括兩個(gè)方面:信號(hào)波達(dá)方向(DOA)的估計(jì)和數(shù)字波束合成。波達(dá)方向的估計(jì)是對(duì)空間信號(hào)的方向分布進(jìn)行超分辨估計(jì),提取空間源信號(hào)的參數(shù)如方位角、仰角等。數(shù)字波束合成也稱為空域?yàn)V波,主要是根據(jù)信號(hào)環(huán)境的變化自適應(yīng)地改變各陣元的加權(quán)因子,在期望信號(hào)方向形成主波束,在干擾信號(hào)方向形成零陷,降低副瓣電平, 目的是在增強(qiáng)期望信號(hào)的同時(shí)最大程度的抑制無(wú)用的干擾和噪聲,并提取有用的信號(hào)特征以及信號(hào)所包含的信息。用于測(cè)向和波束合成的算法很多,選擇合適的算法來(lái)滿足系統(tǒng)的需求是一個(gè)重要方面。另一方面,該系統(tǒng)對(duì)實(shí)時(shí)性有一定的要求,要求在限定時(shí)間內(nèi)完成測(cè)向和波束合成權(quán)值的計(jì)算。
本文所介紹的衛(wèi)星測(cè)控多波束系統(tǒng)采用ADI公司新近推出的新一代TigerSHARC DSP芯片和FPGA器件相結(jié)合組成信號(hào)處理模塊,利用DSP的軟件編程完成測(cè)向和波束合成權(quán)值的計(jì)算,然后用FPGA器件將原始信號(hào)和權(quán)值進(jìn)行波束合成,在系統(tǒng)設(shè)計(jì)中我們使用兩片TigerSHARC DSP 芯片來(lái)完成。高性能的DSP芯片保證了數(shù)據(jù)能夠準(zhǔn)確及時(shí)的處理,也構(gòu)成了該系統(tǒng)的重要組成部分。
二、TigerSHARC DSP芯片介紹
TigerSHARC101S 是AD公司新近推出的高性能定/浮點(diǎn)DSP,具有極高的處理能力,它采用靜態(tài)超標(biāo)量結(jié)構(gòu),既有超標(biāo)量處理器所具有的大容量指令緩沖池和指令跳轉(zhuǎn)功能,又可以在程序執(zhí)行前就把指令級(jí)并行操作用編譯器預(yù)測(cè)出來(lái),其主要的性能指標(biāo)為:
(1)主頻為250 MHz,即單指令周期為4 ns;有2個(gè)對(duì)等的處理單元來(lái)支持SIMD(單指令多數(shù)據(jù))模式;
(2)系統(tǒng)內(nèi)部有3條獨(dú)立的128位數(shù)據(jù)總線,分別訪問各自的2 Mbit存儲(chǔ)空間;
(3)系統(tǒng)外部數(shù)據(jù)總線為64 bit,地址總線32 bit,外部尋址空間為4G字;
(4)4個(gè)8 bit的全雙工鏈路口,各自可以獨(dú)立工作。在多處理器系統(tǒng)中,鏈路口可作為處理器之間的點(diǎn)到點(diǎn)通信,組成分布式的多處理器系統(tǒng)。14個(gè)DMA通道,可用于后臺(tái)傳輸;
(5)可擴(kuò)展性強(qiáng),共享并行總線可支持8個(gè)TS101S連在一起用于高速的數(shù)字信號(hào)處理。
由于測(cè)向和波束合成的算法計(jì)算量大,系統(tǒng)對(duì)信號(hào)的處理時(shí)間有要求,一片DSP不能完成任務(wù),本系統(tǒng)充分利用TS101S DSP芯片的并行處理能力,采用多處理器的并行結(jié)構(gòu)來(lái)完成信號(hào)的處理。
三、算法研究
用于測(cè)向和波束合成的算法很多,各種算法各有優(yōu)勢(shì),通過對(duì)這些算法的模擬和性能比較,最終選擇MUSIC(Multiple Signal Characteristic)算法來(lái)實(shí)現(xiàn)測(cè)向,用基于線性約束最小二乘恒模算法進(jìn)行波束合成。MUSIC算法的基本原理是根據(jù)天線陣中不同位置的陣元所接收到的空間來(lái)波信號(hào)的樣本數(shù)據(jù)、天線位置參數(shù)和陣元的特性參數(shù),應(yīng)用現(xiàn)代譜估計(jì)理論和統(tǒng)計(jì)學(xué)理論及相應(yīng)的數(shù)學(xué)運(yùn)算,對(duì)來(lái)波的空間譜進(jìn)行估計(jì),并分析其能量的分布狀態(tài),以確定空間來(lái)波的方向,也就是從背景噪聲中檢測(cè)出空間源信號(hào)并估計(jì)出信號(hào)的參數(shù)如方位角、仰角等,這種測(cè)向技術(shù)具有在較強(qiáng)干擾環(huán)境下同時(shí)對(duì)同信道內(nèi)多個(gè)信號(hào)的快速、高靈敏度、高精度測(cè)向的功能。算法實(shí)現(xiàn)流程圖1所示。
基于線性約束的最小二乘恒模算法是最小二乘算法的一種改進(jìn),它克服了最小二乘算法存在的干擾捕獲問題,利用線性約束的方法對(duì)初始權(quán)向量進(jìn)行優(yōu)化,使之在迭代過程中可以較快而準(zhǔn)確地收斂于我們所期望的信號(hào),并且不受信號(hào)功率大小的影響。該算法收斂速度快,輸出信號(hào)的信干噪比可以接近理想值,并且對(duì)幅相差不敏感,通過對(duì)陣列信號(hào)進(jìn)行算法仿真,最小二乘恒模算法性能可以達(dá)到系統(tǒng)需求。算法的流程如圖2所示。
四、DSP模塊設(shè)計(jì)
1.DSP模塊功能
系統(tǒng)使用一個(gè)C尺寸VXI標(biāo)準(zhǔn)機(jī)箱,插槽包括0槽、DSP模塊和波束合成模塊。DSP模塊負(fù)責(zé)測(cè)向和波束合成權(quán)值的計(jì)算,波束合成模塊將原始數(shù)據(jù)和權(quán)值進(jìn)行波束合成,模塊之間的數(shù)據(jù)交換使用LBUS??刂平K端(微機(jī))通過VXI總線給DSP模塊發(fā)送命令,DSP模塊以外部中斷2的方式響應(yīng)接收命令并實(shí)現(xiàn)控制中斷的對(duì)系統(tǒng)的控制,命令格式由內(nèi)部協(xié)議規(guī)定。
根據(jù)系統(tǒng)需求,DSP模塊要完成以下6個(gè)功能:
(1) 接收原始數(shù)據(jù)和合成結(jié)果
數(shù)據(jù)采集部分是由波束合成模塊完成的,DSP模塊定時(shí)器每500 ms接收一次原始數(shù)據(jù)和結(jié)果數(shù)據(jù),并在500 ms內(nèi)完成測(cè)向和波束合成權(quán)值的計(jì)算。數(shù)據(jù)交換按照兩個(gè)模塊制定的內(nèi)部協(xié)議來(lái)執(zhí)行。
(2)自動(dòng)跟蹤
系統(tǒng)初始或一般狀態(tài)為自動(dòng)跟蹤狀態(tài),來(lái)波的初始方位區(qū)域已給定,DSP模塊每500 ms測(cè)向一次從而保證了系統(tǒng)能夠緊跟信號(hào)來(lái)向。
(3)多次測(cè)向
考慮到實(shí)際信號(hào)中存在的干擾和誤差,取多次測(cè)向中的平均值來(lái)作為實(shí)測(cè)方向。
(4)指定來(lái)波方向
指定來(lái)波方向后直接計(jì)算波束合成的權(quán)值,此時(shí)不利用接收的原始信號(hào)而是自己產(chǎn)生信號(hào)來(lái)進(jìn)行波束合成權(quán)值的計(jì)算。
(5)顯示通道波形或幅相差
DSP板將幅相差的數(shù)據(jù)回傳給控制終端后并在終端計(jì)算機(jī)上顯示。
(6)顯示合成結(jié)果
DSP模塊將波束合成的權(quán)值傳輸給波束合成模塊,波束合成模塊將權(quán)值和原始數(shù)據(jù)合成后回傳過來(lái)并在控制終端上顯示。
DSP模塊程序框圖如圖3所示。
2.DSP模塊結(jié)構(gòu)
接收衛(wèi)星信號(hào)的陣列天線為6×6的面陣,多通道接收機(jī)完成信號(hào)的采樣,再經(jīng)過數(shù)字下變頻,送到處理單元的是36個(gè)通道的I、Q兩路共72路數(shù)據(jù)。由于陣列信號(hào)的數(shù)據(jù)量大,算法也比較復(fù)雜,我們需要使用2片TS101S芯片并行處理來(lái)實(shí)現(xiàn)。
并行系統(tǒng)的互連結(jié)構(gòu)包括2種方式:共享存儲(chǔ)器結(jié)構(gòu)和分布式結(jié)構(gòu)。共享存儲(chǔ)器結(jié)構(gòu)的連接方式是將所有的處理器都連到一個(gè)通道上,該通道一般是一種背板總線(如VXI總線),它既可以作為處理器間的通信媒介也可以作為處理器和共享存儲(chǔ)器間的數(shù)據(jù)通信。這種結(jié)構(gòu)數(shù)據(jù)傳輸?shù)膸掃h(yuǎn)遠(yuǎn)大于直接連接的通信端口,但是存在著總線競(jìng)爭(zhēng)問題,隨著處理器數(shù)目的增加,處理器平均的總線帶寬會(huì)降低,影響數(shù)據(jù)吞吐量。分布式結(jié)構(gòu)處理器之間通過鏈路口進(jìn)行直接的數(shù)據(jù)傳輸,鏈路口在處理器之間提供了高寬帶的點(diǎn)對(duì)點(diǎn)通信。這種連接完全為了處理器之間的通信,但是在數(shù)據(jù)傳輸時(shí)會(huì)占用其他DSP芯片的內(nèi)部資源。
TigerSHARC DSP芯片硬件上可以同時(shí)支持這兩種并行體系結(jié)構(gòu),前者通過共享外部地址數(shù)據(jù)控制總線方式實(shí)現(xiàn),后者通過DSP間的專用的鏈路口點(diǎn)對(duì)點(diǎn)的互連實(shí)現(xiàn)。本文所設(shè)計(jì)的DSP模塊結(jié)構(gòu)從通信網(wǎng)絡(luò)的連接關(guān)系來(lái)看,既是共享總線系統(tǒng),又是分布式系統(tǒng),兩片DSP芯片的外部地址總線、數(shù)據(jù)總線、控制總線直接相連,并且一起通過總線接口連接到VXI總線上,實(shí)現(xiàn)和其他模塊的數(shù)據(jù)通信。由于每片DSP內(nèi)部有6 Mbit的雙口RAM,因此不需要外部數(shù)據(jù)存儲(chǔ)器。DSP A和DSP B的鏈路口也直接相連,兩片DSP可以通過鏈路口交換數(shù)據(jù)。DSP模塊程序采用EPROM方式引導(dǎo),兩片DSP共用一片548K×8bit的FLASH DSM2150作為程序存儲(chǔ)器。DSP模塊框圖如圖4所示。
整個(gè)DSP模塊的處理時(shí)間分為3個(gè)時(shí)間段,分別為從緩沖中讀取數(shù)據(jù)時(shí)間、測(cè)向時(shí)間和波束合成權(quán)值計(jì)算時(shí)間,其中主要的開銷是測(cè)向的時(shí)間。為了使DSP模塊具備更高的效率,必須根據(jù)該模塊的結(jié)構(gòu)和Tiger DSP芯片的性能合理分配任務(wù)。由于主要的開銷是測(cè)向算法,所以解決好測(cè)向的并行算法是尤其重要的。在MUSIC算法中,判斷出信號(hào)個(gè)數(shù)后要分別對(duì)各個(gè)信號(hào)區(qū)域進(jìn)行峰值搜索,最后鎖定信號(hào)來(lái)向,系統(tǒng)最多可測(cè)4個(gè)不同來(lái)向的信號(hào),因此將峰值搜索的區(qū)域劃分后交給兩片DSP同時(shí)進(jìn)行搜索,可以節(jié)約大量的時(shí)間。測(cè)向和波束合成權(quán)值的計(jì)算不能同時(shí)進(jìn)行,DSP A通知 DSP B進(jìn)行波束合成后又可以返回去從緩存區(qū)中讀取數(shù)據(jù),此時(shí)DSP B計(jì)算波束合成的權(quán)值,這樣又大大提高了并行度??刂平K端對(duì)DSP模塊的命令是通過外部中斷讀入,在執(zhí)行控制終端的命令時(shí)將定時(shí)器時(shí)鐘關(guān)閉。
DSP模塊的程序框架用C語(yǔ)言來(lái)構(gòu)建,在C中插入?yún)R編來(lái)提高運(yùn)算效率,并充分利用TigerDSP芯片雙處理器核的SIMD結(jié)構(gòu),為了更好地對(duì)整個(gè)的程序進(jìn)行優(yōu)化,使用開發(fā)軟件中的工具Linear profiling 分析各個(gè)子函數(shù)所占用的時(shí)間比例,從而優(yōu)化程序的瓶頸。并行的系統(tǒng)設(shè)計(jì)和一些優(yōu)化措施使DSP模塊的運(yùn)行時(shí)間能夠滿足系統(tǒng)設(shè)計(jì)的需求。
3.DSP模塊設(shè)計(jì)的特點(diǎn)
在衛(wèi)星測(cè)控多波束系統(tǒng)DSP模塊的設(shè)計(jì)中我們考慮了多方面的因素,可以歸納為以下幾個(gè)特點(diǎn):
首先,高性能TigerSHARC DSP并行結(jié)構(gòu)保證了系統(tǒng)的性能,系統(tǒng)要求在500 ms內(nèi)完成最多4個(gè)來(lái)波方向的測(cè)定和波束合成,使用兩片Tiger SHARC DSP并行工作,在300 ms內(nèi)就可以完成,使得系統(tǒng)有充裕的時(shí)間去響應(yīng)控制終端的命令。
其次,性能優(yōu)越的測(cè)向和波束合成算法保證了系統(tǒng)的穩(wěn)定工作,測(cè)向的精度保證在0.5°范圍內(nèi),信號(hào)經(jīng)過波束合成后,將噪聲信號(hào)加以抑制,信噪比有了很大的提高。并且在雙DSP處理器中并行分配任務(wù),提高了程序運(yùn)行效率。
第三,DSP模塊和波束合成模塊之間以及和外部控制終端之間完備的通信協(xié)議保證了數(shù)據(jù)和命令能構(gòu)準(zhǔn)確的傳輸。這種通信協(xié)議是根據(jù)實(shí)際需要自定義的,并且具有一定的容錯(cuò)功能,保證了各個(gè)模塊之間接口的正常運(yùn)行。
最后,系統(tǒng)控制流程設(shè)計(jì)合理,我們使用了DSP的外部中斷1、2、定時(shí)器中斷,以及兩片DSP之間通信的矢量中斷來(lái)實(shí)現(xiàn)對(duì)系統(tǒng)的控制,為了使高速運(yùn)行的DSP能夠有效的與其他模塊、外部控制終端進(jìn)行通信,程序流程的設(shè)計(jì)經(jīng)過了仔細(xì)的推敲,為DSP的穩(wěn)定工作提供保障。
五、結(jié)束語(yǔ)
本文討論了衛(wèi)星測(cè)控多波束系統(tǒng)DSP模塊中算法的并行實(shí)現(xiàn)以及并行處理任務(wù)的分配,采取了一系列措施優(yōu)化DSP模塊的整體程序,并應(yīng)用了模塊化的思想,結(jié)構(gòu)設(shè)計(jì)合理,能夠滿足系統(tǒng)的需求。
參考文獻(xiàn)
[1]VISUALDSP++3.0 C/C++ Compiler and Library Manual for TigerSHARC DSPs[Z].Analog Devices Inc,2002.
[2]ADSP-TS101 TigerSHARC Hardware Reference[Z].Analog Devices Inc,2003.
[3]ADSP-TS101 TigerSHARC Processor Programming Reference[Z].Analog Devices Inc,2003.
[4]劉書明,羅軍輝. ADSP SHARC系列DSP應(yīng)用系統(tǒng)設(shè)計(jì)[M]. 北京:電子工業(yè)出版社,2002.