計算機的控制器部件_第1頁
計算機的控制器部件_第2頁
計算機的控制器部件_第3頁
計算機的控制器部件_第4頁
計算機的控制器部件_第5頁
已閱讀5頁,還剩83頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

計算機的控制器部件第1頁,共88頁,2023年,2月20日,星期四本章主要內(nèi)容控制器的功能組成與指令執(zhí)行步驟微程序控制器部件組合邏輯控制器部件第2頁,共88頁,2023年,2月20日,星期四控制器的功能與組成

1.控制器的功能:控制執(zhí)行指令

控制各部件協(xié)調(diào)運行,即為各部件提供控制信號。

2.控制器的組成:程序計數(shù)器指令寄存器指令步驟標(biāo)記線路提供控制信號的部件

分類:

微程序的控制器硬布線的控制器第3頁,共88頁,2023年,2月20日,星期四控制器的功能計算機的功能是執(zhí)行程序 程序是依次排列起來的指令代碼

控制器的功能就在于:

正確地分步完成每一條指令規(guī)定的功能,

正確且自動地連續(xù)執(zhí)行指令;

再進一步說,就是向計算機各功能部件提供協(xié)調(diào)運行每一個步驟所需要的控制信號。第4頁,共88頁,2023年,2月20日,星期四控制器的組成①程序計數(shù)器PC:存放指令地址,有+1或接收新值功能。②指令寄存器IR:存放指令內(nèi)容:操作碼與操作數(shù)地址。主脈沖源與啟停控制線路,按需要給出主脈沖信號。③指令執(zhí)行步驟標(biāo)記線路:

指明每條指令的執(zhí)行步驟。④控制信號記憶或產(chǎn)生線路:給出計算機各功能部件部件協(xié)同運行所需要的控制信號。運算器部件主存儲器部件總線及輸入/輸出接口(輸入/輸出設(shè)備)控制器部件各部件包括也包括設(shè)計中的難點,在于解決對運算器、控制器的控制第5頁,共88頁,2023年,2月20日,星期四控制器的組成第6頁,共88頁,2023年,2月20日,星期四控制信號提供方法生成法將操作碼和微操作序號作為輸入,寫出控制信號和下一微操作序號的邏輯表達式,然后,用相應(yīng)的邏輯器件實現(xiàn)。組合邏輯控制器,也稱硬布線控制器查表法將每一操作碼的每個微操作對應(yīng)的全部控制信號和下一操作步驟事先存儲在控制存儲器中,需要的時候從控存中讀出。微程序控制器第7頁,共88頁,2023年,2月20日,星期四時序控制信號形成部件譯碼IRPC輸出設(shè)備輸入設(shè)備主存運算器部件時序啟停地址寄存器械數(shù)據(jù)總線地址總線控制總線….控制條件控制器信號主振組合邏輯方案的控制器第8頁,共88頁,2023年,2月20日,星期四控制存儲器映射IRPC輸出設(shè)備輸入設(shè)備主存運算器部件下地址啟停地址寄存器械數(shù)據(jù)總線地址總線控制總線….控制條件微指令寄存器主振微程序方案的控制器第9頁,共88頁,2023年,2月20日,星期四微程序控制器基本原理第10頁,共88頁,2023年,2月20日,星期四微程序控制器指令執(zhí)行流程讀當(dāng)前指令到IR,且PC=PC+1;根據(jù)指令的操作碼,得到該指令的微程序入口地址;讀取該指令的微指令,并送到相應(yīng)的計算機部件,完成微操作,同時,得到下一微指令的地址;重復(fù)上一步,直到本條指令執(zhí)行完畢;判中斷標(biāo)志,如有,則進行中斷處理;轉(zhuǎn)取指令,執(zhí)行下一條指令第11頁,共88頁,2023年,2月20日,星期四微程序控制器的運行原理每條指令一個執(zhí)行步驟用到的全體控制信號組成一微指令每條指令可以包括一到多個微操作用多條微指令解釋每條指令的整個執(zhí)行過程全部微指令的集合叫做微程序執(zhí)行一條微指令所用的時間被稱為一個微周期。微指令的格式和內(nèi)容:下地址字段控制命令字段第12頁,共88頁,2023年,2月20日,星期四微程序控制器組成clock第13頁,共88頁,2023年,2月20日,星期四微程序控制器設(shè)計定序器根據(jù)指令操作碼、指令當(dāng)前步驟以及條件碼,確定下一步驟的微程序地址微指令給出當(dāng)前指令的當(dāng)前步驟要完成指令規(guī)定的功能,各功能部件所需要的控制信號。對控制器本身而言,則是要給出下一步驟的微程序地址。水平垂直第14頁,共88頁,2023年,2月20日,星期四下地址順序執(zhí)行下一條微指令無條件轉(zhuǎn)移到某條微指令根據(jù)微指令的某一狀態(tài)結(jié)果,選擇順序執(zhí)行或轉(zhuǎn)向某一地址微子程序調(diào)用,要使用到微堆棧多路轉(zhuǎn)移根據(jù)指令操作碼,轉(zhuǎn)移到指令的入口地址第15頁,共88頁,2023年,2月20日,星期四定序器組成第16頁,共88頁,2023年,2月20日,星期四微指令設(shè)計微指令字長縮短控制存儲器的字長微程序的長度控制存儲器的容量提高性能提高整個計算機指令執(zhí)行性能第17頁,共88頁,2023年,2月20日,星期四微指令設(shè)計直接控制法直接給出各部件需要的控制信號(0或1)字段直接編譯法將某些互斥信號進行編碼,由譯碼器給出這些信號,可縮短微指令字長垂直型微指令采用對微操作碼譯碼的方式給出控制信號,可進一步縮短微指令字長第18頁,共88頁,2023年,2月20日,星期四微程序控制器特點采用ROM存儲控制信號的方式,可擴展性好兼容性實現(xiàn)比較容易容易實現(xiàn)復(fù)雜的指令系統(tǒng)性能比較低并行性不好主要用在CISC中第19頁,共88頁,2023年,2月20日,星期四組合邏輯控制器采用邏輯電路直接提供全部控制信號輸入操作碼指令狀態(tài)字指令步驟編碼(節(jié)拍)外部信號(Reset等)輸出全部控制信號主要解決的問題節(jié)拍轉(zhuǎn)換控制信號生成第20頁,共88頁,2023年,2月20日,星期四節(jié)拍發(fā)生器控制每條指令的執(zhí)行步驟用觸發(fā)器實現(xiàn)有限狀態(tài)自動機用觸發(fā)器狀態(tài)表示當(dāng)前執(zhí)行步驟狀態(tài)自動機自動轉(zhuǎn)入下一狀態(tài)第21頁,共88頁,2023年,2月20日,星期四節(jié)拍發(fā)生器設(shè)計舉例我們假定某機器的指令系統(tǒng)有兩條指令A(yù)和B,其中A指令需要4個步驟完成,而B指令只需要3個步驟。為此,節(jié)拍發(fā)生器需要有2個觸發(fā)器,用它形成的4個狀態(tài)來標(biāo)記不同的步驟。如給A指令分配的節(jié)拍狀態(tài)是00→01→10→11,B指令分配的節(jié)拍狀態(tài)為00→10→11。T0T1ABT0’T1’001001000110011010101011100111111000110100T0’=/T0*/T1*/A*B+/T0*T1*A*/B+T0*/T1T1’=/T0*/T1*A*/B+T0*/T1第22頁,共88頁,2023年,2月20日,星期四控制信號生成直接利用邏輯電路生成控制信號大規(guī)模集成電路現(xiàn)場可編程器件輸入節(jié)拍狀態(tài)條件碼指令操作碼輸出控制信號第23頁,共88頁,2023年,2月20日,星期四組合邏輯控制器特點直接用邏輯電路實現(xiàn),用節(jié)拍標(biāo)記指令步驟,性能良好可擴展性差,兼容性不好適合實現(xiàn)比較精簡的指令系統(tǒng)較容易實現(xiàn)并行常用于實現(xiàn)RISC第24頁,共88頁,2023年,2月20日,星期四指令的執(zhí)行過程馮.諾依曼結(jié)構(gòu)的計算機即存儲程序的計算機,設(shè)置內(nèi)存,存放程序和數(shù)據(jù),在程序運行之前存入。執(zhí)行程序:正確從程序首地址開始;正確分步執(zhí)行每一條指令,并形成下條待執(zhí)行指令的地址;正確并自動地連續(xù)執(zhí)行指令,直到程序的最后一條指令。第25頁,共88頁,2023年,2月20日,星期四每條指令的執(zhí)行步驟—讀取指令

