TMSCCPU結(jié)構(gòu)與指令系統(tǒng)學(xué)習(xí)課程_第1頁
TMSCCPU結(jié)構(gòu)與指令系統(tǒng)學(xué)習(xí)課程_第2頁
TMSCCPU結(jié)構(gòu)與指令系統(tǒng)學(xué)習(xí)課程_第3頁
TMSCCPU結(jié)構(gòu)與指令系統(tǒng)學(xué)習(xí)課程_第4頁
TMSCCPU結(jié)構(gòu)與指令系統(tǒng)學(xué)習(xí)課程_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、2.1 CPU結(jié)構(gòu)第1頁/共50頁第一頁,編輯于星期日:點(diǎn) 四十六分。取數(shù)存數(shù)分離結(jié)構(gòu)CPU 雙數(shù)據(jù)通路 8個(gè)運(yùn)算單元8條32-位指令/周期32-位尋址空間整數(shù)指令特性 數(shù)據(jù)可按字節(jié)尋址(8-, 16-, 32-位數(shù)據(jù)) 8-位溢出保護(hù)飽和 位操作:提取、置位、清零 位計(jì)數(shù) 歸一化C62xC67x控制寄存器 程序取指指令調(diào)度指令譯碼控制邏輯 中斷 仿真接口 Test數(shù)據(jù)通路1數(shù)據(jù)通路2A寄存器堆A15A0B寄存器堆B15B0L2S2M2D2D1M1S1L1C6000系列DSP第1代VelociTI.1 CPU內(nèi)核結(jié)構(gòu)雙32-位取數(shù)存數(shù)通路第2頁/共50頁第二頁,編輯于星期日:點(diǎn) 四十六分。對(duì)第

2、1代VLIW內(nèi)核結(jié)構(gòu)進(jìn)行擴(kuò)展支持4個(gè)16-位和8個(gè)8-位連乘加MAC指令,提高運(yùn)算的并行度寄存器數(shù)量增加了1倍,取數(shù)存數(shù)的數(shù)據(jù)通道也從32-位增加為64-位,實(shí)現(xiàn)帶寬的加倍增強(qiáng)在線仿真能力增加了新的指令以加速寬帶和圖像處理等應(yīng)用改善正交設(shè)計(jì),使頻繁使用的指令獲得更多的功能單元C6000系列DSP第2代VelociTI.2 CPU內(nèi)核結(jié)構(gòu)C64x CPU數(shù)據(jù)通路 2數(shù)據(jù)通路 1寄存器堆 AD2S2L2A31A16指令譯碼指令調(diào)度取指控制寄存器中斷控制S1L1雙64-位取數(shù)存數(shù)通路A15A0+M1xD1+寄存器堆 BB31B16B15B0+M2高級(jí)指令打包+xxxxxxxxxxx高級(jí)在線仿真第3頁

3、/共50頁第三頁,編輯于星期日:點(diǎn) 四十六分。u 進(jìn)一步改進(jìn)內(nèi)部存儲(chǔ)器結(jié)構(gòu): L1P和L1D既可配置為Cache,也可配置為SRAM 改進(jìn)了Cache一致性協(xié)議 增加了Cache凍結(jié)功能 增加了內(nèi)部DMA控制器 增加了帶寬管理功能 增加了存儲(chǔ)器保護(hù)u 增加了新的指令 32-位乘法指令,提高精度 擴(kuò)展了算術(shù)指令,以加速FFT和DCt運(yùn)算 改進(jìn)復(fù)數(shù)乘法指令 增加了雙點(diǎn)積指令,改善FIR循環(huán)的吞吐率 增加了平行打包指令 增強(qiáng)了“高斯”域乘法指令C6000系列DSP第3代VelociTI.3 CPU內(nèi)核結(jié)構(gòu)存儲(chǔ)器保護(hù)128128統(tǒng)一的存儲(chǔ)器控制器 (UMC) 存儲(chǔ)器保護(hù)帶寬管理器IDMA數(shù)據(jù)通路1數(shù)據(jù)

