2008-01-03 02:21 AM
Code and Data in the CSBOOT memory
2011-05-17 02:51 AM
I'm using the 3454 wit the main memory used as data and CSBOOT0-2 as code, and CSBOOT3 as programmable data page (in PSDExpress the sec. memory is defined as code&data - so the VM is good). Everything is working just fine but when I try to erase sector CSBOOT3 to write new data to it, the MCU will 'freeze' until reset. The CSBOOT3 is set to page 8 and mapped to 0x8000-0x9FFF as it should be. Writing to any sector of the main flash (using the same code different pages)works just fine. Can someone help and explain what I'm doing wrong, or point to a similar code example (code and data within the CSBOOT memory)? Thanks!
2011-05-17 02:51 AM
sagam,
The flash memory banks in the uPSD are not write-while-execute capable. What this means is that if you're running code in CSBOOTX, you cannot at the same time program/erase ANY other CSBOOT area. You'll have to be running from RAM or from FSX (main flash) if you want to reprogram the CSBOOT sectors. This is the reason there are these two separate areas in the chip. -Phaze426