新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > TMS320C5000性能介紹-數(shù)字信號(hào)處理器

TMS320C5000性能介紹-數(shù)字信號(hào)處理器

作者: 時(shí)間:2006-05-08 來源:網(wǎng)絡(luò) 收藏
  TMS320C54x是目前普遍使用的芯片。它的特點(diǎn)是功耗很低(在100MIPS時(shí)為60mW),可用于數(shù)字蜂窩通信、個(gè)人通信系統(tǒng)、尋呼機(jī)、個(gè)人數(shù)字助理(PDA)、ATM(異步傳輸模式)交換機(jī)、數(shù)字無線通信、調(diào)制解調(diào)器等領(lǐng)域。圖1表示了C54x的發(fā)展過程及應(yīng)用領(lǐng)域。

圖1 TMS320C5000性能發(fā)展?fàn)顩r及應(yīng)用領(lǐng)域

  TMS320系列的同一代芯片具有相同的結(jié)構(gòu),但根據(jù)市場(chǎng)的不同需要,形成新的存儲(chǔ)器與外設(shè)的不同組合,產(chǎn)生了多種派生器件。

  TMS320C54x關(guān)鍵特性

圖2是C54x功能結(jié)構(gòu)圖,它的主要性能如下:

圖2 TMS320C54x功能結(jié)構(gòu)框圖

先進(jìn)的多總線結(jié)構(gòu):一組程序總線(PAB、PB),三組數(shù)據(jù)總線(CAB、CB,DAB、DB,EAB、EB)

40位的數(shù)學(xué)邏輯單元(ALU):包括40位的桶形移位寄存器和兩個(gè)獨(dú)立的40位累加器

17 17位并行乘法器和40位專用加法器,單周期完成乘法/累加(MAC)

適于Viterbi運(yùn)算的比較、選擇、存儲(chǔ)單元(CSSU)
指數(shù)編碼器,可在單周期內(nèi)計(jì)算(40位)累加器中數(shù)值的指數(shù)
兩個(gè)地址產(chǎn)生器,包括八個(gè)輔助寄存器和兩個(gè)的算術(shù)單元

⒉ 存儲(chǔ)器

可尋址存儲(chǔ)空間達(dá)192K字(程序、數(shù)據(jù)及I/O各64 64bit),C548還可擴(kuò)展程序存儲(chǔ)器(8兆字)

典型C5400芯片存儲(chǔ)器

⒊ 片內(nèi)外設(shè)

軟件可編程等待狀態(tài)產(chǎn)生器

可編程的塊交換

片內(nèi)鎖相環(huán)時(shí)鐘產(chǎn)生器

禁止外部總線的控制機(jī)制

⒋ 指令集

重復(fù)單條指令與重復(fù)指令塊

存儲(chǔ)器塊移動(dòng)指令

32位數(shù)運(yùn)算指令

可同時(shí)讀取2或3個(gè)操作數(shù)的指令

具有并行保存和并行加載的算術(shù)指令

條件保存指令

⒌ 功耗控制

IDLE1、IDLE2和IDLE3指令可控制其進(jìn)入降功耗模式

可控制是否輸出CLKOUT信號(hào)

⒍ IEEE標(biāo)準(zhǔn)的1149.1邊界掃描邏輯接口


  TMS320C54x結(jié)構(gòu)概述

'C54x由中央處理器、存儲(chǔ)器和片內(nèi)外設(shè)組成,采用哈佛結(jié)構(gòu),有獨(dú)立的程序空間、數(shù)據(jù)空間和I/O空間。圖3是'C54x的內(nèi)部硬件框圖。

對(duì)所有的'C54x器件來說,圖中下半部所示的中央處理單元(CPU)是通用的。

總線結(jié)構(gòu)

一組程序總線(PAB、PB)和三組數(shù)據(jù)總線CAB、CB,DAB、DB,EAB、EB)將內(nèi)部各部件聯(lián)系起來。

圖3 TMS320C54x內(nèi)部硬件框圖

PB- 程序總線,傳送程序代碼或存在程序空間的數(shù)據(jù);

CB、DB、EB- 數(shù)據(jù)總線,連接CPU、數(shù)據(jù)地址產(chǎn)生邏輯、程序地址產(chǎn)生邏輯、片內(nèi)外設(shè)及存儲(chǔ)器等各部件;

CB和DB- 傳送從存儲(chǔ)器讀出的數(shù)據(jù),即“讀”操作使用的數(shù)據(jù)總線;
EB-傳送向存儲(chǔ)器寫入的數(shù)據(jù),即"寫"操作使用的數(shù)據(jù)總線;
PAB、CAB、DAB、EAB- 各對(duì)應(yīng)的地址總線;

圖4 ALU功能框圖

中央處理單元(CPU)

ALU:算術(shù)邏輯運(yùn)算單元

主要由40位ALU和兩個(gè)40位累加器(ACCA和ACCB)組成,如圖4所示。

ALU和兩個(gè)累加器用來完成40位二進(jìn)制補(bǔ)碼的算術(shù)運(yùn)算,也能完成布爾運(yùn)算。當(dāng)狀態(tài)寄存儲(chǔ)器ST1的C16位置1時(shí),可做兩個(gè)16位ALU,同時(shí)完成兩個(gè)16位運(yùn)算。

輸入:

16位立即數(shù);

來自數(shù)據(jù)存儲(chǔ)器的16

位數(shù);

來自暫存器T的16位

數(shù);

來自數(shù)據(jù)存儲(chǔ)器讀出

的兩個(gè)16位數(shù);

來自數(shù)據(jù)存儲(chǔ)器讀出

的一個(gè)32位數(shù);

來自累加器(A和B)

的40位數(shù);

圖5 桶形移位器功能框圖

輸出:ALU的40位輸出被送往累加器A或B。

圖6 乘/加模塊功能方框圖

  桶形移位器:將輸入數(shù)據(jù)左移0~31位或右移0~16位,經(jīng)常用作數(shù)字定標(biāo)、位提取、擴(kuò)展算術(shù)和溢出保護(hù)等操作。 輸入40位:來自累加器或經(jīng)DB、CB的 數(shù)據(jù)存儲(chǔ)器;

  輸出40位:連到ALU或經(jīng)EB連到數(shù)據(jù)存儲(chǔ)器;

  所移位數(shù)由指令中移位字段、ST1的ASM字段或T寄存器指定移位位數(shù)決定。

圖7 比較、選擇與保存單元(CSSU)功能框圖

  乘/加模塊:由乘法器、加法器、輸入數(shù)據(jù)的符號(hào)控制邏輯、小數(shù)控制邏輯、零檢測(cè)、舍入、溢出/飽和邏輯和16位暫存寄存器T等組成。乘法器和ALU在一個(gè)指令周期內(nèi)共同完成(17 17補(bǔ)碼)乘/加(40位)運(yùn)算,且可并行地作ALU運(yùn)算,這些功能可用來做Euclidean距離及LMS濾波等復(fù)雜運(yùn)算。乘/加模塊功能方框圖如圖6所示。

  比較、選擇與保存單元(CSSU):可以完成累加器的高位字和低位字之間的最大值比較(CMPS指令)。另一功能是利用優(yōu)化的片內(nèi)硬件資源完成數(shù)據(jù)通信、模式識(shí)別等領(lǐng)域中經(jīng)常用到的Viterbi蝶形運(yùn)算。

圖8 指數(shù)編碼器

指數(shù)編碼器:用于支持單周期指令EXP的專用硬件,如圖8所示。

累加器中數(shù)值的指數(shù)值,以二進(jìn)制補(bǔ)碼形式(-8~31)存放于暫存器T中;

CPU狀態(tài)和控制寄存器:

'C54x共有3個(gè)16位狀態(tài)和控制寄存器(PMST、ST0、ST1)它們都是存儲(chǔ)器映象寄存器,可以方便地寫入數(shù)據(jù)、或由數(shù)據(jù)存儲(chǔ)器對(duì)它們加載。

內(nèi)部存儲(chǔ)器

·'C54x的存儲(chǔ)器分為三個(gè)可獨(dú)立選擇的空間:程序空間、數(shù)據(jù)空間和I/O空間;

·'C54x的片內(nèi)存儲(chǔ)器包括ROM和RAM,其中RAM又可分為SARAM和DARAM:SARAM為單尋址寄存儲(chǔ)器,DARAM為雙尋址寄存儲(chǔ)器(一周期內(nèi)可以訪問兩次)。

  ROM一般配置成程序存儲(chǔ)空間,用于存放要執(zhí)行的指令、系數(shù)表等固定操作數(shù)。也可以部分地安排到數(shù)據(jù)存儲(chǔ)空間,由PMST的狀態(tài)位 和DROM決定;RAM 一般安排到數(shù)據(jù)存儲(chǔ)空間,存放執(zhí)行指令所要用的數(shù)據(jù)。但也可以安排到程序空間,由PMST的狀態(tài)位OVLY決定。不同'C54x系列內(nèi)部存儲(chǔ)器配置各不相同。

