bộ nhớ cache

Màu nền
Font chữ
Font size
Chiều cao dòng

Bộ nhớ Cache : Cấu trúc Cache, Thuật toán thay thế (phương pháp thay thế dòng của tập trong Cache)

Trả lời: 

1. Cấu trúc Cache: 

Cache ghi nhớ một tập hợp Ai các đ.chỉ của BN chính và các từ d.liệu M(Ai). Dữ liệu trao đổi giữa Cache và BN chính đc nhóm theo các khối, hay khối các dòng. Mỗi một khối lệnh như vậy là 1 phân khối của 1 trang nào đó của BN chính. Do đó đ.chỉ chứa trong Cache là đ.chỉ khối.

Các dòng cất giữ trong Cache không có đ.chỉ riêng biệt, mà chúng đc tham chiếu tới nhờ đ.chỉ của chúng lưu trong BN chính. Vị trí chính xác của các dòng trong Cache đc x.định bằng phương pháp s.xếp đ.chỉ giữa BN chính và Cache. Nội dung của mảng Cache là những bản sao của tập các khối nhỏ không liên tiếp nhau kèm theo đ.chỉ của BN chính. 

2. Thuật toán thay thế (phương pháp thay thế dòng của tập trong Cache)

B1: CPU yêu cầu lệnh/d.liệu lưu trữ trong địa chỉ “a”

B2: Khi đó nội dung từ đ.chỉ “a” không có bên trong BN Cache, CPU phải mang nó về trực tiếp từ BN RAM.

B3: Bộ phận đ.khiển Cache  tải 1 hàng (thông thường 64 byte) bắt đầu từ đ.chỉ “a” và bên trong BN Cache. Điều đó nhiều hơn d.liệu CPU đã yêu cầu, do đó nếu chương trình tiếp tục chạy tuần tự (có nghĩa là yêu cầu đ.chỉ a + 1), lệnh/d.liệu tiếp theo CPU sẽ yêu cầu đã đc tải trong BN

Cache.

B4: Mạch điện gọi là PreFetch tải nhiều v.trí d.liệu hơn sau dòng sau, có nghĩa là bắt đầu những nội dung tải từ địa chỉ a + 64 vào BN Cache. 

Nếu chương trình thường chạy tuần tự thì CPU không bao h cần lấy d.liệu trực tiếp từ BN RAM về, nhũng lệnh và d.liệu CPU yêu cầu sẽ thường nằm trong BN Cache trc khi CPU hỏi tới chúng. 

Nếu chương trình thường chạy tuần tự thì CPU không bao giờ cần lấy dữ liệu trực tiếp từ bộ nhớ RAM về (ngoại trừ việc tải lệnh đầu tiên), những lệnh và dữ liệu CPU yêu cầu sẽ thường nằm trong bộ nhớ Cache trước khi CPU hỏi tới chúng. 

Tuy nhiên những chương trình lại không chạy như vậy, chúng sẽ thường nhảy từ vị trí bộ nhớ này tới vị trí bộ nhớ khác. Thách thức lớn nhất của Bộ phận điều khiển Cache chính là cố gắng phỏng đoán CPU sẽ nhảy tới địa chỉ nào, để tải nội dung của địa chỉ đó vào bên trong bộ nhớ

Cache trước khi CPU yêu cầu nó để tránh trường hợp CPU phải đi tới bộ nhớ RAM của hệ thống, vì điều đó làm chậm hiệu suất làm việc của toàn bộ hệ thống. Nhiệm vụ này được gọi là Dự đoán rẽ nhánh và những CPU mới đều có đặc điểm này. Những CPU hiện đại có tỉ lệ “hit” ít

nhất là 80%, có nghĩa là ít nhất 80% thời gian CPU không cần truy cập trực tiếp tới bộ nhớ RAM của hệ thống và thay thế vào truy cập tới bộ nhớ Cache .

 Cho dòng X = 275 trong BN chính với số lượng các tập trong Cache là k  = 128. Xác định dòng X của BN chính đc xếp vào tập bao nhiêu của BN Cache. 

         Dòng 275 sẽ đc xếp như sau : 275/128 = 2 + 19/128, nghĩa là dòng 275 của BN chính đc xếp vào tập 19 trong Cache.

Bạn đang đọc truyện trên: Truyen2U.Pro

#vxl