Phần tiếp theo bài giảng "Kiến trúc máy tính và hợp ngữ - Chương 5: Tổ chức bộ nhớ" cung cấp cho người học các kiến thức về "Bộ nhớ đệm nhanh" bao gồm: Ý tưởng thiết kế bộ nhớ cache, nguyên tắc chung, cấu trúc chung của cache,. nội dung chi tiết. | Bài giảng Kiến trúc máy tính và hợp ngữ: Chương 5b - Huỳnh Tổ Hạp 15/11/2017 Bài 5 Tổ chức bộ nhớ Phần BỘ NHỚ ĐỆM NHANH (CACHE MEMORY) (tham khảo trang 66 – KTMT Cần Thơ) Ý tưởng thiết kế cache Xác suất truy cập dữ liệu trong bộ nhớ trong Một chương trình mất 90% thời gian thi hành lệnh của nó để thi hành 10% số lệnh của chương trình. Cache thiết kế dựa trên 2 nguyên tắc: Nguyên tắc về thời gian: cho biết các ô nhớ được hệ thống xử lý thâm nhập có khả năng sẽ được thâm nhập trong tương lai gần. Nguyên tắc về không gian: cho biết, bộ xử lý thâm nhập vào một ô nhớ thì có nhiều khả năng thâm nhập vào ô nhớ có địa chỉ kế 1 15/11/2017 Nguyên tắc chung Cache có tốc độ nhanh hơn bộ nhớ chính, chứa dữ liệu và lệnh thường dùng đến. CPU Cache Bộ nhớ Cache được đặt giữa CPU và bộ nhớ chính nhằm tăng tốc độ truy Chuyển Chuyển nhập bộ nhớ của CPU từng từng Cache có thể được đặt từ khối trên chip của CPU (vận hành bằng bộ điều khiển cache) Ví dụ về thao tác của cache CPU yêu cầu nội dung của ngăn nhớ CPU kiểm tra trên cache với dữ liệu này Nếu có, CPU nhận dữ liệu từ cache (nhanh) (cache hit) Nếu không có (cache miss), đọc block nhớ chứa dữ liệu từ bộ nhớ chính vào cache (lâu) (cache penalty). Tiếp đó chuyển dữ liệu từ cache vào CPU 2 15/11/2017 Cấu trúc chung của cache / bộ nhớ chính Bộ nhớ chia thành các Block cache chia làm các Line có kích thước bằng nhau Vận hành Một số Block của bộ nhớ chính được nạp vào các Line của cache. Nội dung Tag (thẻ nhớ) cho biết block nào của bộ nhớ chính hiện đang được chứa ở line đó. Khi CPU truy nhập (đọc/ghi) một từ nhớ, có 2 khả năng xảy ra: Từ nhớ đó có trong cache (cache hit) Từ nhớ đó không có trong cache (cache miss) 3 15/11/2017 Các vấn đề khi vận hành Vì số line của cache ít hơn số block của bộ nhớ chính, cần có một thuật giải ánh xạ thông tin trong bộ nhớ chính vào cache. Câu hỏi 1: Phải để một khối