若计算机主存地址为32位,按字节编址,Cache 数据区大小为32KB,主存块大小为32B,采用直接映射方式和回写(Write Back)策略,则cache行的位数至少是
答案是17位标记位+1位有效位+1位脏位+256位(32B=32*8)=275。这里为什么不加10bit的行号?
因为在这个计算中,我们假设Cache中的每一行直接映射到主存中的某一块。实际上,Cache中的每一行可能包含多个主存块(即多行数据),这就是所谓的“块大小”。假设块大小为32B,也就是说,Cache中的每一行直接映射到主存的32个字节的数据块。所以不用加行号