1. 程式人生 > 實用技巧 >【王道筆記-計算機組成原理】第五章 中央處理器

【王道筆記-計算機組成原理】第五章 中央處理器

文章目錄

本章的知識結構圖如下:

在這裡插入圖片描述

一、CPU的簡單介紹

1.CPU的功能

  CPU=控制器+運算器。
  控制器負責協調並控制計算機各部件執行程式的指令序列,包括取指令、分析指令和執行指令。
  運算器負責對資料進行加工。

  CPU的功能包括:

  • 指令控制(程式的順序控制)
  • 操作控制(產生並管理操作訊號)
  • 時間控制
  • 資料加工
  • 中斷處理

2.CPU的基本結構

在這裡插入圖片描述

  • 運算器

算術邏輯單元ALU:算術/邏輯運算
暫存暫存器:暫存從主存讀來的資料
累計暫存器:存放中間計算結果
通用暫存器:存放運算元和各種地址資訊,是可程式設計指定多種功能的暫存器

位數取決於機器字長。
程式狀態暫存器PSW:保留各種狀態資訊,比如溢位標誌OF、符號標誌SF、零標誌ZF、進位標誌CF等。
移位器:移位運算。
計數器:控制乘除運算的操作步數。

  • 控制器:整個系統的指揮樞紐,從主存中取出指令、分析指令併產生有關的操作控制訊號。

程式計數器PC:下一條指令的地址決定了指令的執行順序,位數取決於儲存器的字數/儲存器容量。
指令暫存器IR:當前正在執行的指令位數取決於指令長度。
地址暫存器MAR:存放要訪問的主存單元的地址。
資料暫存器MDR:存放向主存寫入的或讀出的資訊。
時序系統:產生各種時序訊號。
微操作訊號發生器:產生控制訊號

  控制器的暫存器除了PC以外對使用者都不可見(透明),運算器的暫存器對使用者可見(不透明)。

二、指令執行過程

1.指令週期

  指令週期、機器週期(可定長可不定長)和時鐘週期(最小的CPU時間單位)的對應關係:
在這裡插入圖片描述

  完整的指令週期:
在這裡插入圖片描述
  上述4個工作週期都有CPU訪存操作,只是訪存的目的不同。取指週期是為了取指令(控制器自動進行,不需要得到相應的指令),間址週期是為了取有效地址,執行週期是為了取運算元,中斷週期是為了儲存程式斷點。
  為了區別不同的工作週期,在CPU內設定4個標誌觸發器FE、IND、EX和INT,它們分別對應取指、間址、執行和中斷週期,並以"1"狀態表示有效,分別由1→FE、1→IND、1→EX 和1→INT這4個訊號控制。

2.指令週期的資料流

  • 取值週期

  取指週期的任務是根據PC中的內容從主存中取出指令程式碼並存放在IR中。
  取指週期的資料流如圖所示。PC中存放的是指令的地址,根據此地址從記憶體單元中取出的是指令並放在指令暫存器IR中,取指令的同時PC加1。
在這裡插入圖片描述

  • 間指週期

  間址週期的任務是取運算元有效地址。以一次間址為例,將指令中的地址碼送到MAR並送至地址匯流排,此後CU向儲存器發讀命令,以獲取有效地址並存至MDR
在這裡插入圖片描述

  • 執行週期

  根據IR中的指令的操作碼和MDR中地址對應的主存的運算元,通過ALU操作產生執行結果。
  不同的指令執行週期操作不同,因此資料流無法統一。

  • 中斷週期

在這裡插入圖片描述
在這裡插入圖片描述

3.指令執行方案

  • 單指令週期

  對所有指令都選用相同的執行時間(固定的時鐘週期)來完成,稱為單指令週期方案。指令之間序列執行,即下一條指令只能在前一條指令執行結束後才能啟動。因此,指令週期取決於執行時間最長的指令的執行時間。對於那些本來可以在更短時間內完成的指令,要使用這個較長的週期來完成,會降低整個系統的執行速度。

  • 多指令週期

  對不同型別的指令選用不同的執行步驟來完成,稱為多指令週期方案。指令之間序列執行,即下一條指令只能在前一條指令執行結束後才能啟動。但可選用不同個數的時鐘週期來完成不同指令的執行過程,指令需要幾個週期就為其分配幾個週期,而不再要求所有指令佔用相同的執行時間。

  • 流水線方案

  指令之間可以並行執行的方案,稱為流水線方案,其追求的目標是力爭在每個時鐘脈衝週期完成一條指令的執行過程(只在理想情況下才能達到該效果)。這種方案通過在每個時鐘週期啟動一條指令,儘量讓多條指令同時執行,但各自處在不同的執行步驟中。

三、

附:王道課後選擇

1.條件轉移指令執行時所依據的條件來自(標誌暫存器)。

2.所謂的n位CPU,n指的是(資料匯流排線數)。

3.轉移指令時,轉移成功,PC的值修改為轉移指令的目標地址,否則仍是自增之後的值。

4.間指週期結束後,MDR中是運算元地址。