User Manual
300
Rev. 1.1
2019-03-18
TLE984xQX
Microcontroller with LIN and Power Switches for Automotive Applications
Memory Control Unit
Even if user enables protection on a defined region at startup using the dedicated password, during the
application code execution there might be the need to temporarily remove the protection to store some new
code/data.
For example, user might want to set by default at startup the write protection on the Non-Linear NVM region
to avoid accidental data loss. Nevertheless, during application code execution, there might be the need to
update some of the data stored in this region. For this reason, the TLE984xQX provides the user the possibility
to change the protection status writing directly the NVM_PROT_STS bits. The changes in the active protection
scheme obtained via direct access to the register are anyhow temporary and the default protections
controlled by password status will be automatically restored at the next reset (next BootROM startup
sequence execution).
Anyhow, to safeguard against accidental access by user on this register, its access is controlled depending on
boot mode, memory regions protections status and source address.
The bootROM code (firmware), provides proper APIs to individually set/clear, read and write protection on
each memory protection region.
These routines:
• Freely change read/write protection as long as no valid password for the target region has been installed.
• In case a valid password for the target region is installed, the routine has to take the current valid password
as input. If the provided password matches the current valid installed one, the target NVM_PROT_STS bits
can be freely changed. In case, instead, the password provided as input does not match the current
installed one, the NVM_PROT_STS target bits are not changed and the content of all the 3 password
controlled memory region (Customer BSL, Linear NVM and Non-Linear NVM) together with the related
passwords is erased to avoid hacking of the stored password by repetitive trials.
The above reported feature and routines applies in general for all the different memory protection regions.
Exceptions:
• Customer BSL protection region is controllable only via password
Note:
The possibility to remove a protection even when password has been installed is provided to ensure
to the user the possibility to unlock the device in case of FAR investigation. Of course, as reported
above, all the provided mechanism require the knowledge of the current installed password.
Without knowing the password value unlock is not possible.
11.6.3
Firmware Protection Mode
The firmware protection scheme is the second leg of the overall memory protection concept.
In particular, the BootROM code provides following features:
• Each BootROM routine provided by the firmware for the NVM data handling (e.g Program or Erase routines)
checks the address to identify which region is targeted and accordingly check the relevant bit of the
NVM_PROT_STS register. In case the write protection for the target region is not set, the operation is
executed. In case, instead, the write protection for the target region is set, the routine is exited reporting a
proper error.
• In case read protection is enabled on any of the password controllable protection regions (Customer BSL,
Linear NVM and Non Linear NVM), all provided feature to download code into the device are blocked (for
example all BSL modes available to download code into the device).
The firmware protection features are provided to complete the protection scheme. The first implemented
feature is implemented to ease the detection of any BootROM routine fails due to the protection setting. In
fact, in case a BootROM routine is called with write protection enabled, the routine would not affect the NVM