指令地址送入主存地址寄存器讀主存,讀出內(nèi)容送入指定的寄存器—分析指令—按指令規(guī)定內(nèi)容執(zhí)行指令不同指令的操作步驟數(shù),和具體操作內(nèi)容差異很大,

—檢查有無中斷請求若有,則響應(yīng)中斷并轉(zhuǎn)中斷處理若無,則轉(zhuǎn)入下一條指令的執(zhí)行過程形成下一條指令地址R_R類型指令讀寫內(nèi)存類型指令輸入輸出類型指令其他類型指令

可能執(zhí)行一次或多次

是一次讀內(nèi)存操作公共操作公共操作是每一條指令的特定操作第26頁,共88頁,2023年,2月20日,星期四典型指令的執(zhí)行過程舉例20000001ADDr0,r1;加法指令20010790MVRRr9,r0;傳送指令2002E709STRA[2007],r9;寫內(nèi)存指令,這是一條雙字指令,2007;

第二個字中的807是直接地址20048280IN80;讀串行口數(shù)據(jù)到R0低8位200544FAJRC2000;若C為1轉(zhuǎn)移到2000,否則順序執(zhí)行20068F00RET;子程序返回指令其他一些指令與這里的幾條指令有相當(dāng)多的共同特性,屬于同一組的指令的執(zhí)行步驟非常類似。第27頁,共88頁,2023年,2月20日,星期四讀取指令①ARPC(注)

②讀主存,IR讀出內(nèi)容PCPC+1

執(zhí)行指令③ALUR0ALUR1執(zhí)行+R0ALU,記憶結(jié)果特征結(jié)束,判中斷指令執(zhí)行步驟簡單的文字描述

加法指令A(yù)DDR0,R1

形成下條指令地址第28頁,共88頁,2023年,2月20日,星期四寄存器內(nèi)容傳送指令

MVRRR9,R0讀取指令①ARPC(注)

②讀主存,IR讀出內(nèi)容PCPC+1

