時鐘周期 機器周期 指令周期 時鐘周期:時鐘是CPU的動力源,CPU之所以能夠快速工作就是由時鐘驅動,時鐘不停的振蕩,CPU就不停的工作。時鐘周期是CPU內部衡量時長的最基本單位。 機器周期:也叫CPU周期,規(guī)定為CPU訪問一次內存所需要的最短時間。這就是說,一條指令的取值階段(從內存讀取)就需要一個機器周期。一個機器周期可能由若干個時鐘周期組成。 指令周期:一條指令完成所需要的時間,可能由若干個機器周期組成。 因此,從時間長度來說,指令周期 > 機器周期 > 時鐘周期 ![]() 精簡指令集與復雜指令集 精簡指令集(RISC)與復雜指令集(CISC)是相對于指令執(zhí)行時長來說的,而不是指令本身的復雜度。精簡指令集追求的是在單個機器周期里面完成指令。 舉個例子,如果對于"啟動汽車"這個功能,復雜指令集可能直接就是一條指令,告訴處理器"啟動汽車",那么處理器內部會完成整個啟動過程,發(fā)出這條復雜指令的人不用關心處理器的內部實現。如果使用精簡指令集,就得告訴處理器3條指令: 1 插入鑰匙指令 可以看到,完成同一件事,復雜指令集使用了一條指令,而精簡指令集需要3條指令來完成一個復雜動作。 接下來看一個實際的編程例子,對于乘法操作來說,復雜指令集使用一條簡單指令MUL來完成: mul A, B 當處理器看到這樣一條指令,內部會做如下操作: 1. 從內存中加載地址A上的數,存放在寄存器中 接下來看使用精簡指令集如何完成這項工作: LOAD RA, A ; 從內存讀取數據A LOAD RB, B ; 從內存讀取數據B PROD RA, RB ; 計算兩者乘積 STORE A, RA ; 將寄存器中的結果寫回內存 雖然從代碼量來看,完成同一件事精簡指令集占用的空間更多,但是這些指令都很簡單,不需要復雜的硬件邏輯來進行解碼,可以節(jié)約晶體管的數量,處理器就可以更小。 同時,從編譯器的角度看,復雜指令集CPU對編譯器隱藏了實現細節(jié),編譯器能夠優(yōu)化代碼的可能性很小,而精簡指令集CPU的執(zhí)行過程都暴露出來,更有利于編譯器進行代碼優(yōu)化。 指令集與處理器架構 目前流行的兩種指令集:精簡指令集與復雜指令集都有與之對應的處理器架構。所謂處理器架構,可以看成是使用一堆硬件電路來完成指令集中的指令,使用相同指令集的處理器,可能會有不同的架構設計。使用精簡指令集的架構有:PowerPC架構、ARM架構、MIPS架構;使用復雜指令集的架構有x86架構。 ![]() 參考鏈接: 本文轉自:白羊哈哈,轉載此文目的在于傳遞更多信息,版權歸原作者所有。如不支持轉載,請聯系小編demi@刪除。 |
|
來自: 昵稱55828825 > 《待分類》