記憶體階層架構 (Memory Hierarchy) 是電腦系統設計中用來平衡存取速度、容量與成本的設計方法,從速度最快、容量小的記憶體層級到速度較慢、容量大的層級,逐漸形成一個金字塔形的結構。以下是各層級的詳細解說:
-
Level 0:CPU Registers
-
功能:CPU內部暫存器,是最快速的記憶體,通常用於儲存即時計算數據,支援CPU的直接存取。
-
容量與成本:容量非常小,但存取速度極快且成本高昂。
-
角色:提供處理器快速取用數據的能力,以支援即時運算。
-
Level 1:Cache Memory (SRAM)
-
功能:高階快取記憶體,主要由SRAM組成。SRAM比DRAM快,並且位於CPU附近或內部,以加速處理器對資料的存取。
-
容量與成本:容量比暫存器稍大,但仍然有限,成本較高。
-
角色:緩衝CPU和主記憶體之間的資料流,減少頻繁的主記憶體存取需求。
-
Level 2:Main Memory (DRAM)
-
功能:主要記憶體,由DRAM構成,主要用於執行程式和臨時儲存運算所需的資料。
-
容量與成本:容量中等且相對便宜,速度較快,適合進行程式執行的暫時性儲存。
-
角色:提供執行程式所需的記憶體空間,並為快取記憶體提供支援。
-
Level 3:Secondary Storage (如磁碟儲存)
-
功能:包括磁碟儲存和固態硬碟 (SSD) 等,提供大容量的長期儲存空間,用於儲存操作系統、應用程式和使用者數據。
-
容量與成本:容量大且成本低,速度較慢。
-
角色:主要用於長期數據保存和文件儲存,適合非即時存取的資料。
-
Level 4:Tertiary Storage (光碟、磁帶等)
-
功能:包括光碟 (如CD、DVD) 和磁帶等,主要用於備份和長期保存不常使用的數據。
-
容量與成本:容量大且成本最低,但存取速度最慢。
-
角色:作為備份和長期存儲解決方案,適用於不頻繁存取的數據。
設計考量
-
存取速度:由上層往下,存取速度逐層遞減。暫存器與快取記憶體存取速度極快,而次級和三級儲存速度則較慢。
-
容量:自上層往下,記憶體容量逐漸增加。主記憶體、磁碟和磁帶擁有最大的存儲空間。
-
成本:每bit的存儲成本從上層到下層逐步下降。暫存器和快取的成本最高,而磁碟和磁帶的成本最低。
DRAM的組織與操作
-
DRAM 組織:
- DRAM 中,行位址 (Row Address) 與列位址 (Column Address) 用於定位單一資料位元。
- 操作時,透過先選擇行位址 (RAS) 再選擇列位址 (CAS) 來讀取數據。
-
操作模式:
- Page Mode:重複讀取同一行的資料,節省讀取時間。
- Synchronous Operation:依靠時鐘同步進行讀取,一次地址訪問後可連續取數據。