9.1.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 in the “Resets” chapter for the available valid program execution areas and the PCON1 register definition for MEMV bit conditions.

Table 9-2. Memory Access Partition
REGAddressPartition
BBEN = 1 SAFEN = 1BBEN = 1 SAFEN = 0BBEN = 0 SAFEN = 1BBEN = 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 the BBSIZE Configuration bits.
  2. Last Program Memory Address is the Flash size given in the “Program Memory Organization” section in the “NVM - Nonvolatile Memory Control” chapter.
  3. Config Memory Address are the address locations of the Configuration Words given in the “NVMREG Access to DIA, DCI, User ID, DEV/REV ID, and Configuration Words” section in the “NVM - Nonvolatile Memory Control” chapter.
  4. Each memory block has a corresponding write protection fuse defined by the WRTAPP, WRTB, WRTC, and WRTSAF Configuration bits.