4、通路2A寄存器堆中斷&異??刂破鱏1L1M1xxxx數(shù)據(jù)存儲(chǔ)器控制器 (DMC)外部存儲(chǔ)器控制器(EMC)DMA Slave I/F256程序存儲(chǔ)器控制器 (PMC)256128Master Port(CPU/ cache req.)功率控制256L1D Cache/SRAML1P Cache/SRAML2 Cache/SRAMTo EDMA3.0256D1C64x+CPUM2xxxxS2 L2D2B寄存器堆指令譯碼16/32-位指令調(diào)度軟件流水線緩沖器取指高級(jí)事件觸發(fā)(AET)存儲(chǔ)器保護(hù)帶寬管理器25625625612864帶寬管理器32TMS320C64x+DSP Core新增的特

5、點(diǎn)由由C64x改進(jìn)改進(jìn)第4頁/共50頁第四頁,編輯于星期日:點(diǎn) 四十六分。2.1.1 CPU結(jié)構(gòu) (1)程序取指單元 (2)指令分配單元 (3)指令譯碼單元 (4)32個(gè)或64個(gè)32位寄存器 (5)兩個(gè)數(shù)據(jù)通路,每通路4個(gè)功能單元 (6)控制寄存器 (7)控制邏輯 (8) 測試、仿真和中斷邏輯第5頁/共50頁第五頁,編輯于星期日:點(diǎn) 四十六分。2.1.2 CPU 數(shù)據(jù)通路(1) 2 個(gè)通用寄存器組(A 和 B) (2) 8 個(gè)功能單元(.L1、.L2、.S1、.S2、.M1、.M2、.D1 和.D2)(3) 2 個(gè)數(shù)據(jù)讀取通路(LD1 和 LD2) (4) 2 個(gè)數(shù)據(jù)存儲(chǔ)通路(ST1 和 ST

6、2) (5) 2 個(gè)寄存器組交叉通路(1X 和 2X)(6) 2 個(gè)數(shù)據(jù)尋址通路(DA1 和 DA2) 第6頁/共50頁第六頁,編輯于星期日:點(diǎn) 四十六分。第7頁/共50頁第七頁,編輯于星期日:點(diǎn) 四十六分。第8頁/共50頁第八頁,編輯于星期日:點(diǎn) 四十六分。第9頁/共50頁第九頁,編輯于星期日:點(diǎn) 四十六分。通用寄存器組 寄存器組A -16個(gè)32位寄存器 A0-A31 寄存器組B -16個(gè)32位寄存器 B0-B31第10頁/共50頁第十頁,編輯于星期日:點(diǎn) 四十六分。功能單元 .L單元:完成算術(shù)和邏輯運(yùn)算 .S單元:完成程序跳轉(zhuǎn)指令 .M單元:完成乘法運(yùn)算 .D單元:完成數(shù)據(jù)讀取/寫入第11

7、頁/共50頁第十一頁,編輯于星期日:點(diǎn) 四十六分。第12頁/共50頁第十二頁,編輯于星期日:點(diǎn) 四十六分。第13頁/共50頁第十三頁,編輯于星期日:點(diǎn) 四十六分。交叉通路 每個(gè)功能單元可以直接與所處的數(shù)據(jù)通路的寄存器組進(jìn)行讀寫操作,即.L1、.S1、.D1和 .M1 可以直接讀寫寄存器組 A,而 .L2、.S2、.D2 和 .M2 可以直接讀寫寄存器組 B。 兩個(gè)寄存器組通過 1X 和 2X 交叉通路也可以與另一側(cè)的功能單元相連。1X 交叉通路允許數(shù)據(jù)通路 A 的功能單元從寄存器組 B 讀它的源操作數(shù),2X 交叉通路則允許數(shù)據(jù)通路 B 的功能單元從寄存器組 A 讀它的源操作數(shù)。第14頁/共50

8、頁第十四頁,編輯于星期日:點(diǎn) 四十六分。數(shù)據(jù)存取通道 LD1 用于寄存器組A LD2 用于寄存器組B ST1、ST2 用于保存及存器中的值到存儲(chǔ)器中第15頁/共50頁第十五頁,編輯于星期日:點(diǎn) 四十六分。數(shù)據(jù)地址通道 數(shù)據(jù)地址通路 DA1 和 DA2 來自數(shù)據(jù)通路的 .D 功能單元,地址通路與兩側(cè)數(shù)據(jù)通道都相連,這使一個(gè)寄存器組產(chǎn)生的數(shù)據(jù)地址能夠支持任意一側(cè)寄存器組對(duì)數(shù)據(jù)存儲(chǔ)器的讀寫操作。 第16頁/共50頁第十六頁,編輯于星期日:點(diǎn) 四十六分。2.2 CPU控制寄存器第17頁/共50頁第十七頁,編輯于星期日:點(diǎn) 四十六分。尋址模式及存器(AMR) 在尋址模式寄存器中,對(duì)每個(gè)寄存器都有 2 位