執(zhí)行指令③ALU0ALUR0執(zhí)行+R9ALU結(jié)束,判中斷形成下條指令地址第29頁,共88頁,2023年,2月20日,星期四寫寄存器內(nèi)容到主存

STRA[2007],R9讀取指令①

ARPC

讀主存,IR

讀出內(nèi)容

PCPC+1

執(zhí)行指令③

ARPC,

PCPC+1

讀主存,AR

讀出內(nèi)容

ALU0,ALUR9

,+

寫主存,總線

ALU,結(jié)束,判中斷(地址2007存在指令的第二個字中)形成下條指令地址第30頁,共88頁,2023年,2月20日,星期四輸入指令I(lǐng)N80形成下條指令地址讀取指令①ARPC(注)

②讀主存,IR讀出內(nèi)容PCPC+1執(zhí)行指令③ARI/OPort④讀外設(shè),ALU讀出數(shù)據(jù)ALU0執(zhí)行+R0ALU結(jié)束,判中斷形成下條指令地址第31頁,共88頁,2023年,2月20日,星期四相對轉(zhuǎn)移指令JRC2000讀取指令①ARPC(注)

②讀主存,IR讀出內(nèi)容PCPC+1執(zhí)行指令③若c=1則: ALUPCALUoffset(IR低字節(jié))二者相加,結(jié)果送PC

否則,PC不接收二者之和結(jié)束,判中斷形成下條指令地址第32頁,共88頁,2023年,2月20日,星期四子程序返回指令RET讀取指令①

ARPC

讀主存,IR

讀出內(nèi)容

PCPC+1執(zhí)行指令③

ARSPSPSP+1

④讀主存,PC讀出內(nèi)容結(jié)束,判中斷形成下條指令地址第33頁,共88頁,2023年,2月20日,星期四

PC0

ARPCPCPC+1

IR(AR)寄存器之間運算與傳送讀、寫內(nèi)存AR地址

AR地址

讀、寫內(nèi)存或I/O接口讀、寫內(nèi)存

PC地址16位機的基本指令、擴展指令執(zhí)行流程圖A組B組C組D組/ResetB、C、D組第34頁,共88頁,2023年,2月20日,星期四TEC-2000教學(xué)機系統(tǒng)的組成計算機終端PC機微程序控制器運算器(8/16位)主存儲器(8/16位)按鍵開關(guān)指示燈串行接口接口實驗中斷實驗內(nèi)存擴展實驗電源+5V硬布線控制器第35頁,共88頁,2023年,2月20日,星期四第36頁,共88頁,2023年,2月20日,星期四控制器應(yīng)提供的控制信號Y15~Y0

用16個指示燈顯示結(jié)果D15~D0RAM15Q15RAM0Q0CinCyF=0OverF15運算器部件(4片Am2901)A3~0B3~0I8~6

用16個數(shù)據(jù)開關(guān)提供輸入數(shù)據(jù)CZVSSSHSSTSCII5~3

I2~0SCISSHA口

B口I8~6

I5~3

I2~0

SST通過24位微型開關(guān)提供控制信號各用四個指示燈顯示狀態(tài)Gal20V8Gal20V8第37頁,共88頁,2023年,2月20日,星期四(1)對運算器的控制24位控制信號,同24位微型開關(guān)內(nèi)容,

A3~A0,B3~B0,I8~I6,I5~I3,I2~I0SST2~0,SSH1~0,SCI1~0寄存器分配:

R4:SPR5:PC約定用法:R0:I/O指令約定使用,也是通用累加器第38頁,共88頁,2023年,2月20日,星期四(2)讀寫主存儲器或I/O接口

從學(xué)習(xí)指令執(zhí)行步驟考慮,理解對主存儲器讀寫的控制,分成兩步:

1.傳送主存地址,以選擇被讀寫的存儲單元;

2.給出讀寫命令,讀操作時,把讀出數(shù)據(jù)保存起來,寫操作時,還要給出寫入的數(shù)據(jù)。從學(xué)習(xí)指令執(zhí)行步驟考慮,理解對接口電路讀寫的控制,分成兩步:

1.傳送IO端口地址,以選擇被讀寫的芯片;

2.給出讀寫命令,讀操作時,把讀出數(shù)據(jù)保存起來,寫操作時,還要給出寫入的數(shù)據(jù)。第39頁,共88頁,2023年,2月20日,星期四對內(nèi)存和I/O接口的讀寫

/MIO(0:有內(nèi)存或串口讀寫,1:無)

REQ(0:讀寫內(nèi)存,1:讀寫串行口)

/WE(0:寫操作,1:讀操作)000

寫內(nèi)存001

讀內(nèi)存010

寫串口011

讀串口1XX

無內(nèi)存和串口的讀寫操作第40頁,共88頁,2023年,2月20日,星期四(3)對總線的控制總線是用于連接計算機各個功能部件的線路和連接線,通常由具有三態(tài)輸出功能的器件構(gòu)成,以便用分時地方式,在不同時刻把不同的數(shù)據(jù)發(fā)送到總線上,任何時刻僅能有一個數(shù)據(jù)發(fā)送到總線上;總線上的數(shù)據(jù)可以被送到需要接收數(shù)據(jù)的部件或者線路,多個線路可以同時接收同一個來源數(shù)據(jù)。計算機中總要使用3種類型的總線:

數(shù)據(jù)總線,地址總線,控制總線第41頁,共88頁,2023年,2月20日,星期四(4)對內(nèi)部總線和特定寄存器的控制選擇送內(nèi)部總線的信息來源DC12~0信號名稱注釋

000/SWTOIB來自開關(guān)

001/RTOIBALU的輸出

010/ETOIB符號擴展16位

011/FTOIB狀態(tài)位輸出

100/STOIB符號擴展8位

101/INTVH中斷向量的

110/INTVL高、低8位

110NC不用控制指定寄存器接收信息DC22~0信號名稱注釋

000NC

不用

001/GIR

指令寄存器

010/GARL

地址寄存器低位

011/GARH

地址寄存器高位

100/INTR

取原中斷優(yōu)先級

101/INTN

置新中斷優(yōu)先級

110/EI

開中斷

110/DI

關(guān)中斷第42頁,共88頁,2023年,2月20日,星期四本章主要內(nèi)容控制器的功能組成與指令執(zhí)行步驟微程序控制器部件組合邏輯控制器部件第43頁,共88頁,2023年,2月20日,星期四微程序控制器組成與設(shè)計(1)微程序控制器的運行原理(2)教學(xué)計算機的微程序控制器的實際組成(3)微程序解釋的基本指令執(zhí)行流程圖(4)微指令的格式設(shè)計(5)指令執(zhí)行流程舉例與說明第44頁,共88頁,2023年,2月20日,星期四(1)微程序控制器的運行原理每條指令一個執(zhí)行步驟用到的全體控制信號組成一微指令每條微指令可以包括一到多個微操作。用多條微指令(一個微程序)解釋每條指令的執(zhí)行過程。全部的微程序有機地組合在一起,被保在控制存儲器中。執(zhí)行一條微指令所用的時間被稱為一個微周期。微指令的格式和內(nèi)容:下地址字段控制命令字段執(zhí)行第i條微指令讀出第i+1條微指令讀與執(zhí)行微指令的并行流水技術(shù)形成第i+1條微指令地址一個微周期接收微指令第45頁,共88頁,2023年,2月20日,星期四下地址字段的內(nèi)容得到下地址的方法:

1.由指令操作碼得到

2.微指令順序執(zhí)行

3.微指令必轉(zhuǎn)或條件轉(zhuǎn)移多路微地址轉(zhuǎn)移

4.微子程序調(diào)用和返回

5.按次數(shù)循環(huán)一段微程序

6.其他:如特定入口微地址在微指令下地址字段中表示清楚:使用哪種方法,哪個(些)判斷條件,要用的有關(guān)地址等,并用專門電路完成必要支持和處理,微指令的下地址是微程序設(shè)計中要重點解決的問題之一,技術(shù)、技巧性強,應(yīng)學(xué)得好些。在教學(xué)計算機中,解決下地址使用了Am2910器件第46頁,共88頁,2023年,2月20日,星期四微堆桟指針SP

5字*12位微堆桟F微程序計數(shù)器PC寄存器/計數(shù)器R/CDRFPC多路選擇器命令譯碼器增量器零檢測D11~D0Y11~Y0CP/FULLCI/CC/CCENI3~I0/PL/MAP/VECT/RLD/OE出棧/入棧保持/清零裝數(shù)減量保持清零選擇R為零Am2910器件第47頁,共88頁,2023年,2月20日,星期四非零循環(huán)零/PLPC彈出PC彈出4入棧與裝數(shù)注1/PLPC壓入PC壓入6讀手撥開關(guān)/VECTPCD3條件微轉(zhuǎn)移/PLPCD2功能分支/MAPDD1條件轉(zhuǎn)微子/PLPCD壓入完成R/CR/C使能/CC=高/CC=低功能內(nèi)容操作信號Y輸出堆棧Y輸出堆棧0初始化/PL0清除0清除8R/C非零減1/PLFF10微子返回/PLPCF彈出14順序執(zhí)行/PLPCPC15三路轉(zhuǎn)移非零減1/PLFPC彈出零/PLD彈出

PC彈出第48頁,共88頁,2023年,2月20日,星期四微命令字段的編碼譯碼方法1.直接控制法 直接用微指令字的一位作一個控制信號則簡單且速度快,但會使微指令字變得很長。2.字段直接編譯法把互斥的命令分在一組加以編碼,經(jīng)譯碼器給出命令,速度會稍慢,但可大大減短微指令字長度,確保互斥。3.字段間接編譯法是對直接譯碼的的一種改進,可進一步縮短微指令字長度,即一個字段的某些微命令還受另一字段的制約。4.常數(shù)源字段微指令中分配幾位,用于給出特定用途的有關(guān)數(shù)值。第49頁,共88頁,2023年,2月20日,星期四

(2)微程序控制器組成56位的微指令字長,微下地址字段16位,控制命令字段40位,7片28C64組成控存。1片28C65,從指令操作碼產(chǎn)生微地址,1片374存8位下地址,1片273存8位條件碼,1片377存8位現(xiàn)微地址。1片Am2910給出下一條微指令地址,1片GAL按判斷條件產(chǎn)生微指令轉(zhuǎn)移信號/CC;5片GAL用作為5片8位的D觸發(fā)器的寄存器,2片GAL實現(xiàn)兩個4位的

2選1芯片功能。8或16位的指令寄存器。第50頁,共88頁,2023年,2月20日,星期四微程序控制器

