組合邏輯控制器組成結構及工作原理解析
按照控制信號產生的方式不同,控制器分為微程序控制器和組合邏輯控制器兩類
微程序控制器是將全部控制信號存貯在控制存儲器中。
優點:控制信號的邏輯設計、實現及改動都較容易。
缺點:產生控制信號所需的時間較長。
組合邏輯控制器,又稱硬布線方案控制器,是用組合邏輯的門電路實現控制信號。
優點:產生控制信號所需的延遲時間少,對提高系統的運行速度有利。
缺點:控制信號的邏輯設計復雜,用門電路實現也較困難,尤其要變動一些設計更不方便。(見圖)
一、組合邏輯控制器的組成與運行原理
1、組成: PC、IR、脈沖源和啟停控制邏輯與微程序控制器相同,不同的是:
●微程序控制器中的控制存儲器在組合邏輯控制器中變成時序控制信號形成部件,是用組合邏輯的門電路實現的;
●微程序控制器中的下地址形成部件在組合邏輯控制器中變成節拍發生器,是由計數器線路實現的;
●增加了指令譯碼器,用于標識每一條不同的指令。
2、運行原理: 依據執行過程中的操作碼、當前指令所處的執行步驟等輸入信號,用組合邏輯門電路直接、快速地形成并送出指令當前執行步驟要求的控制信號。
二、TEC-8教學計算機的組成與設計
1、簡介: TEC-8教學計算機字長8位 ,地址總線16位(可尋址64K內存) ,控制器用組合邏輯控制器。
●運算器是Am2901(見圖)
●16個通用寄存器中,R0、R1、R2和R3作為通用寄存器,其余12個作為專用寄存器
R5,R4用作16位的PC(程序計數器)
R7,R6用作16位的SP(堆棧指示器)
R9,R8用作內存讀寫地址AR
R11,R10用作指令轉移或子程序的地址
2、指令系統概述
●指令中用到的符號:
DR:目的寄存器
SR: 源寄存器
OFFSET: 變址偏移量
DATA: 立即數
X: 一個bit位,可取值0或1
C、Z、V、S: 分別代表進位、結果為0、溢出 和結果的符號位
●指令長度:單字節或雙字節指令兩種
●指令的操作碼:采用操作碼位數逐段擴展的技術,最少4位,最多8位
●指令的分類:首先按操作數的個數來分
(1)雙操作數指令Ⅰ:
格式:
格式: |
操作碼 | ||
0 X X X | DR | SR |
已實現5條指令:ADD DR, SR ;加法指令
(使用R3~R0) SUB DR, SR ;減法指令
CMP DR, SR ;比較指令
AND DR, SR ;邏輯與指令
MOV DR, SR ;傳送指令
(2)單操作數指令Ⅰ:
1 0 X X X X | DR/SR/IO PORT地址 |
已實現8條指令:SHR DR ;邏輯右移指令
(使用R3~R0) SHL DR ;邏輯左移指令
PUSH DR;壓棧指令
POP DR;出棧指令
CMP DR, SR ;比較指令
STO SR ;存數指令
LOD DR ;取數指令
IN I/O PORT ;輸入指令
OUT I/O PORT ;輸出指令
(3)單操作數指令Ⅱ:
格式:
格式: |
操作碼 | |
1 1 0 0 | DR |
(4)雙操作數指令Ⅱ:
格式: |
操作碼 | |
1 1 0 1 | DR |
DATA |
(5)雙字節指令
轉移指令:JR OFFSET;無條件轉移指令
JZ OFFSET;結果為0轉移指令
JNZ OFFSET;結果不為0轉移指令
JC OFFSET;結果有進位轉移指令
JNC OFFSET ;結果無進位轉移指令
操作碼 |
||
格式: |
1 1 1 0 | X X X X |
OFFSET/IO PORT/DATA |
(6)無操作數指令:已實現7條
PUSHF ;壓棧指令
POPF ;出棧指令
STC ;進位位C置1
CLC ;進位位C置0
RET ;返回主程序
JMP ;轉移指令,轉移地址由R11,R10給出
CALL ;調用子程序指令,轉移地址由R11,R10給出
格式: |
操作碼 | |
1 1 1 1 | X X X X |
指令的執行步驟:(對于8位字長教學實驗機)
讀指令:地址寄存器低位(R8) ←指令的低位地址(R4)
地址寄存器高位(R9) ←指令的高位地址(R5)
修改指令地址 PC←PC+1
讀內存 ,指令寄存器←讀出的指令
分析指令
執行指令:
●通用寄存器之間的運算和傳送,可一步完成
●讀寫內存或讀寫外設操作,通常要三步完成,前兩步用于向地址寄存器送入低、高位各8位地址,第三步完成內存的讀、寫操作。
注:一條指令可僅在通用寄存器之間操作,可僅包括讀寫內存或外設,或它們一次、多次的不同的組合,因此,不同指令的執行步驟和操作內容是不一樣的。
判中斷請求:有中斷請求,轉去響應中斷并處理;
無中斷請求,執行下一條指令。
其次按指令的功能來分:
A組指令: ADD,SUB,CMP,AND,MOV,SHR,SHL,INC,IN,OUT,STC,CLC 共12條 這類指令主要在CPU內通用寄存器間傳送,在取指令之后一步完成。
B組指令:
LOD,STO,PUSH,POP,PUSHF,POPF,MVD
這類指令完成的是一次內存讀、寫,在取指令之后可三步完成。前兩步用于向地址寄存器送入低、高位各8位地址,第三步完成內存的讀、寫操作。
C組指令:
CALL, RET, JMP, JR, JNZ, JZ, JNC, JC
這類指令完成的是與指令轉移有關的操作,相對轉移指令有5條: JR, JNZ, JZ, JNC, JC
轉移地址=當前指令地址+指令第二字節中的偏移量
其中JNZ, JZ, JNC, JC屬于條件轉移指令,條件成立時轉移要四步完成:前兩步送讀偏移量的內存地址,后兩步讀出偏移量計算轉移地址送PC;條件不成立順序執行,只須兩步。
CALL , RET兩條指令比較復雜,
為恢復或保存斷點需兩次讀寫內存,共需六步,還用兩步為CALL指令給出子程序的入口地址。
節拍發生器
(1)作用:是用多位觸發器的輸出信號的不同組合狀態,來標識每條指令的執行步驟。
(2)觸發器的個數的確定:觸發器輸出能組合出的狀態數應等于或大于全部指令執行狀態的數目。
(3)為指令的執行狀態分配編碼:
原則:從一個狀態變到另一狀態時,狀態發生變化的觸發器的數目應盡量少,即4個二進制位中只變一個。
(4)寫出每位觸發器狀態變化的邏輯表達式:
方法:狀態用四位編碼表示。
①當從一個狀態轉換到另一個狀態時,若一位觸發器的狀態由0變為1或仍保持1時,該情形要寫進表達式中。
②當狀態變化一定會發生時(不受任何條件限制),由原狀態的4位編碼組成一個條件寫進表達式中。
③當狀態變化是在某些條件成立時才會出現,則由原狀態的4位編碼再“與”上這些條件后寫進表達式中。
非常好我支持^.^
(81) 50%
不好我反對
(81) 50%
相關閱讀:
- [電子說] 電源管理芯片U6117兩種封裝SOP-8、DIP-8,靈活滿足應用需求 2024-12-06
- [電子說] 探索先進制造技術:高效脈沖焊接控制器在工業生產中的革新應用 2024-12-06
- [電子說] 電容儲能焊接技術的先進控制器:實現高效精密焊接的新突破 2024-12-06
- [電子說] MCU如何提升高壓系統的實時性能 2024-12-05
- [電子說] MCU如何增強高壓實時控制系統中的故障檢測功能 2024-12-05
- [電子說] 極海G32A1445 BCM車身控制器應用方案介紹 2024-12-05
- [電子說] 環宇智行TITAN5系列域控制器再升級 2024-12-05
- [電子說] 回顧上汽集團一周大事件 2024-12-05
( 發表人:admin )