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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DSP系統(tǒng)的動(dòng)態(tài)加載技術(shù)研究

          DSP系統(tǒng)的動(dòng)態(tài)加載技術(shù)研究

          作者: 時(shí)間:2011-08-26 來源:網(wǎng)絡(luò) 收藏

          目前,開發(fā)人員發(fā)現(xiàn)應(yīng)用模塊是在運(yùn)行期間再配置以改變或擴(kuò)展其功能的最有效方式。開發(fā)人員不能 在運(yùn)行前靜態(tài)配置許多 ,其原因在于執(zhí)行操作的實(shí)時(shí)要求。但是,允許根據(jù)需要進(jìn)行自身的再配置。舉例而言,支持多個(gè)調(diào)制解調(diào)器協(xié)議的基站系統(tǒng)可使用,從而為目前的服務(wù)請求進(jìn)行適當(dāng)?shù)淖陨碓倥渲?。我們不妨再舉另一個(gè)例子,即把基于Web的內(nèi)容下載到無線手持終端中。我們不能鏈接一個(gè)靜態(tài)的程序圖像,讓它支持用戶可能選擇的所有潛在Web瀏覽路徑。但是,我們可以通過動(dòng)態(tài)加載在用戶需要時(shí)下載某功能所需的支持。這種運(yùn)行時(shí)的靈活性使動(dòng)態(tài)加載成為可再配置 系統(tǒng)的關(guān)鍵。

          本文引用地址:http://www.ex-cimer.com/article/150287.htm

            動(dòng)態(tài)加載在臺(tái)式機(jī)領(lǐng)域很常見,用戶常用它從各自獨(dú)立的可升級(jí)模塊來進(jìn)行應(yīng)用匯編。但是,開發(fā)人員過去在系統(tǒng)中不怎么使用動(dòng)態(tài)加載,因?yàn)檫^去它們通常都是帶有實(shí)時(shí)確定要求的單一應(yīng)用。

            其他的沉沒

            開發(fā)人員也已嘗試過采用靜態(tài)技術(shù)進(jìn)行再配置,但上述技術(shù)與動(dòng)態(tài)加載相比較少成功,其中之一就是構(gòu)建了多個(gè)程序圖像,每個(gè)圖像都帶有不同的算法集合。當(dāng)開發(fā)人員在運(yùn)行時(shí)可以確定實(shí)際的配置時(shí),就可以下載適當(dāng)?shù)膱D像。在帶寬有限的無線鏈接情況下,可能需要很長的時(shí)間才能下載完整的應(yīng)用,而且如果開發(fā)人員必須通過重復(fù)下載完整的圖像才能在運(yùn)行過程中對系統(tǒng)進(jìn)行再配置的話,那么就會(huì)中斷系統(tǒng)的使用。對于開發(fā)人員來說,這種方法要求在構(gòu)建應(yīng)用可能需要的所有圖像之前須提前進(jìn)行全面了解。

            在具有多種獨(dú)立功能差異的系統(tǒng)中,開發(fā)人員必須構(gòu)建的圖像數(shù)量也呈組合式增長。隨著系統(tǒng)和軟件應(yīng)用變得越發(fā)復(fù)雜,最終也不可能預(yù)先確定所有潛在要求,因此這種方法也就不再可行了。

            開發(fā)人員還推出了疊加技術(shù),可部分地解決上述問題。根據(jù)這種方法,備用代碼或數(shù)據(jù)處于相同的存儲(chǔ)器空間中。當(dāng)模塊在運(yùn)行時(shí)被寫入該空間并疊加原先的模塊時(shí),就會(huì)進(jìn)行再配置。這種方法減少了加載時(shí)間,并且進(jìn)行再配置也不必中斷應(yīng)用。如果開發(fā)人員可限制系統(tǒng)僅從一個(gè)系列選擇中做出一種選擇,那么系統(tǒng)就可相當(dāng)有效地采用疊加的方法了。但如果系統(tǒng)要求多種選擇,那么為每個(gè)疊加都預(yù)先確定存儲(chǔ)器分配就不大可能現(xiàn)實(shí)了。這種情況可能會(huì)要求構(gòu)建多個(gè)疊加圖像,每個(gè)圖像針對一個(gè)可能的存儲(chǔ)器進(jìn)行綁定。這種方法也再次帶來了圖像數(shù)量組合增長的問題。

            動(dòng)態(tài)加載的優(yōu)勢

            動(dòng)態(tài)加載將模塊與系統(tǒng)物理存儲(chǔ)器的綁定延遲到運(yùn)行時(shí)再進(jìn)行,這就避免了上述問題。因此,代碼可運(yùn)行于不同的系統(tǒng)設(shè)置上,從而帶來了更高的靈活性與可重復(fù)使用性。在大多數(shù)嵌入式系統(tǒng)中,片上存儲(chǔ)器非常珍貴,系統(tǒng)必須對其進(jìn)行高效利用,但確定系統(tǒng)的哪部分應(yīng)駐留于片上存儲(chǔ)器中可能在開發(fā)過程中具有很強(qiáng)的局限性。動(dòng)態(tài)加載允許開發(fā)人員推遲到運(yùn)行時(shí)再做出決定,這時(shí)他們可采用實(shí)時(shí)條件來確定在給定時(shí)間中哪種算法應(yīng)駐留于存儲(chǔ)器。開發(fā)人員可根據(jù)需要重復(fù)地替代或交換算法,這對應(yīng)用持續(xù)使用的影響也較小。在新型的無線系統(tǒng)中,多通道應(yīng)用可根據(jù)需要交換編解碼器算法,而無線個(gè)人通信裝置可從遠(yuǎn)程服務(wù)器下載 DSP 內(nèi)容。

            動(dòng)態(tài)加載也使系統(tǒng)的升級(jí)變得更為方便。升級(jí)時(shí)開發(fā)人員通常必須得寫整個(gè)系統(tǒng),其中包括寶貴的用戶與配置數(shù)據(jù)。但利用動(dòng)態(tài)加載,他們可將升級(jí)限制在系統(tǒng)的一個(gè)或更多部分,如某種算法或某個(gè)數(shù)據(jù)表格。此外,動(dòng)態(tài)模塊升級(jí)還僅取決于基礎(chǔ)系統(tǒng)提供的功能API(應(yīng)用編程接口);而非取決于基礎(chǔ)系統(tǒng)的靜態(tài)地址。這意味著,一個(gè)動(dòng)態(tài)模塊可支持多個(gè)產(chǎn)品版本,只要所有版本提供的API相同即可。

            表1總結(jié)了DSP系統(tǒng)再配置的關(guān)鍵問題。顯示了動(dòng)態(tài)加載與疊加及靜態(tài)加載屬性之間的比較。正如該表所示,與靜態(tài)圖像及疊加相比,動(dòng)態(tài)加載在基于DSP系統(tǒng)的再配置方面具有強(qiáng)大的優(yōu)勢。

            

            我們接下來將根據(jù) TI 的 TMS320 DSP 討論動(dòng)態(tài)加載的組件及其工作的方式,不過根據(jù)實(shí)施不同,具體細(xì)節(jié)也有所不同。

            自加載 DSP 應(yīng)用

            在典型的自加載 DSP 應(yīng)用中,單獨(dú)的 DSP 運(yùn)行于主控制程序中,該程序包括動(dòng)態(tài)加載器庫(圖 1)。這種方法保存了一些動(dòng)態(tài)圖像所用的 DSP 存儲(chǔ)器。當(dāng)應(yīng)用要求動(dòng)態(tài)模塊或動(dòng)態(tài)模塊組時(shí),該控制程序?qū)⒄{(diào)用動(dòng)態(tài)加載器,指定待加載的模塊圖像。模塊圖像可位于閃存或二級(jí)存儲(chǔ)設(shè)備中,系統(tǒng)也可從某些設(shè)備中讀取圖像。加載器為每個(gè)模塊分配存儲(chǔ)器,為所選的存儲(chǔ)器調(diào)整圖像位置,建立到主程序的任何引用,并將調(diào)整后的圖像復(fù)制到動(dòng)態(tài)存儲(chǔ)器中。當(dāng)加載完成后,動(dòng)態(tài)模塊則與應(yīng)用無縫集成,就象它從初始化之后即存在于系統(tǒng)中一樣。

            自加載的典型使用為具備 DSP 功能的支持多種媒體格式的媒體播放器設(shè)備。它將每種可能的輸入來源、媒體格式、音頻效果及輸出進(jìn)程表示為動(dòng)態(tài)模塊。當(dāng)用戶選擇媒體時(shí),系統(tǒng)將加載適當(dāng)?shù)哪K并開始播放。

            

            圖1 DSP 的動(dòng)態(tài)自加載

            MCU 控制的加載

            在典型的 MCU 控制的 DSP 應(yīng)用中,微控制器管理 一個(gè)或更多 DSP 處理器(圖 2)。微控制器選擇在每個(gè) DSP 上的哪個(gè) DSP 模塊或模塊集運(yùn)行,并使用動(dòng)態(tài)加載器加載適當(dāng)?shù)哪K。這種使用在幾個(gè)重要方面不同于自加載應(yīng)用。其一,動(dòng)態(tài)加載器運(yùn)行于微處理器上,而不是運(yùn)行于正在加載的處理器上。此外,微處理器通常代表 DSP 管理動(dòng)態(tài)存儲(chǔ)器,因?yàn)?DSP 要求非直接存儲(chǔ)器分配算法。再者,在微計(jì)算機(jī)控制的加載中,動(dòng)態(tài)圖像的加載可能要求通過接口外設(shè)進(jìn)行輸出,因?yàn)槲⒖刂破骺赡懿荒苤苯釉L問 DSP 存儲(chǔ)器的地址。

            主從應(yīng)用發(fā)生于基站、中心局及無線終端中。在基站和中心局中,單一的微控制器管理多個(gè) DSP,每個(gè) DSP 處理多個(gè)通道。TI 的 OMAP1610平臺(tái)是一個(gè)典型的無線終端。該設(shè)備主要面向手持多媒體應(yīng)用,其中,系統(tǒng)主機(jī)為ARM MCU,其包括 DSP 橋接功能,可控制 TMS320C55x的加載、初始化及代碼執(zhí)行。

            

            圖2 MCU 控制的動(dòng)態(tài)加載

            現(xiàn)場測試應(yīng)用

            在典型的現(xiàn)場實(shí)驗(yàn)應(yīng)用中,服務(wù)技術(shù)人員給出一系列顯示為動(dòng)態(tài)加載模塊的測試應(yīng)用。通常說來,廠商隨著時(shí)間的發(fā)展會(huì)增加并改善本測試。用于測試模塊的備用存儲(chǔ)器加入接受維修服務(wù)的產(chǎn)品,并啟用實(shí)現(xiàn)動(dòng)態(tài)加載。測試設(shè)備包括測試模塊以及動(dòng)態(tài)加載器和測試控制應(yīng)用(這里的加載器可能位于測試控制應(yīng)用中,也可能內(nèi)置于加入的產(chǎn)品中)。測試設(shè)備還包括內(nèi)置于產(chǎn)品中的加入點(diǎn)定義(這些符號(hào)定義可內(nèi)置于產(chǎn)品中,抑或測試集可將其作為符號(hào)模塊承載)。診斷測試通過加載各獨(dú)立測試進(jìn)行。每個(gè)測試都動(dòng)態(tài)連接到其要求的產(chǎn)品軟件服務(wù)中,如設(shè)備驅(qū)動(dòng)程序和狀態(tài)變量。


          上一頁 1 2 下一頁

          評(píng)論


          相關(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); })();