PSoC 4xxx series readout protection

From SEGGER - Support Wiki
Jump to: navigation, search

Securing device after programming

The Cypress CY8C4xxx and CYBLExxxx series devices provide chip-level protection which allows "permanent" protection of the device concerning read and write access. The sequence, to secure the device consists of multiple read / write accesses to special function registers of the CY8C4xxx and CYBLExxxx series devices.

Via J-Flash / Flasher ARM

The sequence to secure the device, needs to be added to the exit-steps of the J-Flash project. The exit steps will be executed at the end of an successful auto-programming process (Target -> Auto). J-Flash comes with an example project for the Cypress CYBLE-214009-00 device which contains a secure device programming sequence (File:Cypress CYBLE 214009-00.jflash). This sequence applies for all Cypress CY8C4xxx and CYBLExxxx series devices since they are compatible regarding secure procedure and can be adapted to fit custom requirements, by re-selecting the required device within the J-Flash project.

Wiki-Cypress CY8C4xxx CYBLExxxx ProtectCPU.png

Note: PSoC4100/4200 target devices use different addresses for the SYSREQ and SYSARG registers. They are located at 0x40000004 and 0x40000008 instead. For more information please consult the CypressProgramming Specifications user guide.

Unsecuring device before reprogramming

The Cypress CY8C4xxx and CYBLExxxx series devices provide chip-level protection which allows "permanent" protection of the device concerning read and write access. The sequence, to unsecure the device consists of multiple read / write accesses to special function registers of the Cypress CY8C4xxx and CYBLExxxx series devices MCU.

Via J-Flash / Flasher ARM

J-Flash(v6.31k and following) detects if the device is secured. In case of a secured device a pop-up window occurs with request to unsecure the device. This sequence applies for all Cypress CY8C4xxx and CYBLExxxx series devices since they are compatible regarding secure procedure.