《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 解決方案 > 采用集成DSP與微處理器內(nèi)核的嵌入式應(yīng)用

采用集成DSP與微處理器內(nèi)核的嵌入式應(yīng)用

2012-05-25

  嵌入式應(yīng)用包括信號(hào)處理算法與控制算法,,在多種實(shí)時(shí)嵌入式系統(tǒng)中,這兩種算法共同執(zhí)行必需的功能,,因此我們應(yīng)了解控制算法與數(shù)字信號(hào)處理器 (DSP) 算法是如何實(shí)現(xiàn)互操作性的,。在手機(jī)和 MP3 播放器等應(yīng)用中,要解決上述互操作性問(wèn)題,,傳統(tǒng)做法是分別用 RISC 處理器和DSP來(lái)處理控制算法與信號(hào)處理算法,。例如,,在手機(jī)中,信號(hào)處理功能負(fù)責(zé)處理音視頻應(yīng)用中的回聲消除與編解碼工作,。由于DSP 架構(gòu)是專(zhuān)門(mén)設(shè)計(jì)用于執(zhí)行信號(hào)處理算法的,,因此信號(hào)處理算法在 DSP 上的 運(yùn)行效率很高;而手機(jī)中的控制軟件則負(fù)責(zé)執(zhí)行狀態(tài)機(jī),,即控制用戶(hù)界面,、鍵盤(pán)及其它非信號(hào)處理功能。

  開(kāi)發(fā)包括信號(hào)處理與控制算法且要求這兩種算法間實(shí)現(xiàn)互操作性的嵌入式應(yīng)用時(shí),,我們要面臨幾大挑戰(zhàn),。舉例來(lái)說(shuō),當(dāng)我們將桌面應(yīng)用或其它復(fù)雜應(yīng)用連接到嵌入式設(shè)備上時(shí),,讓該嵌入式設(shè)備的DSP/RISC 內(nèi)核實(shí)時(shí)工作并適當(dāng)?shù)剡M(jìn)行代碼分組(code partitioning)會(huì)相當(dāng)困難,,因?yàn)橐@兩種不同內(nèi)核實(shí)現(xiàn)同步操作需要進(jìn)行大量的工作。視頻或協(xié)議處理等眾多高級(jí)嵌入式應(yīng)用會(huì)增加多內(nèi)核上代碼分組的難度,,而且大多數(shù)代碼分組工作都要由編程人員完成,。以采用德州儀器 (TI)TMS320C55x DSP 與 ARM RISC 處理器的雙內(nèi)核架構(gòu)為例來(lái)說(shuō),DSP 執(zhí)行信號(hào)處理任務(wù),,而 ARM 9 則執(zhí)行控制功能 (如圖 1 所示),。 

 傳統(tǒng)的雙內(nèi)核 DSP/RISC 處理架構(gòu)

