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.

MSP432E401Y: MSP432E401Y Application CRC

Part Number: MSP432E401Y

Hello

We are using the MSP432E401Y in a Nuclear Control Safety related application and I am looking for the capability to have the application, as will be loaded to target, contain a CRC that is calculated at build time, loaded as part of the application, then can be verified on target as being correct during Power-On Built-in Test and during Continuous Built-In Test. This is used to verify NVS is not corrupted. This is an approach used previously for safety critical applications.

Does the TI CCS environment contain build and load tools to be able to support this type of functionality, or will a custom approach be required?

Thanks In Advance.

Perry 

  • Hi,

      Yes, it is supported. Please refer to section 8.9 for details in the TI Assembler user's guide. 

    https://www.tij.co.jp/jp/lit/ug/spnu118p/spnu118p.pdf

    8.9 Linker-Generated CRC Tables

    The linker supports an extension to the linker command file syntax that enables the verification of code or data by means of Cyclic Redundancy Code (CRC). The linker computes a CRC value for the specified region at link time, and stores that value in target memory such that it is accessible at boot or run time. The application code can then compute the CRC for that region and ensure that the value matches the linker-computed value. The run-time-support library does not supply a routine to calculate CRC values at boot or run time.