基本概念
中央處理器(CPU,Central Processing Unit)是一塊超大規模的積體電路,是一台計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟體中的數據。中央處理器主要包括運算器(算術邏輯運算單元,ALU,Arithmetic Logic Unit)和高速緩衝存儲器(Cache)及實現它們之間聯繫的數據(Data)、控制及狀態的匯流排(Bus)。它與內部存儲器(Memory)和輸入/輸出(I/O)設備合稱為電子計算機三大核心部件。
CPU從邏輯上可以劃分成3個模組,分別是控制單元、運算單元和存儲單元,這三部分由CPU內部匯流排連線起來。
模組劃分
CPU的根本任務就是執行指令,對計算機來說最終都是一串由“0”和“1”組成的序列。CPU從邏輯上可以劃分成3個模組,分別是控制單元、運算單元和存儲單元,這三部分由CPU內部匯流排連線起來。如下所示 :
控制單元
控制單元是整個CPU的指揮控制中心,由指令暫存器IR(Instruction Register)、指令解碼器ID(Instruction Decoder)和操作控制器OC(Operation Controller)等,對協調整個電腦有序工作極為重要。它根據用戶預先編好的程式,依次從存儲器中取出各條指令,放在指令暫存器IR中,通過指令解碼(分析)確定應該進行什麼操作,然後通過操作控制器OC,按確定的時序,向相應的部件發出微操作控制信號。操作控制器OC中主要包括節拍脈衝發生器、控制矩陣、時鐘脈衝發生器、復位電路和啟停電路等控制邏輯。
運算單元
是運算器的核心。可以執行算術運算(包括加減乘數等基本運算及其附加運算)和邏輯運算(包括移位、邏輯測試或兩個值比較)。相對控制單元而言,運算器接受控制單元的命令而進行動作,即運算單元所進行的全部操作都是由控制單元發出的控制信號來指揮的,所以它是執行部件。
存儲單元
包括CPU片內快取和暫存器組,是CPU中暫時存放數據的地方,裡面保存著那些等待處理的數據,或已經處理過的數據,CPU訪問暫存器所用的時間要比訪問記憶體的時間短。採用暫存器,可以減少CPU訪問記憶體的次數,從而提高了CPU的工作速度。但因為受到晶片面積和集成度所限,暫存器組的容量不可能很大。暫存器組可分為專用暫存器和通用暫存器。專用暫存器的作用是固定的,分別暫存相應的數據。而通用暫存器用途廣泛並可由程式設計師規定其用途,通用暫存器的數目因微處理器而異。
CPU的邏輯單元
從實現的功能方面看,CPU大致可分為如下八個邏輯單元:
(1)指令暫存器 :它是晶片上的指令倉庫,有了它CPU就不必停下來查找計算機記憶體中的指令,從而大幅提高了CPU的運算速度。
(2)指令解碼器 :它負責將複雜的機器語言指令解譯成運算邏輯單元(ALU)和暫存器能夠理解的簡單格式,就像一位外交官。
(3)控制單元 :既然指令可以存入CPU,而且有相應指令來完成運算前的準備工作,背後自然有一個扮演推動作用的角色——它便是負責整個處理過程的操作控制器。根據來自解碼單元的指令,它會生成控制信號,告訴運算邏輯單元(ALU)和暫存器如何運算、對什麼進行運算以及對結果進行怎樣的處理。
(4)暫存器 :它對於CPU來說非常的重要,除了存放程式的部分指令,它還負責存儲指針跳轉信息以及循環操作命令,是運算邏輯單元(ALU)為完成控制單元請求的任務所使用的數據的小型存儲區域,其數據來源可以是高速快取、記憶體、控制單元中的任何一個。
(5)邏輯運算單元(ALU) :它是CPU晶片的智慧型部件,能夠執行加、減、乘、除等各種命令。此外,它還知道如何讀取邏輯命令,如或、與、非。來自控制單元的訊息將告訴運算邏輯單元應該做些什麼,然後運算單元會從暫存器中間斷或連續提取數據,完成最終的任務。
(6)預取單元 :PU效能發揮對其依賴非常明顯,預取命中率的高低直接關係到CPU核心利用率的高低,進而帶來指令執行速度上的不同。根據命令或要執行任務所提出的要求,何時時候,預取單元都有可能從指令高速快取或計算機記憶體中獲取數據和指令。當指令到達時,預取單元最重要的任務就是確保所有指令均排列正確,然後傳送給解碼單元。
(7)匯流排單元 :它就像一條高速公路,快速完成各個單元間的數據交換,也是數據從記憶體流進和流出CPU的地方。
(8)數據高速快取 :存儲來自解碼單元專門標記的數據,以備邏輯運算單元使用,同時還準備了分配到計算機不同部分的最終結果。
通過以上介紹可以看出CPU雖小,方寸之地卻能容納大世界,內部更像一個發達的裝配工廠,環環相扣,層層相套。正因為有了相互間的協作配合,才使得指令最終得以執行,才構成了圖文並茂、影像結合的神奇數字世界。
主要功能
處理指令
英文Processing instructions;這是指控制程式中指令的執行順序。程式中的各指令之間是有嚴格順序的,必須嚴格按程式規定的順序執行,才能保證計算機系統工作的正確性。
執行操作
英文Perform an action;一條指令的功能往往是由計算機中的部件執行一系列的操作來實現的。CPU要根據指令的功能,產生相應的操作控制信號,發給相應的部件,從而控制這些部件按指令的要求進行動作。
控制時間
英文Control time;時間控制就是對各種操作實施時間上的定時。在一條指令的執行過程中,在什麼時間做什麼操作均應受到嚴格的控制。只有這樣,計算機才能有條不紊地工作。
處理數據
即對數據進行算術運算和邏輯運算,或進行其他的信息處理。
其功能主要是解釋計算機指令以及處理計算機軟體中的數據, 並執行指令。在微型計算機中又稱微處理器,計算機的所有操作都受CPU控制,CPU的性能指標直接決定了微機系統的性能指標。CPU具有以下4個方面的基本功能:數據通信,資源共享,分散式處理,提供系統可靠性。運作原理可基本分為四個階段:提取(Fetch)、解碼(Decode)、執行(Execute)和寫回(Writeback) 。