Part Number: TMS570LS0332
Other Parts Discussed in Thread: HALCOGEN, LAUNCHXL-TMS57004
Hello everyone,
I am planning to develop a SIL3-compliant device using the TI TMS570LS0332 controller. I have gone through the available documentation and the TÜV certificate, but I still have a few doubts regarding the controller and the correct development approach. I would really appreciate some guidance from people who have worked with the Hercules/TMS570 family in safety-related applications.
-
TÜV certification and SIL3 compliance
I have seen the TÜV certificate/documentation which states that the controller is suitable/certified for SIL3 applications. However, I could not find "SIL3 compliant" explicitly mentioned in the datasheet itself.
Does the TÜV certificate mean that the controller can be used as part of a SIL3 safety-related system? If so, why is this not mentioned directly in the datasheet? Also, what exactly is covered by the controller's SIL3 certification, and what additional requirements would I need to fulfil at the system level to achieve SIL3?
-
Do we need two controllers for SIL3?
My understanding is that for SIL3 applications, two controllers may be used with the same software/code and their outputs are compared or monitored. If there is a mismatch, a fault is detected and the system goes into a safe state.
If this architecture is required, do both controllers need to be programmed separately? Or is there any mechanism by which programming one controller automatically programs the other?
Also, is there any specific procedure for programming the Hercules/TMS570 controllers, or can they be programmed in the same way as other TI controllers using the normal JTAG/debug/programming interface?
-
Software development and programming approach
I understand that I can use HALCoGen to generate the initial configuration/code and then develop the application in Code Composer Studio (CCS).
However, I would like to understand if there are any specific programming practices that need to be followed for a SIL3 application using the TMS570. For example:
-
Coding rules or restrictions
-
Functions or programming practices that should be avoided
-
How faults and diagnostic checks should be handled
-
Use of watchdogs, ECC, CPU self-tests, etc.
-
Whether there are any specific requirements for memory, interrupts, communication, or peripheral handling
-
Any recommended coding standard such as MISRA-C
-
How the software should be structured so that it can eventually go through SIL3 verification/assessment
Basically, I would like to understand the difference between simply developing an application on the TMS570 and developing it in a way that can actually be taken through a SIL3 certification process.
-
Development board
For the development phase, I am planning to order the LAUNCHXL-TMS57004.
Is this development board suitable for getting started with the TMS570/Hercules family and developing the type of application I have in mind? Are there any major limitations of this board compared with the TMS570LS0332 that I should be aware of?
If there are any other development boards, tools, application notes, safety manuals, or example projects that you would recommend for someone starting a SIL3 project with the TMS570LS0332, please let me know.
Thanks in advance for your help.