background image

2.1 Secure GPIO Mask

Each GPIO has a Secure GPIO MASK. As shown in 

Fig 4

 , we can think of the Secure GPIO Mask as one input of the AND gate.

Its default value is 1. Through Secure GPIO Mask, we can control the on/off state of the normal GPIO read path.

2.2 Secure GPIO

As shown in 

Fig 4

 , Secure GPIO has the same functions as normal GPIO. However, the access rules to this Secure GPIO for

different secure levels are configured through the Secure AHB controller which can only be accessed in Secure state.

2.3 Secure PINT

The main difference between Secure PINT and PINT is that the Secure PINT only supports up to two pins on Port 0. Similar as
Secure GPIO, the access rules to this module are configured through the Secure AHB controller.

The Secure Pin Interrupt Generator and the Secure Pattern Match Engine are available on all LPC55S6x devices.

Similar as normal PINT, the Secure Pin Interrupt Generator, and the Secure Pattern Match Engine are mutually exclusive.

2.3.1 Secure Pin Interrupts

– For Secure PINT block, up to two pins can be selected from all pins on port 0 , as edge-sensitive or level-sensitive interrupt
requests. Each request creates a separate interrupt in the NVIC.

– Edge-sensitive interrupt pins can interrupt on rising or falling edges or both.

– Level-sensitive interrupt pins can be HIGH-active or LOW-active.

2.3.2 Secure Pattern Match Engine

– Up to 

two pins can be selected from all digital pins on port 0 to contribute to a boolean expression. The boolean expression

consists of specified levels and/or transitions on various combinations of these pins.

– Each bit slice minterm (product term) comprising the specified boolean expression can generate its own, dedicated interrupt
request.

– Any occurrence of a pattern match can be programmed to generate an RXEV notification to the CPU.

– Pattern match can be used in conjunction with software, to create complex state machines based on pin inputs.

3 Usage

3.1 Use Secure GPIO Mask to protect Secure digital peripherals which need IO

SEC_GPIO_MASK register is used for controlling Secure GPIO Mask. Default register value is all 1, which means NS code can
still read Secure peripheral states by reading its pin states as shown in left side of 

Fig 5

 below.

To prevent this risk of secure information leakage, the normal GPIO shall be masked by setting the corresponding bits in
SEC_GPIO_MASK to 0, as shown in the right side of 

Fig 5

 below.

NXP Semiconductors

Usage

LPC55S6x Secure GPIO and Usage, Rev. 0, 15 January 2019

Application Note

6 / 12

Summary of Contents for LPC55S6 Series

Page 1: ...ecure state CPU S can execute instructions from Secure memory S memory but not allowed to execute instructions directly from Non secure memory NS memory However CPU S can access data in both S memory...

Page 2: ...roller The LPC55S6x implements second layer of protection with Secure AHB Controller to provide secure trusted execution at system level With Secure AHB Controller you can configure security access ru...

Page 3: ...powerful Like SPI UART and so on a normal GPIO is also a digital peripheral in the MCU Following is a simple block diagram of the normal GPIO The normal GPIO can read a pin state regardless of pin fun...

Page 4: ...a Secure peripheral which means that this UART is only allowed to be accessed by the Secure world i e code not by the Non secure world However in this case the UART pin states can still be monitored...

Page 5: ...to generate certain input pattern from external device for secure signaling For the same reason Secure world needs Secure Pin Interrupt Pattern Match Engine PINT so another module named Secure PINT is...

Page 6: ...separate interrupt in the NVIC Edge sensitive interrupt pins can interrupt on rising or falling edges or both Level sensitive interrupt pins can be HIGH active or LOW active 2 3 2 Secure Pattern Matc...

Page 7: ...events Non secure world from accessing the Secure GPIO Configure the IOCON block to Secure through Secure AHB Controller It prevents Non secure world from accessing the IOCON Configure the correspondi...

Page 8: ...T From application perspective the method of using Secure PINT is same as of normal PINT There is one thing that needs extra attention To disable the Non secure world from accessing the Secure PINT re...

Page 9: ...cable between PC and P6 link on the board for loading and running a demo 4 1 2 Software environment Tool chain IAR embedded workbench 8 30 1 Software package AN_SecureGPIO_Demo zip 4 2 Steps and resu...

Page 10: ...Configure secure_gpio_s and secure_gpio_ns projects as shown below Figure 15 Configuration of the projects 2 Compile Download Compile secure_gpio_s project first then compile secure_gpio_ns project N...

Page 11: ...IO and Secure GPIO read all 0 from this pin Press USER button S3 it jumps to Secure world toggle Secure GPIO Mask and then jump back to Non Secure world Press WAKEUP button S2 it will jump to Secure w...

Page 12: ...lement appropriate design and operating safeguards to minimize the risks associated with their applications and products NXP the NXP logo NXP SECURE CONNECTIONS FOR A SMARTER WORLD COOLFLUX EMBRACE GR...

Reviews: