C28xDSP的CPU與指令系統(tǒng)課件_第1頁
C28xDSP的CPU與指令系統(tǒng)課件_第2頁
C28xDSP的CPU與指令系統(tǒng)課件_第3頁
C28xDSP的CPU與指令系統(tǒng)課件_第4頁
C28xDSP的CPU與指令系統(tǒng)課件_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第3章C28xDSP的CPU與指令系統(tǒng)本章內(nèi)容:3.1中央處理器

3.2尋址方式

3.3C28xDSP指令系統(tǒng)

4/2/202313.1中央處理器

C28xDSP的中央處理器(CPU)結(jié)構(gòu)包括三個部分:CPU內(nèi)核、仿真邏輯單元和CPU信號。C28xCPU組成概念框圖

1.CPU結(jié)構(gòu)4/2/20232仿真邏輯單元的主要功能是監(jiān)視和控制CPU以及其他外設(shè)的工作情況,并實現(xiàn)對設(shè)備的測試和調(diào)試功能。CPU的信號主要包括4種:①存儲器接口信號②時鐘和控制信號③復(fù)位和中斷信號④仿真信號4/2/20233C28x的CPU主要由總線、CPU寄存器、程序地址發(fā)生器和控制邏輯、地址寄存器算術(shù)單元(ARAU)、算術(shù)邏輯單元(ALU)、乘法器和移位器等邏輯部件組成,還包括指令隊列和指令譯碼單元、中斷處理邏輯等。ALU為32位的運算邏輯單元,主要執(zhí)行算術(shù)運算和布爾運算。在運算之前,ALU從寄存器、數(shù)據(jù)存儲器或程序控制邏輯單元接收數(shù)據(jù),然后進行運算,最后把結(jié)果存入寄存器或數(shù)據(jù)存儲器中。32位的乘法器,可執(zhí)行32×32位的補碼乘法,并產(chǎn)生64位的結(jié)果。乘法器采用32位乘數(shù)寄存器(XT,)、32位乘積寄存器(P)和32位累加器(ACC)。CPU的移位器實現(xiàn)對操作數(shù)的移位操作。4/2/20235FastprogramexecutionoutofbothRAMand

Flashmemory100-120MIPSwithFlashAccelerationTechnology150MIPSoutofRAMfortime-criticalcode

ControlPeripherals

MemorySub-SystemEventManagersUltra-Fast12-bitADC12.5MSPSthroughputDualsample&holdsenablesimultaneoussamplingAutoSequencer,upto16conversionsw/oCPUControlPortsMultiplestandardcommunicationportsprovidesimpleinterfacestoothercomponentsCommunicationsPorts150MIPSperformanceSinglecycle32x32-bitMAC(ordual16x16MAC)VeryFastInterruptResponseSinglecycleread-modified-writeF24x/LF240xSourceCodeCompatibleHigh-PerformanceCPU(C28xTMDSPCore)MemoryBus128KwFlash+2KwOTP4KwBootROM18KwRAMCodesecurityXINTF32-bitRegisterFileReal-TimeJTAG32-bit

Timers(3)150MIPsC28xTM32-bitDSP32x32-bit

MultiplierRMWAtomicALU

InterruptManagementEventMgrAEventMgrB12-BitADCWatchdogGPIOMcBSPCAN2.0BSCI-UARTASCI-UARTBSPIPeripheralBusTMS320F2812/TMS320F2810

MostPowerful-MostIntegratedDualFunctionDigitalSignalController4/2/20236Fast&flexibleinterruptmanagementsignificantlyreduceinterruptlatencySingle-cycle32-bitmultipliermakescomputationallyintensivecontrolalgorithmsmoreefficient

C28xTMDSPCoreThree32-bittimerssupportmultiplecontrolloops/timebases.Singlecycleread-modified-writeinanymemorylocationand32-bitregistersimprovecontrolalgorithmefficiencyReal-timeJTAGdebugshortensdevelopmentcycleC28xTM32-bitDSPInterruptManagement32-bitRegisterFileReal-TimeJTAG32-bit

Timers(3)32x32bit

MultiplierRMWAtomicALU

MostC/C++Efficient32-bitDSPCoreCodecompatiblewiththeTMS320C24x?DSPfamily4/2/20237多總線的結(jié)構(gòu)使C28x能夠?qū)崿F(xiàn)流水線的指令執(zhí)行機制。采用流水線機制可以大大加快指令執(zhí)行速度,實現(xiàn)指令的執(zhí)行在單機器周期內(nèi)完成。C28x采用了8級流水線。(1)取指令階段1:指令地址通過22位總線PAB送往程序存儲器。(2)取指令階段2:通過32位總線PRDB讀程序存儲器,放入指令隊列。(3)譯碼階段1:CPU硬件識別取指隊列中指令的邊界,并測定下一條待執(zhí)行指令的長度。(4)譯碼階段2:CPU硬件從取指隊列中取回指令,并將該指令放入指令寄存器,譯碼。(5)讀階段1:從存儲器中讀取數(shù)據(jù)時,把地址送到相應(yīng)的地址總線上。(6)讀階段2:硬件通過數(shù)據(jù)總線取回讀階段1所尋址的存儲器內(nèi)的數(shù)據(jù)。(7)執(zhí)行階段:CPU執(zhí)行乘法、移位和ALU操作,包括算術(shù)和邏輯操作。(8)寫階段:需要時,將指令執(zhí)行的結(jié)果寫回存儲器。4/2/202392.CPU的寄存器累加器(ACC、AH、AL)乘數(shù)寄存器(XT、T、TL)和乘積寄存器(P、PH、PL)

數(shù)據(jù)頁指針寄存器(DP)

堆棧指針(SP)

輔助寄存器(XAR0~XAR7、AR0~AR7)

程序計數(shù)器(PC)

返回PC指針寄存器(RPC)

中斷控制寄存器(IFR、IER、DBGIER)

狀態(tài)寄存器(ST0,STl)

4/2/202310C28xDSP的CPU寄存器

4/2/202311乘數(shù)寄存器XT的分半單獨存取結(jié)構(gòu)

P寄存器的分半單獨存取結(jié)構(gòu)

(2)乘數(shù)寄存器(XT、T、TL)和乘積寄存器(P、PH、PL)

4/2/202313(3)數(shù)據(jù)頁指針寄存器(DP)

在直接尋址方式中,操作數(shù)的地址由兩部分組成:一個頁地址(DataPage)和一個頁內(nèi)的偏移量。C28x的數(shù)據(jù)存儲器每64個字構(gòu)成一個數(shù)據(jù)頁,這樣,4MW的數(shù)據(jù)存儲器共有65536個數(shù)據(jù)頁,用0~65535進行標號。在直接尋址方式下,當(dāng)前的頁地址存放于16位的數(shù)據(jù)頁指針寄存器(DP)中,可以通過給DP賦新值可改變數(shù)據(jù)頁號。當(dāng)CPU工作在C2xLP源兼容模式時,使用一個7位的偏移量,并忽略DP寄存器的最低位。4/2/202314數(shù)據(jù)存儲器的數(shù)據(jù)頁

4/2/202315(5)輔助寄存器(XAR0~XAR7、AR0~AR7)XAR0~XAR7寄存器

4/2/202317(6)程序計數(shù)器(PC)C28x的程序計數(shù)器(PC)是一個22位的寄存器,存放當(dāng)前CPU正在操作指令的地址。(7)返回PC指針寄存器(RPC)

(8)中斷控制寄存器(IFR、IER、DBGIER)有兩對長調(diào)用指令:LC和LRET,LCR和LRETR。LCR和LRETR執(zhí)行效率更高,只有LCR和LRETR指令使用RPC。當(dāng)使用LCR指令時,當(dāng)前RPC的值被壓入堆棧。返回地址將被裝載到RPC寄存器中,而22位的函數(shù)入口地址將被裝載到PC計數(shù)器,從而使流程轉(zhuǎn)入函數(shù)體中運行。調(diào)用結(jié)束通過LRETR指令返回時,存放在RPC內(nèi)的返回地址裝載到PC中,而壓入堆棧中的RPC的值從堆棧中裝載到RPC內(nèi)。4/2/202318(9)狀態(tài)寄存器(ST0,STl)

C28xCPU有兩個重要的狀態(tài)寄存器:ST0和ST1,其中包含著不同的標志位和控制位。ST0包含指令操作所使用或影響的控制或標志位,如溢出、進位、符號擴展等。ST1則主要包含一些特殊的控制位,如處理器的兼容模式選擇、尋址模式配置等。4/2/202319狀態(tài)寄存器ST1·ARP:輔助寄存器指針?!F:XF狀態(tài)位。該位用于控制輸出引腳XF的狀態(tài)?!0M1MAP:存儲器M0和M1映射模式位?!BJMODE:目標兼容模式位。用來在C27x目標模式(=0)和C28x目標模式(=1)之間進行選擇?!MODE:尋址模式位。在C28x尋址模式(AMODE=0)和C2xLP尋址模式(AMODE=1)之間進行選擇。4/2/202321·IDLESTAT:空閑狀態(tài)位?!ALLOW:仿真允許訪問使能位。為1,允許訪問?!OOP:循環(huán)指令狀態(tài)位?!PA:隊棧指針定位(StackPointerAlignment)位。·VMAP:向量映像(VectorMap)位?!BGM:調(diào)試使能屏蔽位?!NTM:中斷全局屏蔽位。為0,中斷使能。4/2/2023223.2尋址方式

3.2.1尋址方式概述C28xCPU四種基本尋址方式:直接尋址、堆棧尋址、間接尋址和寄存器尋址還有數(shù)據(jù)/程序/IO空間立即尋址方式或程序空間間接尋址方式。1.尋址方式分類4/2/202323匯編器/編譯器對AMODE位的跟蹤C/C++編譯器是假定尋址方式設(shè)定在AMODE=0。匯編器可以按照命令行操作指定默認狀態(tài)為AMODE=0或AMODE=1。-v28 ;假設(shè)AMODE=0(C28x尋址方式)-v28-m20 ;假設(shè)AMODE=1(C2xLP兼容尋址方式)匯編器還允許文件中嵌套指令改變尋址方式。.c28_amode ;告知匯編器后綴代碼為AMODE=0(C28x尋址方式).lp_amode ;告知匯編器后綴代碼為AMODE=1(C2xLP兼容尋址方式)4/2/2023253.2.2直接尋址方式直接尋址方式操作數(shù)的22位物理地址被分成兩部分,16位的數(shù)據(jù)頁指針(DP)寄存器作為固定的頁指針,指令中提供6位或7位的偏移量,這些偏移量與DP中的值一起確定操作數(shù)的地址。4/2/2023263.2.5寄存器尋址方式寄存器尋址方式操作數(shù)在寄存器中。寄存器尋址方式可分為32位和16位尋址方式。4/2/2023293.2.6數(shù)據(jù)/程序/IO空間立即尋址方式數(shù)據(jù)/程序/IO空間立即尋址方式有4種語法:*(0:16bit)、*(PA)、0:pma和*(pma)。4/2/2023303.2.7程序空間間接尋址方式程序空間間接尋址方式的訪問程序空間有3種語法:*AL、*XAR7和*XAR7++。3.2.8字節(jié)尋址方式與32位操作數(shù)的定位字節(jié)尋址方式

32位操作數(shù)的定位

4/2/2023313.3C28xDSP指令系統(tǒng)

C28xDSP指令系統(tǒng)一覽表見教材。XARn寄存器(XAR0~XAR7)操作

DP寄存器操作

SP寄存器操作

AX寄存器操作(AH,AL)

16位ACC累加器操作

32位ACC累加器操作

64位ACC:P寄存器操作

P或XT寄存器操作(P,PH,PL,XT,T,TL)

16×16位乘法操作

4/2/202332

32×32位乘法操作

直接存儲器操作

I/O空間操作

程序空間操作

跳轉(zhuǎn)/

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論