版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
CPU史葦杭辦公室:306辦公電話子郵件:shiwh@《計算機組成原理》系統(tǒng)總線存儲器運算器控制器接口與通信輸入/輸出設備Cache第八章CPU的結構與功能(最難)(含第八章+第四篇)8.1 CPU的基本功能與組成(8.1)8.2 時序系統(tǒng)和控制方式(8.28.39)8.3 組合邏輯設計(10)8.4微程序設計(10)第八章CPU的結構與功能8.2、時序系統(tǒng)和控制方式8.2.1時序系統(tǒng)(指令周期、CPU周期、時鐘周期)8.2.2指令流程8.2.3指令流水8.2.4
時序控制組合邏輯控制器的設計步驟(前三步驟)步驟一擬定指令系統(tǒng)(邏輯依據,講過了)步驟二確定總體結構(空間安排,講過了)步驟三擬定時序系統(tǒng)(時間安排,講過了)步驟四擬定指令流程圖(合并了步驟一、步驟三)組合邏輯控制器的設計步驟(前三步驟非常重要)步驟一擬定指令系統(tǒng)(給出硬部件設計的邏輯依據)步驟二確定總體結構(空間安排:設置哪些部件,確定數據通路)步驟三擬定時序系統(tǒng)(時間安排)選定時序系統(tǒng)作為協(xié)調各部件工作的手段(周期–節(jié)拍–脈沖)即把一條指令的執(zhí)行過程分為若干個階段,一個階段為一個周期一個階段一個名字(取指周期,源周期,目的周期,執(zhí)行周期等)步驟四擬定指令流程圖(合并了步驟一、步驟三)將一條指令的執(zhí)行步驟按時間順序用流程圖形式表示出來(它是采用時序計數器設計控制器的關鍵一步)步驟五編制操作時間表(以步驟二、步驟四為基礎)
將指令流程中規(guī)定的操作落實到由哪個部件完成,在什么時間完成步驟六微操作的組合與化簡根據操作時間表,將產生同一微操作的條件用“或”連接組合成原始表達式,利用邏輯化簡,獲得最簡單的邏輯表達式。步驟七設計邏輯電路圖(結合現有的元件,適當變換邏輯表達式。)Review:控制器重在理解1、非訪存指令
CLA的指令周期:兩個CPU周期。指令功能:累加器清零操作。8.2.2指令流程——分析舉例操作碼譯碼1)程序計數器PC的內容“20”送入地址寄存器MAR;2)程序計數器PC的內容+1,為取下一條指令做準備;3)地址寄存器MAR的內容,送到地址總線ABus上;4)存儲單元20中的內容經數據總線DBus送數據緩沖寄存器MDR;5)數據緩沖寄存器MDR的內容,送到指令寄存器IR;6)指令寄存器中的操作碼被譯碼或測試;7)CPU識別出是CLA指令。2←20+11345CLA第一個CPU周期:取指令、操作碼譯碼假設程序計數器PC內容為“20”0002067操作碼譯碼器第二個CPU周期:執(zhí)行指令1)操作控制器送一控制信號給ALU;2)ALU響應控制信號,對AC清零。操作碼譯碼器2、直接訪存指令
ADD的指令周期:三個CPU周期。
指令功能:兩個操作數相加,運算結果放累加器一個操作數直接尋址、一個操作數隱含尋址。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼(同CLA)2←21+11345ADD300002167操作碼譯碼器第二個CPU周期:送操作數地址1)把指令寄存器中的地址碼部分(30)送入地址寄存器00030操作碼譯碼器第三個CPU周期:取操作數,執(zhí)行指令1)從內存中讀取操作數,送入數據緩沖寄存器;2)操作數與累加器相加后存入累加器。00030000006000006000000000006操作碼譯碼器3、存數指令
STA的指令周期:三個CPU周期。指令功能:向內存單元,寫入一操作數。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←22+11345STA400002267操作碼譯碼器第二個CPU周期:送操作數地址00040操作碼譯碼器00040000006第三個CPU周期:送操作數,執(zhí)行寫操作累加寄存器的內容,先送入數據緩沖寄存器,再寫入到所選定的存儲單元(40)中。操作碼譯碼器4、空操作指令
NOP的指令周期:兩個CPU周期。指令功能:控制器不發(fā)出任何控制信號。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←23+11345NOP0002367操作碼譯碼器第二個CPU周期:執(zhí)行指令(沒有任何操作)操作碼譯碼器5、轉移指令
JMP的指令周期:兩個CPU周期。
第一個CPU周期:取指令第二個CPU周期:指令中地址碼送程序計數器,代替原先的內容作為下一條指令的地址。從而改變了原先的程序順序。8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←24+11345JMP210002467操作碼譯碼器第二個CPU周期:執(zhí)行指令將指令的地址碼部分21送到程序計數器,改變了原先執(zhí)行順序00021操作碼譯碼器方框代表一個CPU周期,方框中的內容表示數據通路的某種控制操作。菱形通常用來表示某種判別或測試,不單獨占用一個CPU周期。8.2.2指令流程–方框圖表示采用方框圖語言來表示一條指令的指令周期。五條指令序列:第一個CPU周期:取指令,每條指令都相同;CLA,JMP,NOP:兩個CPU周期;ADD,STA:三個CPU周期ABUS:地址總線DBUS:數據總線AC:累加器PC:程序計數器IR:指令寄存器AR:地址寄存器DR:數據緩沖寄存器取指周期FE執(zhí)行周期EX有間址嗎?有中斷嗎?間址周期IND中斷周期INT是是否否8.2.2指令流程一條指令完整的指令周期包括:取指周期FE(必有)間址周期IND
執(zhí)行周期EX(必有)中斷周期INT取指周期:取出并分析指令。間址周期:取操作數有效地址。執(zhí)行周期:取操作數并執(zhí)行指令。中斷周期:CPU響應中斷。例如:設CPU內有下列部件:PC,IR,SP,AC,MAR,MDR和CU(控制單元)
要求:1)寫出完成間址尋址的取數指令LDA@X的信息流。
(將某主存單元的內容取至AC中)解:1)取指周期:PC送MAR送地址總線
PC+1送PCCU發(fā)讀內存命令數據送數據總線送MDR送IR//指令送入IR
指令操作碼部分OP(IR)送CU
2)間址周期:指令地址碼部分送MAR送地址總線
CU發(fā)讀內存命令數據送數據總線送MDR//操作數地址送入MDR3)執(zhí)行周期:MDR送MAR送地址總線
CU發(fā)讀內存命令數據送數據總線送MDR送AC//操作數送入AC8.2.2指令流程例如:設CPU內有下列部件:PC,IR,SP,AC,MAR,MDR和CU(控制單元)
要求:2)寫出中斷周期的信息流。解:2)在中斷周期內需將程序斷點(在PC中)保存起來,通常把斷點存入堆棧。(假設進棧操作是先修改堆棧指針,后存入數據)
CU發(fā)修改堆棧指針命令
(SP)–1送SP,送MAR送地址總線
PC送MDRCU發(fā)寫內存命令,MDR送數據總線寫入存儲單元
CU送新程序地址給PC
SP
SP斷點SP8.2.2指令流程斷點PC新地址PC1、取指周期數據流MDRCUMARPCIR存儲器CPU地址總線數據總線控制總線IR+18.2.2指令流程2、間址周期數據流MDRCUMARCPU地址總線數據總線控制總線PCIR存儲器MDR8.2.2指令流程3、執(zhí)行周期數據流(不同的指令的數據流不同)4、中斷周期數據流MDRCUMARCPU地址總線數據總線控制總線PC存儲器8.2.2指令流程保存PC中的中斷地址后,再送新地址給PC8.2.2指令流程–控制信號PCIRACCU時鐘ALU………控制信號標志控制信號C0C1C2C3C4取指周期例:ADD@X取指周期的控制信號發(fā)送順序:C0、C1、讀、C2、C3、C4PCIRCU1、CPU內部不采用總線的方式PCPCPCMDRMARMDRMARPCIRACCU時鐘ALU………控制信號標志控制信號MDRMARC1C2C3C5例:ADD@X間址周期的控制信號發(fā)送順序:C5、C1、讀、C2、C3IRMDRMDRMAR1、CPU內部不采用總線的方式8.2.2指令流程–控制信號PCIRACCU時鐘ALU………控制信號標志控制信號
MDR
MARC1C2C5例:ADD@X執(zhí)行周期的控制信號發(fā)送順序:C5、C1、讀、C2、C67、加、C8C7C6C8ACALU…控制信號
MDR
MAR
MDR1、CPU內部不采用總線的方式8.2.2指令流程–控制信號例:ADD@X
取指周期2.CPU內部采用總線方式(output輸出input輸入)8.2.2指令流程–控制信號例:ADD@X
間址周期2.CPU內部采用總線方式(output輸出input輸入)(Read)8.2.2指令流程–控制信號例:ADD@X
執(zhí)行周期2.CPU內部采用總線方式(output輸出input輸入)(Read)8.2.2指令流程–控制信號8.2、時序系統(tǒng)和控制方式8.2.1時序系統(tǒng)(周期、節(jié)拍)8.2.2指令流程8.2.3指令流水(并行執(zhí)行)8.2.4
時序控制提高訪存速度:1、采用高速存儲芯片2、多體并行存儲結構3、采用高速緩沖存儲器提高CPU速度:P3451、采用高速邏輯部件2、改進系統(tǒng)結構:采用流水技術開發(fā)系統(tǒng)的并行性。8.2.3指令流水–指令銜接方式CPU執(zhí)行指令序列時,各指令之間采取什么樣的銜接方式呢?最簡單的是串行順序處理方式,即一條指令執(zhí)行完后才讀取下一條。為了提高工作速度,現在的大多數計算機都采取重疊處理方式。重疊的程度取決于存儲與運算部件的多少,還與控制器指令部件的工作方式有關(即指令預取與譯碼執(zhí)行的技術)?,F在,僅從預取指令的角度討論幾種指令銜接方式:
1、單存儲體串行處理方式
2、單存儲體重疊處理方式
3、雙存儲體重疊處理方式
4、多存儲體重疊處理方式1、單存儲體串行處理方式2、單存儲體重疊處理方式取第K條指令……取數運算取第K+1條指令取數運算取第K條指令……取數運算取第K+1條指令取數取第K條指令……取數運算取第K條指令……取k+1條指令取k+2條指令取第K+1條數……取第K+2條數取第K+3條數取k+3條指令……第K條運算第K+2條運算第K+3條運算第K+1條運算3、雙存儲體重疊處理方式(一存儲體存指令,一存儲體存數據)取第K條數0體1體運算器CPU進行運算時內存空閑沒用!8.2.3指令流水–指令銜接方式單體單體4、多存儲體重疊處理方式
單元048地址譯碼器地址寄存器存儲器0數據寄存器地址譯碼器地址寄存器存儲器1數據寄存器地址譯碼器地址寄存器存儲器3數據寄存器存儲體號體內地址多體:每個體有獨立的地址寄存器、地址譯碼器和數據寄存器。交叉:每一個體的地址不連續(xù)。048/159/…交叉編址。目的:提高單位時間內取字的速率。(CPU對存儲體一對多)1593711地址譯碼器地址寄存器存儲器2數據寄存器2610Review:多體交叉存儲器單元048地址譯碼器地址寄存器存儲器0數據寄存器地址譯碼器地址寄存器存儲器1數據寄存器地址譯碼器地址寄存器存儲器3數據寄存器1593711地址譯碼器地址寄存器存儲器2數據寄存器2610取第K條指令……取第k條數第k條運算取第k+4條數第k+4條運算取k+4條指令0體取第K+1條指令……取第k+1條數第k+1條運算取第k+5條數取k+5條指令1體取第K+2條指令……取第k+2條數第k+2條運算取第k+6條數取k+6條指令2體取第K+3條指令……取第k+3條數第k+3條運算取第k+7條數取k+7條指令3體8.2.3指令流水–指令銜接方式流水線計算機的系統(tǒng)組成
其中CPU按流水線方式組織,通常由三部分組成3級流水線:指令部件、指令隊列、執(zhí)行部件。
為了使存儲器的存取時間能與流水線各過程段的速度相匹配,一般都采用多體交叉存儲器。8.2.3指令流水IF取指ID譯碼OF
取操作數EX執(zhí)行
流水線CPU的時空圖
計算機的流水線處理過程非常類似于工廠中的流水裝配線。為了實現流水,首先把輸入的任務(或過程)分割為一系列子任務,并使各子任務能在流水線的各個階段并發(fā)地執(zhí)行。當任務連續(xù)不斷地輸入流水線時,在流水線的輸出端便連續(xù)不斷地吐出執(zhí)行結果,從而實現了子任務級的并行性。8.2.3指令流水–流水線CPUIFIDOFEX流入流出取指譯碼取操作數執(zhí)行取指譯碼取操作數執(zhí)行8.2.3指令流水–流水線CPU時鐘周期每隔4個時鐘周期完成1條指令第1條指令4個時鐘周期,以后每隔1個時鐘周期完成1條指令時鐘周期
每個時鐘周期內可并發(fā)多條獨立指令(配置多個功能部件)
不能調整
指令的執(zhí)行順序(通過編譯優(yōu)化把可并行執(zhí)行的指令重組)8.2.3指令流水–流水線CPU超標量技術
在一個時鐘周期內再分段(在一個時鐘周期內一個功能部件使用多次)
采用多個處理部件Pentium是Intel公司生產的超標量流水處理器的經典之作。8.2.3指令流水–流水線CPU取指
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物材料增強肌腱再生組織力學強度的策略
- 生物材料臨床應用中的個體化治療策略探討
- 生物制品穩(wěn)定性試驗與質量風險管理結合
- 生物制品實時穩(wěn)定性試驗數據管理規(guī)范
- 生物制劑失應答后IBD的特殊人群用藥策略
- 建筑行業(yè)結構工程師面試問題集及答案
- 深度解析(2026)《GBT 19668.2-2017信息技術服務 監(jiān)理 第2部分:基礎設施工程監(jiān)理規(guī)范》
- 數字營銷部經理面試題及答案
- 電信行業(yè)精算師面試題及解析
- 智能客服坐席主管面試題及答案解析
- 2026年公安機關理論考試題庫300道(培優(yōu)a卷)
- 橋機安裝拆卸監(jiān)理實施細則
- 志愿者服務品牌建設方案
- 清潔清掃項目投標書
- 2025年個人信息保護專項工作總結與整改報告
- 傳遞正能量做好員工
- 2025北京市科學技術研究院及所屬事業(yè)單位第三批招聘37人備考題庫附答案
- 網優(yōu)項目年終總結
- 2025江蘇鎮(zhèn)江市京口產業(yè)投資發(fā)展集團有限公司招聘2人備考題庫含答案詳解
- 2025年秋季學期國家開放大學《人文英語3》形考任務綜合測試完整答案(不含聽力部分)
- 2025北京國文人力資源有限責任公司駐外文化和旅游機構職員招聘5人(第二期)筆試歷年參考題庫附帶答案詳解
評論
0/150
提交評論