第5章CPU結(jié)構(gòu)和功能_第1頁
第5章CPU結(jié)構(gòu)和功能_第2頁
第5章CPU結(jié)構(gòu)和功能_第3頁
第5章CPU結(jié)構(gòu)和功能_第4頁
第5章CPU結(jié)構(gòu)和功能_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、5.1 CPU 的結(jié)構(gòu)的結(jié)構(gòu)5.3 指令流水指令流水5.2 指令周期指令周期一、一、 CPU 的功能的功能取指令取指令分析指令分析指令執(zhí)行指令,發(fā)出各種操作命令執(zhí)行指令,發(fā)出各種操作命令控制程序輸入及結(jié)果的輸出控制程序輸入及結(jié)果的輸出總線管理總線管理處理異常情況和特殊請求處理異常情況和特殊請求1. 控制器的功能控制器的功能2. 運(yùn)算器的功能運(yùn)算器的功能實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算指令控制指令控制操作控制操作控制時(shí)間控制時(shí)間控制數(shù)據(jù)加工數(shù)據(jù)加工處理中斷處理中斷二、二、CPU 結(jié)構(gòu)框圖結(jié)構(gòu)框圖PC IR指令控制指令控制操作控制操作控制時(shí)間控制時(shí)間控制數(shù)據(jù)加工數(shù)據(jù)加工處理中斷處理中斷

2、ALU 寄存器寄存器中斷系統(tǒng)中斷系統(tǒng)1. CPU 與系統(tǒng)總線與系統(tǒng)總線CU 時(shí)序電路時(shí)序電路寄存器寄存器ALU 中斷中斷 系統(tǒng)系統(tǒng)CUCPU控制總線控制總線數(shù)據(jù)總線數(shù)據(jù)總線地址總線地址總線2. CPU 的內(nèi)部結(jié)構(gòu)的內(nèi)部結(jié)構(gòu) 算術(shù)和算術(shù)和布爾邏輯布爾邏輯取反取反移位移位狀態(tài)標(biāo)志狀態(tài)標(biāo)志內(nèi)部內(nèi)部 數(shù)據(jù)總線數(shù)據(jù)總線CPU寄存器寄存器CU中斷中斷系統(tǒng)系統(tǒng)ALU控制信號控制信號1. 用戶可見寄存器用戶可見寄存器(1) 通用寄存器通用寄存器三、三、 CPU 的寄存器的寄存器存放操作數(shù)存放操作數(shù)可作可作 某種尋址方式所需的某種尋址方式所需的 專用寄存器專用寄存器(2) 數(shù)據(jù)寄存器數(shù)據(jù)寄存器存放操作數(shù)存放操作

3、數(shù)(滿足各種數(shù)據(jù)類型)(滿足各種數(shù)據(jù)類型)兩個(gè)寄存器拼接存放雙倍字長數(shù)據(jù)兩個(gè)寄存器拼接存放雙倍字長數(shù)據(jù)(3) 地址寄存器地址寄存器存放地址存放地址,其位數(shù)應(yīng)滿足最大的地址范圍,其位數(shù)應(yīng)滿足最大的地址范圍用于特殊的尋址方式用于特殊的尋址方式 段基值段基值 棧指針棧指針(4) 條件碼寄存器條件碼寄存器存放條件碼存放條件碼,可作程序分支的依據(jù),可作程序分支的依據(jù)如如 正、負(fù)、零、溢出、進(jìn)位等正、負(fù)、零、溢出、進(jìn)位等2. 控制和狀態(tài)寄存器控制和狀態(tài)寄存器(1) 控制寄存器控制寄存器PC控制控制 CPU 操作操作(2) 狀態(tài)寄存器狀態(tài)寄存器狀態(tài)寄存器狀態(tài)寄存器其中其中 MAR MDR IR 用戶不可見用

4、戶不可見 存放條件碼存放條件碼PSW 寄存器寄存器存放程序狀態(tài)字存放程序狀態(tài)字 PC 用戶可見用戶可見 3. 舉例舉例Z8000 8086 MC 68000MARMMDRIR四、四、 控制單元控制單元 CU 和中斷系統(tǒng)和中斷系統(tǒng)1. CU 產(chǎn)生全部指令的微操作命令序列產(chǎn)生全部指令的微操作命令序列組合邏輯設(shè)計(jì)組合邏輯設(shè)計(jì)微程序設(shè)計(jì)微程序設(shè)計(jì)硬連線邏輯硬連線邏輯存儲邏輯存儲邏輯2. 中斷系統(tǒng)中斷系統(tǒng)五、五、ALU一、一、 指令周期的基本概念指令周期的基本概念1 . 指令周期指令周期取出并執(zhí)行一條指令所需的全部時(shí)間取出并執(zhí)行一條指令所需的全部時(shí)間完成一條指令完成一條指令執(zhí)行執(zhí)行取指、分析取指、分析取

