1. 程式人生 > >二、處理器

二、處理器

1.概念①中央處理部件(Central Processing Unit,CPU)可以說是計算機的“大腦”,其功能是通過從主儲存器中逐條進行 取指令、分析指令和執行指令的過程來執行計算機程式。②程式計數器(Program Counter,PC)它用於指向下一條將要被取出用於執行的指令。③指令暫存器(Instruction Register,IR)其中存放著當前正執行的執行。④算術邏輯部件(Arithmetic Logic Unit,ALU)⑤資料通路:一般包括 暫存器、ALU和連線它們的內部匯流排。、2.CPU組上圖是一個CPU的資料通路圖①如上圖,ALU有兩個輸入暫存器,一個輸出暫存器。暫存器的功能是在ALU進行計算時維持ALU的輸入資料。
3.CPU指令①大多數CPu中的指令可以歸為:暫存器-主存指令和 暫存器-暫存器指令。前者用於在暫存器和主存之間交換資料,後者用於在暫存器與暫存器之間操作,比如:從兩個暫存器中取得兩個運算元,送入ALu的輸入暫存器中。②ALU將兩個運算元進行運算並將結果協會的過程成為資料通路週期,這是大多數CPU的核心。③執行指令的過程大致可以分為以下幾個步驟: 1)從主存中去下一條指令到指令暫存器中。 2)將程式計數器指向後面一條指令。 3)判斷剛剛取得的指令的型別。 4)若該指令用到某主存單元,則對該主存單元進行定址。 5)必要時,從主存中取一個字,則對該主存單元進行定址。
6)執行指令。 7)返回第1步準備執行下一條指令。4.RISC和CISC① RISC:是 精簡指令計算機(Reduced Instruction Set Computer)②CISC:是 複雜指令計算機(Complex Instruction Set Computer)5.現代計算機設計原則①所有指令由硬體直接執行②最大限度提高指令啟動速度③指令應容易譯碼④只允許讀寫主存指令訪問主存⑤提供足夠的暫存器6.指令級並行① 指令級並行指的是在指令之間應用並行。②指令流水:
圖中的例子裡,將指令執行劃為了5個部分(現實中通常為12個或者更多),每個部分由精心設計的硬體分別執行,讓他們並行執行。
第1個時鐘週期:S1工作已第1條指令。 第2個時鐘週期:S2對第1條指令進行譯碼,S1取第2個指令。 第3個時鐘週期:S3取第1個指令的運算元,S2對第2個指令進行譯碼,S1取第3條指令。 .................................................以此類推。③指令流水可以用 指令時延 或者 處理器處理器頻寬(MIPS數)來衡量。④超標量體系結構: 如果一條流水線不夠用,則用兩條流水線來加速,使得慢的部件能夠跟上快的部件的節奏。 如圖的方案,其取指部件可以一次取兩條指令,分別送入各自的流水線,並由其各自的ALu並行執行。⑤無論是幾條流水線,大多都用在RISC機上。7.處理器級的並行①指令級並行固然可以提高效率,可是傳輸的速度是有物理極限的,並且,晶片越多,其產生的熱量也會越多,散熱就很成問題。②對於那些高度規則的資料結構進行相同的資料運算,加速它們相對容易。我們主要有兩種方式來可快速並高效的執行這類高度規則的程式:SIMD處理器和向量處理器。前者被看成是平行計算機,後者被當成單處理器的擴充套件。③單指令流多資料流處理器(Single Instruction-stream Multiple Data-stream,SIMD):這種處理器由許多在不同資料集合上執行同樣的指令序列的王權相同的處理器組成。 現代的GPU(圖形處理器)嚴重依賴SIMD處理器使用較少的電晶體來提供巨大的處理能力。④多處理器系統:除了增加處理器的效能和資料的規整程度外,還可以增加多處理器⑤ 多計算機系統:才用多個計算機互聯組成多計算機系統。