'C54x的尋址方式

  TMS320C54x的指令可能含有1個(gè)存儲(chǔ)器操作數(shù)(指令說明中用Smem表示),也可能有2個(gè)存儲(chǔ)器操作數(shù)(指令說明中用Xmem、Ymem表示),分別稱為單存儲(chǔ)器操作數(shù)和雙存儲(chǔ)器操作數(shù)。單存儲(chǔ)器操作數(shù)有7種尋址方式,它們是:

立即尋址: 操作數(shù)(常數(shù))含在指

令中;

絕對(duì)尋址: 指令中含有操作數(shù)

的16位地址;

累加器尋址: 操作數(shù)地址在累加器

中(A);

直接尋址: 指令中含有操作數(shù)

地址的低7 位;

間接尋址: 操作數(shù)的地址在輔

助寄存器中,支持倒

位序?qū)ぶ?、循環(huán)尋址

等功能;

存儲(chǔ)器映像的寄存器尋址:

訪問存儲(chǔ)器映像寄存器,

又不影響DP或SP;

堆棧尋址: 訪問堆棧;

雙存儲(chǔ)器操作數(shù)支持一些特殊指令:

如MAC、FIR等復(fù)雜

指令。

'C54x的六級(jí)指令流水線

'C54x CPU的指令流水線有六級(jí),每個(gè)周期有六條指令在工作,它們處于整個(gè)執(zhí)行過程的不同階段,如圖9所示。

圖9 流水線不同工作階段操作內(nèi)容

流水線的工作全部為單字指令連續(xù)執(zhí)行時(shí)(理想情況)如圖10 所示。

圖10 流水線正常工作時(shí)做業(yè)情況

  第二部分:TMS320C54xx性能介紹(二)

  TMS320C55是TI公司最新推出的芯片系列,它比'C54x的性能有很大提高,而且功耗大大降低,是目前TI公司推出的功率最小的芯片,適用于便攜式超低功率場(chǎng)合。

  TMS320C55x主要特點(diǎn):

  圖1是'C55x的功能結(jié)構(gòu)圖,它的主要特點(diǎn)如下:

圖1 TMS320C55x功能結(jié)構(gòu)框圖

  超低功耗設(shè)計(jì):

  在硬件結(jié)構(gòu)中采用雙MAC,有4個(gè)40bit的累加器,因而在一個(gè)周期內(nèi)可完成更多的任務(wù)。

  有更多的"自動(dòng)并行"指令。為發(fā)揮附加的硬件功能,有的指令隱含或裝有并行化的能力;另一些指令通過'C55x DSP核的最佳匯編器和C編譯器自動(dòng)安排成并行運(yùn)行。

  用戶可自行編程達(dá)到并行操作,以便充分利用'C55x DSP芯片的性能。

  附加新的指令,擴(kuò)展硬件處理能力。例如雙16位的算術(shù)運(yùn)算、雙MAC、條件移位、條件加或減、比例并選擇極值、偶或奇對(duì)稱的FIR濾波、并行移位和存儲(chǔ)、寄存器比較或交換等一系列新的指令。

  先進(jìn)的高級(jí)功率管理能力。其一是自動(dòng)斷電能力,'C55x DSP核連續(xù)的對(duì)內(nèi)存、外設(shè)和核心功能單元進(jìn)行監(jiān)視,自動(dòng)的對(duì)不工作單元斷電;其二是用戶可以自己配置IDLE休閑域,'C55x有64種休閑方式,通過改變休閑域寄存器對(duì)應(yīng)的狀態(tài)位就可以改變對(duì)應(yīng)部件電源的通斷。

  通過增加硬件和操作的并行性,極大的提高了處理器的處理能力。

  可變指令長度增加代碼密度:指令長度為8/16/24/40/48 bit,選擇不同長度可使編碼密度達(dá)到最佳和有效地利用總線;指令預(yù)取由16 bit增加到32 bit;片上指令緩存單元自動(dòng)的不包裝指令,以便最有效地利用每一周期。

  附加總線和擴(kuò)充地址增加數(shù)據(jù)流量:'C55x有一組程序總線,3組讀總線,2組寫總線,每組總線中的地址線有24 bit,因而極大的擴(kuò)充了尋址能力。

  外部存儲(chǔ)器接口性能比'C54x有很大提高:采用雙字寬(32 bit)及高速低價(jià)格同步存儲(chǔ)器,使存儲(chǔ)器操作與CPU操作具有相同的速率。同時(shí)有自動(dòng)斷電功能,電源只在使用時(shí)接通。

  指令高速緩存減少外部存儲(chǔ)器訪問:'C55x是第一個(gè)采用指令高速緩存的器件,允許幾條指令同時(shí)加載到高速緩存器中,CPU不必對(duì)每條指令都去訪問存儲(chǔ)器,并且在時(shí)鐘速率下利用指令,增加速度,降低功耗。

  改進(jìn)的控制代碼,改善了控制代碼的密度:'C55x 增加了幾個(gè)控制代碼的附件,包括新的指令緩存單元、數(shù)據(jù)存儲(chǔ)器和ALU。對(duì)條件執(zhí)行的兩種可能性都有準(zhǔn)備,使得一旦條件出現(xiàn),DSP立即響應(yīng)。

  高級(jí)仿真縮短調(diào)試周期:代碼與'C54x兼容,維護(hù)消費(fèi)者的軟件投資。


  TMS320C55x結(jié)構(gòu)概述

