




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1第五章 中央處理器返回2第五章 中央處理器5.1CPU功能和組成5.2指令周期5.3時序產(chǎn)生器和控制方式5.4微程序控制器5.5硬連線控制器5.6流水CPU5.7RISC CPU35.1 CPU的功能和組成的功能和組成5.1.1 CPU的功能5.1.2 CPU的基本組成5.1.3 CPU中的主要寄存器5.1.4 操作控制器與時序產(chǎn)生器4l什么是CPU? 所謂中央處理器是控制計算機來自動完成取出指令和執(zhí)行指令任務(wù)的部件。它是計算機的核心部件,通常簡稱為CPU。 55.1 CPU的功能和組成的功能和組成1、CPU的功能l指令控制(程序的順序控制)就是保證機器按規(guī)定的順 序執(zhí)行程序l操作控制(一條
2、指令有若干操作信號實現(xiàn))CPU管理并產(chǎn)生由內(nèi)存取出的每條指令的操作信號,并把各種操作信號送往相應(yīng)的部件,從而控制這些部件按指令的要求進行動作執(zhí)行指令取指令操作控制、時間控制65.1 CPU的功能和組成的功能和組成l時間控制(指令各個操作實施時間的定時)對各種操作實施時間上的控制,稱為時間控制。l數(shù)據(jù)加工(算術(shù)運算和邏輯運算)就是對數(shù)據(jù)進行算術(shù)運算和邏輯運算處理。完成數(shù)據(jù)的加工處理,這是CPU的根本的任務(wù)。75.1.2 CPU的基本組成的基本組成CAIl控制器 由程序計數(shù)器、指令寄存器、指令譯碼器、時序產(chǎn)生器和操作控制器組成,它是發(fā)布命令的“決策機構(gòu)”,即完成協(xié)調(diào)和指揮整個計算機系統(tǒng)的操作??刂?/p>
3、器的主要功能有:1.從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的位置。2.對指令進行譯碼或測試,并產(chǎn)生相應(yīng)的控制信號。3.指揮并控制CPU,內(nèi)存和I/O之間的數(shù)據(jù)流動的方向。5.1.2 CPU的基本組成的基本組成中央處理器CPU = 運算器 + cache + 控制器 l運算器 由算術(shù)邏輯單位(ALU)、累加寄存器、數(shù)據(jù)緩沖寄存器和狀態(tài)條件寄存器組成,它是 數(shù)據(jù)加工處理部件。相對控制器而言,運算器接受控制器的命令而進行動作,即運算器所進行的全部操作都是由控制器發(fā)出的控制信號來指揮的,所以它是執(zhí)行部件。運算器的主要功能:1.執(zhí)行所有的算術(shù)運算。2.執(zhí)行所有的邏輯運算。CPU的功能和組成的功能
4、和組成105.1.2 CPU的基本組成的基本組成(1)中央處理器CPU = 運算器 + cache + 控制器 (2)運算器 lALU l通用寄存器:R0R3 l暫存器:DR l狀態(tài)字寄存器:PSW (3)cache l指令cache:PC,IBUS l數(shù)據(jù)cache:AR,DBUS115.1.2 CPU的基本組成的基本組成(3)控制器 控制器組成控制器組成:程序計數(shù)器、指令寄存器、數(shù)據(jù)緩沖器、地址寄存器、通用寄存器、狀態(tài)寄存器、時序發(fā)生器、指令譯碼器、總線(數(shù)據(jù)通路)l程序計數(shù)器PC(Programming Counter)用來存放正在執(zhí)行的指令的地址或接著將要執(zhí)行的下一條指令的地址。順序執(zhí)
5、行時,每執(zhí)行一條指令,PC的值應(yīng)加1要改變程序執(zhí)行順序的情況時,一般由轉(zhuǎn)移類指令將轉(zhuǎn)移目標(biāo)地址送往PC ,可實現(xiàn)程序的轉(zhuǎn)移。l指令寄存器IR(Instruction Register) 指令寄存器用來存放從存儲器中取出的待執(zhí)行的指令。在執(zhí)行該指令的過程中,指令寄存器的內(nèi)容不允許發(fā)生變化,以保證實現(xiàn)指令的全部功能。125.1.3 CPU中的主要寄存器中的主要寄存器l數(shù)據(jù)緩沖寄存器(DR)l中轉(zhuǎn)站l補償速度差別l指令寄存器(IR)l程序計數(shù)器(PC)l數(shù)據(jù)地址寄存器(AR)l通用寄存器(R0R3)l狀態(tài)字寄存器(PSW)AC內(nèi)存或I/O指令數(shù)據(jù)DR指令數(shù)據(jù)135.1.4 操作控制器和時序產(chǎn)生器操作
6、控制器和時序產(chǎn)生器(1)數(shù)據(jù)通路 (2)操作控制器:為數(shù)據(jù)通路的建立提供各種操作信號。根據(jù)設(shè)計方法不同,可分為時序邏輯型和存儲邏輯型:l硬布線控制器l微程序控制器(3)時序產(chǎn)生器:提供定時和時序信號其他功能部件:中斷系統(tǒng)、總線接口等145.2指令周期指令周期5.2.1 指令周期的基本概念指令周期的基本概念5.2.2 MOV指令的指令周期指令的指令周期5.2.3 LAD指令的指令周期指令的指令周期5.2.4 ADD指令的指令周期指令的指令周期5.2.5 STO指令的指令周期指令的指令周期5.2.6 JMP指令的指令周期指令的指令周期5.2.7 用方框圖語言表示指令周期用方框圖語言表示指令周期15
7、5.2.1 指令周期的基本概念指令周期的基本概念CAI165.2.1 指令周期的基本概念指令周期的基本概念l概念l指令周期:指取指令、分析指令到執(zhí)行完該指令所需的全部時間。l各種指令的指令周期相同嗎?為什么?lCPU周期通常又稱時鐘周期l通常把一條指令周期劃分為若干個機器周期,每個機器周期完成一個基本操作。l主存的工作周期(存取周期)為基礎(chǔ)來規(guī)定CPU周期,比如,可以用CPU讀取一個指令字的最短時間來規(guī)定CPU周期l不同的指令,可能包含不同數(shù)目的CPU周期。l一個CPU周期中,包含若干個節(jié)拍脈沖(T周期)。l單周期、多周期的概念175.2.1 指令周期的基本概念指令周期的基本概念l時鐘周期l在
8、一個CPU周期內(nèi),要完成若干個微操作。這些微操作有的可以同時執(zhí)行,有的需要按先后次序串行執(zhí)行。因而需要把一個CPU周期分為若干個相等的時間段,每一個時間段稱為一個節(jié)拍脈沖或T周期。l時鐘周期通常定義為機器主頻的倒數(shù)。時鐘周期不等于T周期。185.2.1 指令周期的基本概念指令周期的基本概念CAI195.2.2MOV指令的指令周期指令的指令周期l取指周期l執(zhí)行周期CAI205.2.2MOV指令的指令周期指令的指令周期-取指取指 程序計數(shù)器程序計數(shù)器PC中裝入第一條指令地址中裝入第一條指令地址101(八進制);(八進制); PC的內(nèi)容被放到指令地址總線的內(nèi)容被放到指令地址總線ABUS(I)上,對指
9、存進行譯碼,并啟動讀命令;)上,對指存進行譯碼,并啟動讀命令; 從從101號地址讀出的號地址讀出的MOV指令通過指令總線指令通過指令總線IBUS裝入指令寄存器裝入指令寄存器IR; 程序計數(shù)器內(nèi)容加程序計數(shù)器內(nèi)容加1,變成,變成102,為取下一條指令做好準(zhǔn)備;,為取下一條指令做好準(zhǔn)備; 指令寄存器中的操作碼(指令寄存器中的操作碼(OP)被譯碼;)被譯碼; CPU識別出是識別出是MOV指令,至此,取指周期即告結(jié)束。指令,至此,取指周期即告結(jié)束。WR/RDCAI215.2.2MOV指令的指令周期指令的指令周期-執(zhí)行執(zhí)行 操作控制器(操作控制器(OC)送出控制信號到通用寄存器,選擇)送出控制信號到通用
10、寄存器,選擇R1(10)作源寄存器,)作源寄存器,選擇選擇R0作目標(biāo)寄存器;作目標(biāo)寄存器; OC送出控制信號到送出控制信號到ALU,指定,指定ALU做傳送操作;做傳送操作; OC送出控制信號,打開送出控制信號,打開ALU輸出三態(tài)門,將輸出三態(tài)門,將ALU輸出送到數(shù)據(jù)總線輸出送到數(shù)據(jù)總線DBUS上。上。注意,任何時候注意,任何時候DBUS上只能有一個數(shù)據(jù)。上只能有一個數(shù)據(jù)。 OC送出控制信號,將送出控制信號,將DBUS上的數(shù)據(jù)打入到數(shù)據(jù)緩沖寄存器上的數(shù)據(jù)打入到數(shù)據(jù)緩沖寄存器DR(10);); OC送出控制信號,將送出控制信號,將DR中的數(shù)據(jù)中的數(shù)據(jù)10打入到目標(biāo)寄存器打入到目標(biāo)寄存器R0,R0的
11、內(nèi)容由的內(nèi)容由00變?yōu)樽優(yōu)?0。至此,。至此,MOV指令執(zhí)行結(jié)束。指令執(zhí)行結(jié)束。CAI5.2.2 MOV指令的指令周期指令的指令周期執(zhí)行執(zhí)行225.2.3LAD指令的指令周期指令的指令周期l取指周期l執(zhí)行周期235.2.3LAD指令的指令周期指令的指令周期CAI245.2.4 ADD指令的指令周期指令的指令周期第1個CPU周期取ADD指令(指令cache) 第2個CPU周期執(zhí)行加法運算(運算器)255.2.4ADD指令的指令周期指令的指令周期CAI265.2.5STO指令的指令周期指令的指令周期275.2.5STO指令的指令周期指令的指令周期CAI285.2.6JMP指令的指令周期指令的指令周
12、期295.2.6JMP指令的指令周期指令的指令周期CAI305.2.7用方框圖語言表示的指令周期用方框圖語言表示的指令周期l引入目的主要是為了教學(xué)目的(控制器設(shè)計)l方法:l指令系統(tǒng)設(shè)計(模型機的五指令系統(tǒng))l方框按CPU周期l方框內(nèi)內(nèi)容數(shù)據(jù)通路操作或控制操作l菱形符號判別或測試l公操作l前邊所講述的5種操作的框圖描述315.2.7用方框圖語言表示指令周期用方框圖語言表示指令周期取指執(zhí)行CAI325.2.7用方框圖語言表示指令周期用方框圖語言表示指令周期例例1 雙總線結(jié)構(gòu)機器的數(shù)據(jù)通路圖雙總線結(jié)構(gòu)機器的數(shù)據(jù)通路圖微操作信號微操作信號CAI33注意微操作控制信號(右邊)注意微操作控制信號(右邊)
13、ALU0ALU0CAI345.3 時序產(chǎn)生器和控制方式時序產(chǎn)生器和控制方式5.3.1時序產(chǎn)生器作用和體制5.3.2時序信號產(chǎn)生器5.3.3控制方式355.3.1、時序產(chǎn)生器作用和體制、時序產(chǎn)生器作用和體制1.作用:lCPU中的控制器用它指揮機器的工作lCPU可以用時序信號/周期信息來辨認從內(nèi)存中取出的是指令(取指)還是數(shù)據(jù)(執(zhí)行)l一個CPU周期中時鐘脈沖對CPU的動作有嚴(yán)格的約束l操作控制器發(fā)出的各種信號是時間(時序信號)和空間(部件操作信號)的函數(shù)。365.3.1、時序產(chǎn)生器時序產(chǎn)生器作用和體制作用和體制2.體制l組成計算機硬件的器件特性決定了時序信號的基本體制是電位脈沖制(以觸發(fā)器為例)
14、lD為電位輸入端,CP(Clock Pulse)為脈沖輸入端lR,S為電位輸入端l特性方程如下D=0時,CP上升沿到來時,D觸發(fā)器狀態(tài)置0D=1時,CP上升沿到來時,D觸發(fā)器狀態(tài)置1l硬布線控制器:主狀態(tài)周期節(jié)拍 電位節(jié)拍脈沖三級體制微程序控制器:節(jié)拍電位節(jié)拍脈沖二級體制375.3.2、時序信號產(chǎn)生器、時序信號產(chǎn)生器1.功能:產(chǎn)生時序信號l各型計算機產(chǎn)生時序電路不相同l大、中型計算機的時序電路復(fù)雜,微型計算機的時序電路簡單2.構(gòu)成:l時鐘源l環(huán)形脈沖發(fā)生器l節(jié)拍脈沖和讀寫時序譯碼邏輯l啟??刂七壿婥AI385.3.2 時序信號產(chǎn)生器時序信號產(chǎn)生器CAI39圖圖5.18 節(jié)拍電位節(jié)拍電位與節(jié)拍脈
15、沖時序與節(jié)拍脈沖時序關(guān)系關(guān)系CAI405.3.2 時序信號產(chǎn)生器啟停時序信號產(chǎn)生器啟停 控制邏輯控制邏輯啟停控制邏輯啟??刂七壿媶?、停機是隨機的,對讀/寫時序信號也需要由啟停邏輯加以控制。當(dāng)運行觸發(fā)器為“1”時,打開時序電路。當(dāng)計算機啟動時,一定要從第1個節(jié)拍脈沖前沿開始工作。當(dāng)運行觸發(fā)器“0”時,關(guān)閉時序產(chǎn)生器。停機時一定要在第4個節(jié)拍脈沖結(jié)束后關(guān)閉時序產(chǎn)生器。CAI415.3.3 控制方式控制方式l機器指令所包含的CPU周期數(shù)反映了指令的復(fù)雜程度,不同CPU周期的操作信號的數(shù)目和出現(xiàn)的先后次序也不相同。l控制方式:控制不同操作序列時序信號的方法。l分為以下幾種:l同步控制方式l異步控制方
16、式l聯(lián)合控制方式425.3.3 控制方式控制方式l同步控制方式(指令的機器周期和時鐘周期數(shù)不變)l完全統(tǒng)一的機器周期執(zhí)行各種不同的指令l采用不定長機器周期l中央控制于局部控制的結(jié)合l異步控制方式l每條指令需要多長時間就占多長時間l聯(lián)合控制方式l大部分指令在固定的周期內(nèi)完成,少數(shù)難以確定的操作采用異步方式l機器周期的節(jié)拍脈沖固定,但是各指令的機器周期數(shù)不固定(微程序控制器采用)435.4 微程序控制器微程序控制器5.4.1 微程序控制原理微程序控制原理5.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)445.4 微程序控制器微程序控制器 基本思想:仿照解題的方法,把操作控制信號編制成微指令,存放到控制存儲
17、器里,運行時,從控存中取出微指令,產(chǎn)生指令運行所需的操作控制信號。從上述可以看出,微程序設(shè)計技術(shù)是用軟件方法來設(shè)計硬件的技術(shù)。455.4.1 微程序控制原理微程序控制原理1、微命令和微操作2、微指令和微程序3、微程序控制器原理框圖4、微程序舉例5、CPU周期與微指令周期的關(guān)系6、機器指令與微指令的關(guān)系465.4.1微程序控制原理 1、微命令和微操作、微命令和微操作1.微命令:控制部件向執(zhí)行部件發(fā)出的各種控制命令叫作微命令,它是構(gòu)成控制序列的最小單位。l例如:打開或關(guān)閉某個控制門的電位信號、某個寄存器的打入脈沖等。l微命令是控制計算機各部件完成某個基本微操作的命令。2.微操作:是微命令的操作過程
18、。l微命令和微操作是一一對應(yīng)的。l微命令是微操作的控制信號,微操作是微命令的操作過程。l微操作是執(zhí)行部件中最基本的操作。475.4.1微程序控制原理1、微命令和微操作、微命令和微操作 由于數(shù)據(jù)通路的結(jié)構(gòu)關(guān)系,微操作可分為相容的和互斥的兩種:1.互斥的微操作,是指不能同時或不能在同一個節(jié)拍內(nèi)并行執(zhí)行的微操作??梢跃幋a2.相容的微操作,是指能夠同時或在同一個節(jié)拍內(nèi)并行執(zhí)行的微操作。必須各占一位l舉一個例子看一下:見下圖48CAI495.4.1微程序控制原理2、微指令和微程序、微指令和微程序微指令:把在同一CPU周期內(nèi)并行執(zhí)行的微操作控制信息,存儲在控制存儲器里,稱為一條微指令(Microinstr
19、uction)。l它是微命令的組合,微指令存儲在控制器中的控制存儲器中l(wèi)一條微指令通常至少包含兩大部分信息:l操作控制字段,又稱微操作碼字段,用以產(chǎn)生某一步操作所需的各個微操作控制信號。某位為1,表明發(fā)微指令微指令發(fā)出的控制信號都是節(jié)拍電位信號,持續(xù)時間為一個CPU周期微命令信號還要引入時間控制l順序控制字段,又稱微地址碼字段,用以控制產(chǎn)生下一條要執(zhí)行的微指令地址。505.4.1微程序控制原理2、微指令和微程序、微指令和微程序微程序l一系列微指令的有序集合就是微程序。l一段微程序?qū)?yīng)一條機器指令。l微地址 :存放微指令的控制存儲器的單元地址l下面我們舉一個十進制加法指令為實例。515.4.1微
20、程序控制原理2、微指令和微程序、微指令和微程序l微指令基本格式CAI525.4.1微程序控制原理l控制存儲器(CM)。l這是微程序控制器的核心部件,用來存放微程序。其性能(包括容量、速度、可靠性等)與計算機的性能密切相關(guān)。3、微程序控制器原理框圖CAI535.4.1微程序控制原理l微指令寄存器(IR)l用來存放從CM取出的正在執(zhí)行的微指令,它的位數(shù)同微指令字長相等。l微地址形成部件l用來產(chǎn)生初始微地址和后繼微地址,以保證微指令的連續(xù)執(zhí)行。l微地址寄存器(MAR) l它接受微地址形成部件送來的微地址,為下一步從CM中讀取微指令作準(zhǔn)備。545.4.1微程序控制原理4、微程序舉例l以十進制加法指令流
21、程 數(shù)據(jù)通路圖 操作流程圖CAI555.4.1微程序控制原理4、微程序舉例l四條微指令如下56575.4.1微程序控制原理l微程序控制器的工作過程(1)執(zhí)行取指令的公共操作。取指令的公共操作通常由一段取指微程序來完成,在機器開始運行時,自動將取指微程序的入口微地址送MAR,并從CM中讀出相應(yīng)的微指令送入IR。微指令的操作控制字段產(chǎn)生有關(guān)的微命令,用來控制實現(xiàn)取機器指令的公共操作。取指微程序的入口地址一般為CM的0號單元,當(dāng)取指微程序執(zhí)行完后,從主存中取出的機器指令就已存人指令寄存器IR中了。(2)由機器指令的操作碼字段通過微地址形成部件產(chǎn)生出該機器指令所對應(yīng)的微程序的入口地址,并送入MA(3)
22、從CM中逐條取出對應(yīng)的微指令并執(zhí)行之,每條微指令都能自動產(chǎn)生下一條微指令的地址。585.4.1微程序控制原理(4)一條機器指令對應(yīng)的微程序的最后一條微指令執(zhí)行完畢后,其下一條微指令地址又回到取指微程序的人口地址,從而繼續(xù)第(1)步,以完成取下條機器指令的公共操作。l以上是一條機器指令的執(zhí)行過程,如此周而復(fù)始,直到整個程序的所有機器指令執(zhí)行完畢。595.4.1微程序控制原理5、CPU周期和微指令周期的關(guān)系CAI606、機器指令與、機器指令與微指令的關(guān)系微指令的關(guān)系狀態(tài)信息CAI615.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)設(shè)計微指令應(yīng)當(dāng)追求的目標(biāo)l有利于縮短微指令的長度l有利于縮小CM的容量l有利
23、于提高微程序的執(zhí)行速度l有利于對微指令的修改l有利于提高微程序設(shè)計的靈活性625.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)1、微命令的編碼方法編碼有三種方法:直接表示法編碼有三種方法:直接表示法/編碼表示法編碼表示法/混合表示法混合表示法l直接表示法:操作控制字段中的各位分別可以直接控制計算機,不需要進行譯碼。63編碼表示法:將操作控制字段分為若干個小段,每段內(nèi)采用最短編碼法,段與段之間采用直接控制法。5.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)編碼表示法特點:可以避免互斥,使指令字大大縮短,但增加了譯碼電路,使微程序的執(zhí)行速度減慢645.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)混合表示法:將前兩種結(jié)合在
24、一起,兼顧兩者特點。一個字段的某些編碼不能獨立地定義某些微命令,而需要與其他字段的編碼來聯(lián)合定義,如例2:F1與RW655.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)2、微地址的形成方法l入口地址:每條機器指令對應(yīng)一段微程序,當(dāng)公用的取指微程序從主存中取出機器指令之后,由機器指令的操作碼字段指出各段微程序的入口地址,這是一種多分支(或多路轉(zhuǎn)移)的情況。l機器指令的操作碼轉(zhuǎn)換成初始微地址的方式主要有兩種。計數(shù)器的方式多路轉(zhuǎn)移的方式665.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)2、微地址的形成方法(1)計數(shù)器的方式l方法:微程序順序執(zhí)行時,其后繼微地址就是現(xiàn)行微地址加上一個增量(通常為1);當(dāng)微程序遇到轉(zhuǎn)
25、移或轉(zhuǎn)子程序時,由微指令的轉(zhuǎn)移地址段來形成轉(zhuǎn)移微地址。在微程序控制器中也有一個微程序計數(shù)器PC,一般情況下都是將微地址寄存器MAR作為PCl特點:優(yōu)點是簡單、易于掌握,編制微程序容易缺點是這種方式不能實現(xiàn)兩路以上的并行微程序轉(zhuǎn)移,因而不利于提高微程序的執(zhí)行速度。675.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)2、微地址的形成方法、微地址的形成方法(2)多路轉(zhuǎn)移的方式l根據(jù)條件轉(zhuǎn)移如圖l條件:狀態(tài)條件/測試/微指令中微地址/操作碼68【例例2】微地址寄存器有6位(A5-A0),當(dāng)需要修改其內(nèi)容時,可通過某一位觸發(fā)器的強置端S將其置“1”?,F(xiàn)有三種情況:(1)執(zhí)行“取指”微指令后,微程序按IR的OP字
26、段(IR3-IR0)進行16路分支;(2)執(zhí)行條件轉(zhuǎn)移指令微程序時,按進位標(biāo)志C的狀態(tài)進行2路分支;(3)執(zhí)行控制臺指令微程序時,按IR4,IR5的狀態(tài)進行4路分支。 請按多路轉(zhuǎn)移方法設(shè)計微地址轉(zhuǎn)移邏輯。69 例2 解:按所給設(shè)計條件,微程序有三種判別測試,分別為P1,P2,P3。 由于修改A5-A0內(nèi)容具有很大靈活性,現(xiàn)分配如下:(1)用P1和IR3-IR0修改A3-A0;(2)用P2和C修改A0;(3)用P3和IR5,IR4修改A5,A4。 另外還要考慮時間因素T4(假設(shè)CPU周期最后一個節(jié)拍脈沖),故轉(zhuǎn)移邏輯表達式如下:A5=P3IR5T4A4=P3IR4T4A3=P1IR3T4A2=P
27、1IR2T4A1=P1IR1T4A0=P1IR0T4+P2CT4 由于從觸發(fā)器強置端修改,故前5個表達式可用“與非”門實現(xiàn),最后一個用“與或非”門實現(xiàn)。 705.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)3、微指令格式分為兩類:水平型微指令和垂直型微指令(1)水平型微指令 l水平型微指令是指一次能定義并能并行執(zhí)行多個微命令的微指令。l格式如下控制字段判別測試字段下地址字段715.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)3、微指令格式(2)垂直型微指令:采用編碼方式。l設(shè)置微操作控制字段時,一次只能執(zhí)行一到二個微命令的微指令稱為垂直型微指令。725.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)水平型微指令和垂直型
28、微指令的比較(1)水平型微指令并行操作能力強,效率高,靈活性強,垂直型微指令則較差。(2)水平型微指令執(zhí)行一條指令的時間短,垂直型微指令執(zhí)行時間長。(3)由水平型微指令解釋指令的微程序,有微指令字較長而微程序短的特點。垂直型微指令則相反。(4)水平型微指令用戶難以掌握,而垂直型微指令與指令比較相似,相對來說,比較容易掌握。735.4.2 微程序設(shè)計技術(shù)微程序設(shè)計技術(shù)4、動態(tài)微程序設(shè)計l對應(yīng)于一臺計算機的機器指令只有一組微程序,這一組微程序設(shè)計好之后,一般無須改變而且也不好改變,這種微程序設(shè)計技術(shù)稱為靜態(tài)微程序設(shè)計。 l采用EPROM作為控制存儲器,可以通過改變微指令和微程序來改變機器的指令系統(tǒng)
29、,這種微程序設(shè)計技術(shù)稱為動態(tài)微程序設(shè)計。745.5 硬連線控制器硬連線控制器1、基本思想(1)實現(xiàn)方法l通過邏輯電路直接連線而產(chǎn)生的,又稱為組合邏輯控制方式(2)設(shè)計目標(biāo)l使用最少元件(復(fù)雜的樹形網(wǎng)絡(luò))l速度最高755.5 硬連線控制器硬連線控制器返回圖圖5.28 硬連線控制器結(jié)構(gòu)方框圖硬連線控制器結(jié)構(gòu)方框圖765.5 硬連線控制器硬連線控制器(3)微操作控制信號產(chǎn)生l在微程序控制器中,微操作控制信號由微指令產(chǎn)生,并且可以重復(fù)使用。l在硬聯(lián)線控制器中,某一微操作控制信號由布爾代數(shù)表達式描述的輸出函數(shù)產(chǎn)生。l設(shè)計微操作控制信號的方法和過程是,根據(jù)所有機器指令流程圖,尋找出產(chǎn)生同一個微操作信號的所
30、有條件,并與適當(dāng)?shù)墓?jié)拍電位和節(jié)拍脈沖組合,從而寫出其布爾代數(shù)表達式并進行簡化,然后用門電路或可編程器件來實現(xiàn)。77 例3根據(jù)圖5.29,寫出以下操作控制信號RD(I)、RD(D)、WE(D)、LDPC、LDIR、LDAR、LDDR、PC+1、LDR2的邏輯表達式。其中每個操作控制信號的含義是:lRD(I)指存讀命令lRD(D)數(shù)存讀命令lWE(D)數(shù)存寫命令lLDPC打入程序計數(shù)器lLDIR打入指令寄存器lLDAR打入數(shù)存地址寄存器lLDDR打入數(shù)據(jù)緩沖寄存器lPC+1程序計數(shù)器加1lLDR2打入R1寄存器5.5 硬連線控制器硬連線控制器78例例3 解:設(shè)解:設(shè)M1、M2、M3為節(jié)拍電位信號,
31、為節(jié)拍電位信號,T1、T2、T3、T4為一個為一個CPU周期中的節(jié)拍脈沖信號,周期中的節(jié)拍脈沖信號,MOV、LAD、ADD、STO、JMP分別表示對應(yīng)機器指令的分別表示對應(yīng)機器指令的OP操作碼譯碼輸出操作碼譯碼輸出信號,則有如下邏輯表達式:信號,則有如下邏輯表達式:RD(I)=M1 (電位信號電位信號) , RD(D)=M3LAD (電位信號電位信號) ,WE(D)=M3T3LDA (脈沖信號脈沖信號) , LDPC=M1T4+M2T4JMP ,LDIR=M1T4 , LDAR=M2T4(LAD+STO) ,LDDR=M2T3(MOV+ADD)+M3T3LDA , PC+1=M1 ,LDR2=
32、M2T4ADD5.5 硬連線控制器硬連線控制器795.6 流水流水CPU5.6.1并行處理技術(shù)5.6.2流水CPU的結(jié)構(gòu)5.6.3流水線中的主要問題5.6.4 奔騰 CPU805.6.1并行處理技術(shù)并行處理技術(shù)l并行性(Parrelism)概念l問題中具有可以同時進行運算或操作的特性l例:在相同時延的條件下,用n位運算器進行n位并行運算速度幾乎是一位運算器進行n位串行運算的n倍(狹義)l(廣義)含義l只要在同一時刻(同時性)或在同一時間間隔內(nèi)(并發(fā)性)完成兩種或兩種以上性質(zhì)相同或不同的工作,他們在時間上相互重疊,都體現(xiàn)了并行性815.6.1并行處理技術(shù)并行處理技術(shù)l三種形式l時間并行(重疊):
33、讓多個處理過程在時間上相互錯開,輪流使用同一套硬件設(shè)備的各個部件,以加快硬件周轉(zhuǎn)而贏得速度,實現(xiàn)方式就是采用流水處理部件l空間并行(資源重復(fù)):以數(shù)量取勝l它能真正的體現(xiàn)同時性lLSI和VLSI為其提供了技術(shù)保證l時間+空間并行l(wèi)Pentium中采用了超標(biāo)量流水線技術(shù)825.6.2流水流水CPU的結(jié)構(gòu)的結(jié)構(gòu)l流水計算機的系統(tǒng)組成存儲器體系:主存采用多體交叉存儲器;Cache流水方式CPU:指令部件、指令隊列、執(zhí)行部件指令流水線指令隊列:FIFO執(zhí)行部件:可以有多個采用流水線方式構(gòu)成的算術(shù)邏輯部件構(gòu)成,可以將定點運算部件和浮點運算部件分開。CAI835.6.2流水流水CPU的結(jié)構(gòu)的結(jié)構(gòu)l流水線C
34、PU時空圖lIF(Instruction Fetch取指) lID(Instruction Decode指令譯碼)lEX(Execution執(zhí)行) lWB(Write Back寫回)845.6.2流水流水CPU的結(jié)構(gòu)的結(jié)構(gòu)流水CPU非流水CPU855.6.2流水流水CPU的結(jié)構(gòu)的結(jié)構(gòu)具有兩條以上的指令流水線上圖中流水線滿載時,每一個時鐘周期可以執(zhí)行2條指令采用時間和空間并行技術(shù)CAI865.6.2流水流水CPU的結(jié)構(gòu)的結(jié)構(gòu)l流水線(Pipelining)的分類l按級別分為l指令流水線l算術(shù)流水線l處理機流水線(宏流水線)875.6.3流水線中的主要問題流水線中的主要問題l三種相關(guān)沖突:資源相關(guān)
35、、數(shù)據(jù)相關(guān)、控制相關(guān)l資源相關(guān):多條指令進入流水線后在同一時鐘周期內(nèi)爭用同一功能部件。l解決辦法:后邊指令拖一拍再推進;增設(shè)一個功能部件885.6.3流水線中的主要問題流水線中的主要問題l數(shù)據(jù)相關(guān)lRAW(Read After Write)后面指令用到前面指令所寫的數(shù)據(jù)lWAW(Write After Write)兩條指令寫同一個單元在簡單流水線中沒有此類相關(guān),因為不會亂序執(zhí)行l(wèi)WAR(Write After Read)后面指令覆蓋前面指令所讀的單元在簡單流水線中沒有此類相關(guān)l解決辦法:可以推后后繼指令對相關(guān)單元的讀操作設(shè)置相關(guān)的直接通路(Forwarding)895.6.3流水線中的主要問題
36、流水線中的主要問題例:兩條指令發(fā)生數(shù)據(jù)相關(guān)沖突RAW(Read After Write)ADD R1,R2,R3R2+R3-R1SUBR4,R1,R5R1-R5-R4AND R6,R1,R7R1R7-R6905.6.3流水線中的主要問題流水線中的主要問題l控制相關(guān)l引起原因:轉(zhuǎn)移指令l解決辦法:延遲轉(zhuǎn)移法,轉(zhuǎn)移預(yù)測法91【例4】流水線中有三類數(shù)據(jù)相關(guān)沖突:寫后讀(RAW)相關(guān);讀后寫(WAR)相關(guān);寫后寫(WAW)相關(guān)。判斷以下三組指令各存在哪種類型的數(shù)據(jù)相關(guān)。(1)I1 ADD R1,R2,R3 ;(R2)+(R3)-R1 I2 SUB R4,R1,R5 ;(R1)-(R5)-R4(2)I3
37、 STO M(x),R3 ;(R3)-M(x),M(x)是存儲器單元 I4 ADD R3,R4,R5 ;(R4)+(R5)-R3(3)I5 MUL R3,R1,R2 ;(R1)(R2)-R3 I6 ADD R3,R4,R5 ;(R4)+(R5)-R3解:l第(1)組指令中,I1指令運算結(jié)果應(yīng)先寫入R1,然后在I2指令中讀出R1內(nèi)容。由于I2指令進入流水線,變成I2指令在I1指令寫入R1前就讀出R1內(nèi)容,發(fā)生RAW相關(guān)。l第(2)組指令中,I3指令應(yīng)先讀出R3內(nèi)容并存入存儲單元M(x),然后在I4指令中將運算結(jié)果寫入R3。但由于I4指令進入流水線,變成I4指令在I3指令讀出R3內(nèi)容前就寫入R3,
38、發(fā)生WAR相關(guān)。l第(3)組指令中,如果I6指令的加法運算完成時間早于I5指令的乘法運算時間,變成指令I(lǐng)6在指令I(lǐng)5寫入R3前就寫入R3,導(dǎo)致R3的內(nèi)容錯誤,發(fā)生WAW相關(guān)。925.6.4 奔騰奔騰CPUlPentium CPU (第一代)l1989年初0.8um工藝,310萬晶體管l有60M和66MHz外頻兩種版本l5V電壓,功耗20Wl超標(biāo)量流水線結(jié)構(gòu)l486有一條流水線lPentium有U和V兩條指令流水線U流水線可以執(zhí)行所有的整數(shù)和浮點指令V流水線可以執(zhí)行簡單的整數(shù)和FXCH浮點指令l雙重分離式Cache,減少了等待和搬移數(shù)據(jù)時間l32位CPU,外部數(shù)據(jù)總線寬度為64位,外部地址總線寬
39、度為36位935.6.4 奔騰奔騰CPUl非固定長度指令格式,9種尋址方式,191條指令,兼具有RISC和CISC特性,不過我們還是將其看成CISClSL電源管理技術(shù)l提供了更加靈活的存儲器尋址結(jié)構(gòu),可以支持傳統(tǒng)的4k大小的頁面,也可以支持4M大小的頁面l動態(tài)轉(zhuǎn)移預(yù)測技術(shù)lPentium結(jié)構(gòu)圖lMESI(Modified Exclusion Share Invalid)lBTB(Branch Target Buffer)lTLB(Translation Lookaside Buffer)94圖5.34 Pentium CPU結(jié)構(gòu)框圖CAI955.7 RISC CPU5.7.1 RISC機器的特
40、點5.7.2 RISC CPU實例5.7.3 動態(tài)流水線調(diào)度965.7.1 RISC機器的特點機器的特點l特點l(采用流水線技術(shù))l簡單而統(tǒng)一格式的指令譯碼;l大部分指令可以單周期執(zhí)行l(wèi)只有LOAD/STORE可以訪問存儲器l簡單的尋址方式l采用延遲轉(zhuǎn)移技術(shù)l采用LOAD延遲技術(shù)l三地址指令格式l較多的寄存器l對稱的指令格式l其他975.7.2 RISC CPU實例實例l實例 MC88110lCPU結(jié)構(gòu)框圖(見下圖)l12個執(zhí)行功能部件l3個Cache(指令,數(shù)據(jù)和目標(biāo)指令)l兩個寄存器堆(通用寄存器堆、擴展寄存器堆)l六條80位寬的內(nèi)部總線98MC88110 CPU結(jié)構(gòu)框圖結(jié)構(gòu)框圖CAI99
41、MC88110的指令流水線的指令流水線l超標(biāo)量流水線CPUlF&D:取指和譯碼段需要一個時鐘周期,lEX:執(zhí)行段,大都只需要一個時鐘周期,lWB:寫回段,只需要時鐘周期的一半l采用了直接通路(Forwarding)技術(shù)F&DEXWB100l指令動態(tài)調(diào)度策略l按序發(fā)射l取兩條指令,配對發(fā)送,一個周期可以有兩條指令執(zhí)行完畢l如下圖:CAI101l第一條指令由于資源相關(guān)或數(shù)據(jù)相關(guān),則這兩條指令都不發(fā)射l若第一條指令能發(fā)射,第二條不能發(fā)射,只發(fā)射第1條指令到EX段,第二條指令等待并新取一條指令與之配對等待發(fā)射CAI指令動態(tài)調(diào)度策略指令動態(tài)調(diào)度策略1025.7.2 RISC CPU實例實例l幾個問題:l怎樣判斷能否發(fā)射呢?l可以采用計分牌的方法l如何保證按序完成?lFIFO指令隊列l(wèi)如何對待控制相關(guān)(轉(zhuǎn)移指令)?l采用延遲轉(zhuǎn)移法和目標(biāo)指令cache法1035.7.2 RISC CPU實例實例l例5 超標(biāo)量流水線結(jié)構(gòu)如下CAI1045.7.2 RISC CPU實例實例I1LDA R1,AI2ADDR2,R1I3ADDR3,R4I4MULR4,R5I5LDAR6,BI6MULR6,R7l畫出按序完成各
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 購房合同補充協(xié)議范本
- 財務(wù)管理系統(tǒng)實施合同
- 農(nóng)業(yè)訂單合同樣本
- 材料供應(yīng)合同書樣本
- 度室內(nèi)裝飾壁畫合同:手繪墻畫服務(wù)協(xié)議
- 農(nóng)業(yè)灌溉合同轉(zhuǎn)讓協(xié)議
- 農(nóng)業(yè)機械租賃合同(范本7)
- 期貨市場算法交易策略定制服務(wù)考核試卷
- 家禽飼養(yǎng)業(yè)產(chǎn)品質(zhì)量安全追溯體系構(gòu)建考核試卷
- 工業(yè)控制計算機在印刷機械控制中的實踐考核試卷
- 生物醫(yī)藥研發(fā)實驗室的安全風(fēng)險評估與控制
- 合肥科技職業(yè)學(xué)院單招計算機類考試復(fù)習(xí)題庫(含答案)
- 2018-2022年北京市中考真題數(shù)學(xué)試題匯編:填空壓軸(第16題)
- 初三物理常識試卷單選題100道及答案
- 2025年吉林省吉林市事業(yè)單位招聘入伍高校畢業(yè)生54人歷年高頻重點提升(共500題)附帶答案詳解
- 《智能制造技術(shù)基礎(chǔ)》課件-第6章 智能制造裝備
- 鋼結(jié)構(gòu)地下停車場方案
- 《上市公司治理培訓(xùn)》課件
- 新人教版小學(xué)五年級數(shù)學(xué)下冊《第一單元 觀察物體(三)》2022課標(biāo)大單元整體教學(xué)設(shè)計-全析
- 《光伏電站運行與維護》課件-項目五 光伏電站常見故障處理
- 2024年貴州公需科目答案
評論
0/150
提交評論