Am2910MAPROM微下地址CISCC3~03~0SCCGal控制存儲器(ROM)指令操作碼微指令轉(zhuǎn)移的控制條件/SCC微指令寄存器0MRWSAI8~6B口0SSTDC20I2~0SBI5~3A口SSHSCIDC1CP/G讀命令1.確定指令功能與格式2.劃分指令執(zhí)行步驟3.分配微指令地址4.設(shè)計微指令內(nèi)容5.把新微指令寫入控存6.需要時修改MAPROM和SCCGal等7.調(diào)試并且運行B口二選一A口二選一IR.SRIR.DR第51頁,共88頁,2023年,2月20日,星期四TEC-2000教學(xué)機系統(tǒng)的組成計算機終端PC機微程序/硬布線控制器運算器(16位)主存儲器(16位)按鍵室開關(guān)指示燈串行接口中斷實驗接口實驗內(nèi)存擴展實驗電源+5V第52頁,共88頁,2023年,2月20日,星期四每條指令的執(zhí)行步驟—讀取指令

指令地址(在程序計數(shù)器PC中)送入主存地址寄存器讀主存,讀出內(nèi)容送入指令寄存器IR—分析指令—按指令規(guī)定內(nèi)容執(zhí)行指令不同指令的操作步驟數(shù),和具體操作內(nèi)容差異很大,

—檢查有無中斷請求若有,則響應(yīng)中斷并轉(zhuǎn)中斷處理若無,則轉(zhuǎn)入下一條指令的執(zhí)行過程形成下一條指令地址R_R類型指令讀寫內(nèi)存類型指令輸入輸出類型指令其他類型指令

可能執(zhí)行一次或多次可以復(fù)合

是一次讀內(nèi)存操作公共操作公共操作是每一條指令的特定操作第53頁,共88頁,2023年,2月20日,星期四

PC0

ARPCPCPC+1

IR(AR)

/MAP寄存器之間運算與傳送讀、寫內(nèi)存AR地址

AR地址

讀、寫內(nèi)存或I/O接口讀、寫內(nèi)存

PC地址(3)基本指令、擴展指令執(zhí)行流程圖A組B組C組D組/ResetB、C、D組第54頁,共88頁,2023年,2月20日,星期四加電啟動時,執(zhí)行0PC接下來的兩步,完成取指操作按指令操作碼,讀出相應(yīng)微指令按指令具體功能,再分別用1、2、3、4步完成不同指令組的中各條指令的執(zhí)行過程最后檢查中斷請求信號,有請求時則響應(yīng)中斷,否則開始下一條指令的執(zhí)行過程第55頁,共88頁,2023年,2月20日,星期四

9位微下地址字段用于直接給出下一條微指令的地址,常用8位,使用微指令字中最高8位編碼。最高一位用于擴展功能,單獨接線。(4)TEC-2000教學(xué)機微指令格式設(shè)計

微下地址

2910的命令碼微轉(zhuǎn)移條件8位4位4位分成3個子字段,總共使用17位碼(微指令中用16位)。

4位的命令碼,用于選擇Am2910的16個命令,如前一頁的表格內(nèi)容所示。

4位的微轉(zhuǎn)移條件給出微指令轉(zhuǎn)移所依據(jù)的條件,與教學(xué)機具體設(shè)計有關(guān)。1位微指令的下地址字段第56頁,共88頁,2023年,2月20日,星期四控制命令字段給出計算機各功能部件協(xié)同運行所需要的控制信號

劃分成若干字段,分別用于控制各部件控制運算器部件

如:運算功能,數(shù)據(jù)來源,結(jié)果處理等控制總線主存入出接口(設(shè)備)

如:

指出是主存讀、寫還是入出設(shè)備讀、寫把什么數(shù)據(jù)送到有關(guān)總線等控制控制器部件

(下地址字段)主要是正確給出下條微指令的地址第57頁,共88頁,2023年,2月20日,星期四為每一條微指令分配微地址需要為每一條微指令在控存中分配一個合適的地址,這是合理地組織微程序的重要工作;

1.

首先確定微指令中下地址字段的組成;

2.

再按每一條微指令在控存中的位置,來安排下地址字段各部分的編碼,這與控制器的具體線路與方案有關(guān)。第58頁,共88頁,2023年,2月20日,星期四微指令控制信號字段編碼為每一條微指令各項微操作確定其所要求的控制信號如:使IR,AR等寄存器接收的信號控制PC增量和接收的信號讀寫主存,讀寫外設(shè)的信號控制運算器操作的信號等這要看被控制的具體對象的具體要求第59頁,共88頁,2023年,2月20日,星期四下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000303041B80010003044B80000003647100000323030373000000000E0432055013000E0170000000000E0433140003030300220550001(5)指令執(zhí)行流程舉例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第60頁,共88頁,2023年,2月20日,星期四下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000指令執(zhí)行流程舉例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第1條微指令和第2條微指令用于完成讀取指令,具體操作功能是:PCAR,PC+1PC;PC是R5,A口和B口均選5,B口內(nèi)容+1送B口;輸出A口的內(nèi)容送AR寄存器。讀主存,讀出內(nèi)容IR;微指令都是順序執(zhí)行,故

