• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于刀片服務(wù)器的軟件化雷達(dá)信號(hào)處理方法

      2023-04-07 10:01:30陳穎哲
      火控雷達(dá)技術(shù) 2023年1期
      關(guān)鍵詞:雜波信號(hào)處理線程

      楊 剛 陳穎哲 王 巖

      (西安電子工程研究所 西安 710100)

      0 引言

      傳統(tǒng)的雷達(dá)往往是針對(duì)特定應(yīng)用場(chǎng)景設(shè)計(jì),采用專用的硬件平臺(tái)和軟件架構(gòu),開(kāi)發(fā)周期長(zhǎng),成本高,軟硬件耦合性強(qiáng),維護(hù)和升級(jí)既困難又昂貴[1]。隨著雷達(dá)探測(cè)技術(shù)、電子對(duì)抗技術(shù)的發(fā)展,現(xiàn)代戰(zhàn)場(chǎng)的電磁環(huán)境越來(lái)越復(fù)雜,目標(biāo)探測(cè)的難度越來(lái)越大。為適應(yīng)復(fù)雜的電磁環(huán)境,陣列雷達(dá)的通道數(shù)越來(lái)越多,信號(hào)帶寬越來(lái)越大,以及先進(jìn)的抗干擾算法和目標(biāo)識(shí)別算法的引入,都增加了信號(hào)處理的復(fù)雜度。而且現(xiàn)在的雷達(dá)都具備多種探測(cè)任務(wù)的需求,集多種功能于一體,要求雷達(dá)可以靈活配置資源,擴(kuò)展功能。

      傳統(tǒng)的雷達(dá)大多采用“FPGA+DSP”處理架構(gòu)。FPGA集成了大量可編程的數(shù)字邏輯構(gòu)件和RAM塊,具有強(qiáng)大的定點(diǎn)運(yùn)算能力和輸入輸出帶寬[2],一般用于完成雷達(dá)信號(hào)處理中的AD采樣,數(shù)字下變頻,數(shù)字波束形成,脈沖壓縮等功能。DSP浮點(diǎn)運(yùn)算能力強(qiáng),能夠滿足算法和邏輯比較復(fù)雜的場(chǎng)景,當(dāng)前雷達(dá)信號(hào)處理系統(tǒng)中應(yīng)用最廣的DSP是TI的TMS320C6678,其浮點(diǎn)處理能力可以達(dá)到128GFLOPS(1GHz主頻時(shí)),一般完成雷達(dá)信號(hào)處理中的動(dòng)目標(biāo)檢測(cè),橫虛警檢測(cè),點(diǎn)跡凝聚,測(cè)角,雜波圖等功能。“FPGA+DSP”架構(gòu)在過(guò)去許多年里一直在雷達(dá)信號(hào)處理領(lǐng)域占據(jù)著主流位置,然而,該架構(gòu)固有的特性,導(dǎo)致程序的可重用性低,硬件調(diào)試?yán)щy,開(kāi)發(fā)周期長(zhǎng),難以滿足當(dāng)前瞬息萬(wàn)變的現(xiàn)代化信息戰(zhàn)的要求。

      針對(duì)傳統(tǒng)雷達(dá)的不足,軟件化雷達(dá)[3-4]的概念被提出,不同于傳統(tǒng)雷達(dá)的“以硬件技術(shù)為中心,面向?qū)S霉δ堋碧攸c(diǎn),軟件化雷達(dá)是“以軟件技術(shù)為中心,面向?qū)嶋H需求”的開(kāi)發(fā)模式。軟件化雷達(dá)通過(guò)層次化的開(kāi)放式體系架構(gòu),可以實(shí)現(xiàn)硬件資源的靈活擴(kuò)展。通過(guò)中間件技術(shù),可以將應(yīng)用程序與硬件資源完全解耦,從而實(shí)現(xiàn)可移植、可重構(gòu)的軟件化雷達(dá)系統(tǒng)[5]。

      1 硬件平臺(tái)選擇

      FPGA雖然處理能力強(qiáng)大,但是開(kāi)發(fā)調(diào)試周期長(zhǎng),軟件和硬件耦合性強(qiáng),可移植性差,所以較少應(yīng)用于軟件化雷達(dá)檢測(cè)信號(hào)處理中。

      單片DSP處理能力較弱,所以一般在一塊板卡內(nèi)同時(shí)包含2片、4片、8片TMS320C6678,每片C6678包含8個(gè)C66x核。為了充分發(fā)揮DSP的性能,大多應(yīng)用中需要手動(dòng)劃分每片DSP,甚至每個(gè)C66x核的功能。所以DSP程序開(kāi)發(fā)和調(diào)試同樣比較復(fù)雜,不太適用于軟件化雷達(dá)信號(hào)處理。

      受功耗墻的限制,單核CPU無(wú)法繼續(xù)通過(guò)提高主頻來(lái)提升計(jì)算性能,CPU也轉(zhuǎn)為了利用更多的核心來(lái)提升計(jì)算性能[4]。CPU芯片相對(duì)于DSP的主頻更高,內(nèi)存更大,浮點(diǎn)運(yùn)算能力更強(qiáng),而且運(yùn)行的Linux操作系統(tǒng)比DSP上運(yùn)行的輕量級(jí)操作系統(tǒng)性能更強(qiáng),所以廣泛應(yīng)用于軟件化雷達(dá)信號(hào)處理中。

      本文方法實(shí)踐中,計(jì)算刀片使用的處理器是志強(qiáng)D-2183IT,主頻2.2GHz,最大支持16核/32線程,三級(jí)緩存為22MB,采用AVX2.0指令集,板載支持4通道64GB、2400MHz Register DDR4 ECC內(nèi)存,可檢測(cè)多位內(nèi)存錯(cuò)誤,查找和糾正單位錯(cuò)誤,以保證系統(tǒng)持續(xù)正常運(yùn)行,單精度浮點(diǎn)處理能力為1.1TFLOPS。

      MKL是英特爾設(shè)計(jì)的一個(gè)函數(shù)庫(kù),涵蓋了圖像處理、自動(dòng)控制、科學(xué)計(jì)算、統(tǒng)計(jì)數(shù)學(xué)和信號(hào)處理等領(lǐng)域的基本函數(shù),比如快速傅里葉變換,矩陣操作等。MKL內(nèi)的函數(shù)進(jìn)行了高度的優(yōu)化,而且是線程安全的,很適合雷達(dá)信號(hào)處理應(yīng)用。利用VISPL標(biāo)準(zhǔn)[7]和MKL可以實(shí)現(xiàn)高效的算法中間件。

      通信中間件采用“發(fā)布-訂閱”模型,遵循DDS(Data Distribution Service)接口協(xié)議,提供了統(tǒng)一的接口進(jìn)行數(shù)據(jù)和消息的傳遞,支持TCP、UDP和共享內(nèi)存等傳輸協(xié)議。

      目前CPU支持的并行編程模型包括Pthread、 OpenMP、 MPI和OpenCL等[6]。Pthread是線程的POSIX標(biāo)準(zhǔn),定義了創(chuàng)建和操作線程的一整套API,能夠在多種操作系統(tǒng)上運(yùn)行,具有很好的可移植性,且所有線程都可以訪問(wèn)全局的共享內(nèi)存,可以部分的減少線程之間數(shù)據(jù)通信的代價(jià),當(dāng)然多線程之間訪問(wèn)共享內(nèi)存時(shí)需要考慮線程安全問(wèn)題。本文采用Pthread來(lái)設(shè)計(jì)雷達(dá)信號(hào)處理程序。

      2 信號(hào)處理算法

      雷達(dá)信號(hào)處理最顯著的特點(diǎn)是各功能模塊的流水性,前后模塊間數(shù)據(jù)的迭代性和相關(guān)性較弱[8],所以不失一般性,這里只討論動(dòng)目標(biāo)檢測(cè)和橫虛警處理。

      2.1 動(dòng)目標(biāo)檢測(cè)(MTD, Moving Target Detection)

      在實(shí)際工作中,雷達(dá)不僅會(huì)收到目標(biāo)回波信號(hào),也可能收到地物、云雨、海浪、以及人為釋放的箔條等產(chǎn)生的雜波信號(hào)。一般來(lái)說(shuō),雷達(dá)接收到的雜波功率比實(shí)際運(yùn)動(dòng)目標(biāo)信號(hào)的功率高很多,這對(duì)運(yùn)動(dòng)目標(biāo)的檢測(cè)產(chǎn)生了嚴(yán)重的影響。因此,在橫虛警檢測(cè)之前,必須對(duì)雜波進(jìn)行抑制,盡可能降低雜波對(duì)檢測(cè)的影響。

      MTD是一種利用多普勒濾波器組來(lái)抑制各種雜波,以提高雷達(dá)在雜波背景下檢測(cè)運(yùn)動(dòng)目標(biāo)能力的技術(shù)[9]。MTD多普勒濾波器組的實(shí)現(xiàn)方法主要有FFT濾波器組法和有限脈沖響應(yīng)(FIR)濾波器組法。FFT方法的優(yōu)點(diǎn)是計(jì)算效率高,但是對(duì)雜波抑制能力較弱。FIR方法計(jì)算量大,但是在零頻附近抑制雜波更加靈活,其頻率響應(yīng)可以在零頻附近產(chǎn)生滿足要求帶寬的零陷[10]。16點(diǎn)FIR和FFT多普勒濾波器組如圖1所示。

      圖1 MTD多普勒濾波器組

      由于MKL中矩陣乘法效率很高,所以在CPU上實(shí)現(xiàn)MTD時(shí)一般采用FIR濾波器組。

      2.2 橫虛警處理(CFAR, Constant False Alarm Rate)

      在實(shí)際工作中,干擾電平通常是變化的,橫虛警檢測(cè)的目的就是在實(shí)際干擾環(huán)境下保持信號(hào)檢測(cè)時(shí)的虛警率恒定。常用的方法有單元平均CFAR (CA CFAR),平均選大橫虛警(GO CFAR),平均選小橫虛警 (SO CFAR),審核式橫虛警,有序統(tǒng)計(jì)橫虛警(OS CFAR)等。這些橫虛警算法的主要區(qū)別在于多目標(biāo)環(huán)境和雜波邊緣的表現(xiàn)不同[11]。

      3 軟件架構(gòu)設(shè)計(jì)

      整個(gè)處理流程采用流水線的方式實(shí)現(xiàn)并行計(jì)算,除輸入輸出模塊外,各模塊接收上一級(jí)模塊輸出的參數(shù)和數(shù)據(jù),完成計(jì)算后,將參數(shù)和數(shù)據(jù)發(fā)給下一級(jí)模塊。這里模塊之間傳輸?shù)膮?shù)和數(shù)據(jù)組合,是通過(guò)使用傳址的方式進(jìn)行傳遞,以減少數(shù)據(jù)傳輸?shù)臅r(shí)間。輸入模塊接收外部模塊的輸入,輸出模塊將最終處理結(jié)果上報(bào)給外部模塊。

      志強(qiáng)D-2183IT共有16個(gè)核,為了各模塊處理時(shí)間的穩(wěn)定,對(duì)各模塊分配了固定的核進(jìn)行處理,首先對(duì)這些核進(jìn)行隔離,然后將各處理模塊線程綁定到對(duì)應(yīng)核上。軟件化雷達(dá)模塊示例見(jiàn)圖2所示。

      圖2 軟件化雷達(dá)模塊示例

      每個(gè)模塊內(nèi)有一個(gè)循環(huán)隊(duì)列,用于存儲(chǔ)參數(shù)+數(shù)據(jù)組合的地址,隊(duì)列越大對(duì)模塊處理時(shí)間抖動(dòng)的容忍度越大,但隊(duì)列太大對(duì)內(nèi)存的需求越大,需要根據(jù)模塊實(shí)際的處理時(shí)間抖動(dòng)進(jìn)行合理設(shè)置。

      模塊內(nèi)的線程分為兩種,管理線程和計(jì)算線程。

      每個(gè)模塊的管理線程只有一個(gè),用于判斷循環(huán)隊(duì)列的狀態(tài),管理計(jì)算線程。當(dāng)計(jì)算線程空閑時(shí),管理線程判斷循環(huán)隊(duì)列是否為空,如果不為空,就取出最先收到的“參數(shù)+數(shù)據(jù)”組合,根據(jù)工作參數(shù),劃分好每個(gè)計(jì)算線程的計(jì)算任務(wù),給計(jì)算線程發(fā)送信號(hào)量,啟動(dòng)計(jì)算線程開(kāi)始計(jì)算,然后等待計(jì)算線程計(jì)算完成后發(fā)送的信號(hào)量。最后將該模塊生成的“參數(shù)+數(shù)據(jù)”組合發(fā)給下一個(gè)模塊。管理線程處理流程如圖3(a)所示。

      每個(gè)模塊有多個(gè)計(jì)算線程,計(jì)算線程用于完成管理線程分配的計(jì)算任務(wù)。計(jì)算線程空閑時(shí),等待管理線程發(fā)送的信號(hào)量,收到信號(hào)量后開(kāi)始執(zhí)行計(jì)算任務(wù),計(jì)算完成后,給管理線程發(fā)送標(biāo)志著計(jì)算完成的信號(hào)量,然后繼續(xù)等待管理線程發(fā)送的信號(hào)量。管理線程主要是判斷循環(huán)隊(duì)列和計(jì)算線程的狀態(tài),以及完成任務(wù)分配,計(jì)算量不大,所以無(wú)需單獨(dú)劃分一個(gè)核,可以和計(jì)算線程綁定到同一個(gè)核,計(jì)算線程數(shù)量的選取需根據(jù)模塊的計(jì)算量,以及系統(tǒng)可劃分給該模塊的核數(shù)確定。計(jì)算線程處理流程如圖3(b)所示。

      舉例來(lái)說(shuō),假設(shè)當(dāng)前MTD模塊和CFAR模塊需要處理的是一個(gè)波束,16個(gè)多普勒通道,1024個(gè)距離單元,MTD模塊和CFAR模塊分別分配3個(gè)核,分別有3個(gè)計(jì)算線程。

      圖3 管理線程和計(jì)算線程處理流程

      MTD模塊中管理線程檢測(cè)到計(jì)算線程空閑,且循環(huán)隊(duì)列中有未處理的“參數(shù)+數(shù)據(jù)”時(shí),給三個(gè)計(jì)算線程分配計(jì)算任務(wù),其中:計(jì)算線程1完成距離單元1~342的MTD處理;計(jì)算線程2完成距離單元343~683的MTD處理;計(jì)算線程3完成距離單元684~1024的MTD處理。

      同理,CFAR模塊中管理線程檢測(cè)到計(jì)算線程空閑,且循環(huán)隊(duì)列中有未處理的“參數(shù)+數(shù)據(jù)”時(shí),給三個(gè)計(jì)算線程分配計(jì)算任務(wù),其中:計(jì)算線程1完成多普勒通道1~6的CFAR處理;計(jì)算線程2完成多普勒通道7~11的CFAR處理;計(jì)算線程3完成多普勒通道12~16的CFAR處理。

      4 結(jié)束語(yǔ)

      雷達(dá)信號(hào)處理系統(tǒng)計(jì)算量大,實(shí)時(shí)性要求高,傳統(tǒng)雷達(dá)信號(hào)處理系統(tǒng)軟硬件耦合性強(qiáng),不利于升級(jí)和擴(kuò)展,導(dǎo)致研發(fā)周期長(zhǎng),成本高。本文介紹了一種基于CPU刀片服務(wù)器的軟件化雷達(dá)信號(hào)處理實(shí)現(xiàn)方法,使用循環(huán)隊(duì)列實(shí)現(xiàn)了對(duì)數(shù)據(jù)和參數(shù)的存儲(chǔ)和傳遞,應(yīng)用管理線程自動(dòng)劃分每個(gè)計(jì)算線程的計(jì)算任務(wù),并管理計(jì)算線程的執(zhí)行狀態(tài)。通過(guò)MTD模塊和CFAR模塊具體介紹了循環(huán)隊(duì)列,管理線程和計(jì)算線程的使用方法。本文介紹的實(shí)現(xiàn)方法,可以滿足常規(guī)軟件化雷達(dá)信號(hào)處理應(yīng)用場(chǎng)景。

      猜你喜歡
      雜波信號(hào)處理線程
      STAR2000型空管一次雷達(dá)雜波抑制淺析
      《信號(hào)處理》征稿簡(jiǎn)則
      《信號(hào)處理》第九屆編委會(huì)
      《信號(hào)處理》征稿簡(jiǎn)則
      《信號(hào)處理》第九屆編委會(huì)
      淺談linux多線程協(xié)作
      密集雜波環(huán)境下確定性退火DA-HPMHT跟蹤算法
      相關(guān)廣義復(fù)合分布雷達(dá)海雜波仿真
      微波雷達(dá)海雜波混沌特性分析
      Linux線程實(shí)現(xiàn)技術(shù)研究
      淮安市| 伊川县| 时尚| 丹巴县| 洮南市| 巨野县| 凤山县| 高清| 友谊县| 齐齐哈尔市| 旺苍县| 龙山县| 游戏| 桐乡市| 文水县| 贵州省| 岗巴县| 油尖旺区| 洪雅县| 雅江县| 凌源市| 南华县| 四平市| 天全县| 寿宁县| 紫云| 什邡市| 丰都县| 龙里县| 平和县| 浙江省| 屏山县| 乐亭县| 鲁山县| 芷江| 高尔夫| 凤庆县| 商洛市| 东港市| 石景山区| 肇州县|