版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2024/3/31,©2003 顧一禾制作,1,第 6 章 控制系統(tǒng)與CPU,,2024/3/31,2,本章學(xué)習(xí)內(nèi)容,控制器的功能與組成控制方式與時序系統(tǒng)CPU的總體結(jié)構(gòu)組合邏輯控制器設(shè)計微程序控制器設(shè)計,2024/3/31,3,6.1 控制器概述,控制器和運算器一起組成中央處理器,即CPU(CPU-Central Process Unit) ??刂破魇怯嬎銠C的指揮和控制中心,由它把計算機的運算器、存儲器、I/
2、O設(shè)備等聯(lián)系成一個有機的系統(tǒng),并根據(jù)各部件具體要求,適時地發(fā)出各種控制命令,控制計算機各部件自動、協(xié)調(diào)地進行工作??刂破鞯墓δ苁歉鶕?jù)事先編好并存放在存儲器中的解題程序,控制各部件有條不紊地、自動協(xié)調(diào)地進行工作。,2024/3/31,4,計算機運行程序的基本過程:1.取指令根據(jù)指令地址(由PC提供),從存儲器中取出所要執(zhí)行的指令。2.分析指令① 對取出的指令進行譯碼分析。確定指令應(yīng)完成的操作,產(chǎn)生相應(yīng)操作的控制電位,參與形成該指
3、令功能所需要的全部控制命令(微操作控制信號)。② 根據(jù)尋址方式的分析和指令功能要求,形成操作數(shù)的有效地址,并按此地址取出操作數(shù)據(jù)(運算型指令)或形成轉(zhuǎn)移地址(轉(zhuǎn)移類指令),以實現(xiàn)程序轉(zhuǎn)移。,6.1.1 指令執(zhí)行的基本步驟,2024/3/31,5,3.執(zhí)行指令:根據(jù)指令分析所產(chǎn)生的操作控制信號和形成的有效地址,按一定的算法形成指令操作控制序列,控制有關(guān)部件完成指令規(guī)定的功能。一條指令執(zhí)行結(jié)束,若沒有異常情況和特殊請求,則按程序順序
4、,再去取出并執(zhí)行下一條指令??刂破鞯闹饕δ芫褪前慈≈噶?、分析指令、執(zhí)行指令這樣的步驟進行周而復(fù)始的控制過程,直到完成程序所規(guī)定的任務(wù)并停機為止。,2024/3/31,6,指令A(yù)DD A,R7的執(zhí)行過程,,2024/3/31,7,6.1.2 控制器的基本功能,1.控制指令的正確執(zhí)行包括指令流出的控制,分析指令和執(zhí)行指令的控制,指令流向的控制。⑴ 指令流出控制(對取指令的控制)取指令時需進行的操作(PC)→MAR,Read ;
5、給出指令地址,并向MEM發(fā) 出讀命令(MDR)→IR ;讀出的指令經(jīng)MDR存放到指 令寄存器IR中(PC)增量→PC ;為取下一條指令作準(zhǔn)備,,2024/3/31,8,⑵ 分析指令和執(zhí)行指令的控制IR中的指令經(jīng)指令譯碼器(ID)譯碼分析,確定操作性質(zhì),判明尋址方式并形成操作數(shù)的有效地址??刂破鞲鶕?jù)分析的結(jié)果和形成的有效地址產(chǎn)生相應(yīng)的
6、操作控制信號序列,控制有關(guān)的部件完成指令所規(guī)定的操作功能。例:設(shè)某指令的IR15~IR12=0000時為MOV指令,則 MOV 的控制信號為:,2024/3/31,9,⑶ 指令流向的控制指令流向控制即下條指令地址的形成控制。① 按指令序列順序執(zhí)行時,通過PC自動增量形成下條指令的地址。② 當(dāng)需要改變指令流向時,需改變程序計數(shù)器PC中的內(nèi)容。轉(zhuǎn)移指令的執(zhí)行:把形成的轉(zhuǎn)向地址送入PC;轉(zhuǎn)子指令的執(zhí)行:把子程序入口地址送入PC;
7、中斷處理:將中斷服務(wù)程序入口地址送入PC。為了正確返回,轉(zhuǎn)子和中斷還需保留PC被改變之前的內(nèi)容(即返回地址)。,2024/3/31,10,2.控制程序和數(shù)據(jù)的輸入及結(jié)果的輸出為完成某項任務(wù)而編制的程序及所需數(shù)據(jù),必須通過某些輸入設(shè)備預(yù)先存放在存儲器中,運算結(jié)果要用輸出設(shè)備輸出。所以必須由控制器統(tǒng)一指揮,完成程序和數(shù)據(jù)的輸入及結(jié)果的輸出。3.異常情況和特殊請求的處理機器在運行程序過程中,往往可能會遇到一些異常情況(如電源掉電、運算
8、溢出等)或某些特殊請求(如打印機請求傳送打印字符等)。這些異常和請求往往是事先無法預(yù)測的,控制器必須具有檢測和處理這些異常情況和特殊請求的功能。,2024/3/31,11,宏觀上每條指令的執(zhí)行過程均是取指、譯碼、執(zhí)行,但每條指令有不同的操作序列,需要在不同時間產(chǎn)生不同的控制序列,并有嚴(yán)格的時序要求??刂破鞅仨毟鶕?jù)不同指令產(chǎn)生不同的控制序列??刂破鞯闹饕蝿?wù)根據(jù)不同的指令、不同的狀態(tài)條件,在不同的時間,產(chǎn)生不同的控制信號,控制計算機的
9、各部件自動、協(xié)調(diào)地進行工作。,2024/3/31,12,指令執(zhí)行的一般流程,,2024/3/31,13,6.1.3 控制器的組成,,,2024/3/31,14,指令部件的主要功能是完成取指令和分析指令。⑴ 程序計數(shù)器 PC (指令計數(shù)器、指令地址寄存器)程序計數(shù)器用于保證程序按規(guī)定的序列正確運行,并提供將要執(zhí)行指令的指令地址。PC的位數(shù)應(yīng)能表示主存的最大容量并與主存地址寄存器MAR的位數(shù)相同。程序順序執(zhí)行時的PC增量可以通過P
10、C本身的計數(shù)邏輯實現(xiàn),也可以由運算器的ALU實現(xiàn)。,,1.指令部件,2024/3/31,15,(2) 指令寄存器 IR指令寄存器用于存放當(dāng)前正在執(zhí)行的指令。(3) 指令譯碼器 ID對指令寄存器中的指令操作碼進行譯碼分析,產(chǎn)生相應(yīng)操作的控制電位,提供給微操作控制信號形成部件。對尋址方式字段進行譯碼分析,以控制操作數(shù)有效地址的形成。(4) 地址形成部件根據(jù)各種尋址方式,形成操作數(shù)有效地址。在一些微、小型機中,為簡化硬件邏輯,通常
11、不設(shè)置專門的地址形成部件,而是借用運算器實現(xiàn)有效地址的計算。,,2024/3/31,16,2.時序控制部件,時序控制部件:用于產(chǎn)生一系列時序信號,為各個微操作定時,以保證各個微操作的執(zhí)行順序。從宏觀(即程序控制)上看,計算機的解題過程實質(zhì)上是指令序列即一條條指令的執(zhí)行過程。從微觀(即指令控制)上看,計算機的解題過程是微操作序列即一個個(或一組組)微操作的執(zhí)行過程。微操作:機器最簡單的基本操作一條指令的執(zhí)行過程可以分解為若干微操作
12、。這些微操作有著嚴(yán)格的時間順序要求,不可隨意顛倒。,,2024/3/31,17,(1)脈沖源脈沖源用于產(chǎn)生一定頻率的主時鐘脈沖。一般采用石英晶體振蕩器作為脈沖源。計算機電源一接通,脈沖源立即按規(guī)定頻率給出時鐘脈沖。 (2)啟停電路啟停電路用于控制整個機器工作的啟動與停止。實際上是保證可靠地送出或封鎖主時鐘脈沖,控制時序信號的發(fā)生與停止。,,2024/3/31,18,(3)時序信號發(fā)生器時序信號發(fā)生器用于產(chǎn)生機器所需的各種時
13、序信號,以便控制有關(guān)部件在不同的時間完成不同的微操作。不同的機器,有著不同的時序信號。在同步控制的機器中,一般包括周期、節(jié)拍、脈沖等三級時序信號。,,2024/3/31,19,微操作控制信號形成部件:根據(jù)指令部件提供的操作控制電位、時序部件所提供的各種時序信號以及有關(guān)的狀態(tài)條件,產(chǎn)生機器所需要的各種微操作控制信號。不同的指令,完成不同的功能,需要不同的微操作控制信號序列。每條指令都有自己對應(yīng)的微操作序列。控制器必須根據(jù)不同的指令,在
14、不同的時間,產(chǎn)生并發(fā)出不同的微操作控制信號,控制有關(guān)部件協(xié)調(diào)工作,完成指令所規(guī)定的任務(wù)。,3.微操作控制信號形成部件,,2024/3/31,20,4.中斷控制邏輯(中斷機構(gòu)),用于實現(xiàn)異常情況和特殊請求的處理。,,2024/3/31,21,程序狀態(tài)寄存器:用于存放程序的工作狀態(tài)(如管態(tài)、目態(tài)等)和指令執(zhí)行的結(jié)果特征(如結(jié)果為零、結(jié)果溢出等),把它所存放的內(nèi)容稱為程序狀態(tài)字(PSW)。PSW表明了系統(tǒng)的基本狀態(tài),是控制程序執(zhí)行的重要依據(jù)。
15、不同的機器,PSW的格式及內(nèi)容不完全相同。例:8086 CPU中的PSW的格式CF:進位 PF:奇偶 AF:半進位ZF:結(jié)果為0 SF:符號 TF:單步(陷阱)IF:中斷允許 DF:地址增/減量 OF:溢出,5.程序狀態(tài)寄存器 PSR,,2024/3/31,22,控制臺用于實現(xiàn)人與機器之間的通信聯(lián)系,如啟動或停止機器的運行、監(jiān)視程序運行過程、對程序進行必要的修改或干預(yù)
16、等。早期有硬件控制臺,用于設(shè)置地址和指令?,F(xiàn)在,在大型機中有軟件控制臺。通過控制臺命令,控制機器的啟停,干預(yù)機器的工作。,6.控制臺,,2024/3/31,23,控制器的組成方式主要是指微操作控制信號形成部件采用何種組成方式產(chǎn)生微操作控制信號。根據(jù)產(chǎn)生微操作控制信號的方式不同,控制器可分為組合邏輯型、存儲邏輯型、組合邏輯與存儲邏輯結(jié)合型三種,它們的根本區(qū)別在于微操作信號發(fā)生器的實現(xiàn)方法不同,而控制器中的其他部分基本上是大同小異的。,
17、6.1.4 控制器的組成方式,,2024/3/31,24,1.組合邏輯型,組合邏輯控制器也稱為硬聯(lián)邏輯或硬布線邏輯。組合邏輯控制器是根據(jù)控制要求和狀態(tài),采用組合邏輯技術(shù)來實現(xiàn)的。其微操作信號發(fā)生器是由門電路組成的復(fù)雜樹形網(wǎng)絡(luò)構(gòu)成的。組合邏輯控制器的設(shè)計目標(biāo):使用最少器件數(shù)和取得最高操作速度。優(yōu)點:速度快。巨型機和RISC機為了追求高速度采用組合邏輯控制器。 缺點:微操作信號發(fā)生器結(jié)構(gòu)不規(guī)整,設(shè)計、調(diào)試、維修較困難,難以實現(xiàn)設(shè)計
18、自動化。一旦控制部件構(gòu)成之后,要想增加新的控制功能是不可能的。,2024/3/31,25,2.存儲邏輯型,存儲邏輯型控制器稱為微程序控制器。它是采用存儲邏輯來實現(xiàn)的。存儲邏輯型控制器的實現(xiàn)方法:把微操作信號代碼化,使每條機器指令轉(zhuǎn)化成為一段微程序存入控制存儲器中。執(zhí)行指令時,讀出控存中的微指令,由微指令產(chǎn)生微操作控制信號。優(yōu)點:設(shè)計規(guī)整,調(diào)試、維修便利,更改、擴充指令方便,易于實現(xiàn)自動化設(shè)計。缺點:由于增加了一級控制存儲器,所以
19、指令的執(zhí)行速度比組合邏輯控制器慢。,2024/3/31,26,3.組合邏輯和存儲邏輯結(jié)合型,組合邏輯和存儲邏輯結(jié)合型控制器稱為PLA控制器。PLA控制器是吸收前兩種的設(shè)計思想來實現(xiàn)的。PLA控制器實際上也是一種組合邏輯控制器,但它的輸出程序可編的,某一微操作控制信號由PLA的某一輸出函數(shù)產(chǎn)生。PLA控制器是組合邏輯技術(shù)和存儲邏輯技術(shù)結(jié)合的產(chǎn)物,它克服了兩者的缺點,是一種較有前途的方法。,2024/3/31,27,以上幾種控制器的設(shè)
20、計方法是不同的,但產(chǎn)生的微操作命令的功能是相同的,并且各個控制條件基本上也是一致的,都是由時序電路、操作碼譯碼信號,以及被控部件的反饋信息有機配合而成的。從功能上看,這幾種控制器只是微操作信號發(fā)生器的結(jié)構(gòu)和原理不同,而外部的輸入條件和輸出結(jié)果幾乎完全相同。,2024/3/31,28,微操作信號發(fā)生器,,,2024/3/31,29,6.2 控制器的控制方式與時序系統(tǒng),計算機執(zhí)行指令的過程實際上是執(zhí)行一系列的微操作的過程。每一條指令都對
21、應(yīng)著一個微操作序列,這些微操作中有些可以同時執(zhí)行,有些則必須按嚴(yán)格的時間關(guān)系執(zhí)行??刂破鞯目刂品绞叫杞鉀Q的問題:如何在時間上對各種微操作信號加以控制。,2024/3/31,30,6.2.1 控制方式,常用的控制方式有同步控制、異步控制和聯(lián)合控制。1.同步控制方式任何指令的運行或指令中各個微操作的執(zhí)行,均由確定的具有統(tǒng)一基準(zhǔn)時標(biāo)的時序信號所控制。即所有的操作均由統(tǒng)一的時鐘控制,在標(biāo)準(zhǔn)的時間內(nèi)完成。在同步控制方式下,每個時序信
22、號的結(jié)束就意味著安排完成的工作已經(jīng)完成,隨即開始執(zhí)行后續(xù)的微操作或自動轉(zhuǎn)向下條指令的運行。,2024/3/31,31,典型的同步控制方式:以微操作序列最長的指令和執(zhí)行時間最長的微操作為標(biāo)準(zhǔn),把一條指令執(zhí)行過程劃分為若干個相對獨立的階段(稱為周期)或若干個時間區(qū)間(稱為節(jié)拍),采用完全統(tǒng)一的周期(或節(jié)拍)控制各條指令的執(zhí)行。優(yōu)點:時序關(guān)系簡單,控制方便缺點:浪費時間。因為對比較簡單的指令,將有很多節(jié)拍是不用的,處于等待。所以,在實
23、際應(yīng)用中都不采用這種典型的同步控制方式,而是采用某些折衷的方案。,2024/3/31,32,(1) 采用中央控制與局部控制相結(jié)合的方法,中央控制:統(tǒng)一節(jié)拍的控制根據(jù)大多數(shù)指令的微操作序列的情況,設(shè)置一個統(tǒng)一的節(jié)拍數(shù),使之大多數(shù)指令均能在統(tǒng)一的節(jié)拍內(nèi)完成。局部控制:在延長節(jié)拍內(nèi)的控制對于少數(shù)在統(tǒng)一節(jié)拍內(nèi)不能完成的指令,采用延長節(jié)拍或增加節(jié)拍數(shù),使之在延長節(jié)拍內(nèi)完成,執(zhí)行完畢再返回中央控制。,2024/3/31,33,例:設(shè)某計算機的
24、指令通常用8個節(jié)拍完成,即有8個中央節(jié)拍 W7~W0 ,當(dāng)某指令在8個節(jié)拍中不能完成時,就插入若干局部節(jié)拍 W6*,經(jīng)過若干局部節(jié)拍 W6*后,再返回中央節(jié)拍 W7。,2024/3/31,34,(2) 采用不同的機器周期和延長節(jié)拍的方法,把一條指令執(zhí)行過程劃分為若干機器周期,如取指、取數(shù)、執(zhí)行等周期。根據(jù)所執(zhí)行指令的不同需要,選取不同的機器周期數(shù)。在節(jié)拍安排上,每個周期劃分為固定的節(jié)拍,每個節(jié)拍都可根據(jù)需要延長一個節(jié)拍。這種方法可以解
25、決執(zhí)行不同的指令所需時間不統(tǒng)一問題。在Intel 8088 的指令執(zhí)行過程中有讀寫周期、內(nèi)部周期等,其中讀寫周期為4個節(jié)拍,但可以延長若干個節(jié)拍。,2024/3/31,35,(3) 采用分散節(jié)拍的方法,分散節(jié)拍:運行不同指令時,需要多少節(jié)拍,時序部件就發(fā)生多少節(jié)拍。這種方法可完全避免節(jié)拍輪空,是提高指令運行速度的有效方法,但這種方法使時序部件復(fù)雜化。同時還不能解決節(jié)拍內(nèi)那些簡單的微操作因等待所浪費的時間。,2024/3/31,36,
26、2.異步控制方式,沒有統(tǒng)一的同步信號,采用問答方式進行時序協(xié)調(diào),將前一操作的回答信號作為下一操作的啟動信號。異步控制方式不僅要區(qū)分不同指令對應(yīng)的微操作序列的長短,而且要區(qū)分其中每個微操作的繁簡,每條指令、每個微操作需要多少時間就占用多少時間。,2024/3/31,37,這種方式可根據(jù)每條指令的操作的實際需要而分配時間,所以沒有時間上的浪費,效率高。但設(shè)計復(fù)雜且費設(shè)備。,2024/3/31,38,3.聯(lián)合控制方式,聯(lián)合控制是將同步控制和
27、異步控制相結(jié)合。聯(lián)合控制方式的設(shè)計思想:在功能部件內(nèi)部采用同步方式或以同步方式為主的控制方式;在功能部件之間采用異步方式。通常對可以統(tǒng)一的微操作采用同步控制,對難以統(tǒng)一的微操作采用異步控制。,2024/3/31,39,例如,在微、小型機中,CPU內(nèi)部基本時序采用同步控制方式,當(dāng)CPU通過總線與主存或其它外設(shè)交換數(shù)據(jù)時,轉(zhuǎn)入異步控制。當(dāng)CPU訪問外設(shè)時,只需給出起始信號,主存或外部設(shè)備即按自己的時序信號去安排操作,一旦操作結(jié)束,則
28、向CPU發(fā)結(jié)束信號,以便CPU再安排它的后繼工作。,2024/3/31,40,同步與異步時序的銜接關(guān)系,當(dāng)CPU要訪主存時,在發(fā)讀信號READ同時發(fā)“等待”信號,等待信號使時序由同步轉(zhuǎn)入異步操作并凍結(jié)同步時序,使節(jié)拍間的相位關(guān)系不再發(fā)生變化,直到存儲器按自己速度操作結(jié)束,并向CPU發(fā)回答信號MOC才解除對同步時序的凍結(jié),機器回到同步時序按原時序關(guān)系繼續(xù)運行。,2024/3/31,41,,,,,2024/3/31,42,,實際上現(xiàn)代計算機
29、中幾乎沒有完全采用同步或完全采用異步的控制方式,大多數(shù)都采用聯(lián)合控制方式。,2024/3/31,43,6.2.2 時序系統(tǒng),時序系統(tǒng)是控制器的心臟,由它為指令的執(zhí)行提供各種定時信號。通常,設(shè)計時序系統(tǒng)主要是針對同步控制方式的。1.指令周期與機器周期指令周期:從取指令、分析指令到執(zhí)行完一條指令所需的全部時間。由于各種指令的操作功能不同,繁簡程度不同,因此各種指令的指令周期也不盡相同。,2024/3/31,44,機器周期(CPU周
30、期):指令周期中的某一工作階段所需的時間。在指令執(zhí)行過程中,各機器周期相對獨立。一條指令的指令周期由若干個機器周期所組成,每個機器周期完成一個基本操作。所以機器周期也稱為基本周期。一般機器的CPU周期有取指周期、取數(shù)周期、執(zhí)行周期,中斷周期等。,2024/3/31,45,每個機器周期設(shè)置一個周期狀態(tài)觸發(fā)器與之對應(yīng),機器運行于哪個周期,與其對應(yīng)的周期狀態(tài)觸發(fā)器被置為“1”。顯然,機器運行的任何時刻都只能建立一個周期狀態(tài),因此同一時刻只
31、能有一個周期狀態(tài)觸發(fā)器被置為“1”。不同工作周期所占的時間可以不等。由于CPU內(nèi)部操作速度快,而CPU訪存所花時間較長,所以許多計算機系統(tǒng)往往以主存周期為基礎(chǔ)來規(guī)定CPU周期,以便二者工作協(xié)調(diào)配合。,2024/3/31,46,把一個機器周期等分成若干個時間區(qū)間,每一時間區(qū)間稱為一個節(jié)拍。一個節(jié)拍對應(yīng)一個電位信號,控制一個或幾個微操作的執(zhí)行。在一個機器周期內(nèi),要完成若干個微操作,這些微操作不但需要占用一定的時間,而且有一定的先后次序
32、。因此,在同步控制方式中,基本的控制方法就是把一個機器周期等分成若干個節(jié)拍,每一個節(jié)拍完成一步基本操作,如一次傳送、一次加減運算等。一個節(jié)拍電位信號的寬度取決于CPU完成一個基本操作的時間。,2.節(jié)拍,2024/3/31,47,節(jié)拍提供了一項基本操作所需的時間分段,但有的操作如打入寄存器,還需嚴(yán)格的定時脈沖,以確定在哪一時刻打入。節(jié)拍的切換,也需要嚴(yán)格的同步定時。所以在一個節(jié)拍內(nèi),有時還需要設(shè)置一個或幾個工作脈沖,用于寄存器的復(fù)位和接
33、收數(shù)據(jù)等。脈沖:一個節(jié)拍內(nèi)設(shè)置的一個或幾個工作脈沖。,3. 脈沖(定時脈沖),2024/3/31,48,周期、節(jié)拍、脈沖構(gòu)成了三級時序系統(tǒng),它們之間關(guān)系如下圖所示。圖中包括兩個機器周期M1、M2,每個周期包含四個節(jié)拍W0~W3,每個節(jié)拍內(nèi)有一個脈沖P。,,2024/3/31,49,微型機中常用的時序系統(tǒng)與上述三級時序系統(tǒng)有所不同,稱之為時鐘周期時序系統(tǒng)。下圖所示的是一典型指令的基本時序,一個指令周期包含三個機器周期:取指周期、存儲器
34、讀周期和存儲器寫周期,三個周期中分別包含4個、3個、3個時鐘周期。,,2024/3/31,50,6.3 CPU的總體結(jié)構(gòu),CPU即中央處理器,它包含運算器和控制器兩個部分。其功能為:⑴ 程序控制:控制程序按所要求的次序正確執(zhí)行。⑵ 操作控制:控制產(chǎn)生每條指令所需的操作信號,送往有關(guān)部件,控制完成指令規(guī)定的操作。⑶ 時序控制:對各種操作實施時間上的定時,使計算機有條不紊地工作。⑷ 數(shù)據(jù)加工:對數(shù)據(jù)進行算邏運算處理。,2024/3
35、/31,51,6.3.1 寄存器的設(shè)置,不同計算機的CPU結(jié)構(gòu)存在差別,但在CPU中一般都設(shè)置下列寄存器:(1)指令寄存器 IR(2)程序計數(shù)器 PC(3)累加寄存器 AC(4)程序狀態(tài)寄存器 PSR(5)地址寄存器 MAR(6)數(shù)據(jù)緩沖寄存器 MDR(或MBR),2024/3/31,52,其中⑵、⑶、⑷是用戶可用的,⑴、⑸、⑹是用戶不可用的。CPU中還常設(shè)置一些程序不能直接訪問、用于暫存操作數(shù)據(jù)或中間結(jié)果的寄存器,稱為
36、暫存器。,2024/3/31,53,通用寄存器,通用寄存器:一組程序可訪問的、具有多種功能的寄存器。在指令系統(tǒng)中,為通用寄存器分配了編號(寄存器地址),可以編程指定使用其中的某個寄存器。通用寄存器自身的邏輯往往很簡單并且比較統(tǒng)一,甚至是快速的小規(guī)模存儲器的一些單元,但通過編程與運算器配合,可指定其實現(xiàn)多種功能,如提供操作數(shù)、保存中間結(jié)果(即作累加器用),或用作地址指針、基址寄存器、變址寄存器、計數(shù)器等。,2024/3/31,54,6
37、.3.2 數(shù)據(jù)通路結(jié)構(gòu)及指令流程分析,數(shù)據(jù)通路:信息傳送的基本路徑。CPU內(nèi)部的數(shù)據(jù)通路通常是指運算器與寄存器之間的信息傳輸通道。數(shù)據(jù)通路結(jié)構(gòu)直接影響著CPU內(nèi)各種信息的傳送路徑。數(shù)據(jù)通路不同,指令執(zhí)行過程的微操作序列的安排也不同,它將直接影響到微操作信號形成部件的設(shè)計。,2024/3/31,55,1.單總線結(jié)構(gòu),CPU內(nèi)部采用單總線IBUS將寄存器和算術(shù)邏輯運算部件連接起來。CPU、主存、I/O設(shè)備也通過一組單總線(系統(tǒng)總線)連
38、接起來。在單總線結(jié)構(gòu)中,CPU內(nèi)部的任何兩個部件間的數(shù)據(jù)傳送都必須經(jīng)過單總線IBUS,因此單總線結(jié)構(gòu)的控制比較簡單,但傳送速度受到限制。在一些微、小型機中常采用這種結(jié)構(gòu)。,2024/3/31,56,,單總線結(jié)構(gòu)的CPU,,,2024/3/31,57,2. 雙總線結(jié)構(gòu),CPU內(nèi)部通過B總線(接收總線)和F總線(發(fā)送總線),將寄存器和算術(shù)邏輯運算部件連接起來。各寄存器可通過控制門,建立寄存器與總線之間的聯(lián)系。CPU通過地址總線ABUS和
39、數(shù)據(jù)總線DBUS與主存、I/O設(shè)備連接。,2024/3/31,58,雙總線結(jié)構(gòu)的CPU,,2024/3/31,59,3. 指令流程分析,指令流程:指令的操作過程。對指令流程的影響因素:① 指令的執(zhí)行步驟、訪問主存的步驟、總線的特點決定了指令流程的分步方式;②指令功能不同,操作數(shù)的數(shù)量不同,指令流程不同。③尋址方式不同,尋找操作數(shù)的過程不同。④數(shù)據(jù)通路不同,傳送數(shù)據(jù)時的控制過程不同。,2024/3/31,60,⑤ ALU的功能不
40、同,指令的執(zhí)行步驟不同。⑥不同的指令,執(zhí)行時的基本步驟不同。如訪存指令,需要訪問存儲器;R—R型指令不需要訪存。,2024/3/31,61,單總線結(jié)構(gòu)中ALU的功能:A+1,A-1, A+B, A-B例6.1 分析單總線結(jié)構(gòu)的CPU中,指令A(yù)DD (R1),R0的指令流程。設(shè)前一操作數(shù)地址為源,后一操作數(shù)地址為目的。解:指令功能:((R1))+(R0)→R0,,2024/3/31,62,指令流程如下:(1)(PC)→MAR
41、,Read,(PC)→Y(2) (Y)+1→Z, M→MDR→IR ;送指令地址,讀主存(3) (Z)→PC ;PC+1→PC,取指令到IR (4)(R1)→MAR,Read ;送源操作數(shù)地址(5) M→MDR→Y ;取出源操作數(shù)到Y(jié)中(6)(Y)+(R0)→Z ;執(zhí)行加法運算,結(jié)果暫存Z(7)(Z)→R0
42、 ;加法結(jié)果送回目標(biāo)寄存器,,2024/3/31,63,例:分析單總線結(jié)構(gòu)的CPU中,轉(zhuǎn)移指令 JC D 的指令流程。解:指令功能:IF C=1 THEN (PC)+D→PC 指令流程如下:(1)(PC)→MAR,Read,(PC)→Y(2) (Y)+1→Z, (MDR)→IR ;送指令地址,讀主存(3) (Z)→PC ;PC+1→PC,取指令到
43、IR (4) IF C=1 (PC)→Y ;送當(dāng)前指令地址(5) Y+IR(D部分)→Z ;計算轉(zhuǎn)移地址(6)(Z)→PC ;下條指令實現(xiàn)轉(zhuǎn)移,,2024/3/31,64,根據(jù)指令流程還需要作進一步的控制信息分析例:分析單總線結(jié)構(gòu)的CPU中指令A(yù)DD X(R1),(R2)+ 的指令流程和控制信號序列。指令格式為兩字節(jié)指令,第二字節(jié)為變址值
44、X。源操作數(shù)采用變址尋址,目的操作數(shù)采用自增型變址尋址。指令功能:(X+(R1))+((R2))→(R2), (R2)+1→R2,控制信息分析,2024/3/31,65,ID,IR,PC,R0,R1,MAR,MDR,TEMP,Y,Z,,,,,,IRout,,,,,IRin,,PCout,,,,,PCin,,R0out,,,,,R0in,,R1out,,,,,R1in,,,,MARin,,MARout,,,,,MDRin,,TE
45、MPout,,,,,TEMPin,,Yin,,,0→Y,,,Zout,,,ADD,SUB,,1→Cin,Zin,主存,,,,,Read,Write,…,,,,,單總線結(jié)構(gòu)中ALU的功能:A+1,A-1, A+B, A-B,2024/3/31,66,,2024/3/31,67,,2024/3/31,68,例6.2 分析雙總線結(jié)構(gòu)的CPU中執(zhí)行加法指令:ADD (R1),R0的操作流程和控制信號序列。 指令功能:(R0)+((R1))
46、→R0 分析:在執(zhí)行本條加法指令時,從取指令到產(chǎn)生結(jié)果,共需訪問存儲器2次,第1次讀取指令,第2次讀取源操作數(shù)。雙總線結(jié)構(gòu)中ALU的功能:A+1,A-1, A+B, A-B 可通過總線連接器G將總線B的信息直接傳到F總線。其控制信號為Gon。,2024/3/31,69,雙總線結(jié)構(gòu)的CPU,,2024/3/31,70,操作流程和控制信號序列
47、,,,,2024/3/31,71,例6.3 分析雙總線結(jié)構(gòu)的CPU中,指令 SUB X(R1),(R2)+ 的指令流程和控制信號。指令格式為兩字節(jié)指令,第二字節(jié)為變址值X。源操作數(shù)的有效地址:E1=X+(R1)目的操作數(shù)的有效地址:E2=(R2),(R2)+1→R2。指令功能: (E2)-(E1)→E2可通過總線連接器G將總線B的信息直接傳到F總線。其控制信號為Gon。,2024/3/31,72,,,,,2024
48、/3/31,73,,,(1)~(3)為取指令階段,(4)~(6)是取變址值X的流程,(7)~(8)計算形式地址,取出源操作數(shù)(9)~(11)為取目的數(shù)階段(12)~(13)進入指令的執(zhí)行階段。整個指令流程執(zhí)行結(jié)束后,共訪問存儲器5次。 如果雙總線結(jié)構(gòu)的CPU中沒有總線連接器G,則ALU需要增加功能:F=B在控制信號流程中,可以將Gon信號改為F=B。,2024/3/31,74,作業(yè),P304 6.5 (3)
49、,2024/3/31,75,例:在雙總線結(jié)構(gòu)的機器中,分析轉(zhuǎn)子指令:JSR X的執(zhí)行過程。設(shè)機器中沒有總線連接器,ALU的功能為: F=A+B,F(xiàn)=A-B, F=A+1,F(xiàn)=A-1, F=A,F(xiàn)=BJSR為雙字節(jié)指令,X為子程序入口地址,在第二字節(jié)。轉(zhuǎn)子指令的功能:將斷點地址保存到堆棧中,將X送入PC,實現(xiàn)程序轉(zhuǎn)移。,,2024/3/31,76,,ID,IR,PC,R0,R1,MAR,MDR,TEMP,Y,,,,,IR→B
50、,,,PC→B,,,R0→B,,,R1→B,,,,F→MAR,,MAR→B,,,TEMP→B,,,F→Y,,,ADD,SUB,A,主存,,,Read,Write,…,,,R7,,R7→B,,,ABUS,DBUS,,,,,INC,DEC,,B,,,F→TEMP,,,F→MDR,,,F→R7,,,F→R!,,,F→R0,,,F→PC,,,F→IR,F,B,…,SP,,SP→B,,,,F→SP,2024/3/31,77,,2024/3/31,
51、78,上題中,如果ALU的功能增加為 F=A+B,F(xiàn)=A-B, F=A+1,F(xiàn)=A-1, F=B+1,F(xiàn)=B-1, F=A,F(xiàn)=B處理器內(nèi)部無暫存器TEMP則控制序列可以進一步簡化。指令執(zhí)行過程與指令功能、尋址方式、數(shù)據(jù)通路、ALU功能等緊密相關(guān)。,2024/3/31,79,2024/3/31,80,作業(yè),在雙總線結(jié)構(gòu)的機器中,寫出轉(zhuǎn)子指令RET的操作序列及控制信號序列。設(shè)機器中沒有總線連接器,ALU的功能為: F=A+
52、B,F(xiàn)=A-B, F=A+1,F(xiàn)=A-1, F=A,F(xiàn)=B返回地址保存在堆棧中。堆棧為自底向上生長。,2024/3/31,81,6.4 模型機的總體結(jié)構(gòu),以模型機為例,進一步了解控制器的控制原理和設(shè)計方法,建立計算機的整機結(jié)構(gòu)。,2024/3/31,82,,,,2024/3/31,83,6.4.1 模型機的數(shù)據(jù)通路,1.字長:16位2. 總線結(jié)構(gòu):① 內(nèi)部總線:雙總線結(jié)構(gòu)BUS1:輸入總線, BUS2:輸出總線○:輸出控制門
53、信號,如MDR→BUS1CP:輸入控制信號,如CPY② 系統(tǒng)總線:地址總線:ABUS,數(shù)據(jù)總線:DBUSI/O與主存共享總線,用 MREQ 控制訪存;用IOREQ 控制訪問I/O,R/W=1,讀, R/W=0,寫,,,2024/3/31,84,3. 寄存器,,2024/3/31,85,4. ALU的功能 由SN74181構(gòu)成,在控制信號S3~S0及M、C0的控制下,可完成16種邏輯運算和16種算術(shù)運算。(P242)M=0:
54、算術(shù)運算 M=1:邏輯運算,,,2024/3/31,86,5. 狀態(tài)標(biāo)志用于記錄運算結(jié)果特征,可作為轉(zhuǎn)移判斷條件Cc:進位標(biāo)志,打入脈沖:CPCcCz:為零標(biāo)志,打入脈沖:CPCz6.移位器采用斜送方式實現(xiàn)移位傳遞,直送方式實現(xiàn)直接傳遞。,≥1,,,,,Fn,,,An+1,,SL,,,,An-1,An,,DM,SR,,,2024/3/31,87,7.模型機的編址主存按字編址,容量64K字,字長16位,16位地址可尋址64
55、K。,2024/3/31,88,6.4.2 模型機的指令系統(tǒng),指令系統(tǒng)中共16條指令1.指令格式⑴ 雙操作數(shù)指令包括:MOV、ADD、SUB、AND、OR、EOR,,2024/3/31,89,包括:INC、COM、ROL、ROR,,目的地址ED,⑵ 單操作數(shù)指令,2024/3/31,90,轉(zhuǎn)移指令采用相對尋址:轉(zhuǎn)移地址=(PC)+DD采用補碼,進行運算時,需進行符號擴展包括:JMP(無條件轉(zhuǎn)移)、JC(C=1轉(zhuǎn)移)、J
56、Z (Z=1轉(zhuǎn)移) 、JSR(轉(zhuǎn)子)轉(zhuǎn)子指令JSR的操作:(SP)-1→SP、MAR,(PC)→MDR,Write ((MDR)→存儲器)(PC)+D→PC,⑶ 轉(zhuǎn)移指令,(PC)→(SP),,2024/3/31,91,⑷ 返回與停機指令,返回(RTS)與停機(HALT)指令均為零地址指令,,特征,,特征,2024/3/31,92,子程序 返回指令(RTS)的功能是:從子程序返回主程序返回指令RTS的操作: (SP) →M
57、AR,Read M→MDR→PC (SP)+l →SP HALT 停機指令的功能是:0→RUN,將時鐘信號截斷。,((SP))→ PC,,2024/3/31,93,2. 指令系統(tǒng),為了簡單起見,模型機的指令系統(tǒng)中只有16條指令,包括了傳送指令、算邏指令、轉(zhuǎn)移指令、轉(zhuǎn)子與返回指令和停機指令等五類指令。,2024/3/31,94,,,,,2024/3/31,95,3.尋址方式,除自減型寄存器間址不能使用PC外,其余尋址方式均可以
58、使用所有可編程寄存器。,,2024/3/31,96,在自增型寄存器間址中若Rn=SP,則(SP)+為堆棧中的彈出數(shù)據(jù)操作。若Rn=PC,則為立即尋址,立即數(shù)保存在該指令的下一單元中。注意:如果目的操作數(shù)采用立即尋址,則有可能使指令數(shù)據(jù)不安全。自減型寄存器間址中若Rn=SP,則-(SP) 為堆棧中的壓入數(shù)據(jù)操作。,2024/3/31,97,變址尋址的指令長度為雙字,取指后需兩次訪存才能得到操作數(shù)。取指令操作碼后(PC)
59、→MAR,Read ;送X的地址,讀X(PC)+1→PC ;PC增量M→MDR→Y ;取X值到Y(jié)(Y)+(Rn)→MAR ,Read ;形成有效地址,讀操作數(shù)變址尋址中,若Rn=PC,則為相對尋址。,2024/3/31,98,6.4.3 模型機的時序系統(tǒng),模型機采用同步控制方式、三級時序邏輯系統(tǒng),即利用周期、節(jié)拍、脈沖構(gòu)成控制時序。1.模型機的機器
60、周期 每個機器周期內(nèi)可以完成一次主存的讀/寫操作。模型機設(shè)置六種機器周期取指周期 FT:完成取指、分析、(PC)+1→PC取源周期 ST:執(zhí)行雙操作數(shù)指令時,完成源操 作數(shù)的尋址,取源操作數(shù)。 (寄存器尋址時不用),2024/3/31,99,取目的周期 DT:完成目的操作數(shù)的尋址,取 目的操作數(shù)。執(zhí)行周期 ET:完成指令操作,并保存結(jié)果。中斷周
61、期 IT:處理中斷請求DMA周期 DMAT:實現(xiàn)DMA傳送。,,本章暫不討論,2024/3/31,100,CPU中任何時候都只能有一個周期存在,可以用六個狀態(tài)標(biāo)志表示CPU當(dāng)前進入了哪一個周期。可用六個觸發(fā)器表示六種不同的周期狀態(tài)。TEND? P為各觸發(fā)器的打入脈沖,表示在每個機器周期的最后一個時鐘脈沖時,發(fā)出打入脈沖。,,,2024/3/31,101,2.模型機的節(jié)拍與時序,節(jié)拍用于在一個周期中產(chǎn)生不同的微操作信號
62、。每個周期中設(shè)置四個節(jié)拍T0、T1、T2、T3。為節(jié)省節(jié)拍,在取目的周期 DT 和執(zhí)行周期 ET中安排兩種節(jié)拍產(chǎn)生方式。根據(jù)微操作的需要,可選擇兩個節(jié)拍,也可選擇四個節(jié)拍。每個節(jié)拍內(nèi)設(shè)置一個脈沖,用于寄存器接收代碼,如CPIR、CPPC等均為脈沖信號。脈沖的前沿用于寄存器接收數(shù)據(jù)。脈沖的后沿用于周期、節(jié)拍的轉(zhuǎn)換。,2024/3/31,102,節(jié)拍由節(jié)拍發(fā)生器產(chǎn)生,用兩位T型觸發(fā)器C1、C2構(gòu)成模4計數(shù)器,經(jīng)譯碼產(chǎn)生四個節(jié)拍電位
63、T0、T1、T2、T3。觸發(fā)器C1的T端固定接高電位,每來一個脈沖計一次數(shù)。觸發(fā)器C2的T端受或門的輸出控制。,2024/3/31,103,,,,,,2024/3/31,104,通過分析指令流程可知:當(dāng)現(xiàn)行指令的目標(biāo)尋址為非變址尋址時,在DT中不進入T2拍,只需T0、T1兩個節(jié)拍。單操作數(shù)指令、MOV指令、雙操作數(shù)指令的目標(biāo)尋址為寄存器尋址(DR=1)以及轉(zhuǎn)移類指令、停機指令在執(zhí)行周期ET中只需兩個節(jié)拍,不需進入T2。上述情況應(yīng)封
64、鎖C2計數(shù)。上圖中觸發(fā)器C1的T端固定接高電位,每來一個脈沖計一次數(shù)。觸發(fā)器C2的T端受或門的輸出控制,或門用于控制發(fā)出的節(jié)拍數(shù)。,2024/3/31,105,3. 脈沖,模型機在每個節(jié)拍內(nèi)設(shè)置一個工作脈沖。脈沖的作用:⑴ 用于寄存器接收代碼。如各寄存器的CP脈沖。⑵ 用于周期、節(jié)拍的轉(zhuǎn)換。通常利用脈沖的前沿接收數(shù)據(jù),用脈沖的后沿進行周期、節(jié)拍的轉(zhuǎn)換。,2024/3/31,106,模型機的三級時序關(guān)系,,,2024/3/31,
65、107,,,,,,PC→BUS1,,,,,,CPPC,,,BUSi,BUS1,BUS2,,,CPMAR,,,BUSi,ALU,,,,A,移位器,,DM,,,,i,,,,,S3~S0M,,例:(PC)→MAR所需信號① PC→BUS1=1② S3S2S1S0M=11111③ DM=1④ CPMAR①②③是電位信號,需在一個節(jié)拍內(nèi)有效;④是脈沖信號,其前沿將數(shù)據(jù)打入,后沿變換節(jié)拍。,,,,,,,,,,,節(jié)拍,脈沖,,,2024
66、/3/31,108,6.5 組合邏輯控制器的設(shè)計,用組合邏輯方法設(shè)計控制器的微操作控制信號形成部件,需要根據(jù)每條指令的要求,讓節(jié)拍電位和脈沖有步驟地去控制機器的有關(guān)部件,一步一步地依次執(zhí)行指令所規(guī)定的微操作序列,從而在一個指令周期內(nèi)完成一條指令所規(guī)定的全部操作功能。,,2024/3/31,109,6.5.1 組合邏輯控制器的設(shè)計步驟,在設(shè)計控制器之前,需由計算機系統(tǒng)結(jié)構(gòu)設(shè)計人員設(shè)計好機器的指令系統(tǒng)、數(shù)據(jù)表示、時序系統(tǒng),在此基礎(chǔ)上,才能
67、進行控制器的硬件線路設(shè)計。組合邏輯控制器設(shè)計的設(shè)計步驟:1.分析指令的執(zhí)行步驟,繪制指令操作流程圖分析指令操作流程的目的是確定指令執(zhí)行的具體步驟,決定各步所需的控制命令。,2024/3/31,110,指令操作流程圖:根據(jù)機器指令的結(jié)構(gòu)格式、數(shù)據(jù)表示方式及各種運算的算法,把每條指令的執(zhí)行過程分解成若干功能部件能實現(xiàn)的基本微操作,并以圖的形式排列成有先后次序、相互銜接配合的流程。指令流程圖可以比較形象、直觀地表明一條指令的執(zhí)行步驟和
68、基本過程。,2024/3/31,111,指令操作時間表:把指令流程圖中的各個微操作具體落實到各個機器周期的相應(yīng)節(jié)拍和脈沖中去,并以微操作控制信號的形式編排成一張表。指令操作時間表用于形象地表明控制器應(yīng)該在什么時間,根據(jù)什么條件發(fā)出哪些微操作控制信號。,2. 編排指令操作時間表,3. 進行微操作綜合,對操作時間表中各個微操作控制信號分別按其條件進行歸納、綜合,列出其綜合的邏輯表達式,并進行適當(dāng)?shù)恼{(diào)整、化簡,得到比較合理的邏輯表達式。,2
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第15章約束器與控制器
- 控制器原理圖
- dsp課件_第11章_can控制器模塊n
- 第6章金屬切削原理作業(yè)
- 控制器原理接線圖.dwg
- 控制器原理接線圖.dwg
- 控制器原理接線圖.dwg
- 可編程序控制器原理及應(yīng)用 教學(xué)課件 ppt 作者 吉順平 第04章
- 控制器原理接線圖.dwg
- 管理學(xué)原理第6章題庫
- 第4章 4.1 數(shù)字控制器的連續(xù)化設(shè)計技術(shù)
- 第10章 可編程控制器綜合應(yīng)用實踐
- 微控制器原理a自動化答案
- lal2順序控制器原理分析
- 水位控制電路圖水位控制器原理
- 基于內(nèi)??刂圃淼腜ID控制器設(shè)計.pdf
- 數(shù)字設(shè)計原理與實踐第6章答案
- 傳感器原理與應(yīng)用習(xí)題_第6章壓電式傳感器
- 鍋爐原理-第4章-過熱器
- 電動車控制器接線原理圖
評論
0/150
提交評論