2910選14#命令。第3條微指令按讀出的指令的操作碼,形成相應(yīng)微指令的地址,讀出該條微指令并將其寫入微指令寄存器,2910選2#命令,控制運算器的I8~I6選001碼,保證運算器的各寄存器內(nèi)容不變化。無存儲器和IO讀寫,故/MIOREQ/WE選100碼。第61頁,共88頁,2023年,2月20日,星期四下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0101000001000204010000000303041B80010003044B8000000指令執(zhí)行流程舉例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR第3條微指令和第4條微指令用于完成兩個累加器之間的相加和傳送操作。具體操作是:2累加器相加,DR+SRDR,A口和B口編碼來自指令寄存器,故SA和SB都給1值;下微指令轉(zhuǎn)判中斷請求,故

2910選3#命令且SCC為0000,必轉(zhuǎn)30。

第4條微指令,完成兩個累加器之間的數(shù)據(jù)傳送,累加器SR的內(nèi)容和0相加,存入DR寄存器中,不保存標(biāo)志位的值,故SST為000,無存儲器和IO讀寫。這兩條微指令內(nèi)容有些類似。第62頁,共88頁,2023年,2月20日,星期四下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC11436471000003230303730000000指令執(zhí)行流程舉例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR

第5、6兩條微指令完成讀串行接口,具體操作是:先送IO端口地址(在IR的低8位)到地址寄存器AR,DC1為2選IR的低8位送內(nèi)部總線,經(jīng)ALU(送出D+0)到AR(DC2為3是AR接收);IN指令時轉(zhuǎn)14#微指令(下地址3個字段為1436);下一微指令完成讀串口輸入到內(nèi)部總線,把D+0送到ALU并寫進R0(B口選0000);轉(zhuǎn)判中斷請求,故

CI選3#且SCC為0000,必轉(zhuǎn)30。

第63頁,共88頁,2023年,2月20日,星期四下址CI3~0SCC3~00MRW0I2~0SA

I8~6SB

I5~3B口A口0SSTSSHSCIDC2DC100E0432055013000E0170000000000E04331400030300220550001指令執(zhí)行流程舉例ADDDR,SR

MVRRDR,SR

INIO-PORTCALAADR后4條微指令之間順序執(zhí)行,前3條的CI都是E,依次完成:1.PCAR,PC+1PC;(控制命令同讀取指令的第1步);2.讀內(nèi)存(MRW=001)送Q(D+0Q)(子程序入口);

3.修改堆棧指針并送AR,SP-1SP,AR;SP是R4,即R4的內(nèi)容-1R4和AR(DC2為3是AR接收);4.寫斷點(PC的內(nèi)容)到堆棧,即A口指定的寄存器(R5)的內(nèi)容經(jīng)數(shù)據(jù)總線送到內(nèi)存并寫入;子程序的入口地址(在Q中)(Q的內(nèi)容+0)送入PC(B口指定R5)。下地址控制完成轉(zhuǎn)向判中斷請求的微指令的地址30處。第64頁,共88頁,2023年,2月20日,星期四教學(xué)計算機的微程序控制器

信息流圖示部分 典型指令的執(zhí)行過程舉例:20000001ADDr0,r120010790MVRRr9,r020028800MVRDr0,2100

21008309STRR[R0],R9(寫內(nèi)存)8280IN80(讀串行口)200644FBJRC200220078F00RET第65頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入/出設(shè)備主存儲器控制總線00018F000790CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R9操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容2000880021008309828044FB304120002007

0001

4275

4275

ARPC讀內(nèi)存,IR讀出內(nèi)容R0

R0+R1PCPC+1+ADDR0,R120012000

0001第66頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入/出設(shè)備主存儲器控制總線00018F000790CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R9操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容2000880021008309828044FB4725200120072001

0790

4275

4275

AR

PC讀內(nèi)存,IR讀出內(nèi)容R9R0+0PCPC+10+MVRRR9,R02002

0790

第67頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入設(shè)備主存儲器控制總線000178BD0790CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R94275操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容2000880021008309828044FB2100802200720028800200378BD08F00ARPC,PCPC+1讀內(nèi)存,IR讀出內(nèi)容讀內(nèi)存,R0D+0ARPC,PCPC+12100+MVRDR0,210020042003第68頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入設(shè)備主存儲器控制總線000178BD0790CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R94275操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容2000880021008309828044FB2100802200720048309200578BD08F00ARPC,PCPC+1讀內(nèi)存,IR讀出內(nèi)容寫內(nèi)存,總線R9+0ARR0+02100+STRR[R0],R92100第69頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入/出設(shè)備主存儲器控制總線CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R9操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容20003041200620072005

8280

A

ARPC讀內(nèi)存,IR讀出內(nèi)容讀設(shè)備,R0讀出內(nèi)容PCPC+1ARI/OportIN8000010790880021008309828044FB8F0080第70頁,共88頁,2023年,2月20日,星期四程序計數(shù)器運算器控制器控制存儲器用于運算器輸入/出設(shè)備主存儲器控制總線CZVS接口.PCARIR數(shù)據(jù)總線地址總線ALU乘商寄存器66881234R9操作數(shù)地址操作碼寄存器組映射地址寄存器指令寄存器微程序定序器主振脈沖微指令寄存器下地址字段內(nèi)容2000A80520072006806

44FB

ARPCPC

PC+1若C=1,則PCPC+offset讀內(nèi)存,IR

