Nội dung báo cáo Thuật ngữ Đặt vấn đề Giải pháp Đánh giá Cách đưa dữ liệu từ RAM vào Cache Phương pháp thay thế dữ liệu trong Cache Thuật giải thay thế... Block : đơn vị dữ
Trang 1Cache Memory
Giảng viên: TS Trần Ngọc Thịnh
Nhóm 1:
Lê Minh Châu
Đoàn Xuân Duy
Lê Hồng Dũng
Âu Mậu Dương
Nguyễn Văn Dương
Trịnh Văn Giang
Trang 2Nội dung báo cáo
Thuật ngữ
Đặt vấn đề
Giải pháp
Đánh giá
Cách đưa dữ liệu từ RAM vào Cache
Phương pháp thay thế dữ liệu trong Cache
Thuật giải thay thế
Trang 3Thuật ngữ
1 Block : đơn vị dữ liệu được chuyển giữa cache và bộ nhớ chính
2 Hit : dữ liệu cần cho bộ xử lý có ở cache
3 Miss : dữ liệu cần cho bộ xử lý không có ở cache
4 Hit time : thời gian xác định một truy cập có thực sự là hit + thời gian truy cập và chuyển dữ liệu từ cache cho bộ
xử lý
5 Miss penalty : thời gian xác định một truy cập có phải là miss + thời gian thay thế một block ở cache bàng block
tương ứng ở bộ nhớ + thời gian chuyển dữ liệu cần thiết cho bộ xử lý
3
Trang 4Đặt vấn đề
Độ trễ của RAM với CPU ngày càng tang khi tốc độ tăng
Trang 5Giải pháp
5
Trang 6Thông số đánh giá của các loại bộ nhớ
Trang 7Cách đưa dữ liệu từ RAM vào Cache
7
Trang 8Phương pháp ánh xạ dữ liệu trong Cache (1/3)
Fully associative cache
Map dữ liệu từ RAM vào Cache
Ưu điểm:
Đưa dữ liệu vô nhanh
Đơn giản trong thiết kế
Nhược điểm:
Phải dò tìm dữ liệu trong cache
Khi cần truy xuất
Trang 9Phương pháp ánh xạ dữ liệu trong Cache (2/3)
9
Direct-mapped Cache
1 địa chỉ trên RAM tương ứng với 1 vị
trí trong cache
Ưu điểm:
Map từ RAM vào cache nhanh
Đơn giản trong thiết kế
Nhược điểm:
Thay thế dữ liệu trong cache liên tục
khi CPU yêu cầu dữ liệu → hiệu suất giảm
Trang 10Phương pháp ánh xạ dữ liệu trong Cache (3/3)
W-way Set-associative Cache
Tổ chức Cache:
Ưu điểm:
Tốc độ map từ RAM
vào Cache nhanh
Truy xuất dữ liệu trong
cache
Nhược điểm:
Phải dò tìm dữ liệu
trong cache
Phức tạp trong thiết kế
Giá thành cao
Trang 11Thuật giải thay thế (1/3)
Ánh xạ trực tiếp (direct-mapped):
Không phải lựa chọn
Mỗi Block chỉ ánh xạ vào một Line xác định
Thay thế Block ở Line đó
11
Trang 12Thuật giải thay thế (2/3)
Fully Associative hay Set Associative:
FIFO (First In First Out): Là một chính sách thay thế rất đơn giản, khi bộ nhớ cache đầy nó chỉ đơn giản là thay thế dữ liệu trong Line đầu tiên mà đã được đặt trong bộ nhớ Cache bằng dữ liệu mới, và thay thế tiếp theo sẽ là Line thứ hai được đặt trong bộ nhớ cache
và vv
Random: Khi cache đầy thì chọn ngẫu nhiên Line nào đó và thay thế
LFU (Least Frequently Used-Thường xuyên sử dụng nhất)
LFU giữ một danh sách của tất cả các trang được tham chiếu trong bộ nhớ cache và bao nhiêu lần họ đã được tham chiếu trong quá khứ Khi Cache trở nên đầy đủ nó sẽ thay thế các trang đó đã được nhắc đến ít nhất, với những cái mới
Trang 13Thuật giải thay thế (3/3)
LRU (Least Recently Used- Sử dụng gần đây nhất):
Bộ nhớ cache xếp mỗi dòng trong một tập theo cách gần đây họ đã được truy cập và thay thế dòng ít sử dụng gần đây nhất
Quan sát là dòng mà không được tham chiếu trong thời gian gần đây sẽ không phải là tham chiếu trong tương lai gần
13
Trang 14Hiệu suất của Cache
Trang 15Nâng cao hiệu suất của Cache
15