<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于算法的DSP硬件結構分析

基于算法的DSP硬件結構分析

作者: 時(shí)間:2008-04-30 來(lái)源:網(wǎng)絡(luò ) 收藏
1引言

在當前信息化、數字化進(jìn)程中,信號作為信息的傳輸和處理對象,逐漸由模擬信號變成數字信號。信息化的基礎是數字化,而數字化的核心技術(shù)之一就是數字信號處理。數字信號處理技術(shù)已成為人們日益關(guān)注的并得到迅速發(fā)展的前沿技術(shù)。作為一種特別適合于進(jìn)行數字信號處理運算的微處理器,憑借其獨特的和出色的數字信號處理能力,廣泛應用于通訊、語(yǔ)言識別、圖像處理、自動(dòng)控制等領(lǐng)域。

2的主要特點(diǎn)及其要求

數字信號處理是指將模擬信號通過(guò)采樣進(jìn)行數字化后的信號進(jìn)行、處理、它側重于理論、及軟件實(shí)現。數字信號處理具有如下一些主要的特點(diǎn):

①信號處理算法運算量大,要求速度快。不論是一維的語(yǔ)言信號,還是二維的圖像信號,一般算法的運算量都很大,且算法的實(shí)現都必須實(shí)時(shí)。
②信號處理算法通常需要執行大量的乘累加運算。比如FIR濾波算法主要執行的是一個(gè)點(diǎn)積運算,也就是以乘、加為主的運算。

③信號處理算法常具有某些特定模式。比較典型的數字濾波器中的連續推移位。

④信號處理算法大部分處理時(shí)間花在執行相對小循環(huán)的操作上。

⑤信號處理要求專(zhuān)門(mén)的接口。一個(gè)非常重要的接口是把模擬信號與數字信號相互轉換的ADC和DAC,另外大量的數據交換需要有高速的數據吞吐能力。

從一開(kāi)始,就是針對DSP算法模型進(jìn)行構造的,幾乎所有的DSP都包含有DSP算法的特征。因此,數字信號處理的上述特點(diǎn)要求DSP必須是專(zhuān)門(mén)設計的,典型DSP的設計滿(mǎn)足數字信號處理的這樣一些要求:

①單周期快速運算,允許任意計算次序。

②單周期內能取兩個(gè)以上操作數,保證快速的乘累加運算(MAC)。

③能產(chǎn)生信號處理算法需要的特殊尋址,如循環(huán)尋址和位翻轉尋址。

④有相應的循環(huán)緩沖區,能執行零開(kāi)銷(xiāo)的循環(huán)和轉移操作。

⑤具有串口、DMA控制器、定時(shí)器等豐富的外設資源。

3DSP的基本組成

3.1多總線(xiàn)結構

微處理器內一般有兩種基本總線(xiàn)結構:馮諾曼結構和哈佛結構。這兩種總線(xiàn)結構的結構框圖如圖1所示。馮諾曼結構取指令、取數據都是通過(guò)同一總線(xiàn)完成。因此必須分時(shí)進(jìn)行,在高速運算時(shí),往往在傳輸通道上出現瓶頸效應。而DSP內部采用的是哈佛結構,它在片內至少有四套總線(xiàn):程序的數據總線(xiàn)、程序的地址總線(xiàn)、數據的數據總線(xiàn)和數據的地址總線(xiàn)。這種分離的程序總線(xiàn)和數據總線(xiàn),可允許同時(shí)獲取來(lái)自程序存儲器的指令字和來(lái)自數據存儲器的操作數,互不干擾。有的DSP片內還包括有其他總線(xiàn),如DMA總線(xiàn)等,可在單周期內完成更多的工作。


3.2流水線(xiàn)

與哈佛總線(xiàn)結構相關(guān),DSP廣泛采用流水線(xiàn)以減少指令執行時(shí)間,從而增加了處理器的處理能力。要執行一條DSP指令,需要通過(guò)取指、譯碼、取操作數、執行等幾個(gè)階段,DSP的流水線(xiàn)結構是指它的這幾個(gè)階段在程序執行過(guò)程中是重疊進(jìn)行的,即在對本條指令取指的同時(shí),前面的三條指令已依次完成譯碼、取操作數、執行的操作。正是利用這種流水線(xiàn)機制,保證DSP的乘法、加法以及乘累加可以在單周期內完成,這對提高DSP的運算速度具有重要意義,特別是當設計的算法需要連續的乘累加運算時(shí)。


3.3硬件乘法器


專(zhuān)用的硬件乘法器是DSP的特征之一,硬件乘法器的功能是在單周期內完成一次乘法運算。DSP內還增加了累加器寄存器來(lái)處理多個(gè)乘積的和,而且該寄存器通常比其他寄存器寬,這樣保證乘累加運算結果不至于發(fā)生溢出。


3.4多處理單元


DSP內部一般都包括多個(gè)處理單元,如ALU、乘法器、輔助算術(shù)單元等。它們都可在單獨的一個(gè)指令周期內執行完計算和操作任務(wù),而且往往同時(shí)完成。這種結構特別適合于濾波器的設計,如FIR和IIR。這種多處理單元結構還表現為在將一些特殊的算法作成硬件,如典型的FFT的位翻轉尋址和流水FIR濾波算法的循環(huán)尋址等。而且大部分DSP具有零消耗循環(huán)控制的專(zhuān)門(mén)硬件,使得處理器不用花時(shí)間測試循環(huán)計數器的值就能執行一組指令的循環(huán),硬件完成循環(huán)跳轉和循環(huán)計數器的衰減。