讀出內(nèi)容否則donothing2007JRC200200010790880021008309828044FB8F00第71頁,共88頁,2023年,2月20日,星期四本章主要內(nèi)容控制器的功能組成與指令執(zhí)行步驟微程序控制器部件組合邏輯控制器部件第72頁,共88頁,2023年,2月20日,星期四組合邏輯(硬連線)控制器設(shè)計組合邏輯控制器的組成和運行原理組合邏輯控制器的設(shè)計過程與技術(shù)(1)指令系統(tǒng)與指令編碼設(shè)計(2)控制器應(yīng)提供的控制信號

(3)指令執(zhí)行步驟劃分和功能確定(4)節(jié)拍發(fā)生器(TIMING)設(shè)計與實現(xiàn)(5)時序控制信號產(chǎn)生部件的設(shè)計與實現(xiàn)第73頁,共88頁,2023年,2月20日,星期四組合邏輯控制器的組成與運行原理

在講解過微程序的控制器之后,再來討論組合邏輯控制器的組成和運行原理就變得容易了,因為二者有很多共同點。它們都用于控制指令的執(zhí)行過程,并且使用幾乎相同的執(zhí)行步驟和幾乎完全相同的控制信號,來完成對控制器之外的其他各功能部件的控制作用,因此可以簡化對這些內(nèi)容設(shè)計原理和方法的論述。兩種控制器實質(zhì)性的差別,表現(xiàn)在處理指令各執(zhí)行步驟的接續(xù)關(guān)系的方案和給出時序控制信號的辦法完全不同,從而造成控制器的具體組成和運行原理、運行性能上的一些差異。比較它們的邏輯圖可看出兩種控制器組成的主要差異:微程序控制器中的控存變成這里的時序信號產(chǎn)生部件,還取消了微指令寄存器;原來的下地址部件變成了這里的節(jié)拍發(fā)生器;原來的微地址映射部件變成這里的操作碼譯碼器;一些信號連接關(guān)系也有某些變化。第74頁,共88頁,2023年,2月20日,星期四

組合邏輯控制器的組成與運行原理

(1)組合邏輯控制器用節(jié)拍發(fā)生器(Timing,幾個觸發(fā)器構(gòu)成的時序邏輯電路)不同的狀態(tài)組合來區(qū)分一條指令不同的執(zhí)行步驟,指令執(zhí)行步驟的接續(xù)是通過變換節(jié)拍發(fā)生器的狀態(tài)組合完成的,不同于微程序控制器中通過下地址部件給出不同的微指令地址來實現(xiàn)。這里用節(jié)拍發(fā)生器取代了原來的下地址部件。

(2)組合邏輯控制器是通過由“與—或”兩級邏輯關(guān)系構(gòu)成的時序控制信號產(chǎn)生部件來直接給出全部的時序控制信號。送到第一級各“與門”的輸入信號是指令操作碼和節(jié)拍發(fā)生器的節(jié)拍狀態(tài)(可能還有控制條件),每個與門產(chǎn)生一個與項輸出,相關(guān)的與項輸出信號送到第二級的“或門”,每個或門輸出的就是一個時序控制信號。全部的時序控制信號由許多個“與—或”邏輯門給出。與用控制存儲器存放全部控制信號的微程序控制方案不同,這里用時序控制信號產(chǎn)生部件取代了原來的控制存儲器,還取消了那里的微指令寄存器線路,把控制信號直接送到被控制的部件。第75頁,共88頁,2023年,2月20日,星期四時序控制信號形成部件譯碼OPIRPC輸出設(shè)備輸入設(shè)備主存儲器部件運算器部件啟停地址寄存器數(shù)據(jù)總線地址總線控制總線….控制條件主振組合邏輯控制器的組成和運行原理節(jié)拍發(fā)生器程序計數(shù)器指令寄存器第76頁,共88頁,2023年,2月20日,星期四教學(xué)機的組合邏輯控制器8或16位的指令寄存器,1片100引腳的MACH,5片8輸出引腳的GAL,二者互斥運行,構(gòu)成時序控制信號形成部件,提供35位的控制信號。2片GAL與GAL3共同提供運算器A、B口信號。節(jié)拍發(fā)生器(1片GAL),產(chǎn)生4位節(jié)拍狀態(tài)信號。2片GAL用于啟動、停止等控制電路。GAL1~GAL7公用于組合和微程序兩種控制器。第77頁,共88頁,2023年,2月20日,星期四TEC-200016位機指令與執(zhí)行流程設(shè)計

TEC-2000分為16位和8位字長的兩種型號。16位機與8位機,從其指令格式、指令系統(tǒng)和運行的軟件來看,是完全不同的兩種機型,但是從整體硬件組成和使用的器件來看,又有相當(dāng)多的類似之處。再從設(shè)計與實現(xiàn)的基本原理來看,二者同樣有許多類似或相同之處,例如各自對組合邏輯和微程序兩種控制器使用幾乎完全相同的執(zhí)行步驟。關(guān)于16位機組合邏輯控制器設(shè)計過程中,可以直接跳過對指令執(zhí)行步驟的劃分和功能確定,對使用的控制信號的選擇等內(nèi)容的詳細(xì)討論,直接引用微程序控制器的設(shè)計結(jié)果即可;針對兩種控制器的區(qū)別,重點講解節(jié)拍發(fā)生器的設(shè)計與實現(xiàn),時序控制信號產(chǎn)生部件的設(shè)計與實現(xiàn),并強調(diào)設(shè)計中有關(guān)的原理性知識,順便提到一些實現(xiàn)中對所用電路的選擇原則。第78頁,共88頁,2023年,2月20日,星期四