9、字段用來選擇地址修改模式:線性(缺?。┗蜓h(huán)模式。對(duì)于循環(huán)尋址,這個(gè)字段也指定哪個(gè) BK(block size)字段用作循環(huán)緩沖區(qū)。此外,緩沖區(qū)的值必須與循環(huán)塊尺寸相匹配,模式選擇字段和塊尺寸字段示于圖 2-5,模式選擇字段編碼示于表 2-4。尋址模式寄存器(AMR)在復(fù)位時(shí)初始化為零,其保留部分總為零。第18頁/共50頁第十八頁,編輯于星期日:點(diǎn) 四十六分。第19頁/共50頁第十九頁,編輯于星期日:點(diǎn) 四十六分。 塊尺寸字段 BK0 和 BK1 含有 5 位數(shù)值,用于計(jì)算循環(huán)尋址循環(huán)塊的尺寸,塊尺寸與 BK0或者 BK1 內(nèi) 5 位數(shù)值 N 的關(guān)系為:塊尺寸=2(N+1) 第20頁/共50頁

10、第二十頁,編輯于星期日:點(diǎn) 四十六分??刂茽顟B(tài)寄存器(CSR)第21頁/共50頁第二十一頁,編輯于星期日:點(diǎn) 四十六分。E1 程序節(jié)拍計(jì)數(shù)器第22頁/共50頁第二十二頁,編輯于星期日:點(diǎn) 四十六分。TMS320C67X擴(kuò)展控制寄存器 用于支持.L和.M運(yùn)算,指定希望的浮點(diǎn)舍入方式,指示警告狀態(tài)第23頁/共50頁第二十三頁,編輯于星期日:點(diǎn) 四十六分。2.3 DSP 指令系統(tǒng) 尋址方式: 1 立即數(shù)尋址 2 寄存器尋址 3 寄存器間接尋址第24頁/共50頁第二十四頁,編輯于星期日:點(diǎn) 四十六分。寄存器間接尋址 線性尋址方式 循環(huán)尋址方式第25頁/共50頁第二十五頁,編輯于星期日:點(diǎn) 四十六分。指

11、令集 算術(shù)運(yùn)算指令 邏輯及位域操作指令 MV類傳送指令 程序控制指令第26頁/共50頁第二十六頁,編輯于星期日:點(diǎn) 四十六分。C67X指令集.L .D .S .M No Unit UsedIDLENOP.S UnitNEGNOT ORSETSHLSHRSSHLSUBSUB2XORZEROADDADDKADD2ANDBCLREXTMVMVCMVKMVKLMVKHABSSPABSDPCMPGTSPCMPEQSPCMPLTSPCMPGTDPCMPEQDPCMPLTDPRCPSPRCPDPRSQRSPRSQRDPSPDP.L UnitNOTORSADDSATSSUBSUBSUBCXORZEROABSA

12、DDANDCMPEQCMPGTCMPLTLMBDMVNEGNORMADDSPADDDPSUBSPSUBDPINTSPINTDPSPINTDPINTSPRTUNCDPTRUNCDPSP.M UnitSMPYSMPYHMPYMPYHMPYLHMPYHLMPYSPMPYDPMPYIMPYID.D UnitNEGSTB(B/H/W) SUBSUBAB (B/H/W) ZEROADDADDAB (B/H/W)ADDADLDB(B/H/W)LDDWMV第27頁/共50頁第二十七頁,編輯于星期日:點(diǎn) 四十六分。C64x指令集Data Pack/UnPACK2PACKH2PACKLH2PACKHL2PACKH

13、4PACKL4UNPKHU4UNPKLU4SWAP2/4Dual/Quad ArithABS2ADD2ADD4MAXMINSUB2SUB4SUBABS4Bitwise LogicalANDNShift & MergeSHLMBSHRMBLoad ConstantMVK (5-bit).L .D .S .M Bit OperationsBITC4BITRDEALSHFLMoveMVDAverageAVG2AVG4ShiftsROTLSSHVLSSHVRMultipliesMPYHIMPYLIMPYHIRMPYLIRMPY2SMPY2DOTP2DOTPN2DOTPRSU2DOTPNRSU2

14、DOTPU4DOTPSU4GMPY4XPND2/4Mem AccessLDDWLDNWLDNDWSTDWSTNWSTNDWLoad ConstantMVK (5-bit)Dual ArithmeticADD2SUB2Bitwise LogicalANDANDNORXORAddress Calc.ADDADData Pack/UnPACK2PACKH2PACKLH2PACKHL2UNPKHU4UNPKLU4SWAP2SPACK2SPACKU4Dual/Quad ArithSADD2SADDUS2SADD4Bitwise LogicalANDNShifts & MergeSHR2SHRU2

15、SHLMBSHRMBComparesCMPEQ2CMPEQ4CMPGT2CMPGT4Branches/PCBDECBPOSBNOPADDKPC第28頁/共50頁第二十八頁,編輯于星期日:點(diǎn) 四十六分。資源限制 使用相同功能單元的指令限制 使用交叉通路的限制 數(shù)據(jù)讀寫的限制 使用40位長定點(diǎn)類型數(shù)據(jù)的限制 寄存器讀取限制 寄存器存儲(chǔ)限制第29頁/共50頁第二十九頁,編輯于星期日:點(diǎn) 四十六分。2.4 流水線 現(xiàn)代微處理器是用結(jié)構(gòu)的復(fù)雜性來換取速度的提高的。它把指令的處理分成幾個(gè)子操作,每個(gè)子操作在微處理器內(nèi)部由不同的部件來完成。對(duì)微處理器的每個(gè)部件來說,每隔1 個(gè)時(shí)鐘周期即可進(jìn)入 1 條新指令,

16、這樣在同一時(shí)間內(nèi),就有多條指令交迭地在不同部件內(nèi)處理,這種工作方式稱為“流水線”(pipeline)工作方式。TMS320C6000 的特殊結(jié)構(gòu)又可使多個(gè)指令包(每包最多可達(dá) 8 條指令)交迭地在不同部件內(nèi)處理,大大提高了微處理器的吞吐量。第30頁/共50頁第三十頁,編輯于星期日:點(diǎn) 四十六分。 TMS320C6000 中所有指令均按照取指(Fetch)、譯碼(Decode)和執(zhí)行(Execute)3級(jí)(Stage)流水線運(yùn)行,每一級(jí)又包含幾個(gè)節(jié)拍(Phase)。所有指令取指級(jí)有 4 個(gè)節(jié)拍,譯碼級(jí)有 2 個(gè)節(jié)拍。執(zhí)行級(jí)對(duì)不同類型的指令有不同數(shù)目的節(jié)拍。第31頁/共50頁第三十一頁,編輯于星期

17、日:點(diǎn) 四十六分。流水線節(jié)拍第32頁/共50頁第三十二頁,編輯于星期日:點(diǎn) 四十六分。取指 PG:程序地址產(chǎn)生 PS:程序地址發(fā)送 PW:程序訪問等待 PR:程序取指包接收第33頁/共50頁第三十三頁,編輯于星期日:點(diǎn) 四十六分。第34頁/共50頁第三十四頁,編輯于星期日:點(diǎn) 四十六分。譯碼 DP:指令分配 DC:指令譯碼第35頁/共50頁第三十五頁,編輯于星期日:點(diǎn) 四十六分。DM64X內(nèi)核取指分配譯碼數(shù)據(jù)通路 1寄存器組A/16*32數(shù)據(jù)通路 2寄存器組B/16*32L2S2M2D2D1M1S1L1L D D WBZ E R OS U B S PA D D S PM P Y S PM P

18、Y S PC M P L TS PA D D S PA D D S PC M P L T S P M P Y S P L D D WM P Y S P A B S S PD CL 1D 2S 1M 1D 1L 2S 2M 2EDP第36頁/共50頁第三十六頁,編輯于星期日:點(diǎn) 四十六分。執(zhí)行第37頁/共50頁第三十七頁,編輯于星期日:點(diǎn) 四十六分。流水線操作第38頁/共50頁第三十八頁,編輯于星期日:點(diǎn) 四十六分。第39頁/共50頁第三十九頁,編輯于星期日:點(diǎn) 四十六分。第40頁/共50頁第四十頁,編輯于星期日:點(diǎn) 四十六分。第41頁/共50頁第四十一頁,編輯于星期日:點(diǎn) 四十六分。不同指令的流水線操作第42頁/共50頁第四十二頁,編輯于星期日:點(diǎn) 四十六分。第43頁/共50頁第四十三頁,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論