<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP多處理器實時開發(fā)環(huán)境的設(shè)計

          基于DSP多處理器實時開發(fā)環(huán)境的設(shè)計

          作者: 時間:2008-06-13 來源:網(wǎng)絡(luò) 收藏
          摘要:一般都是針對單獨進行的,當(dāng)一個系統(tǒng)中使用了多種類型的芯片時,往往無法同時使用這些,也就無法進行系統(tǒng)級開發(fā)。本文通過研究提出了一種多開發(fā)思想,它可以支持多種型號的同時開發(fā),使系統(tǒng)級開發(fā)變得簡單易行。這種統(tǒng)一的軟件開發(fā)環(huán)境使開發(fā)人員始終面向同一個開發(fā)環(huán)境,易學(xué)易用,提高了開發(fā)效率。
          關(guān)鍵詞:多處理器;;Eclipse

          1 引言

          隨著電子技術(shù)的發(fā)展和芯片處理能力的增強,數(shù)字信號處理技術(shù)[1]獲得了空前的發(fā)展。由多處理芯片組成的陣列信號處理系統(tǒng),使通訊、雷達、聲納進入數(shù)字化飛速發(fā)展的時代。但如何多處理芯片的信號處理系統(tǒng)建立實時的軟件開發(fā)環(huán)境一直是個難題。以往的軟件開發(fā)環(huán)境一般都與CPU芯片緊密結(jié)合在一起,每一型DSPCPU芯片都配備了專用的開發(fā)環(huán)境。這些開發(fā)環(huán)境一般都針對單獨處理器進行開發(fā),而且相互之間互不兼容,當(dāng)一個系統(tǒng)中使用了多種類型的DSPCPU芯片時,往往無法同時使用這些開發(fā)環(huán)境,也就無法進行系統(tǒng)級開發(fā)。對于此,我們開發(fā)了一種系統(tǒng)級的軟件開發(fā)工具,它可以支持多型處理器同時開發(fā),使系統(tǒng)級開發(fā)變得簡單易行。這種統(tǒng)一的軟件開發(fā)環(huán)境使開發(fā)人員始終面向同一個開發(fā)環(huán)境,易學(xué)易用,提高了開發(fā)效率。

          多處理器實時開發(fā)環(huán)境建立在以開放的Eclipse平臺[2,3]為框架的基礎(chǔ)之上,所以其主要的思路緊密結(jié)合了Eclipse平臺及其插件進行構(gòu)建及其設(shè)計,采用以配置文件為中心的支撐框架,各個功能模塊圍繞配置文件展開設(shè)計與實現(xiàn)。也就是說,通過配置文件構(gòu)建起硬件平臺的描述、數(shù)據(jù)流處理的描述、工程環(huán)境的描述等等,然后各個功能模塊根據(jù)相關(guān)的描述進行設(shè)計與實現(xiàn)??梢钥闯?,配置文件的設(shè)計在多處理器實時開發(fā)環(huán)境中的重要性,對配置文件的改動涉及到功能模塊實現(xiàn)的改動。

          2 配置文件說明

          配置文件采用XML格式[4]進行描述。以配置文件為中心的設(shè)計思路是軟件標(biāo)準(zhǔn)化的途徑。通過配置文件描述多處理器實時開發(fā)環(huán)境所有可配置的內(nèi)容,包括目標(biāo)硬件的描述、工程的描述、開發(fā)環(huán)境的描述等等,然后圍繞配置文件展開軟件的設(shè)計與開發(fā),實現(xiàn)具體的執(zhí)行邏輯。這種軟件設(shè)計思路具有很好的目標(biāo)硬件可擴展、可維護性、可定制性等特點。下面具體說明一下硬件拓?fù)涞呐渲梦募?/P>

          在多處理器實時開發(fā)環(huán)境項目建立的過程中,硬件拓?fù)鋱D描述文件將被建立起來,作為該項目開發(fā)的起點與基礎(chǔ)。硬件拓?fù)鋱D文件主要描述了項目中可編程的硬件單元及其互連關(guān)系,可編程硬件單元一般包括處理器、存儲器、路由器等。硬件拓?fù)鋱D描述文件名定義為HardTopology.xml。下面給出硬件拓?fù)渑渲梦募牟糠中畔ⅲ?/P>

          ?xml version="1.0"?> XML文件版本

          HardTopology>

          Name>Hard Topology/Name> 硬件拓?fù)鋱D名稱

          Information/> 硬件拓?fù)鋱D描述信息

          Issuer>by ZKHX/Issuer> 發(fā)行者

          Version>1.0/Version> 版本

          Router portnum="" id=""> 路由器(端口數(shù)量、ID

          Portn> 端口n

          Connect type="processor" id=""> 鏈接的硬件單元

          Class/> 硬件單元的類別

          Speed/> 數(shù)據(jù)流通信速度

          /Connect>

          /Portn>

          /Router>

          Processor portnum="" linknum="" id=""> 處理器(端口數(shù)量、ID)

          Portn> 端口n

          Connect type="router" id=""> 鏈接的硬件單元

          Class/> 硬件單元的類別

          Speed/> 數(shù)據(jù)流通信速度

          /Connect>

          /Portn>

          / Processor>

          Memory portnum="" id=""> 存儲器(端口數(shù)量、ID)

          Portn> 端口n

          Connect type="router" id="">

          Class/>

          Speed/>

          /Connect>

          /Portn>

          / Memory >

          /HardTopology>

          ……

          3 系統(tǒng)總體設(shè)計

          多處理器實時開發(fā)環(huán)境分為三層框架體系結(jié)構(gòu),目標(biāo)層為目標(biāo)程序運行的多型號、多處理器硬件平臺及其軟件結(jié)構(gòu),通信層為主機開發(fā)環(huán)境與目標(biāo)機程序通信的結(jié)構(gòu),主機開發(fā)環(huán)境層為實時開發(fā)環(huán)境的軟件結(jié)構(gòu)。多處理器實時開發(fā)環(huán)境構(gòu)建在Eclipse框架下,其各個功能模塊以Eclipse插件或者可執(zhí)行工具的形式存在。為了滿足需求中對多型號、多處理器的支持,以及良好擴展性的支持,實時開發(fā)環(huán)境設(shè)計為開放式的框架結(jié)構(gòu)。系統(tǒng)總體結(jié)構(gòu)如圖1所示:

          圖1系統(tǒng)總體設(shè)計圖

          對于不同型號、多處理器硬件平臺運行的目標(biāo)程序可能不同,實時操作系統(tǒng)、處理器算法程序應(yīng)一一對應(yīng)于不同型號、多處理器硬件平臺。通信層負(fù)責(zé)主機開發(fā)環(huán)境與目標(biāo)機程序之間的通信,對于不同型號、多處理器平臺提供不同的主機-目標(biāo)機驅(qū)動程序,并在驅(qū)動程序之上封裝一層主機-目標(biāo)機通信抽象層,達到主機與目標(biāo)機通信協(xié)議的統(tǒng)一,這樣建立在通信抽象層的主機開發(fā)環(huán)境不針對于某型號多處理器硬件平臺,具有良好的適用性。同時在通信層提供遠(yuǎn)程調(diào)試模塊,支持多處理器程序的遠(yuǎn)程開發(fā)與調(diào)試。主機開發(fā)環(huán)境為開發(fā)人員提供基于Eclipse框架下統(tǒng)一的開發(fā)環(huán)境,開發(fā)人員在多處理器拓?fù)鋱D及其源代碼框架上進行開發(fā),而無需過多關(guān)心多型號、多處理器硬件平臺及其配置。

          4 以代碼建模為中心的開發(fā)模式

          根據(jù)硬件平臺的配置文件,實時開發(fā)環(huán)境可以構(gòu)建出多處理器拓?fù)鋱D,開發(fā)人員可以在多處理器拓?fù)鋱D上進行開發(fā),可以完成開發(fā)階段的如下工作:

          1.定義數(shù)據(jù)流處理的鏈路,既數(shù)據(jù)流在多處理器之間的流動方向及其流入、流出尺寸規(guī)格,同時定義用于數(shù)據(jù)流的內(nèi)存分配,對于流入或者流出的數(shù)據(jù)可以定義單緩存或者雙緩存方案。對于周期處理算法,還可以定義每個處理器節(jié)點的處理周期。

          2.定義處理器節(jié)點的任務(wù),既處理器可以調(diào)度的執(zhí)行單元,可以定義任務(wù)的名稱及其參數(shù)、任務(wù)堆棧的大小、任務(wù)執(zhí)行的優(yōu)先級等。

          3.定義處理器節(jié)點的資源,如信號量、郵箱等。

          4.定義任務(wù)或者處理算法的內(nèi)存分配,既處理器節(jié)點變量的定義。在內(nèi)存定義分配時,實時開發(fā)環(huán)境可以根據(jù)硬件配置文件實時判斷內(nèi)存分配的可行與否,給出提示信息。

          5.定義目標(biāo)程序(處理器節(jié)點的任務(wù))調(diào)試的方案,在目標(biāo)代碼中生成調(diào)試程序。

          在多處理器拓?fù)鋱D上完成開發(fā)階段的工作后,即可自動生成代碼框架,然后開發(fā)人員在生成的代碼框架上繼續(xù)開發(fā)。在代碼框架自動生成的環(huán)境中,事先定義好代碼框架生成的模板,同時開放代碼框架模板并給出說明,這樣開發(fā)人員可以自行定義不同類型多處理器硬件平臺、及其操作系統(tǒng)的代碼框架模板。代碼框架模板的內(nèi)容主要包括:支持的數(shù)據(jù)類型、數(shù)據(jù)流通信的代碼、郵箱代碼、信號量代碼、中斷代碼、調(diào)試程序代碼等。

          以代碼建模為中心的開發(fā)模式分順序開發(fā)流程和增量開發(fā)流程,如下圖2和圖3所示:

          圖2 順序開發(fā)流程

          圖3 增量開發(fā)流程

          在多處理器程序調(diào)試階段,除了傳統(tǒng)的調(diào)試視圖,還可以增加多處理器拓?fù)鋱D的調(diào)試視圖??梢酝ㄟ^多處理器拓?fù)鋱D的調(diào)試視圖觀察多處理器程序執(zhí)行的情況,包括數(shù)據(jù)流通信情況、處理器節(jié)點任務(wù)的執(zhí)行時間、內(nèi)存使用情況等。

          在目標(biāo)機硬件診斷階段,也可以通過多處理器拓?fù)鋱D動態(tài)顯示硬件的診斷結(jié)果,既直觀又容易定位。

          可以看出,在多處理器程序開發(fā)的主要步驟都可以圍繞多處理器拓?fù)鋱D進行,同時多處理器拓?fù)鋱D也是很好的目標(biāo)程序說明文檔。這種開發(fā)模式稱為以代碼建模為中心的開發(fā)模式[5]。

          5 結(jié)論

          本文作者創(chuàng)新點:本文設(shè)計的多處理器實時開發(fā)環(huán)境是一款開放式、基于標(biāo)準(zhǔn)的多處理器實時開發(fā)環(huán)境。在通用環(huán)境下,使得多處理器軟件開發(fā)的各個階段更趨標(biāo)準(zhǔn)化,它不僅能夠顯著提高開發(fā)人員、項目團隊的工作效率,而且能夠帶來性能、集成以及實用型的獨特組合,適合于多型號、多處理器目標(biāo)系統(tǒng)的開發(fā),包括了軟、硬件系統(tǒng)仿真功能,工程管理和系統(tǒng)構(gòu)建,版本管理,編輯器,命令解釋器,調(diào)試工具,系統(tǒng)分析工具,系統(tǒng)觀察工具等功能模塊。這種統(tǒng)一的軟件開發(fā)環(huán)境使在基于多處理器目標(biāo)機的系統(tǒng)級開發(fā)變得簡單易行。

          致謝: 該文得到了湖北省科技攻關(guān)計劃項目基金(編號:2004AA210B01)的支持,在此特予致謝。本文的研究是做為該項目的一個子課題來進行的,其中第一作者參與了該項目的具體開發(fā)。

          參考文獻

          [1]許家玉,經(jīng)亞枝.基于DSP+FPGA的遺傳算法硬件實現(xiàn)[J].微計算機信息,2005,(01) .

          [2]劉洪星,謝玉山.Eclipse開發(fā)平臺及其應(yīng)用[J].武漢理工大學(xué)學(xué)報(信息與管理工程版),2005,(02)

          [3]黃凱.基于Eclipse體系的構(gòu)件開發(fā)管理平臺的設(shè)計實現(xiàn)[J].科學(xué)技術(shù)與工程,2005,(14)

          [4]魏曉云,陳杰,曾云. DSP技術(shù)的最新發(fā)展及其應(yīng)用現(xiàn)狀[J].半導(dǎo)體技術(shù),2003,(09)

          [5] 張進軍,張維勇,薛來文.一種基于插件的軟件體系結(jié)構(gòu)[J].合肥工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2005,(04)



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();