PIC32MK1024GPD100 memory map

Where everything sits, at its exact address. The PIC32MK1024GPD100 has one 32-bit address space, seen through the MIPS32 segments: program flash at 0x9D000000 (KSEG0, cached), the boot flash the chip starts from after a reset at 0xBFC00000, RAM at 0x80000000 and the special function registers from 0xBF800000 (KSEG1, uncached). These are the virtual addresses XC32 and the datasheet's register tables use; for flash, boot flash, RAM and the SFRs the physical address is the same with the top three bits cleared (0x9D000000 is 0x1D000000).

Memory map

Program flash, boot flash, RAM and the SFRs in the one 32-bit space (the configuration words are listed below).

Boot flash (lowerbootalias)0xBFC00000 – 0xBFC03FAF15.9 KB
SFRs (periph_ssx)0xBF8F0000 – 0xBF8FFFFF64 KB
SFRs (periph_pb6_std)0xBF8C0000 – 0xBF8C03FF1 KB
SFRs (periph_pb5_std)0xBF880000 – 0xBF88AFFF44 KB
SFRs (periph_pb4_std)0xBF860000 – 0xBF8606FF1.8 KB
SFRs (periph_pb3_std)0xBF840000 – 0xBF84C7FF50 KB
SFRs (periph_pb2_std)0xBF820000 – 0xBF82E1FF56.5 KB
SFRs (periph_pb1_fast)0xBF810000 – 0xBF811FFF8 KB
SFRs (periph_pb1_std)0xBF800000 – 0xBF801FFF8 KB
Program flash0x9D000000 – 0x9D0FFFFF1 MB
RAM0x80000000 – 0x8003FFFF256 KB

Every segment

SegmentSpaceStartEndSizePage
RAMbase0x800000000x8003FFFF256 KB
Program flashbase0x9D0000000x9D0FFFFF1 MB
SFRs (periph_pb1_std)base0xBF8000000xBF801FFF8 KB
SFRs (periph_pb1_fast)base0xBF8100000xBF811FFF8 KB
SFRs (periph_pb2_std)base0xBF8200000xBF82E1FF56.5 KB
SFRs (periph_pb3_std)base0xBF8400000xBF84C7FF50 KB
SFRs (periph_pb4_std)base0xBF8600000xBF8606FF1.8 KB
SFRs (periph_pb5_std)base0xBF8800000xBF88AFFF44 KB
SFRs (periph_pb6_std)base0xBF8C00000xBF8C03FF1 KB
SFRs (periph_ssx)base0xBF8F00000xBF8FFFFF64 KB
Boot flash (lowerbootalias)base0xBFC000000xBFC03FAF15.9 KB
Configuration words (lowerbootaliasconfig)base0xBFC03FB00xBFC03FFF80 B
Boot flash (lowerbootaliaslastpage)base0xBFC040000xBFC04FFF4 KB
Boot flash (upperbootalias)base0xBFC200000xBFC23FAF15.9 KB
Configuration words (upperbootaliasconfig)base0xBFC23FB00xBFC23FFF80 B
Boot flash (upperbootaliaslastpage)base0xBFC240000xBFC24FFF4 KB
Boot flash (boot1)base0xBFC400000xBFC43FAF15.9 KB
Configuration words (boot1config)base0xBFC43FB00xBFC43FFF80 B
Boot flash (boot1lastpage)base0xBFC440000xBFC44FFF4 KB
Configuration words (adccal)base0xBFC450000xBFC4501B28 B
Configuration words (serial)base0xBFC450200xBFC4502F16 B
Configuration words (eedatacal)base0xBFC450300xBFC4503F16 B
Boot flash (boot2)base0xBFC600000xBFC63FAF15.9 KB
Configuration words (boot2config)base0xBFC63FB00xBFC63FFF80 B
Boot flash (boot2lastpage)base0xBFC640000xBFC64FFF4 KB