圖 1  傳統(tǒng)的雙內(nèi)核 DSP/RISC 處理架構(gòu)

  另一種方法是在單個(gè)設(shè)備中集成 DSP 與微處理器,我們可向 RISC 內(nèi)核添加類(lèi)似于 DSP 的指令(如乘法或累加指令)或向 DSP 內(nèi)核添加類(lèi)似的控制指令(如執(zhí)行特定尋址任務(wù)的指令),,從而實(shí)現(xiàn)上述目的,。憑借相關(guān)工具的支持,這種“集成化”技術(shù)具有一定的優(yōu)勢(shì),,如在操作系統(tǒng)上僅運(yùn)行唯一的原生應(yīng)用,,這樣就能簡(jiǎn)化設(shè)計(jì)方案,便于集成,,并加快產(chǎn)品上市進(jìn)程,。

  在傳統(tǒng)嵌入式應(yīng)用中,分別采用通用微處理器(或微控制器)和DSP內(nèi)核來(lái)執(zhí)行通用功能與信號(hào)處理算法,。上述方法的合理性在于:

  • SP 內(nèi)核專(zhuān)門(mén)運(yùn)行信號(hào)處理算法,,效率較高;
  • SP 架構(gòu)共享一系列常見(jiàn)功能,,如并行計(jì)算與移動(dòng),、快速乘法累加 (MAC) 運(yùn)算以及Harvard 架構(gòu)等,支持多個(gè)運(yùn)算的同時(shí)存??; 
  • SP處理器通常不采用RISC設(shè)計(jì)原理;
  • SP架構(gòu)是在電信及多媒體領(lǐng)域的視頻,、影像與語(yǔ)音處理等應(yīng)用以及數(shù)據(jù)壓縮與解壓縮功能的驅(qū)動(dòng)下應(yīng)運(yùn)而生的,;
  • SP 指令集以存儲(chǔ)器為導(dǎo)向,,并針對(duì)過(guò)濾與轉(zhuǎn)換等信號(hào)處理算法的執(zhí)行進(jìn)行了精心優(yōu)化。為了支持上述運(yùn)算,,DSP 采用專(zhuān)用寄存器,、地址單元、乘法累加單元及片上存儲(chǔ)器等,。

  系統(tǒng)應(yīng)用分組的最大挑戰(zhàn)在于,,每個(gè)內(nèi)核都需要自己的外部存儲(chǔ)器子系統(tǒng),這會(huì)增加功耗,。除了控制獨(dú)立存儲(chǔ)器子系統(tǒng)所需的功耗之外,,通常每個(gè)內(nèi)核還要控制自己的一套外設(shè),,以實(shí)現(xiàn)處理內(nèi)核數(shù)據(jù)的存取(如圖1所示,,DSP 及 ARM 與各自可能互不相同的一套外設(shè)及存儲(chǔ)器子系統(tǒng)相連),這也會(huì)增加功耗,,而且還會(huì)加大整體系統(tǒng)通信開(kāi)銷(xiāo),。

  向 RISC 內(nèi)核添加 DSP 指令

  在 RISC 架構(gòu)中集成 DSP 單元不僅能夠?qū)崿F(xiàn)更多并行操作,而且還更有效地共享資源(如外設(shè)及存儲(chǔ)器等),。因此,,

 

采用速度更快的 RISC 架構(gòu),DSP算法的執(zhí)行速度也相應(yīng)地提高了,。

 

  不過(guò),,RISC 架構(gòu)采用負(fù)載/存儲(chǔ)原理,指令集的通用性較強(qiáng),,因此會(huì)對(duì)性能造成負(fù)面影響,。有關(guān)設(shè)備的高速緩存技術(shù)比較復(fù)雜且大量使用管線處理,從而需要較高的時(shí)鐘頻率,?;?RISC 的微處理器添加增強(qiáng)型 DSP 功能與特性后,可支持乘法累加指令等 DSP 算法,,也能支持圖像或影像處理等專(zhuān)門(mén)單元,。

  由于帶 RISC/DSP 雙內(nèi)核的處理器能夠完成兩個(gè)單核處理器的工作,因此不存在處理器間通信的問(wèn)題,。利用集成內(nèi)核,,我們可在 DSP 與控制器上動(dòng)態(tài)進(jìn)行代碼分組,以適應(yīng)系統(tǒng)要求或環(huán)境的變化,。這種模式不僅能夠加快環(huán)境轉(zhuǎn)換,,而且由于無(wú)需兩套外設(shè)或存儲(chǔ)器,因此進(jìn)一步降低了資源占用,。此外,,這種方法還提高了系統(tǒng)的集成度,,這不僅有助于降低功耗,而且還能通過(guò)在單個(gè)設(shè)備上集成更多功能而實(shí)現(xiàn)成本降低,、性能提高及芯片尺寸縮減等其它多種優(yōu)勢(shì),。

  如前所述,現(xiàn)代 DSP 處理器本身具備一些通用特性,,如配置用于 DSP 運(yùn)算的專(zhuān)用數(shù)據(jù)路徑,、以DSP 為中心的運(yùn)算所需的專(zhuān)用指令集、滿(mǎn)足多個(gè)時(shí)序存儲(chǔ)器存取所需的多個(gè)存儲(chǔ)體與總線,,以及DSP 的專(zhuān)用外設(shè)等,。

  另一方面,通用處理器也在自身內(nèi)核中集成了類(lèi)似 DSP 的功能,。我們可采用多種方法來(lái)為通用處理器添加 DSP 功能,。設(shè)計(jì)人員可添加專(zhuān)用的單指令、多數(shù)據(jù)指令以及諸如多媒體擴(kuò)展指令集 (MMX)指令等,,也可為多個(gè)取操作數(shù)在現(xiàn)有 CPU內(nèi)核(如瑞薩SH-DSP)上集成類(lèi)似于定點(diǎn) DSP 處理器的數(shù)據(jù)路徑及其它相關(guān)資源,。與ARM 公司的 NEON 架構(gòu)類(lèi)似,我們還可向 CPU 添加 DSP協(xié)處理器,。設(shè)計(jì)人員也可創(chuàng)建三內(nèi)核處理器等混合架構(gòu),。

 

  帶有集成 DSP 功能與特性的架構(gòu)

  NEON SIMD 指令能并行處理 16 個(gè)元件,這加速了媒體及 DSP 應(yīng)用,。有關(guān)指令與內(nèi)核密切配合(如圖 2 所示),,這種集成技術(shù)使我們能統(tǒng)一查看與 ARM 內(nèi)核共享的存儲(chǔ)器的情況,從而能使用統(tǒng)一的指令流,,明確統(tǒng)一的平臺(tái)目標(biāo),,進(jìn)而加速整體應(yīng)用開(kāi)發(fā)進(jìn)程。

