5.2.5 Memory Violation

A Memory Execution Violation Reset occurs while executing an instruction that has been fetched from outside a valid execution area, clearing the MEMV bit. Refer to the “Memory Execution Violation” section for the available valid program execution areas and the PCON1 register definition for MEMV bit conditions.

Table 5-2. Memory Access Partition
REGAddressPartition

BBEN = 1

SAFEN = 1

BBEN = 1

SAFEN = 0

BBEN = 0

SAFEN = 1

BBEN = 0

SAFEN = 0

PFM00 0000h ... Last Block Memory AddressAPPLICATION BLOCK(4)APPLICATION BLOCK(4)BOOT BLOCK(4)BOOT BLOCK(4)
Last Boot Block Memory Address + 1(1) ... Last Program Memory Address - 80hAPPLICATION BLOCK(4)APPLICATION BLOCK(4)
Last Program Memory Address - 7Fh(2) ... Last Program Memory AddressSAF(4)SAF(4)
CONFIGConfig Memory Address(3)CONFIG
Note:
  1. Last Boot Block Memory Address is based on BBSIZE given in “Configuration Word 4”.
  2. Last Program Memory Address is the Flash size given in the “Program Memory Organization”.
  3. Config Memory Address are the address locations of the Configuration Words given in the “NVMREG Access to Device Information Area, Device Configuration Area, User ID, Device ID, EEPROM, and Configuration Words” section.
  4. Each memory block has a corresponding write protection fuse defined by the WRTAPP, WRTB and WRTC bits in the “Configuration Word 4”.