ST10F276E
Internal Flash memory
Table 26. Summary of access protection level (continued)
Memory fetch source
Read IFLASH/ Read XFLASH/
Jump to
Jump to
IFLASH
XFLASH
Read FLASH
Registers
Fetching from XRAM
No / Yes
Yes / Yes
Yes
Fetching from External
Memory
No / Yes
Yes / Yes
Yes
Write FLASH
Registers
No
No
4.4.10
4.4.11
Write protection
The Flash modules have one level of Write Protections: each sector of each bank of each
Flash Module can be Software Write Protected by programming at 0 the related bit WyPx of
FNVWPXRH/L-FNVWPIRH/L registers.
Temporary unprotection
Bits WyPx of FNVWPXRH/L-FNVWPIRH/L can be temporary unprotected by executing the
Set Protection operation and writing 1 into these bits.
Bit ACCP can be temporary unprotected by executing the Set Protection operation and
writing 1 into these bits, but only if these write instructions are executed from the Flash
Modules.
To restore the write and access protection bits it is necessary to reset the microcontroller or
to execute a Set Protection operation and write 0 into the desired bits.
It is not necessary to temporary unprotect an access protected Flash in order to update the
code: it is, in fact, sufficient to execute the updating instructions from another Flash bank.
In reality, when a temporary unprotection operation is executed, the corresponding volatile
register is written to 1, while the non-volatile registers bits previously written to 0 (for a
protection set operation), will continue to maintain the 0. For this reason, the User software
must be in charge to track the current protection status (for instance using a specific RAM
area), it is not possible to deduce it by reading the non-volatile register content (a temporary
unprotection cannot be detected).
Doc ID 12303 Rev 3
41/235