This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSPM0L1227: Some Questions about Flash Writing/Erasing

Part Number: MSPM0L1227

Tool/software:

Hi,

We’ve received some inquiries from my customer. Could you answer their questions below ?

< During Flash Programming/Erasing >

During Programming/Erasing (after setting CMDEXEC register), should CPU wait for finishing Programming/Erasing ?

Or can CPU execute other processing during that ?

 

< DMA >

Is it possible to issue Program/Erase instruction by specifying address and data from CPU(FW) to DMA ?

Is it general way to use Flash Controller for Program/Erase ?

 

< Endurance of Flash (1) >

When programming only 100Byte and performing Sector Erase (1Kbyte), is the memory endurance of unprogrammed 900 bytes also counted as one time?

 

< Endurance of Flash (2) >

Is "Erase/program" cycle counted as one set for 100k/10k cycles of Flash memory life?

For example, if 8 bits are rewritten (1 to 0) 8 times for each 1 bit, and Erase (00h -> FFh) is performed 1 time, can the memory endurance count be counted as 1 time?

 

< HW Reset >

Is it no problem to leave NRST=low for a long time during VDD is supplied ?

 

Thanks and regards,
Hideaki 

  • Hi, Hideaki

    L1227 is a dual bank device.

    Flash Read/Erase limitation is: Within single bank, flash can not be Erase/Write and Read at the same time.

    During Programming/Erasing (after setting CMDEXEC register), should CPU wait for finishing Programming/Erasing ?

    It's better to wait for Flash CMD EXE done.

    Is it possible to issue Program/Erase instruction by specifying address and data from CPU(FW) to DMA ?

    Is it general way to use Flash Controller for Program/Erase ?

    No, can not Erase/Program Flash using CPU with DMA.

    Only way to Erase/Program Flash is via FLASHCTL.

    But we can read from Flash using DMA.

    When programming only 100Byte and performing Sector Erase (1Kbyte), is the memory endurance of unprogrammed 900 bytes also counted as one time?

    Erase 1K, you will get 1k flash region set to 0xFF.

    Programming 100 Byte, and then run Erase again in the same 1K region sector.

    Only 1/10 of 1K region endurance is consumed.

    For example, if 8 bits are rewritten (1 to 0) 8 times for each 1 bit, and Erase (00h -> FFh) is performed 1 time, can the memory endurance count be counted as 1 time?

    Yes, count as one time.

    But you can not Program Flash 8bit with 8 times, there is no such Flashctl command.

    You can Program 1 Flash word (64bits) with 8 times, 1 byte (8 bit) at one program operation.

    Is it no problem to leave NRST=low for a long time during VDD is supplied ?

    That's OK, M0 won't run until reset is high.

    Regards,

    Helic