5.4.3控制器设计 微程序控制器 微指令的设计
1.微指令的格式
相容性微命令:可以并行完成的微命令。
互斥性微命令:不允許并行完成的微命令。
1.1水平型微指令
一條微指令能定義多個可并行的微命令。
1.1.1基本格式
優點:微程序短,執行速度快;
缺點:微指令長,編寫微程序較麻煩。
1.2垂直型微指令
一條微指令只能定義一個微命令,由微操作碼字段規定具體功能
1.2.1基本格式
優點:微指令短、簡單、規整,便于編寫微程序;
缺點:微程序長,執行速度慢,工作效率低。
1.3混合型微指令
在垂直型的基礎上增加一些不太復雜的并行操作。
優點:微指令較短,仍便于編寫;微程序也不長,執行速度加快。
2.微指令的編碼方式
2.1水平型微指令
2.1.1直接編碼(直接控制)方式
在微指令的操作控制字段中,每一位代表一個微操作命令
某位為“1”表示該控制信號有效
比如我們想進行取址操作,將(PC)→MAR和1→R的操作控制置為1就行
優點:簡單、直觀,執行速度快,操作并行性好。
缺點:微指令字長過長,n個微命令就要求微指令的操作字段有n位,造成控存容量極大。
2.1.2字段直接編碼方式
將微指令的控制字段分成若干“段”,每段經譯碼后發出控制信號微命令字段分段的原則:
①互斥性微命令分在同一段內,相容性微命令分在不同段內。
②每個小段中包含的信息位不能太多,否則將增加譯碼線路的復雜性和譯碼時間。
③一般每個小段還要留出一個狀態,表示本字段不發出任何微命令。因此,當某字段的長度為3位時,最多只能表示7個互斥的微命令,通常用000表示不操作。
優點:可以縮短微指令字長 。
缺點:要通過譯碼電路后再發出微命令,因此比直接編碼方式慢 。
2.1.2.1例子
某計算機的控制器采用微程序控制方式,微指令中的操作控制字段采用字段直接編碼法,共有33個微命令,構成5個互斥類,分別包含7、3、12、5和6個微命令,則操作控制字段至少有多少位?
第1個互斥類有7個微命令,要留出1個狀態表示不操作,所以需要表示8種不同的狀態,故需要3個二進制位。以此類推,后面4個互斥類各需要表示4、13、6、7種不同的狀態,分別對應2、4、3、3個二進制位。故操作控制字段的總位數為3+2+4+3+3 = 15 位
若采用直接編碼方式,則控制字段需要33位。
2.1.3字段間接編碼方式
一個字段的某些微命令需由另一個字段中的某些微命令來解釋,由于不是靠字段直接譯碼發出的微命令,故稱為字段間接編碼,又稱隱式編碼。
優點:可進一步縮短微指令字長。
缺點:削弱了微指令的并行控制能力,故通常作為字段直接編碼方式的一種輔助手段。
3.微指令的地址形成方式
3.1 微指令的下地址字段指出
微指令格式中設置一個下地址字段,由微指令的下地址字段直接指出后繼微指令的地址,這種方式又稱為斷定方式。
3.1.1例題
3.2根據機器指令的操作碼形成
當機器指令取至指令寄存器后,微指令的地址由操作碼經微地址形成部件形成。
3.3增量計數器法
類似 ( CMAR ) + 1→ CMAR
3.4分支轉移
轉移方式:指明判別條件;轉移地址:指明轉移成功后的去向。
3.5通過測試網絡
即5.4.2中的順序邏輯
3.6 由硬件產生微程序入口地址
第一條微指令地址 由專門硬件產生(用專門的硬件記錄取指周期微程序首地址)
中斷周期由硬件產生 中斷周期微程序首地址(用專門的硬件記錄)
總結
以上是生活随笔為你收集整理的5.4.3控制器设计 微程序控制器 微指令的设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows7配置java环境变量
- 下一篇: Airsim动态 | ROS教程(Air