PIC18F27Q84 memory map

Where everything sits, at its exact address. The PIC18F27Q84 keeps program and data apart (Harvard): program memory holds 16-bit instruction words, addressed in bytes, while the special function registers and the general-purpose RAM share the banked data memory.

Program memory

Instructions, the user ID and the configuration words.

Configuration words0x300000 – 0x30002336 B
User ID0x200000 – 0x20003F64 B
Flash0x0000 – 0x1FFFF128 KB

Data memory

Banked: special function registers and general-purpose RAM in each bank.

RAM, bank 540x3600 – 0x36FF256 B
RAM, bank 530x3500 – 0x35FF256 B
RAM, bank 520x3400 – 0x34FF256 B
RAM, bank 510x3300 – 0x33FF256 B
RAM, bank 500x3200 – 0x32FF256 B
RAM, bank 490x3100 – 0x31FF256 B
RAM, bank 480x3000 – 0x30FF256 B
RAM, bank 470x2F00 – 0x2FFF256 B
RAM, bank 460x2E00 – 0x2EFF256 B
RAM, bank 450x2D00 – 0x2DFF256 B
RAM, bank 440x2C00 – 0x2CFF256 B
RAM, bank 430x2B00 – 0x2BFF256 B
RAM, bank 420x2A00 – 0x2AFF256 B
RAM, bank 410x2900 – 0x29FF256 B
RAM, bank 400x2800 – 0x28FF256 B
RAM, bank 390x2700 – 0x27FF256 B
RAM, bank 380x2600 – 0x26FF256 B
RAM, bank 370x2500 – 0x25FF256 B
RAM, bank 360x2400 – 0x24FF256 B
RAM, bank 350x2300 – 0x23FF256 B
RAM, bank 340x2200 – 0x22FF256 B
RAM, bank 330x2100 – 0x21FF256 B
RAM, bank 320x2000 – 0x20FF256 B
RAM, bank 310x1F00 – 0x1FFF256 B
RAM, bank 300x1E00 – 0x1EFF256 B
RAM, bank 290x1D00 – 0x1DFF256 B
RAM, bank 280x1C00 – 0x1CFF256 B
RAM, bank 270x1B00 – 0x1BFF256 B
RAM, bank 260x1A00 – 0x1AFF256 B
RAM, bank 250x1900 – 0x19FF256 B
RAM, bank 240x1800 – 0x18FF256 B
RAM, bank 230x1700 – 0x17FF256 B
RAM, bank 220x1600 – 0x16FF256 B
RAM, bank 210x1500 – 0x15FF256 B
RAM, bank 200x1400 – 0x14FF256 B
RAM, bank 190x1300 – 0x13FF256 B
RAM, bank 180x1200 – 0x12FF256 B
RAM, bank 170x1100 – 0x11FF256 B
RAM, bank 160x1000 – 0x10FF256 B
RAM, bank 150x0F00 – 0x0FFF256 B
RAM, bank 140x0E00 – 0x0EFF256 B
RAM, bank 130x0D00 – 0x0DFF256 B
RAM, bank 120x0C00 – 0x0CFF256 B
RAM, bank 110x0B00 – 0x0BFF256 B
RAM, bank 100x0A00 – 0x0AFF256 B
RAM, bank 90x0900 – 0x09FF256 B
RAM, bank 80x0800 – 0x08FF256 B
RAM, bank 70x0700 – 0x07FF256 B
RAM, bank 60x0600 – 0x06FF256 B
RAM, bank 50x0560 – 0x05FF160 B
RAM, bank 00x0500 – 0x055F96 B

EEPROM

Non-volatile data, kept without power.

EEPROM0x0000 – 0x03FF1 KB

Every segment

SegmentSpaceStartEndSizePage
RAM, bank 0data0x05000x055F96 B
General-purpose RAM, all banksdata0x05000x36FF12.5 KB
RAM, bank 5data0x05600x05FF160 B
RAM, bank 6data0x06000x06FF256 B
RAM, bank 7data0x07000x07FF256 B
RAM, bank 8data0x08000x08FF256 B
RAM, bank 9data0x09000x09FF256 B
RAM, bank 10data0x0A000x0AFF256 B
RAM, bank 11data0x0B000x0BFF256 B
RAM, bank 12data0x0C000x0CFF256 B
RAM, bank 13data0x0D000x0DFF256 B
RAM, bank 14data0x0E000x0EFF256 B
RAM, bank 15data0x0F000x0FFF256 B
RAM, bank 16data0x10000x10FF256 B
RAM, bank 17data0x11000x11FF256 B
RAM, bank 18data0x12000x12FF256 B
RAM, bank 19data0x13000x13FF256 B
RAM, bank 20data0x14000x14FF256 B
RAM, bank 21data0x15000x15FF256 B
RAM, bank 22data0x16000x16FF256 B
RAM, bank 23data0x17000x17FF256 B
RAM, bank 24data0x18000x18FF256 B
RAM, bank 25data0x19000x19FF256 B
RAM, bank 26data0x1A000x1AFF256 B
RAM, bank 27data0x1B000x1BFF256 B
RAM, bank 28data0x1C000x1CFF256 B
RAM, bank 29data0x1D000x1DFF256 B
RAM, bank 30data0x1E000x1EFF256 B
RAM, bank 31data0x1F000x1FFF256 B
RAM, bank 32data0x20000x20FF256 B
RAM, bank 33data0x21000x21FF256 B
RAM, bank 34data0x22000x22FF256 B
RAM, bank 35data0x23000x23FF256 B
RAM, bank 36data0x24000x24FF256 B
RAM, bank 37data0x25000x25FF256 B
RAM, bank 38data0x26000x26FF256 B
RAM, bank 39data0x27000x27FF256 B
RAM, bank 40data0x28000x28FF256 B
RAM, bank 41data0x29000x29FF256 B
RAM, bank 42data0x2A000x2AFF256 B
RAM, bank 43data0x2B000x2BFF256 B
RAM, bank 44data0x2C000x2CFF256 B
RAM, bank 45data0x2D000x2DFF256 B
RAM, bank 46data0x2E000x2EFF256 B
RAM, bank 47data0x2F000x2FFF256 B
RAM, bank 48data0x30000x30FF256 B
RAM, bank 49data0x31000x31FF256 B
RAM, bank 50data0x32000x32FF256 B
RAM, bank 51data0x33000x33FF256 B
RAM, bank 52data0x34000x34FF256 B
RAM, bank 53data0x35000x35FF256 B
RAM, bank 54data0x36000x36FF256 B
EEPROMeeprom0x00000x03FF1 KB
Flashprog0x00000x1FFFF128 KB
User IDprog0x2000000x20003F64 B
Configuration wordsprog0x3000000x30002336 B