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

下載本文檔

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

文檔簡介

第6章

計算機的控制器部件

洋幸:要向客

合控制器的功能組成與指令執行步驟

⑥微程序控制器部件

合組合邏輯控制器部件

控制器的功能與組成

1.控制器的功能:控制執行指令

控制各部件協調運行,即為各部件提供控制信號。

2.控制器的組成:程序計數器指令寄存器

指令步驟標記線路提供控制信號的部件

分類:

微程序的控制器

硬布線的控制器

控制器的功能

計算機的功能是執行程序

程序是依次排列起來的指令代碼

控制器的功能就在于:

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

正確且自動地連續執行指令;

再進一步說,就是向計算機各功能部件提供

協調運行每一個步驟所需要的控制信號。

控制器的組成

①程序計數器PC:存放指令地址,有+1或接收新值功能。

②指令寄存器IR:存放指令內容:操作碼與操作數地址。

主脈沖源與啟停控制線路,按需要給出主脈沖信號。

③指令執行步驟標記線路:指明每條指令的執行步驟。

④控制信號記憶或產生線路:給出計算機各功能部件部

件協同運行所需要的控制信號。

各部件包括運算器部件主存儲器部件

總線及輸入/輸出接口(輸入/輸出設備)

也包括控制器部件

設計中的難點,在于解決對運算器、控制器的控制

控制器的組成

指令轉移地址

存儲器;;I/OI

控制信號提供方法

?生成法

-將操作碼和微操作序號作為輸入,寫出控制

信號和下一微操作序號的邏輯表達式,然后,

用相應的邏輯器件實現。

-組合邏輯控制器,也稱硬布線控制器

?查表法

-將每一操作碼的每個微操作對應的全部控制

信號和下一操作步驟事先存儲在控制存儲器

中,需要的時候從控存中讀出。

-微程序控制器

微程序

方案的

控制器

運算器

部件

微程序控制器基本原理

八取指令微程序段

轉取操作數或執行指令

?取操作數微程序段

轉執行指令

a中斷處理微程序段

轉取指令

\開始執行指令

?AND指令微程序段

轉取執行指令或中斷

>ADD指令微程序段

轉取執行指令或中斷

微程序控制器指令執行流程

?讀當前指令到IR,且PC=PC+1;

?根據指令的操作碼,得到該指令的微程

庠入口應任;

?讀取該指令的微指令,并送到相應的計

算機部件,完成微操作,同時,得到下

一微指令的地址;

?重復上一步,直到本條指令執行完畢;

?判中斷標志,如有,則進行中斷處理;

?轉取指令,執行下一條指令

微程序控制器的運行原理

?每條指令一個執行步驟用到的全體控制信號

組成一微指令

?每條指令可以包括一到多個微操作

?用多條微指令解釋每條指令的整個執行過程

?全部微指令的集合叫做微程序

?執行一條微指令所用的時間被稱為一個微周

期。

?微指令的格式和內容:

-下地址字段控制命令字段

微程序控制器組成

ALU

狀態標志

clock

下地址控制

控制信號

微程序控制器設計

?定序器

-根據指令操作碼、指令當前步驟以及條件碼,

確定下一步驟的微程序地址

?微指令

-給出當前指令的當前步驟要完成指令規定的

功能,各功能部件所需要的控制信號。對控

制器本身而言,則是要給出下一步驟的微程

—址。

-水平

-垂直

下地址

■順序執行下一條微指令

?無條件轉移到某條微指令

?根據微指令的某一狀態結果,選擇順序

執行或轉向某一地址

?微子程序調用,要使用到微堆棧

?多路轉移

■根據指令操作碼,轉移到指令的入口地

定序器組成

微指令微地址

寄存器寄存器

標志

信號

指令寄存器

微指令設計

?微指令字長

-縮短控制存儲器的字長

?微程序的長度

-控制存儲器的容量

?提高性能

-提高整個計算機指令執行性能

微指令設計

?直接控制法

-直接給出各部件需要的控制信號(0或1)

-字段直接編譯法

-將某些互斥信號進行編碼,由譯碼器給出這

些信號,可縮短微指令字長

?垂直型微指令

-采用對微操作碼譯碼的方式給出控制信號,

可進一步縮短微指令字長

微程序控制器特點

?采用ROM存儲控制信號的方式,可擴展

性好

?兼容性實現比較容易

?容易實現復雜的指令系統

?性能比較低

?并行性不好

?主要用在CISC中

組合邏輯控制器

?采用邏輯電路直接提供全部控制信號

?輸入

-操作碼

-指令狀態字

-指令步驟編碼(節拍)

-外部信號(Reset等)

?輸出

-全部控制信號

?主要解決的問題

-節拍轉換

-控制信號生成

節拍發生器

?控制每條指令的執行步驟

?用觸發器實現

?有限狀態自動機

?用觸發器狀態表示當前執行步驟

?狀態自動機自動轉入下一狀態

節拍發生器設計舉例

我們假定某機器的指令系統有兩條指令A和B,其中A指令需要4個步驟完成,

而B指令只需要3個步驟。為此,節拍發生器需要有2個觸發器,用它形成的4

個狀態來標記不同的步驟。如給A指令分配的節拍狀態是00-01-10-11,B

指令分配的節拍狀態為00-10-11o

TT,

A0LAB1。TJ

001001

000110

011010

101011

100111

111000

110100

T0'=/T0*/T1*/A*B+/T0*T1*A7B+T0*/T1

T1'=/T0*/T1*A7B+T0*/T1

控制信號生成

?直接利用邏輯電路生成控制信號

-大規模集成電路

-現場可編程器件

?輸入

-節拍狀態

-條件碼

-指令操作碼

?輸出

-控制信號

組合邏輯控制器特點

?直接用邏輯電路實現,用節拍標記指令

步驟,性能良好

?可擴展性差,兼容性不好

?適合實現比較精簡的指令系統

?較容易實現并行

?常用于實現RISC

指令的執行過程

馮.諾依曼結構的計算機

即存儲程序的計算機,設置內存,存放

程序和數據,在程序運行之前存入。

執行程序:正確從程序首地址開始;

正確分步執行每一條指令,

并形成下條待執行指令的地址;

正確并自動地連續執行指令,

直到程序的最后一條指令。

每條指令的執行步驟

一讀取指令--------------------

是一次讀指令地址送入主存地址寄存器公共操作

內存操作讀主存,讀出內容送入指定的寄存器

—分析指令成

—按指令規定內容執行指令一

RR類型指令不同指令的操作步驟數,條

讀與誦存爰通指令和具體操作內容差異很大,可能執行指

就鯨塞嬰指令是每一條指令的特定操作一次或多次

其他類型指令

—檢查有無中斷請求

公共操作

若有,則響應中斷并轉中斷處理

若無,則轉入下一條指令的執行過程

典型指令的執行過程舉例

20000001ADDr0,rl;加法指令

20010790MVRRr9,r0;傳送指令

2002E709STRA[2007],r9;寫內存指令,這是一條雙字指令,

2007;第二個字中的807是直接地址

20048280IN80;讀串行口數據到R0低8位

200544FAJRC2000;若C為1轉移到2000,否則順序執行

20068F00RET;子程序返回指令

其他一些指令與這里的幾條指令有相當多的共同特性,屬于

同一組的指令的執行步驟非常類似。

指令執行步驟簡單的文字描述

加法指令ADDRO,RI

讀取指令①AR-PC(注)形

②讀主存,IR一讀出內容成

PC―PC+1—條

執行指令③(地

ALU—R0址

ALU-R1

,執行+

、R0-ALU,記憶結果特征

結束,判中斷

寄存器內容傳送指令

MVRRR9,R0

讀取指令①AR—PC(注)形

②[讀主存,讀出內容成

IR—下

PCPC+1?條

執行指令③地

ALU-0址

ALU—R0

執行+

R9—ALU

結束,判中斷

寫寄存器內容到主存

STRA[2007],R9

(地址2007存在指令的第二個字中)

讀取指令①AR―PC

②讀主存,IR一讀出內容

PCPC+1J

執行指令③JAR—PC,t

\PC<-PC+1—.汽

④讀主存,AR一讀出內容址

5)rALU<-0,ALU—R9,+

\寫主存,總線―ALU,

結束,判中斷

輸入指令IN80

讀取指令①AR—PC(注)形

②讀主存,一讀出內容

rIR下

二PC—PC+1.條

執行指令③AR—I/OPort址

④r讀外設,ALU一讀出數據

ALU―0

<執行+

<R0—ALU

結束,判中斷

相對轉移指令JRC2000

讀取指令①AR—PC(注)

②讀主存,一讀出內容成

fIR下

jPC—PC+1—條

執行指令若c=1則:址

尸ALU—PC

vALUoffset(IR低字節)

、二者相加,結果送PC

否則,PC不接收二者之和

結束,判中斷

子程序返回指令RET

讀取指令①AR-PC

②]讀主存,IR一讀出內容形

1PC—PC+1—下