3.5外圍設備


DSP片內通常具有DMA控制器、串行口、定時(shí)器等外設,所以用戶(hù)通常只需要外加很少的器件就可以構成自己的DSP系統。DMA控制器可以在不干擾CPU操作的前提下,由其專(zhuān)用的數據存取通道獨立完成接口到片內存儲器之間的數據傳輸,從而形成片內的高速數據通道。大多數DSP還支持IEEE1149.1標準,用戶(hù)通過(guò)JTAG端口可對DSP進(jìn)行在線(xiàn)
實(shí)時(shí)仿真。

4當前主流DSP的體系結構

近年來(lái),DSP不斷推陳出新,其硬件結構也有了很大的改進(jìn)和提高。DSP體系結構的革新在很大程度上受到應用需求的影響,其指令集的設計是面向存儲器和數字信號處理算法來(lái)進(jìn)行性能優(yōu)化的。當前高性能DSP結構的主在特點(diǎn)就是采用了各種并行處理技術(shù),它可由兩個(gè)途徑實(shí)現:一種途徑是VLIW、類(lèi)RISC指令集等技術(shù)來(lái)增加單時(shí)鐘周期并發(fā)的指令數;另一種途徑是通過(guò)SIMD、增大總線(xiàn)字長(cháng)或增加指令字的長(cháng)度等技術(shù)來(lái)增加單指令周期并行執行的處理單元個(gè)數。


4.1VLIW結構及其優(yōu)缺點(diǎn)


TI公司TMS320C6X系列DSP就是采用了VLIW的體系結構,其結構如圖2所示。在VLIW處理器的硬件上,各功能單元共用大型寄存器堆,由功能單元同時(shí)執行的各種操作是由VLIW的長(cháng)指令來(lái)同步,它把長(cháng)指令中不同字段的操作碼分送給不同的功能單元。相對于傳統型DSP,VLIW處理器使用簡(jiǎn)單的指令集,一條指令只完成一個(gè)操作。這個(gè)處理器將簡(jiǎn)單指令并行地發(fā)射出去,并同時(shí)執行,有這樣的多條指令構成一個(gè)超長(cháng)指令字。由于使用了簡(jiǎn)單指令集后,簡(jiǎn)化了譯碼和執行操作。


VLIW技術(shù)極大地提高DSP的性能,但它也有缺點(diǎn)。由于它的指令字長(cháng)增加了,所以它較大地增加了程序存儲器的占用空間,使得DSP的成本隨之增加。同時(shí)為了支持多個(gè)并行指令的執行,這種結構的DSP要求有龐大的調整寄存器堆。


4.2SIMD結構及其優(yōu)缺點(diǎn)


SIMD處理器把輸入的長(cháng)數據分解為多個(gè)較短的數據,然后由單指令并行地操作。它在目前一些高性能的DSP得到了應用,如AD公司的ADSP21160系列DSP,如圖3所示。該結構內有兩套包括ALU、桶形移位器、乘法器和寄存器堆等功能部件的運算單元,可在單周期內對不同的操作數執行兩個(gè)及以上的乘法操作。SIMD使總線(xiàn)、數據通道等資源充分
利用,并無(wú)需改變信號處理的基本結構。但是,這種結構只有處理并行算法時(shí)才是高效的。對于那種算法中的結果作為下一操作輸入的串行算法,SIMD處理器通常不使用。

5DSP結構改進(jìn)的思考

過(guò)去的DSP結構設計主要是面向計算密集型的應用,而對控制密集型支持得不夠。而現實(shí)應用中很多場(chǎng)合需要信號處理和精確控制的有效結合,如數字蜂窩電話(huà),它要有監控和語(yǔ)言音處理的工作?,F代的DSP將采用DSP/MCU的混合結構,在保證計算能力優(yōu)先的前提下,通過(guò)快速的現場(chǎng)切換、多執行部件并行執行等方式,加強控制類(lèi)操作的處理能力。將MCU核集成到DSP核中,或者從整體上對DSP進(jìn)行重新設計,使之兼有DSP和MCU的功能。


另外,為解決速度、功耗、可編程之間的矛盾,我們提出了一種新型的計算方式,它結合了現有微處理器和DSP的時(shí)間計算方式以及ASIC、FPGA解決方案的空間計算方式。這種可重構DSP處理器的關(guān)鍵是它能同時(shí)進(jìn)行時(shí)間和空間計算。它由一個(gè)計算元件互相連接的二維陣列構成,每個(gè)陣列都有各自的邏輯單元和本地寄存器。連接這些計算元件的可編程連線(xiàn)借以對陣列的數據流架構動(dòng)態(tài)重構,從而可根據運行的具體任務(wù)而對其進(jìn)行優(yōu)化。由于可重構計算使開(kāi)發(fā)人員可對其軟硬件加以控制,因此這些編譯器將在需要運行的DSP的系統中實(shí)現真正的軟硬件協(xié)同設計。


關(guān)鍵詞: 結構 分析 硬件 DSP 算法 基于

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>