DSP和FPGA在衛(wèi)星測(cè)控多波束系統(tǒng)設(shè)計(jì)的應(yīng)用
一、引言
本文引用地址:http://www.ex-cimer.com/article/257748.htm衛(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í)最大程度的抑制無用的干擾和噪聲,并提取有用的信號(hào)特征以及信號(hào)所包含的信息。用于測(cè)向和波束合成的算法很多,選擇合適的算法來滿足系統(tǒng)的需求是一個(gè)重要方面。另一方面,該系統(tǒng)對(duì)實(shí)時(shí)性有一定的要求,要求在限定時(shí)間內(nèi)完成測(cè)向和波束合成權(quán)值的計(jì)算。
本文所介紹的衛(wèi)星測(cè)控多波束系統(tǒng)采用ADI公司新近推出的新一代TigerSHARCDSP芯片和FPGA器件相結(jié)合組成信號(hào)處理模塊,利用DSP的軟件編程完成測(cè)向和波束合成權(quán)值的計(jì)算,然后用FPGA器件將原始信號(hào)和權(quán)值進(jìn)行波束合成,在系統(tǒng)設(shè)計(jì)中我們使用兩片igerSHARCDSP芯片來完成。高性能的DSP芯片保證了數(shù)據(jù)能夠準(zhǔn)確及時(shí)的處理,也構(gòu)成了該系統(tǒng)的重要組成部分。
二、TigerSHARCDSP芯片介紹
TigerSHARC101S是AD公司新近推出的高性能定/浮點(diǎn)DSP,具有極高的處理能力,它采用靜態(tài)超標(biāo)量結(jié)構(gòu),既有超標(biāo)量處理器所具有的大容量指令緩沖池和指令跳轉(zhuǎn)功能,又可以在程序執(zhí)行前就把指令級(jí)并行操作用編譯器預(yù)測(cè)出來,其主要的性能指標(biāo)為:
(1)主頻為250MHz,即單指令周期為4ns;有2個(gè)對(duì)等的處理單元來支持SIMD(單指令多數(shù)據(jù))模式;
(2)系統(tǒng)內(nèi)部有3條獨(dú)立的128位數(shù)據(jù)總線,分別訪問各自的2Mbit存儲(chǔ)空間;
(3)系統(tǒng)外部數(shù)據(jù)總線為64bit,地址總線32bit,外部尋址空間為4G字;
(4)4個(gè)8bit的全雙工鏈路口,各自可以獨(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)充分利用TS101SDSP芯片的并行處理能力,采用多處理器的并行結(jié)構(gòu)來完成信號(hào)的處理。?
三、算法研究
用于測(cè)向和波束合成的算法很多,各種算法各有優(yōu)勢(shì),通過對(duì)這些算法的模擬和性能比較,最終選擇MUSIC(MultipleSignalCharacteristic)算法來實(shí)現(xiàn)測(cè)向,用基于線性約束最小二乘恒模算法進(jìn)行波束合成。MUSIC算法的基本原理是根據(jù)天線陣中不同位置的陣元所接收到的空間來波信號(hào)的樣本數(shù)據(jù)、天線位置參數(shù)和陣元的特性參數(shù),應(yīng)用現(xiàn)代譜估計(jì)理論和統(tǒng)計(jì)學(xué)理論及相應(yīng)的數(shù)學(xué)運(yùn)算,對(duì)來波的空間譜進(jìn)行估計(jì),并分析其能量的分布狀態(tà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í)器每500ms接收一次原始數(shù)據(jù)和結(jié)果數(shù)據(jù),并在500ms內(nèi)完成測(cè)向和波束合成權(quán)值的計(jì)算。數(shù)據(jù)交換按照兩個(gè)模塊制定的內(nèi)部協(xié)議來執(zhí)行。
(2)自動(dòng)跟蹤
系統(tǒng)初始或一般狀態(tài)為自動(dòng)跟蹤狀態(tài),來波的初始方位區(qū)域已給定,DSP模塊每500ms測(cè)向一次從而保證了系統(tǒng)能夠緊跟信號(hào)來向。
(3)多次測(cè)向
考慮到實(shí)際信號(hào)中存在的干擾和誤差,取多次測(cè)向中的平均值來作為實(shí)測(cè)方向。
(4)指定來波方向
指定來波方向后直接計(jì)算波束合成的權(quán)值,此時(shí)不利用接收的原始信號(hào)而是自己產(chǎn)生信號(hào)來進(jìn)行波束合成權(quán)值的計(jì)算。
(5)顯示通道波形或幅相差
DSP板將幅相差的數(shù)據(jù)回傳給控制終端后并在終端計(jì)算機(jī)上顯示。
(6)顯示合成結(jié)果
DSP模塊將波束合成的權(quán)值傳輸給波束合成模塊,波束合成模塊將權(quán)值和原始數(shù)據(jù)合成后回傳過來并在控制終端上顯示。
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芯片并行處理來實(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)部資源。
TigerSHARCDSP芯片硬件上可以同時(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)系來看,既是共享總線系統(tǒng),又是分布式系統(tǒng),兩片DSP芯片的外部地址總線、數(shù)據(jù)總線、控制總線直接相連,并且一起通過總線接口連接到VXI總線上,實(shí)現(xiàn)和其他模塊的數(shù)據(jù)通信。由于每片DSP內(nèi)部有6Mbit的雙口RAM,因此不需要外部數(shù)據(jù)存儲(chǔ)器。DSPA和DSPB的鏈路口也直接相連,兩片DSP可以通過鏈路口交換數(shù)據(jù)。DSP模塊程序采用EPROM方式引導(dǎo),兩片DSP共用一片548K×8bit的FLASHDSM2150作為程序存儲(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)和TigerDSP芯片的性能合理分配任務(wù)。由于主要的開銷是測(cè)向算法,所以解決好測(cè)向的并行算法是尤其重要的。在MUSIC算法中,判斷出信號(hào)個(gè)數(shù)后要分別對(duì)各個(gè)信號(hào)區(qū)域進(jìn)行峰值搜索,最后鎖定信號(hào)來向,系統(tǒng)最多可測(cè)4個(gè)不同來向的信號(hào),因此將峰值搜索的區(qū)域劃分后交給兩片DSP同時(shí)進(jìn)行搜索,可以節(jié)約大量的時(shí)間。測(cè)向和波束合成權(quán)值的計(jì)算不能同時(shí)進(jìn)行,DSPA通知DSPB進(jìn)行波束合成后又可以返回去從緩存區(qū)中讀取數(shù)據(jù),此時(shí)DSPB計(jì)算波束合成的權(quán)值,這樣又大大提高了并行度。控制終端對(duì)DSP模塊的命令是通過外部中斷讀入,在執(zhí)行控制終端的命令時(shí)將定時(shí)器時(shí)鐘關(guān)閉。
DSP模塊的程序框架用C語言來構(gòu)建,在C中插入?yún)R編來提高運(yùn)算效率,并充分利用TigerDSP芯片雙處理器核的SIMD結(jié)構(gòu),為了更好地對(duì)整個(gè)的程序進(jìn)行優(yōu)化,使用開發(fā)軟件中的工具Linearprofiling分析各個(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):
首先,高性能TigerSHARCDSP并行結(jié)構(gòu)保證了系統(tǒng)的性能,系統(tǒng)要求在500ms內(nèi)完成最多4個(gè)來波方向的測(cè)定和波束合成,使用兩片TigerSHARCDSP并行工作,在300ms內(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之間通信的矢量中斷來實(shí)現(xiàn)對(duì)系統(tǒng)的控制,為了使高速運(yùn)行的DSP能夠有效的與其他模塊、外部控制終端進(jìn)行通信,程序流程的設(shè)計(jì)經(jīng)過了仔細(xì)的推敲,為DSP的穩(wěn)定工作提供保障。
五、結(jié)束語
本文討論了衛(wèi)星測(cè)控多波束系統(tǒng)DSP模塊中算法的并行實(shí)現(xiàn)以及并行處理任務(wù)的分配,采取了一系列措施優(yōu)化DSP模塊的整體程序,并應(yīng)用了模塊化的思想,結(jié)構(gòu)設(shè)計(jì)合理,能夠滿足系統(tǒng)的需求。
評(píng)論