執行指令③[AR—SP地

ISP―SP+1址

④讀主存,PC一讀出內容一

結束,判中斷

16位機的基本指令、擴展指令執行流程圖

TEC-2000教學機系統的組成

V

微程序運算器

計算機+內5

控制器(8/16位)口

終端

行實

接硬布線主存儲器驗

—口中

控制器(8/16位)驗

按鍵指示燈驗

當前微指令地址

兒個寄存器送內部總線內存與I/O片選

送入/出設備串行人/出

寄存器的接收允許的選擇控制信號及讀寫命令

廿?十廿產擴展實驗+5V

控制存儲器串行接口芯片

電平轉換線路直流電源

2片譯碼器3片譯碼器

微指令W鐘分頻線路]時鐘信號

址部件73

V.I/O片選

----1-------/OFCLK

微指令寄存器⑶<32串行接口

I/CC內存I/O端口.Reset

z-DC23^20DC13^l0/

串行入/出Intel8251芯片|.讀寫命令

控制命;令字段|/MIOREQ/WEZ3位地址高位地址其他通用

/OE微指令地址

下地址送譯碼電路

一,映射部件

字段A3?AOB3?B018?10C_/D

低8位

并行

SST2?SSTOSCI1?SCI0ARL低位地址地址總線

條件碼數據

SSH1?SSH0寄荏器I/O接口

SCC,8位入/出

日送地址寄存器數據總線

口口/OE

PCCoutCin■片選

8位

程序計數器8位運算器.擴展實驗