ARM NEON 架構(gòu)

圖 2  ARM NEON 架構(gòu)

 

  這種架構(gòu)對(duì) 3G 手機(jī)等特定應(yīng)用而言非常適用,。就這種應(yīng)用來(lái)說(shuō),,DSP 數(shù)據(jù)引擎可用于視頻編碼等專(zhuān)門(mén)的處理工作,而集成了NEON DSP 功能的 ARM 內(nèi)核則可用于音視頻解碼,,RISC 處理引擎則可用于用戶(hù)界面及協(xié)議棧處理等,。

  三內(nèi)核架構(gòu)(如圖 3 所示)將類(lèi)似于 MCU 的 RISC 負(fù)載/存儲(chǔ)型架構(gòu)與類(lèi)似 DSP 的 Harvard 存儲(chǔ)器架構(gòu)結(jié)合在一起,地址總線均為 32 位寬,。程序與數(shù)據(jù)存儲(chǔ)器總線為 64 位寬,。內(nèi)核本身不包含任何存儲(chǔ)器,不過(guò)可由設(shè)計(jì)人員定制,。超標(biāo)量架構(gòu)包括 32 位定點(diǎn)數(shù)據(jù)通路,、負(fù)載/存儲(chǔ)單元及程序控制單元等。該設(shè)備每個(gè)循環(huán)能執(zhí)行多達(dá)三個(gè)指令(數(shù)據(jù)通路指令,、負(fù)載/存儲(chǔ)指令以及指定回路的指令),,這適合高性能DSP應(yīng)用的需求,。

三內(nèi)核構(gòu)架

圖3 三內(nèi)核構(gòu)架

  有關(guān)設(shè)備還支持各種 DSP 尋址模式,其中包括帶前后增量的寄存器間接尋址,、索引尋址,、循環(huán)(自動(dòng)模數(shù))尋址及位翻轉(zhuǎn)尋址等。位翻轉(zhuǎn)技術(shù)對(duì)譯出FFT算法的輸入輸出很有用,,這是常見(jiàn)的DSP操作,。此外還支持零開(kāi)銷(xiāo)硬件循環(huán)。

  總之,,采用集成 RISC/DSP 處理器支持實(shí)時(shí)嵌入式系統(tǒng)的優(yōu)勢(shì)在于:

  • 不影響DSP與微控制器性能的條件下,,單個(gè)架構(gòu)完美集成了DSP與微控制器的功能與特性;
  • 速任務(wù)切換功能使集成內(nèi)核能像虛擬處理器一樣工作,,并在DSP與微控制器任務(wù)間實(shí)現(xiàn)快速切換,,有時(shí)僅需幾個(gè)時(shí)鐘周期;
  • 大的片上存儲(chǔ)器塊(RAM 與 ROM)有助于提高系統(tǒng)性能并降低功耗,;
  • 成架構(gòu)無(wú)需額外的粘接邏輯便可直接控制片上外設(shè),。
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。