本帖最后由 Hirain1234 于 2021-5-25 10:42 编辑
Hightec成立于1982年,是商业开源编译器供应商,旨在为嵌入式软件开发提供可靠和安全的工具。Hightec编译器可移植性较强,在软件正式发布之前,用户可使用支持其芯片的新版本编译器进行开发工作。PXROS-HR作为经过认证的微内核实时操作系统,为用户提供高级别的数据保护,保证软件功能安全以及健壮性。
Hightec编译器
Hightec在此领域有30年的经验,拥有先进的多核多架构支持以及优化技术。
• 主要功能
HighTec编译器通过先进的优化技术,以很小的空间占用成本,生成运行速度快的代码。编译器可以通过其命令行界面进行批处理,也可以在IDE中使用,例如HighTec基于Eclipse的安全多核平台。HighTec编译器拥有比同类产品更快的构建系统,支持并行编译过程。
编译器包括: ♦ 特定语言的前端 ♦ 全局优化器 ♦ 特定目标的优化器 ♦ 商业库(未开源)
HighTec C/C++编译器完全符合EABI标准,符合ANSI/ISO C和C++编译器标准,包括C89,C99。用户可以根据自身具体要求进行选取,如编程语言,目标体系结构,根据速度或代码大小优化性能级别以及调试级别。
• 多架构
HighTec编译器支持各种嵌入式架构,允许从一个架构迁移到另一个架构。针对不同架构,使用同一个开发工具可缩短学习曲线,提高生产力并缩短产品上市时间。支持以下体系结构: ♦ TriCore/AURIX ♦ Power Architecture ♦ RH850 ♦ ARM
• 先进的多核支持
在汽车行业的多核应用中,使用所谓的公共链接。这意味着分布在不同核心上的应用程序可以共享数据或代码。
大多数汽车应用程序都包含起初并未设计用于多核环境的遗留代码。因此,将应用程序从单核迁移到多核而不需要更改源代码显得尤为重要。为了满足这一需求,HighTec提供了一种被称作高级多核支持的方法,可以轻松地将链接器级别的代码和数据映射到不同的核,而无需更改源代码。此功能使客户轻松实现现有代码的重用。
不同核之间的数据交换由隐藏和可见的概念来处理,该概念在链接器级别指定核之间的用户定义接口。必须明确指定数据和代码,以便除了它们所属的内核之外的任何其他内核都可见。链接器能够链接不同核心架构的目标文件,并生成一个结果输出ELF文件。这种多核功能由调试器供应商支持,如iSYSTEM,Lauterbach和PLS。
• ISO 26262支持
我们为客户提供编译器资格认证工具包(QKit),可以通过简单方便的方式执行标准的合规认证。QKit包含一个与Validas AG合作开发的资格支持工具(QST)和一个自动化测试框架。QST包括编译器工具链的详细模型,并根据客户的用例生成资格认证所需的测试和文档,进行分支覆盖分析以满足安全标准ISO26262。工具通常使用源代码的检测来实现此目的。但是,检测会更改应用程序的二进制代码,因此分析的应用程序和最终应用程序会有所不同。HighTec提供了一种执行分支覆盖分析的替代方法,而不是检测HighTec编译器的源代码:在应用程序的单独调试部分中输出应用程序的控制流,此信息可与调试器一起使用,以执行最终应用程序的分支覆盖分析。
另一个重要的安全相关措施是构建后检查,错误检测措施(例如内存布局的验证和最终ELF文件的一致性)对于安全相关的应用程序至关重要。为此,HighTec提供以下扩展: ♦ 详细的Mapfile ♦ ELF文件的转储器
生成的数据以标准XML格式输出,还包含有关代码和数据核心分配的信息。核间的通信被列在映射文件的交叉引用表中。用户根据这些信息可以编写脚本来验证输出和应用程序的一致性。
实时操作系统
PXROS-HR是一个功能强大的认证实时操作系统,可以应对未来多核软件开发的复杂性。
• 实时微内核操作系统
PXROS-HR实现了完全透明中断的概念。微内核既没有中断锁定也没有延迟,因此可以通过中断服务程序随时中断。
使用PXROS-HR,中断服务程序完全由应用程序控制。它可以使用OS服务的一个子集,例如,通过事件将信号发送到任务。OS服务不是在中断级别执行,而是在从中断级别返回到任务级别时执行。
• 有内存保护机制的任务间通信
严格封装所有组件是PXROS-HR中重要的安全原则。操作系统使用硬件内存保护单元(MPU)在运行时保护所有应用程序对象,包括任务间通信。PXROS-HR管理任务的MPU,在任务的切换期间对相应的MPU寄存器重新编程。
PXROS-HR尤其关注任务间通信的实现,因为它在多核应用中具有高度相关性。我们解决方案主要针对的是: ♦ 受内存保护的通信 ♦ 避免共享内存 ♦ 通信对象作为引用传递 ♦ 保护外围设备访问
资格认证套件
HighTec公司通过提供适当的错误检测,支持用户对编译器工具链进行资格认证。此外,HighTec与Validas AG合作开发了一套资格套件(QKit),可自动完成相关认证过程。
生成的安全文件: ♦ 工具分类报告 ♦ 工具安全手册(减轻潜在错误的措施) ♦ 工具资格认证计划(验证目标,标准要求) ♦ 工具资格报告(已使用的用例和功能,测试结果工具置信度)
下图说明了认证过程的基本工作流程:
与基于默认工具设置和非相关测试套件的标准安全手册相反,HighTec独特的方法为用户提供了一套定制的安全文档。这些安全文档基于用户的特定和优化的工具设置,这些设置与需要认证的应用相关。Qkit在多种体系架构中都可用,例如TriCore/Aurix, ARM以及Power Architecture。
|