自 1982 年以来,Green Hills Optimizing Compilers 通过生成最快、最小和最可靠的代码,引领了嵌入式行业。从汽车、卫星和飞机到电话、打印机和手术工具,数以亿计使用嵌入式电子产品的产品运行由 Green Hills 编译器生成的代码。
随着微处理器创新步伐的不断加快,应用程序开发人员知道他们可以依靠 Green Hills 编译器来释放硬件的全部潜力,并在下一代应用程序中实现最高性能和功能安全性。
Green Hills 编译器使用最先进的优化来最大限度地提高程序的性能,即使在严格的大小限制下也是如此。例如,我们的 CodeFactor™ 优化通过子例程调用和尾部合并删除冗余代码段,从而加快程序的执行速度并减小其大小。静态基础通过对数据项进行分组来显著减少加载地址操作的数量,从而提供相同的优势(更快的速度、更小的尺寸)。
我们的每一项优化——无论是我们自己的创新还是行业标准——都经过精心实施。延续三十年的卓越工程经验,我们煞费苦心地研究,然后根据数百个基准测试每一个。
谨慎的实现和尖端的技术意味着,与GNU和LLVM编译器相比,在大多数程序上,Green Hills编译器可以提高速度并减少至少20%的大小。
微调输出
虽然 Green Hills 编译器提供了出色的默认设置,但我们知道您的应用程序是独一无二的。您可以通过启用不同的优化组合以及基于每个项目或每个文件配置优化来微调编译器输出。
芯片供应商发布经过认证的
EEMBC
基准测试,以展示其处理器在各种实际应用中的性能。这些供应商选择使用 Green Hills Compilers 生成的乐谱,其发布次数是任何其他编译器的两倍以上。
为了达到最高水平的性能,Green Hills 提供定制性能调优,利用我们在嵌入式系统方面的专业知识,使您的程序运行得更快。我们甚至可以根据对您的应用的评估来开发定制优化。
例如,我们的编译器团队最近与 ARM 架构专家合作,添加了多项新的优化,使 Green Hills 编译器能够在 Cortex-R5 处理器上实现 1.01 EEMBC Automarks/MHz 等级的性能得分。这比以前的性能分数提高了 30%。
C++17、C++14、C++11 支持
Green Hills 编译器支持最新的 C++ 标准,这些标准提供了许多新的语言功能和标准库。其中包括
INTEGRITY 实时操作系统支持的标准化线程。
广泛的处理器支持
确保快速上市的关键取决于跟上最新目标硬件的可用性。我们频繁发布并与芯片供应商紧密联系,这意味着我们的编译器通常在新硬件上市之前就支持新硬件。
紧密集成
Green Hills 编译器是完整开发解决方案的一部分。我们的产品为整个软件开发、测试和维护周期提供所有工具和系统,所有这些都无缝集成,以节省您的时间。
与我们的 INTEGRITY RTOS 一起,MULTI IDE
还支持对选定的 Linux 版本进行编译和调试。为了直接在您的目标上进行开发,所有这些产品都可以与Green Hills Probe和SuperTrace Probe硬件调试设备无缝协作。
我们符合关键的行业标准,使您能够快速轻松地采用Green Hills编译器,它支持:
C
C++
嵌入式 C++
GNU C/C++ 扩展
行业认证
作为
MULTI 工具链的一部分,Green Hills 编译器已通过认证,符合最高级别的工具资格和 C/C++ 运行时认证:
IEC 61508:2010(工业)、EN 50128:2011(铁路)和 ISO 26262:2018(汽车)功能安全标准
TÜV NORD和exida颁发的证书
满足 SIL 4(安全完整性等级)和 ASIL D(汽车安全完整性等级)工具认证和 C/C++ 运行时认证要求,这是可达到的最高级别
在广泛的目标处理器上受支持
Green Hills 编译器可用于各种 32 位和 64 位处理器,包括:
支持的特定于处理器的扩展包括 AltiVec 和 SPE(用于 Power Architecture)、NEON(用于 AArch32 和 AArch64)以及 SSE(用于 Intel Architecture)。Green Hills 编译器可用于 Windows 和 Linux 主机。
防止新的错误
为了帮助您避免常见的编程错误,Green Hills 编译器提供了干净编码约定的自动执行。您可以强制执行 MISRA 2012 和 2004 指南等行业标准,也可以强制执行我们自己的一套准则:GHS 标准模式。GHS 标准模式基于我们成功部署软件的悠久历史,以及我们与客户的合作,这些客户已经实现了同样高水平的可靠性。我们在内部使用 GHS 标准模式来开发我们自己的工具。
自动查找错误
DoubleCheck,Green
Hills Software 的集成静态 分析器,允许您在运行程序之前识别编程错误,并发现在常规测试中可能永远不会出现的错误。与独立于编译器运行的传统静态分析工具不同,DoubleCheck内置于我们的编译器中,具有以下优势:
设置非常简单,您只需要打开一个开关
如果保持打开状态,它会自动随每个构建一起运行
检查的代码是正在编译的实际代码
运行时错误检查通过查找仅通过静态分析无法识别的错误来补充 DoubleCheck。特别是繁重的错误可能会在失败之前隐藏很长时间。通过运行时错误检查,当问题发生时,您会收到有关问题原因的警报。当您直接查看错误时,消除错误通常是微不足道的。
降低处理器成本
您并不总是需要更快的处理器来满足日益增长的性能要求。我们卓越的编译器优化可以进行调整,以充分利用您使用的任何芯片。如果您可以使用成本较低的处理器来满足相同的实时要求,您将节省多少钱?或者,如果您可以发布新产品,而不必生产新的硬件平台来运行它? 提高应用程序的性能不仅可以节省处理器本身的成本,而且低成本处理器以较低的时钟速率运行,并且需要更少的功率和冷却。更长的电池寿命使您的产品更好、更便宜。
降低内存成本
Green Hills Compiler 优化通过减小可执行文件的大小来降低内存成本。大多数程序相对于 GNU 编译器至少有 10% 的改进。
最大限度地节省成本
我们的成本降低专家团队可以帮助您在不牺牲功能的情况下降低内存和处理器要求。我们已将客户内存使用量减少了 30% 以上,并将性能提高了 300% 以上。
借助 Green HIlls 优化编译器,您可以通过调整我们的编译器优化来充分利用您的硬件,从而以更低的硬件成本满足实时要求。