5、指階段取指階段取指周期取指周期執(zhí)行階段執(zhí)行階段執(zhí)行周期執(zhí)行周期(取指、分析)(取指、分析)(執(zhí)行指令)(執(zhí)行指令)指令周期指令周期取指周期取指周期執(zhí)行周期執(zhí)行周期2. 每條指令的指令周期不同每條指令的指令周期不同取指周期取指周期指令周期指令周期取指周期取指周期 執(zhí)行階段執(zhí)行階段指令周期指令周期取指周期取指周期執(zhí)行周期執(zhí)行周期指令周期指令周期NOPADD mem MUL mem3. 具有間接尋址的指令周期具有間接尋址的指令周期4. 帶有中斷周期的指令周期帶有中斷周期的指令周期取指周期取指周期間址周期間址周期指令周期指令周期執(zhí)行周期執(zhí)行周期取指周期取指周期間址周期間址周期指令周期指令周期執(zhí)行周期執(zhí)

6、行周期中斷周期中斷周期5. 指令周期流程指令周期流程取指周期取指周期執(zhí)行周期執(zhí)行周期有間址嗎?有間址嗎?有中斷嗎?有中斷嗎?間址周期間址周期中斷周期中斷周期是是是是否否否否6. CPU 工作周期的標(biāo)志工作周期的標(biāo)志CPU 訪存有訪存有 4 種性質(zhì)種性質(zhì)取取 指令指令取取 地址地址取取 操作數(shù)操作數(shù)存存 程序斷點(diǎn)程序斷點(diǎn)取指周期取指周期間址周期間址周期執(zhí)行周期執(zhí)行周期中斷周期中斷周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU 的的4個(gè)工作周期個(gè)工作周期1. 取指周期數(shù)據(jù)流取指周期數(shù)據(jù)流二、二、 指令周期的數(shù)據(jù)流指令周期的數(shù)據(jù)流MDRCUMARPCIR存儲器存儲器CPU地

7、址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線IR+1 2. 間址周期數(shù)據(jù)流間址周期數(shù)據(jù)流MDRCUMARCPU地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線PCIR存儲器存儲器MDR3. 執(zhí)行周期數(shù)據(jù)流執(zhí)行周期數(shù)據(jù)流4 . 中斷周期數(shù)據(jù)流中斷周期數(shù)據(jù)流不同指令的執(zhí)行周期數(shù)據(jù)流不同不同指令的執(zhí)行周期數(shù)據(jù)流不同MDRCUMARCPU地址總線地址總線數(shù)據(jù)總線數(shù)據(jù)總線控制總線控制總線PC存儲器存儲器一、如何提高機(jī)器速度一、如何提高機(jī)器速度1. 提高提高訪存速度訪存速度2. 提高提高 I/O 和主機(jī)之間的和主機(jī)之間的傳送速度傳送速度 提高提高整機(jī)處理能力整機(jī)處理能力高速芯片高速芯片Cache多體并行

8、多體并行多總線多總線DMAI/O 處理機(jī)處理機(jī)通道通道高速器件高速器件改進(jìn)系統(tǒng)結(jié)構(gòu)改進(jìn)系統(tǒng)結(jié)構(gòu) ,開發(fā)系統(tǒng)的并行性,開發(fā)系統(tǒng)的并行性中斷中斷3. 提高提高運(yùn)算器速度運(yùn)算器速度高速芯片高速芯片改進(jìn)算法改進(jìn)算法快速進(jìn)位鏈快速進(jìn)位鏈二、系統(tǒng)的并行性二、系統(tǒng)的并行性時(shí)間上互相重疊時(shí)間上互相重疊2. 開發(fā)并行性的方法開發(fā)并行性的方法時(shí)間并行時(shí)間并行:空間并行空間并行:兩個(gè)或兩個(gè)以上事件在兩個(gè)或兩個(gè)以上事件在 同一時(shí)刻同一時(shí)刻 發(fā)生發(fā)生兩個(gè)或兩個(gè)以上事件在兩個(gè)或兩個(gè)以上事件在 同一時(shí)間段同一時(shí)間段 發(fā)生發(fā)生并行并行1. 并行的概念并行的概念設(shè)置多個(gè)獨(dú)立的部件設(shè)置多個(gè)獨(dú)立的部件,獨(dú)立工作獨(dú)立工作超標(biāo)量超標(biāo)量

