设计算机主存地址空间大小为32MB,采用字节编址。 Cache数据区大小为16KB主存与 Cache之间采用全相联映射方式,块大小为1KB。(1)该cache共有多少行? (2)主存地址需多少位?如何划分?要求说明每个字段的含义、位数和在主存地址中的位置。
【正确答案】:(1)每1KB数据块在 cache中占一行,故16 6KB cache被划分为16KB÷1kB=16行
(2)32MB=225B,故主存地址长度为25位
被划分成以下二个字段:
标记+块内地址
由于块大小为1kB=210B,所以块内地址为10位,即主存地址的低10位。
主存地址总长25-10=15,所以标记部分为1位,即主存地址的高15位。