版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
CPU史葦杭辦公室:306辦公電話子郵件:shiwh@《計算機組成原理》系統(tǒng)總線存儲器運算器控制器接口與通信輸入/輸出設(shè)備Cache第八章CPU的結(jié)構(gòu)與功能(最難)(含第八章+第四篇)8.1 CPU的基本功能與組成(8.1)8.2 時序系統(tǒng)和控制方式(8.28.39)8.3 組合邏輯設(shè)計(10)8.4微程序設(shè)計(10)第八章CPU的結(jié)構(gòu)與功能8.2、時序系統(tǒng)和控制方式8.2.1時序系統(tǒng)(指令周期、CPU周期、時鐘周期)8.2.2指令流程8.2.3指令流水8.2.4
時序控制組合邏輯控制器的設(shè)計步驟(前三步驟)步驟一擬定指令系統(tǒng)(邏輯依據(jù),講過了)步驟二確定總體結(jié)構(gòu)(空間安排,講過了)步驟三擬定時序系統(tǒng)(時間安排,講過了)步驟四擬定指令流程圖(合并了步驟一、步驟三)組合邏輯控制器的設(shè)計步驟(前三步驟非常重要)步驟一擬定指令系統(tǒng)(給出硬部件設(shè)計的邏輯依據(jù))步驟二確定總體結(jié)構(gòu)(空間安排:設(shè)置哪些部件,確定數(shù)據(jù)通路)步驟三擬定時序系統(tǒng)(時間安排)選定時序系統(tǒng)作為協(xié)調(diào)各部件工作的手段(周期–節(jié)拍–脈沖)即把一條指令的執(zhí)行過程分為若干個階段,一個階段為一個周期一個階段一個名字(取指周期,源周期,目的周期,執(zhí)行周期等)步驟四擬定指令流程圖(合并了步驟一、步驟三)將一條指令的執(zhí)行步驟按時間順序用流程圖形式表示出來(它是采用時序計數(shù)器設(shè)計控制器的關(guān)鍵一步)步驟五編制操作時間表(以步驟二、步驟四為基礎(chǔ))
將指令流程中規(guī)定的操作落實到由哪個部件完成,在什么時間完成步驟六微操作的組合與化簡根據(jù)操作時間表,將產(chǎn)生同一微操作的條件用“或”連接組合成原始表達(dá)式,利用邏輯化簡,獲得最簡單的邏輯表達(dá)式。步驟七設(shè)計邏輯電路圖(結(jié)合現(xiàn)有的元件,適當(dāng)變換邏輯表達(dá)式。)Review:控制器重在理解1、非訪存指令
CLA的指令周期:兩個CPU周期。指令功能:累加器清零操作。8.2.2指令流程——分析舉例操作碼譯碼1)程序計數(shù)器PC的內(nèi)容“20”送入地址寄存器MAR;2)程序計數(shù)器PC的內(nèi)容+1,為取下一條指令做準(zhǔn)備;3)地址寄存器MAR的內(nèi)容,送到地址總線ABus上;4)存儲單元20中的內(nèi)容經(jīng)數(shù)據(jù)總線DBus送數(shù)據(jù)緩沖寄存器MDR;5)數(shù)據(jù)緩沖寄存器MDR的內(nèi)容,送到指令寄存器IR;6)指令寄存器中的操作碼被譯碼或測試;7)CPU識別出是CLA指令。2←20+11345CLA第一個CPU周期:取指令、操作碼譯碼假設(shè)程序計數(shù)器PC內(nèi)容為“20”0002067操作碼譯碼器第二個CPU周期:執(zhí)行指令1)操作控制器送一控制信號給ALU;2)ALU響應(yīng)控制信號,對AC清零。操作碼譯碼器2、直接訪存指令
ADD的指令周期:三個CPU周期。
指令功能:兩個操作數(shù)相加,運算結(jié)果放累加器一個操作數(shù)直接尋址、一個操作數(shù)隱含尋址。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼(同CLA)2←21+11345ADD300002167操作碼譯碼器第二個CPU周期:送操作數(shù)地址1)把指令寄存器中的地址碼部分(30)送入地址寄存器00030操作碼譯碼器第三個CPU周期:取操作數(shù),執(zhí)行指令1)從內(nèi)存中讀取操作數(shù),送入數(shù)據(jù)緩沖寄存器;2)操作數(shù)與累加器相加后存入累加器。00030000006000006000000000006操作碼譯碼器3、存數(shù)指令
STA的指令周期:三個CPU周期。指令功能:向內(nèi)存單元,寫入一操作數(shù)。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←22+11345STA400002267操作碼譯碼器第二個CPU周期:送操作數(shù)地址00040操作碼譯碼器00040000006第三個CPU周期:送操作數(shù),執(zhí)行寫操作累加寄存器的內(nèi)容,先送入數(shù)據(jù)緩沖寄存器,再寫入到所選定的存儲單元(40)中。操作碼譯碼器4、空操作指令
NOP的指令周期:兩個CPU周期。指令功能:控制器不發(fā)出任何控制信號。操作碼譯碼8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←23+11345NOP0002367操作碼譯碼器第二個CPU周期:執(zhí)行指令(沒有任何操作)操作碼譯碼器5、轉(zhuǎn)移指令
JMP的指令周期:兩個CPU周期。
第一個CPU周期:取指令第二個CPU周期:指令中地址碼送程序計數(shù)器,代替原先的內(nèi)容作為下一條指令的地址。從而改變了原先的程序順序。8.2.2指令流程——分析舉例第一個CPU周期:取指令,操作碼譯碼2←24+11345JMP210002467操作碼譯碼器第二個CPU周期:執(zhí)行指令將指令的地址碼部分21送到程序計數(shù)器,改變了原先執(zhí)行順序00021操作碼譯碼器方框代表一個CPU周期,方框中的內(nèi)容表示數(shù)據(jù)通路的某種控制操作。菱形通常用來表示某種判別或測試,不單獨占用一個CPU周期。8.2.2指令流程–方框圖表示采用方框圖語言來表示一條指令的指令周期。五條指令序列:第一個CPU周期:取指令,每條指令都相同;CLA,JMP,NOP:兩個CPU周期;ADD,STA:三個CPU周期ABUS:地址總線DBUS:數(shù)據(jù)總線AC:累加器PC:程序計數(shù)器IR:指令寄存器AR:地址寄存器DR:數(shù)據(jù)緩沖寄存器取指周期FE執(zhí)行周期EX有間址嗎?有中斷嗎?間址周期IND中斷周期INT是是否否8.2.2指令流程一條指令完整的指令周期包括:取指周期FE(必有)間址周期IND
執(zhí)行周期EX(必有)中斷周期INT取指周期:取出并分析指令。間址周期:取操作數(shù)有效地址。執(zhí)行周期:取操作數(shù)并執(zhí)行指令。中斷周期:CPU響應(yīng)中斷。例如:設(shè)CPU內(nèi)有下列部件:PC,IR,SP,AC,MAR,MDR和CU(控制單元)
要求:1)寫出完成間址尋址的取數(shù)指令LDA@X的信息流。
(將某主存單元的內(nèi)容取至AC中)解:1)取指周期:PC送MAR送地址總線
PC+1送PCCU發(fā)讀內(nèi)存命令數(shù)據(jù)送數(shù)據(jù)總線送MDR送IR//指令送入IR
指令操作碼部分OP(IR)送CU
2)間址周期:指令地址碼部分送MAR送地址總線
CU發(fā)讀內(nèi)存命令數(shù)據(jù)送數(shù)據(jù)總線送MDR//操作數(shù)地址送入MDR3)執(zhí)行周期:MDR送MAR送地址總線
CU發(fā)讀內(nèi)存命令數(shù)據(jù)送數(shù)據(jù)總線送MDR送AC//操作數(shù)送入AC8.2.2指令流程例如:設(shè)CPU內(nèi)有下列部件:PC,IR,SP,AC,MAR,MDR和CU(控制單元)
要求:2)寫出中斷周期的信息流。解:2)在中斷周期內(nèi)需將程序斷點(在PC中)保存起來,通常把斷點存入堆棧。(假設(shè)進棧操作是先修改堆棧指針,后存入數(shù)據(jù))
CU發(fā)修改堆棧指針命令
(SP)–1送SP,送MAR送地址總線
PC送MDRCU發(fā)寫內(nèi)存命令,MDR送數(shù)據(jù)總線寫入存儲單元
CU送新程序地址給PC
SP
SP斷點SP8.2.2指令流程斷點PC新地址PC1、取指周期數(shù)據(jù)流MDRCUMARPCIR存儲器CPU地址總線數(shù)據(jù)總線控制總線IR+18.2.2指令流程2、間址周期數(shù)據(jù)流MDRCUMARCPU地址總線數(shù)據(jù)總線控制總線PCIR存儲器MDR8.2.2指令流程3、執(zhí)行周期數(shù)據(jù)流(不同的指令的數(shù)據(jù)流不同)4、中斷周期數(shù)據(jù)流MDRCUMARCPU地址總線數(shù)據(jù)總線控制總線PC存儲器8.2.2指令流程保存PC中的中斷地址后,再送新地址給PC8.2.2指令流程–控制信號PCIRACCU時鐘ALU………控制信號標(biāo)志控制信號C0C1C2C3C4取指周期例:ADD@X取指周期的控制信號發(fā)送順序:C0、C1、讀、C2、C3、C4PCIRCU1、CPU內(nèi)部不采用總線的方式PCPCPCMDRMARMDRMARPCIRACCU時鐘ALU………控制信號標(biāo)志控制信號MDRMARC1C2C3C5例:ADD@X間址周期的控制信號發(fā)送順序:C5、C1、讀、C2、C3IRMDRMDRMAR1、CPU內(nèi)部不采用總線的方式8.2.2指令流程–控制信號PCIRACCU時鐘ALU………控制信號標(biāo)志控制信號
MDR
MARC1C2C5例:ADD@X執(zhí)行周期的控制信號發(fā)送順序:C5、C1、讀、C2、C67、加、C8C7C6C8ACALU…控制信號
MDR
MAR
MDR1、CPU內(nèi)部不采用總線的方式8.2.2指令流程–控制信號例:ADD@X
取指周期2.CPU內(nèi)部采用總線方式(output輸出input輸入)8.2.2指令流程–控制信號例:ADD@X
間址周期2.CPU內(nèi)部采用總線方式(output輸出input輸入)(Read)8.2.2指令流程–控制信號例:ADD@X
執(zhí)行周期2.CPU內(nèi)部采用總線方式(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、多體并行存儲結(jié)構(gòu)3、采用高速緩沖存儲器提高CPU速度:P3451、采用高速邏輯部件2、改進系統(tǒng)結(jié)構(gòu):采用流水技術(shù)開發(fā)系統(tǒng)的并行性。8.2.3指令流水–指令銜接方式CPU執(zhí)行指令序列時,各指令之間采取什么樣的銜接方式呢?最簡單的是串行順序處理方式,即一條指令執(zhí)行完后才讀取下一條。為了提高工作速度,現(xiàn)在的大多數(shù)計算機都采取重疊處理方式。重疊的程度取決于存儲與運算部件的多少,還與控制器指令部件的工作方式有關(guān)(即指令預(yù)取與譯碼執(zhí)行的技術(shù))。現(xiàn)在,僅從預(yù)取指令的角度討論幾種指令銜接方式:
1、單存儲體串行處理方式
2、單存儲體重疊處理方式
3、雙存儲體重疊處理方式
4、多存儲體重疊處理方式1、單存儲體串行處理方式2、單存儲體重疊處理方式取第K條指令……取數(shù)運算取第K+1條指令取數(shù)運算取第K條指令……取數(shù)運算取第K+1條指令取數(shù)取第K條指令……取數(shù)運算取第K條指令……取k+1條指令取k+2條指令取第K+1條數(shù)……取第K+2條數(shù)取第K+3條數(shù)取k+3條指令……第K條運算第K+2條運算第K+3條運算第K+1條運算3、雙存儲體重疊處理方式(一存儲體存指令,一存儲體存數(shù)據(jù))取第K條數(shù)0體1體運算器CPU進行運算時內(nèi)存空閑沒用!8.2.3指令流水–指令銜接方式單體單體4、多存儲體重疊處理方式
單元048地址譯碼器地址寄存器存儲器0數(shù)據(jù)寄存器地址譯碼器地址寄存器存儲器1數(shù)據(jù)寄存器地址譯碼器地址寄存器存儲器3數(shù)據(jù)寄存器存儲體號體內(nèi)地址多體:每個體有獨立的地址寄存器、地址譯碼器和數(shù)據(jù)寄存器。交叉:每一個體的地址不連續(xù)。048/159/…交叉編址。目的:提高單位時間內(nèi)取字的速率。(CPU對存儲體一對多)1593711地址譯碼器地址寄存器存儲器2數(shù)據(jù)寄存器2610Review:多體交叉存儲器單元048地址譯碼器地址寄存器存儲器0數(shù)據(jù)寄存器地址譯碼器地址寄存器存儲器1數(shù)據(jù)寄存器地址譯碼器地址寄存器存儲器3數(shù)據(jù)寄存器1593711地址譯碼器地址寄存器存儲器2數(shù)據(jù)寄存器2610取第K條指令……取第k條數(shù)第k條運算取第k+4條數(shù)第k+4條運算取k+4條指令0體取第K+1條指令……取第k+1條數(shù)第k+1條運算取第k+5條數(shù)取k+5條指令1體取第K+2條指令……取第k+2條數(shù)第k+2條運算取第k+6條數(shù)取k+6條指令2體取第K+3條指令……取第k+3條數(shù)第k+3條運算取第k+7條數(shù)取k+7條指令3體8.2.3指令流水–指令銜接方式流水線計算機的系統(tǒng)組成
其中CPU按流水線方式組織,通常由三部分組成3級流水線:指令部件、指令隊列、執(zhí)行部件。
為了使存儲器的存取時間能與流水線各過程段的速度相匹配,一般都采用多體交叉存儲器。8.2.3指令流水IF取指ID譯碼OF
取操作數(shù)EX執(zhí)行
流水線CPU的時空圖
計算機的流水線處理過程非常類似于工廠中的流水裝配線。為了實現(xiàn)流水,首先把輸入的任務(wù)(或過程)分割為一系列子任務(wù),并使各子任務(wù)能在流水線的各個階段并發(fā)地執(zhí)行。當(dāng)任務(wù)連續(xù)不斷地輸入流水線時,在流水線的輸出端便連續(xù)不斷地吐出執(zhí)行結(jié)果,從而實現(xiàn)了子任務(wù)級的并行性。8.2.3指令流水–流水線CPUIFIDOFEX流入流出取指譯碼取操作數(shù)執(zhí)行取指譯碼取操作數(shù)執(zhí)行8.2.3指令流水–流水線CPU時鐘周期每隔4個時鐘周期完成1條指令第1條指令4個時鐘周期,以后每隔1個時鐘周期完成1條指令時鐘周期
每個時鐘周期內(nèi)可并發(fā)多條獨立指令(配置多個功能部件)
不能調(diào)整
指令的執(zhí)行順序(通過編譯優(yōu)化把可并行執(zhí)行的指令重組)8.2.3指令流水–流水線CPU超標(biāo)量技術(shù)
在一個時鐘周期內(nèi)再分段(在一個時鐘周期內(nèi)一個功能部件使用多次)
采用多個處理部件Pentium是Intel公司生產(chǎn)的超標(biāo)量流水處理器的經(jīng)典之作。8.2.3指令流水–流水線CPU取指
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度木飾面行業(yè)展會參展與廣告合作合同2篇
- 2025版外匯保函交易及結(jié)算服務(wù)合同3篇
- 2024版消防工程合同合同
- 二零二五年度船舶租賃及船舶交易合同4篇
- 2025年度住宅窗戶智能化升級改造合同4篇
- 2025年紅黃麻繩行業(yè)深度研究分析報告
- 2025年計算機機房建設(shè)市場分析現(xiàn)狀
- 2025年高端裝備制造廠房股權(quán)交易執(zhí)行協(xié)議4篇
- 2025版工業(yè)用地租賃居間差價合同3篇
- 2025年度摩托車行業(yè)展會組織服務(wù)合同范本4篇
- 土地買賣合同參考模板
- 新能源行業(yè)市場分析報告
- 2025年天津市政建設(shè)集團招聘筆試參考題庫含答案解析
- 房地產(chǎn)運營管理:提升項目品質(zhì)
- 自愿斷絕父子關(guān)系協(xié)議書電子版
- 你劃我猜游戲【共159張課件】
- 專升本英語閱讀理解50篇
- 中餐烹飪技法大全
- 新型電力系統(tǒng)研究
- 滋補類用藥的培訓(xùn)
- 北師大版高三數(shù)學(xué)選修4-6初等數(shù)論初步全冊課件【完整版】
評論
0/150
提交評論