補充課件-中央處理器_第1頁
補充課件-中央處理器_第2頁
補充課件-中央處理器_第3頁
補充課件-中央處理器_第4頁
補充課件-中央處理器_第5頁
已閱讀5頁,還剩243頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

計算機組成原理

教材:白中英,計算機組成原理(第四版),科學出版社計算機組成原理課程設計的要求課程設計:期中測驗之后啟動,第16周完成。選題:課程知識體系內任何知識點實現:建議采用HDL,可以不受此限制,允許自行選擇。成果遞交:模擬實現(包括試驗過程數據)、論文(單獨完成),第16周全部完成。組隊:允許個人或組隊(一般不超過3人),但要明確分工,論文單獨完成評分標準:符合知識體系要求,驗證通過,達到基本要求,及格;選題有一定難度,中等;論文描述較好,良好;有創新,有理論或實用參考意義,優秀課程設計的要求課程設計:期中測驗之后啟動,第16周完成。中央處理器

5.1CPU的功能和組成5.7傳統CPU5.2

指令周期5.8流水CPU5.3時序產生器和控制方式5.9RISCCPU5.4微程序控制器5.10多媒體CPU

5.5微程序設計技術5.11中斷邏輯5.6硬布線控制器5.12流水技術中央處理器 5.1CPU的功能和組成

現代計算機所遵循的仍然是馮.諾依曼的“存儲程序、程序控制”思想

程序告訴計算機:應該逐步執行什么操作;在什么地方找到用來操作的數據,結果存到何處等

中央處理器是控制計算機自動完成取出指令和執行指令任務的部件。它是計算機的核心部件,通常簡稱為CPU(CentralProcessingUnit)5.1CPU的功能和組成現代計算機所遵循的仍然是5.1.1CPU的功能

★指令控制

保證機器按程序規定的順序取出執行★操作控制

CPU產生每條指令所對應的操作信號,并把各種操作信號送往相應的部件,從而控制這些部件按指令的要求進行動作★時間控制

對各種操作的實施時間進行定時★數據加工

對數據進行算術運算和邏輯運算處理5.1.1CPU的功能★指令控制★操作控制★時CPU結構框圖前面(第二章)已對運算器內容做了詳細討論,本章主要介紹剩余的三個部分內容:內部寄存器、控制單元、中斷系統CPU結構框圖前面(第二章)已對運算器內容做了詳細討論,本5.1.2CPU的基本組成

控制器完成對整個計算機系統操作的協調與指揮。

(1)控制機器從內存中取出一條指令,并指出下一條指令在內存中的位置;

(2)對指令進行譯碼,并產生相應的操作控制信號,送往相應的部件,啟動規定的動作;

(3)指揮并控制CPU、內存與輸入/輸出(I/O)設備之間數據流動的方向運算器是數據加工處理部件,所進行的全部操作由控制器發出的控制信號指揮

(1)執行所有的算術運算;

(2)執行所有的邏輯運算,并進行邏輯測試5.1.2CPU的基本組成控制器完成對整個計算機系統操作補充課件-中央處理器5.1.3

CPU中的主要寄存器

數據緩沖寄存器(DR)暫時存放由內存讀出或寫入的指令或數據字指令寄存器(IR)保存當前正在執行的一條指令程序計數器(PC)確定下一條指令的地址地址寄存器(AR)保存當前CPU所訪問的內存單元的地址累加寄存器(AC)最常使用的一個通用寄存器狀態條件寄存器(PSW)保存由算術和邏輯指令的結果建立的各種條件碼5.1.3CPU中的主要寄存器數據緩沖寄存器(DR)5.1.4操作控制器與時序產生器

操作控制器在各寄存器之間建立數據通路(傳送信息的通路)操作控制器的功能:就是根據指令操作碼和時序信號,產生各種操作控制信號,以便正確地建立數據通路,從而完成取指令和執行指令的控制硬布線控制器微程序控制器時序產生器產生并發出計算機所需要的時序控制信號5.1.4操作控制器與時序產生器操作控制器在各寄存器之間5.2

指令周期—讀取指令指令地址送入主存地址寄存器讀主存,讀出內容送入指定的寄存器—分析指令—按指令規定內容執行指令不同指令的操作步驟數和具體操作內容差異很大—檢查有無中斷請求若無,則轉入下一條指令的執行過程形成下一條指令地址

指令的執行過程取指令執行指令5.2

指令周期—讀取指令形成下一條指令地址指令的執行過5.2.1指令周期的基本概念

指令周期

:

CPU從內存取出一條指令并執行完這條指令的時間總和CPU周期

:

又稱機器周期(總線周期),CPU訪問內存所花的時間較長,因此用CPU從內存讀取一條指令字的所需的最短時間來定義

時鐘周期

:

通常稱為節拍脈沖或T周期。一個CPU周期包含若干個時鐘周期T

相互關系:

1個指令周期=若干個CPU周期

1個CPU周期=若干T周期

取指時間+執行指令時間5.2.1指令周期的基本概念指令周期

:

C控制單元CU和中斷系統指令周期的基本概念指令周期定義示意各種指令周期的比較具有間接周期的指令周期控制單元CU和中斷系統指令周期定義示意各種指令周期的比較具有指令周期·CPU周期·

時鐘周期指令周期·CPU周期·時鐘周期表5-1列出了由6條指令組成的一個簡單程序,這6條指令包括RR型指令、RS型指令;既有算術邏輯指令,又有訪內指令,還有程序轉移指令,由此可以進一步了解指令的執行周期表5-1列出了由6條指令組成的一個簡單程序,這6條指令包括RMOV指令的指令周期MOV指令的指令周期1.取指周期1.取指周期

假定表5.1的程序已裝入指存,因而在此階段內,CPU的動作如下:假定表5.1的程序已裝入指存,因而在此階段內,CPU的動2.執行指令階段2.執行指令階段5.2.3

LAD指令的指令周期

一個CPU周期一個CPU周期取指令階段執行指令階段開始取指令PC+1對指令譯碼送操作數地址取下條指令PC+1取出操作數執行加操作一個CPU周期5.2.3LAD指令的指令周期一個CPU周期一個CPU周補充課件-中央處理器LAD指令的執行周期LAD指令的執行周期補充課件-中央處理器補充課件-中央處理器補充課件-中央處理器STO指令的指令周期

一個CPU周期一個CPU周期取指令階段執行指令階段開始取指令PC+1對指令譯碼送操作數地址取下條指令PC+1取出操作數執行加操作一個CPU周期STO指令的指令周期一個CPU周期一個CPU周期取指令階段補充課件-中央處理器補充課件-中央處理器JMP指令的指令周期JMP指令的指令周期JMP指令執行周期JMP指令執行周期5.2.7用方框圖語言表示指令周期5.2.7用方框圖語言表示指令周期補充課件-中央處理器補充課件-中央處理器補充課件-中央處理器5.3

時序產生器和控制方式

用二進制碼表示的指令和數據都放在內存里,那么CPU是怎樣識別出它們是數據還是指令呢?

從時間上來說:取指令事件發生在指令周期的第一個CPU周期中,即發生在“取指令”階段,而取數據事件發生在指令周期的后面幾個CPU周期中,即發生在“執行指令”階段。

