某计算机使用4体交叉编址存储器,假定在存储器总线上出现的主存地址(十进制)序列为8005、8006、8007、8008、8001、8002、8003、8004、8000,则可能发生访问冲突的地址对是哪两个地址?
时间: 2023-09-17 17:12:59 浏览: 1968
并行存储器的无冲突访问
这是一道考察计算机组成原理中直接映射缓存的题目。
根据题意,可以得到以下信息:
- 存储器使用4体交叉编址,即每个块编号的最低2位都是0,1,2,3四个中的一个。
- 计算机使用直接映射方式的16KB缓存,因此缓存中有2^11个块,每个块可以映射到主存的一个块。
- 主存地址序列为8005、8006、8007、8008、8001、8002、8003、8004、8000。
根据直接映射的映射规则,同一个块内的地址会映射到缓存中的同一个块。因此,可能发生访问冲突的地址对应该是在同一个块内的两个地址。
根据4体交叉编址的规则,每个块编号的最后两位都是0,1,2,3四个中的一个。因此,每个块内的地址最后两位的取值范围都是0~3。对于主存地址序列中的每个地址,我们可以根据它的最后两位来确定它所在的块编号和块内偏移量。例如,8005所在的块编号为2001(即8005的二进制表示为001111101101,取最后两位01作为块内偏移量,其余位作为块编号),8006所在的块编号为2001,因此它们都属于同一个块内,可能会发生访问冲突。
根据上述分析,可能发生访问冲突的地址对为8005和8006。
阅读全文