8.2.2.1 Programmable Range n Start Address Register (PROGn_MPSAR)
The Programmable Address Start Register holds the start address for the range. This register is writeable by a supervisor entity only. If NS = 0 (nonsecure mode) in the associated MPPAR register, then the register is also writeable only by a secure entity.
The start address must be aligned on a page boundary. The size of the page is 1KB. The size of the page determines the width of the address field in MPSAR and MPEAR. The PROGn_MPSAR register is shown in Figure 8-1 and described in Table 8-10. The reset values are listed in Table 8-11 for MPU0-MPU5, Table 8-12 for MPU6-MPU11, and Table 8-13 for MPU12-MPU14.
Figure 8-1 Programmable Range n Start Address Register (PROGn_MPSAR)
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
START_ADDR |
Reserved |
R/W |
R |
Legend: R = Read only; R/W = Read/Write |
Table 8-10 Programmable Range n Start Address Register Field Descriptions
Bit |
Field |
Description |
31-10 |
START_ADDR |
Start address for range n |
9-0 |
Reserved |
Reserved. Always read as 0. |
Table 8-11 MPU0-MPU5 Programmable Range n Start Address Register (PROGn_MPSAR) Reset Values
REGISTER |
MPU0 |
MPU1 |
MPU2 |
MPU3 |
MPU4 |
MPU5 |
PROG0_MPSAR |
0x01D0_0000 |
0x23A0_0000 |
0x02A0_0000 |
Reserved |
Reserved |
0x02A0_4000 |
PROG1_MPSAR |
0x01F0_0000 |
0x23A0_2000 |
0x02A0_2000 |
Reserved |
Reserved |
0x02A0_5000 |
PROG2_MPSAR |
0x02F0_0000 |
0x023A_6000 |
0x02A0_6000 |
Reserved |
Reserved |
0x02A0_6400 |
PROG3_MPSAR |
0x0200_0000 |
0x23A0_6800 |
0x02A0_6800 |
Reserved |
Reserved |
0x02A0_7400 |
PROG4_MPSAR |
0x020C_0000 |
0x23A0_7000 |
0x02A0_7000 |
Reserved |
Reserved |
0x02A0_A000 |
PROG5_MPSAR |
0x021C_0000 |
0x23A0_8000 |
0x02A0_8000 |
Reserved |
Reserved |
0x02A0_D000 |
PROG6_MPSAR |
0x021D_0000 |
0x23A0_C000 |
0x02A0_C000 |
Reserved |
Reserved |
0x02A0_E000 |
PROG7_MPSAR |
0x021F_0000 |
0x23A0_E000 |
0x02A0_E000 |
Reserved |
Reserved |
0x02A0_F000 |
PROG8_MPSAR |
0x0234_0000 |
0x23A0_F000 |
0x02A0_F000 |
Reserved |
Reserved |
0x02A0_F800 |
PROG9_MPSAR |
0x0254_0000 |
0x23A0_F800 |
0x02A0_F800 |
Reserved |
Reserved |
0x02A1_2000 |
PROG10_MPSAR |
0x0258_0000 |
0x23A1_0000 |
0x02A1_0000 |
Reserved |
Reserved |
0x02A1_C000 |
PROG11_MPSAR |
0x0000_0000 |
0x23A1_C000 |
0x02A2_0000 |
Reserved |
Reserved |
0x02A2_8000 |
PROG12_MPSAR |
0x0290_0000 |
0x23A4_0000 |
0x02A4_0000 |
Reserved |
Reserved |
0x02A6_0000 |
PROG13_MPSAR |
0x01E8_0000 |
0x23A8_0000 |
0x02A8_0000 |
Reserved |
Reserved |
0x02AA_0000 |
PROG14_MPSAR |
0x01E8_0800 |
0x23B0_0000 |
0x02AC_0000 |
Reserved |
Reserved |
0x02B0_0000 |
PROG15_MPSAR |
0x01E0_0000 |
0x23B8_0000 |
0x02AE_0000 |
Reserved |
Reserved |
0x02B8_0000 |
Table 8-12 MPU6-MPU11 Programmable Range n Start Address Register (PROGn_MPSAR) Reset Values
REGISTER |
MPU6 |
MPU7 |
MPU8 |
MPU9 |
MPU10 |
MPU11 |
PROG0_MPSAR |
Reserved |
0x2101_0000 |
0x3000_0000 |
0x0260_0000 |
0x0264_0000 |
0x0220_0000 |
PROG1_MPSAR |
Reserved |
0x0000_0000 |
0x3200_0000 |
0x0260_4000 |
0x0000_0000 |
0x0231_0000 |
PROG2_MPSAR |
Reserved |
0x0800_0000 |
0x3400_0000 |
0x0260_8000 |
N/A |
0x0231_A000 |
PROG3_MPSAR |
Reserved |
0x1000_0000 |
0x3600_0000 |
0x0256_0000 |
N/A |
0x0233_0000 |
PROG4_MPSAR |
Reserved |
0x1800_0000 |
0x3800_0000 |
0x0000_0000 |
N/A |
0x0235_0000 |
PROG5_MPSAR |
Reserved |
0x2000_0000 |
0x3A00_0000 |
0x0000_0000 |
N/A |
0x0263_0000 |
PROG6_MPSAR |
Reserved |
0x2800_0000 |
0x3C00_0000 |
0x0000_0000 |
N/A |
0x0244_0000 |
PROG7_MPSAR |
Reserved |
0x3000_0000 |
0x2100_0800 |
0x0000_0000 |
N/A |
0x024C_0000 |
PROG8_MPSAR |
Reserved |
0x3800_0000 |
N/A |
0x0000_0000 |
N/A |
0x0250_0000 |
PROG9_MPSAR |
Reserved |
0x4000_0000 |
N/A |
0x0000_0000 |
N/A |
0x0253_0000 |
PROG10_MPSAR |
Reserved |
0x4800_0000 |
N/A |
0x0000_0000 |
N/A |
0x0253_0C00 |
PROG11_MPSAR |
Reserved |
0x5000_0000 |
N/A |
0x0000_0000 |
N/A |
0x0260_B000 |
PROG12_MPSAR |
Reserved |
0x5800_0000 |
N/A |
0x0000_0000 |
N/A |
0x0262_0000 |
PROG13_MPSAR |
Reserved |
0x6000_0000 |
N/A |
0x0000_0000 |
N/A |
0x0300_0000 |
PROG14_MPSAR |
Reserved |
0x6800_0000 |
N/A |
0x0000_0000 |
N/A |
0x021E_0000 |
PROG15_MPSAR |
Reserved |
0x7000_0000 |
N/A |
0x0000_0000 |
N/A |
0x0268_0000 |
Table 8-13 MPU12-MPU14 Programmable Range n Start Address Register (PROGn_MPSAR) Reset Values
REGISTER |
MPU12 |
MPU13 |
MPU14 |
PROG0_MPSAR |
0x2100_0400 |
0x2100_0400 |
0x2100_0800 |
PROG1_MPSAR |
0x0000_0000 |
0x0000_0000 |
0x0000_0000 |
PROG2_MPSAR |
N/A |
N/A |
N/A |
PROG3_MPSAR |
N/A |
N/A |
N/A |
PROG4_MPSAR |
N/A |
N/A |
N/A |
PROG5_MPSAR |
N/A |
N/A |
N/A |
PROG6_MPSAR |
N/A |
N/A |
N/A |
PROG7_MPSAR |
N/A |
N/A |
N/A |
PROG8_MPSAR |
N/A |
N/A |
N/A |
PROG9_MPSAR |
N/A |
N/A |
N/A |
PROG10_MPSAR |
N/A |
N/A |
N/A |
PROG11_MPSAR |
N/A |
N/A |
N/A |
PROG12_MPSAR |
N/A |
N/A |
N/A |
PROG13_MPSAR |
N/A |
N/A |
N/A |
PROG14_MPSAR |
N/A |
N/A |
N/A |
PROG15_MPSAR |
N/A |
N/A |
N/A |