Datasheet

© 2011-2014 Microchip Technology Inc. DS60001168F-page 35
PIC32MX1XX/2XX
4.0 MEMORY ORGANIZATION
PIC32MX1XX/2XX microcontrollers provide 4 GB uni-
fied virtual memory address space. All memory
regions, including program, data memory, Special
Function Registers (SFRs), and Configuration
registers, reside in this address space at their respec-
tive unique addresses. The program and data memo-
ries can be optionally partitioned into user and kernel
memories. In addition, the data memory can be made
executable, allowing PIC32MX1XX/2XX devices to
execute from data memory.
Key features include:
32-bit native data width
Separate User (KUSEG) and Kernel
(KSEG0/KSEG1) mode address space
Flexible program Flash memory partitioning
Flexible data RAM partitioning for data and
program space
Separate boot Flash memory for protected code
Robust bus exception handling to intercept
runaway code
Simple memory mapping with Fixed Mapping
Translation (FMT) unit
Cacheable (KSEG0) and non-cacheable (KSEG1)
address regions
4.1 PIC32MX1XX/2XX Memory Layout
PIC32MX1XX/2XX microcontrollers implement two
address schemes: virtual and physical. All hardware
resources, such as program memory, data memory
and peripherals, are located at their respective physical
addresses. Virtual addresses are exclusively used by
the CPU to fetch and execute instructions as well as
access peripherals. Physical addresses are used by
bus master peripherals, such as DMA and the Flash
controller, that access memory independently of the
CPU.
The memory maps for the PIC32MX1XX/2XX devices
are illustrated in Figure 4-1 through Figure 4-5.
Note: This data sheet summarizes the features
of the PIC32MX1XX/2XX family of
devices. It is not intended to be a
comprehensive reference source.For
detailed information, refer to Section 3.
“Memory Organization” (DS60001115)
in the “PIC32 Family Reference Manual”,
which is available from the Microchip
web site (www.microchip.com/PIC32).