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.

[参考译文] TMS320F28384D:通过 IEC 61508 SIL-3认证的编译器

Guru**** 2382630 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1258867/tms320f28384d-the-compiler-for-iec-61508-sil-3-certification

器件型号:TMS320F28384D

您好!

客户应该使用哪些编译器工具来进行 C28x 和 CM4的 IEC 61508 SIL-3认证?

请建议、感谢您的帮助。

此致、

卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们为我们的 TI 编译器提供编译器资质审核套件: https://www.ti.com/tool/SAFETI_CQKIT

    惠特尼

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Whitney、

    我有以下问题需要您的意见、

    1. 从支持的产品和硬件列表中、我没有看到 F2838x 器件。  该套件是否可在 F28384D 上用于 IEC 61508 SIL-3认证?
    2. 我在 SAFETI_CQKIT 上看到的不是所有编译器版本、例如我们没有 ARM CGT v20.2.3 LTS 和 v20.3.4 LTS。 您知道原因吗?
    3. 由于我们有 TUV Nord 的评估报告,您知道为什么我们不获得编译器认证吗?

    请告知、谢谢。

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    从支持的产品和硬件列表中,我看不到 F2838x 设备。

    这是一个代表性列表、而不是 C2000编译器支持的所有器件的完整列表。

    此套件能否在 F28384D 上用于 IEC 61508 SIL-3认证?

    我在 SAFETI_CQKIT 上看到的并非所有编译器版本,例如我们没有 ARM CGT v20.2.3 LTS 和 v20.3.4 LTS。 您知道原因吗?

    我不知道为什么一些版本20.2.x.LTS 版本没有 cqkit。  此问题表示您可以选择使用任何版本20.2.x.LTS 版本。  在这种情况下、最佳选择是版本20.2.7.LTS。  因为、正如 编译器版本号及其含义一文中所述、它包含了最多的错误修复。  并且我们为此提供了可用的 cqkit。

    由于我们有北方紫外线评估报告,您知道为什么我们不获得编译器认证吗?

    没有 TI 编译器经过认证。  相反、我们提供安全编译器资质审核套件、因此您可以验证编译器的使用情况。

    谢谢。此致、

    -乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    George

    您是说 v20x 的 SAFETI_CQKIT 可在所有版本的 v20.x 编译器上使用、例如 v20.2.2 LTS、即使该版本也未在网站上列出吗?

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您的意思是 v20x 的 SAFETI_CQKIT 可以在 v20.x 编译器的所有版本上使用[/报价]

    否。  您需要使用与编译器版本匹配的 cqkit 变体。  在本特定示例中、这意味着您不能使用编译器版本20.2.2.2.LTS、20.2.3.LTS 或20.2.4.LTS。  但您可以使用其他任意文件、包括最新的版本20.2.7.LTS。

    谢谢。此致、

    -乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、
    编译器 QKIT 对于所有版本都有一个安装程序、但已安装的 QKIT 仅包含初始版本的验证结果(例如:20.2.0.LTS)。  
    对于未来的补丁版本、请转到该特定版本的 QKIT 下载页面以下载该特定补丁版本的验证结果。
    否则、QKIT 中的所有其他文档都 适用于该 LTS 流的任何发布版本。 仅验证结果特定于特定的发行版本
    谢谢
    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg:

    C2000 CGT v20.2.2.LTS 未在 QKIT 下载页面上列出、因此我们没有此编译器版本的验证结果。  这是否意味着 QKIT 不能应用于 v20.2.2.LTS?

    我之所以提出这个问题、是因为我的客户使用了 v20.2.2.LTS 进行开发、他希望不要更改编译器版本、并使用 QKIT 进行 IEC 61508 SIL-3认证。

    请建议、感谢您的帮助。

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、  

    我明白了丢失20.2.2.LTS QKIT 下载页面的含义。

    是的、很遗憾、 对于20.2.x.LTS 版本、我们仅具有用于20.2.1.LTS、20.2.5.LTS 和20.2.7.LTS 的 QKIT。

    如果他们只需要符合 ASIL-B 或更低版本、则不需要 QKIT 覆盖范围检查、他们只需要20.2.2.2.LTS 的验证报告、但是 SIL3需要 QKIT 覆盖范围检查、且检测的编译器不可用于20.2.2.LTS  

    请建议客户升级到20.2.5.LTS、该版本具有可用的验证报告以及  应用 SIL3级别的 QKIT 所需的检测编译器。  

    从20.2.2.2.LTS 更改为20.2.5.LTS 的唯一更改是漏洞修复、可使用以下 README 文件来查看这些漏洞。 修补程序版本上没有主要的功能更改。
    https://software-dl.ti.com/codegen/esd/cgt_public_sw/C2000/20.2.3.LTS/README.html
    https://software-dl.ti.com/codegen/esd/cgt_public_sw/C2000/20.2.4.LTS/README.html
    https://software-dl.ti.com/codegen/esd/cgt_public_sw/C2000/20.2.5.LTS/README.html

    此致
    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg:

    您是说20.2.2.2.LTS 符合 SIL-2、不需要 QKIT 覆盖范围检查且我的客户只需要20.2.2.2.LTS 的验证报告吗?

    如果是这种情况且 IEC 61508 SIL-2可接受、那么我的客户可以在哪里找到适用于 C28x 和 CM4的20.2.2.2.LTS 的验证报告?

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、
    很抱歉耽误你的时间。
    QKIT 不需要覆盖检查的唯一级别是 ISO 26262 ASIL-A/B。  
    ASIL-C/D 和所有 SIL 级别都需要进行覆盖范围检查。
    您的客户需要具有支持覆盖范围检查功能的 QKIT 的编译器版本。
    格雷戈   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg、您好!

    我的客户使用 v20.2.2.LTS 进行开发、并且这些产品正在量产、这正是我的客户希望不更改编译器版本的原因。

    认证单元提到、如果我的客户不想更改 QKIT 页面上未列出的编译器版本、解决这个问题的方法是 TI 提供不同编译器版本之间的安全评估报告、 例如、v20.2.1.LTS 和 v20.2.2.LTS 之间差异的评估报告。

    我们是否可以提供此类安全评估报告?

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、我们将生成20.2.0.LTS 经测试的二进制文件并生成验证报告和上载。 有什么时间表? 这需要几天时间。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg:

    很棒、我们会提供验证报告、我会离线联系您。 感谢您的支持。

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    已检测的二进制文件(用于 QKIT 覆盖范围检查)和验证报告现在应适用于20.2.2.LTS:
      https://www.ti.com/tool/download/C2000_CLA_SAFETI_CQKIT_RV/20.2.2.LTS
      https://www.ti.com/tool/download/ARM-CQKIT/20.2.2.LTS

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg:

    您提到检测的二进制文件用于 QKIT 覆盖范围检查、我们在哪里可以找到它以及如何使用它?

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、

    它们需要应用 QKIT。 即下载/安装、然后使用说明应用 QKIT。

    运行 QKIT 覆盖检查的指令位于上述 QKIT 下载页面上链接的 coverage_testing_instructions.pdf 文件中。

    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg:

    在 TSM.docm (在 Templates 文件夹中)的第3章中、我们说:

    3使用特定准则
    在应用 TI C/C++编译器工具期间、可能会出现一些已知错误、有些是在发布工具之前已知的、有些是在创建本工具安全手册(上次更新)之前发现的、甚至是最近发现的一些错误。
    对于这些错误,用户必须确定并采取具有避免或检测该错误的高可能性的缓解措施。

    请客户对缓解措施做些什么?

    此致、

    卢克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg、您好!

    我是 Luke 作为您的客户提及的 QKIT 用户

    感谢您和 Luke 的支持。

    现在、我将使用 QKIT 来对编译器进行资格鉴定、

    根据模板文件 TQP, TQR,在"4.5验证"中有一个过程我需要做

    看起来我需要编译我的安全程序、生成一个覆盖率文件并将其发送给 TI

    我能知道此阶段需要花费的时间、以便我可以处理项目时间表 以满足认证要求吗?

    Br

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Luke、

    对于许多已知错误、缓解就像确保您不使用 受错误影响的特定编译器功能一样简单。

    或者、如果某个错误涉及特定的汇编指令、则可以通过生成汇编文件(-k 选项)并对特定指令的实例执行 grep 操作来缓解该问题。

    是否存在令人担忧的特定错误?

    此致、
    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chungwen,

    覆盖率检查通常需要1到2天、但出于规划目的、检查最多需要一周。

    此外、如果您的日程安排比较紧、我建议您在开发过程中尽早提交覆盖结果。 我们将 生成报告、然后查看是否有需要缓解的问题。 然后、一个月后的最终覆盖率检查应该不是一个问题。

    此致、
    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Greg、您好!

    感谢您的回答

    我仍然有一些问题。

    1. 我的软件项目包括安全程序和非安全程序

    我已经完成了安全器件和非安全器件之间的去耦措施。

    在此覆盖检查中、是否只能生成安全程序部分而不是整个项目的结果?

    2.要设置环境变量 COVFILELIST,我看到了命令行和 CCS 两章

    我应该使用这两者、或者选择一种方法来实现这两种目的?

    3.在用户手册中设置 COVFILELIST 的命令是:

    设置
    COVFILELIST=:52.11\ti_cgt_arm_15.12.3.sts\bin/armcl.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armA
    cpia.cov、C:\ti_cgt_arm_15.12.3.sts\bin/armopt.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armcg。
    COV、C:\ti_cgt_arm_15.12.3.sts\bin\armasm.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armlnk.cov、
    C:\ti_cgt_arm_15.12.3.sts\bin\armilk.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armhex.cov、C:\t
    I_CGT_ARM_15.12.3.sts\bin\armabs.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armembed.cov、C:\ti_
    CGT_ARM_15.12.3.LTS \bin\armlnk.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armacp.cov、C:\ti_cgt_
    arm_15.12.3.sts\bin\armcbe.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armclist.cov、C:\ti_cgt_ar
    m_15.12.3.sts\bin\armnm.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armsdp.cov、C:\ti_cgt_arm_15。
    12.3.sts\bin\armcbeia.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armdem.cov、C:\ti_cgt_arm_15.12
    .3.sts\bin\armocs.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armstrip.cov、C:\ti_cgt_arm_15.12.3
    .sts\bin/armar.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armdis.cov、C:\ti_cgt_arm_15.12.3.sts\
    bin\armlibinfo.cov、C:\ti_cgt_arm_15.12.3.sts\bin\armofd.cov、C:\ti_cgt_arm_15.12.3.sts\
    bin\armxref.cov

    是否应该根据 CCS 安装位置调整命令? (我的 CCS 安装位置是  D:\ti\ccs1040\ccs)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请注意,由于当地假期和各种假期,回复可能会延迟至星期二。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chungwen,

    对于1、您需要在启用覆盖集合时编译单个"安全"文件。

    对于2、如果要在 CCS 中编译工程、请使用 CCS 设置。 如果要构建工程命令行、请使用 COVFILELIST。

    对于3、您是正确的、请为 您的*。cov 文件的位置更新 COVFILELIST

    您可以通过检查*。cov 文件上的时间戳来确认数据收集是否有效。 如果覆盖范围收集设置起作用、几个*。cov 文件应具有最近更新的时间戳。  

    此致、
    格雷戈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复。

    我们现在正在开发安全程序、并将在编码完成时执行这个过程。

    但是、如果我将来有安全计划的更新(EX:v1.0 -> v1.1)、我应该重新执行此过程吗?

    Br

    CWY

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Chungwen,

    如果您在最初应用 QKIT 时指定的内容发生变化、则必须重新应用 QKIT。 例如、以下任一操作都需要再次应用 QKIT: 更改影响代码生成的编译器选项(即 opt_level、更改编译器版本、更改 应用代码等)。

    此致、
    格雷戈