国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于華睿1號平臺的某雷達(dá)信號處理軟件設(shè)計與實現(xiàn)

2017-04-14 15:05施西野
電子技術(shù)與軟件工程 2017年6期
關(guān)鍵詞:信號處理

本文結(jié)合軟件架構(gòu)和構(gòu)件化設(shè)計思路,研究并應(yīng)用了基于華睿1號信號處理模塊的某雷達(dá)信號處理軟件設(shè)計方法。該方法不僅具有很好的可復(fù)用性、可移植性,而且使系統(tǒng)具有較高的處理速度,保證了系統(tǒng)的實時性。此外, 系統(tǒng)中所設(shè)計的管理層,具備了開機(jī)自檢、軟件監(jiān)測、任務(wù)緩沖等機(jī)制,給系統(tǒng)提供了很好的穩(wěn)定性能。

【關(guān)鍵詞】華睿1號平臺 信號處理 軟件架構(gòu) 軟件構(gòu)件

1 引言

近年來,對實時信號處理的要求越來越高。所用系統(tǒng)要求具有處理大量數(shù)據(jù)的能力, 這就要求系統(tǒng)硬件達(dá)到很高的運算速度,并且軟件處理程序也盡可能優(yōu)化,以保證系統(tǒng)的實時性。本文將介紹一種基于華睿1號信號處理平臺下的軟件框架與構(gòu)件設(shè)計方法。該方法具有很高的處理效率和穩(wěn)定性,在不同平臺之間具備可移植性。

2 華睿1號硬件模塊

華睿1號CPU是我國自主研制的一款4核微處理器,在處理能力和能耗方面具有明顯優(yōu)勢,運行多任務(wù)實時操作系統(tǒng)時十分穩(wěn)定。華睿1號信號處理模塊由四片華睿1號四核DSP、兩片Xilinx XC5VLX330T、RapidIO交換芯片和網(wǎng)絡(luò)交換芯片組成。四片華睿1號為模塊的處理核心,如下圖所示,每片CPU有兩個DDR通道,每通道DDR容量1GB,每片CPU的DDR容量為2GB。兩片F(xiàn)PGA為對稱設(shè)計,F(xiàn)PGA1實現(xiàn)和CPU_C的高速數(shù)據(jù)通道以及模塊的控制管理,F(xiàn)PGA2實現(xiàn)CPU_B和CPU_D的高速數(shù)據(jù)通道,F(xiàn)PGA1和FPGA2分別配置為主并模式,各自外掛一片加載flash。FPGA1外接容量為256MB的flash,支持32位文件系統(tǒng)。

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

軟件架構(gòu)是軟件開發(fā)早期設(shè)計階段的產(chǎn)物,是關(guān)于系統(tǒng)的抽象描述。軟件架構(gòu)的正確設(shè)計和選擇,為以后的開發(fā)、集成、測試、維護(hù)各個階段的成功提供了保證?;诩軜?gòu)的軟件系統(tǒng)是指由組件裝配、組合而成的軟件系統(tǒng),它主要由組件和連接件組成。軟件架構(gòu)和組件技術(shù)的應(yīng)用越發(fā)廣泛,源于它所帶來的產(chǎn)品的穩(wěn)定性、可靠性、可復(fù)用性和可擴(kuò)展性等優(yōu)勢。在硬件平臺種類繁多,產(chǎn)品功能各不相同的雷達(dá)信號處理領(lǐng)域,研究設(shè)計一個相應(yīng)的軟件架構(gòu)和組件庫,是很有意義的。作為存放組件的容器,組件庫設(shè)計的好壞,直接影響到整個平臺的穩(wěn)定性和效率。

3.1 軟件架構(gòu)概念

軟件架構(gòu)(Software Architecture,簡稱SA)是在1969 年的NATO 軟件工程會議上首次提出的,直到1995 年SA 才被確立為軟件工程一個研究方向。雖然好的架構(gòu)不一定能保證可以獲得高可靠性的軟件產(chǎn)品,但建立在不良架構(gòu)基礎(chǔ)上的軟件不可能獲得較高的可靠性。軟件架構(gòu)就是系統(tǒng)的一個或多個結(jié)構(gòu),它包括軟件組件、這些組件的外部可見屬性以及組件之間的相互關(guān)系。軟件架構(gòu)是由組件、連接件和配置組成;組件是架構(gòu)中的功能單元;連接件是功能單元之間進(jìn)行交互的通道;配置用來說明組件和連接件是如何結(jié)合在一起的,是對組件和連接件的約束;通過配置可以確定組件是否正確連接、接口是否匹配、連接件構(gòu)成的通信是否正確等。組件(構(gòu)件)、連接件和配置是軟件架構(gòu)最基本的構(gòu)造元素。

