第5章控制器原理_第1頁
第5章控制器原理_第2頁
第5章控制器原理_第3頁
第5章控制器原理_第4頁
第5章控制器原理_第5頁
已閱讀5頁,還剩152頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第5章控制器2/6/20231本章學習內容5.1控制器的功能與組成5.2控制方式與時序系統(tǒng)5.3微程序控制器及微程序設計技術5.4實驗用模型機的微程序設計5.5組合邏輯控制器5.6流水線技術2/6/202325.1控制器的功能與組成5.1.1控制器的功能控制器的基本功能:控制指令的執(zhí)行。具體地說,就是從主存中讀出指令,并對指令加以分析,產(chǎn)生一系列控制序列,控制系統(tǒng)中相應的部件完成該指令所定義的功能(執(zhí)行指令)。一條指令執(zhí)行完畢,根據(jù)指令流向,執(zhí)行下一條指令,如此反復。

2/6/20233

從本質上看,控制指令的執(zhí)行就是將指令轉換成與指令功能對應的微操作序列。

2/6/20234除此以外,控制器必須具有檢測和處理異常情況(如運算溢出)和特殊請求(如打印機請求傳送打印字符)的功能。檢測是通過中斷機構(中斷控制邏輯)實現(xiàn)的,處理過程其本質是執(zhí)行中斷處理程序的過程,即執(zhí)行指令的過程。2/6/202355.1.2控制器的組成控制器由以下六個部分組成(1)指令部件(2)時序控制部件(3)程序狀態(tài)寄存器(4)微操作控制信號形成部件(5)中斷控制邏輯(中斷機構)(6)控制臺2/6/20236指令部件的主要功能是完成取指令和分析指令。①程序計數(shù)器PC(指令計數(shù)器、指令地址寄存器)程序計數(shù)器用于保證程序按規(guī)定的序列正確運行,并提供將要執(zhí)行指令的指令地址。(1)指令部件2/6/20237②指令寄存器IR指令寄存器用于存放當前正在執(zhí)行的指令。③指令譯碼器ID指令譯碼器是指令分析部件,對指令寄存器中的指令操作碼進行譯碼分析,產(chǎn)生相應操作的控制電位,提供給微操作控制信號形成部件。2/6/20238④地址形成部件根據(jù)機器所規(guī)定的各種尋址方式,形成操作數(shù)有效地址。

2/6/20239(2)時序控制部件時序控制部件:用于產(chǎn)生一系列時序信號,為各個微操作定時,以保證各個微操作的執(zhí)行順序。微操作:機器最簡單的基本操作從宏觀(即程序控制)上看,計算機的解題過程實質上是指令序列即一條條指令的執(zhí)行過程。從微觀(即指令控制)上看,計算機的解題過程是微操作序列即一個個(或一組組)微操作的執(zhí)行過程。2/6/202310(3)程序狀態(tài)寄存器

程序狀態(tài)寄存器:用于存放程序的工作狀態(tài)(如管態(tài)、目態(tài)等)和指令執(zhí)行的結果特征(如結果為零、結果溢出等),把它所存放的內容稱為程序狀態(tài)字(PSW)。PSW表明了系統(tǒng)的基本狀態(tài),是控制程序執(zhí)行的重要依據(jù)。不同的機器,PSW的格式及內容不完全相同。2/6/202311例:8086CPU中的PSW的格式CF:進位PF:奇偶AF:半進位ZF:結果為0SF:符號TF:單步IF:中斷允許DF:地址增/減量OF:溢出2/6/202312微操作控制信號形成部件:根據(jù)指令部件提供的操作控制電位、時序部件所提供的各種時序信號以及有關的狀態(tài)條件,產(chǎn)生各指令的微操作控制信號。不同的指令,完成不同的功能,需要不同的微操作控制信號序列。每條指令都有自己對應的微操作序列??刂破鞅仨毟鶕?jù)不同的指令,在不同的時間,產(chǎn)生并發(fā)出不同的微操作控制信號,控制有關部件協(xié)調工作,完成指令所規(guī)定的任務。(4)微操作控制信號形成部件2/6/202313(5)中斷控制邏輯(中斷機構)

用于實現(xiàn)異常情況和特殊請求的檢測與處理。2/6/202314控制臺用于實現(xiàn)人與機器之間的通信聯(lián)系,如啟動或停止機器的運行、監(jiān)視程序運行過程、對程序進行必要的修改或干預等。早期有硬件控制臺,用于設置地址和指令。現(xiàn)在,在大型機中有軟件控制臺。通過控制臺命令,控制機器的啟停,干預機器的工作。(6)控制臺2/6/202315控制器的組成方式主要是指微操作控制信號形成部件采用何種組成方式產(chǎn)生微操作控制信號。根據(jù)產(chǎn)生微操作控制信號的方式不同,控制器可分為組合邏輯型、存儲邏輯型、組合邏輯與存儲邏輯結合型三種。5.1.3控制器的組成方式2/6/202316(1)組合邏輯型組合邏輯控制器是根據(jù)控制要求和狀態(tài),采用組合邏輯技術來實現(xiàn)的。其微操作信號發(fā)生器是由門電路組成的復雜樹形網(wǎng)絡構成的。組合邏輯控制器也稱為硬聯(lián)邏輯或硬布線邏輯。組合邏輯控制器的設計目標:使用最少器件數(shù)和取得最高操作速度。2/6/202317優(yōu)點:速度快缺點:微操作信號發(fā)生器結構不規(guī)整,設計、調試、維修較困難,難以實現(xiàn)設計自動化。一旦控制部件構成之后,要想增加新的控制功能是不可能的。2/6/202318(2)存儲邏輯型存儲邏輯型控制器稱為微程序控制器。它是采用存儲邏輯來實現(xiàn)的。存儲邏輯型控制器的實現(xiàn)方法:把微操作信號代碼化,使每條機器指令轉化成為一段微程序存入控制存儲器中。執(zhí)行指令時,讀出控存中的微指令,由微指令產(chǎn)生微操作控制信號。2/6/202319優(yōu)點:設計規(guī)整,調試、維修以及更改、擴充指令方便的優(yōu)點,易于實現(xiàn)自動化設計,已成為當前控制器的主流。缺點:由于它增加了一級控制存儲器,所以指令的執(zhí)行速度比組合邏輯控制器慢。2/6/202320(3)組合邏輯和存儲邏輯結合型組合邏輯和存儲邏輯結合型控制器稱為PLA控制器,它是吸收前兩種的設計思想來實現(xiàn)的。PLA控制器實際上也是一種組合邏輯控制器,但它的輸出程序可編的,某一微操作控制信號由PLA的某一輸出函數(shù)產(chǎn)生。PLA控制器是組合邏輯技術和存儲邏輯技術結合的產(chǎn)物,它克服了兩者的缺點,是一種較有前途的方法。2/6/202321

三種類型控制器的根本區(qū)別在于微操作信號發(fā)生器的實現(xiàn)方法不同,而控制器中的其他部分基本上是大同小異的。2/6/202322微操作信號發(fā)生器2/6/202323

5.2控制器的控制方式與時序系統(tǒng)

5.2.1控制方式

