TI E2E Community (Beta)
Welcome to the TI E2E (Engineer-to-Engineer) Community! We invite you to freely and openly interact with your peer Engineers, TI Engineers, and other experts in order to ask questions, share knowledge, explore ideas, and help solve problems.
More Search Options

Executing code while erasing flash

rated by 0 users
Answered (Verified) This post has 1 verified answer | 2 Replies | 5 Followers

Not Ranked
9 Posts
Community Member
Andrew Harwood posted on 23 Jun 2009 4:03 AM

I see that the new MSP430x5xx Family Users guide indicates on page 258 (slau208d.pdf) that

"Each bank (device specific) can be erased individually while program execution can proceed in a
different flash bank.

Note: Bank operations are not supported on all devices. See the device-specific data sheet for
banks supported and their respective sizes."

And in MSP430F5529.pdf there are 4 banks listed on page 20.

My question is - Can you erase info memory while continuing with program execution?  Is INFO memory a separate bank?

If program execution is possible during an INFO memory erase then why would it say that Bank operations are no supported on all devices (It would seem that all devices have INFO memory).

The data sheet indicates that bank operations are not supported on all devices.  I can't find for any device where the datasheet says that it can support bank operations.  I assume that there are some devices that have multiple banks but do not support program execution during an erase (or is the document stating the obvious, that you can't continue program execution if there is only one bank)

Normal 0 false false false MicrosoftInternetExplorer4

 

Answered (Verified) Verified Answer

Top 100 Contributor
56 Posts
Texas Instruments Employee
Verified by Brandon

Andrew,

Good question!

(1) Read/Fetch while erase is supported only on multiple bank devices. On devices with a single bank the CPU will be held when flash memory is being erased regardless of whether the code is being executed out of info memory or main.

(2) Though this is not very clear from the Datasheet - a bank consists of a portion of the main, info and BSL memory. For example in the 54xx device bank0 includes main memory segments 0x5C00 - 0xFFFF, 0x40000 - 0x45BFF and InfoA, BSL segment0. So a user can only execute from info memory that is not associated with the bank being erased.

This needs to be clarified in the D/s as well.

Regards,

Priya

All Replies

Top 100 Contributor
56 Posts
Texas Instruments Employee
Verified by Brandon

Andrew,

Good question!

(1) Read/Fetch while erase is supported only on multiple bank devices. On devices with a single bank the CPU will be held when flash memory is being erased regardless of whether the code is being executed out of info memory or main.

(2) Though this is not very clear from the Datasheet - a bank consists of a portion of the main, info and BSL memory. For example in the 54xx device bank0 includes main memory segments 0x5C00 - 0xFFFF, 0x40000 - 0x45BFF and InfoA, BSL segment0. So a user can only execute from info memory that is not associated with the bank being erased.

This needs to be clarified in the D/s as well.

Regards,

Priya

Not Ranked
14 Posts
Community Member

INFO A/B/C/D are "special" memory banks: each one has 128 bytes (MSP430x5xxx) and are erased individually (SLAU208D - pg.259).

You can erase/write any time you want.

INFO A has an exception: LOCKA bit, which is an extra protection for erasing and writing.

You can erase/write others segments *but* you must be sure you are not using them during the erase/write process.

In the case of CrossWorks compiler, you can configure the flash memory and then use #pragma  to define the locations.

Page 1 of 1 (3 items) |

ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". TI AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY TI. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.