4 flash memory access during write or erase – Texas Instruments MSP430x4xx User Manual
Page 139
Flash Memory Operation
5-14
Flash Memory Controller
5.3.4
Flash Memory Access During Write or Erase
When any write or any erase operation is initiated from RAM and while
BUSY=1, the CPU may not read or write to or from any flash location.
Otherwise, an access violation occurs, ACCVIFG is set, and the result is
unpredictable. Also if a write to flash is attempted with WRT=0, the ACCVIFG
interrupt flag is set, and the flash memory is unaffected.
When a byte/word write or any erase operation is initiated from within flash
memory, the flash controller returns op-code 03FFFh to the CPU at the next
instruction fetch. Op-code 03FFFh is the
JMP PC
instruction. This causes the
CPU to loop until the flash operation is finished. When the operation is finished
and BUSY=0, the flash controller allows the CPU to fetch the proper op-code
and program execution resumes.
The flash access conditions while BUSY=1 are listed in Table 5−3.
Table 5−3. Flash Access While BUSY = 1
Flash
Operation
Flash
Access
WAIT
Result
Read
0
ACCVIFG = 0. 03FFFh is the value read
Any erase, or
Write
0
ACCVIFG = 1. Write is ignored
Byte/word write
Instruction
fetch
0
ACCVIFG = 0. CPU fetches 03FFFh. This
is the
JMP PC
instruction.
Any
0
ACCVIFG = 1, LOCK = 1
Read
1
ACCVIFG = 0, 03FFFh is the value read
Block write
Write
1
ACCVIFG = 0, Write is ignored
Instruction
fetch
1
ACCVIFG = 1, LOCK = 1