|ARM Technical Support Knowledge Articles|
Applies to: MCBSTR9 Evaluation Board
Information in this support solution applies to:
I am using a STR91xFA Rev H controller and when I start a Target Debug Session after flashing my application I always get:
Memory Mismatch error at address 0x00008000
How can I avoid this error?
Boot bank size register (FMI_BBSR) is 0 after reset which defines the default size of the Boot bank as 32kB. Therefore when the debugger connects after reset only the first 32kB (up to address 0x8000) is mapped physically and verify fails above this address.
There are two possible ways to avoid the verify error:
_WDWORD(0x54000000, 0x00000004); // Boot Bank Size = 512kB LOAD filename.axf g,mainThis method verifies the load also.
All this applies only to STR91xFA Rev H devices. All chips before (STR91xFA Rev G and STR91xF Rev B, Rev D) do not reset FMI_BBSR (documented in Errata sheet) and therefore after the application configured FMI_BBSR once it stays configured. Also when debugger connects and resets the target it does not affect the FMI_BBSR and mapping stays active and verify works. Verify fails on those chips only when blank chips where programmed with code larger then 32kB.
Disable Use Reset at Startup under debugger options will not reset the target and the mapping and verify will also work if the application already configured FMI_BBSR. However above mentioned methods should be used instead.
Request the files attached to this knowledgebase article.
Article last edited on: 2012-08-20 09:44:23
Did you find this article helpful? Yes No
How can we improve this article?