User Manual
302
Rev. 1.1
2019-03-18
TLE984xQX
Microcontroller with LIN and Power Switches for Automotive Applications
Memory Control Unit
11.7
Core Protection Mode
The
describe the protection against accidental or malicious read and
write memory access implemented in hardware and software. The hardware implements a check of all direct
access to the each memory region (even from debugger) granting access only when the target region is not
protected. The firmware, instead, blocks any download of new code via BSL in case any NVM read protection
is installed to avoid the possibility to install any malicious software that removes the protection and reads out
the user code.
Without any further feature, there would still be the possibility to use the debugger to leak information about
user code. In fact, even if the read out of the memory content via debugger is blocked when accessing a read
protected region, it is still possible to use the other debugger features (e.g. step through, breakpoints,
watchpoints, code profiling) to perform a reverse engineering of executed code.
For this reason, a further level of protection is implemented between the Memory Control Unit and the Core.
In particular, the debugger features are disabled according to the current program counter and the installed
passwords.
By default, when no password is installed, the debug features are disabled while executing from the BootROM
thus avoiding any code profiling.
As soon as at least one read protection is set via one of the 3 NVM region password then the protected region
is actually extended to the complete TLE984xQX code region. This means that any debugger command will be
left pending thus resulting in a time out and a loss of connection. Consequently, once a password with most
significant bit set to 1 is installed (read protection enabled), at the following reset no connection to the device
is possible anymore.