RM新时代网站-首页

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>電腦硬件>臺式機>

組合邏輯控制器組成結(jié)構(gòu)及工作原理解析

2010年04月15日 11:20 m.hljzzgx.com 作者:佚名 用戶評論(0

組合邏輯控制器組成結(jié)構(gòu)及工作原理解析

按照控制信號產(chǎn)生的方式不同,控制器分為微程序控制器和組合邏輯控制器兩類

微程序控制器是將全部控制信號存貯在控制存儲器中。
優(yōu)點:控制信號的邏輯設(shè)計、實現(xiàn)及改動都較容易。
缺點:產(chǎn)生控制信號所需的時間較長。

組合邏輯控制器,又稱硬布線方案控制器,是用組合邏輯的門電路實現(xiàn)控制信號。
優(yōu)點:產(chǎn)生控制信號所需的延遲時間少,對提高系統(tǒng)的運行速度有利。
缺點:控制信號的邏輯設(shè)計復(fù)雜,用門電路實現(xiàn)也較困難,尤其要變動一些設(shè)計更不方便。(見圖)

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

1、組成: PC、IR、脈沖源和啟??刂七壿嬇c微程序控制器相同,不同的是:
●微程序控制器中的控制存儲器在組合邏輯控制器中變成時序控制信號形成部件,是用組合邏輯的門電路實現(xiàn)的;
●微程序控制器中的下地址形成部件在組合邏輯控制器中變成節(jié)拍發(fā)生器,是由計數(shù)器線路實現(xiàn)的;
●增加了指令譯碼器,用于標(biāo)識每一條不同的指令。

2、運行原理: 依據(jù)執(zhí)行過程中的操作碼、當(dāng)前指令所處的執(zhí)行步驟等輸入信號,用組合邏輯門電路直接、快速地形成并送出指令當(dāng)前執(zhí)行步驟要求的控制信號。

二、TEC-8教學(xué)計算機的組成與設(shè)計

1、簡介: TEC-8教學(xué)計算機字長8位 ,地址總線16位(可尋址64K內(nèi)存) ,控制器用組合邏輯控制器。

●運算器是Am2901(見圖)

●16個通用寄存器中,R0、R1、R2和R3作為通用寄存器,其余12個作為專用寄存器
R5,R4用作16位的PC(程序計數(shù)器)
R7,R6用作16位的SP(堆棧指示器)
R9,R8用作內(nèi)存讀寫地址AR
R11,R10用作指令轉(zhuǎn)移或子程序的地址

2、指令系統(tǒng)概述

●指令中用到的符號:
DR:目的寄存器
SR: 源寄存器
OFFSET: 變址偏移量
DATA: 立即數(shù)
X: 一個bit位,可取值0或1
C、Z、V、S: 分別代表進位、結(jié)果為0、溢出 和結(jié)果的符號位

●指令長度:單字節(jié)或雙字節(jié)指令兩種

●指令的操作碼:采用操作碼位數(shù)逐段擴展的技術(shù),最少4位,最多8位

●指令的分類:首先按操作數(shù)的個數(shù)來分
(1)雙操作數(shù)指令Ⅰ:
格式:

格式:

操作碼
0 X X X DR SR

已實現(xiàn)5條指令:ADD DR, SR ;加法指令
(使用R3~R0) SUB DR, SR ;減法指令
CMP DR, SR ;比較指令
AND DR, SR ;邏輯與指令
MOV DR, SR ;傳送指令

(2)單操作數(shù)指令Ⅰ:

1 0 X X X X DR/SR/IO
PORT地址

已實現(xiàn)8條指令:SHR DR ;邏輯右移指令
(使用R3~R0) SHL DR ;邏輯左移指令
PUSH DR;壓棧指令
POP DR;出棧指令
CMP DR, SR ;比較指令
STO SR ;存數(shù)指令
LOD DR ;取數(shù)指令
IN I/O PORT ;輸入指令
  OUT I/O PORT ;輸出指令

(3)單操作數(shù)指令Ⅱ:
格式:

格式:

操作碼
1 1 0 0 DR
INC DR; 加1指令

(4)雙操作數(shù)指令Ⅱ:

格式:

操作碼
1 1 0 1 DR
DATA
MOVE DR, DATA; 立即數(shù)轉(zhuǎn)送指令

(5)雙字節(jié)指令
轉(zhuǎn)移指令:JR OFFSET;無條件轉(zhuǎn)移指令
JZ OFFSET;結(jié)果為0轉(zhuǎn)移指令
JNZ OFFSET;結(jié)果不為0轉(zhuǎn)移指令
JC OFFSET;結(jié)果有進位轉(zhuǎn)移指令
JNC OFFSET ;結(jié)果無進位轉(zhuǎn)移指令

操作碼

格式:

1 1 1 0 X X X X
OFFSET/IO PORT/DATA

(6)無操作數(shù)指令:已實現(xiàn)7條
PUSHF ;壓棧指令
POPF ;出棧指令
STC ;進位位C置1
CLC ;進位位C置0
RET ;返回主程序
JMP ;轉(zhuǎn)移指令,轉(zhuǎn)移地址由R11,R10給出
CALL ;調(diào)用子程序指令,轉(zhuǎn)移地址由R11,R10給出

格式:

操作碼
1 1 1 1 X X X X

指令的執(zhí)行步驟:(對于8位字長教學(xué)實驗機)
讀指令:地址寄存器低位(R8) ←指令的低位地址(R4)
地址寄存器高位(R9) ←指令的高位地址(R5)

修改指令地址 PC←PC+1
讀內(nèi)存 ,指令寄存器←讀出的指令
分析指令

執(zhí)行指令:
●通用寄存器之間的運算和傳送,可一步完成
●讀寫內(nèi)存或讀寫外設(shè)操作,通常要三步完成,前兩步用于向地址寄存器送入低、高位各8位地址,第三步完成內(nèi)存的讀、寫操作。

注:一條指令可僅在通用寄存器之間操作,可僅包括讀寫內(nèi)存或外設(shè),或它們一次、多次的不同的組合,因此,不同指令的執(zhí)行步驟和操作內(nèi)容是不一樣的。

判中斷請求:有中斷請求,轉(zhuǎn)去響應(yīng)中斷并處理;
無中斷請求,執(zhí)行下一條指令。

其次按指令的功能來分:

A組指令: ADD,SUB,CMP,AND,MOV,SHR,SHL,INC,IN,OUT,STC,CLC 共12條 這類指令主要在CPU內(nèi)通用寄存器間傳送,在取指令之后一步完成。

B組指令:
LOD,STO,PUSH,POP,PUSHF,POPF,MVD
這類指令完成的是一次內(nèi)存讀、寫,在取指令之后可三步完成。前兩步用于向地址寄存器送入低、高位各8位地址,第三步完成內(nèi)存的讀、寫操作。

C組指令:
CALL, RET, JMP, JR, JNZ, JZ, JNC, JC
這類指令完成的是與指令轉(zhuǎn)移有關(guān)的操作,相對轉(zhuǎn)移指令有5條: JR, JNZ, JZ, JNC, JC
轉(zhuǎn)移地址=當(dāng)前指令地址+指令第二字節(jié)中的偏移量
其中JNZ, JZ, JNC, JC屬于條件轉(zhuǎn)移指令,條件成立時轉(zhuǎn)移要四步完成:前兩步送讀偏移量的內(nèi)存地址,后兩步讀出偏移量計算轉(zhuǎn)移地址送PC;條件不成立順序執(zhí)行,只須兩步。
CALL , RET兩條指令比較復(fù)雜,
為恢復(fù)或保存斷點需兩次讀寫內(nèi)存,共需六步,還用兩步為CALL指令給出子程序的入口地址。

節(jié)拍發(fā)生器
(1)作用:是用多位觸發(fā)器的輸出信號的不同組合狀態(tài),來標(biāo)識每條指令的執(zhí)行步驟。

(2)觸發(fā)器的個數(shù)的確定:觸發(fā)器輸出能組合出的狀態(tài)數(shù)應(yīng)等于或大于全部指令執(zhí)行狀態(tài)的數(shù)目。

(3)為指令的執(zhí)行狀態(tài)分配編碼:
原則:從一個狀態(tài)變到另一狀態(tài)時,狀態(tài)發(fā)生變化的觸發(fā)器的數(shù)目應(yīng)盡量少,即4個二進制位中只變一個。

(4)寫出每位觸發(fā)器狀態(tài)變化的邏輯表達(dá)式:
方法:狀態(tài)用四位編碼表示。
①當(dāng)從一個狀態(tài)轉(zhuǎn)換到另一個狀態(tài)時,若一位觸發(fā)器的狀態(tài)由0變?yōu)?或仍保持1時,該情形要寫進表達(dá)式中。

②當(dāng)狀態(tài)變化一定會發(fā)生時(不受任何條件限制),由原狀態(tài)的4位編碼組成一個條件寫進表達(dá)式中。

③當(dāng)狀態(tài)變化是在某些條件成立時才會出現(xiàn),則由原狀態(tài)的4位編碼再“與”上這些條件后寫進表達(dá)式中。

非常好我支持^.^

(81) 50%

不好我反對

(81) 50%

( 發(fā)表人:admin )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?
      RM新时代网站-首页