'C55x結(jié)構(gòu)主要由下列各部分組成:

圖2 指令緩沖單元(1單元)框圖

一個(gè)32×16-bit 指令緩沖隊(duì)列:緩沖可變長度指令和實(shí)現(xiàn)塊重復(fù)操作。

兩個(gè)17-bit×17-bit MAC:在單周期內(nèi)實(shí)現(xiàn)雙MAC操作。

一個(gè)40-bit ALU:執(zhí)行高精度算術(shù)和邏輯運(yùn)算。

一個(gè)40-bit 桶形移位寄存器:可以把40-bit結(jié)果左移31 位或右移32位。

一個(gè)16-bit ALU:和主ALU并行執(zhí)行簡單算術(shù)運(yùn)算。

圖3 程序流單元(P單元)框圖

四個(gè)40-bit 累加器:保持計(jì)算結(jié)果和減少所需存儲(chǔ)器數(shù)量。

十二條獨(dú)立總線:并行地對(duì)不同操作單元同時(shí)提供處理指令和操作數(shù)。

圖4 地址數(shù)據(jù)流單元(A單元框圖)

  指令緩沖單元功能

  它對(duì)應(yīng)用程序的指令進(jìn)行緩存和解碼,包含了解釋'C55x可變長度指令的解碼邏輯。指令緩存單元使各種計(jì)算單元的任務(wù)流量維持一個(gè)常數(shù), 以便增加DSP的效率。(見圖2)

  程序流單元功能

  當(dāng)程序執(zhí)行時(shí),這個(gè)單元用來保存執(zhí)行點(diǎn)的軌跡。此單元包括使循環(huán)有效的硬件以及用于預(yù)測(cè)轉(zhuǎn)移、條件執(zhí)行、流水線保護(hù)的專用硬件。當(dāng)程序的控制發(fā)生變化時(shí),例如轉(zhuǎn)移和調(diào)用子程序時(shí),這個(gè)硬件能使處理器所需周期數(shù)減少,從而可提高處理效率。(見圖3)

  地址數(shù)據(jù)流單元功能

  在程序執(zhí)行期間,這個(gè)單元提供數(shù)據(jù)訪問的地址指針。此單元可以使'C55x 實(shí)現(xiàn)有效的尋址模式。管理五條數(shù)據(jù)總線的專用硬件用來保持各個(gè)計(jì)算單元有恒定的數(shù)據(jù)流。由于有一個(gè)通用的ALU作簡單的算術(shù)運(yùn)算,使得地址數(shù)據(jù)流單元可進(jìn)一步增加'C55x 結(jié)構(gòu)的指令并行性。(見圖4)

  數(shù)據(jù)計(jì)算單元功能

  這個(gè)單元是CPU的心臟,完成對(duì)被處理數(shù)據(jù)的算術(shù)運(yùn)算。它包括兩個(gè)MAC(乘法累加器)、主ALU(40-bit)、4個(gè)40-bit的累加寄存器,其附加的功能部件有桶形移位寄存器、舍入與飽和控制以及有效完成Viterbi計(jì)算的專用硬件。由此單元給出的指令的并行性是'C55x處理效率高低的關(guān)鍵。(見圖5)

  TMS320C54x和TMS320C55x性能比較

存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理




關(guān)鍵詞: 定點(diǎn) DSP CPU

評(píng)論


相關(guān)推薦

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

關(guān)閉