3.2 通用軟件框架功能

通用框架是產(chǎn)品軟件的骨架,實現(xiàn)軟硬件管理接口服務(wù),包括硬件的配置和通信,軟件的任務(wù)和構(gòu)件管理,CPU節(jié)點級動態(tài)重組管理,構(gòu)件調(diào)試管理,狀態(tài)監(jiān)測管理等,支持用戶開發(fā)、調(diào)試獨立于硬件的計算構(gòu)件。

軟件框架分為2層,配置層、管理層,配置層同中間件交互,管理層同構(gòu)件層交互。配置層實現(xiàn)與中間件的交互,主要功能有:任務(wù)配置、網(wǎng)絡(luò)配置、信號量配置、RIO初始化配置、中斷配置、存貯空間配置。管理層通過某種管理機(jī)制實現(xiàn)任務(wù)的管理,函數(shù)的管理,主要功能有部署控制、任務(wù)控制、任務(wù)緩沖、函數(shù)控制、軟件檢測、軟件調(diào)試等機(jī)制。

傳統(tǒng)框架將底層配置散落在上電程序和不同的任務(wù)函數(shù)中,無參數(shù)控制,不同產(chǎn)品應(yīng)用,需要進(jìn)行產(chǎn)品代碼的新增和修改,無法做到代碼的高度復(fù)用,增加重復(fù)編碼和測試工作。通用框架通過讀取配置文件(配置文件可視化界面生成)實現(xiàn)配置參數(shù)的獲取,最終完成對底層的配置,因此框架的底層配置做到了產(chǎn)品無關(guān),不同應(yīng)用產(chǎn)品只需要根據(jù)可視化的配置界面進(jìn)行參數(shù)修改即可自動生成配置文件,達(dá)到不同產(chǎn)品的應(yīng)用。

3.3 具體設(shè)計

配置層放置若干底層配置模塊,每個配置模塊負(fù)責(zé)對某個功能項配置,彼此之間互相獨立,串行執(zhí)行。工作原理如圖2和圖3所示。

管理層放置掛起的若干任務(wù)和一系列的管理機(jī)制。任務(wù)間、管理機(jī)制間互相獨立,掛在兩條控制總線上,一條任務(wù)控制總線(由任務(wù)控制機(jī)制實現(xiàn)),一條構(gòu)件控制總線(由構(gòu)件控制機(jī)制實現(xiàn)),可實現(xiàn)任務(wù)、構(gòu)件的自由重構(gòu)。管理機(jī)制由各自的任務(wù)、構(gòu)件組成,各管理機(jī)制間互相獨立。

4 軟件構(gòu)件設(shè)計

4.1 軟件構(gòu)件標(biāo)準(zhǔn)

面向構(gòu)件的嵌入式軟件設(shè)計方法將軟件的整個開發(fā)看作一條生產(chǎn)線,不同的軟件模塊作為構(gòu)件拼裝組成了可以運行的軟件,使得軟件復(fù)用的粒度更大。面向構(gòu)件的嵌入式軟件設(shè)計方法的主要任務(wù)是如何獲取通用的構(gòu)件,在軟件設(shè)計的過程中,很多模塊都是具有通用性的,將這些模塊進(jìn)行更好的設(shè)計,從而在任何需要這些模塊的地方,直接將原有的模塊進(jìn)行復(fù)用,能夠進(jìn)一步提高嵌入式軟件的開發(fā)效率。

使用面向構(gòu)件的嵌入式軟件設(shè)計方法,需要軟件設(shè)計人員具有良好的抽象思維,能夠?qū)⒋笠?guī)模的軟件不斷分解成已有的小規(guī)模的構(gòu)件,從而更好地進(jìn)行嵌入式的軟件設(shè)計??梢暬瘶?gòu)件包含源碼和圖形外殼,源碼封裝在圖形外殼中,封裝由工具實現(xiàn),源碼由人工進(jìn)行增量式開發(fā)。構(gòu)件包含通用構(gòu)件和專用構(gòu)件,通用構(gòu)件覆蓋各領(lǐng)域、各專業(yè),為所有應(yīng)用提供基礎(chǔ)的應(yīng)用服務(wù),專用構(gòu)件面向特定產(chǎn)品定制、開發(fā)。

4.2 內(nèi)部結(jié)構(gòu)與接口

計算類構(gòu)件源碼內(nèi)部結(jié)構(gòu)包括:接口轉(zhuǎn)換代碼與主代碼函數(shù),接口轉(zhuǎn)換代碼為實現(xiàn)和通用框架對接的輔助代碼,主代碼函數(shù)用于實現(xiàn)計算主體,采用VSIPL國際標(biāo)準(zhǔn)開發(fā)。

