Các kiểu bộ nhớ
Bộ nhớ đệm nhanh

Bộ xử lý máy tính rất nhanh và liên tục đọc thông tin từ bộ nhớ có nghĩa là nó phải chờ thông tin đến vì thời gian truy cập bộ nhớ chậm hơn tốc độ bộ xử lý. Một bộ nhớ đệm là bộ nhớ rất nhỏ, tạm thời và nhanh, cái mà bộ xử lý sử dụng để lấy thông tin mà nó cần trong một khơảng thời gian ngắn. Có rất nhiều ví dụ xung quanh chúng ta.
VD: Trong một ngôi nhà và những công cụ để trong gara và bạn cần sửa lại tầm hầm. Nó sẽ cần nhiều công cụ như: mũi khoan,  bộ vặn đai ốc, cưa, ốc vít... Việc đầu tiên bạn nghĩ tới là đo và cắt các tấm gỗ, bạn chạy ra ngoài gara lấy cái thước đo từ kho lưu trữ, chạy xuống tầm hầm đo gỗ rồi quay trở lại nhà xe. Bỏ cái thước dây và lấy cái cưa sau đó trở lại tầng hầm với cái cưa và cắt gỗ. Bạn quyết định vặn ốc vít nối các mảnh gỗ lại. Bạn chạy lại gara để lấy khoan quay xuống tần hầm, khoan các lỗ để đặt ốc vít trở lại nhà để xe lấy cái vặn ốc, sau đó phát hiện ra là sai kích thước trở lại nhà để xe lấy cái khác và chạy lại. Bạn có làm theo cách này không? Nếu cần một cái vặn ốc có lẽ sẽ cần nhiều kích cỡ khác nhau tại sao không lấy toàn bộ những cái vặn ốc. Tiến thêm một bước tại sao không lấy một gói nhỏ bao gồm các công cụ cần thiết vào tầng hầm. Nó sẽ nhanh hơn rất nhiều. Bạn chỉ cần có bộ nhớ đệm. Một công cụ để dễ dàng truy cập và sử dụng nhanh chóng! Những công cụ mà bạn đang có ít có khả năng hơn để sử dụng vẫn còn được lưu giữ trong một địa điểm đó là đi xa hơn và đòi hỏi nhiều thời gian hơn để truy cập vào.
Đây là tất cả những gì mà bộ nhớ đệm phải làm, nó lưu trữ dữ liệu được truy cập và dữ liệu có thể được truy cập bởi CPU nhanh hơn và gần gũi hơn bộ nhớ. Bộ nhớ cache làm việc trên cùng một nguyên tắc cơ bản như là các ví dụ trước bằng cách sao chép dữ liệu thường xuyên được sử dụng vào bộ nhớ cache hơn là một đòi hỏi quyền truy cập vào bộ nhớ chính, để lấy các dữ liệu.
Copy những dữ liệu cần sử dụng vào bộ đệm hơn là truy cập tới bộ nhớ chính để truy xuất dữ liệu. Bộ đệm có thể được tổ chức như cuốn sổ địa chỉ.
Kích cỡ của bộ nhớ cache bộ nhớ có thể khác nhau về độ lớn. Một điển hình của máy tính cá nhân cấp hai (L2) là bộ nhớ cache 256K hoặc 512K. Cấp bậc một (L1) là bộ nhớ cache nhỏ hơn, điển hình là 8K hay 16K. Bộ nhớ cache L1 soáng chung về việc xử lý, trong khi L2 cache soáng chung giữa CPU và bộ nhớ chính. Bộ nhớ cache L1 được, do đó, nhanh hơn bộ nhớ cache L2. Các mối quan hệ giữa L1 và L2 cache có thể được minh họa bằng cách sử dụng của chúng tôi cửa hàng Grocery ví dụ: Nếu các cửa hàng chính là bộ nhớ, bạn có thể xem xét tủ lạnh các L2 cache, và trên thực tế các bàn ăn bộ nhớ cache L1.
Mục đích của vùng đệm là tăng tốc độ truy cập bộ nhớ bằng cách lưu trữ các dữ liệu cần sử dụng với CPU thay vì lưu trong bộ nhớ chính. Dù kích cỡ của bộ nhớ đệm không lớn như bộ nhớ chính nhưng nó nhanh hơn. Bộ nhớ chính được tạo bằng DRAM với thời gian truy cập là 60ns.Còn bộ đệm được tạo bằng SRAM truy cập nhanh hơn DRAM với chu kỳ ngắn hơn (một điển hình của thời gian truy cập bộ nhớ cache là 10ns).
Cache hiện không cần phải quá lớn để thực hiện tốt. Một quy tắc chung của bộ nhớ đệm nhở đủ để cho tổng chi phí trung bình cho mỗi bit, gần đó là của chính bộ nhớ, nhưng đủ lớn để mang lại lợi ích. Vì bộ nhớ nhanh này là hơi đắt tiền, nó không khả thi để sử dụng công nghệ tìm thấy trong bộ nhớ cache bộ nhớ để xây dựng các bộ nhớ chính.
Điều gì làm cho bộ nhớ cache "đặc biệt"? Cache không được truy cập theo địa chỉ mà được truy cập theo nội dung. Vì lý do này, bộ nhớ cache đôi khi được gọi là CAM. Theo hầu hết các chương trình lập bản đồ bộ nhớ cache, bộ nhớ cache mục phải được kiểm tra hoặc tìm kiếm nếu giá trị được yêu cầu được lưu trong bộ nhớ cache. Để đơn giản hóa việc này, quá trình tìm những dữ liệu, lập bản đồ bộ nhớ đệm sử dụng các thuật toán khác nhau.