Máy tính có 4GB bộ nhớ chính, cache có dung lượng 256KB, và cứ 32 byte thì tạo thành 1 line. Hỏi địa chỉ tại trường Tag, line, byte là bao nhiêu:
Đáp án đúng: A
Để giải quyết bài toán này, chúng ta cần xác định số lượng bit cần thiết cho mỗi trường Tag, Line và Byte trong địa chỉ bộ nhớ.
1. **Byte offset:** Vì mỗi line có 32 byte, số bit cần thiết để định địa chỉ byte trong một line là log2(32) = 5 bits.
2. **Line number:** Cache có dung lượng 256KB = 218 bytes. Số lượng line trong cache là (218 bytes) / (32 bytes/line) = 213 lines. Vậy, số bit cần thiết để định địa chỉ line là log2(213) = 13 bits.
3. **Tag:** Bộ nhớ chính có dung lượng 4GB = 232 bytes. Tổng số bit địa chỉ cần thiết là 32 bits. Số bit dành cho Tag là tổng số bit địa chỉ trừ đi số bit cho Line và Byte: 32 - 13 - 5 = 14 bits.
Vậy, Tag = 14 bits, Line = 13 bits, Byte = 5 bits. Đáp án đúng là A.