組成原理(十七):微程序設計


目錄


學習資料

哈工大《計算機組成原理》

控制單元CU設計:

  • 組合邏輯設計
  • 微程序設計

1.微程序設計基本思路

組合邏輯設計不便於擴展,增加一個指令需要改變電路

微程序設計示意圖:

理解:

  • 將可並行的微操作合並,用一個微指令替代
  • 執行該微指令,相當於並行執行多個微操作命令
  • 微指令代碼某一位均代表某個微操作,0代表不執行,1代表執行
  • 如果該指令中有多個1,表示一個節拍中有多個微操作並行
  • 微指令可以自由編程,實現微操作的多種組合
  • 進而可以在不改變邏輯電路的情況下添加新指令

2.微程序控制單元框圖及工作原理

2.1 機器指令對應的微程序

  • 每個指令取值是一樣的,間址和中斷可預測,各指令可以共用微程序
  • 執行階段操作不同,需要為每個指令編寫單獨的微程序
  • 控制存儲器中微程序個數=機器指令數+3

2.2 微程序控制單元基本框圖

  • CMAR:控制存儲器地址寄存器
  • CMDR:控制存儲器數據寄存器(存放微指令)
  • 順序邏輯:控制形成嚇一跳微指令地址
  • 地址譯碼:和主存的譯碼驅動相同

2.3 工作原理

1)取指階段:(三個時鍾周期/節拍)

2)執行階段

LDA指令微程序:(三個時鍾周期)

3)若無間址周期和中斷周期:

  • 循環執行取指微操作和執行微操作
  • 全部微操作指令存在CM中,執行過程中只需要讀出

3.微指令編碼方式(控制方式)

3.1 直接編碼

  • 操作控制的每一位代表一個微操作命令
  • 某位為1表示該控制信號有效

3.2 字段直接編碼

  • 將控制字段分為若干段,每段經過譯碼后發出控制信號
  • 每個字段中命令互斥,縮短了微指令字長,增加了譯碼時間

3.3 字段間接編碼

3.4 混合編碼

直接編碼和字段編碼(間接和直接)混合使用

  • 常用:直接編碼
  • 不常用:字段編碼

3.5 其他方式

如設置常數字段


4.微操作序列地址形成

1)微指令的下地址字段給出

2)根據機器指令操作碼形成

3)增量計數器:

  • 取指,中斷,執行等周期,下地址都為M+1這種遞增形式
  • 可以采用增量計數器來代替

4)分支轉移:

5)測試網絡:

6)硬件產生:

  • 第一條微指令地址,由專門硬件產生
  • 中斷周期,由硬件產生中斷周期微程序首地址

7)后繼微指令地址形成方式原理圖


5.微指令格式

  1. 水平微指令:一次能定義並行多個並行操作
  2. 垂直微指令
    • 類似機器指令操作碼的方式
    • 由微操作碼字段規定微指令的功能
    • 基本已經淘汰了
  3. 兩種微指令格式比較:
    • 水平微指令比垂直微指令並行操作能力強,靈活性強
    • 水平微指令執行一條機器指令所要的微指令數目少,速度快
    • 水平微指令用較短的微程序結構換取較長的微指令結構
    • 水平微指令與機器指令差別大

6.靜態微程序設計和動態微程序設計

靜態:微程序無需改變,采用ROM

動態:通過改變微指令和微操作改變機器指令,有利於仿真,采用EPROM


7.毫微程序設計

微程序設計:微程序解釋機器指令

毫微程序設計:毫微程序解釋微指令

毫微程序控制器基本組成


8.微程序執行方式

串行微程序控制:串行方式
並行微程序控制:流水方式



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM