有一个Cache主存系统,主存容量2MB,Cache容量64KB,每个字块4KB,采用直接映射方式。存储字按字节编址。(1) 写出主存地址结构和Cache地址结构(2) 若主存地址为DE8F8H,那么它在主存的哪一个字块中(写出主存字块号,要求给出计算过程)?(3) 该主存地址所在的主存字块映射到Cache的什么位置(写出Cache字块号,要求给出计算过程)?5
时间: 2024-03-30 12:39:41 浏览: 265
实验4 直接映射Cache设计-实验报告1
(1) 主存地址结构:主存容量为2MB,即2^21个字节,需要21位二进制数来表示主存地址。每个字块为4KB,即2^12个字节,需要12位二进制数来表示字块内地址。因此,主存地址结构为21位二进制数和12位二进制数。
Cache地址结构:Cache容量为64KB,即2^16个字节,需要16位二进制数来表示Cache地址。每个字块为4KB,即2^12个字节,需要12位二进制数来表示字块内地址。因此,Cache地址结构为16位二进制数和12位二进制数。
(2) 主存地址DE8F8H转换成二进制为:11011100100011111000B。由于每个字块为4KB,即2^12个字节,所以主存地址的低12位表示字块内地址,高21位表示字块号。因此,主存字块号为110111001000B,转换成十进制为:5632。
(3) 采用直接映射方式,主存的一个字块只能映射到Cache的一个特定位置。Cache的容量为64KB,即2^16个字节,每个字块为4KB,即2^12个字节,因此Cache共有2^4=16个字块。直接映射方式下,主存的字块号对16取模,即可得到该主存字块映射到Cache的位置。
5632 mod 16 = 0
因此,主存地址DE8F8H所在的主存字块映射到Cache的第0个字块。
阅读全文