1CPU的功能和組成
1.1CPU的功能
壹旦程序裝入內存,計算機就能自動完成取指令和執行指令的任務。專門用來完成這項工作的計算機部件稱為中央處理器,通常簡稱為CPU。
CPU對整個計算機系統的運行極其重要,它有以下四個基本功能:
(1)指令控制程序的順序控制稱為指令系統。因為程序是指令序列,這些指令的相互順序不能任意顛倒,必須嚴格按照控件指定的順序進行。所以保證機器按順序執行是CPU的基本任務。
(2)操作和控制壹個指令的功能,往往是由幾個操作信號組合實現的。因此,CPU管理並產生從存儲器中取出的每個指令的操作信號,並將各種信號發送給相應的部件,從而控制這些部件按照指令的要求動作。
(3)時間控制各種操作的時機稱為時間控制。因為在計算機中,各種指令的運算信號都是嚴格按時間計時的。另壹方面,壹條指令的整個執行過程也是嚴格按時間計時的。只有這樣,計算機才能自動有序地工作。
(4)數據格式所謂數據處理,就是對數據進行算術運算和邏輯運算。處理數據是CPU的基本任務。因為原始信息只有經過加工才能對人有用。
1.2CPU的基本成分
傳統的CPU由兩部分組成:運算器和控制器。但是隨著技術的發展,現在CPU的基本部件已經變成了三個部分:運算器、緩存和控制器。
(1)控制器由程序計數器、指令寄存器、指令解碼器、時序發生器和運算控制器組成。發出命令的是“決策機制”,即協調和指揮整個計算機系統的運行。控制器的主要功能是:從存儲器中取出壹條指令,並指出下壹條指令在存儲器中的位置;解碼或測試指令並產生相應的操作控制信號,以啟動指定的動作;命令和控制CPU、內存和輸入/輸出設備之間的數據流方向。
(2)算術單元由算術邏輯單元(ALU)、累加寄存器、數據緩沖控制器和狀態條件寄存器組成,是數據處理的組成部分。與控制器相比,運算器接受控制器的命令而動作,即運算器進行的所有操作都是由控制器指揮的,所以它是壹個執行部件。算術儀器有兩個功能:執行所有的算術運算;執行所有邏輯運算,並執行邏輯測試,如零測試值或兩個值的比較。通常,算術運算產生的是運算結果,而邏輯運算產生的是決策。
微程序設計技術是壹種用軟件方法設計操作控制器的技術,具有標準化、靈活性和可維護性等壹系列優點,因此在計算機設計中得到了廣泛的應用,並取代了早期的硬連線技術。然而,隨著VISI技術的發展和機器速度的要求,硬連線邏輯的思想受到了更多的關註。硬連線控制器的基本思想是,壹個微操作控制信號是指令操作碼解碼輸出、時序信號和狀態條件信號的邏輯函數,即由布爾代數寫出壹個邏輯表達式,再由門、觸發器等器件實現。
2.指令周期
CPU每次獲取並執行壹條指令,都要完成壹系列操作。這壹系列操作所需的時間通常稱為壹個指令周期。簡單地說,指令周期就是獲取和執行指令的時間。因為各種指令的操作功能不同,有的簡單,有的復雜,所以各種指令的指令周期是壹樣的。例如,訪問指令的指令周期不同於同壹非訪問指令的指令周期。
指令周期通常用幾個CPU周期來表示,也稱為機器周期。因為CPU內部的運算速度快,而且CPU壹次訪問內存需要很長時間,所以通常用讀取內存中壹個指令字的最短時間來指定CPU周期。也就是說,壹條指令的取指階段(通常稱為fetch)需要壹個CPU周期。而壹個CPU周期時間包括幾個時鐘周期(通常稱為拍脈沖或t周期),是處理操作的最基本單位。)
3.流水線CPU
流水線CPU是壹種基於時間並行行為原理的處理器,是壹種非常經濟實用的並行技術。目前,高性能處理器幾乎總是使用流水線技術。流水線技術的主要問題是資源關聯、數據關聯和控制關聯,因此采取了相應的技術對策。為了保證流水線的順暢。
現代流水線計算機,其中CPU以流水線方式組織,通常由三部分組成:指令單元、指令隊列和執行單元。這三個功能組件可以形成壹個三維管道。
指令部件本身就構成了壹個流水線,即指令流水線,它由取指令、指令解碼、計算機操作數地址和操作數取出等幾個過程段組成。
指令隊列是壹個先進先出(FIFO)寄存器堆棧,用於存儲解碼指令和取出的操作數。也是幾道工序組成的流水線。
執行單元可以有多少個算術和邏輯運算單元,這些單元本身是以流水線方式構造的。
為了使存儲器的訪問時間與流水線其他進程段的速度相匹配,壹般使用多體交集存儲器。
計算機系統可以在不同的並行級別采用流水線技術。常見的管道形式有:
指令流水線是指指令步驟的並行性。指令流的處理過程分為幾個並行處理階段,如取指令、譯碼、取操作數、執行和寫回。目前,幾乎所有的高性能計算機都采用指令流水線。
算術流水線指的是並行操作步驟。如流水線加法器、流水線乘法器、流水線除法器等。
外部處理器流水線,也稱為宏流水線,指的是程序步驟的並行性。
4.RISC CPU和多媒體CPU
RISC CPU繼承了CISC的成功技術,是在克服CISC機器缺點的基礎上發展起來的。RISC機的三個基本要素:(1)有限的簡單指令集;(2)CPU配備了大量的可用寄存器;(3)強調指令流水線的優化。註意RISC機器壹定是流水線CPU,但是流水線CPU不壹定是RISC機器。
多媒體CPU是采用MMX技術的處理器。MMX是壹種多媒體擴展結構技術,特別適用於圖像數據處理,極大地提高了計算機在多媒體和通信應用中的功能。以新壹代奔騰CPU為代表的多媒體CPU開始采用單指令流多數據的新結構。