計算機概論-計算機硬體架構
計算機五大單元
- 控制單元(CU):負責控制電腦內其它各單元之間的工作配合及各項資料傳送
- 算數邏輯單元(ALU):負責運算或邏輯判斷
- 輸入單元(IU):將資料輸入的管道
例如:鍵盤、滑鼠、讀卡機、掃瞄器... - 輸出單元(OU):資料輸出的管道
例如:螢幕、印表機、喇叭... - 記憶單元(MU):存放資料的地方
例如:RAM、ROM、硬碟機、軟碟機、光碟機...
內儲程式概念
馮紐曼提出的程式執行概念,其方法是在程式執行時,先將程式儲存在記憶體中,再由中央處理單元執行。好處是只需將程式載入即可,無須改變所需的硬體線路。
根據指令及架構,又可分為複雜指令集(CISC)與精簡指令集(RISC):
類型 | CISC | RISC |
---|---|---|
指令與資料 儲存位置 | 相同 | 不同 |
暫存器數量 | 少 | 多 |
可用指令數量 | 少 | 多 |
指令長度 | 不固定 | 固定 |
管線化 | 不適合 | 適合 |
設計難度 | 複雜 | 簡單 |
編譯器 | 簡單 | 複雜 |
指令解碼 | 複雜 | 簡單 |
速度 | 慢 | 快 |
耗電 | 多 | 少 |
馮紐曼瓶頸
不論CPU與記憶體的速度有多快,整個系統的速度終將受限於匯流排(bus)的速度。
改善方法為:
- 硬體:CPU與記憶體之間的快取記憶體
- 軟體:分支預測演算法
記憶體種類
註:快取記憶體速度L1>L2>L3
暫存器
使用者(可見)暫存器:用來暫時儲存資料,減少CPU對記憶體的存取
- 通用暫存器(General purpose registers)
- 資料暫存器(Data registers)
- 位址暫存器(Address registers)
- 條件碼暫存器(Condition code registers)
控制與狀態暫存器:記錄程式狀態
- 程式計數器(Program counter)
- 指令暫存器(Instruction register)
- 記憶體位址暫存器(Memory address register)
- 記憶體緩衝暫存器(Memory buffer register)
- ALU緩衝暫存器(ALU buffer register)
- 中斷向量暫存器(Interrupt vector register)
- 程式狀態字組(Program status word)
匯流排
- 定義:排線組成的硬體,為計算機五大單元溝通的橋梁
- 分為:資料匯流排(雙向)、位址匯流排(單向)、控制匯流排(單向)
- N條資料匯流排 => 計算機為N位元(bytes),1 word = N bit,一次處理N bytes
- N條位址匯流排 => CPU最大定址能力 = 最大主記憶體容量 = 2Nbytes
CPU執行速度
- CPI(clock per instruction):執行一個指令所需時脈數量
- Clock rate:時脈頻率
- MIPS(millions of instruction per second):每秒執行幾百萬個指令
效能改善
根據Amdahl's law,改善x%系統,使效能變為原本的n倍,則整個系統變快S倍。
機械式(傳統)硬碟
- 磁盤(platter):利用磁記錄資料的儲存器
- 磁區(sector):磁碟存取的最小單位
- 磁叢(cluster):連續數個磁區
- 磁軌(track):相同半徑磁區所組成
- 磁柱(cylinder):各磁盤相同磁軌所組成
- 尋找時間(seek time):磁碟機將讀寫頭移到所需的磁軌上所需的時間
- 旋轉時間(rotational latency):將讀寫頭移到資料所在的磁區上所需的時間
- 傳輸時間(transfer time):將資料由磁碟機讀入記憶體或由記憶體寫入磁碟機所需的時間
- 硬碟存取時間=尋找時間+旋轉時間+傳輸時間
- 尋找時間 > 旋轉時間 > 傳輸時間
- 平均旋轉時間=1/(2*轉速)
RAID
容錯式磁碟陣列(RAID, Redundant Array of Independent Disks),把多個硬碟組合起來,成為一個硬碟陣列組。根據選擇的版本不同,具有以下一個或多個優點:增強資料整合度,增強容錯功能,增加處理量或容量。
RAID 等級 | 最少 硬碟 | 最大 容錯 | 可用 容量 | 讀取 效能 | 寫入 效能 | Striping | Mirroring | Error correction | 安全性 | 目的 | 應用產業 |
---|---|---|---|---|---|---|---|---|---|---|---|
單一硬碟 | (參考) | 0 | 1 | 1 | 1 | 無 | |||||
JBOD | 1 | 0 | n | 1 | 1 | 無(同RAID 0) | 增加容量 | 個人(暫時)儲存備份 | |||
0 | 1 | 0 | n | n | n | V | 一個硬碟異常, 全部硬碟都會異常 | 追求最大容量、速度 | 影片剪接快取用途 | ||
1 | 2 | n-1 | 1 | n | 1 | V | 高,一個正常即可 | 追求最大安全性 | 個人、企業備份 | ||
2 | 3 | Bit | Hamming code | ||||||||
3 | 3 | Bit-level | Bit-interleaved parity | ||||||||
4 | 3 | Block-level | Block-interleaved parity | ||||||||
5 | 3 | 1 | n-1 | n-1 | n-1 | V | Distribute block-interleaved parity | 高 | 追求最大容量、最小預算 | 個人、企業備份 | |
6 | 4 | 2 | n-2 | n-2 | n-2 | Blocks | Double parity | 安全性較RAID 5高 | 同RAID 5,但較安全 | 個人、企業備份 | |
10 (0+1) | 4 | V | V | 高 | 綜合RAID 0/1優點, 理論速度較快 | 大型資料庫、伺服器 |
0留言