控制器的控制方式需解決的問題是:如何在時間上對各種微操作信號加以控制。2/6/202324控制方式可分為:(1)同步控制(2)異步控制(3)聯(lián)合控制2/6/202325(1)同步控制方式同步控制方式:任何指令的運行或指令中各個微操作的執(zhí)行,均由確定的具有統(tǒng)一基準時標的時序信號所控制。即所有的操作均由統(tǒng)一的時鐘控制,在標準的時間內完成。在同步控制方式下,每個時序信號的結束就意味著對應操作的完成,隨即開始執(zhí)行后續(xù)的微操作或下條指令的運行。2/6/202326典型的同步控制方式是:以微操作序列最長的指令和執(zhí)行時間最長的微操作為標準,把一條指令執(zhí)行過程劃分為若干個相對獨立的階段(稱為周期)或若干個時間區(qū)間(稱為節(jié)拍),采用完全統(tǒng)一的周期(或節(jié)拍)控制各條指令的執(zhí)行。2/6/202327優(yōu)點:時序關系簡單,控制方便缺點:浪費時間。因為對比較簡單的指令,將有很多節(jié)拍是不用的,處于等待。所以,在實際應用中都不采用這種典型的同步控制方式,而是采用某些折衷的方案。2/6/202328(2)異步控制方式異步控制方式:沒有統(tǒng)一的同步信號,采用問答方式進行時序協(xié)調,將前一操作的回答信號作為下一操作的啟動信號。該方式不再有統(tǒng)一的周期、節(jié)拍,各個操作之間采用應答方式銜接,前一操作完成后給出回答信號,啟動下一個操作。2/6/202329這種方式可根據(jù)每條指令的操作的實際需要而分配時間,所以沒有時間上的浪費,效率高。但設計復雜且費設備。2/6/202330(3)聯(lián)合控制方式聯(lián)合控制方式:將同步控制和異步控制相結合。聯(lián)合控制方式通常的設計思想:在功能部件內部采用同步方式或以同步方式為主的控制方式;在功能部件之間采用異步方式。實際上現(xiàn)代計算機中幾乎沒有完全采用同步或完全采用異步的控制方式,大多數(shù)都采用聯(lián)合控制方式。2/6/2023315.2.2時序系統(tǒng)通常,設計時序系統(tǒng)主要是針對同步控制方式。1.指令周期與機器周期指令周期:從取指令、分析指令到執(zhí)行完一條指令所需的全部時間。由于各種指令的操作功能不同,繁簡程度不同,因此各種指令的指令周期也不盡相同。2/6/202332機器周期(CPU周期):指令周期中的某一相對獨立的工作階段所需的時間。一條指令的指令周期由若干個機器周期所組成,每個機器周期完成一個基本操作。一般機器的CPU周期有取指周期、取數(shù)周期、執(zhí)行周期等。2/6/202333節(jié)拍:把一個機器周期等分成若干個時間區(qū)間,每一時間區(qū)間稱為一個節(jié)拍。一個節(jié)拍對應一個電位信號,控制一個或幾個微操作的執(zhí)行。2.節(jié)拍2/6/202334節(jié)拍提供了一項基本操作所需的時間分段,但有的操作如打入寄存器,還需嚴格的定時脈沖,以確定在哪一時刻打入。節(jié)拍的切換,也需要嚴格的同步定時。所以在一個節(jié)拍內,有時還需要設置一個或幾個工作脈沖,用于寄存器的復位和接收數(shù)據(jù)等。脈沖:一個節(jié)拍內設置的一個或幾個工作脈沖。3.脈沖(定時脈沖)2/6/202335周期、節(jié)拍、脈沖構成了三級時序系統(tǒng),它們之間關系如下圖所示。圖中包括兩個機器周期M1、M2,每個周期包含四個節(jié)拍W0~W3,每個節(jié)拍內有一個脈沖P。2/6/202336微型機中常用的時序系統(tǒng)與上述三級時序系統(tǒng)有所不同,稱之為時鐘周期時序系統(tǒng)。下圖所示,一個指令周期包含三個機器周期:取指周期、存儲器讀周期和存儲器寫周期,三個周期中分別包含4個、3個、3個時鐘周期。2/6/2023375.3微程序控制器及微程序設計技術5.3.1基本概念5.3.2微程序控制器的組成及工作過程5.3.3微程序設計的幾個相關問題2/6/2023385.3.1基本概念①微命令直接作用于部件或控制門電路的控制命令。是構成控制信號序列的最小單位。②微操作由微命令控制實現(xiàn)的最基本的操作。2/6/202339③微指令用以產(chǎn)生一組微命令,控制完成一組微操作的二進制編碼字稱為微指令。④微程序:一系列微指令的有序集合稱為微程序。2/6/202340程序、指令、微程序、微指令、微命令、微操作的關系2/6/202341一段程序由若干條指令構成;每一條指令對應一段微程序;一段微程序由若干條微指令構成;一條微指令包含若干個微命令;一個微命令對應一個微操作。2/6/202342微程序設計的目的是實現(xiàn)定義的機器指令。其屬于硬件設計范疇;程序設計是利用機器指令編寫系統(tǒng)軟件或應用軟件,其屬于軟件設計范疇。2/6/2023435.3.2微程序控制器的組成及其工作過程2/6/202344微程序控制器的組成①控制存儲器CM:簡稱控存。控存的每個單元存放一條微指令代碼。②微指令寄存器μIR:存放從控存中讀取的微指令。2/6/202345微指令通常分為兩大字段:操作控制字段:產(chǎn)生一組微命令,控制有關部件完成微指令所規(guī)定的微操作。地址(順序)控制字段:指示下條微指令地址的形成方式或直接給出下條微指令地址。2/6/202346③微地址形成電路:用于產(chǎn)生起始微地址和后繼微地址,保證微程序的連續(xù)執(zhí)行。④微地址寄存器μMAR:接受微地址形成電路送來的地址,為讀取微指令準備好控存的地址。2/6/202347微程序控制器的工作過程微程序控制器的工作過程實際上就是在微程序控制器的控制下計算機執(zhí)行機器指令的過程。①啟動取指令微程序

