SiM3C1xx
4.9. Security
The peripherals on the SiM3C1xx devices have a register lock and key mechanism that prevents any undesired
accesses of the peripherals from firmware. Each bit in the PERIPHLOCKx registers controls a set of peripherals. A
key sequence must be written in order to the KEY register to modify any of the bits in PERIPHLOCKx. Any
subsequent write to KEY will then inhibit any accesses of PERIPHLOCKx until it is unlocked again through KEY.
Reading the KEY register indicates the current status of the PERIPHLOCKx lock state.
If a peripheral’s registers are locked, all writes will be ignored. The registers can always be read, regardless of the
peripheral’s lock state.
Peripheral Lock and Key
USART0/1,
UART0/1
SPI0/1/2
I2C0/1
EPCA0, PCA0/1
TIMER0/1
PERIPHLOCK0
PERIPHLOCK1
KEY
SARADC0/1
SSG0
4.10. On-Chip Debugging
The SiM3C1xx devices include JTAG and Serial Wire programming and debugging interfaces and ETM for
instruction trace. The JTAG interface is supported on SiM3C1x7 and SiM3C1x6 devices, and the ETM interface is
supported on SiM3C1x7 devices. The JTAG and ETM interfaces can be optionally enabled to provide more
visibility while debugging at the cost of using several Port I/O pins. Additionally, if the core is configured for Serial
Wire (SW) mode and not JTAG, then the Serial Wire Viewer (SWV) is available to provide a single pin to send out
TPIU messages on SiM3C1x7 and SiM3C1x6 devices.
Most peripherals have the option to halt or continue functioning when the core halts in debug mode.
48
Preliminary Rev. 0.8