計算類構(gòu)件源碼接口統(tǒng)一定義為圖4所示接口。

4.3 基于華睿平臺的計算構(gòu)件設(shè)計

華睿1號具備矢量處理單元,處理器每次操作可完成一組同類型的數(shù)據(jù)的處理,它對硬件資源的需求量較大,但處理的并行度顯著提高,處理能力大大增強(qiáng)。矢量信號處理通常采用SIMD結(jié)構(gòu),一組源數(shù)據(jù)同時進(jìn)入不同的處理單元,以獲得較高的系統(tǒng)加速比。華睿1號的矢量處理單元由矢量發(fā)射隊列、矢量訪存部件、矢量運算部件和矢量寄存器堆等4個部分組成,支持定點和浮點操作。

為了提高處理性能,華睿1號可通過鎖Cache配合DMA傳輸實現(xiàn)數(shù)據(jù)的處理前預(yù)取。鎖Cache機(jī)制由總線對二級Cache模塊內(nèi)部的4組鎖窗口寄存器進(jìn)行動態(tài)配置實現(xiàn),每組窗口的大小可調(diào)。被鎖區(qū)域中的二級Cache塊被鎖住后,其中的指令或數(shù)據(jù)就不會被替換出去。華睿1號內(nèi)置了2個具有矩陣轉(zhuǎn)置功能的DMA模塊,可實現(xiàn)數(shù)據(jù)在內(nèi)存和二級Cache之間的搬移。當(dāng)二級Cache收到DMA寫請求時,如果被寫區(qū)域在二級Cache中命中且被鎖住,那么DMA將直接寫入二級Cache,實現(xiàn)將數(shù)據(jù)預(yù)取到二級Cache。

在實現(xiàn)算法的矢量計算前預(yù)先用DMA將待處理的數(shù)據(jù)搬入二級Cache,計算時CPU直接訪問二級Cache。這樣處理的運算速度相較于從DDR中直接取數(shù)據(jù),不僅處理時間大大縮短,而且時長更穩(wěn)定。

基本計算構(gòu)件的流程圖如圖5所示。

表1顯示了在華睿1號信號處理模塊上,單核運行MTI構(gòu)件對二級Cache訪問進(jìn)行運算和直接對DDR內(nèi)的數(shù)據(jù)訪問運算的處理時間對比。

5 結(jié)束語

本文結(jié)合軟件架構(gòu)和構(gòu)件化設(shè)計思路, 介紹了基于華睿1號信號處理模塊的某雷達(dá)信號處理軟件設(shè)計方法。該方法具有很好的可復(fù)用性、可移植性,對于不同的產(chǎn)品,僅需要維護(hù)構(gòu)件庫和修改集成代碼,很好的降低了開發(fā)成本。系統(tǒng)實測表明該軟件開發(fā)方法具有較高的處理速度, 保證了系統(tǒng)的實時性。此外, 系統(tǒng)中所設(shè)計的管理層,具備了開機(jī)自檢、軟件監(jiān)測、任務(wù)緩沖等機(jī)制,給系統(tǒng)提供了很好的穩(wěn)定性能。

參考文獻(xiàn)

[1]Land R.A Brief Survey of Software Architecture[R].Malardalen Real-Time Research Center (MRTC) Report,2002.

[2]Kruchten P,Obbink H,Stafford J.The Past,Present,and future of software architecture[J].IEEE Software,2006,23(02):22-30.

[3]周欣,黃璜,孫家輔等.軟件體系結(jié)構(gòu)質(zhì)量評價概述[J].計算機(jī)科學(xué),2003,30(01):49-52.

[4]Len Bass.軟件構(gòu)架實踐[M].北京:清華大學(xué)出版社,2002:15-16.

[5]周媛.嵌入式軟件設(shè)計方法探析[C].網(wǎng)友世界,2014.

[6]周海斌,劉剛,李明.基于華睿1號的高性能數(shù)字脈壓設(shè)計和實現(xiàn)[J].現(xiàn)代雷達(dá),2012(04):28-35.

作者簡介

施西野,男,江蘇省南京市人。碩士學(xué)位?,F(xiàn)從事南京電子技術(shù)研究所信號處理軟件設(shè)計、工程師。主要研究方向為雷達(dá)信號處理。

作者單位

中電集團(tuán)南京電子技術(shù)研究所 江蘇省南京市 210000

猜你喜歡
信號處理
《信號處理》征稿簡則
《信號處理》第九屆編委會
《信號處理》第九屆編委會
《信號處理》征稿簡則
《信號處理》征稿簡則
《信號處理》第九屆編委會
《信號處理》征稿簡則
《信號處理》第九屆編委會
《信號處理》征稿簡則
《信號處理》第九屆編委會