取指令的公共操作通常由一個取指微程序來完成。具體的執(zhí)行是:在機器開始運行時,自動將取指微程序的入口微地址送MAR,并從CM中讀出相應的微指令送入IR。微指令的操作控制字段產(chǎn)生有關的微命令,用來控制計算機實現(xiàn)取機器指令的公共操作。2/6/202348②根據(jù)IR中的指令碼,通過微地址形成電路產(chǎn)生該指令的微程序的起始微地址,并送入μMAR中。③μMAR中的微地址經(jīng)譯碼、驅動,從被選的控存單元中取出一條微指令并送入μIR。④μIR中的微指令的操作控制字段產(chǎn)生一組微命令并送往有關的功能部件,控制其完成所規(guī)定的微操作。2/6/202349⑤μIR中微指令的地址控制字段及有關狀態(tài)條件送往微地址形成電路,產(chǎn)生下條微指令的地址,再去讀取并執(zhí)行下條微指令。如此循環(huán),直到一條機器指令的微程序全部執(zhí)行完畢。2/6/202350⑥執(zhí)行完一條機器指令對應的微程序后又回到取指微程序的入口地址,繼續(xù)取下一條指令并執(zhí)行。如此周而復始,直到整個程序執(zhí)行完畢為止。2/6/2023515.3.3微程序設計的幾個相關問題(1)微指令操作控制字段的編碼,如何對微指令的操作控制字段進行編碼來表示各個微命令。(2)微程序的尋址,即如何根據(jù)指令代碼轉入到其對應的初始微地址,及后繼微地址尋址的各種方法。2/6/202352(3)微程序設計方法。下面將圍繞這三個問題展開討論。2/6/202353通用的操作控制字段的編碼方法1.直接控制法(不譯法)微指令操作控制字段的每一位都直接表示一個微命令,該位為“1”,表示執(zhí)行這個微命令,為“0”表示不執(zhí)行該微命令。由于這種方法不需譯碼,所以也稱不譯法。優(yōu)點:結構簡單,并行性強,操作速度快。缺點:微指令字太長,信息效率低。2/6/202354在這種方法中,有N個微命令,操作控制字段就需N位。在實際機器中,微命令數(shù)達幾百個,使微指令字長達到難以接受的地步。同時在幾百個微命令中有很多是互斥的,不允許同時出現(xiàn)的(如R0→BUS1,R1→BUS1),將它們安排在同一條微指令內,只會使信息效率降低。因此在實際機器中,往往與其它方法混合使用,僅部分位采用直接控制法。2/6/2023552.最短編碼法將所有的微命令進行統(tǒng)一編碼,每條微指令只定義一個微命令。若微命令總數(shù)為N,則最短編碼法中操作控制字段的長度L,應滿足下列關系:

L≥log2N優(yōu)點:最短編碼法所得的微指令字長最短。2/6/202356缺點:①要通過微命令譯碼器譯碼才能得到所需的微命令。微命令越多,譯碼器就越復雜;②這種方法在某一時間只能產(chǎn)生一個微命令,不能充分利用機器硬件所具有的并行性,指令執(zhí)行效率低。所以這種方法很少獨立使用。2/6/2023573.字段直接編碼法將微指令操作控制字段劃分為若干個子字段,每個子字段的所有微命令進行統(tǒng)一編碼。子字段的劃分原則:①把互斥的微命令(即不允許同時出現(xiàn)的微命令)劃分在同一字段內,相容的(即允許同時出現(xiàn))微命令劃分在不同字段內。②字段的劃分應與數(shù)據(jù)通路結構相適應。2/6/202358字段直接編碼法的微指令結構2/6/202359(2)微程序的尋址微程序的尋址,即如何根據(jù)指令代碼轉入到其對應的初始微地址,及后繼微地址尋址的各種方法。2/6/202360相關概念:微程序的初始微地址(微程序的入口地址):指令所對應微程序的第一條微指令所在控制存儲器單元的地址。后繼微地址:后繼微指令所在控存單元的地址。2/6/2023611.初始微地址的形成機器指令從主存取到IR以后,要由機器指令操作碼轉換為該指令所對應的微程序入口地址,即形成初始微地址。2/6/202362初始微地址形成方式(1)一級功能轉移一級功能轉移:根據(jù)指令操作碼,直接轉移到相應微程序的入口,即指令操作碼直接參與形成微程序的入口地址。當指令操作碼的位置與位數(shù)均固定時,可直接用操作碼作為微地址的低位。2/6/202363例:模型機有16條指令,操作碼對應IR的低4位,當取出指令后,直接由IR的低4位,作為微地址的低4位。一級功能轉移適用于指令操作碼的位置和長度比較規(guī)整的和固定的情況。2/6/2023642/6/202365(2)二級功能轉移如果機器指令的操作碼的位數(shù)和位置不固定,則需采用二級功能轉移。二級功能轉移:先按指令類型標志轉移,以區(qū)分出哪一類指令。在每類指令中假定位置和位數(shù)是固定的,在第二級按操作碼區(qū)分出具體是哪條指令,轉移到相應微程序入口。2/6/202366取指微程序一級功能轉移二級功能轉移二級功能轉移二級功能轉移DRDRADD…SUB…單數(shù)雙數(shù)…MOV二級功能轉移2/6/2023672.后繼微地址的形成找到初始微地址后,開始執(zhí)行相應的微程序。每條微指令執(zhí)行完畢,都要根據(jù)要求形成后繼微地址,以保證微程序的正常執(zhí)行。后繼微地址的形成方法對微程序編制的靈活性影響很大,主要有兩種基本類型:增量方式和斷定方式。