CLK1IR[(在運算器芯片內)|丙存儲暮?/0E

部件移位部怦.讀寫命令

啟指令寄存器移位信號:

信號

停8位8位

控轉移地址+iQ高位

制,件二地址總線

8位內部總線IBARH.

SCISSH|高位地址

移面壽臥(接地)I,寄存器I

8位INTP斷

進位信號舒/0E數據總線

時序實

信號.片選驗

控制信號CZ4VSSST“位運算器ICin8位線

發狀態位JyZr___丙荏能涯___一讀寫命令

形成部件路

生OvF

觸發器部件一部件INTS

器移位信號-r--------總位

f信號

-

位內部總線

8IB3個無鎖按鍵(中斷源)

來自八位開關△A來自八位開關

TEC2000總體框架

控制器應提供的控制信號

各Y15?Y0用16個指示燈顯示結果

18?615?312-0SSTSCISSH通過24位微型開關

提供控制信號

(1)對運算器的控制

24位控制信號,同24位微型開關內容,

A3?AO,B3?B0,18?16,15?13,12?10

SST2?0,SSH1?0,SCI1?0

寄存器分配:

R4:SPR5:PC

約定用法:R0:I/O指令約定使用,也是通用累加器

(2)讀寫主存儲器或I/O接口

從學習指令執行步驟考慮,理解對主存儲器讀寫的控制,

分成兩步:

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

2.給出讀寫命令,

讀操作時,把讀出數據保存起來,

寫操作時,還要給出寫入的數據。

從學習指令執行步驟考慮,理解對接口電路讀寫的控制,

分成兩步:

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

2.給出讀寫命令,

讀操作時,把讀出數據保存起來,

寫操作時,還要給出寫入的數據。

對內存和I/O接口的讀寫

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

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

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

000寫內存

001讀內存

010寫串口

011讀串口

1XX無內存和串口的讀寫操作

(3)對總線的控制

總線是用于連接計算機各個功能部件的

線路和連接線,通常由具有三態輸出功能的

器件構成,以便用分時地方式,在不同時刻

把不同的數據發送到總線上,任何時刻僅能

有一個數據發送到總線上;

總線上的數據可以被送到需要接收數據

的部件或者線路,多個線路可以同時接收同

一個來源數據。

計算機中總要使用3種類型的總線:

數據總線,地址總線,控制總線

(4)對內部總線和特定寄存器的控制

選擇送內部總線的信息來源控制指定寄存器接收信息

DC—信號名稱注釋DC2?信號名稱注釋

OOO/SWTOIB來自開關000NC不用

001/RTOIBALU的輸出001/GIR指令寄存器

010/ETOIB符號擴展16位010/GARL地址寄存器低位

Oil/FTOIB狀態位輸出011/GARH地址寄存器高位

100/STOIB符號擴展8位100/INTR取原中斷優先級

101/INTVH中斷向量的101/INTN置新中斷優先級

110/INTVL高、低8位110/EI開中斷

110NC不用110/DI關中斷

洋幸:要向客

合控制器的功能組成與指令執行步驟

⑥微程序控制器部件

④組合邏輯控制器部件

微程序控制器組成與設計

(1)微程序控制器的運行原理

(2)教學計算機的微程序控制器的實際組成

(3)微程序解釋的基本指令執行流程圖

(4)微指令的格式設計

(5)指令執行流程舉例與說明

(1)微程序控制器的運行原理

每條指令一個執行步驟用到的全體控制信號組成一微指令

每條微指令可以包括一到多個微操作。

用多條微指令(一個微程序)解釋每條指令的執行過程。

全部的微程序有機地組合在一起,被保在控制存儲器中。

執行一條微指令所用的時間被稱為一個微周期。

微指令的格式和內容:?個微周期

下地址字段控制命令字段收

讀與執行微指令的執行第i條微指令令

形成第i+1條微指令地址

并行流水技術?---

1出第i+1條微指令’

下地址字段的內容

得到下地址的方法:

在微指令下地址

1.由指令操作碼得到字段中表示清楚:

使用哪種方法,

2.微指令順序執行哪個(些)判斷條件,

3.微指令必轉或條件轉移要用的有關地址等,

并用專門電路完成必

多路微地址轉移要支持和處理,

4.微子程序調用和返回微指令的下地址是微

程序設計中要重點解

5.按次數循環一段微程序決的問題之一,

技術、技巧性強,

6.其他:如特定入口微地出應學得好些。

在教學計算機中,解決下地址使用了Am2910器件

Dll?DO

器件

Am2910/RLDCP/FULL

t

裝數寄存器/計數器

減量微堆棧指針

保持R/C^iSP

出棧/入棧

R為零

1零檢保持/清零

/cc測

命5字*12位

令微堆棧F

/CCEN譯

碼微程序計數

器aDRFNPC器RPC

13?10清零多路選擇器

增量器

/PL/MAP/VECT/OE

YU?Y0

完成R/CR/C使能代=高代=低

功能內容操作信號Y輸出堆棧Y輸出堆棧

0初始化/PL0清除0清除

1條件轉微子/PLRPCD壓入

2功能分支/MAPDD

3條件微轉移/PLpiPCD

4入棧與裝數注1/PLRPC壓入RPC壓入

6讀手撥開關/VECTRPCD

8R/C非零減1/PLFF

1二戶

非零循環.零/PLRPC彈出RPC彈出

10微子返回/PLRPCF彈出

14順序執行/PLNPC^PC

15三路轉移非零減1/PLFRPC彈出

.零J-I-A/PLD彈出RPC彈出

微命令字段的編碼譯碼方法

1.直接控制法

直接用微指令字的一位作一個控制信號則簡單且速度快,

但會使微指令字變得很長。

2.字段直接編譯法

把互斥的命令分在一組加以編碼,經譯碼器給出命令,

速度會稍慢,但可大大減短微指令字長度,確保互斥。

3.字段間接編譯法

是對直接譯碼的的一種改進,可進一步縮短微指令字長

度,即一個字段的某些微命令還受另一字段的制約。

4.常數源字段

微指令中分配幾位,用于給出特定用途的有關數值。

卜地址?lSCC當前地址

8個燈8個燈8個燈

CI3-0SCC3-0(2)微程序控制器組成

19174240383634

89II127756位的微指令字長,

14\71916151296521916159652191615:129652

/CC13-10D7~D0

3111Q7-Q0Q7-Q0Q7-Q02~52120

』GAL20V8

CPAM2910CLK374CLKCLK—?微下地址字段位,

八37716

/PL/OE/CLR

Y7-Y0/MAPD7~D0D7-D0D7-D023187614670

18171^387437X

201831393735337控制命令字段位,

1817141I3874340

181714138743CZ/INTS/Reset

IRH4?IRHO

卜地址

CI3WSCC3-0/MIOREPAVE12-10

18?16|113-11片組成控存。

221,19-1513-11197513Tl19-1513-11728c64

/OED7~DOD7~D0D7~D0一茂二DO-

/CE/CEMPROM1/CEMPROM2/CEMPROM31片28c65,從指令操

A7~A0ANA7-AOANA:AOASA7-A0

""會3~1025?~介工10251~03~1025l~~介3To

vcoc>§NDIRH7?【RHO作碼產生微地址,

:91025:S73-10254\

25173-1025173-101片374存8位下地址,

A8A7~A0A8A7~A0A8A7-AOA8A7~A0

202020

/CEMPROM4/CEMPROM5/CEMPROM6/CEMPROM71片273存8位條件碼,

D7-D0D7-D0D7~D0D7-D0

19-1513-1119?1513-11g5137119?1513-11

SA18-16SB15-13A3?A0SSTSSHSCIDC23-20DC13-101片377存8位現微地址。

溫馨提示

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

評論

0/150

提交評論