第7章CPU的微码、保护和处理器模式.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章CPU的微码、保护和处理器模式.ppt

第 7 章 CPU的微碼、保護 和處理器模式 電腦進化 早期計算機 盡量把功能集中到處理器內部 負責計算和I/O功能 現代電腦 不再遵循功能集中策略 使用多個處理器,讓每個處理器只專注於某些特定功能,當作部分的子系統。 比如:磁碟機內部使用一個I/O處理器,負責資料的轉移任務。 CPU複雜度 負責各種不同的控制和處理任務 現代CPU需要大量的邏輯閘(由電晶體組成),才能建構精密的CPU結構。 比如:英特爾Pentium處理器內含高達5400萬顆電晶體。 CPU特性 多重角色 權限保護 硬體優先權 普遍性 資料大小 高速 執行模式 受到各種CPU不同的特性影響,電腦的執行可以結合或獨立地衍生出許多特點。 硬體可以有多重的執行模式,在任何時間點,執行模式將決定CPU的運作方式。 模式觀察 CPU執行模式決定目前的操作特性,不同的執行模式組合出不同的系統,並且決定哪些硬體可以用在目前的模式上。 模式變更 自動模式(硬體啟動) 外部硬體可以直接變更CPU模式 比如:I/O設備要求CPU服務時,硬體會自動地變更模式。 人工模式(程式控制) 控制作業系統也可以變更CPU模式。 某些CPU也讓應用程式可以主動控制多重模式,切換模式。 模式變更(Cont.) 程式到底如何變更模式? 通常有三個方法: 內建一個可以設定模式的指令 使用一個專用的模式暫存器來控制模式 某些指令產生的邊際效應,也可能變更模式。 權限保護 執行模式通常關係到CPU的權限保護能力,可能有些應用程式會惡意(或無意)地發佈命令給硬體,以執行或控制某些功能。 基本策略:兩層權限 高階策略:多層權限 基本權限策略 應用程式使用較低的權限 作業系統具有較高的權限 微碼指令 複雜指令集分成兩層組織圖: 微碼指令:微控制器提供一個快速、但小型的基本運算。 巨集指令集:結構師會撰寫微碼程式,以建構CPU的所有指令。 微碼指令組織圖 微碼實現 微控制器 最低階的處理器 直接以數位電路建構 只提供基本指令 巨集指令 使用一組微碼程序,建構而成。 指令功能和微碼可以完全不同 資料和暫存器位元數目 巨集的資料位元可以和微碼使用的位元不同 範例 微控制器使用16位元的硬體 巨集指令卻可以使用32位元的運算 微碼算術範例 微碼變異體 微碼可以不斷地延伸,定義出各種不同的巨集指令,讓CPU巨集系統(指令格式、運算元型式、運算元編碼)顯得非常有彈性。 主要的缺點是CPU沒有引進指令管線的相關硬體,效能相對較差。 為什麼要使用微碼? 微碼提供一個較高的階層概念 建構微碼和硬體電路實現的比較: 建構微碼比硬體電路更容易實現 建構微碼比硬體電路更不容易出錯 建構微碼比硬體電路節省開發時間 修改微碼比修改硬體電路簡單 換言之,建構微碼更容易製造出快速的新CPU版本。 微碼缺點 微碼設計比硬體電路更容易形成額外的負荷。 因為每一個巨集指令必須執行多個微指令,因此微控制器必須以更高的速度執行(顯然要快CPU許多)。 巨集指令的成本相依於微指令集。 關於程式設計師 微控制器可以幫助設計師,使用微指令集,來建構CPU的巨集指令集。 微控制器和微碼兩者都置放在CPU內部的積體電路,屬於內部實體機制,一般的程式設計師無法看見這些內部機制,但可以看見巨集指令集。 可規劃微碼邏輯 某些CPU可以把控制器和微碼暴露於外,讓其它廠商能夠置換某些微碼的功能。 置換微碼相當浪費時間,可能必須重新定義晶片的特殊接腳,或加入外部記憶體。 客戶可以使用微碼來建構巨集指令,建立自己專屬的巨集指令集。 微碼覆寫機制 某些CPU提供微碼覆寫的機制,讓廠商自己針對工作需求,來建立專屬的最佳化巨集指令集,以進一步地追求彈性和效能。 實作 微碼撰寫繁雜且耗時 結果不易測試 微碼效能不同於離散硬體 微碼型態 微碼使用何種程式規劃策略? 兩種基本型態 垂直微碼 水平微碼 垂直微碼 CISC處理器使用一個小型但快速的RISC處理器,來當作微控制器。 垂直微碼類似組合語言的規劃方式 垂直微碼的語法,一次執行一個微指令。 硬體解碼巨集指令,並且引入微碼程序,來加以解釋。 垂直微碼優缺點 優點 容易讀取 程式設計師很容易使用 缺點 對硬體效能而言,垂直微碼並不是很好的選擇,因為需要更高速時脈的微控制器。 一個巨集指令需要多個微碼指令,所以效能較差。 水平微碼 另一種微碼型態 電腦結構師會使用水平編碼,來克服垂直編碼的限制 水平編碼的底層使用平行硬體,具有快速執行的優點 水平微碼重點 水平編碼運用高速的硬體,採用不同於程式的設計介面,較難規劃。 水平微碼策略 水平編碼深入底層硬體 每個指令控制多個功能性單元,來建置最底層的硬體。 運用資料路徑觀念,來互連這些元件。 水平微碼範例 硬體控制命令範例 水平微碼格式 水平微

文档评论(0)

gshshxx + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档