2/6/2023681.增量方式(順序-轉移型微地址)

順序執(zhí)行時后繼微地址就是現(xiàn)行微地址加上一個增量;

轉移時,由微指令的順序控制字段產(chǎn)生轉移微地址。因此,在微程序控制器中應當有一個微程序計數(shù)器(PC)。

2/6/202369

優(yōu)點:簡單,易于掌握,編制微程序容易,每條機器指令所對應的一段微程序一般安排在CM的連續(xù)單元中;

缺點:這種方式不能實現(xiàn)多路轉移。2/6/2023702.斷定方式

斷定方式的后繼微地址可由微程序設計者指定,或者根據(jù)微指令所規(guī)定的測試結果直接決定后繼微地址的全部或部分值。

這是一種直接給定與測試斷定相結合的方式,其順序控制字段一般由兩部分組成:非測試段和測試段。

2/6/202371

測試段如果只有一位,則微地址將產(chǎn)生兩個分支;若有兩位,則最多可產(chǎn)生四個分支;依次類推;測試段為n位最多可產(chǎn)生2n個分支。2/6/202372例:某機的微指令格式為:A、B為兩個判定條件可實現(xiàn)4路轉移。采用斷定方式可以實現(xiàn)快速轉移,其缺點時,編制微程序時,地址安排比較復雜。μIROCF微地址高位AB2/6/202373(3)微程序設計方法在進行微程序設計時,應盡量縮短微指令字長,減少微程序長度,提高指令執(zhí)行效率。但以上指標是互相制約的,應全面分析和權衡。2/6/2023741.水平型微指令及水平型微程序設計水平型微指令是指一次能定義并執(zhí)行多個微微命令的微指令。優(yōu)點:并行操作能力強,效率高,執(zhí)行一條機器指令所需微指令數(shù)目少,時間短;2/6/202375缺點:微指令字長,增加控存的橫向容量;設計者只有熟悉數(shù)據(jù)通路,才有可能編制出理想的微程序,用戶一般不易掌握。采用水平型微指令編制微程序稱為水平微程序設計。2/6/2023762.垂直型微指令與垂直型微程序設計垂直型微指令是指一次只能執(zhí)行一個微命令的微指令。缺點:并行操作能力差,效率低,執(zhí)行一條機器指令所需微指令數(shù)目多,執(zhí)行時間長、效率低;2/6/202377優(yōu)點:用戶不必過多地熟悉數(shù)據(jù)通路的細節(jié)便可進行微程序設計,容易掌握和利用。采用垂直型微指令編制微程序稱為垂直微程序設計。2/6/2023783混合型微指令在實際中,對于一臺計算機來說,不應把微指令局限于某一種類型,常常是兩者兼而有之。具有兩者特點的微指令稱為混合型微指令。2/6/2023795.4實驗用模型機的微程序設計

下面以實驗中的模型機來討論微程序的設計設計中需要解決的主要問題:(1)定義模型機的指令系統(tǒng)確定模型機的指令及各指令的功能。(2)進行微程序設計實現(xiàn)所定義的指令系統(tǒng)即實現(xiàn)每條指令的功能。2/6/202380模型機的數(shù)據(jù)通路圖2/6/202381(1)定義模型機的指令系統(tǒng)為簡化設計過程,模型機中定義五條機器指令:

IN(輸入)、ADD(二進制加法)、STA(存數(shù))、OUT(輸出)、JMP(無條件轉移),其指令格式如下(前4位為操作碼):2/6/202382助記符機器指令碼說明IN00000000“INPUTDEVICE”中的開關狀態(tài)至R0ADDaddr00010000…R0+[addr]R0STAaddr00100000…R0[addr]OUTaddr00110000…[addr]BUSJMPaddr01000000…addrPC2/6/202383其中IN為單字長(8位),其余為雙字長指令,…為addr對應的二進制地址碼,為8位。2/6/202384(2)進行微程序設計實現(xiàn)所定義的指令①根據(jù)模型機的數(shù)據(jù)通路圖,設計指令執(zhí)行流程。五條指令的流程如下圖所示:2/6/202385各條指令的執(zhí)行流程

返回鏈接處2/6/202386指令流程設計是微程序設計的基礎,下面以加法指令流程設計為例作詳細介紹。ADDaddr00010000…R0+[addr]R0當執(zhí)行取指令微程序將加法指令代碼(00010000)取出時,確定是加法指令后,下面該進行什么操作。2/6/202387首先要進行PC->AR,PC+1,以便讀出指令中的地址部分;當?shù)刂返竭_AR后,便將內存中指令的地址碼部分讀出到BUS,讀出的地址碼還要訪問其指向的內存單元,即進行:RAM->BUS,BUS->AR2/6/202388從…指向的內存單元中讀出的操作數(shù)要和R0里的值相加,為此需送入運算器的DR1或DR2(若送入DR2,則R0的值要送入DR1),設送入DR2,則指令流程為:RAM->BUS,BUS->DR22/6/202389下面將R0的值送入DR1,即指令流程:R0->DR1最后,將DR1的值加上DR2的值,將結果送入R0,即指令流程:(DR1)+(DR2)->R0到此,指令功能已完成,指令流程結束。2/6/202390說明:(1)上圖中每個方框對應指令流程中的一步,也即對應一條微指令。(2)每條指令在執(zhí)行前要執(zhí)行兩步取指令的操作。(3)圖中的P(1)其實質是根據(jù)指令碼形成微程序入口地址電路。2/6/202391②確定各條微指令的地址。首先確定每個微程序第一條微指令的地址,即入口地址。在該模型機中,采用一級功能轉移,將指令代碼的高4位中的低3位作為地址的低3位。即IN指令的指令代碼的高4位為0000,則入口地址為001000即八進制102/6/202392ADD指令代碼的高4位為0001,則入口地址為001001即八進制11其它指令分別為STA:12OUT:13JMP:142/6/202393確定后繼微地址在該模型機中,采用在微指令的地址控制字段直接給出后繼微地址。由于是采用這種方式,其它微指令可任意存放在控存的單元,只要能通過地址字段前后銜接就可以。2/6/202394每段微程序的最后一條微指令的后地址微地址需是轉向取指令微程序的入口地址,在該模型機中,為000001。2/6/202395控制臺操作微程序設計為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動程序執(zhí)行,還必須設計三個控制臺操作微程序。(1)存儲器讀操作:撥動總清開關CLR后,控制臺開關SWB、SWA為“00”時,按START微動開關,可對RAM連續(xù)手動讀操作。2/6/202396

存儲器寫操作:撥動總清開關CLR后,控制臺開關SWB、SWA為“01”時,按START微動開關,可對RAM連續(xù)手動寫入操作。

啟動程序:撥動總清開關CLR后,控制臺開關SWB、SWA為“11”時,按START微動開關,即可轉入到第01號“取址”微指令,啟動程序運行。2/6/2023972/6/202398說明:圖中的P(4),實際上是根據(jù)控制臺開關SWB、SWA的狀態(tài)形成3路不同的微程序入口地址電路。2/6/202399關于啟動程序的運行先執(zhí)行00號單元的微指令,00號單元的微指令進行P(4)測試,當SWB、SWA為“11”時,轉入執(zhí)行23號單元的微指令,23號單元的微指令沒有進行什么操作,只是它的下地址為01,即轉入取指令微指令。2/6/2023100其它是手動寫入程序至內存及手動讀出程序驗證其正確性的兩個控制臺微程序。2/6/2023101③微指令代碼化根據(jù)微指令格式,將微程序流程中的每條微指令代碼化,轉成相應的二進制代碼,寫入控存中的相應單元。2/6/2023102模型機的微指令的格式2/6/2023103說明:(1)在模型機中,采用混合型微指令設計方法。(2)微指令的操作控制字段采用了直接給出微命令和譯碼法相接合的方法。(3)微指令的地址控制字段采用直接給出下一條微指令的地址以實現(xiàn)微指令之間的銜接。2/6/2023104微指令的代碼化