PC0

ARPCPCPC+1

IR(AR)寄存器之間運算與傳送讀、寫內(nèi)存

AR地址

AR地址

讀、寫內(nèi)存或I/O接口讀、寫內(nèi)存

PC地址16位機的基本指令、擴展指令執(zhí)行流程圖(組合邏輯方案)A組B組C組D組/ResetB、C、D組10000000001000110110010001110101第79頁,共88頁,2023年,2月20日,星期四加電啟動時,執(zhí)行0PC接下來的兩步,完成取指操作按指令具體功能,再分別用1、2、3、4步完成不同指令組的中各條指令的執(zhí)行過程最后檢查中斷請求信號,有請求時則響應(yīng)中斷,否則開始下一條指令的執(zhí)行過程10000000001000110110010001010111指令操作碼指令操作碼指令操作碼16位機組合邏輯控制器的指令執(zhí)行流程設(shè)計XXXXXXXXXXXX指令操作碼第80頁,共88頁,2023年,2月20日,星期四(1)節(jié)拍發(fā)生器的設(shè)計原理

TEC-200016位機實現(xiàn)了29條指令,使用了8個節(jié)拍(不含響應(yīng)中斷的步驟),為此,節(jié)拍發(fā)生器至少要使用4位觸發(fā)器,可以產(chǎn)生最多24

個節(jié)拍;使用4個觸發(fā)器(分別命名為T3T2T1T0)不同的狀態(tài)組合來區(qū)分每一個節(jié)拍,例如,用T3T2T1T0=1000來標(biāo)識最頂上一行的那個節(jié)拍,如此等等,正象前頁一圖所示。如何為每個節(jié)拍分配4個觸發(fā)器的狀態(tài)組合,需要遵循的原則是:盡量做到從當(dāng)前節(jié)拍切換到下一個節(jié)拍時,只有一個觸發(fā)器的狀態(tài)發(fā)生變化,辦不到時,也要盡量使?fàn)顟B(tài)發(fā)生變化的觸發(fā)器數(shù)目最少。此外,還要考慮有利于對寫出的節(jié)拍發(fā)生器的邏輯表達式的邏輯化簡。前一頁給出的設(shè)計結(jié)果已經(jīng)較好地體現(xiàn)了上述設(shè)計要求。接下來的工作是按上圖給出的設(shè)計結(jié)果,寫出設(shè)計與實現(xiàn)這一節(jié)拍發(fā)生器的線路所依據(jù)的邏輯表達式。第81頁,共88頁,2023年,2月20日,星期四節(jié)拍發(fā)生器的設(shè)計原理按照節(jié)拍狀態(tài)轉(zhuǎn)換圖(有限狀態(tài)圖)的結(jié)果,設(shè)計這一節(jié)拍發(fā)生器的邏輯線路的首要任務(wù),是寫出該節(jié)拍發(fā)生器線路的邏輯表達式。具體要求是寫出反映每一個觸發(fā)器的完整的狀態(tài)轉(zhuǎn)換序列的邏輯表達式。在該表達式中:(1)用一個與項表示在一個節(jié)拍中該觸發(fā)器取值為1的一種狀態(tài),參加與運算的元素是:進到本節(jié)拍的前一個節(jié)拍的4個觸發(fā)器的取值狀態(tài)(用Ti

和/Ti分別表示該觸發(fā)器的1狀態(tài)和0狀態(tài));

從前一個節(jié)拍得以進到本節(jié)拍的限制條件(可能沒有),如指令組(用代表該指令組的表達式表示)或具體的一條指令(用相應(yīng)指令的操作碼表示)等。(2)再把所有節(jié)拍中該觸發(fā)器取值為1的情形用或項表示在一個表達式中。下面看實際的例子。第82頁,共88頁,2023年,2月20日,星期四PC0ARPCPCPC+1IR(AR)寄存器之間運算與傳送讀、寫內(nèi)存AR地址AR地址讀、寫內(nèi)存或I/O接口讀、寫內(nèi)存

PC地址16位機的基本指令、擴展指令執(zhí)行流程圖A組B組C組D組/ResetBCD組10000000001000110110010001110101T3:=C-M#*/ResetT2:=C-M#*Reset*/T3*/T2*T1*/T0*IR15+C-M#*Reset*/T3*T2*T1*/T0+C-M#*Reset*/T3*T2*T1*T0

+C-M#*Reset*/T3*T2*/T1*/T0*IR15*IR14*IR11

T1:=C-M#*Reset*/T3*/T2*/T1*/T0+C-M#*Reset*/T3*/T2*T1*/T0

+C-M#*Reset*/T3*T2*T1*/T0*IR15*IR14*/IR11+C-M#*Reset*/T3*T2*/T1*/T0*IR15*IR14*IR11

T0:=C-M#*Reset*/T3*/T2*T1*/T0*/IR15+C-M#*Reset*/T3*T2*T1*T0

+C-M#*Reset*/T3*T2*T1*/T0*IR15*IR14*/IR11+C-M#*Reset*/T3*T2*/T1*/T0

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論