結合DSP和微控制器特性、用于電機控制的單片處理器
除了功能模塊以外,該內核架構還包含3條內部地址總線(xiàn)、4條內部數據總線(xiàn)、一個(gè)調試端口以及時(shí)鐘生成電路。
高性能DSP控制器設計通常需要具有以下4種特性:
- 高寬帶并行存儲器傳輸性能;
- 支持并行存儲器傳輸并提供DSP尋址模式的AGU;
- 可進(jìn)行快速算法計算、具有足夠寄存器集的計算單元;
- 執行循環(huán)時(shí),不降低性能的硬件循環(huán)機制。
摩托羅拉的架構可滿(mǎn)足這些要求,它有如下一些特點(diǎn):
- 并行轉移(move)指令:靈活的并行轉移指令集允許存儲器存取與計算單元的運行同時(shí)進(jìn)行。實(shí)現高帶寬存取計算單元數據,可保持計算單元始終處于繁忙狀態(tài),消除了數據進(jìn)出計算單元時(shí)的傳輸瓶頸效應。在目前的情況下,允許兩種類(lèi)型的并行轉移:?jiǎn)蜗虿⑿修D移和雙向并行讀。這兩種轉移都在一個(gè)指令周期中執行,并占據程序存儲器的1個(gè)字長(cháng)位置。
- 地址生成單元:地址生成單元(AGU)是進(jìn)行所有地址計算的模塊。在DSP56800內核中,AGU包含兩個(gè)算術(shù)單元和自己的寄存器集,可為數據存儲器提供高達兩個(gè)地址,也可在一個(gè)指令周期中更新兩個(gè)地址。它適應兩種類(lèi)型的算法,包括用于通用地址計算的線(xiàn)性算法以及用于創(chuàng )建存儲器內數據結構的求模算法,通過(guò)更新地址寄存器對數據進(jìn)行操作,而無(wú)需移動(dòng)大塊的數據。
- 數據ALU單元的快速計算:處理器計算單元的性能取決于它如何存取操作數及其計算能力。
許多傳統的DSP設計基于累加器,即無(wú)論操作數來(lái)自哪里,運算的結果總是存儲在累加器中。除了乘法運算不允許累加器作為一個(gè)乘數輸入以外,運算執行后一個(gè)操作數要留在累加器中。
新架構的大量寄存器和正交結構提高了計算的效率,其中算術(shù)運算的結果可寫(xiě)入數據ALU的5個(gè)寄存器中的任一個(gè)。數據ALU輸入也允許是立即數,在任何寄存器進(jìn)行增量運算的同時(shí),進(jìn)行其它寄存器的運算,從而大大增強了寄存器集的性能。累加器也能夠用作乘法器的輸入或用來(lái)累加。這一技術(shù)還減少了存儲器的存取次數,因為中間結果無(wú)需暫時(shí)存儲在存儲器中。該內核的設計不是管線(xiàn)操作,故在一個(gè)指令周期之后乘法或乘法-累加的結果就可獲得,而無(wú)需兩個(gè)指令周期。
- 循環(huán)機制:DSP和其它數字計算程序經(jīng)常使許多處理器的執行時(shí)間浪費在一些與數字相關(guān)的小型計算循環(huán)中,因為這種循環(huán)需要進(jìn)行大量存儲器存取。因此,提供一套具有強大寄存器集的靈活并行轉移指令十分必要,循環(huán)本身的執行時(shí)間的最小化也很重要。DSP56800內核使用一種靈活的硬件循環(huán)機制
,可不附加任何計算時(shí)間,自動(dòng)進(jìn)行循環(huán),成為“無(wú)開(kāi)銷(xiāo)循環(huán)”。這通過(guò)提供一種硬件“DO loop”機制來(lái)實(shí)現,無(wú)需額外的執行時(shí)間就可循環(huán)任意條指令。與早期的無(wú)開(kāi)銷(xiāo)循環(huán)設計不同,這一循環(huán)機制可
評論