2/6/2023105將上表按地址寫入到控存中,模型機的微程序設計轉入調試階段。④調試現(xiàn)在可以根據(jù)定義的指令設計一段調試程序,驗證全部微程序流程圖是否正確。2/6/2023106調試程序內容助記符00000000IN0001000000001010ADD[0AH]0010000000001011STA[0BH]0011000000001011OUT[0BH]0100000000000000JMP[00H]以上是程序代碼段2/6/2023107數(shù)據(jù)段定義如下:地址內容000010100000000100001011(?)求和結果2/6/2023108該程序段的功能是:將輸入開關的值先讀入到R0,然后將R0中的值加上[0AH]內存單元的值再送給R0,再將R0的值送入內存單元[0BH],并將[0BH]中的內容輸出到LED.最后程序跳轉到程序的開始處,又重新執(zhí)行。(程序從存儲器00位置存放。)2/6/2023109附:微程序控制實驗實驗目的(1)通過實驗原理圖進一步理解微程序控制器的組成;(2)通過微程序寫入、校驗操作,進一步理解微指令、微程序、微地址、控制存等相關概念。2/6/2023110實驗步驟(1)熟悉實驗原理圖;(2)按要求連線;(2)微程序的寫入A.將編程開關置為PROM(編程狀態(tài))。B.將實驗板上“STATEUNIT”中的“STEP”置為“STEP”,“STOP”置為“RUN”狀態(tài)。C.用二進制模擬開關置微地址MA5—MA0。

2/6/2023111D在MK24—MK1開關上置微代碼,24位開關對應24位顯示燈,開關量為“0”時燈亮,開關量為“1”時燈滅。E.啟動時序電路(按動啟動按鈕“START”),既將微代碼寫入到E2PROM2816的相應地址對應的單元中。F.重復C—E步驟,將表4—2的微代碼寫入2816。2/6/2023112②校驗A.按實驗指導書上的步驟手動校驗;B.使用計算機組成原理集成軟件進行校驗。

2/6/2023113附:基本模型機設計實驗實驗目的通過在模型計算機上采用微程序設計方法實現(xiàn)簡單的指令系統(tǒng)來掌握微程序設計的一般方法,以及基于微程序控制器計算機的工作過程,建立計算機的整機概念。2/6/2023114實驗步驟(1)結合模型機的數(shù)據(jù)通路圖理解模型機指令的微程序流程圖及控制臺的微程序流程圖。(2)結合數(shù)據(jù)通路圖初步理解各微指令代碼。2/6/2023115(3)按實驗指導書連線。(4)將模型機調試程序及微程序通過集成軟件分別寫入內存及控存。(5)在集成軟件環(huán)境中運行調試程序,觀察每條機器指令的執(zhí)行流程與設計的流程是否一致,定義的微指令功能是否實現(xiàn)。

2/6/2023116實驗習題

在原有指令系統(tǒng)的基礎上,擴充一條減法指令,并重新設計一段調試程序,檢查指令的功能是否實現(xiàn)。2/6/2023117實驗習題解答步驟:(1)定義指令的格式(含操作碼)及功能(2)確定完成指令功能所需的基本操作(即指令流程)(3)根據(jù)起始微地址形成方法(即指令代碼與起始微地址的對應關系)確定該指令所對應的第一條微指令應存放的控存位置。2/6/2023118(4)根據(jù)直接給出下地址的方法確定其它微指令的微地址。(5)確定微每條微指令的所對應的代碼。(6)將改變后的全部微指令代碼寫入控存,微指令擴充完成。2/6/2023119幾點說明:(1)指令對應的微程序的入口地址是由指令操作碼確定的,即確定了操作碼就確定了微程序的入口地址。也就是說,若該地址被其它微指令占用,必須進行微地址調整。2/6/2023120例:若定義的減法指令格式及功能如下:助記符格式SUBaddr01010000…

功能:R0-[addr]R0則指令操作碼01010000,則經(jīng)過微地址形成電路得到的起始微地址為15(八進制),而15單元已被STA指令的微指令占用,此時必須調整。2/6/2023121(2)如何確定微指令的編碼?對于操作控制字段,可根據(jù)微指令的功能按數(shù)據(jù)通路圖來確定,(一種簡便的方法是參考原有的微指令代碼作相應變化);對于地址控制字段,先將微指令安排在空閑的控存中,然后按地址將其按序銜接。2/6/20231225.5硬布線控制器(組合邏輯型)1基本思想硬布線控制器是早期設計計算機控制器的一種方法。這種方法是把控制部件看作為產(chǎn)生專門固定時序控制信號的邏輯電路。這種邏輯電路是一種由門電路和觸發(fā)器構成的復雜樹形邏輯網(wǎng)絡,故稱之為硬布線控制器。2/6/20231232硬聯(lián)線控制器的結構如圖:

