麦斯科技 · 2021年11月28日

安全不妥协:Arm为FuSa应用程序发布最新编译器

https://community.arm.com/arm-community-blogs/b/tools-software-ides-blog/posts/latest-compiler-for-fusa-applications

Ronan Synnott 2021年10月19日

功能安全。这两个词在我们行业的许多部门都非常流行。重型机械,包括汽车和运输,是FuSa(功能安全)应用的典型例子,用户的安全掌握在技术手中。FuSa也适用于可靠性至关重要的卫生保健等领域。

对于涉及功能安全的设备,通常有多个关键要求,尤其是在汽车行业加速实现自主运输时使用的设备。一些系统需要具备AI能力,并并行执行多个任务。因此,FuSa不以牺牲性能、系统成本和其他传统因素为代价是很重要的。

功能安全软件是具有FuSa要求的任何产品的基本组件。正是在这种背景下,我们自豪地宣布,Arm编译器嵌入式FuSa 6.16LTS现已上市。基于成熟的嵌入式应用Arm编译器,该工具链是为Arm系统开发更安全软件的长期解决方案。

完整的功能安全解决方案

Arm对FuSa的承诺跨越了许多领域。处理器和其他IP设计了lock-step执行等功能,以确保它们可用于具有最高SIL级别的应用程序。FuSa特定文档和软件测试库(STL)可用于确保您的完整设计经过适当测试并符合其用途。

嵌入式FuSa 6.16LTS的Arm编译器是这一策略的关键。工具链经TÜV SÜD认证,可用于符合下列安全标准的应用中,达到最高SIL水平。

屏幕截图 2021-11-28 223837.png

软件生态系统

Arm处于行业最大生态系统的中心,众多合作伙伴专注于提供功能安全开发解决方案。例如,ETA提供ASCET DEVELOPER,这是一个自动工具,用于生成符合MISRA C等行业标准的代码。然后,可以使用合格的Arm编译器构建此源代码。有关该协作的更多信息,请参见此处。

我们还处于汽车行业创新的前沿。Arm指导SOAFEE等计划,SOAFEE为实时汽车应用程序提供云本机架构。要了解更多关于SOAFEE的信息,我鼓励您阅读本文。

Arm FuSa RTS和认证C库中的软件组件对于实时应用程序至关重要。为了提高性能和兼容性,编译器将重新构建并重新认证这些文件。在本次网络研讨会上,我的同事与西门子、意法半导体和Absint的代表一起讨论了这些技术的使用。

面向现代开发人员的现代编译器

该编译器是从6.16版本的嵌入式Arm编译器中派生出来的。在上一个合格版本发布4年多之后,这个新编译器在处理器支持、性能和与FuSa空间相关的功能方面带来了改进。

支持最新的Arm IP

该编译器经鉴定可用于发布时可用的所有Armv7-A、Armv8-A、Armv7-R、Armv8-R、Armv6-M、Armv7-M和Armv8-M处理器。特别是,这意味着Arm安全就绪产品组合中列出的所有处理器都由FuSa认证的编译器支持。请注意,处理器支持取决于您拥有的产品许可证类型。

C/C++语言支持

C和C++应用程序支持线程本地存储(TLS),在访问全局数据时,有助于避免竞争条件。TLS可以与静态和动态链接模型一起使用,编译器完全支持C++ 14语言标准,并且它的使用也符合FUS应用程序的要求。这些功能用于许多安全关键软件堆栈,尤其是AUTOSAR,。

一流的class性能

使用旧版本Arm编译器的嵌入式FuSa 6.6LTS版本的现有项目应该在代码性能和代码大小方面有明显的改进。这是由于随着时间的推移已集成到编译器中的一般优化改进。基于较新IP的FuSa项目现在将能够利用安全合格编译器以前不支持的功能。例如,Cortex-M55项目现在可以利用氦指令(从Arm编译器Embedded 6.14开始支持)来加速ML和其他数学密集型应用程序。

通过安保确保安全

功能安全的一个关键方面是系统安全性和完整性,因此恶意应用程序不会损坏设备。启用TrustZone技术是连接设备的一个事实上的功能,所有这些功能都由编译器支持。与CMSIS专区结合使用,您可以根据需要轻松地将系统划分为安全区域。编译器支持生成仅执行的代码,消除了某些代码区域(另一个常见的攻击区域)中的文字池和分支表。

有关功能安全Arm编译器6.6和嵌入式FuSa 6.16LTS Arm编译器之间更改的详细摘要,请参阅提供的迁移和兼容性指南。

长期支持

编译器承诺提供长期支持(LTS)。该条款规定,Arm应自发布之日起多年内为编译器分支提供技术支持和维护。如果您需要延长承诺,可以联系Arm讨论您的具体需求。

现在可用

现有用户现在可以下载嵌入式FuSa 6.16LTS的Arm编译器。Arm成功工具包的许可证持有人以及Arm Development Studio Gold(2021.2及更高版本)和Platinum(2021.c及更高版本)版本以及Keil MDK Professional Edition(5.36及更高版本)的独立许可证将允许使用此编译器。如果您以前没有使用过编译器,并且想试用它,那么还可以使用一个评估包。

进一步信息:https://developer.arm.com/tools-and-software/embedded/arm-compiler/safety?_ga=2.29207868.1648606242.1638105677-1759771560.1612011439

推荐阅读
关注数
5845
内容数
525
定期发布Arm相关软件信息,微信公众号 ArmSWDevs,欢迎关注~
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息