0

MIPS 中有许多不同的指令。我目前正在学习数据和指令缓存。

指令缓存只是简单地说,它取决于它可能利用空间局部性并获取多条指令的块大小。但是对于数据缓存,我很难理解它何时从主内存中获取内容,何时不获取。

例如,指令 lw $t0, 0x4C($0) 将获取存储在地址 0x4C 中的一个数据字,并且根据数据缓存容量、集合、块大小等,它将临时存储在缓存中的一个块中,如果那里不存在有效位或标签的地址。

在我的文献中,addi 指令不会从内存中获取,为什么?似乎只有在使用 lw 指令时才需要从内存中获取数据,为什么?

我还有一个关于 MIPS 寄存器的问题。如果我们只是在寄存器上执行指令,那么将无法访问任何主存储器,对吗?它甚至不会进入数据缓存,对吗?寄存器是内存层次结构中的最高级别吗?

4

0 回答 0