從空間上來說:如果取出的代碼是指令,那么一定經DR送往指令寄存器IR,如果取出的代碼是數據,那么一定送往運算器。時間控制對計算機來說是非常重要的!5.3

時序產生器和控制方式用二進制碼表示的5.3.1時序信號的作用和體制

計算機的協調動作需要時間標志,而且需要采用多級時序體制。而時間標志則用時序信號來體現。

硬布線控制器中,時序信號往往采用主狀態周期-節拍電位-節拍脈沖三級體制。主狀態周期(指令周期):包含若干個節拍周期,可以用一個觸發器的狀態持續時間來表示節拍電位(機器周期):表示一個CPU周期的時間,包含若干個節拍脈沖節拍脈沖(時鐘周期):表示較小的時間單位

微程序控制器中,時序信號則一般采用節拍電位-節拍脈沖二級體制。5.3.1時序信號的作用和體制計算機的協調動作需要時節拍脈沖節拍電位1主狀態周期節拍電位2主狀態周期-節拍電位-節拍脈沖節拍脈沖節拍電位1主狀態周期節拍電位2主狀態周期-節拍電位-數據準備好后,以電位的方式送觸發器控制信號來到后,用一個脈沖信號把數據裝入觸發器數據:電位控制信號:脈沖節拍電位-節拍脈沖數據準備好后,以電位的方式送觸發器數據:電位控制信號:脈沖節

IORQMREQRDWET1T2T3T4

IORQ°MREQ°RD°WE°T1°T2°T3°T4°MERQ’IORQ’RD’WR’Φ提供頻率穩定且電平匹配的方波時鐘脈沖信號由石英晶體振蕩器組成產生一組有序的間隔相等或不等的脈沖序列啟動停機5.3.2時序信號產生器

啟停控制邏輯節拍脈沖和讀寫時序譯碼邏輯環形脈沖發生器時鐘脈沖源IORQMREQRDWE時序產生器

(1/4)一、

概念

1、時序部件:計算機的機內時鐘。它用其產生的周期狀態,節拍電位及時標脈沖去對指令周期進行時間劃分,刻度和標定。

2、指令周期:在計算機中從指令的讀取到指令的執行完成,執行一條指令所需要的時間,稱為指令周期。 指令周期通常由若干個CPU周期來表示,CPU周期也稱為機器周期。由于CPU內部的操作速度較快,而CPU訪問一次內存所花的時間較長,通常用存儲周期為基礎來規定CPU周期。時序產生器(1/4)一、概念時序產生器

(2/4)二、3級時序信號1、周期(1)在一個控制階段內均持續起作用的信號;(2)通常用周期狀態寄存器來標志和指明某某周期控制;(3)指令周期可分為取指周期、分析周期、執行周期。2、節拍(1)把一個機器周期分成若干個相等的時間段,每一個時間段對應一個電位信號,稱節拍電位;(2)一般都以能保證ALU進行一次運算操作作為一拍電位的時間寬度。

3、時標工作脈沖(1)

及時改變標志狀態;(2)

時標脈沖的寬度一般為節拍電位寬度的1/N,只要能保證所有的觸發器都能可靠地,穩定地翻轉即可。時序產生器(2/4)二、3級時序信號時序產生器

(3/4)三、3級時序信號的關系1、一臺計算機機內的控制信號一般均由若干個周期狀態,若干個節拍電位及若干個時標脈沖這樣3級控制時序信號定時完成。2、3級控制時序信號的寬度均成正整數倍同步關系。周期狀態之間,節拍電位之間,時標脈沖之間既不容許有重疊交叉,又不容許有空白間隙,應該是能一個接一個地準確連接,一個降落另一個升起而準確切換的同步信號。時序產生器(3/4)三、3級時序信號的關系時序產生器

(4/4)圖6-7三級時序系統時標脈沖節拍周期時序產生器(4/4)圖6-7三級時序系統時標脈沖節拍周期CPU的控制方式

(1/4)控制器的控制方式:形成控制不同微操作序列的時序控制信號的方法。控制方式的分類:同步控制方式異步控制方式同異步聯合控制方式CPU的控制方式(1/4)控制器的控制方式:形成控制不同微CPU的控制方式

(2/4)一、同步控制方式1、含義:又稱為固定時序控制方式或無應答控制方式。任何指令的執行或指令中每個微操作的執行都受事先安排好的時序信號的控制。2、每個周期狀態中產生統一數目的節拍電位及時標工作脈沖。3、以最復雜指令的實現需要為基準。4、優點:設計簡單,操作控制容易實現。缺點:效率低。CPU的控制方式(2/4)一、同步控制方式CPU的控制方式

(3/4)二、異步控制方式

1、

含義:可變時序控制方式或應答控制方式。執行一條指令需要多少節拍,不作統一的規定,而是根據每條指令的具體情況而定,需要多少,控制器就產生多少時標信號。

2、特點:每一條指令執行完畢后都必須向控制時序部件發回一個回答信號,控制器收到回答信號后,才開始下一條指令的執行。

3、優點:指令的運行效率高; 缺點:控制線路比較復雜。

4、異步工作方式一般采用兩條定時控制線來實現。我們把這兩條線稱為“請求”線和“回答”線。當系統中兩個部件A和B進行數據交換時,若A發出“請求”信號,則必須有B的“回答”信號進行應答,這次操作才是有效的,否則無效。CPU的控制方式(3/4)二、異步控制方式CPU的控制方式

(4/4)三、同步,異步聯合控制方式

1、含義:同步控制和異步控制相結合的方式即聯合控制方式,區別對待不同指令。

2、一般的設計思想是,在功能部件內部采用同步式,而在功能部件之間采用異步式,并且在硬件實現允許的情況下,盡可能多地采用異步控制。CPU的控制方式(4/4)三、同步,異步聯合控制方式5.3.3控制方式控制不同操作序列時序信號的方法1.同步控制方式已定的指令在執行時所需的CPU周期(機器周期)數和時鐘周期數都固定不變。例如采用完全統一的機器周期執行各種不同的指令2.異步控制方式

控制器發出某一操作控制信號后,等待執行部件完成操作后發“回答”信號,再開始新的操作3.聯合控制方式同步控制和異步控制相結合的方式5.3.3控制方式控制不同操作序列時序信號的方法1.同CPU周期取指周期CPU周期取源數CPU周期取目標數CPU周期執行周期P0P1P2W0W1完全同步控制方式CPU周期CPU周期CPU周期CPU周期P0P1P2W0W1W0W1…Wi第N條指令結束應答W0W1…Wj第N+1條指令結束應答啟動下一條W0W1…Wk第N+2條指令結束應答異步控制方式啟動下一條i、j、k不一定相等一般采用兩條定時控制線:“請求”線和“回答”線演示W0W1…Wi第N條指令結束應答W0W1…Wj第N+1條指令5.4微程序控制器

微程序控制器同硬布線控制器相比較,具有規整性、靈活性、可維護性等一系列優點它利用軟件方法(微程序設計技術)來設計硬件微程序控制的基本思想就是把操作控制信號編成所謂的“微指令”,存放到一個只讀存儲器里(控制存儲器CM)。當機器運行時,一條又一條地讀出這些微指令,從而產生全機所需要的各種操作控制信號,是相應部件執行所規定的操作5.4.1微程序控制原理

5.4微程序控制器微程序控制器同硬布線控制器相比較,具1.微命令和微操作

處理器內部可以分為:控制部件和執行部件微命令:控制部件向執行部件發出的控制命令微操作:執行部件接受微命令后所進行的操作 (微操作在執行部件中是最基本的操作)微指令:實現一定操作功能的一組微命令微程序:實現一條機器指令功能的微指令序列指令系統=所有指令,指令=微程序微程序=若干微指令,微指令=一組微命令微命令→微操作1.微命令和微操作處理器內部可以分為:控制部件和執行部件53安排微操作的節拍時應注意三點:1.有些微操作的次序是不容改變的,故安排微操作節拍時必須注意微操作的先后順序。2.凡是被控制對象不同的微操作,若能在一個節拍內執行,應盡可能安排在一個節拍內,以節省時間。3.如果有些微操作所占的時間不長,應該將它們安排在一個節拍內完成,并且允許這些微操作有先后次序。

53安排微操作的節拍時應注意三點:1.有些微操作的次序是不容54組合邏輯設計步驟

組合邏輯設計控制單元時,首先根據上述微操作的節拍安排,列出微操作命令時間表,然后寫出每一個微操作命令(控制信號)的邏輯表達式,最后根據邏輯表達式畫出相應的組合邏輯電路圖。54組合邏輯設計步驟組合邏輯設計控制單元時,首先根據上述55微程序設計步驟微程序設計控制單元的主要任務是編寫對應各條機器指令的微程序,具體步驟是首先寫出對應機器指令的全部微節拍安排,然后確定微指令格式,最后編寫出每條微指令的二進制代碼(稱作微指令碼點)。步驟包括:1.寫出對應機器指令的微操作及節拍安排2.確定微指令格式3.編寫微指令碼點55微程序設計步驟微程序設計控制單元的主要任務是編寫對應各條補充課件-中央處理器2.微指令和微程序2.微指令和微程序機器指令與微指令程序機器指令1機器指令2機器指令i機器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序機器指令與微指令程序機器指令1機器指令2機器指令i機器指令程序計數器PC地址寄存器AR緩沖寄存器DR指令寄存器IR微地址寄存器μAR微指令寄存器μIR主存儲器控制存儲器CM微命令地址譯碼器地址譯碼機器指令級微指令級程序計數器PC地址寄存器AR緩沖寄存器DR指令寄存器IR微地微程序設計中形成后繼地址原理圖微程序設計中形成后繼地址原理圖

5.5微程序設計技術1.靜態微程序設計對應于一臺計算機的機器指令只有一組微程序,而且這一組微程序設計好之后,一般無須改變而且也不好改變2.動態微程序設計采用EPROM作為控制存儲器,可以通過改變微指令和微程序來改變機器的指令系統采用動態微程序設計,微指令和微程序可以根據需要加以改變,因而可在一臺機器上仿真其它機器指令系統5.5微程序設計技術1.靜態微程序設計5.6硬布線控制器硬布線控制器把控制部件看作為產生專門固定時序控制信號的邏輯電路(以使用最少元件和取得最高操作速度為設計目標)硬布線控制的優點:速度較快;缺點:不容易修改添加新功能微程序控制的優點:具有規整性、靈活性、可維護性等;缺點:采用存儲程序原理,需要執行多條微指令,速度較慢5.6硬布線控制器硬布線控制器把控制部件看作為產生專門固5.7傳統CPUM6800CPU是一個比較典型的單總線結構的微處理器M6800CPU是一種8位微處理器,采用單一的5V電源。時鐘脈沖采用兩相(φ1,φ2),主頻為1MHz,由外面加入CPU。M6800的CPU主要包括8位的ALU,16位的程序計數器、16位的堆棧指示器和16位的變址寄存器,兩個8位的累加器和一個8位的狀態條件碼寄存器,一個8位的指令寄存器以及指令譯碼與控制部件(即操作控制器)。此外還有一個8位的數據緩沖寄存器和一個16位的地址緩沖寄存器。ALU部件執行算術運算和邏輯操作,它們包括邏輯“與”、邏輯“或”、邏輯“異或”、求補、比較、加法、減法、十進制調整等。在M6800中,主存地址和外設地址是統一編址的,因此,在65536個地址中有一部分是為外圍設備使用的。5.7傳統CPUM6800CPU傳統CPU舉例Intel8088CPUIntel8088是一種通用的準16位微處理器,其內部結構為16位,與外部交換的數據為8位。它可以處理16位數據(具有16位運算指令,包括乘除法指令),也可處理8位數據。它有20條地址線,直接尋址能力達到1M字節。CPU從功能上來說分成總線接口單元BIU和執行單元EU兩大部分。BIU負責與存儲器和外圍設備接口,即8088CPU與存儲器和外圍設備之間的信息傳送,都是由BIU進行的。EU部分負責指令的執行。取指部分與執行指令部分是獨立并行工作的,在一條指令的執行過程中,可取出下一條(或多條)指令,在指令流隊列寄存器中排隊。在一條指令執行完以后就可以立即執行下一條指令,減少了CPU為取指令而等待的時間,提高了系統的運行速度。傳統CPU舉例Intel8088CPU傳統CPU舉例IBM370CPU32位CPUALU部件按功能不同分為如下三個子部件:(1)定點運算,包括整數計算和有效地址的計算;(2)浮點運算;(3)可變長運算,包括十進制算術運算和字符串操作。為了存放地址和數據,使用了兩組獨立的可編址寄存器,16個通用寄存器用來存放操作數和運算結果,且可用作變址寄存器。4個浮點寄存器用于浮點運算。數據寄存器DR、地址寄存器AR、指令寄存器IR是標準化的。Intel80486CPU32位CPU通過采用流水技術,以及微程序控制和硬布線邏輯控制相結合的方式,進一步縮短可變長指令的譯碼時間,達到基本指令可以在一個時鐘周期內完成。傳統CPU舉例IBM370CPU傳統CPU舉例486芯片內部包含一個8KB的數據和指令混合性cache,為頻繁訪問的指令和數據提供快速的內部存儲,從而使系統總線有更多的時間用于其他控制。486芯片內部包含了增強性80387協處理器,稱為浮點運算部件(FPU)。由于FPU功能擴充,且放在CPU內部,使引線縮短,故速度比80387提高了3—5倍。486CPU的內部數據總線寬度為64位,這也是它縮短指令周期的一個原因。而外部數據總線的寬度也可以自動轉換。地址信號線擴充到32位,可以處理4GB(232字節)的物理存儲空間。如果利用虛擬存儲器,其存儲空間達64TB(246字節)。傳統CPU舉例486芯片內部包含一個8KB的數據和指令混合性5.8流水CPU洗衣房的流水作業三個階段:1.水洗(30)2.烘干(40)3.熨燙(20)ABCD6PM789TaskOrderTime304040404020演示5.8流水CPU洗衣房的流水作業ABCD6PM789T5.8.1并行處理技術并行性(Parallelism): 在同一時刻或是同一時間間隔內完成兩種或兩種以上性質相同或不相同的工作同時性(Simultaneity):同一時刻發生的并行性并發性(Concurrency):同一個時間間隔內發生的并行性并行性的等級指令內部并行:微操作之間指令級并行(ILP:InstructionLevelParallel)線程級并行(TLP:ThreadLevelParallel)程序級并行系統級并行:分布式系統、多機系統、機群系統5.8.1并行處理技術并行性(Parallelism):提高并行性的技術途徑時間重疊(Time-interleaving)=時間并行

多個過程在時間上相互錯開,輪流重疊地使用同一套硬件設備的各個部分資源重復(Resource-replication)=空間并行 通過重復設置資源(尤其是硬件資源),提高性能資源共享(Resource-sharing)

使多個任務按一定時間順序輪流使用同一套硬件設備單機系統中并行性的發展→9.1.3指令流水線,部件冗余,分時系統多機系統中并行性的發展→9.1.4多機系統耦合度:松散耦合、緊密耦合提高并行性的技術途徑時間重疊(Time-interleavi5.8.2流水CPU的結構指令流水線

IF(InstructionFetch) 取指令階段ID(InstructionDecode) 指令譯碼階段EX(Execute) 執行運算階段MEM(MemoryAccess) 存儲器訪問階段WB(WriteBack) 寫回結果階段WB5.8.2流水CPU的結構指令流水線WB流水線的時空圖流水線技術:把一個重復的過程分解為若干個子過程,每個子程序可以與其他子過程同時進行描述流水線的工作,最常用的方法是時間-空間圖(時空圖)橫坐標:表示時間,即各個任務在流水線中所經過的時間縱坐標:表示空間,即流水線的各個子過程,也稱為級、段、流水線深度(Stage)流水線的時空圖流水線技術:把一個重復的過程分解為若干個子過程非流水計算機的時空圖每4個機器周期才有一個輸出結果非流水計算機的時空圖每4個機器周期才有一個輸出結果流水計算機的時空圖每個機器周期可以輸出一個結果演示流水計算機的時空圖每個機器周期可以輸出一個結果演示流水線的特點流水線實際上是把一個功能部件分解成多個獨立的子功能部件(一個任務也就分成了幾個子任務,每個子任務由一個子功能部件完成),并依靠多個子功能部件并行工作來縮短所有任務的執行時間流水線有助于提高整個程序(所有任務)的吞吐率,但并沒有減少每個指令(任務)的執行時間流水線各個功能段所需時間應盡量相等。否則,時間長的功能段將成為流水線的“瓶頸”,會造成流水線的“阻塞”(Stall)流水線開始需要“通過時間”(Fill)和最后需要“排空時間”(Drain)。流水線只有處理連續不斷的任務才能發揮其效率流水線的特點流水線實際上是把一個功能部件分解成多個獨立的子功5.8.3流水線中的主要問題流水線中存在一些相關(沖突、冒險Hazard,相關、依賴Dependence,競爭Competition)的情況,它使得下一條指令無法在設計的時鐘周期內執行。這些相關將降低流水線性能主要有三種類型的相關(沖突)結構相關(資源沖突):當指令重疊執行過程中,硬件資源滿足不了指令重疊執行的要求數據相關(數據沖突):在同時執行的多條指令中,一條指令依賴前一條指令的執行結果(數據)卻無法得到控制相關(控制沖突):流水線遇到分支指令或其他改變PC值的指令5.8.3流水線中的主要問題流水線中存在一些相關(沖突、1.資源相關

資源相關是指多條指令進入流水線后,在同一機器時鐘周期內爭用同一個功能部件所發生的沖突

例:假定一條指令流水線由五段組成,且僅有IF過程和MEM過程需要訪問存儲器I1與I4兩條指令在時鐘4爭用存儲器資源的相關沖突1.資源相關資源相關是指多條指令進入流水線后,在同2.數據相關ADDR1,R2,R3 ;

R2+R3→R1SUBR4,R1,R5 ;

R1-R5→R4ANDR6,R1,R7 ;

R1∧R7→R0指令發生數據相關沖突

2.數據相關ADDR1,R2,R3 3.控制相關控制相關沖突由轉移指令(分支指令)引起執行轉移指令時,依據轉移條件的產生結果 可能為順序取下條指令 也可能轉移到新的目標地址取指令 地址不定,流水線需要暫停、發生斷流轉移指令主要有: 無條件轉移指令:跳轉、過程調用和返回 條件分支指令3.控制相關控制相關沖突由轉移指令(分支指令)引起

【例5】流水線中有三類數據相關沖突:寫后讀(RAW)相關;讀后寫(WAR)相關;寫后寫(WAW)相關⑴I1:ADDR1,R2,R3 ;R2+R3→R1

I2:SUBR4,R1,R5 ;R1-R5→R4

⑵I3:STAM(x),R3 ;R3→M(x)

I4:ADDR3,R4,R5 ;R4+R5→R3

⑶I5:MULR3,R1,R2 ;R1×R2→R3

I6:ADDR3,R4,R5 ;R4+R5→R3RAWWARWAW【例5】流水線中有三類數據相關沖突:寫后讀(RAW)相關;指令動態調度策略簡單指令流水線技術的一個主要局限 指令順序發射(in-orderissue)=按序發射

指令順序執行(in-orderexecution)

如果一條指令在流水線中,與之相關的指令及其后面的指令都不能進行處理改進指令流水線,只要指令操作數就緒就執行, 指令亂序執行(out-of-orderexecution)

指令亂序結束(out-of-ordercompletion)MULR0,R2,R4ADDR6,R0,R8SUBR7,R3,R1指令動態調度策略簡單指令流水線技術的一個主要局限MULR多指令流出技術進一步改進指令流水線,實現一個時鐘周期發射(流出issue)多條指令超標量(Superscalar)處理器:每個時鐘周期發射多條指令(1~8)超長指令字(VLIW:VeryLongInstructionWord):通過編譯器調度無關的多條指令(4~16)形成一條長指令,每個時鐘周期發射一條長指令超級流水線(Superpipelining):將每個功能部件進一步流水化,使得一個功能部件在一個時鐘周期中可以處理多條指令(可以簡單地理解為很長的流水線)多指令流出技術進一步改進指令流水線,實現一個時鐘周期發射(流多發射流水線01234567T正常流水線超標量流水線0123456T0123456T超長指令字流水線3個操作01234567T超級流水線多發射流水線01234567T正常流水線超標量流水線012380486的整數指令流水線5級指令流水線,每級1個時鐘周期

PF指令預取(prefetch)

D1指令譯碼1(decodestage1) 對所有操作碼和尋址方式信息進行譯碼

D2指令譯碼2(decodestage2) 將操作碼擴展為ALU的控制信號,存儲器地址計算EX指令執行(execute) 完成ALU操作和Cache存取WB回寫(writeback) 更新在EX步驟得到的寄存器數據和狀態標志80486的整數指令流水線5級指令流水線,每級1個時鐘周期Pentium的超標量流水線類似80486的5級流水線,后3級可以在兩個流水線同時進行指令預取PF和指令譯碼D1步驟可以并行取出、譯碼2條簡單指令,然后分別發向U和V流水線在滿足指令配對的條件下,Pentium可以每個時鐘周期執行完2條指令V流水線U流水線地址生成D2地址生成D2指令預取PF指令譯碼D1執行EX執行EX回寫WB回寫WBPentium的超標量流水線類似80486的5級流水線,后3Pentium的超標量結構轉移指令地址寄存器V流水線ALUU流水線ALU移位器指令譯碼和配對控制單元分支目標緩沖器V流水線存儲地址產生器U流水線存儲地址產生器隊列B隊列A指令Cache指令預取電路分支目標地址產生分支地址Pentium的超標量結構轉移指令地址寄V流水線U流水線移位PentiumIII的動態執行結構取指取數順序發送前端(取指與譯碼單元)讀取指令譯碼指令為微代碼處理指令分支亂序執行核心(分派與執行單元)調度和執行微代碼包含5個執行端口順序退出單元(退出單元)順序退出指令寫入寄存器和存儲器結果L1指令CacheL1數據Cache存數總線接口單元L2Cache系統總線重排序緩沖區ROB(指令池)等待執行的微代碼緩沖區PentiumIII的動態執行結構取指取數順序發送前端亂序5.9RISCCPURISC的三個要素

(1)一個有限的簡單的指令集

(2)CPU配備大量的通用寄存器

(3)強調對指令流水線的優化5.9RISCCPURISC的三個要素5.9.1RISC機器的特點⑴等長指令,典型長度是4個字節(32位)⑵尋址方式少且簡單,一般為2~3種⑶只有取數指令和存數指令訪問存儲器⑷指令數目一般少于100種,指令格式一般少于4種⑸指令功能簡單,控制器多采用硬布線方式⑹指令的執行時間為一個處理時鐘周期⑺整數寄存器的個數不少于32個⑻強調通用寄存器資源的優化使用⑼支持指令流水并強調指令流水的優化使用⑽RlSC技術的編譯程序復雜5.9.1RISC機器的特點⑴等長指令,典型長度是4個RISC與CISC的主要特征對比

比較內容CISCRISC指令系統復雜,龐大簡單,精簡指令數目一般大于200一般小于100指令格式一般大于4一般小于4尋址方式一般大于4一般小于4指令字長不固定等長可訪存指令不加限制只有LOAD/STORE指令各種指令使用頻率相差很大相差不大各種指令執行時間相差很大絕大多數在一個周期內完成優化編譯實現很難較容易程序源代碼長度較短較長控制器實現方式絕大多數為微程序控制主要采用硬布線控制軟件系統開發時間較短較長RISC與CISC的主要特征對比比較內容CISCRISC指5.10多媒體CPU

VendorExtensionYear#InstrRegistersHPMAX-1and294,959,8(int)Int32x64bSunVIS95121(int)FP32x64bIntelMMX9757(int)FP8x64bAMD3DNow!9821(fp)FP8x64bMotorolaAltivec98162(int,fp)32x128b(new)IntelSSE9870(fp)8x128b(new)MIPSMIPS-3D?23(fp)FP32x64bAMDE3DNow!9924(fp)8x128(new)IntelSSE201144(int,fp)8x128(new)IntelSSE30313(int,fp)8x128(new)5.10多媒體CPUVendorExte5.10.1多媒體技術的主要問題媒體(media):傳遞信息的媒介 包括存儲信息的實體與傳遞信息的載體多媒體(multimedia)技術:計算機把各種不同的電子媒質集成起來,統一進行存儲、處理和傳輸多媒體技術:將多媒體信息,經計算機設備獲取、編輯、存儲等處理后,以多媒體形式表現出來的技術多媒體技術解決的主要問題

1.圖像與聲音的壓縮技術

2.適應多媒體技術的軟件技術

3.計算機系統結構方面的技術

5.10.1多媒體技術的主要問題媒體(me計算機體系結構的分類根據指令流和數據流的并行情況,Flynn[1966]提出了對所有計算機進行分類的簡單模型單指令流、單數據流SISD:單處理器系統單指令流、多數據流SIMD: 多媒體指令和向量計算機多指令流、單數據流MISD:尚無商用多指令流、多數據流MIMD: 每個處理器取用自己的指令并對自己的數據進行操作。通常使用現有的微處理器實現SIMDstandsforSingleInstructionMultipleData計算機體系結構的分類根據指令流和數據流的并行情況,FlynnSIMD指令SIMD指令是能夠同時處理多個數據的指令,用于擴展通用處理器對多媒體數據的處理能力許多應用需要多媒體處理能力桌面應用

3D圖形,語音識別,視頻/音頻解碼服務器 視頻/音頻編碼,數字圖書館和媒體挖掘,計算機動畫,3D建模和著色嵌入系統

3D圖形,視頻/音頻解碼編碼,圖像處理、信號處理SIMD指令SIMD指令是能夠同時處理多個數據的指令,用于擴MMX數據類型MMX(multimediaextensions)630緊縮4字PackedQuadword6332310緊縮雙字PackedDoubleword634847323116150緊縮字PackedWord63565548474039323124231615870緊縮字節PackedByteMMX數據類型MMX(multimediaextensiSSE/SSE2/SSE3數據類型SSE(StreamingSIMDExtensions)12764630緊縮雙精度浮點數PackedDouble-precisionFloating-point1279695646332310緊縮單精度浮點數PackedSingle-precisionFloating-pointSSE/SSE2/SSE3數據類型SSE(StreamingSIMD指令-飽和運算a2+b2a2+b2a1+b1a1+b1a0+b0a0+b0SIMD指令-飽和運算a2+b2a2+b2a1+b1a1+bSIMD指令-乘加運算****++SIMD指令-乘加運算****++SIMD指令-比較指令SIMD指令-比較指令SIMD指令-類型轉換SIMD指令-類型轉換SIMD指令-操作模式SSE指令128位操作模式SSE指令32位操作模式SIMD指令-操作模式SSE指令SSE指令1.引起中斷的各種因素人為設置的中斷(訪管指令)程序性事故硬件故障I/O設備外部事件

上述各種中斷因素除志愿中斷是人為的外,大多數是隨機的。通常將能引起中斷的各個因素稱作中斷源。中斷源的類型有兩種,一類屬于不可屏蔽中斷,這類中斷CPU不能禁止響應,如電源掉電;另一類屬于可屏蔽中斷,對于可屏蔽中斷源的請求,CPU可根據中斷源是否被屏蔽來確定是否給予響應,如未屏蔽則能響應;若已屏蔽,CPU不能相應。補充:CPU中斷邏輯1.引起中斷的各種因素上述各種中斷因素除志愿中斷是人為中斷系統需要解決的問題中斷系統需要解決的問題103中斷請求標記和中斷判優邏輯1.中斷請求標記103中斷請求標記和中斷判優邏輯104中斷判優邏輯104中斷判優邏輯(1)硬件排隊集中在CPU的排隊器(1)硬件排隊集中在CPU的排隊器(2)軟件排隊(2)軟件排隊中斷服務程序入口地址的尋找1.硬件向量法來自排隊器的輸出中斷向量地址表中斷服務程序入口地址的尋找1.硬件向量法來自排隊器的輸出中斷2.軟件查詢法

用軟件尋找中斷服務程序入口地址的方法叫軟件查詢法。當查到某一中斷源有中斷請求時,接著安排一條轉移指令,直接指向此中斷源的中斷服務程序入口地址,機器便能自動進入中斷處理。至于各中斷源對應的入口地址,則由程序員(或系統)事先確定。這種方法不涉及硬設備,但查詢時間較長。計算機可具備軟、硬件兩種方法尋找入口地址,方便靈活。2.軟件查詢法中斷響應1.中斷響應的條件:中斷允許觸發器必須為12.中斷響應的時間:當前指令周期結束3.中斷隱指令

CPU相應中斷后,進入中斷周期。在中斷周期,

CPU要自動完成一系列操作,包括:(1)保護程序斷點(2)尋找中斷服務程序入口地址(3)關中斷中斷響應保護現場和恢復現場

保護現場應該包括保護程序斷點和保護CPU內部各寄存器的現場兩個方面。程序斷點的現場由中斷隱指令完成,各寄存器的內容可在終端服務程序中由用戶(或系統)用機器指令編程實現。恢復現場是指在中斷返回前,必須將寄存器的內容恢復到終端處理前的狀態,這部分工作也由中斷服務程序完成。保護現場和恢復現場中斷屏蔽技術1.多重中斷的概念2.實現多重中斷的條件(1)提前設置“開中斷”指令(2)優先級別高的中斷源有權屏蔽優先級別低的中斷源3.屏蔽技術(1)屏蔽觸發器與屏蔽字(2)屏蔽技術可改變優先等級(3)屏蔽技術的其他作用4.多重中斷的斷點保護中斷屏蔽技術多重中斷示意圖假定有A、B、C、D共4個中斷源,優先級別為A-B-C-D排序,在分別出現B、C、D、A中斷請求后的響應次序如下:多重中斷示意圖假定有A、B、C、D共4個中斷源,優先級別為A具有屏蔽功能的排隊器如果排隊器集中設在CPU內,加上屏蔽條件,就可組成具有屏蔽功能的排隊器。顯然,對應于每一個中斷請求觸發器就有一個屏蔽觸發器,將所有屏蔽觸發器組合在一起,,便構成一個屏蔽寄存器,屏蔽寄存器的內容稱為屏蔽字。屏蔽字的與中斷源優先級別是一一對應的。具有屏蔽功能的排隊器如果排隊器集中設在CPU內,加上114

中斷優先級與屏蔽字的關系:表中對應16個中斷源的屏蔽字,每個屏蔽字由左向右排序為1、2、3…共16位。每個屏蔽字對應的中斷源是不同的,如1級中斷源的屏蔽字是16個;2級中斷源的屏蔽字是從第2位開始共15個等。114中斷優先級與屏蔽字的關系:表中對應16個中斷源第5章習題1.在CPU基本模型中,主要有哪些寄存器?2.區別如下兩組概念 ⑴指令周期、CPU周期、時鐘周期 ⑵微命令、微指令、指令3.什么是計算機體系結構中的并行性,它包括哪兩種含義?有哪些提高并行性的基本技術方法?4.什么是指令流水線技術,它有什么特點?主要有哪些問題影響流水線效率?5.SIMD,MMX和SSE各表示什么含義?6.說明CPI和MIPS的含義,給出它們的計算公式。第5章習題1.在CPU基本模型中,主要有哪些寄存器?第5章教學要求-1熟悉CPU的基本模型和主要寄存器的作用理解指令周期、CPU周期(機器周期、總線周期)和時鐘周期(T周期)的概念和區別了解CLA、ADD、STA和JMP指令在CPU基本模型的執行過程理解微程序控制器和硬布線控制器的實現特點,了解微命令、微操作、微指令和微程序的概念熟悉并行性的概念和提高并行性的技術途徑掌握指令流水線的思想,理解流水CPU的時空圖掌握資源相關、數據相關和控制相關的概念第5章教學要求-1熟悉CPU的基本模型和主要寄存器的作用習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考習題與思考定點運算器組成框圖定點運算器組成框圖浮點運算器組成框圖浮點運算器組成框圖計算機組成原理

教材:白中英,計算機組成原理(第四版),科學出版社計算機組成原理課程設計的要求課程設計:期中測驗之后啟動,第16周完成。選題:課程知識體系內任何知識點實現:建議采用HDL,可以不受此限制,允許自行選擇。成果遞交:模擬實現(包括試驗過程數據)、論文(單獨完成),第16周全部完成。組隊:允許個人或組隊(一般不超過3人),但要明確分工,論文單獨完成評分標準:符合知識體系要求,驗證通過,達到基本要求,及格;選題有一定難度,中等;論文描述較好,良好;有創新,有理論或實用參考意義,優秀課程設計的要求課程設計:期中測驗之后啟動,第16周完成。中央處理器

5.1CPU的功能和組成5.7傳統CPU5.2

指令周期5.8流水CPU5.3時序產生器和控制方式5.9RISCCPU5.4微程序控制器5.10多媒體CPU

5.5微程序設計技術5.11中斷邏輯5.6硬布線控制器5.12流水技術中央處理器 5.1CPU的功能和組成

現代計算機所遵循的仍然是馮.諾依曼的“存儲程序、程序控制”思想

程序告訴計算機:應該逐步執行什么操作;在什么地方找到用來操作的數據,結果存到何處等

中央處理器是控制計算機自動完成取出指令和執行指令任務的部件。它是計算機的核心部件,通常簡稱為CPU(CentralProcessingUnit)5.1CPU的功能和組成現代計算機所遵循的仍然是5.1.1CPU的功能

★指令控制

保證機器按程序規定的順序取出執行★操作控制

CPU產生每條指令所對應的操作信號,并把各種操作信號送往相應的部件,從而控制這些部件按指令的要求進行動作★時間控制

對各種操作的實施時間進行定時★數據加工

對數據進行算術運算和邏輯運算處理5.1.1CPU的功能★指令控制★操作控制★時CPU結構框圖前面(第二章)已對運算器內容做了詳細討論,本章主要介紹剩余的三個部分內容:內部寄存器、控制單元、中斷系統CPU結構框圖前面(第二章)已對運算器內容做了詳細討論,本5.1.2CPU的基本組成

控制器完成對整個計算機系統操作的協調與指揮。

(1)控制機器從內存中取出一條指令,并指出下一條指令在內存中的位置;

(2)對指令進行譯碼,并產生相應的操作控制信號,送往相應的部件,啟動規定的動作;

(3)指揮并控制CPU、內存與輸入/輸出(I/O)設備之間數據流動的方向運算器是數據加工處理部件,所進行的全部操作由控制器發出的控制信號指揮

(1)執行所有的算術運算;

(2)執行所有的邏輯運算,并進行邏輯測試5.1.2CPU的基本組成控制器完成對整個計算機系統操作補充課件-中央處理器5.1.3

CPU中的主要寄存器

數據緩沖寄存器(DR)暫時存放由內存讀出或寫入的指令或數據字指令寄存器(IR)保存當前正在執行的一條指令程序計數器(PC)確定下一條指令的地址地址寄存器(AR)保存當前CPU所訪問的內存單元的地址累加寄存器(AC)最常使用的一個通用寄存器狀態條件寄存器(PSW)保存由算術和邏輯指令的結果建立的各種條件碼5.1.3CPU中的主要寄存器數據緩沖寄存器(DR)5.1.4操作控制器與時序產生器

操作控制器在各寄存器之間建立數據通路(傳送信息的通路)操作控制器的功能:就是根據指令操作碼和時序信號,產生各種操作控制信號,以便正確地建立數據通路,從而完成取指令和執行指令的控制硬布線控制器微程序控制器時序產生器產生并發出計算機所需要的時序控制信號5.1.4操作控制器與時序產生器操作控制器在各寄存器之間5.2

指令周期—讀取指令指令地址送入主存地址寄存器讀主存,讀出內容送入指定的寄存器—分析指令—按指令規定內容執行指令不同指令的操作步驟數和具體操作內容差異很大—檢查有無中斷請求若無,則轉入下一條指令的執行過程形成下一條指令地址

指令的執行過程取指令執行指令5.2

指令周期—讀取指令形成下一條指令地址指令的執行過5.2.1指令周期的基本概念

指令周期

:

CPU從內存取出一條指令并執行完這條指令的時間總和CPU周期

:

又稱機器周期(總線周期),CPU訪問內存所花的時間較長,因此用CPU從內存讀取一條指令字的所需的最短時間來定義

時鐘周期

:

通常稱為節拍脈沖或T周期。一個CPU周期包含若干個時鐘周期T

相互關系:

1個指令周期=若干個CPU周期

1個CPU周期=若干T周期

取指時間+執行指令時間5.2.1指令周期的基本概念指令周期

:

C控制單元CU和中斷系統指令周期的基本概念指令周期定義示意各種指令周期的比較具有間接周期的指令周期控制單元CU和中斷系統指令周期定義示意各種指令周期的比較具有指令周期·CPU周期·

時鐘周期指令周期·CPU周期·時鐘周期表5-1列出了由6條指令組成的一個簡單程序,這6條指令包括RR型指令、RS型指令;既有算術邏輯指令,又有訪內指令,還有程序轉移指令,由此可以進一步了解指令的執行周期表5-1列出了由6條指令組成的一個簡單程序,這6條指令包括RMOV指令的指令周期MOV指令的指令周期1.取指周期1.取指周期

假定表5.1的程序已裝入指存,因而在此階段內,CPU的動作如下:假定表5.1的程序已裝入指存,因而在此階段內,CPU的動2.執行指令階段2.執行指令階段5.2.3

LAD指令的指令周期

一個CPU周期一個CPU周期取指令階段執行指令階段開始取指令PC+1對指令譯碼送操作數地址取下條指令PC+1取出操作數執行加操作一個CPU周期5.2.3LAD指令的指令周期一個CPU周期一個CPU周補充課件-中央處理器LAD指令的執行周期LAD指令的執行周期補充課件-中央處理器補充課件-中央處理器補充課件-中央處理器STO指令的指令周期

一個CPU周期一個CPU周期取指令階段執行指令階段開始取指令PC+1對指令譯碼送操作數地址取下條指令PC+1取出操作數執行加操作一個CPU周期STO指令的指令周期一個CPU周期一個CPU周期取指令階段補充課件-中央處理器補充課件-中央處理器JMP指令的指令周期JMP指令的指令周期JMP指令執行周期JMP指令執行周期5.2.7用方框圖語言表示指令周期5.2.7用方框圖語言表示指令周期補充課件-中央處理器補充課件-中央處理器補充課件-中央處理器5.3

時序產生器和控制方式

用二進制碼表示的指令和數據都放在內存里,那么CPU是怎樣識別出它們是數據還是指令呢?

從時間上來說:取指令事件發生在指令周期的第一個CPU周期中,即發生在“取指令”階段,而取數據事件發生在指令周期的后面幾個CPU周期中,即發生在“執行指令”階段。

從空間上來說:如果取出的代碼是指令,那么一定經DR送往指令寄存器IR,如果取出的代碼是數據,那么一定送往運算器。時間控制對計算機來說是非常重要的!5.3

時序產生器和控制方式用二進制碼表示的5.3.1時序信號的作用和體制

計算機的協調動作需要時間標志,而且需要采用多級時序體制。而時間標志則用時序信號來體現。

硬布線控制器中,時序信號往往采用主狀態周期-節拍電位-節拍脈沖三級體制。主狀態周期(指令周期):包含若干個節拍周期,可以用一個觸發器的狀態持續時間來表示節拍電位(機器周期):表示一個CPU周期的時間,包含若干個節拍脈沖節拍脈沖(時鐘周期):表示較小的時間單位

微程序控制器中,時序信號則一般采用節拍電位-節拍脈沖二級體制。5.3.1時序信號的作用和體制計算機的協調動作需要時節拍脈沖節拍電位1主狀態周期節拍電位2主狀態周期-節拍電位-節拍脈沖節拍脈沖節拍電位1主狀態周期節拍電位2主狀態周期-節拍電位-數據準備好后,以電位的方式送觸發器控制信號來到后,用一個脈沖信號把數據裝入觸發器數據:電位控制信號:脈沖節拍電位-節拍脈沖數據準備好后,以電位的方式送觸發器數據:電位控制信號:脈沖節

IORQMREQRDWET1T2T3T4

IORQ°MREQ°RD°WE°T1°T2°T3°T4°MERQ’IORQ’RD’WR’Φ提供頻率穩定且電平匹配的方波時鐘脈沖信號由石英晶體振蕩器組成產生一組有序的間隔相等或不等的脈沖序列啟動停機5.3.2時序信號產生器

啟停控制邏輯節拍脈沖和讀寫時序譯碼邏輯環形脈沖發生器時鐘脈沖源IORQMREQRDWE時序產生器

(1/4)一、

概念

1、時序部件:計算機的機內時鐘。它用其產生的周期狀態,節拍電位及時標脈沖去對指令周期進行時間劃分,刻度和標定。

2、指令周期:在計算機中從指令的讀取到指令的執行完成,執行一條指令所需要的時間,稱為指令周期。 指令周期通常由若干個CPU周期來表示,CPU周期也稱為機器周期。由于CPU內部的操作速度較快,而CPU訪問一次內存所花的時間較長,通常用存儲周期為基礎來規定CPU周期。時序產生器(1/4)一、概念時序產生器

(2/4)二、3級時序信號1、周期(1)在一個控制階段內均持續起作用的信號;(2)通常用周期狀態寄存器來標志和指明某某周期控制;(3)指令周期可分為取指周期、分析周期、執行周期。2、節拍(1)把一個機器周期分成若干個相等的時間段,每一個時間段對應一個電位信號,稱節拍電位;(2)一般都以能保證ALU進行一次運算操作作為一拍電位的時間寬度。

3、時標工作脈沖(1)

及時改變標志狀態;(2)

時標脈沖的寬度一般為節拍電位寬度的1/N,只要能保證所有的觸發器都能可靠地,穩定地翻轉即可。時序產生器(2/4)二、3級時序信號時序產生器

(3/4)三、3級時序信號的關系1、一臺計算機機內的控制信號一般均由若干個周期狀態,若干個節拍電位及若干個時標脈沖這樣3級控制時序信號定時完成。2、3級控制時序信號的寬度均成正整數倍同步關系。周期狀態之間,節拍電位之間,時標脈沖之間既不容許有重疊交叉,又不容許有空白間隙,應該是能一個接一個地準確連接,一個降落另一個升起而準確切換的同步信號。時序產生器(3/4)三、3級時序信號的關系時序產生器

(4/4)圖6-7三級時序系統時標脈沖節拍周期時序產生器(4/4)圖6-7三級時序系統時標脈沖節拍周期CPU的控制方式

(1/4)控制器的控制方式:形成控制不同微操作序列的時序控制信號的方法。控制方式的分類:同步控制方式異步控制方式同異步聯合控制方式CPU的控制方式(1/4)控制器的控制方式:形成控制不同微CPU的控制方式

(2/4)一、同步控制方式1、含義:又稱為固定時序控制方式或無應答控制方式。任何指令的執行或指令中每個微操作的執行都受事先安排好的時序信號的控制。2、每個周期狀態中產生統一數目的節拍電位及時標工作脈沖。3、以最復雜指令的實現需要為基準。4、優點:設計簡單,操作控制容易實現。缺點:效率低。CPU的控制方式(2/4)一、同步控制方式CPU的控制方式

(3/4)二、異步控制方式

1、

含義:可變時序控制方式或應答控制方式。執行一條指令需要多少節拍,不作統一的規定,而是根據每條指令的具體情況而定,需要多少,控制器就產生多少時標信號。

2、特點:每一條指令執行完畢后都必須向控制時序部件發回一個回答信號,控制器收到回答信號后,才開始下一條指令的執行。

3、優點:指令的運行效率高; 缺點:控制線路比較復雜。

4、異步工作方式一般采用兩條定時控制線來實現。我們把這兩條線稱為“請求”線和“回答”線。當系統中兩個部件A和B進行數據交換時,若A發出“請求”信號,則必須有B的“回答”信號進行應答,這次操作才是有效的,否則無效。CPU的控制方式(3/4)二、異步控制方式CPU的控制方式

(4/4)三、同步,異步聯合控制方式

1、含義:同步控制和異步控制相結合的方式即聯合控制方式,區別對待不同指令。

2、一般的設計思想是,在功能部件內部采用同步式,而在功能部件之間采用異步式,并且在硬件實現允許的情況下,盡可能多地采用異步控制。CPU的控制方式(4/4)三、同步,異步聯合控制方式5.3.3控制方式控制不同操作序列時序信號的方法1.同步控制方式已定的指令在執行時所需的CPU周期(機器周期)數和時鐘周期數都固定不變。例如采用完全統一的機器周期執行各種不同的指令2.異步控制方式

控制器發出某一操作控制信號后,等待執行部件完成操作后發“回答”信號,再開始新的操作3.聯合控制方式同步控制和異步控制相結合的方式5.3.3控制方式控制不同操作序列時序信號的方法1.同CPU周期取指周期CPU周期取源數CPU周期取目標數CPU周期執行周期P0P1P2W0W1完全同步控制方式CPU周期CPU周期CPU周期CPU周期P0P1P2W0W1W0W1…Wi第N條指令結束應答W0W1…Wj第N+1條指令結束應答啟動下一條W0W1…Wk第N+2條指令結束應答異步控制方式啟動下一條i、j、k不一定相等一般采用兩條定時控制線:“請求”線和“回答”線演示W0W1…Wi第N條指令結束應答W0W1…Wj第N+1條指令5.4微程序控制器

微程序控制器同硬布線控制器相比較,具有規整性、靈活性、可維護性等一系列優點它利用軟件方法(微程序設計技術)來設計硬件微程序控制的基本思想就是把操作控制信號編成所謂的“微指令”,存放到一個只讀存儲器里(控制存儲器CM)。當機器運行時,一條又一條地讀出這些微指令,從而產生全機所需要的各種操作控制信號,是相應部件執行所規定的操作5.4.1微程序控制原理

5.4微程序控制器微程序控制器同硬布線控制器相比較,具1.微命令和微操作

處理器內部可以分為:控制部件和執行部件微命令:控制部件向執行部件發出的控制命令微操作:執行部件接受微命令后所進行的操作 (微操作在執行部件中是最基本的操作)微指令:實現一定操作功能的一組微命令微程序:實現一條機器指令功能的微指令序列指令系統=所有指令,指令=微程序微程序=若干微指令,微指令=一組微命令微命令→微操作1.微命令和微操作處理器內部可以分為:控制部件和執行部件177安排微操作的節拍時應注意三點:1.有些微操作的次序是不容改變的,故安排微操作節拍時必須注意微操作的先后順序。2.凡是被控制對象不同的微操作,若能在一個節拍內執行,應盡可能安排在一個節拍內,以節省時間。3.如果有些微操作所占的時間不長,應該將它們安排在一個節拍內完成,并且允許這些微操作有先后次序。

53安排微操作的節拍時應注意三點:1.有些微操作的次序是不容178組合邏輯設計步驟

組合邏輯設計控制單元時,首先根據上述微操作的節拍安排,列出微操作命令時間表,然后寫出每一個微操作命令(控制信號)的邏輯表達式,最后根據邏輯表達式畫出相應的組合邏輯電路圖。54組合邏輯設計步驟組合邏輯設計控制單元時,首先根據上述179微程序設計步驟微程序設計控制單元的主要任務是編寫對應各條機器指令的微程序,具體步驟是首先寫出對應機器指令的全部微節拍安排,然后確定微指令格式,最后編寫出每條微指令的二進制代碼(稱作微指令碼點)。步驟包括:1.寫出對應機器指令的微操作及節拍安排2.確定微指令格式3.編寫微指令碼點55微程序設計步驟微程序設計控制單元的主要任務是編寫對應各條補充課件-中央處理器2.微指令和微程序2.微指令和微程序機器指令與微指令程序機器指令1機器指令2機器指令i機器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序機器指令與微指令程序機器指令1機器指令2機器指令i機器指令程序計數器PC地址寄存器AR緩沖寄存器DR指令寄存器IR微地址寄存器μAR微指令寄存器μIR主存儲器控制存儲器CM微命令地址譯碼器地址譯碼機器指令級微指令級程序計數器PC地址寄存器AR緩沖寄存器DR指令寄存器IR微地微程序設計中形成后繼地址原理圖微程序設計中形成后繼地址原理圖

5.5微程序設計技術1.靜態微程序設計對應于一臺計算機的機器指令只有一組微程序,而且這一組微程序設計好之后,一般無須改變而且也不好改變2.動態微程序設計采用EPROM作為控制存儲器,可以通過改變微指令和微程序來改變機器的指令系統采用動態微程序設計,微指令和微程序可以根據需要加以改變,因而可在一臺機器上仿真其它機器指令系統5.5微程序設計技術1.靜態微程序設計5.6硬布線控制器硬布線控制器把控制部件看作為產生專門固定時序控制信號的邏輯電路(以使用最少元件和取得最高操作速度為設計目標)硬布線控制的優點:速度較快;缺點:不容易修改添加新功能微程序控制的優點:具有規整性、靈活性、可維護性等;缺點:采用存儲程序原理,需要執行多條微指令,速度較慢5.6硬布線控制器硬布線控制器把控制部件看作為產生專門固5.7傳統CPUM6800CPU是一個比較典型的單總線結構的微處理器M6800CPU是一種8位微處理器,采用單一的5V電源。時鐘脈沖采用兩相(φ1,φ2),主頻為1MHz,由外面加入CPU。M6800的CPU主要包括8位的ALU,16位的程序計數器、16位的堆棧指示器和16位的變址寄存器,兩個8位的累加器和一個

溫馨提示

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

評論

0/150

提交評論