User Information Memory
IP – Border High (IBH)
0x0000
Border (B1)
Border (B2)
0x0FFFF
Lowest Address
0x1800
0x19FF
Highest Address
Main Memory
Segment 3
Segment 2
Segment 1
I P s e g m e n t
interrupt vectors
IP – Border Low (IBL)
MPU Segments
314
SLAU367P – October 2012 – Revised April 2020
Copyright © 2012–2020, Texas Instruments Incorporated
Memory Protection Unit (MPU)
NOTE:
The same result is calculated during MAB analysis of segment membership independent of
whether the higher value is in MPUSEGB1[15:0] or MPUSEGB2[15:0]. If
MPUSEGB1[15:0] = MPUSEGB2[15:0], Segment 2 is not available and the main memory
only contains 2 segments.
shows an example segmentation of the main memory.
Figure 9-5. Segmentation of Main Memory
9.2.2 IP Encapsulation Segment
The MPU can protect an address range in the main memory from unconditional external access. The size
of this segment is defined by setting the upper and lower borders of this segment. To configure the
segments, a lower (IBL) border and a higher (IBH) border are positioned by control register bits
MPUIPSEGB1[15:0] and MPUIPSEGB2[15:0], respectively, in the MPUIPSEGBx register. The position of
both borders follows the same mechanism as described in for the main segments.
The beginning of the IP encapsulation segment (IPE-segment) (IBL) is defined by the lower value of either
the MPUIPSEGB1[15:0] or MPUIPSEGB2[15:0] register. The end of the IPE-segment (IBH) is defined by
the higher value of either the MPUIPSEGB1[15:0] or MPUIPSEGB2[15:0] register. All memory locations
addressed by the 16 most significant bits of the address bus (MAB) equal to or greater than the lower
border (IBL) and less than IBH are protected.
Only program code executed from the IPE-segment can access data stored in this segment. The access
rights are evaluated with each code access. Each code access outside of the IP-protected area
deactivates the data access into the IPE-segment. JTAG or DMA cannot access the IPE-segment. The
interrupt vector table is always open for read and write accesses (for details see
To execute code from the IPE-segment, branch into that segment or call functions stored in that segment.
Interrupt service routines can be executed from the IPE-segment, too.
summarizes the possible combinations of code execution and memory access types and the
resulting access rights.