Понимание программирования Mpu в ARM [ M3 ]
Я пытаюсь понять, как именно это работает с регистрами псевдонимов Mpu.
Итак, вот мое понимание:
A.
Для каждого региона существуют отдельные регистры 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, правильное.