我试图了解它如何与Mpu的别名寄存器完全一致。
所以这是我的理解:
一个。
对于每个区域,都有单独的RBAR和RASR寄存器。因此,对于8个区域,硬件中总共有16个寄存器,但用户不可见,即它们不存在于总线上以供用户访问。
这是来自ARMv7的一行
The MPU Region Number Register selects the associated region registers
因此,当我写入sfr总线[RBAR,RBAR_A1,RBAR_A2或RBAR_A3]上用户可用的任何区域基址寄存器时,内部硬件首先检查选择的区域并根据区域如果选择了数字,它会将写入任何[RBAR,RBAR_A1,RBAR_A2或RBAR_A3]的值写入所选区域的内部寄存器。
以上理解是否正确?
B中。
另外,在别名寄存器上,当用户写入任何上述寄存器时,它们都具有相同的值,例如:假设我写RBAR_A1 = 0x40000013然后我读RBAR寄存器然后我回到0x40000013并且相同对于RBAR_A2,也是RBAR_A3。
以上一个也是正确的吗?
如果我对MPU寄存器的工作方式有所了解,请告诉我。