This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/PGA970: Code locking

Part Number: PGA970

Tool/software: Code Composer Studio

Hi Scott,

Is it still possible to reprogram a PGA970 once the code locking has been enabled?

I guess the part should be reprogrammable if locked but I just want to be sure. It is not obvious from the data sheet.

Best regards,

Nigel

  • Hi Nigel,

    The security lock prevents the digital interfaces from accessing any of the FRAM memory space. The COMBUF will still be accessible, so it is possible to program an unlock command into your firmware that will allow you to remove the security lock later for debugging.

    Please see the "Accessing PGA970 Memories While the Microprocessor Is Running" section of the datasheet for more information on the COMBUF.

    Regards,

  • Hi Scott,

    That sounds like it is necessary for a "Back Door" to be added to the code which would then not be secure.

    Are you saying that a XDS200 and CCS would not be able erase and reprogram the processor once the protection bits are set?

    Best regards,

    Nigel

  • Hello Nigel,

    Yes, if you want to be able to reprogram it after setting the security lock then it will not be completely secure. If you don't add a command to unlock it, then you will not be able to erase and reprogram the device later.

    Regards,

  • Hi Scott,

    I have written code to control locking and unlocking of the PGA970 but would like to test the functionality without actually locking the processor.

    To do this I was hoping to write a value other than 0xAA, the lock pattern, (say 0x80) to the SECLOCK register then inspect that value to ensure I have changed it. Unfortunately I am finding that I always read back 0x00 from SECLOCK. Looking at the datasheet, page 105, it looks as if the resgister should be 8 bits of R/W. Is this an error in the datasheet or am I doing something wrong?

    Best regards,

    Nigel

  • Hi Nigel,

    It should be R/W, but the read may actually not be useful. It's possible that the value isn't actually latched permanently in the register when it is written. I will check internally and get back to you.

    Regards,

  • Hi Scott,

    Have you heard back regarding latching of data in this register the read back ability? If not I will just have to cross my fingers and try it.

    Best regards,

    Nigel