2/6/2023124邏輯網(wǎng)絡的輸入信號來源有三個:(1)來自指令操碼譯碼器的輸出Im;(2)來自執(zhí)行部件的反饋信息Bj;(3)來自時序產(chǎn)生器的時序信號。邏輯網(wǎng)絡N的輸出信號就是微操作控制信號,它用來對執(zhí)行部件進行控制。

2/6/20231253硬聯(lián)邏輯的模型機舉例2/6/20231262/6/20231272/6/20231282/6/2023129下面以LDA指令為例來說明組合邏輯控制器執(zhí)行指令的過程。LDAX功能是將X地址存儲單元的內容送入寄存器A。設指令譯碼器的譯碼結果為LDA=1,在該指令的6個節(jié)拍中控制字是如何實現(xiàn)指令功能的。2/6/2023130T0EP=1,LM=1T1LI=1,ER=1(將LDAX指令中的地址部分讀出至IR)T2CP=1(PC+1->PC)T3LM=1,EI=1(X->MAR)T4ER=1,LA=1([X]->A)T5該節(jié)排輪空2/6/2023131對于指令的執(zhí)行,可有幾種控制方式:

順序方式重疊方式先行控制流水線控制方式5.6流水線技術2/6/2023132順序方式指的是各條機器指令之間順序串行的執(zhí)行,即執(zhí)行完一條指令后,方可取出下一條指令來執(zhí)行。這種方式控制簡單,但速度慢,機器各部件的利用率低。為了加快指令的執(zhí)行速度,充分利用計算機系統(tǒng)的硬件資源,計算機中常采用重疊方式、先行控制方式,以及流水線控制方式。2/6/2023133

通常,一條指令的執(zhí)行過程可以分為3個階段:取指、分析、執(zhí)行。假定每個階段所需的時間為t,采用順序方式執(zhí)行n條指令所需的時間為T=3nt

5.6.1重疊控制2/6/2023134

最早出現(xiàn)的重疊是“取指K+1”和“執(zhí)行K”在時間上的重疊,稱為一次重疊,這將使處理機速度有所提高,所需執(zhí)行時間減少為T=3t+(n-1)2t=(2n+1)t2/6/2023135

如果進一步增加重疊,使“取指K+2”、“分析K+1”和“執(zhí)行K”重疊起來,稱為二次重疊,則處理機速度還可以進一步提高,所需執(zhí)行時間減少為T=3t+(n-1)t=(2+n)t2/6/2023136重疊控制方式2/6/2023137

先行控制是重疊控制的一種改進方式。在重疊控制中,“執(zhí)行K”和“分析K+1”重疊,如果所有指令的“分析”與“執(zhí)行”的時間均相等,則重疊的流程是非常流暢的,無任何阻礙,機器的指令分析部件和執(zhí)行部件功能充分地發(fā)揮,機器的速度也能顯著地提高。5.6.2先行控制原理2/6/2023138但是,現(xiàn)代計算機的指令系統(tǒng)很復雜,各種類型指令難于做到“分析”與“執(zhí)行”時間始終相等。此時,各個階段的控制部件就有可能出現(xiàn)間斷等待的問題。這樣,指令的分析部件和執(zhí)行部件都不能連續(xù)地、流暢地工作,從而使機器的整體速度受到影響。2/6/2023139

為了使各部件能連續(xù)地工作,則提出先行控制的方式。圖6-22中“分析”和“執(zhí)行”階段之間有等待的時間間隔Δt,但它們各自的流程中卻是連續(xù)的。先行控制的主要目的是使各階段的專用控制部件不間斷的工作,以提高設備的利用率及執(zhí)行速度。2/6/2023140

流水處理技術是在重疊、先行控制方式的基礎上發(fā)展起來的,它基于重疊的原理,但卻是在更高程度上的重疊。5.6.3流水工作原理2/6/2023141

流水線是將一個較復雜的處理過程分成m個復雜程度相當、處理時間大致相等的子過程,每個子過程由一個獨立的功能部件來完成,處理對象在各子過程連成的線路上連續(xù)流動。在同一時間,m個部件同時進行不同的操作,完成對不同子過程的處理。2/6/2023142

這種方式類似于現(xiàn)代工廠的生產(chǎn)流水線,在那里每隔一段時間(Δt)從流水線上流出一個產(chǎn)品,而生產(chǎn)這個產(chǎn)品的總時間要比Δt大得多。由于流水線上各部件并行工作,同時對多條指令進行解釋執(zhí)行,機器的吞吐率將大大

溫馨提示

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

評論

0/150

提交評論