9、,絕對絕對 采用流水線采用流水線相對相對并發(fā)并發(fā)同時(shí)同時(shí)取指令取指令 3執(zhí)行指令執(zhí)行指令 3三、指令流水原理三、指令流水原理2. 指令的二級流水指令的二級流水1. 指令的串行執(zhí)行指令的串行執(zhí)行取指令取指令 取指令部件取指令部件 完成完成總有一個(gè)部件總有一個(gè)部件 空閑空閑簡單的指令流水簡單的指令流水,也叫做也叫做”重疊重疊”將指令的工作過程合理的分解為幾個(gè)步驟將指令的工作過程合理的分解為幾個(gè)步驟- 指令流水指令流水執(zhí)行指令執(zhí)行指令 執(zhí)行指令部件執(zhí)行指令部件 完成完成取指令取指令 1執(zhí)行執(zhí)行指令指令 1取取指令指令 2執(zhí)行執(zhí)行指令指令 2取取指令指令 3執(zhí)行指令執(zhí)行指令 3取指令取指令 2執(zhí)行指令

10、執(zhí)行指令 2取指令取指令 1執(zhí)行指令執(zhí)行指令 1 用于描述流水線的工作過程四、四、 時(shí)空圖時(shí)空圖求階求階差差1對階對階1求階求階差差2對階對階2尾數(shù)尾數(shù)加加1求階求階差差3對階對階3尾數(shù)尾數(shù)加加2求階求階差差4規(guī)格規(guī)格化化1對階對階4尾數(shù)尾數(shù)加加3求階求階差差5規(guī)格規(guī)格化化2對階對階5尾數(shù)尾數(shù)加加4規(guī)格規(guī)格化化3尾數(shù)尾數(shù)加加5規(guī)格規(guī)格化化4規(guī)格規(guī)格化化50 t1 t2 t3 t4 t5 t6 t7 t8求階差求階差對對 階階尾數(shù)加尾數(shù)加規(guī)格化規(guī)格化空空 間間時(shí)時(shí) 間間例如例如 : 完成一條指令分完成一條指令分 7 段段,每段需,每段需1個(gè)個(gè) 時(shí)鐘周期時(shí)鐘周期若若 流水線不出現(xiàn)斷流流水線不出現(xiàn)斷

11、流1 個(gè)時(shí)鐘周期出個(gè)時(shí)鐘周期出 1 結(jié)果結(jié)果不采用流水技術(shù)不采用流水技術(shù)7 個(gè)時(shí)鐘周期出個(gè)時(shí)鐘周期出 1 結(jié)果結(jié)果地址形成部件地址形成部件指令譯碼部件指令譯碼部件取操作數(shù)部件取操作數(shù)部件取指令部件取指令部件操作執(zhí)行部件操作執(zhí)行部件回寫結(jié)果部件回寫結(jié)果部件修改指令指針部件修改指令指針部件鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存鎖存l保證效率l任務(wù)、子任務(wù)(功能部件)l緩沖寄存器l功能部件的劃分原則l“裝入時(shí)間”和“排空時(shí)間”五、使用流水線注意的問題五、使用流水線注意的問題六、流水線的分類六、流水線的分類一)線性和非線性流水線 1、線性流水線 功能段串聯(lián),任務(wù)從一端流入從另一端流出,每個(gè)功能段

12、流過一次且僅一次。 2、非線性流水線 功能段除了有串行的連接之外,還有反饋回路。S1S2S3連接圖連接圖 3、非線性流水線的表示 1)連接圖已不能準(zhǔn)確描述 2)使用“預(yù)約表”S1S2S3t功能段功能段 1 2 3 4 X X X X S1S2S3 3)可能發(fā)生沖突-調(diào)度YY 二)流水線的級別 1、處理機(jī)流水線 兩個(gè)或兩個(gè)以上的處理機(jī)串行連接起來 2、指令流水線 把指令分解為多個(gè)子過程對應(yīng)流水線中的功能部件。 3、功能部件流水線 在每個(gè)功能部件內(nèi)部采用流水線。 三)單功能和多功能流水線 1、單功能流水線 只完成一種固定功能的流水線 2、指令流水線 各功能段可以進(jìn)行不同的連接,實(shí)現(xiàn)不同的功能例:浮

13、點(diǎn)加/定點(diǎn)乘 輸入輸入求階差求階差對階對階尾數(shù)加尾數(shù)加規(guī)格化規(guī)格化尾數(shù)乘尾數(shù)乘累加累加輸出輸出求階差求階差對階對階尾數(shù)加尾數(shù)加規(guī)格化規(guī)格化輸入輸入尾數(shù)乘尾數(shù)乘累加累加輸出輸出 四)靜態(tài)和動(dòng)態(tài)流水線 1、靜態(tài)流水線 1)多功能流水線 2)按照一種方式連接 3)當(dāng)此種方式的所有任務(wù)都流出 后,才能進(jìn)行新的連接 2、動(dòng)態(tài)流水線l 1)多功能流水線l 2)按照多種方式連接l 3)當(dāng)此種方式的所有任務(wù)還沒有完l 全流出后,就可以進(jìn)行新的連接l 4)條件:各功能段不能有沖突 1、吞吐率 (TP) 1)單位時(shí)間內(nèi)流水 線完成的任務(wù)數(shù)量*tTk =k+(n-1)*t 2)公式 TP = n / Tk Tk =

14、(k+n-1)*t 2、加速比 (S) 1)完成一批任務(wù),不 使用流水線的時(shí)間 (T0)與使用流水 線的時(shí)間(Tk)之 比。 2)公式 S = T0 / Tk T0 = k n*tTk =(k+n-1)*t 3、效率 (E)1)N個(gè)任務(wù)占用的時(shí)空區(qū)與總的時(shí)空區(qū)之比。 2)公式 E = T0 / k*Tk T0 = k n*tTk =(k+n-1)*t1、已知:單功能4段動(dòng)態(tài)線性流水線,完成浮 點(diǎn)運(yùn)算 Z=A+B+C+D+E+F+G +H, 求:TP,S,E1111222233334444555566667777 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2、已知:

15、多功能8段靜態(tài)線性流水線,完成浮 點(diǎn)運(yùn)算 Z=A*B+C*D+E*F+G *H, 求:TP,S,E1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 201234567123412345675675675671234567輸入輸入求階差求階差對階對階尾數(shù)加尾數(shù)加規(guī)格化規(guī)格化尾數(shù)乘尾數(shù)乘累累 加加輸輸 出出1、由于反饋的存在,任務(wù)在流水線中會出現(xiàn) “沖突”現(xiàn)象。t功能段功能段 1 2 3 4 X X X X S1S2S3YYS1S2S32、要解決“沖突”,就要進(jìn)行流水線的“調(diào)度”2、預(yù)約表的作用3、非線性流水線的沖突 啟動(dòng)距離:連續(xù)輸入兩個(gè)任務(wù)之間的間

16、隔。 禁止啟動(dòng)距離:輸入兩個(gè)任務(wù)時(shí),使流水線 在某個(gè)地方產(chǎn)生沖突的時(shí)間間隔 啟動(dòng)距離啟動(dòng)距離 3啟動(dòng)距離啟動(dòng)距離 2啟動(dòng)距離啟動(dòng)距離 5啟動(dòng)距離啟動(dòng)距離 1,7啟動(dòng)循環(huán):不發(fā)生沖突的以循環(huán)數(shù)列形式 表現(xiàn)的啟動(dòng)距離 例如(1,7)恒定循環(huán):只有一個(gè)啟動(dòng)距離的啟動(dòng)循環(huán) 例如(5)平均啟動(dòng)距離:所有啟動(dòng)距離相加除以個(gè)數(shù)禁止向量:所有禁止啟動(dòng)距離組合一起形成 的數(shù)列3、非線性流水線的沖突如何求禁止向量? 1)根據(jù)預(yù)約表 2)將每一行中任意兩個(gè)“ X ”間的 距離去掉重復(fù)的,組成的數(shù)列例: (3,4,6)1)求出禁止向量2)根據(jù)禁止向量求出“沖突向量” (C) (1)沖突向量由一組二進(jìn)制數(shù)組成 (2)沖突向量的位數(shù)(M)由禁止向量 中最大的數(shù)字決定 (3)將禁止向量中出現(xiàn)的數(shù)字對應(yīng)沖突 向量的位,使其值“1” 例:禁止向量(3,4,6) 則 C=(101100) (初始沖突向量)4、無沖突調(diào)度(求出最短的啟動(dòng)距離)3)由沖突向量構(gòu)造“狀態(tài)圖” (1)狀態(tài)圖用來反映新任務(wù)輸入時(shí),功能 段沖突的變化 (2)方法: 將初始沖突向量右移 如

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論