版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1 第第4 4章章 控制器控制器本章主要討論:本章主要討論:運算器運算器 控制器控制器數(shù)據(jù)通路結(jié)構(gòu)數(shù)據(jù)通路結(jié)構(gòu)與外部的連接與外部的連接指令的執(zhí)行過程指令的執(zhí)行過程,微命令序列的形成微命令序列的形成CPUCPU邏輯邏輯組成組成CPUCPU工作原理工作原理2運算器運算器 控制器控制器數(shù)據(jù)通路結(jié)構(gòu)數(shù)據(jù)通路結(jié)構(gòu)與外部的連接與外部的連接指令的執(zhí)行過程指令的執(zhí)行過程,微命令序列的形成微命令序列的形成CPUCPU邏輯邏輯組成組成CPUCPU工作原理工作原理u CPU由哪些部件組成由哪些部件組成?u 各部件之間如何交換信息各部件之間如何交換信息?u CPU如何建立與外部的連接如何建立與外部的連接?u CPU如
2、何形成微命令序列如何形成微命令序列, 來控制指來控制指令的執(zhí)行令的執(zhí)行?3CPU的基本組成的基本組成l 運算部件組織和運算方法的實現(xiàn)運算部件組織和運算方法的實現(xiàn)l 通過一個通過一個CPU模型模型,討論討論CPU數(shù)據(jù)通路結(jié)數(shù)據(jù)通路結(jié)構(gòu)和指令的執(zhí)行過程構(gòu)和指令的執(zhí)行過程.1. 從從寄存器傳送級寄存器傳送級分析指令的分步執(zhí)行分析指令的分步執(zhí)行流程流程.2. 從從微操作控制級微操作控制級闡述寄存器傳送的具闡述寄存器傳送的具體實現(xiàn)體實現(xiàn).4* * 概述概述* * CPU CPU的基本組成的基本組成 通常通常,CPU,CPU包含運算部件、寄存器組、微命令包含運算部件、寄存器組、微命令產(chǎn)生部件、時序系統(tǒng)等主
3、要部件,這些部件由產(chǎn)生部件、時序系統(tǒng)等主要部件,這些部件由CPUCPU內(nèi)內(nèi)部的總線連接起來,實現(xiàn)它們之間的信號交換。其部的總線連接起來,實現(xiàn)它們之間的信號交換。其中運算部件和一部分寄存器屬于傳統(tǒng)運算器部分,中運算部件和一部分寄存器屬于傳統(tǒng)運算器部分,另一部分寄存器、微命令產(chǎn)生部件、時序系統(tǒng)等屬另一部分寄存器、微命令產(chǎn)生部件、時序系統(tǒng)等屬于傳統(tǒng)控制器部分。于傳統(tǒng)控制器部分。5運算部件運算部件 寄存器寄存器 寄存器寄存器控制部件控制部件運算器運算器控制器控制器運算器和一部分運算器和一部分R 另一部分另一部分R 微命令產(chǎn)生部件微命令產(chǎn)生部件 時序系統(tǒng)時序系統(tǒng)由由CPU內(nèi)總線連接這內(nèi)總線連接這些部件些
4、部件.6運算部件運算部件 寄存器寄存器 寄存器寄存器控制部件控制部件運算器運算器控制器控制器微型機微型機: CPU集成運算器和控制器集成運算器和控制器大巨型計算機大巨型計算機: 運算器仍需由多塊芯片構(gòu)成運算器仍需由多塊芯片構(gòu)成,與控制器保持相對獨立與控制器保持相對獨立.71. 運算部件運算部件對數(shù)據(jù)進(jìn)行加工處理。對數(shù)據(jù)進(jìn)行加工處理。(1)輸入邏輯)輸入邏輯(2)ALU(3)輸出邏輯)輸出邏輯移位器移位器ALUALU選擇器通用寄通用寄存器組存器組選擇器運算部件的檔次運算部件的檔次:n 只有一個只有一個ALUn 一個一個ALU,配合時序控制配合時序控制n 一個一個ALU,有定點乘除部件和浮點運算部
5、件有定點乘除部件和浮點運算部件n 設(shè)置多種運算部件設(shè)置多種運算部件82. 寄存器組寄存器組寄存器:寄存器:CPU在處理信息的過程中,用來暫時在處理信息的過程中,用來暫時存放各種信息。存放各種信息。(1)通用寄存器組)通用寄存器組 用戶可通過編程訪問的寄存器,在指令系用戶可通過編程訪問的寄存器,在指令系統(tǒng)中為它們分配了相應(yīng)的編號。指令中以統(tǒng)中為它們分配了相應(yīng)的編號。指令中以寄存寄存器號器號來指示。來指示。 通用寄存器通過編程,可以實現(xiàn)多種功能,通用寄存器通過編程,可以實現(xiàn)多種功能,如提供操作數(shù),存放運算結(jié)果,用作地址指針,如提供操作數(shù),存放運算結(jié)果,用作地址指針,作基址寄存器、變址寄存器等等。作
6、基址寄存器、變址寄存器等等。9獨立結(jié)構(gòu)獨立結(jié)構(gòu)小型存儲器結(jié)構(gòu)小型存儲器結(jié)構(gòu)單口單口雙口雙口寄存器組構(gòu)成形式寄存器組構(gòu)成形式 通用寄存器的命名可以是簡單地取名為通用寄存器的命名可以是簡單地取名為R0、R1、R2等。也可以根據(jù)各寄存器的基本任等。也可以根據(jù)各寄存器的基本任務(wù)來命名,如累加器務(wù)來命名,如累加器AX、基址寄存器、基址寄存器BX、計數(shù)、計數(shù)寄存器寄存器CX、數(shù)據(jù)寄存器、數(shù)據(jù)寄存器DX等等。等等。10(2)暫存器)暫存器 暫存器對編程者來說是透明的,即在程序暫存器對編程者來說是透明的,即在程序中不會出現(xiàn)。中不會出現(xiàn)。作用作用:暫時存放:暫時存放CPU處理過程中的臨時信息,處理過程中的臨時信
7、息,避免破壞通用寄存器的內(nèi)容。避免破壞通用寄存器的內(nèi)容。例如,實現(xiàn)從內(nèi)存的單元例如,實現(xiàn)從內(nèi)存的單元A傳送數(shù)據(jù)到另一個傳送數(shù)據(jù)到另一個單元單元B。從單元。從單元A讀出的數(shù)據(jù)先送到讀出的數(shù)據(jù)先送到CPU中的中的一個暫存器,然后再從暫存器送入單元一個暫存器,然后再從暫存器送入單元B。11(3)指令寄存器)指令寄存器IR作用作用:用來存放當(dāng)前正在執(zhí)行的指令??刂疲河脕泶娣女?dāng)前正在執(zhí)行的指令。控制器根據(jù)其內(nèi)容(操作碼以及地址信息)產(chǎn)生器根據(jù)其內(nèi)容(操作碼以及地址信息)產(chǎn)生所需要的各種微命令。所需要的各種微命令。 為了提高計算機的處理速度,現(xiàn)代計算為了提高計算機的處理速度,現(xiàn)代計算機一般將指令寄存器擴(kuò)充
8、為指令隊列(指令機一般將指令寄存器擴(kuò)充為指令隊列(指令棧)。形成了指令流水線處理方式棧)。形成了指令流水線處理方式.指令流水線指令流水線:一次預(yù)取多條指令,增加指令間一次預(yù)取多條指令,增加指令間執(zhí)行的銜接速度和并行處理能力。執(zhí)行的銜接速度和并行處理能力。12(4)程序計數(shù)器)程序計數(shù)器PC也叫指令計數(shù)器或指令指針。也叫指令計數(shù)器或指令指針。作用作用:指示指令在存儲器中的存放位置。:指示指令在存儲器中的存放位置。程序順序執(zhí)行時程序順序執(zhí)行時,每當(dāng)從主存中取出一條指,每當(dāng)從主存中取出一條指令后,令后,PC內(nèi)容就自動增量計數(shù)內(nèi)容就自動增量計數(shù)(pc=pc+1),指向下一條指令。指向下一條指令。程序發(fā)
9、生轉(zhuǎn)移時程序發(fā)生轉(zhuǎn)移時,將轉(zhuǎn)移地址送入,將轉(zhuǎn)移地址送入PC,使,使其指向轉(zhuǎn)移目的地的指令地址。其指向轉(zhuǎn)移目的地的指令地址。13(5)程序狀態(tài)字寄存器)程序狀態(tài)字寄存器PSW作用作用:記錄現(xiàn)行程序的:記錄現(xiàn)行程序的運行狀態(tài)運行狀態(tài)和指示程序的和指示程序的工作方式工作方式。PSW包括特征狀態(tài)位和方式控制位兩部分。包括特征狀態(tài)位和方式控制位兩部分。特征位特征位:進(jìn)位位:進(jìn)位位C、溢出位、溢出位V、零值位、零值位Z、符號、符號位位S、奇偶位、奇偶位P等。等。方式控制位方式控制位:跟蹤位:跟蹤位T、中斷允許位、中斷允許位I、程序優(yōu)、程序優(yōu)先級字段、工作方式字段等。先級字段、工作方式字段等。14(6)地址
10、寄存器)地址寄存器MAR作用作用:CPU訪問主存時,暫時存放所訪問單元訪問主存時,暫時存放所訪問單元地址。地址。CPU取指令時取指令時,先將,先將PC的內(nèi)容送入的內(nèi)容送入MAR,再,再由由MAR將指令的存放地址送往主存譯碼。將指令的存放地址送往主存譯碼。CPU存取數(shù)據(jù)時存取數(shù)據(jù)時,將數(shù)據(jù)的存放地址先送到,將數(shù)據(jù)的存放地址先送到MAR,再送往主存進(jìn)行地址譯碼。,再送往主存進(jìn)行地址譯碼。PCPCMARMARM,M,譯碼譯碼數(shù)據(jù)存放地址數(shù)據(jù)存放地址MARMARM,M,譯碼譯碼15(7)數(shù)據(jù)緩沖寄存器)數(shù)據(jù)緩沖寄存器MBR作用作用:存放:存放CPU與主存之間交換的數(shù)據(jù)。與主存之間交換的數(shù)據(jù)。 由由CP
11、U寫入主存的數(shù)據(jù)先送入寫入主存的數(shù)據(jù)先送入MBR,主,主存地址譯碼找到指定單元后,再將數(shù)據(jù)從存地址譯碼找到指定單元后,再將數(shù)據(jù)從MBR送入到該單元。送入到該單元。數(shù)據(jù)數(shù)據(jù)MBRMBR該單元該單元譯碼譯碼, ,尋址尋址寫入寫入16 從主存中讀出的數(shù)據(jù),先送入從主存中讀出的數(shù)據(jù),先送入MBR,然后,然后再送到指定的再送到指定的CPU內(nèi)部某寄存器。內(nèi)部某寄存器。 MAR和和MBR是連接是連接CPU與主存的橋梁,它們與主存的橋梁,它們可使可使CPU與主存之間的數(shù)據(jù)通路變得比較單一。與主存之間的數(shù)據(jù)通路變得比較單一。這兩個寄存器不能編程訪問,即對用戶透明。這兩個寄存器不能編程訪問,即對用戶透明。主存數(shù)據(jù)
12、主存數(shù)據(jù)MBRMBR某某R R譯碼譯碼, ,尋址尋址讀出讀出174.1 控制器分類、功能和組成控制器分類、功能和組成 在計算機內(nèi)部,程序的執(zhí)行過程體現(xiàn)為信息在計算機內(nèi)部,程序的執(zhí)行過程體現(xiàn)為信息的傳送,即在計算機中形成的傳送,即在計算機中形成控制流控制流和和數(shù)據(jù)流數(shù)據(jù)流。這些信息的傳送需要靠各種微命令來控制。這些信息的傳送需要靠各種微命令來控制。181、控制器的分類:、控制器的分類: 微命令產(chǎn)生部件可以是由一些組合微命令產(chǎn)生部件可以是由一些組合邏輯電路組成,也可以由專門的存儲邏邏輯電路組成,也可以由專門的存儲邏輯組成。它們分別對應(yīng)了輯組成。它們分別對應(yīng)了組合邏輯控制組合邏輯控制方式方式和和微程
13、序控制方式。微程序控制方式。192、控制器的功能:、控制器的功能: CPU中設(shè)置了微命令產(chǎn)生部件,它中設(shè)置了微命令產(chǎn)生部件,它根據(jù)指令提供的信息產(chǎn)生出各指令所需根據(jù)指令提供的信息產(chǎn)生出各指令所需要的各種微命令序列。要的各種微命令序列。203 3、控制器的組成:、控制器的組成:由寄存器、由寄存器、指令譯碼器、地址形成部件、微指令譯碼器、地址形成部件、微命令產(chǎn)生部件時序系統(tǒng)和中斷控命令產(chǎn)生部件時序系統(tǒng)和中斷控制邏輯部件等組成。(制邏輯部件等組成。(P93P93) 21一條指令的讀取與執(zhí)行一條指令的讀取與執(zhí)行,需要分步需要分步: 取指令取指令 取源操作數(shù)取源操作數(shù) 取目的操作數(shù)取目的操作數(shù) 執(zhí)行運算
14、操作執(zhí)行運算操作 存放結(jié)果存放結(jié)果每個階段再分為若干步每個階段再分為若干步, 微命令也是分步產(chǎn)生微命令也是分步產(chǎn)生224. 時序系統(tǒng)時序系統(tǒng) 計算機能夠有條不紊地自動執(zhí)行程序,計算機能夠有條不紊地自動執(zhí)行程序,很重要的一個原因就是它有一個提供精確時很重要的一個原因就是它有一個提供精確時間信號的時序系統(tǒng)。間信號的時序系統(tǒng)。 時序系統(tǒng)產(chǎn)生計算機所需要的各種時間信時序系統(tǒng)產(chǎn)生計算機所需要的各種時間信息,如息,如周期周期、節(jié)拍節(jié)拍、工作脈沖工作脈沖等。這些信號等。這些信號的產(chǎn)生依據(jù)是一個頻率穩(wěn)定的振蕩器,以及的產(chǎn)生依據(jù)是一個頻率穩(wěn)定的振蕩器,以及計數(shù)分頻器或倍頻器。計數(shù)分頻器或倍頻器。23CPU基本組
15、成基本組成 (整體框架圖整體框架圖)5. CPU內(nèi)部的數(shù)據(jù)通路結(jié)構(gòu)內(nèi)部的數(shù)據(jù)通路結(jié)構(gòu) CPU內(nèi)部各部件之間需要傳送信息,如寄存器將操作數(shù)送到ALU進(jìn)行運算,ALU將結(jié)果送到寄存器存放。如何將這些部件連接起來,為信息提供通路?這就涉及CPU內(nèi)部的數(shù)據(jù)結(jié)構(gòu),這是CPU組成的核心問題。24 通常,內(nèi)部較簡單的CPU 中,只設(shè)置一組數(shù)據(jù)傳送總線,用來連接CPU內(nèi)的寄存器與ALU部件,在微處理器中常將這組總線稱為ALU總線。在較復(fù)雜的CPU中,為了提高工作速度,可能設(shè)置了幾組數(shù)據(jù)總線,同時傳送多個數(shù)據(jù)。25 有的CPU中還包含了用于控制的存儲邏輯部件、管理內(nèi)存的地址變換部件,這樣除了數(shù)據(jù)線外,還有傳送地
16、址信息的地址總線。26 現(xiàn)在的CPU結(jié)構(gòu)都較復(fù)雜。例如,設(shè)置指令棧(稱為指令隊列),以便預(yù)取若干條指令;相應(yīng)的操作數(shù)棧;專用ROM(稱為控制存儲器)以存放微程序,用于存儲管理的段地址運算和頁地址運算的多個運算部件;片內(nèi)高速Cache等。2728特點特點:l 移位器只能向內(nèi)部總線發(fā)送數(shù)據(jù)移位器只能向內(nèi)部總線發(fā)送數(shù)據(jù),不能直接不能直接從內(nèi)總線上接收數(shù)據(jù)從內(nèi)總線上接收數(shù)據(jù)l 寄存器只能從內(nèi)總線上接收數(shù)據(jù)寄存器只能從內(nèi)總線上接收數(shù)據(jù),而不能直而不能直接向內(nèi)總線發(fā)送數(shù)據(jù)接向內(nèi)總線發(fā)送數(shù)據(jù)l ALU既是運算部件既是運算部件,又是又是CPU內(nèi)數(shù)據(jù)傳送通內(nèi)數(shù)據(jù)傳送通路的中心路的中心.4.2 時序控制與信息傳送
17、 我們知道:計算機在執(zhí)行指令時是分步進(jìn)行的,因此在微命令的形成邏輯中引入了時間標(biāo)志-時序信號,這樣,計算機的操作能在不同的時間段中有序地完成。而操作是受時序信號同步控制的。當(dāng)然,計算機機中也有一些操作,如系統(tǒng)總線上的一些數(shù)據(jù)傳送則不受時序信號同步控制。 通常,把時序信號分為同步控制和異步控制兩大類。29 1、同步控制方式、同步控制方式 指用統(tǒng)一發(fā)出的時序信號對各項操作進(jìn)行同步控制。這里的時序信號就是指具有周期、節(jié)拍、脈沖等信號。 在同步控制中,操作時間被劃分為許多長度固定的時間段,一個時間段就是一個節(jié)拍(時鐘周期)。每個時間周期完成一步操作。不同的計算機有不同的安排。30 如CPU內(nèi)部數(shù)據(jù)通路
18、的一次傳送操作安排在一個時鐘周期內(nèi)完成,因而時鐘周期較短;而訪問一次存儲器的時間作為一個時鐘周期時間,則時鐘周期較長。 時鐘周期是基本的時序單位,一旦確定便固定不變,這就是同步控制方式的主要特點。 31 CPU根據(jù)統(tǒng)一的時鐘周期為指令的執(zhí)行安排嚴(yán)格的時間表,各操作必須按時間表執(zhí)行,即在規(guī)定的時鐘周期內(nèi)完成本步操作,時鐘周期一結(jié)束,本步操作也結(jié)束,并開始下一步操作。各步操作間的銜接由時鐘周期自動切換來控制。32 有許多操作要求在約定的時刻同步定時執(zhí)行。例如加法運算中,由于進(jìn)位傳遞的延遲,加法器各位形成穩(wěn)定的結(jié)果需要一段時間,而將結(jié)果送入目的寄存器的時刻則是嚴(yán)格定時的,這就需要產(chǎn)生一種統(tǒng)一的同步打
19、入(送入)脈沖,在脈沖的上升沿時刻打入運算結(jié)果。33 時鐘周期提供加法運算的時間段。同步打入脈沖決定打入運算結(jié)果的時刻。在一個CPU中可能同時有幾個數(shù)據(jù)傳送操作,如將寄存器R0的內(nèi)容同時送入寄存器、,一般需要將它們的打入脈沖同步定時在同一時刻。34 通常,在CPU內(nèi)部有一組時序信號系統(tǒng),產(chǎn)生統(tǒng)一的時序信號來控制CPU內(nèi)部的各項操作各部件之間的數(shù)據(jù)傳送。在一個計算機系統(tǒng)中,主存、各外部設(shè)備都有自己的時序系統(tǒng),產(chǎn)生相應(yīng)的時序信號控制設(shè)備內(nèi)的操作。這里就存在一個問題: CPU、主存與外部設(shè)備之間的數(shù)據(jù)傳送怎樣協(xié)調(diào)控制?35 在同步控制方式中,一般由CPU提供統(tǒng)一的時序信號來控制它們的操作。例如:由C
20、PU提供時鐘周期,發(fā)出輸入脈沖或輸出脈沖,在一個或多個時鐘周期內(nèi)完成數(shù)據(jù)在總線上的傳送,用輸入脈沖或輸出脈沖對數(shù)據(jù)的接收進(jìn)行定時。36 同步控制方式優(yōu)點:1、時序關(guān)系簡單2、時序劃分規(guī)整3、控制結(jié)構(gòu)易于集中,設(shè)計方便。 所以,在CPU內(nèi)部、主存、外設(shè)等均廣泛采用同步控制方式。37 同步控制方式缺點:1、時間安排不合理。2、時間的利用不經(jīng)濟(jì)。 所以,在系統(tǒng)總線上的信息傳送可采用異步控制方式。38 2、異步控制方式、異步控制方式 是指各項操作不受統(tǒng)一時序信號(如時鐘周期)的約束,而是根據(jù)實際需要安排不同的時間。各操作之間的銜接、各部件之間的數(shù)據(jù)傳送均采用異步應(yīng)答方式。 由于時序系統(tǒng)不為操作預(yù)先安排
21、固定時間,異步控制方式中采用應(yīng)答方式(申請、響應(yīng)、詢問和回答)來了解操作時間的開始和結(jié)束。 39 應(yīng)答的雙方分別稱為主設(shè)備和從設(shè)備。主設(shè)備是指申請并掌握總線控制權(quán)的設(shè)備(主動的一方),從設(shè)備是指響應(yīng)主設(shè)備要求的設(shè)備(被動的一方)從設(shè)備不能掌握總線控制權(quán)。應(yīng)答過程由主設(shè)備啟動。40 3、同步控制在實際應(yīng)用中的變化、同步控制在實際應(yīng)用中的變化 一般來講,在CPU或設(shè)備內(nèi)部的操作中普遍采用同步控制方式。在CPU、主存和外部設(shè)備的系統(tǒng)總線上,有的采用同步控制方式,則有的采用異步控制方式來控制總線傳送操作。同步控制不復(fù)雜,而異步控制方式則能按需要分配時間。41 因此,在實際應(yīng)用中,是把兩種方式的優(yōu)點結(jié)合
22、起來:(1)不同指令安排不同的時鐘周期數(shù)。(2)總線周期中允許插入延長周期。(3)同步方式中引入異步應(yīng)答。42 43l 在設(shè)計CPU時,不僅要考慮主機內(nèi)部的信息傳遞(如CPU內(nèi)部、CPU與主存間的傳遞),還要考慮主機與外部設(shè)備間的信息交換。由于VLSI的發(fā)展,CPU已被集成為一塊芯片。人們更為關(guān)心的是CPU與外部的連接、信息傳遞方式等。l 44l一、主機與外設(shè)連接模式 l 主機與外設(shè)的信息交換是通過其間的數(shù)據(jù)傳送通路來實現(xiàn)。傳送通路的連接模式可分為:l1、輻射型l2、總線型l3、通道型。 45l 1.1.輻射式輻射式 主機主機I/OI/OI/OI/OI/OI/O早期:不易擴(kuò)展早期:不易擴(kuò)展 主
23、機主機 接口接口 接口接口I/OI/OI/OI/OI/OI/O現(xiàn)在:便于擴(kuò)展現(xiàn)在:便于擴(kuò)展 46l 2.2.總線式總線式 主機主機 接口接口 接口接口 I/OI/O I/OI/O便于擴(kuò)展便于擴(kuò)展總線總線 總線型連接常用于微機、小型機。例如Pentium PC機,設(shè)置了三種不同速度的系統(tǒng)總線:CPU總線、PCI總線、ISA總線。CPU總線連接Pentium CPU與主存、片外高速緩存;PCI總線連接高性能顯示卡、高速局網(wǎng)卡、SCSI盤卡等高速I/O設(shè)備;ISA總線連接打印機、調(diào)制解調(diào)器等低速I/O設(shè)備。47 48l l I/OI/O3.3.通道式通道式 主機主機 通道通道 通道通道I/OI/OI
24、/OI/OI/OI/O并行能力提高并行能力提高 在較大型的計算機系統(tǒng)中,由于外設(shè)種類多、數(shù)量大,需要設(shè)置專門的控制部件來管理I/O操作-通道。就是把星型與總線型結(jié)合的多級連接模式。 主機采用星型方式,通過多個獨立通路與若干通道連接,每個通道再按總線方式連接多臺外設(shè),不同速度的外設(shè)接入不同的通道上。49 4.2.5 信息傳遞控制方式信息傳遞控制方式主機與外設(shè)間是怎樣控制信息的傳送?何時啟動外設(shè)、何時傳送信息通常,可以通過三種控制方式完成:50 1、直接程序傳送方式、直接程序傳送方式 就是CPU現(xiàn)行程序中通過直接執(zhí)行I/O指令來實現(xiàn)信息的傳送。由于啟動外設(shè)和數(shù)據(jù)交換均在同一段程序中進(jìn)行,因此CPU
25、在啟動外設(shè)后只能查詢外設(shè)的狀態(tài),等待外設(shè)準(zhǔn)備好或完成一次操作,再用I/O指令與外設(shè)進(jìn)行數(shù)據(jù)交換。也稱為程序查詢方式。 主要是CPU查詢外設(shè)的狀態(tài),根據(jù)外設(shè)狀態(tài)決定需要完成的操作。51 52l 2.2.程序中斷傳送方式程序中斷傳送方式查詢方式查詢方式(1 1)中斷的引入)中斷的引入程序程序并行操作并行操作主機主機外設(shè)外設(shè)空閑空閑啟動啟動等待等待工作工作程序程序交換數(shù)據(jù)交換數(shù)據(jù)中斷:中斷:主機主機程序程序外設(shè)外設(shè)空閑空閑啟動啟動工作工作程序程序請求請求中斷程序中斷程序交換數(shù)據(jù)交換數(shù)據(jù)程序程序 (2)中斷定義)中斷定義 在查詢方式中CPU啟動外設(shè)工作后,之所以要查詢等待,是為了確定外設(shè)何時完成工作。
26、這種CPU主動查詢也可改為由外設(shè)主動報告。這樣,在外設(shè)工作期間,CPU不等待而繼續(xù)執(zhí)行原來的程序,即CPU與外設(shè)在這段時間內(nèi)是并行工作。 53 當(dāng)外設(shè)準(zhǔn)備好或完成一次操作后,主動向CPU提出請求;CPU收到該請求后便可以與外設(shè)進(jìn)行數(shù)據(jù)傳送。 在CPU執(zhí)行程序期間,外設(shè)何時提出請求完全是隨機的,因而不可能將數(shù)據(jù)傳送工作預(yù)先安排在放在另一段程序里(這里所指的程序就是我們常說的中斷程序)。54 CPU收到隨機中斷請求后,收到隨機中斷請求后,暫時停止現(xiàn)行程序的執(zhí)行,轉(zhuǎn)暫時停止現(xiàn)行程序的執(zhí)行,轉(zhuǎn)去執(zhí)行為隨機事件服務(wù)的中斷去執(zhí)行為隨機事件服務(wù)的中斷處理程序,處理完畢后自動恢處理程序,處理完畢后自動恢復(fù)原來
27、程序的執(zhí)行。復(fù)原來程序的執(zhí)行。55 這里的隨機事件泛指故障、某個到時的控制信號、程序執(zhí)行中出現(xiàn)無法預(yù)測的隨機事件等。 中斷方式是通過執(zhí)行中斷處理程序來處理隨機事件的。中斷處理程序又稱為中斷服務(wù)程序或中斷子程序,是按處理過程事先編制好的。 56 57l 響應(yīng)響應(yīng)邏輯邏輯設(shè)備工作完成設(shè)備工作完成判優(yōu)判優(yōu)邏輯邏輯請求請求邏輯邏輯屏蔽屏蔽邏輯邏輯非屏蔽非屏蔽CPUCPU送屏蔽字送屏蔽字( (動態(tài)改變設(shè)動態(tài)改變設(shè) 備優(yōu)先級備優(yōu)先級) )設(shè)備提出請求設(shè)備提出請求判別設(shè)備優(yōu)先級判別設(shè)備優(yōu)先級CPUCPU響應(yīng)請求,響應(yīng)請求,并轉(zhuǎn)相應(yīng)服務(wù)并轉(zhuǎn)相應(yīng)服務(wù)程序入口程序入口CPUCPU接口接口注意區(qū)分注意區(qū)分CPUCP
28、U對請求的對請求的屏蔽屏蔽和對請求的和對請求的響應(yīng)響應(yīng)。送屏蔽字送屏蔽字開開/ /關(guān)中斷關(guān)中斷CPU禁止禁止/允允許設(shè)備請求許設(shè)備請求 58l l 啟動外設(shè)啟動外設(shè)一條指令結(jié)束一條指令結(jié)束時有中斷請求?時有中斷請求?N NY Y繼續(xù)原程序繼續(xù)原程序(3 3)中斷流程)中斷流程CPUCPU內(nèi)設(shè)置允許中斷標(biāo)志內(nèi)設(shè)置允許中斷標(biāo)志=1 =1 允許響應(yīng)中斷允許響應(yīng)中斷(開中斷)(開中斷)=0 =0 不允許響應(yīng)中斷不允許響應(yīng)中斷(關(guān)中斷)(關(guān)中斷) 開中斷開中斷執(zhí)行中斷執(zhí)行中斷服務(wù)程序服務(wù)程序繼續(xù)原程序繼續(xù)原程序響應(yīng)響應(yīng)返回返回 中斷服務(wù)程序可以擴(kuò)充,所以其處理能力很強。它可以處理非常復(fù)雜的隨機事件。但在
29、中斷服務(wù)程序與原來執(zhí)行的程序間切換需要一定的時間,這樣就會影響到中斷處理的速度。所以,中斷方式更適合于中、低速的I/O操作。59 (4)應(yīng)用場合)應(yīng)用場合 用于中、低速用于中、低速I/O操作或處理復(fù)雜隨機事操作或處理復(fù)雜隨機事態(tài)。態(tài)。 對于高速的如磁盤等設(shè)備的I/O操作,則采用直接存儲器存?。ㄔL問)方式-DMA。60 3、DMA傳送方式傳送方式 這是直接依靠硬件在主存與I/O設(shè)備間傳送數(shù)據(jù)的一種工作方式。在傳送期間,不需要CPU執(zhí)行程序進(jìn)行干預(yù)。 6162 早期的計算機系統(tǒng)中,由早期的計算機系統(tǒng)中,由CPUCPU發(fā)送命發(fā)送命令控制令控制DMADMA傳送,即傳送,即CPUCPU響應(yīng)設(shè)備提出的響應(yīng)
30、設(shè)備提出的DMADMA請求之后,在一個周期內(nèi)暫停執(zhí)行程請求之后,在一個周期內(nèi)暫停執(zhí)行程序(不進(jìn)行程序切換),實現(xiàn)序(不進(jìn)行程序切換),實現(xiàn)DMADMA傳送。傳送。這個周期稱為這個周期稱為DMADMA周期。這種方式稱為周周期。這種方式稱為周期挪用或周期竊取。期挪用或周期竊取。 在現(xiàn)代計算機系統(tǒng)中,是通過設(shè)置一種專用的控制器-DMA控制器,即DMA控制器。CPU響應(yīng)DMA請求后,暫停使用系統(tǒng)總線和訪存,由DMA控制器掌握總線權(quán),在DMA周期中發(fā)出命令,實現(xiàn)主存與I/O設(shè)備間的DMA傳送。CPU僅暫停執(zhí)行程序而不是切換程序,因而不必保存斷點、現(xiàn)場等信息,響應(yīng)速度大為提高。63 在DMA操作前,還必須
31、確定:從主存的哪個單元開始傳送?數(shù)據(jù)量有多大?是從主存?zhèn)魍庠O(shè)還是外設(shè)傳主存?與外設(shè)的什么地址交換數(shù)據(jù)?這些問題無法直接通過硬件解決,需由程序事先準(zhǔn)備相關(guān)控制信息-DMA的初始化操作。另外:一批數(shù)據(jù)傳送后如何判斷是否正確,也需通過中斷方式處理。也就是說:DMA傳送前和傳送后都需要CPU執(zhí)行程序來干預(yù)。64 傳送方向傳送方向:即是輸入還是輸出。該信息可以包括在控制字中,由程序送到DMA控制器中的有關(guān)控制邏輯。主存緩沖區(qū)首地址主存緩沖區(qū)首地址:為了與主存進(jìn)行數(shù)據(jù)傳送,需在主存中劃一個對應(yīng)于外設(shè)的緩沖區(qū),從緩沖區(qū)向外設(shè)輸出數(shù)據(jù)或由外設(shè)向緩沖區(qū)輸入數(shù)據(jù)。65 為此,在DMA 控制器中設(shè)置一個地址計數(shù)器,
32、初始化時將主存緩沖區(qū)首地址送入該計數(shù)器,以后每傳一個數(shù)據(jù)便修改該計數(shù)值,使它指向下一個數(shù)據(jù)所對應(yīng)的主存地址。66 交換數(shù)據(jù)量交換數(shù)據(jù)量:通常,啟動一次DMA要傳送一批數(shù)據(jù),每次DMA初始化后將要傳送一個或幾個數(shù)據(jù)塊。這樣,就必須給出起始地址、傳送量(如字節(jié)數(shù)或數(shù)據(jù)塊數(shù))。DMA控制器中也設(shè)置一 個計數(shù)器來控制傳送數(shù)據(jù)的結(jié)束。外設(shè)尋址信息外設(shè)尋址信息:這是如磁盤驅(qū)動器號、磁道號、磁頭號、起始數(shù)據(jù)塊號等。這些信息通常由程序送入DMA接口的相應(yīng)邏輯中。67 CPU在完成初始化后,啟動有關(guān)外部設(shè)備(如磁盤存儲器;然后CPU可以繼續(xù)執(zhí)行自己的程序。當(dāng)外部設(shè)備準(zhǔn)備好傳送一 個數(shù)據(jù)的條件,就向CPU提出請求
33、。 CPU響應(yīng)后進(jìn)入DMA周期,由DMA控制器接管系統(tǒng)總線權(quán),在主存緩沖區(qū)和磁盤接口間進(jìn)行一次傳送。當(dāng)準(zhǔn)備好下一個數(shù)據(jù)的傳送,外設(shè)再次向CPU提出請求。若干次DMA請求,占用數(shù)次DMA周期來完成所要求的數(shù)據(jù)傳送。68 在DMA傳送期間,CPU程序并不干預(yù)。如果傳送中存在錯誤,將由有關(guān)的狀態(tài)字記錄下來,留待DMA批量傳送結(jié)束后再作善后處理。通常,在批量傳送結(jié)束時,由外設(shè)接口向CPU發(fā)出中斷請求,CPU通過調(diào)用中斷處理程序進(jìn)行處理。所以,DMA傳送是:DMA方式實現(xiàn)快速的數(shù)據(jù)直接傳送,中斷方式處理復(fù)雜的事態(tài)(如善后處理)。 后面給出DMA方式才流程圖。69 70l DMADMA初始化初始化啟動啟動
34、I/OI/O設(shè)備設(shè)備DMADMA請求請求DMADMA請求請求中斷請求中斷請求響應(yīng)響應(yīng)返回返回結(jié)束處理結(jié)束處理(DMADMA傳送)傳送)DMADMA方式的程序組織方式的程序組織 響應(yīng)DMA請求后的DMA傳送是在DMA控制器硬件控制下實現(xiàn)的,并不是執(zhí)行程序(指令);編制程序時無需考慮,所以圖中以括號標(biāo)注的程序并不存在硬件隱指令操作。71 綜上所述,DMA實現(xiàn)的思想:由CPU通過執(zhí)行程序?qū)MA進(jìn)行初始化,將有關(guān)控制信息發(fā)給DMA控制器,CPU不再干預(yù);以后以響應(yīng)隨機請求方式,由DMA控制器實現(xiàn)DMA傳送;批量結(jié)束時,CPU以響應(yīng)中斷請求方式進(jìn)行結(jié)束處理。72 73l (2 2)硬件設(shè)置)硬件設(shè)置
35、操作類型操作類型 地址計數(shù)地址計數(shù)控制傳送方向控制傳送方向DMADMA控制器控制器接口接口提供主存地址提供主存地址 交換量計數(shù)交換量計數(shù)控制傳送次數(shù)控制傳送次數(shù) 請求請求DMADMA中斷中斷 數(shù)據(jù)緩沖數(shù)據(jù)緩沖傳遞請求傳遞請求暫存交換數(shù)據(jù)暫存交換數(shù)據(jù) 外設(shè)尋址外設(shè)尋址提供外設(shè)地址提供外設(shè)地址初始化信息初始化信息 74l 啟動外設(shè)啟動外設(shè) 一個總線周期結(jié)一個總線周期結(jié) 束時有束時有DMADMA請求?請求?N NY Y 繼續(xù)程序繼續(xù)程序傳送初始化:傳送操作類型、傳送初始化:傳送操作類型、主存首址、交換量、外設(shè)尋主存首址、交換量、外設(shè)尋址信息址信息一次一次DMADMA傳送傳送 地址地址+ +1 交換量
36、交換量- -1 一條指令結(jié)束一條指令結(jié)束 時有中斷請求?時有中斷請求?中斷處理中斷處理Y Y交換量交換量=0=0?N NY Y申請中斷申請中斷N N響應(yīng)響應(yīng) 75l 主程序主程序?qū)崿F(xiàn)初始化。實現(xiàn)初始化。DMADMA傳送的三個階段:傳送的三個階段:程序準(zhǔn)備:程序準(zhǔn)備:DMADMA傳送:傳送:善后處理:善后處理:硬件硬件實現(xiàn)實現(xiàn)M MI/OI/O。中斷處理程序中斷處理程序判斷傳送的正誤。判斷傳送的正誤。 DMA DMA方式只占用系統(tǒng)總線,不切換程序,不方式只占用系統(tǒng)總線,不切換程序,不需要保存和恢復(fù)斷點、保護(hù)和恢復(fù)現(xiàn)場等操需要保存和恢復(fù)斷點、保護(hù)和恢復(fù)現(xiàn)場等操作。因此能進(jìn)行快速處理。作。因此能進(jìn)行
37、快速處理。 76l 應(yīng)用場合應(yīng)用場合用于高速、簡單、批量數(shù)據(jù)用于高速、簡單、批量數(shù)據(jù)傳送。傳送。DMADMA與中斷的相同點:與中斷的相同點:能響應(yīng)隨機請求;可并行操作。能響應(yīng)隨機請求;可并行操作。DMADMA與中斷的不同點:與中斷的不同點:中斷:用程序?qū)崿F(xiàn)中、低速中斷:用程序?qū)崿F(xiàn)中、低速I/OI/O傳送;能處理復(fù)雜傳送;能處理復(fù)雜 一條指令結(jié)束時響應(yīng)請求。一條指令結(jié)束時響應(yīng)請求。事態(tài);事態(tài);DMADMA:用硬件實現(xiàn)高速、簡單用硬件實現(xiàn)高速、簡單I/OI/O傳送;一個總線傳送;一個總線 周期結(jié)束時響應(yīng)請求。周期結(jié)束時響應(yīng)請求。 程序切換程序切換總線權(quán)切換總線權(quán)切換 DMA的優(yōu)點是傳送速度快、傳送
38、操作簡單。適合高速外設(shè)與主存間的批量數(shù)據(jù)傳送。 實際工作中,是采用中斷方式還是DMA方式,要根據(jù)具體情況和環(huán)境來定。774.4 組合邏輯控制器組合邏輯控制器概述組合邏輯控制器概述 在CPU中,控制器的作用是決定在什么時間、根據(jù)什么條件、發(fā)什么命令、做什么操作。因此產(chǎn)生微命令的依據(jù)是時間(如周期、節(jié)拍、脈沖等時序信號)、指令代碼(如操作碼、尋址方式、寄存器號)、狀態(tài)(如CPU內(nèi)部的程序狀態(tài)字、外設(shè)的狀態(tài))、外部請求(如控制臺請求、外部中斷請求、DMA請求)等。78 按照微命令的形成方式,控制器分為組合邏輯控制器、微程序控制器。79 這些信息可作為邏輯變量,經(jīng)組合邏輯電路產(chǎn)生微命令序列;也可形成相
39、應(yīng)的微程序地址,通過執(zhí)行微指令直接產(chǎn)生微命令序列。80 81l 1.1.組合邏輯控制器的時序劃分組合邏輯控制器的時序劃分即時序信號與操作的關(guān)系即時序信號與操作的關(guān)系 采用三級時序系統(tǒng):采用三級時序系統(tǒng):指令周期指令周期工作周期工作周期1 1工作周期工作周期2 2工作周期工作周期n n時鐘周期時鐘周期1 1時鐘周期時鐘周期2 2時鐘周期時鐘周期m m.工作脈沖工作脈沖1 1工作脈沖工作脈沖2 2工作脈沖工作脈沖k k.( (節(jié)拍節(jié)拍1)1)( (節(jié)拍節(jié)拍2)2)( (節(jié)拍節(jié)拍m)m) 82 2 2、 時序關(guān)系:時序關(guān)系:振蕩器輸出振蕩器輸出工作周期工作周期1 1工作周期工作周期2 2工作周期工作
40、周期3 3時鐘時鐘T1T1工作脈沖工作脈沖P P時鐘時鐘T2T2指令周期指令周期控制不同階段操作時間控制不同階段操作時間控制分步操作時間控制分步操作時間對微操作定時對微操作定時取指取指執(zhí)行執(zhí)行取數(shù)取數(shù)取出指令取出指令修改修改PC打入打入IR打入打入PC 3、組合邏輯控制器、組合邏輯控制器 由于每個微命令的產(chǎn)生都需要邏輯條件和時間條件,把條件作為輸入,微命令作為輸出,它們之間的關(guān)系可用邏輯表達(dá)式來表示,并可用組合邏輯電路來實現(xiàn)。每種微命令需要一組邏輯電路,全機所有微命令所需的邏輯電路構(gòu)成了微命令發(fā)生器。 83 執(zhí)行指令時,由組合邏輯電路(微命令發(fā)生器)在相應(yīng)時間發(fā)出所需的微命令,控制有關(guān)操作。這
41、種產(chǎn)生微命令的方式就是組合邏輯控制方式。84 通常,組合邏輯控制器包括:微命令發(fā)生器、指令寄存器IR、程序計數(shù)器PC、狀態(tài)寄存器PSW、時序系統(tǒng)等部件。 微命令發(fā)生器由若干門電路組成。85 86l 微命令微命令發(fā)生器發(fā)生器微命令序列微命令序列I/OI/O狀態(tài)狀態(tài)控制臺信息控制臺信息運行狀態(tài)運行狀態(tài)譯碼譯碼. PSW PSW 時序時序 IR IR地址形成地址形成PCPCD尋尋來自來自M送送M或或ALU+1送送M 874.4.時序控制方式及其變化時序控制方式及其變化(1 1)同步控制)同步控制各項操作受統(tǒng)一時序控制。各項操作受統(tǒng)一時序控制。定義:定義:特點:特點:有明顯時序時間劃分;有明顯時序時間
42、劃分;時鐘周期時間固定;時鐘周期時間固定;各步操作的銜接、各部件之間的數(shù)據(jù)傳各步操作的銜接、各部件之間的數(shù)據(jù)傳 送受嚴(yán)格同步定時控制。送受嚴(yán)格同步定時控制。各項操作受各項操作受統(tǒng)一時序統(tǒng)一時序控制??刂?。由由CPUCPU或或其他設(shè)備其他設(shè)備提供提供優(yōu)缺點:優(yōu)缺點:控制邏輯易于集中,便于管理??刂七壿嬕子诩?,便于管理。時序關(guān)系簡單,時序劃分規(guī)整,控制不復(fù)雜;時序關(guān)系簡單,時序劃分規(guī)整,控制不復(fù)雜;但時間安排不合理。但時間安排不合理。 88應(yīng)用場合:應(yīng)用場合:用于用于CPUCPU內(nèi)部、設(shè)備內(nèi)部、系統(tǒng)總線操作內(nèi)部、設(shè)備內(nèi)部、系統(tǒng)總線操作( (各掛接各掛接部件速度相近,傳送時間確定,傳送距離較近部件
43、速度相近,傳送時間確定,傳送距離較近) )。(2 2)異步控制)異步控制 各項操作按不同需要安排時間,不受統(tǒng)各項操作按不同需要安排時間,不受統(tǒng)一時序控制。一時序控制。定義:定義:特點:特點: 無統(tǒng)一時鐘周期劃分;無統(tǒng)一時鐘周期劃分;各操作間的銜接和各部件之間的信息交換采各操作間的銜接和各部件之間的信息交換采用異步應(yīng)答方式。用異步應(yīng)答方式。 89l 例例. .總線的異步傳送操作總線的異步傳送操作 主設(shè)備:主設(shè)備:申請并掌握總線權(quán)的設(shè)備。申請并掌握總線權(quán)的設(shè)備??偩€總線主主從從 從設(shè)備:從設(shè)備:響應(yīng)主設(shè)備請求的設(shè)備。響應(yīng)主設(shè)備請求的設(shè)備。發(fā)發(fā)/接接接接/發(fā)發(fā) 90主設(shè)備獲得總線控制權(quán)主設(shè)備獲得總線
44、控制權(quán) 操作流程:操作流程: 主設(shè)備詢問從設(shè)備主設(shè)備詢問從設(shè)備主設(shè)備發(fā)送主設(shè)備發(fā)送/ /接收數(shù)據(jù)接收數(shù)據(jù)主設(shè)備釋放總線控制權(quán)主設(shè)備釋放總線控制權(quán) 從設(shè)備準(zhǔn)備好?從設(shè)備準(zhǔn)備好?YN主設(shè)備輸出端與總線連接主設(shè)備輸出端與總線連接主設(shè)備輸出端與總線斷開主設(shè)備輸出端與總線斷開 91時間安排緊湊、合理;時間安排緊湊、合理;但控制復(fù)雜。但控制復(fù)雜。優(yōu)缺點:優(yōu)缺點:應(yīng)用場合:應(yīng)用場合: 用于異步總線操作用于異步總線操作( (各掛接部件速度各掛接部件速度差異大,傳送時間不確定,傳送距離較遠(yuǎn)差異大,傳送時間不確定,傳送距離較遠(yuǎn)) )。(3 3)同步方式的變化)同步方式的變化指令周期長度可變,時鐘周期長度不變。指令
45、周期長度可變,時鐘周期長度不變。不同指令安排不同時鐘周期數(shù)不同指令安排不同時鐘周期數(shù)總線周期中插入延長周期總線周期中插入延長周期經(jīng)總線傳送一次數(shù)據(jù)所用的時間經(jīng)總線傳送一次數(shù)據(jù)所用的時間( (送地址、讀送地址、讀/ /寫寫) ) 92總線周期長度可變,時鐘周期長度不變??偩€周期長度可變,時鐘周期長度不變??偩€周期總線周期( (4T) )例例. .一個總線周期包含一個總線周期包含4 4個時鐘周期個時鐘周期時鐘時鐘T1T3T2T4送地址送地址讀讀/寫數(shù)據(jù)寫數(shù)據(jù) 結(jié)束結(jié)束同步方式同步方式時鐘時鐘T1T3T2T4T4T4Tw送地址送地址讀讀/寫數(shù)據(jù)寫數(shù)據(jù) 結(jié)束結(jié)束總線周期總線周期( (5T) )擴(kuò)展同步
46、方式擴(kuò)展同步方式 93同步方式引入異步應(yīng)答同步方式引入異步應(yīng)答以固定時鐘周期作為時序基礎(chǔ),引入應(yīng)答思想以固定時鐘周期作為時序基礎(chǔ),引入應(yīng)答思想例例.8088.8088最大模式,用一根最大模式,用一根總線請求總線請求/ /應(yīng)答應(yīng)答線實現(xiàn)線實現(xiàn)總線權(quán)的轉(zhuǎn)移??偩€權(quán)的轉(zhuǎn)移。設(shè)備請求設(shè)備請求總線權(quán)總線權(quán)RQ/GTRQ/GTCPUCPU使用使用總線總線CPUCPU使用使用總線總線CPUCPU使用使用總線總線設(shè)備使用設(shè)備使用總線總線設(shè)備設(shè)備設(shè)備設(shè)備CPUCPUCPUCPU響應(yīng),響應(yīng),總線權(quán)交設(shè)備總線權(quán)交設(shè)備CPUCPU設(shè)備釋放設(shè)備釋放總線權(quán)總線權(quán)CPUCPU設(shè)備設(shè)備若干時鐘若干時鐘若干時鐘若干時鐘 94l
47、4.5 微程序控制器微程序控制器l 所謂微程序控制方式,是指微命令是由微指令產(chǎn)生的。一條機器指令可分若干步執(zhí)行,將每一步操作所需的若干微命令以代碼形式編寫在一條微指令中,若干條微指令組成一段微程序,對應(yīng)一條機器指令。在設(shè)計CPU時,根據(jù)指令系統(tǒng)的需要,事先編好各段微程序,并存放在一專用ROM(控制存儲器)中。 95l 微程序控制器與組合邏輯控制器最大的不同之處是微命令產(chǎn)生部件的實體不是一些組合邏輯電路的集合,而是由一個控制存儲器CM和相應(yīng)的微指令寄存器等部件。l CM是一個只讀存儲器,結(jié)構(gòu)比較規(guī)整。對于不同的指令系統(tǒng),僅改變CM的內(nèi)容和容量。 96l 微地址微地址形成電路形成電路 IR PSW
48、 PC微地址寄存器微地址寄存器 AR控制存儲器控制存儲器CM 譯碼器譯碼器微命令序列微命令序列微命令字段微命令字段 微地址字段微地址字段IR控制存儲器控制存儲器CM例題:某微型機的設(shè)計下面以一位加法單元說明其工作流程。 97加法單元加法單元 i本位操作數(shù)本位操作數(shù)A Ai iB Bi i低位進(jìn)位低位進(jìn)位C Ci-i-1 1本位進(jìn)位本位進(jìn)位 C Ci i本位和本位和 i i圖圖3 316 16 一位加法單元示意圖一位加法單元示意圖*模型機 CPU的設(shè)計 前面我們討論了CPU組織有關(guān)的內(nèi)容:邏輯組成、時序控制、運算部件、運算方法。現(xiàn)在將把前面的內(nèi)容用于設(shè)計一臺模型機,讓同學(xué)們進(jìn)一步建立整機概念,了
49、解CPU的工作機制、執(zhí)行指令以及如何產(chǎn)生微命令序列。9899* * *CPUCPU設(shè)計步驟設(shè)計步驟設(shè)計步驟:設(shè)計步驟:擬定指令系統(tǒng)擬定指令系統(tǒng)確定總體結(jié)構(gòu)確定總體結(jié)構(gòu)安排時序安排時序擬定指令流程和微命令序列。擬定指令流程和微命令序列。形成控制邏輯形成控制邏輯格式、尋址方式、格式、尋址方式、指令類型設(shè)置指令類型設(shè)置寄存器、寄存器、ALUALU、數(shù)、數(shù)據(jù)通路設(shè)置據(jù)通路設(shè)置畫流程圖畫流程圖( (寄存器傳送級寄存器傳送級) )列操作時間表列操作時間表組:列邏輯式,形組:列邏輯式,形成邏輯電路成邏輯電路微:按微指令格式微:按微指令格式編寫微程序編寫微程序100* * *模型機的指令系統(tǒng)模型機的指令系統(tǒng)一
50、一. .指令格式指令格式指令字長指令字長1616位,采用寄存器型尋址,指令中位,采用寄存器型尋址,指令中給出寄存器號。給出寄存器號。 (主存容量為(主存容量為64K64K1616位)位)101雙操作數(shù)指令格式:雙操作數(shù)指令格式:4 6 3 34 6 3 3操作碼操作碼 寄存器號寄存器號 尋址方式尋址方式 寄存器號寄存器號 尋址方式尋址方式目的地址目的地址源地址源地址單操作數(shù)指令格式:單操作數(shù)指令格式:操作碼操作碼 (可擴(kuò)展)(可擴(kuò)展) 寄存器號寄存器號 尋址方式尋址方式4 3 3 3 34 3 3 3 3目的地址目的地址轉(zhuǎn)移指令格式:轉(zhuǎn)移指令格式: 4 3 3 1 1 1 1 1 4 3 3
51、1 1 1 1 1轉(zhuǎn)移地址轉(zhuǎn)移地址轉(zhuǎn)移條件轉(zhuǎn)移條件操作碼操作碼 寄存器號寄存器號 尋址方式尋址方式 方式方式 NZVCNZVC102CPUCPU可編程訪問的寄存器:可編程訪問的寄存器:尋址方式尋址方式 編碼編碼 助記符助記符 定義定義二二. .尋址方式尋址方式寄存器尋址寄存器尋址通用寄存器通用寄存器R0-R3R0-R3、指令計數(shù)器、指令計數(shù)器PCPC、堆棧指針、堆棧指針SPSP、程序狀態(tài)字、程序狀態(tài)字PSWPSW000000R R(R R)為操作數(shù))為操作數(shù)寄存器間址寄存器間址001001(R R)(R R)為操作數(shù)地址)為操作數(shù)地址自減型寄存自減型寄存器間址器間址010010-(R)-(R)
52、-(SP)-(SP)(R)-1(R)-1為操作數(shù)地址為操作數(shù)地址(SP)-1(SP)-1為棧頂?shù)刂窞闂m數(shù)刂?03尋址方式尋址方式 編碼編碼 助記符助記符 定義定義101101(PC)+(PC)+(R)+d(R)+d為有效地址為有效地址(R R)為操作數(shù)地址,)為操作數(shù)地址,立即立即/ /自增型自增型寄存器間址寄存器間址011011(R)+(R)+訪問后訪問后(R)+1(R)+1(SP)+(SP)+(SP)(SP)為棧頂?shù)刂?,為棧頂?shù)刂罚鰲:蟪鰲:?SP)+1(SP)+1(PC)(PC)為立即數(shù)地址,為立即數(shù)地址,取數(shù)后取數(shù)后(PC)+1(PC)+1變址變址X(R)X(R)X(PC)X(PC
53、)(PC)+d(PC)+d為有效地址為有效地址跳步跳步110110SKPSKP跳過下條指令執(zhí)行跳過下條指令執(zhí)行104操作碼操作碼 助記符助記符 含義含義三三. .指令類型指令類型用于數(shù)傳、堆棧、用于數(shù)傳、堆棧、I/OI/O操作操作00000000MOVMOV傳送傳送00010001ADDADD加加01010101EOREOR異或異或雙操作數(shù)指令雙操作數(shù)指令01100110COMCOM求反求反10111011SRSR右移右移單操作數(shù)指令單操作數(shù)指令11001100JMPJMP轉(zhuǎn)移轉(zhuǎn)移11001100RSTRST返回返回11011101JSRJSR轉(zhuǎn)子轉(zhuǎn)子1050 0 0 0 0 0 0 0 0
54、0 5 4 3 2 1 0 5 4 3 2 1 0轉(zhuǎn)移地址轉(zhuǎn)移地址無條件轉(zhuǎn)無條件轉(zhuǎn)JMP JMP 寄寄 尋尋 方式方式 NZVCNZVC0 0 0 0 0 0 0 0 1 1 無進(jìn)位無進(jìn)位轉(zhuǎn)轉(zhuǎn)(C=(C=0 0) )0 0 0 0 0 0 1 1 0 0 無溢出無溢出轉(zhuǎn)轉(zhuǎn)(V=(V=0 0) )0 0 0 0 1 1 0 0 0 0 數(shù)非零轉(zhuǎn)數(shù)非零轉(zhuǎn)(Z=(Z=0 0) )0 0 1 1 0 0 0 0 0 0 數(shù)為正轉(zhuǎn)數(shù)為正轉(zhuǎn)(N=(N=0 0) )1 1 0 0 0 0 0 0 1 1 有進(jìn)位有進(jìn)位轉(zhuǎn)轉(zhuǎn)(C=(C=1 1) )1 1 0 0 0 0 1 1 0 0 有溢出有溢出轉(zhuǎn)轉(zhuǎn)(V=(
55、V=1 1) )1 1 0 0 1 1 0 00 0 數(shù)為零轉(zhuǎn)數(shù)為零轉(zhuǎn)(Z=(Z=1 1) )1 1 1 1 0 0 00 0 0 數(shù)為負(fù)轉(zhuǎn)數(shù)為負(fù)轉(zhuǎn)(N=(N=1 1) )條件滿足,轉(zhuǎn)目的地址;條件不滿足,順序執(zhí)行。條件滿足,轉(zhuǎn)目的地址;條件不滿足,順序執(zhí)行。轉(zhuǎn)移指令106隱含約定:轉(zhuǎn)子時返回地址壓棧保存。隱含約定:轉(zhuǎn)子時返回地址壓棧保存。子程序入口子程序入口JSR JSR 寄寄 尋尋 方式方式 NZVCNZVC 5 4 3 2 1 0 5 4 3 2 1 0四、四、 CPUCPU總體結(jié)構(gòu)總體結(jié)構(gòu)1.1.寄存器設(shè)置寄存器設(shè)置(1 1)可編程寄存器()可編程寄存器(1616位)位)通用寄存器通用
56、寄存器:R R0 0(000)(000)、R R1 1(001)(001)R R2 2(010)(010)、R R3 3(011)(011)11 9 8 6 5 011 9 8 6 5 0 RSTRST SPSP (SPSP)+ + 轉(zhuǎn)子指令返回指令107允許中斷(開中斷)允許中斷(開中斷) (可擴(kuò)展)(可擴(kuò)展) I N Z V CI N Z V C 4 3 2 1 0 4 3 2 1 0暫存器暫存器C C(2 2)非編程寄存器()非編程寄存器(1616位)位)堆棧指針堆棧指針:SPSP(100)(100)指令計數(shù)器指令計數(shù)器:PCPC(111)(111)程序狀態(tài)字程序狀態(tài)字:PSWPSW(1
57、01)(101): :暫存來自主存的暫存來自主存的源地址源地址或或源數(shù)據(jù)源數(shù)據(jù)。暫存器暫存器D D: :暫存來自主存的暫存來自主存的目的地址目的地址或或目的數(shù)目的數(shù)。指令寄存器指令寄存器IRIR地址寄存器地址寄存器MARMAR數(shù)據(jù)寄存器數(shù)據(jù)寄存器MDRMDR: :存放現(xiàn)行指令。存放現(xiàn)行指令。實現(xiàn)實現(xiàn)CPUCPU與主存的接口與主存的接口108SN74181 4SN74181 4片片SN74182 1SN74182 1片片2.2.算邏部件設(shè)置算邏部件設(shè)置ALUALU移位器移位器: :實現(xiàn)實現(xiàn)直送直送、左移左移、右移右移、字節(jié)交換字節(jié)交換(1616位)位)選擇數(shù)據(jù)來源選擇數(shù)據(jù)來源選擇器選擇器A A選
58、擇器選擇器B B 109五、模型機的組成與數(shù)據(jù)通路五、模型機的組成與數(shù)據(jù)通路 為了使數(shù)據(jù)傳送控制簡單、集中,采用為了使數(shù)據(jù)傳送控制簡單、集中,采用以以ALUALU為中心的總線結(jié)構(gòu)為中心的總線結(jié)構(gòu)。(一)部件設(shè)置(一)部件設(shè)置包括四個部分:包括四個部分:ALUALU部件、寄存器組、內(nèi)總線、部件、寄存器組、內(nèi)總線、CPUCPU與系統(tǒng)總與系統(tǒng)總線的連接。線的連接。 通常,部件設(shè)置有1、寄存器(包括可編程寄存器、暫存器、指令寄存器IR和與主存的接口寄存器MAR(地址寄存器)、MDR(數(shù)據(jù)寄存器)。2、運算部件(包括ALU部件、輸入邏輯、輸出邏輯)110111(2 2)特點)特點ALUALU為內(nèi)部數(shù)據(jù)傳
59、送通路的中心;為內(nèi)部數(shù)據(jù)傳送通路的中心; 寄存器寄存器采用采用內(nèi)總線內(nèi)總線采用單向數(shù)據(jù)總線采用單向數(shù)據(jù)總線(16(16位位) );分立結(jié)構(gòu);分立結(jié)構(gòu); R0R3 R0R3 C D C D SP PC PSW MDR A移位器移位器 B ALUR2 R0 R1 MI/OCB內(nèi)總線內(nèi)總線 C R3 DMARMDR IR PC SPPSWABDB控制控制邏輯邏輯 112與系統(tǒng)總線與系統(tǒng)總線的連接通過的連接通過MARMAR、MDRMDR實現(xiàn)。實現(xiàn)。MDRMDR輸入輸入輸出至輸出至DBDB輸出至輸出至ALUALU的的B B門門輸出輸出從內(nèi)總線輸入從內(nèi)總線輸入從從DBDB輸入輸入( (打入打入) )( (
60、置入置入) ) R0R3 R0R3 C D C D SP PC PSW MDR A移位器移位器 B ALUR2 R0 R1 MI/OCB內(nèi)總線內(nèi)總線 C R3 DMARMDR IR PC SPPSWABDB控制控制邏輯邏輯 (二)總線與數(shù)據(jù)通路結(jié)構(gòu)(二)總線與數(shù)據(jù)通路結(jié)構(gòu)在這部分中,主要有:1、內(nèi)總線,它是16根單向數(shù)據(jù)傳送線。2、系統(tǒng)總線,CPU通過系統(tǒng)總線與外部連接(如與主存、外設(shè)連接)。系統(tǒng)總線分分為地址總線、數(shù)據(jù)總線、控制總線。CPU通過MAR向地址總線提供地址。CPU通過MDR向數(shù)據(jù)總線發(fā)送或接收數(shù)據(jù)。CPU及外圍設(shè)備向控制總線發(fā)出有關(guān)控制信號或接收控制信號。113114(三)各類信
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年軟件開發(fā)項目經(jīng)理勞動合同3篇
- 2025年度城市廣場草坪修剪與夜間經(jīng)濟(jì)合同3篇
- 2024甲乙雙方關(guān)于區(qū)塊鏈技術(shù)研發(fā)與應(yīng)用的合同
- 2024年財產(chǎn)分割協(xié)議:無共同債權(quán)雙方自愿離婚協(xié)商書3篇
- 2024年環(huán)保新材料研發(fā)與應(yīng)用合作協(xié)議
- 2024年車間租賃合同:工業(yè)用途
- 2025賓館股權(quán)轉(zhuǎn)讓與旅游產(chǎn)品開發(fā)協(xié)議3篇
- 2024年砌墻工程質(zhì)量檢測合同
- 2024年食堂食品安全追溯系統(tǒng)委托運營管理協(xié)議3篇
- 2024長租公寓協(xié)議標(biāo)準(zhǔn)格式版A版
- 【高一上】【期末話收獲 家校話未來】期末家長會
- 滯銷風(fēng)險管理制度內(nèi)容
- 關(guān)于物業(yè)服務(wù)意識的培訓(xùn)
- JJF 2184-2025電子計價秤型式評價大綱(試行)
- 排污許可證辦理合同1(2025年)
- GB/T 44890-2024行政許可工作規(guī)范
- 二年級下冊加減混合豎式練習(xí)360題附答案
- (完整版)四年級上冊數(shù)學(xué)豎式計算題100題直接打印版
- 玻璃瓶罐的缺陷產(chǎn)生原因及解決方法63699
- 高層住宅(23-33層)造價估算指標(biāo)
- “千師訪萬家”家訪記錄表(共2頁)
評論
0/150
提交評論