Memory Hierarchy

ลำดับชั้นของหน่วยความจำในระบบคอมพิวเตอร์

Memory Hierarchy (สรุปด่วน)

การออกแบบระบบคอมพิวเตอร์ต้องรักษาสมดุลระหว่าง "ความเร็ว", "ความจุ", และ "ราคา" จึงเกิดเป็นแนวคิดลำดับชั้นหน่วยความจำแบบปิรามิด

1. ลำดับชั้น (จากเร็วที่สุดไปช้าที่สุด)

  1. Registers: อยู่ใน CPU โดยตรง เร็วที่สุด (ความจุน้อยระดับ Bytes)
  2. Cache Memory (SRAM): อยู่ในหรือใกล้ CPU มากๆ เพื่อลดเวลาที่ CPU ต้องไปรอข้อมูลจาก RAM
    • L1 Cache: เร็วสุด เล็กสุด (แยก Core)
    • L2 Cache: ช้ากว่า L1 (แยก Core)
    • L3 Cache: ใหญ่สุดในกลุ่ม Cache (แชร์กันทุก Core)
  3. Main Memory (RAM / DRAM): พื้นที่ทำงานหลักของระบบ (ความจุระดับ GB)
  4. Secondary Storage (SSD / HDD): เก็บข้อมูลถาวร ช้าที่สุด แต่ความจุมากและราคาถูกสุด (ระดับ TB)

2. Principle of Locality

เหตุผลที่ Cache Memory ทำงานได้ผลดีเยี่ยม มาจากพฤติกรรมการเข้าถึงข้อมูลของ Program:

  • Spatial Locality: ถ้า CPU เข้าถึงข้อมูลตรง Address หนึ่ง มีโอกาสสูงมากที่เร็วๆ นี้ CPU จะเข้าถึงข้อมูลที่อยู่ "ใกล้เคียงกัน" (เช่น การวนลูป Array)
  • Temporal Locality: ถ้า CPU เข้าถึงข้อมูลตัวใดตัวหนึ่ง มีโอกาสสูงมากที่เร็วๆ นี้ CPU จะกลับมาเรียกใช้ข้อมูล "ตัวเดิมซ้ำอีก" (เช่น ตัวแปร Counter ใน Loop)

AI Knowledge Assistant

สวัสดีครับ! ผมคือ AI Assistant ประจำเว็บไซต์

คุณสามารถสอบถามข้อมูลด้าน Computer Science, Business, หรือ Finance ได้เลยครับ