數(shù)據(jù)通路的建立_第1頁
數(shù)據(jù)通路的建立_第2頁
數(shù)據(jù)通路的建立_第3頁
數(shù)據(jù)通路的建立_第4頁
數(shù)據(jù)通路的建立_第5頁
已閱讀5頁,還剩175頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、20091華東師范大學計算機科學技術(shù)系5 處理器處理器20092華東師范大學計算機科學技術(shù)系5 處理器處理器5.1 5.1 概述概述5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法5.5 5.5 異常異常5.6 5.6 硬布線控制器硬布線控制器5.7 5.7 微程序微程序控制器控制器5.85.8 PentiumPentium處理器的實現(xiàn)結(jié)構(gòu)處理器的實現(xiàn)結(jié)構(gòu)20093華東師范大學計算機科學技術(shù)系5 5 中央處理器中央處理器5.1 5.1 概述概述20094華東師范大學計算機科學技術(shù)系5.1 5.1 概述概

2、述一、一、處理器功能處理器功能處理器(處理器(CPU) Central Processing Unit 計算機中自動完成取出指令和執(zhí)計算機中自動完成取出指令和執(zhí) 行指令任務的部件行指令任務的部件決定計算機性能的三個關(guān)鍵因素:決定計算機性能的三個關(guān)鍵因素: 指令數(shù)目指令數(shù)目 指令系統(tǒng)、編譯器指令系統(tǒng)、編譯器 時鐘周期時鐘周期 處理器的實處理器的實 每條指令所需時鐘周期數(shù)每條指令所需時鐘周期數(shù) 現(xiàn)方式現(xiàn)方式CPU是計算機的核心部分是計算機的核心部分20095華東師范大學計算機科學技術(shù)系一、處理器功能一、處理器功能1.1.基本功能基本功能 指令控制:控制程序嚴格按規(guī)定的順序依指令控制:控制程序嚴格按

3、規(guī)定的順序依 次執(zhí)行次執(zhí)行 操作控制:按指令規(guī)定的要求,產(chǎn)生操作操作控制:按指令規(guī)定的要求,產(chǎn)生操作 控制信號,控制各部件工作控制信號,控制各部件工作 時間控制:對各種操作實施時間上的定時,時間控制:對各種操作實施時間上的定時, 使計算機有條不紊地工作使計算機有條不紊地工作 數(shù)據(jù)加工:對數(shù)據(jù)進行算術(shù)運算和邏輯運數(shù)據(jù)加工:對數(shù)據(jù)進行算術(shù)運算和邏輯運 算處理算處理PC+IR+IDPC+IR+ID操作控制器操作控制器時序產(chǎn)生器時序產(chǎn)生器運算器運算器20096華東師范大學計算機科學技術(shù)系5.1 5.1 概述概述二、二、CPU的基本組成的基本組成CPUCPU控制器控制器運算器運算器CPUCPU控制器控制

4、器運算器運算器CacheCachePCPCIRIRIDID操作控制器操作控制器時序產(chǎn)生器時序產(chǎn)生器ALUALUACACMDRMDRARARPSWPSW20097華東師范大學計算機科學技術(shù)系CPU模型模型輸入輸入/輸出輸出ALU操作控制器操作控制器時序產(chǎn)生器時序產(chǎn)生器寄存器寄存器AC存儲器存儲器狀態(tài)條件寄存器狀態(tài)條件寄存器PSW存儲器數(shù)據(jù)寄存器存儲器數(shù)據(jù)寄存器MDR指令寄存器指令寄存器IR程序寄存器程序寄存器PC存儲器地址寄存器存儲器地址寄存器MAR指令譯碼器指令譯碼器時鐘時鐘狀態(tài)狀態(tài)反饋反饋cccccc c cCPUc c c c c c20098華東師范大學計算機科學技術(shù)系執(zhí)行指令執(zhí)行指令二

5、、二、CPU的基本組成的基本組成1. 控制器控制器 是發(fā)布命令的是發(fā)布命令的“決策機構(gòu)決策機構(gòu)”,即完成協(xié)調(diào)和,即完成協(xié)調(diào)和指揮整個計算機系統(tǒng)的操作指揮整個計算機系統(tǒng)的操作主要任務主要任務: 從內(nèi)存中取出一條指令,并指出下一條指令從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的位置在內(nèi)存中的位置 對指令進行譯碼或測試,并產(chǎn)生相應的操作對指令進行譯碼或測試,并產(chǎn)生相應的操作控制信號,以便啟動規(guī)定的動作控制信號,以便啟動規(guī)定的動作 指揮并控制指揮并控制CPU、內(nèi)存和輸入、內(nèi)存和輸入/輸出設備之間輸出設備之間數(shù)據(jù)流動的方向數(shù)據(jù)流動的方向取指令取指令分析指令分析指令20099華東師范大學計算機科學技術(shù)

6、系二、二、CPU的基本組成的基本組成2. 運算器運算器 是一個執(zhí)行部件,運算器接受控制器的命令是一個執(zhí)行部件,運算器接受控制器的命令而進行動作而進行動作 ,完成數(shù)據(jù)加工處理。,完成數(shù)據(jù)加工處理。主要功能主要功能執(zhí)行算術(shù)運算執(zhí)行算術(shù)運算 執(zhí)行邏輯運算,包括邏輯測試執(zhí)行邏輯運算,包括邏輯測試 如:如: 零值測試或兩個值的比較等零值測試或兩個值的比較等200910華東師范大學計算機科學技術(shù)系5.1 5.1 概述概述三、三、CPU中的主要寄存器中的主要寄存器 存儲器數(shù)據(jù)寄存器(存儲器數(shù)據(jù)寄存器(MDR) 寄存器(寄存器(AC) 指令寄存器(指令寄存器(IR) 程序計數(shù)器(程序計數(shù)器(PC) 存儲器地址

7、寄存器(存儲器地址寄存器(MAR) 狀態(tài)條件寄存器(狀態(tài)條件寄存器(PSW)200911華東師范大學計算機科學技術(shù)系CPU模型模型輸入輸入/輸出輸出ALU操作控制器操作控制器時序產(chǎn)生器時序產(chǎn)生器寄存器寄存器AC存儲器存儲器狀態(tài)條件寄存器狀態(tài)條件寄存器PSW存儲器數(shù)據(jù)寄存器存儲器數(shù)據(jù)寄存器MDR指令寄存器指令寄存器IR程序寄存器程序寄存器PC存儲器地址寄存器存儲器地址寄存器MAR指令譯碼器指令譯碼器時鐘時鐘狀態(tài)狀態(tài)反饋反饋cccccc c cCPUc c c c c c200912華東師范大學計算機科學技術(shù)系三、三、CPU中的主要寄存器中的主要寄存器1. 存儲器數(shù)據(jù)寄存器(存儲器數(shù)據(jù)寄存器(MD

8、R) 存放當前訪問內(nèi)存或外設的內(nèi)容存放當前訪問內(nèi)存或外設的內(nèi)容 作用作用 補償補償CPU和內(nèi)存、外圍設備之間在操作速和內(nèi)存、外圍設備之間在操作速 度上的差別度上的差別2. 寄存器(寄存器(AC) 具有通用寄存器功能,簡稱累加器具有通用寄存器功能,簡稱累加器200913華東師范大學計算機科學技術(shù)系三、三、CPU中的主要寄存器中的主要寄存器3. 指令寄存器(指令寄存器(IR) 保存當前正在執(zhí)行的那條指令保存當前正在執(zhí)行的那條指令 當執(zhí)行一條指令時,先把它從內(nèi)存取到緩沖當執(zhí)行一條指令時,先把它從內(nèi)存取到緩沖 寄存器中,然后再傳送至指令寄存器寄存器中,然后再傳送至指令寄存器 指令寄存器的操作碼字段送指

9、令譯碼器,譯指令寄存器的操作碼字段送指令譯碼器,譯 碼產(chǎn)生指令類型碼碼產(chǎn)生指令類型碼200914華東師范大學計算機科學技術(shù)系三、三、CPU中的主要寄存器中的主要寄存器4. 程序計數(shù)器(程序計數(shù)器(PC) 確定下一條指令的地址確定下一條指令的地址 程序開始執(zhí)行前,將程序的首地址送入程序開始執(zhí)行前,將程序的首地址送入PC 程序順序執(zhí)行時,程序順序執(zhí)行時,CPU自動修改自動修改PC的內(nèi)的內(nèi) 容,指向下一條指令的地址容,指向下一條指令的地址 執(zhí)行轉(zhuǎn)移指令時,按指令給出的轉(zhuǎn)移地址執(zhí)行轉(zhuǎn)移指令時,按指令給出的轉(zhuǎn)移地址 修改修改PC內(nèi)容內(nèi)容200915華東師范大學計算機科學技術(shù)系三、三、CPU中的主要寄存器

10、中的主要寄存器5. 存儲器地址寄存器(存儲器地址寄存器(MAR) 保存當前保存當前CPU所訪問的內(nèi)存單元所訪問的內(nèi)存單元 或或I/O端口的地址端口的地址 由于內(nèi)存和由于內(nèi)存和CPU之間存在著操作速度上的之間存在著操作速度上的差異,所以必須使用地址寄存器來保持地差異,所以必須使用地址寄存器來保持地址信息,直到內(nèi)存的讀址信息,直到內(nèi)存的讀/寫操作完成為止寫操作完成為止 CPU和其他部件(內(nèi)存、外設)交換信息和其他部件(內(nèi)存、外設)交換信息都需使用地址寄存器和數(shù)據(jù)緩沖寄存器都需使用地址寄存器和數(shù)據(jù)緩沖寄存器200916華東師范大學計算機科學技術(shù)系三、三、CPU中的主要寄存器中的主要寄存器6. 狀態(tài)條

11、件寄存器(狀態(tài)條件寄存器(PSW) 專用寄存器專用寄存器 保存運行或測試結(jié)果產(chǎn)生的各種狀態(tài)信息保存運行或測試結(jié)果產(chǎn)生的各種狀態(tài)信息 如:運算結(jié)果進位標志如:運算結(jié)果進位標志(C) 運算結(jié)果溢出標志運算結(jié)果溢出標志(V) 運算結(jié)果為零標志運算結(jié)果為零標志(Z) 運算結(jié)果為負標志運算結(jié)果為負標志(N) 奇偶標志奇偶標志 等等等等 200917華東師范大學計算機科學技術(shù)系6. 狀態(tài)條件寄存器(狀態(tài)條件寄存器(PSW) 保存中斷和系統(tǒng)工作狀態(tài)等信息,以便使保存中斷和系統(tǒng)工作狀態(tài)等信息,以便使 CPU和系統(tǒng)能及時了解機器運行狀態(tài)和程和系統(tǒng)能及時了解機器運行狀態(tài)和程 序運行情況序運行情況 如:中斷允許標志

12、(如:中斷允許標志(IF) 單步執(zhí)行標志(單步執(zhí)行標志(T) 方向標志(方向標志(D) 等等等等 標志位通常分別由標志位通常分別由1位觸發(fā)器記憶,因此,位觸發(fā)器記憶,因此, 狀態(tài)條件寄存器是一個由各種狀態(tài)條件標狀態(tài)條件寄存器是一個由各種狀態(tài)條件標志拼湊而成的寄存器志拼湊而成的寄存器200918華東師范大學計算機科學技術(shù)系5.15.1 概述概述四、操作控制器與時序產(chǎn)生器四、操作控制器與時序產(chǎn)生器 數(shù)據(jù)通路數(shù)據(jù)通路各寄存器之間傳送信息的通路各寄存器之間傳送信息的通路 在各寄存器之間建立數(shù)據(jù)通路的任務,是由在各寄存器之間建立數(shù)據(jù)通路的任務,是由 操作控制器來完成的操作控制器來完成的200919華東師

13、范大學計算機科學技術(shù)系四、操作控制器與時序產(chǎn)生器四、操作控制器與時序產(chǎn)生器1. 操作控制器操作控制器 功能功能:根據(jù)指令操作碼和時序信號,產(chǎn)生各種操根據(jù)指令操作碼和時序信號,產(chǎn)生各種操作控制信號,以便正確地建立數(shù)據(jù)通路,作控制信號,以便正確地建立數(shù)據(jù)通路,以控制計算機各部件有序工作。以控制計算機各部件有序工作。由控制流控制數(shù)據(jù)流有向流動,完成取指由控制流控制數(shù)據(jù)流有向流動,完成取指令和執(zhí)行指令的控制令和執(zhí)行指令的控制 設計方法:設計方法:組合邏輯型組合邏輯型硬布線控制器硬布線控制器存儲邏輯型存儲邏輯型微程序控制器微程序控制器組合邏輯與存儲邏輯結(jié)合型組合邏輯與存儲邏輯結(jié)合型門陣列門陣列20092

14、0華東師范大學計算機科學技術(shù)系四、操作控制器與時序產(chǎn)生器四、操作控制器與時序產(chǎn)生器2. 時序產(chǎn)生器時序產(chǎn)生器 功能功能: 對各種操作實施時間上的控制對各種操作實施時間上的控制 根據(jù)時鐘信號產(chǎn)生周期、節(jié)拍、脈沖信號,根據(jù)時鐘信號產(chǎn)生周期、節(jié)拍、脈沖信號, 控制計算機有序工作控制計算機有序工作200921華東師范大學計算機科學技術(shù)系四、操作控制器與時序產(chǎn)生器四、操作控制器與時序產(chǎn)生器3. 實現(xiàn)框圖實現(xiàn)框圖 輸入信號:輸入信號: 指令譯碼器輸出信號指令譯碼器輸出信號 時鐘信號時鐘信號 機器工作狀態(tài)反饋信號機器工作狀態(tài)反饋信號 其他部件送往其他部件送往CPU的請求信號的請求信號 輸出信號:輸出信號:

15、輸出一系列操作控制信號,指揮各部輸出一系列操作控制信號,指揮各部 件有序工作件有序工作200922華東師范大學計算機科學技術(shù)系CPU模型模型輸入輸入/輸出輸出ALU操作控制器操作控制器時序產(chǎn)生器時序產(chǎn)生器寄存器寄存器AC存儲器存儲器狀態(tài)條件寄存器狀態(tài)條件寄存器PSW存儲器數(shù)據(jù)寄存器存儲器數(shù)據(jù)寄存器MDR指令寄存器指令寄存器IR程序寄存器程序寄存器PC存儲器地址寄存器存儲器地址寄存器MAR指令譯碼器指令譯碼器時鐘時鐘狀態(tài)狀態(tài)反饋反饋cccccc c cCPUc c c c c c200923華東師范大學計算機科學技術(shù)系5.15.1 概述概述五、處理器實現(xiàn)概述五、處理器實現(xiàn)概述 指令執(zhí)行的過程與指

16、令類型無關(guān)指令執(zhí)行的過程與指令類型無關(guān) 取一條取一條指令指令執(zhí)行執(zhí)行該指令該指令開始開始 計算機所以能自動地工作,是因為計算機所以能自動地工作,是因為CPUCPU能從存放程序的內(nèi)存能從存放程序的內(nèi)存 里取出一條指令并執(zhí)行這條指令;緊接著又取下一條指令,里取出一條指令并執(zhí)行這條指令;緊接著又取下一條指令, 執(zhí)行下一條指令執(zhí)行下一條指令,如此周而復始,構(gòu)成了一個封閉的,如此周而復始,構(gòu)成了一個封閉的 循環(huán)。除非遇到停機指令,否則這個循環(huán)將一直繼續(xù)下去循環(huán)。除非遇到停機指令,否則這個循環(huán)將一直繼續(xù)下去 嚴格在時序控制下進行嚴格在時序控制下進行200924華東師范大學計算機科學技術(shù)系五、處理器實現(xiàn)概述

17、五、處理器實現(xiàn)概述MIPS實現(xiàn)的高層視圖:實現(xiàn)的高層視圖: P186圖圖5-1下一條指令地址:下一條指令地址: PC+4PC PC+4+指令給出的偏移量指令給出的偏移量PC寫入寄存器堆的數(shù)據(jù)來源:寫入寄存器堆的數(shù)據(jù)來源: ALU運算結(jié)果運算結(jié)果 內(nèi)存內(nèi)存數(shù)據(jù)通路由數(shù)據(jù)通路由MUX選擇選擇 由指令譯碼產(chǎn)生由指令譯碼產(chǎn)生ALU、內(nèi)存等操作類型、內(nèi)存等操作類型 操作控制信號操作控制信號200925華東師范大學計算機科學技術(shù)系五、處理器實現(xiàn)概述五、處理器實現(xiàn)概述在圖在圖5-1基礎(chǔ)上增加必須的控制電路:基礎(chǔ)上增加必須的控制電路: 圖圖5-2 MUX MUX 選擇下一條指令地址(順序還是分支)選擇下一條指

18、令地址(順序還是分支) 選擇寄存器堆寫入內(nèi)容選擇寄存器堆寫入內(nèi)容 選擇操作數(shù)來源選擇操作數(shù)來源控制器控制器 根據(jù)指令譯碼產(chǎn)生操作控制信號根據(jù)指令譯碼產(chǎn)生操作控制信號 指令單周期完成指令單周期完成 圖圖5-3:一個時鐘周期從狀態(tài):一個時鐘周期從狀態(tài)1(完成組合邏輯功能)(完成組合邏輯功能) 到狀態(tài)到狀態(tài)2 圖圖5-4:狀態(tài)單元在同一時鐘周期內(nèi)讀出并寫入:狀態(tài)單元在同一時鐘周期內(nèi)讀出并寫入200926華東師范大學計算機科學技術(shù)系5 處理器處理器5.1 5.1 概述概述5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立200927華東師范大學計算機科學技術(shù)系5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立一、

19、讀一條指令并計算下一條指令地址一、讀一條指令并計算下一條指令地址 所需部件:所需部件: P190P190圖圖5-55-5 數(shù)據(jù)通路:數(shù)據(jù)通路: 圖圖5-65-6程程序序計計數(shù)數(shù)器器指令指令指令指令指令指令指令存儲器指令存儲器地址地址Add4PC指向程序指向程序首地址首地址指令順序執(zhí)行:指令順序執(zhí)行:PC加加4,指向下,指向下一條指令地址一條指令地址200928華東師范大學計算機科學技術(shù)系5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立二、非訪內(nèi)指令的執(zhí)行二、非訪內(nèi)指令的執(zhí)行R R型指令:型指令:addadd、subsub、andand、oror和和sltslt指令指令特點:操作數(shù)來自兩個寄存器特點

20、:操作數(shù)來自兩個寄存器 進行算術(shù)或邏輯運算進行算術(shù)或邏輯運算 運算結(jié)果寫回寄存器運算結(jié)果寫回寄存器例:例:add $t1,$t2,$t3add $t1,$t2,$t3 功能:功能:($t1)+($t2) $t3($t1)+($t2) $t3200929華東師范大學計算機科學技術(shù)系二、非訪內(nèi)指令的執(zhí)行二、非訪內(nèi)指令的執(zhí)行處理器有處理器有3232個通用寄存器個通用寄存器寄存器堆寄存器堆 需要需要5 5位唯一選擇某一個寄存器位唯一選擇某一個寄存器 輸出控制:輸出控制:5 5位讀寄存器位讀寄存器1 1選擇選擇 5 5位讀寄存器位讀寄存器2 2選擇選擇 數(shù)據(jù)輸出:寄存器數(shù)據(jù)輸出:寄存器1 1輸出輸出 寄

21、存器寄存器2 2輸出輸出 輸入控制:輸入控制:5 5位寫寄存器選擇位寫寄存器選擇 數(shù)據(jù)輸入、寫命令數(shù)據(jù)輸入、寫命令 數(shù)據(jù)寬度為數(shù)據(jù)寬度為3232位位 寄存器堆寄存器堆 圖圖5-7a5-7a ALU+PSW ALU+PSW(僅(僅1 1位狀態(tài)標記位狀態(tài)標記Zero) Zero) 圖圖5-7b5-7b ALU ALU操作由操作由4 4位控制,可選擇位控制,可選擇1616種操作種操作200930華東師范大學計算機科學技術(shù)系5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立三、訪內(nèi)指令的執(zhí)行三、訪內(nèi)指令的執(zhí)行訪內(nèi)指令:訪內(nèi)指令:lwlw、swsw特點:操作數(shù)來自(或送至)存儲器特點:操作數(shù)來自(或送至)存儲

22、器例:例:lwlw $t1,offset_value($t2) $t1,offset_value($t2) 功能:將基址寄存器功能:將基址寄存器$t2$t2的內(nèi)容與指令中的內(nèi)容與指令中 1616位有符號偏移量相加,得存儲器位有符號偏移量相加,得存儲器 地址,取出操作數(shù)送地址,取出操作數(shù)送$t1$t1 sw sw $t1,offset_value($t2) $t1,offset_value($t2) 功能:將基址寄存器功能:將基址寄存器$t2$t2的內(nèi)容與指令中的內(nèi)容與指令中 1616位有符號偏移量相加,得存儲器位有符號偏移量相加,得存儲器 地址,將地址,將$t1$t1內(nèi)容送該存儲單元內(nèi)容送該存

23、儲單元 增加兩個部件:數(shù)據(jù)存儲器、符號擴展單元增加兩個部件:數(shù)據(jù)存儲器、符號擴展單元 圖圖5-85-8 200931華東師范大學計算機科學技術(shù)系5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立四、程序控制指令的執(zhí)行四、程序控制指令的執(zhí)行程序控制指令:分支指令(條件轉(zhuǎn)移)程序控制指令:分支指令(條件轉(zhuǎn)移)特點:根據(jù)條件決定后續(xù)指令地址特點:根據(jù)條件決定后續(xù)指令地址例:例:beqbeq $t1,$t2,offset $t1,$t2,offset 功能:判斷功能:判斷($t1)=($t2)?($t1)=($t2)? 否:順序執(zhí)行否:順序執(zhí)行 PC+4PC+4 是:分支跳轉(zhuǎn)是:分支跳轉(zhuǎn) PC+4+PC+4

24、+偏移量偏移量200932華東師范大學計算機科學技術(shù)系四、程序控制指令的執(zhí)行四、程序控制指令的執(zhí)行實現(xiàn):實現(xiàn): P193P193圖圖5-95-9、P187P187圖圖5-25-2判斷是否相等判斷是否相等 ALU+PSWALU+PSW分支目標地址計算分支目標地址計算 符號擴展單元符號擴展單元+ +加法器加法器 符號擴展單元符號擴展單元 161632 補入同符號位補入同符號位 左移二位左移二位 字對齊字對齊 在在MIPSMIPS指令集中分支指令采用延遲執(zhí)行指令集中分支指令采用延遲執(zhí)行 法,即在下一條指令執(zhí)行后才轉(zhuǎn)移(考法,即在下一條指令執(zhí)行后才轉(zhuǎn)移(考 慮流水線問題),此例中忽略慮流水線問題),此

25、例中忽略200933華東師范大學計算機科學技術(shù)系5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立五、可執(zhí)行上述類型指令的綜合數(shù)據(jù)通路五、可執(zhí)行上述類型指令的綜合數(shù)據(jù)通路 (單時鐘周期內(nèi)執(zhí)行一條指令)(單時鐘周期內(nèi)執(zhí)行一條指令)方法:增加方法:增加MUX MUX 圖圖5-115-11 MUX MUX選擇控制:選擇控制: PCSrc PCSrc:是否分支控制,由指令類型:是否分支控制,由指令類型 碼和狀態(tài)位碼和狀態(tài)位ZeroZero決定決定 ALUSrc ALUSrc:操作數(shù)來源選擇控制:操作數(shù)來源選擇控制 MemtoReg MemtoReg:寫入寄存器堆數(shù)據(jù)來源的:寫入寄存器堆數(shù)據(jù)來源的 選擇控制(

26、運算結(jié)果或數(shù)選擇控制(運算結(jié)果或數(shù) 據(jù)存儲器)據(jù)存儲器)200934華東師范大學計算機科學技術(shù)系5 處理器處理器5.1 5.1 概述概述5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案200935華東師范大學計算機科學技術(shù)系5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案例例: : 簡單的簡單的MIPSMIPS子集實現(xiàn)方案子集實現(xiàn)方案 包括數(shù)據(jù)通路及其控制包括數(shù)據(jù)通路及其控制功能:功能: 支持取字支持取字lwlw、存字、存字swsw 訪內(nèi)指令訪內(nèi)指令 支持算術(shù)邏輯運算指令支持算術(shù)邏輯運算指令addadd、subsub、andand、 oror

27、和和sltslt 非訪內(nèi)指令非訪內(nèi)指令 支持等值分支支持等值分支beqbeq指令、跳轉(zhuǎn)指令指令、跳轉(zhuǎn)指令j j 程序控制指令程序控制指令200936華東師范大學計算機科學技術(shù)系5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案一、一、ALUALU的控制的控制 所采用的所采用的ALUALU有有4 4個選擇控制端,可完成個選擇控制端,可完成1616種操作。種操作。 此例中,此例中,ALUALU只需完成只需完成5 5種操作,相應的控種操作,相應的控制輸入碼為:制輸入碼為:ALU控制輸入碼控制輸入碼功能功能0000與與0001或或0010加加0110減減0111小于則置小于則置1200937華東師范

28、大學計算機科學技術(shù)系一、一、ALUALU的控制的控制分析:分析: 執(zhí)行執(zhí)行l(wèi)wlw、swsw指令:指令: ALUALU完成加運算完成加運算 執(zhí)行執(zhí)行beqbeq指令:指令: ALUALU完成減運算完成減運算 執(zhí)行算術(shù)邏輯運算指令:執(zhí)行算術(shù)邏輯運算指令: ALUALU完成完成5 5種運算種運算區(qū)分三類指令:區(qū)分三類指令: 2 2位位ALUopALUop 00 01 1 00 01 1區(qū)分第三類指令的種操作:區(qū)分第三類指令的種操作:指令的低位功能字段指令的低位功能字段 P46圖圖2-132 2位位ALUopALUop和位指令功能字段編碼和位指令功能字段編碼 產(chǎn)生產(chǎn)生4 4位位ALUALU控制輸入碼

29、控制輸入碼 P196P196圖圖5-125-12200938華東師范大學計算機科學技術(shù)系一、一、ALUALU的控制的控制設計方法:多層解碼設計方法:多層解碼 三類指令三類指令 2 2位位ALUopALUop (由指令的(由指令的OPOP碼譯碼產(chǎn)生)碼譯碼產(chǎn)生) 2 2位位ALUopALUop+ +位指令功能字段編碼位指令功能字段編碼 產(chǎn)生產(chǎn)生4位位ALU控制輸入碼控制輸入碼 使用多層控制可減少主控制單元的規(guī)模,提高使用多層控制可減少主控制單元的規(guī)模,提高控制單元的速度控制單元的速度200939華東師范大學計算機科學技術(shù)系一、一、ALUALU的控制的控制實現(xiàn)方法:利用無關(guān)項簡化電路實現(xiàn)方法:利用

30、無關(guān)項簡化電路分析:分析:ALUALU控制輸入碼的高位恒為控制輸入碼的高位恒為0 0,僅需產(chǎn)生低,僅需產(chǎn)生低3 3位位 ALUop ALUop:0000、X1X1、1X1X(因(因1111輸入不用)輸入不用) 指令的指令的6 6位功能字段編碼只用了位功能字段編碼只用了6464種中的很種中的很 小一部分,可簡化設計。小一部分,可簡化設計。 僅當僅當ALUopALUop的高位為的高位為1 1時,由指令的時,由指令的6 6位功能位功能 字段的低字段的低4 4位決定位決定ALUALU控制輸入碼控制輸入碼列出真值表(圖列出真值表(圖5-135-13) 電路實現(xiàn)電路實現(xiàn)輸入:輸入:ALUop1:0ALUo

31、p1:0,F(xiàn)5-F0F5-F0輸出:輸出:3 3位位ALUALU控制輸入碼(控制輸入碼(+ +高位高位0 0)200940華東師范大學計算機科學技術(shù)系5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案二、主控制單元的設計二、主控制單元的設計模型機的指令集包含三類指令,格式見圖模型機的指令集包含三類指令,格式見圖5-145-14分析:分析: 操作碼操作碼OPOP:31:26,31:26,用用Op5:0Op5:0表示表示 R R型指令:型指令:0 beq0 beq指令指令: 4: 4 lw lw指令指令: 35 sw: 35 sw指令指令: 43: 43 源操作數(shù):源操作數(shù):rs25:21rs2

32、5:21、rt20:16rt20:16 lw lw指令的基址寄存器:指令的基址寄存器:rs25:21rs25:21 目的寄存器:目的寄存器: lwlw指令:指令:rt20:16rt20:16 R R型指令:型指令:rd15:11rd15:11 需用需用MUXMUX選擇選擇200941華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計實現(xiàn)框圖:實現(xiàn)框圖: P198P198圖圖5-155-15組成:組成: PC PC后繼地址產(chǎn)生電路后繼地址產(chǎn)生電路 程序計數(shù)器、加法器程序計數(shù)器、加法器2 2、移位器、移位器、MUXMUX 存儲器存儲器 指令存儲器、數(shù)據(jù)存儲器指令存儲器、數(shù)據(jù)存儲器

33、 運算單元運算單元 ALUALU、PSWPSW、寄存器堆、符號擴展單元、寄存器堆、符號擴展單元、 MUXMUX3 ALU控制器控制器200942華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計控制信號:控制信號: P199圖圖5-16 RegDst RegDst:選擇目的寄存器:選擇目的寄存器 (存取指令(存取指令/R/R型指令)型指令) RegWriteRegWrite: : 寄存器寫命令(非寫即讀)寄存器寫命令(非寫即讀) ALUSrcALUSrc:第:第2 2個源操作數(shù)選擇個源操作數(shù)選擇 (rtrt/ /符號擴展后的偏移量)符號擴展后的偏移量) PCSrcPCSrc:

34、選擇后繼指令地址:選擇后繼指令地址 MemReadMemRead:存儲器讀命令:存儲器讀命令 MemWriteMemWrite:存儲器寫命令:存儲器寫命令 MemtoRegMemtoReg:選擇寫入目的寄存器的內(nèi)容來源:選擇寫入目的寄存器的內(nèi)容來源 ALUopALUop:與指令功能碼一起產(chǎn)生:與指令功能碼一起產(chǎn)生ALUALU控制輸入碼控制輸入碼200943華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計控制電路控制電路產(chǎn)生操作控制信號產(chǎn)生操作控制信號 P200圖圖5-17 分析分析 PCSrc PCSrc信號由分支指令操作碼和運算結(jié)果的狀信號由分支指令操作碼和運算結(jié)果的狀

35、態(tài)產(chǎn)生態(tài)產(chǎn)生 其余其余8個僅由指令的操作碼產(chǎn)生個僅由指令的操作碼產(chǎn)生控制控制單元單元Op31:26Op31:26RegDstRegDstBranchBranchMemReadMemReadMemtoRegMemtoRegALUOp1-0ALUOp1-0MemWriteMemWriteALUSrcALUSrcRegWriteRegWriteZeroZeroPCSrcPCSrc指令譯碼產(chǎn)生相應的操作控制信號指令譯碼產(chǎn)生相應的操作控制信號執(zhí)行不同指令所產(chǎn)生的操作控制信號見執(zhí)行不同指令所產(chǎn)生的操作控制信號見P201圖圖5-18200944華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的

36、設計控制信號:控制信號: P199圖圖5-16 RegDst RegDst:選擇目的寄存器:選擇目的寄存器 (存取指令(存取指令/R/R型指令)型指令) RegWriteRegWrite: : 寄存器寫命令(非寫即讀)寄存器寫命令(非寫即讀) ALUSrcALUSrc:第:第2 2個源操作數(shù)選擇個源操作數(shù)選擇 (rtrt/ /符號擴展后的偏移量)符號擴展后的偏移量) PCSrcPCSrc:選擇后繼指令地址:選擇后繼指令地址 MemReadMemRead:存儲器讀命令:存儲器讀命令 MemWriteMemWrite:存儲器寫命令:存儲器寫命令 MemtoRegMemtoReg:選擇寫入目的寄存器

37、的內(nèi)容來源:選擇寫入目的寄存器的內(nèi)容來源 ALUopALUop:與指令功能碼一起產(chǎn)生:與指令功能碼一起產(chǎn)生ALUALU控制輸入碼控制輸入碼PCSrc200945華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計 指令執(zhí)行的數(shù)據(jù)通路:指令執(zhí)行的數(shù)據(jù)通路: P201P201圖圖5-195-191. 非訪內(nèi)指令(非訪內(nèi)指令(R R型指令)的執(zhí)行流程型指令)的執(zhí)行流程2. 例:例:add $t1, $t2, $t3add $t1, $t2, $t33. 取指令,從指令存儲器中讀出一條指令;取指令,從指令存儲器中讀出一條指令;4. PC增值,產(chǎn)生下一條指令地址。增值,產(chǎn)生下一條指令地址

38、。5. 指令譯碼:指令譯碼: 下一條指令地址送下一條指令地址送PC;6. 產(chǎn)生相應的操作控制信號;產(chǎn)生相應的操作控制信號;7. 讀出寄存器讀出寄存器$t2$t2和和$t3$t3內(nèi)容內(nèi)容, ,送送ALUALU。8.8. ALU完成加運算(完成加運算(ALUop和指令功能字段和指令功能字段控制控制9. 產(chǎn)生相應的產(chǎn)生相應的ALU操作控制信號)。操作控制信號)。10. 寫入運算結(jié)果,運算結(jié)果送寫入運算結(jié)果,運算結(jié)果送$t1。200946華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計控制信號:控制信號: P199圖圖5-16 RegDst RegDst:選擇目的寄存器:選擇目的寄

39、存器 (存取指令(存取指令/R/R型指令)型指令) RegWriteRegWrite: : 寄存器寫命令(非寫即讀)寄存器寫命令(非寫即讀) ALUSrcALUSrc:第:第2 2個源操作數(shù)選擇個源操作數(shù)選擇 (rtrt/ /符號擴展后的偏移量)符號擴展后的偏移量) PCSrcPCSrc:選擇后繼指令地址:選擇后繼指令地址 MemReadMemRead:存儲器讀命令:存儲器讀命令 MemWriteMemWrite:存儲器寫命令:存儲器寫命令 MemtoRegMemtoReg:選擇寫入目的寄存器的內(nèi)容來源:選擇寫入目的寄存器的內(nèi)容來源 ALUopALUop:與指令功能碼一起產(chǎn)生:與指令功能碼一起

40、產(chǎn)生ALUALU控制輸入碼控制輸入碼PCSrcPCSrc 取指令,從指取指令,從指 令存儲器中讀令存儲器中讀 出一條指令;出一條指令; 指令譯碼:指令譯碼: 下一條指令地下一條指令地 址送址送PCPC; 產(chǎn)生相應的操作產(chǎn)生相應的操作 控制信號;控制信號; 寫入運算結(jié)寫入運算結(jié) 果,運算結(jié)果,運算結(jié) 果送果送$t1$t1。 ALU ALU完成加運完成加運 算(算(ALUopALUop和和 指令功能字段指令功能字段 控制產(chǎn)生相應控制產(chǎn)生相應 的的ALUALU操作控操作控制制 信號)信號) PC PC增值,產(chǎn)生下增值,產(chǎn)生下 一條指令地址。一條指令地址。 讀出寄存器讀出寄存器$t2$t2和和$t3$

41、t3內(nèi)容內(nèi)容, ,送送ALUALU。200947華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計2. 訪內(nèi)指令的執(zhí)行流程訪內(nèi)指令的執(zhí)行流程 圖圖5-20 例:例:lwlw $t1, offset($t2) $t1, offset($t2) 取指令,從指令存儲器中讀出一條指令;取指令,從指令存儲器中讀出一條指令; PC增值,產(chǎn)生下一條指令地址。增值,產(chǎn)生下一條指令地址。 指令譯碼:指令譯碼: 下一條指令地址送下一條指令地址送PC; 產(chǎn)生相應的操作控制信號;產(chǎn)生相應的操作控制信號; 讀出寄存器讀出寄存器$t2$t2的內(nèi)容送的內(nèi)容送ALUALU。 指令的指令的offset字段經(jīng)符

42、號擴展單元,產(chǎn)生字段經(jīng)符號擴展單元,產(chǎn)生32位偏位偏 移量送移量送ALU,ALU完成加運算。完成加運算。 運算結(jié)果作為數(shù)據(jù)存儲器地址。運算結(jié)果作為數(shù)據(jù)存儲器地址。 讀出數(shù)據(jù)存儲器相應單元內(nèi)容送讀出數(shù)據(jù)存儲器相應單元內(nèi)容送$t1。200948華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計控制信號:控制信號: P199圖圖5-16 RegDst RegDst:選擇目的寄存器:選擇目的寄存器 (存取指令(存取指令/R/R型指令)型指令) RegWriteRegWrite: : 寄存器寫命令(非寫即讀)寄存器寫命令(非寫即讀) ALUSrcALUSrc:第:第2 2個源操作數(shù)選擇

43、個源操作數(shù)選擇 (rtrt/ /符號擴展后的偏移量)符號擴展后的偏移量) PCSrcPCSrc:選擇后繼指令地址:選擇后繼指令地址 MemReadMemRead:存儲器讀命令:存儲器讀命令 MemWriteMemWrite:存儲器寫命令:存儲器寫命令 MemtoRegMemtoReg:選擇寫入目的寄存器的內(nèi)容來源:選擇寫入目的寄存器的內(nèi)容來源 ALUopALUop:與指令功能碼一起產(chǎn)生:與指令功能碼一起產(chǎn)生ALUALU控制輸入碼控制輸入碼PCSrcPCSrc 取指令,從指取指令,從指 令存儲器中讀令存儲器中讀 出一條指令;出一條指令; 指令譯碼:指令譯碼: 下一條指令地下一條指令地 址送址送P

44、CPC; 產(chǎn)生相應的操作產(chǎn)生相應的操作 控制信號;控制信號; 運算結(jié)果作運算結(jié)果作 為數(shù)據(jù)存儲為數(shù)據(jù)存儲 器地址。器地址。 指令的指令的offsetoffset 字段經(jīng)符號擴字段經(jīng)符號擴 展單元,產(chǎn)生展單元,產(chǎn)生 3232位偏移量送位偏移量送 ALUALU,ALUALU完成完成 加運算。加運算。 PC PC增值,產(chǎn)生下增值,產(chǎn)生下 一條指令地址。一條指令地址。 讀出寄存器讀出寄存器$t2$t2 送送ALUALU。讀出數(shù)據(jù)存儲讀出數(shù)據(jù)存儲 器相應單元內(nèi)器相應單元內(nèi) 容送容送$t1$t1。200949華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計3. 程序控制指令的執(zhí)行流程程

45、序控制指令的執(zhí)行流程 圖圖5-214. 例:例:beqbeq $t1, $t2, offset $t1, $t2, offset 取指令,從指令存儲器中讀出一條指令;取指令,從指令存儲器中讀出一條指令; PC增值,產(chǎn)生下一條指令地址。增值,產(chǎn)生下一條指令地址。 指令譯碼:指令譯碼: 下一條指令地址送下一條指令地址送PC; 產(chǎn)生相應的操作控制信號;產(chǎn)生相應的操作控制信號; 讀出寄存器讀出寄存器$t1$t1和和$t2$t2內(nèi)容內(nèi)容, ,送送ALUALU。 ALU完成減運算,影響標志位完成減運算,影響標志位Zero; 指令指令offset字段經(jīng)符號擴展單元,產(chǎn)生字段經(jīng)符號擴展單元,產(chǎn)生32位偏移位偏

46、移 量送量送Add,Add完成加運算,產(chǎn)生分支目標地址完成加運算,產(chǎn)生分支目標地址 MUX選擇分支目標地址送選擇分支目標地址送PC,完成轉(zhuǎn)移,完成轉(zhuǎn)移200950華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計控制信號:控制信號: P199圖圖5-16 RegDst RegDst:選擇目的寄存器:選擇目的寄存器 (存取指令(存取指令/R/R型指令)型指令) RegWriteRegWrite: : 寄存器寫命令(非寫即讀)寄存器寫命令(非寫即讀) ALUSrcALUSrc:第:第2 2個源操作數(shù)選擇個源操作數(shù)選擇 (rtrt/ /符號擴展后的偏移量)符號擴展后的偏移量) PC

47、SrcPCSrc:選擇后繼指令地址:選擇后繼指令地址 MemReadMemRead:存儲器讀命令:存儲器讀命令 MemWriteMemWrite:存儲器寫命令:存儲器寫命令 MemtoRegMemtoReg:選擇寫入目的寄存器的內(nèi)容來源:選擇寫入目的寄存器的內(nèi)容來源 ALUopALUop:與指令功能碼一起產(chǎn)生:與指令功能碼一起產(chǎn)生ALUALU控制輸入碼控制輸入碼PCSrcPCSrc 取指令,從指取指令,從指 令存儲器中讀令存儲器中讀 出一條指令;出一條指令; 指令譯碼:指令譯碼: 下一條指令地下一條指令地 址送址送PCPC; 產(chǎn)生相應的操作產(chǎn)生相應的操作 控制信號;控制信號;指令指令offse

48、toffset字段經(jīng)字段經(jīng)符號擴展單元,產(chǎn)符號擴展單元,產(chǎn)生生3232位偏移量送位偏移量送AddAdd,AddAdd完成加運完成加運算,產(chǎn)生分支目標算,產(chǎn)生分支目標地址。地址。ALUALU完成減運算完成減運算, ,影響標志位影響標志位ZeroZero PC PC增值,產(chǎn)生下增值,產(chǎn)生下 一條指令地址。一條指令地址。 讀出寄存器讀出寄存器$t1$t1和和$t2$t2內(nèi)容內(nèi)容, ,送送ALUALU。 MUX MUX選擇分支目選擇分支目標地址送標地址送PCPC,完成,完成轉(zhuǎn)移轉(zhuǎn)移200951華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計 控制器電路設計:控制器電路設計: 輸入:

49、輸入:Op5:0 Op5:0 輸出:輸出:9 9個操作控制信號個操作控制信號 根據(jù)圖根據(jù)圖5-185-18,列出真值表(圖,列出真值表(圖5-225-22) 用電路實現(xiàn)用電路實現(xiàn)控制控制單元單元Op31:26Op31:26RegDstRegDstBranchBranchMemReadMemReadMemtoRegMemtoRegALUOpALUOpMemWriteMemWriteALUSrcALUSrcRegWriteRegWrite200952華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計增加指令集功能:增加指令集功能:例:增加跳轉(zhuǎn)指令(例:增加跳轉(zhuǎn)指令(j) 轉(zhuǎn)移地址

50、的形成:轉(zhuǎn)移地址的形成: 下一條指令地址的高下一條指令地址的高4位:位:31:28 j指令的指令的26位立即數(shù)字段:位立即數(shù)字段:27:2 j指令的指令的26位立即數(shù)字段左移位立即數(shù)字段左移2位,補入位,補入00 1:0 組合成組合成32位轉(zhuǎn)移目標地址位轉(zhuǎn)移目標地址opaddress31 26 25 031 26 25 0200953華東師范大學計算機科學技術(shù)系二、主控制單元的設計二、主控制單元的設計修改圖修改圖5-175-17電路:電路: 增加操作控制信號增加操作控制信號JumpJump 由由j j指令的指令的OPOP(2 2)通過控制電路譯碼產(chǎn)生)通過控制電路譯碼產(chǎn)生 增加增加MUXMUX

51、,進一步選擇條件轉(zhuǎn)移的目標地,進一步選擇條件轉(zhuǎn)移的目標地址址 或無條件轉(zhuǎn)移的目標地址送或無條件轉(zhuǎn)移的目標地址送PCPC 修改后電路框圖:修改后電路框圖: P204P204圖圖5-245-24200954華東師范大學計算機科學技術(shù)系5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案三、單周期實現(xiàn)方法的效率分析三、單周期實現(xiàn)方法的效率分析在單周期設計中:在單周期設計中: 時鐘周期對所有指令等長,即時鐘周期對所有指令等長,即CPI=1CPI=1 時鐘周期取決于最長指令的執(zhí)行時間(時鐘周期取決于最長指令的執(zhí)行時間(lwlw) ) 效率低效率低分析:分析:設:存儲單元的操作時間為設:存儲單元的操作時間

52、為200ps200ps ALU ALU和加法器的操作時間為和加法器的操作時間為100ps100ps 讀讀/ /寫寄存器寫寄存器堆堆的操作時間的操作時間為為50ps50ps 其他執(zhí)行部件和線路無延遲其他執(zhí)行部件和線路無延遲200955華東師范大學計算機科學技術(shù)系三、單周期實現(xiàn)方法的效率分析三、單周期實現(xiàn)方法的效率分析設程序中指令的組成比例為:設程序中指令的組成比例為: 25%lw,10%sw,45%R25%lw,10%sw,45%R型指令型指令,15%,15%分支指令分支指令比較:比較: 每條指令在一個固定長度的時鐘周期內(nèi)完成每條指令在一個固定長度的時鐘周期內(nèi)完成 每條指令在一個可變長度的時鐘周

53、期內(nèi)完成每條指令在一個可變長度的時鐘周期內(nèi)完成1.1.比較比較CPUCPU執(zhí)行時間執(zhí)行時間 CPUCPU執(zhí)行時間執(zhí)行時間= =指令數(shù)目指令數(shù)目CPI時鐘周期長度時鐘周期長度 CPI=1 CPUCPU執(zhí)行時間執(zhí)行時間= =指令數(shù)目指令數(shù)目時鐘周期長度時鐘周期長度 兩者情況下指令數(shù)目相同,只需比較時鐘周期長度兩者情況下指令數(shù)目相同,只需比較時鐘周期長度200956華東師范大學計算機科學技術(shù)系三、單周期實現(xiàn)方法的效率分析三、單周期實現(xiàn)方法的效率分析 分析各指令執(zhí)行路徑分析各指令執(zhí)行路徑 P205P205 計算各指令執(zhí)行所需時間計算各指令執(zhí)行所需時間 計算平均時鐘周期長度計算平均時鐘周期長度 固定:最

54、長指令執(zhí)行時間固定:最長指令執(zhí)行時間600ps600ps 可變:可變: 60060025%+55010%+40045%+ 35015%+ 2005%=447.5ps 計算性能比:計算性能比:600/477.5=1.34600/477.5=1.34 總結(jié):總結(jié): 可變時鐘周期長度效率高,但實現(xiàn)困難可變時鐘周期長度效率高,但實現(xiàn)困難200957華東師范大學計算機科學技術(shù)系5 處理器處理器5.1 5.1 概述概述5.2 5.2 數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立5.3 5.3 一個簡單的實現(xiàn)方案一個簡單的實現(xiàn)方案5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法200958華東師范大學計算機科學技術(shù)系5.4 5

55、.4 多周期實現(xiàn)方法多周期實現(xiàn)方法單周期實現(xiàn)缺點:單周期實現(xiàn)缺點: 效率低效率低 一個功能部件在一個時鐘周期內(nèi)只能使用一個功能部件在一個時鐘周期內(nèi)只能使用 一次一次采用多周期實現(xiàn)方法采用多周期實現(xiàn)方法200959華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法CPU每取出并執(zhí)行一條指令,都要完成一系列每取出并執(zhí)行一條指令,都要完成一系列的操作,所需的時間為的操作,所需的時間為指令周期指令周期 1. 指令周期指令周期指取出并執(zhí)行一條指令的時指取出并執(zhí)行一條指令的時 間間 由于各種指令的操作功能不同,復雜度不由于各種指令的操作功能不同,復雜度不一樣,因此各種指令的指令周期是

56、不同的一樣,因此各種指令的指令周期是不同的200960華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法把一個指令周期又分為若干個小周期,稱為把一個指令周期又分為若干個小周期,稱為CPUCPU周期周期(機器周期)(機器周期) 2. CPU周期周期通常用內(nèi)存中讀取一個指令通常用內(nèi)存中讀取一個指令 字的最短時間來規(guī)定字的最短時間來規(guī)定CPU周周 期期200961華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法再將再將CPU周期劃分為更小的時間片,稱為周期劃分為更小的時間片,稱為時鐘周期時鐘周期(T T周期、節(jié)拍脈沖)周期、節(jié)拍脈沖) 3. 時鐘周期時鐘

57、周期是是CPU處理操作的最基本處理操作的最基本 單位單位200962華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法時鐘周期、時鐘周期、CPU周期、指令周期周期、指令周期T4T3T2T1T4T3T2T1T周期周期CPU周期周期(取指令)(取指令)CPU周期周期(執(zhí)行指令)(執(zhí)行指令)指令周期指令周期 該圖給出的是采用定長該圖給出的是采用定長CPUCPU周期的指令周期示意圖周期的指令周期示意圖 取出和執(zhí)行一條指令所需的最短時間為兩個取出和執(zhí)行一條指令所需的最短時間為兩個CPUCPU周期周期 而復雜一些的指令周期,則需要更多的而復雜一些的指令周期,則需要更多的CPUCPU周

58、期周期 對對CPUCPU周期的規(guī)定在各種計算機中是不相同的周期的規(guī)定在各種計算機中是不相同的200963華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法 定長定長CPU周期:周期: 指令周期中包含的所有指令周期中包含的所有CPU周期均包含固周期均包含固 定的定的T周期周期 優(yōu)點:控制簡單優(yōu)點:控制簡單 不定長不定長CPU周期:周期: 指令周期中包含的指令周期中包含的CPU周期可根據(jù)執(zhí)行的周期可根據(jù)執(zhí)行的 需要,包含不同的需要,包含不同的T周期周期 優(yōu)點:提高時間利用率優(yōu)點:提高時間利用率 缺點:控制復雜缺點:控制復雜討論定義:討論定義: 指令周期由若干個指令周期由若干個

59、CPU周期組成(非定長)周期組成(非定長) 每個每個CPU周期又由若干個周期又由若干個T時鐘組成(定長)時鐘組成(定長)200964華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法時序組成:時序組成: 硬布線控制器中,時序信號采用三級時序硬布線控制器中,時序信號采用三級時序 結(jié)構(gòu):結(jié)構(gòu): 周期周期 節(jié)拍節(jié)拍 脈沖脈沖 (指令周期)(指令周期) (CPU周期)周期) (T周期)周期) 微程序控制器中,時序信號采用二級時序微程序控制器中,時序信號采用二級時序 結(jié)構(gòu):結(jié)構(gòu): 節(jié)拍節(jié)拍 脈沖脈沖200965華東師范大學計算機科學技術(shù)系5.4 5.4 多周期實現(xiàn)方法多周期實現(xiàn)方法

60、一、多周期實現(xiàn)方案(每個一、多周期實現(xiàn)方案(每個CPU周期由一個時周期由一個時 鐘周期組成):鐘周期組成): 指令執(zhí)行的每一步驟將占用一個指令執(zhí)行的每一步驟將占用一個CPU周期周期 一個功能單元可在一條指令的執(zhí)行過程中多一個功能單元可在一條指令的執(zhí)行過程中多次使用(不同次使用(不同CPU周期)周期) 減少所需硬件數(shù)量減少所需硬件數(shù)量 CPU周期劃分:周期劃分: 設一個設一個CPU周期中最多完成下列操作之一:周期中最多完成下列操作之一: 一次訪存一次訪存 一次寄存器訪問(一次寄存器訪問(2次讀次讀/或或1次寫)次寫) 一個一個ALU操作操作200966華東師范大學計算機科學技術(shù)系5.4 5.4

溫馨提示

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

評論

0/150

提交評論