33.1.13.2 Single Write Sequence
The smallest block of data that can be programmed with a single write is one Word. The data to be programmed must be written to DATA0 before the programming sequence is initiated. The FCW programs the DATAn into the Word/DWord location pointed to by ADDR. ADDR is a byte address, therefore the lower 2 or 3 bits are ignored for Word or DWord programming.
A Word/DWord Program sequence typically comprises the following steps:
- <Desired NVMOP> is Single Write.
- Follow the Start Sequencer from Start Sequencer.
- Wait for NVM Interrupt from Interrupts.
- Check the INTFLAG bits to ensure that the program sequence completed successfully, and then clear all bits in INTFLAG. See Errors and Flags about error flags.
A Word/DWord within the Flash can be programmed if its associated page write protection is not enabled, see Debug Access Level.
Single Write Timing
The Word/DWord Program timing is dominated by setup (Tnvs + Tpgs), program time (Tprog), and recovery (Trcv) delays. Using the timing, shown in “Flash Timing Parameters”, total time to program one Word is roughly shown below:
Word/DWord Program time = Tnvs + Tpgs + Tprog + Trcv + Trw
If Pre-Programming, the first step adds roughly:
Word/DWord Program time = Tpreprog + Tprepgh + Tprepgs
Single Write and ECC
Single writes are not allowed because of the Flash ECC setting. The Interrupt Error Flag Summary table defines the interrupt flags that are set.
