計算機組織 1. 硬體5大單元之CPU機器週期與效能 - Ian-Liu-1990/Computer-Arch-OS GitHub Wiki
5大單元
I. 電腦硬體CPU組成 - 國營資訊 - 不斷在混淆CU與ALU功能
1.- 組成 : { CU(控制 + 指令解釋/解碼),ALU指令執行 } 或 外加記憶體(通常指暫存器) - 依題目
2. 輸出入單元
- 組成 :
II. machine cycle (機械週期)
- 為CPU執行一個指令的過程
1. 指令步驟
-
IF (Instruction fetch) : CPU根據程式計數器的內容(記憶體位置),從主記憶體中取出要執行的指令儲存於指令暫存器中
-
ID(Instruction decode) : CPU根據指令暫存器的內容加以解碼,分析[指令的解釋,中華電信]運算碼和運算元,以便決定執行動作
-
EX(instruction execution) : ALU根據ID階段讀取資料和計算結果,實際[指令的執行,中華電信]運算
-
WB(result write back) : 結果儲存在ALU暫存器中,再回存於可見暫存器中
考試的步驟 : 中央處理器CPU執行指令正確順序中華電信,國營資訊100 : 擷取指令,分析指令,讀取資料,最後執行
程序 | 負責單元 | 說明 |
---|---|---|
擷取 | 擷取週期(控制單元負責指令解釋) | 向程式計數器取得指令位址,從主記憶體中取出要執行的指令,存入指令暫存器 |
解碼 | 將指令暫存器的指令加以解碼(分析運算碼和運算元) | |
------- | --------- | ------------------------------- |
執行 | 執行週期(ALU負責指令執行) | 實際運算並執行以解碼的指令 |
儲存 | 將執行結果存入可見暫存器中或主記憶體中 |
III. 效能提升計算 [國營聯招/中華電信]
一個程式在電腦中執行共需 140 秒,其中乘法指令共花掉 112 秒,請問要將乘法指令速度提升為多少倍可使程式執行時間成為原來的四分之一?
- 解答:
- 求剩下無關乘法的指令 = 140 - 112 = 28(無法提升效能)
- 求原來時間的四分之一 = 140 / 4 = 35
- 乘法提升效能後的速度 = 35 - 28 = 7
- 乘法提升的倍數 = 原本所需要的時間112 / 提升後所需要的時間7 = 16
- 答 16 倍
IV. CPU 效能計算
1. CPU Time
-
定義 : 執行程式CPU所需要的時間
-
組成 :
2. 時脈週期數(Clock Cycles)
-
定義 : 一個程式所需要的週期數
3. 時脈週期時間(Clock Cycles Times)
- 定義 : 單位次數所需要的時間,即來回完成一次所花費的時間
4. 時脈頻率(Clock Rates)
-
定義 : 單位時間所完成的次數,即一秒內完成來回幾次
-
時脈頻率(Clock Rates) = 1 /時脈週期時間(Clock Cycles Times),倒數
5. MIPS
6. 頻率單位換算
頻率單位 | 赫茲 |
---|---|
1 KHZ | 1000 Hz |
1 MHZ | 10^6 Hz |
1 GHZ | 10^9Hz |
7. 時間單位換算
時間單位 | 公分 |
---|---|
1 ms(毫秒) | 10^-3 秒 |
1 µs(微秒) | 10^-6 秒 |
1 ns(奈秒) | 10^-9 秒 |
1 ps(皮秒) | 10^-12 秒 |