EasyManua.ls Logo

NXP Semiconductors MPC5606S - Page 626

NXP Semiconductors MPC5606S
1344 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Flash Memory
MPC5606S Microcontroller Reference Manual, Rev. 7
624 Freescale Semiconductor
Whenever you program, ECC bits also get programmed (unless the selected address belongs to a sector in
which the ECC has been disabled in order to allow bit manipulation). ECC is handled on a 64-bit boundary.
Thus, if only one word in any given 64-bit ECC segment is programmed, the adjoining word (in that
segment) should not be programmed since ECC calculation has already completed for that 64-bit segment.
Attempts to program the adjoining word will probably result in an operation failure. It is recommended
that all programming operations be of 64 bits. The programming operation should completely fill selected
ECC segments within the Double Word.
Programming changes the value stored in an array bit from logic 1 to logic 0 only. Programming cannot
change a stored logic 0 to a logic 1.
Addresses in locked/disabled blocks cannot be programmed.
The user may program the values in any or all of two words, of a Double Word, with a single program
sequence.
Double Word-bound words have addresses which differ only in address bit 2.
The Program operation consists of the following sequence of events:
1. Change the value in the MCR.PGM bit from 0 to 1.
2. Ensure the block that contains the address to be programmed is unlocked.
Write the first address to be programmed with the program data.
The flash module latches address bits (22:3) at this time.
The flash module latches data written as well.
This write is referred to as a program data interlock write. An interlock write may be as large as 64
bits, and as small as 32 bits (depending on the CPU bus).
3. If more than 1 word is to be programmed, write the additional address in the Double Word with
data to be programmed. This is referred to as a program data write.
The flash modules ignores address bits (22:3) for program data writes.
The eventual unwritten data word default to 0xFFFFFFFF.
4. Write a logic 1 to the MCR.EHV bit to start the internal program sequence or skip to step 9 to
terminate.
5. Wait until the MCR.DONE bit goes high.
6. Confirm MCR.PEG=1.
7. Write a logic 0 to the MCR.EHV bit.
8. If more addresses are to be programmed, return to step 2.
9. Write a logic 0 to the MCR.PGM bit to terminate the program operation.
Program may be initiated with the 0 to 1 transition of the MCR.PGM bit or by clearing the MCR.EHV bit
at the end of a previous program.
The first write after a program is initiated determines the page address to be programmed. This first write
is referred to as an interlock write. The interlock write determines if the shadow, test or normal array space
will be programmed by causing MCR.PEAS to be set/cleared.
An interlock write must be performed before setting MCR.EHV. The user may terminate a program
sequence by clearing MCR.PGM prior to setting MCR.EHV.

Table of Contents

Related product manuals