28.10.2014 Views

MMC2107 - Freescale Semiconductor

MMC2107 - Freescale Semiconductor

MMC2107 - Freescale Semiconductor

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Non-Volatile Memory FLASH (CMFR)<br />

<strong>Freescale</strong> <strong>Semiconductor</strong>, Inc.<br />

8. In CMFRCTL, set the EHV bit.<br />

NOTE:<br />

If a program page buffer word has not received a programming write, no<br />

programming voltages are applied to the drain of the corresponding<br />

word in the array. At this point, writing to the program page buffers is<br />

disabled and causes a bus error until SES has been cleared and set.<br />

nc...<br />

<strong>Freescale</strong> <strong>Semiconductor</strong>, I<br />

9. Read CMFRCTL until HVS = 0.<br />

10. In CMFRCTL, clear the EHV bit.<br />

11. Verify the program by reading the words of the pages that are<br />

being programmed. These are program margin reads. A bit that<br />

was successfully programmed returns a 0 during a margin read. It<br />

returns a 1 if it has been unsuccessfully programmed. If any bit<br />

intended to be programmed does not return a 0 after reading all<br />

the locations, the margin read has failed. If the margin read is<br />

successful continue to step 12, otherwise do the following:<br />

a. Write new pulse width parameters (if required, see Table 9-9<br />

for the required programming algorithm) CLKPE and CLKPM.<br />

b. Write new values for PAWS and NVR (if required, see<br />

Table 9-9)<br />

c. Go back to step 8 to apply additional pulses.<br />

To reduce the time for verification, read two locations in each array<br />

block that is being programmed after reading a non-programmed<br />

bit. After a location has been verified (all bits are programmed), it<br />

is not necessary to reverify the location, as no further<br />

programming voltages are applied to the drain of the<br />

corresponding bits.<br />

CAUTION: After a program pulse, read at least one location with address bit 5 = 0<br />

and one location with address bit 5 = 1 on each programmed page.<br />

Failure to do so may result in the loss of information in the CMFR array,<br />

and a full erase of all blocks being programmed must be done before the<br />

CMFR can be used reliably.<br />

12. In CMFRCTL, clear the SES bit.<br />

13. If more information needs to be programmed, go to step 3.<br />

Technical Data <strong>MMC2107</strong> – Rev. 2.0<br />

208 Non-Volatile Memory FLASH (CMFR) MOTOROLA<br />

For More Information On This Product,<br />

Go to: www.freescale.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!