基于DSP的并行信號處理系統(tǒng)設(shè)計(jì)方案
4 系統(tǒng)的實(shí)現(xiàn)
首先估計(jì)一下單元平均恒虛警檢測的運(yùn)算量:整個距離(最大120 km,7 MHz采樣率)數(shù)據(jù)量為5.6 k個復(fù)數(shù),1片ADSP2106X處理需要的時間大約是3.6 ms,由于相干處理周期為1 ms,因而我們在距離上分成4段,分別用4片ADSP2106X處理,這樣還有0.1 ms的空閑時間。這里為了每片DSP處理數(shù)據(jù)方便,需要每段處理相互獨(dú)立,因此段間要有重疊,以保證每一段CFAR的左右單元平均可以獨(dú)立進(jìn)行。
?。?)對于恒虛警檢測的處理來說,只有2種工作方式:MTI和MTD,分別對應(yīng)單元平均恒虛警檢測和二維恒虛警檢測。
?。?)系統(tǒng)內(nèi)各部分均采用數(shù)據(jù)流方式驅(qū)動,數(shù)據(jù)包的格式為:先是4個字的模式控制字,然后是實(shí)際數(shù)據(jù)。每一種工作方式及相應(yīng)參數(shù)由每一數(shù)據(jù)包前面的模式控制字給出,對應(yīng)于模式控制字中的工作方式及參數(shù)等各共用部分,我們在所有運(yùn)算單元中對其進(jìn)行解釋,以便轉(zhuǎn)入相應(yīng)的子程序。
(3)系統(tǒng)初始化方式有兩種,一種是EPROM加載方式,此方式有利于在整個系統(tǒng)調(diào)試或固定雷達(dá)工作方式后,脫開計(jì)算機(jī)進(jìn)行。另一種加載方式就是通過計(jì)算機(jī)接口以Link口加載方式進(jìn)行加載。為了使用時調(diào)整雷達(dá)信號處理方式,采用計(jì)算機(jī)加載方式。
4.1 系統(tǒng)硬件
根據(jù)運(yùn)算量和恒虛警檢測所需的存儲量,估計(jì)出設(shè)備量為5片DSP,如圖4所示。
由于雷達(dá)信號處理流水進(jìn)行的特點(diǎn),可以按處理流程將整個系統(tǒng)劃分成若干功能塊,所以擬采用分布式并行處理系統(tǒng)。分布式并行處理系統(tǒng)由標(biāo)準(zhǔn)的并行子模塊構(gòu)成,恒虛警檢測子模塊由4個單元構(gòu)成,M/N檢測匯總子模塊為1個單元,并行子模塊之間由高速通信口相連,每對通信口間數(shù)據(jù)傳輸速率可達(dá)40 Mb/s.所有DSP都有通信口通過電路板插座連接到外部,利用數(shù)據(jù)流格式和相應(yīng)的軟件配置在鄰近電路板間建立數(shù)據(jù)通路,這樣減少了電路板間信號耦合。
4.2軟件處理及實(shí)現(xiàn)分析
程序部分完成:CFAR、幅相計(jì)算、M/N檢測等功能,需要5片DSP.
整個距離分4段,分別在4片DSP中進(jìn)行CFAR、幅相計(jì)算等處理。段間有重疊,以保證每一段CFAR的左右單元平均可以獨(dú)立進(jìn)行。最后將4段的結(jié)果在下一片DSP進(jìn)行合并、M/N檢測,把目標(biāo)信息后送。
(1)CFAR,幅相計(jì)算
雜波圖恒虛警檢測的主要功能是利用相應(yīng)方位的雜波圖輸出作為門限,對零號濾波器各距離單元進(jìn)行檢測。其他濾波器輸出采用單元平均CFAR處理方法對每個距離單元進(jìn)行檢測,同一個距離門的N-1個多卜勒通道檢測結(jié)果選大作為CFAR檢測結(jié)果,并與雜波圖檢測輸出經(jīng)或門后作為最終檢測結(jié)果。檢測結(jié)果有目標(biāo)輸出時,保留其幅值、相位信息。
程序流程分別從LINKX接收各自段的數(shù)據(jù),先對數(shù)據(jù)作CFAR處理,檢測到目標(biāo)后,保存對應(yīng)距離/多普勒單元信息,等到所有數(shù)據(jù)都處理完后,把結(jié)果通過LINKX送往下一級,主程序流程如圖5所示。
其中IRQ0是相干處理周期的起始信號,模式字的有效性通過校驗(yàn)碼實(shí)現(xiàn),高速通信口LINKX工作在DMA方式。
輸入與輸出的數(shù)據(jù)格式輸入數(shù)據(jù)先是4個字的模式,接著是實(shí)、虛部交替的復(fù)數(shù),個數(shù)同模式有關(guān),每個復(fù)數(shù)對應(yīng)一個距離/多普勒單元。CFAR檢測結(jié)果格式,先是以4個字的模式,逐個字地檢測到目標(biāo)的個數(shù),接著是各目標(biāo)單元信息。
由于這一級在最不利的32點(diǎn)FFT情況下存儲量大約為90 k個復(fù)數(shù),所以DSP芯片選取了內(nèi)存較大的ADSP21060.
?。?)匯總與M/N檢測
這一級的匯總?cè)蝿?wù)是把4段的CFAR檢測結(jié)果合并到一起,只要把各段中各個目標(biāo)單元依據(jù)距離門的位置加以修整,然后搬到另一處緩沖區(qū)即可。這時目標(biāo)信息排列的順序是按距離門號依次遞增的,先搬整個距離段上距離門號最小的第1段,再搬第2,3,4段。
M/N檢測在相干處理周期間進(jìn)行,其準(zhǔn)則是相鄰3個相干處理周期內(nèi)至少有2次在同一個距離門上檢測到目標(biāo),確認(rèn)為相對應(yīng)距離單元上有目標(biāo)輸出,這時保留相應(yīng)單元上最新的幅值作為檢測結(jié)果。
程序流程如圖6所示。分別從LINK2,LINK3,LINK1,LINK5接收4個距離段上的檢測結(jié)果,把4段的結(jié)果合并在一起,形成整個距離段完整的結(jié)果。然后和以前2次檢測的結(jié)果進(jìn)行M/N檢測,最后把M/N檢測的結(jié)果通過LINK0發(fā)往接口板。
四段的輸入數(shù)據(jù)格式相同先是4個字的模式,逐個字地檢測到目標(biāo)的個數(shù),接著是各目標(biāo)單元信息。存儲量不大,選取了內(nèi)存較小的ADSP21062.
4.3 運(yùn)算量、內(nèi)存、通訊資源占用情況
在CFAR檢測中,包括零多卜勒通道各距離門利用相應(yīng)波位的雜波圖作為門限進(jìn)行檢測,剩余濾波器在距離上的單元平均恒虛警檢測。其運(yùn)算量主要集中在單元平均恒虛警中,這里除了第1個距離單元兩端各項(xiàng)需經(jīng)L個數(shù)據(jù)平均外,在第2個距離門后的其余距離單元檢測時,前后各L個數(shù)平均只需加上1個新移進(jìn)的值,減去移出的值即可,這樣對每個距離門檢測來說只需約8條指令。匯總部分運(yùn)算量不大。由于匯總要處理前一級眾多DSP芯片數(shù)據(jù),因此此處數(shù)據(jù)通信充分利用互連網(wǎng)絡(luò)的各通訊支路進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),其前一級運(yùn)算部分在緩存及時間上要給此部分留有一定余量。
CFAR一級在32點(diǎn)MTD模式下存儲壓力較大,因此采取了以下措施:輸入/輸出以及中間結(jié)果都是短字定點(diǎn)格式,在開始CFAR檢測前要先轉(zhuǎn)換成長字的浮點(diǎn)格式進(jìn)行各種運(yùn)算,最后把CFAR結(jié)果經(jīng)過定浮點(diǎn)轉(zhuǎn)換作為16 B定點(diǎn)格式保存下來,其余部分的運(yùn)算也需要先把CFAR結(jié)果轉(zhuǎn)換成32 B浮點(diǎn)格式,不過是在所調(diào)用的子程序內(nèi)部完成的。作為運(yùn)算的中間結(jié)果,目標(biāo)單元幅值的存儲使用了循環(huán)尋址方式,因?yàn)橐慌鷶?shù)據(jù)在一邊被進(jìn)行處理的同時一邊會被新來的數(shù)據(jù)覆蓋掉,這一過程是以距離門的順序進(jìn)行的,而CFAR檢測也是沿著距離門滑動的,在對第18號距離門檢測時,第0號距離門的數(shù)據(jù)就沒有任何用途了,這樣就可以把第18號距離門的幅值存到第0號距離門的位置。同樣地第19號距離門的幅值也可以存到第1號距離門的位置,從而構(gòu)成了循環(huán)尋址存儲方式。其他一些中間結(jié)果也采用了這種存儲方式,有效地節(jié)省了內(nèi)存資源。
CFAR一級包括單元平均恒虛警檢測和幅相計(jì)算2部分,運(yùn)算量主要集中在前一部分,占90%左右,到后面的數(shù)據(jù)量已經(jīng)大大減少了。匯總一級的運(yùn)算量主要集中在M/N檢測部分,但總的運(yùn)算量不大。
5 結(jié)語
本文討論了一種恒虛警檢測的并行處理系統(tǒng)的設(shè)計(jì),選取通用并行DSP作為核心處理單元,通過高速數(shù)據(jù)通信口構(gòu)成了松耦合的分布式并行系統(tǒng),在處理單元數(shù)目較多的情況下獲得了很高的性能。結(jié)合雷達(dá)信號處理的特點(diǎn)對任務(wù)進(jìn)行分配,運(yùn)用數(shù)據(jù)流驅(qū)動方式增強(qiáng)了信號處理系統(tǒng)的通用性和易維護(hù)性,整個系統(tǒng)具有良好的可編程、可擴(kuò)展和升級能力。
評論