软件是产品拥有优异功能性和安全性的重要因素

作者:Melexis 的 Steven Servaes

在硬件产品的设计中,软件通常是一种差异化因素,为 OEM 和终端用户带来关键性优势。此外,软件还能在产品使用寿命内升级产品性能、增加新功能或增加与新标准和协议的兼容性。

Embedded software is a vital part of any microcontroller-based hardware - Melexis

安全关键型应用

在汽车领域中,安全性是组件制造商、汽车制造商和消费者关注的重点。在保障车辆驾驶员、乘客和其他道路使用者人身安全方面,软件的重要性绝不亚于硬件。许多标准规定了软件开发人员必须严格遵守的流程,旨在确保汽车系统的安全性。

在本文中,Melexis 探讨软件如何与硬件协作,同时将汽车安全标准对设计流程的影响纳入考虑范围,针对内部流程提供一些见解,确保我们的软件和产品达到最高标准。

虽然许多公司起初似乎完全面向硬件发展,但软件在这个行业两大关键领域中发挥至关重要的作用:开发工具和硅基产品中随附的软件。嵌入式软件方面尤其重要,因为它涉及汽车等安全关键型应用。

卓越的设计灵活性

Automotive car interior - Melexis许多现代半导体产品的一项关键特性是为最终用户提供卓越的设计灵活性,实现量身定制的配置。为实现上述目标,许多产品都嵌入了专用微控制器。虽然这是硬件任务,由模拟前端执行,以捕获感测的信号,但也需要依靠软件将模拟信息转换为可供系统使用的可用数据。

此类数据可在内部应用于驱动连接的系统(例如泵或执行器),或者在处理后传送至通信总线,包括 LIN、SENT、PSI-5、SPI 或其他所有车辆常用总线。半导体产品通常外形小巧并且非常高效,因此所有 DSP 功能均由软件基于 16 位信号执行。

对于许多汽车功能,尤其是与安全息息相关的功能,实时操作至关重要,系统可能需要通过其做出关乎生命安全的决策。为实现上述要求,算法需要高度优化并主要使用 C 语言编写。通常情况下,这些算法存储在系统 ROM 中,但也可以将其存储在闪存中,从而增加灵活性或实现软件无线 (SOTA) 更新。

先进的软件诊断功能

Engineer at work - Melexis许多公司创建专属软件开发工具,确保完全满足业务需求并提供优质产品。然而,开发软件只是工作的一部分。与软件本身相同,重要的系统安全性也是系统运行的基础。因此,需要开发精密的软件诊断功能,确保在出错或发生故障时立即将系统恢复到安全状态。

众所周知,汽车属于非常严苛的环境,可能遇到冲击、振动、高温和电气噪声等不利因素,其中任何一种因素都会导致数字硬件出错。随后,软件中产生漏洞,这在现代的超紧凑型产品中尤为严重,因为软件在硅片中的运行空间十分有限。现代应用的执行速度极快,即使是数字处理器中一个微不足道的问题也会对软件产生重大影响。

随着车用电子元器件数量不断增加,嵌入式软件也越来越多。与硬件相同,如今因软件相关问题导致产品召回的可能性也在增加。为了尽量降低这种可能性,需要严格遵守软件设计方法。

国际通用的软件设计方法

国际通用的软件(和硬件)设计方法来源于两项重要标准:ISO26262 和 ASPICE-v3。上述两项标准规定了从概念阶段即须遵循的软件设计规范化方法。如果选择遵循 ISO26262 流程,将生成一整套文档(功能安全计划),确保执行所有不可或缺的流程和操作,开发出具有出色恢复能力和容错能力的软件包。

ISO26262 应定期更新,确保其范围中涵盖最新技术和应用。除此之外,Melexis 会定期审查并更新软件开发流程,确保反映出标准、新技术、应用或技术方面发生的任何变化。

高效且成效卓著的软件文档编制

得益于使用最新的工具和方法,软件开发不断进步,软件文档编制工作随之成为开发过程中非常重要的一部分。为了卓有成效地高效完成这项工作,Melexis 开发出一套软件文档编制流程。

使用通用版本控制系统和工作流程维护源代码和相关文档。所有文档均使用 reStructuredText 和 Sphinx 编写而成,其优点包括:首先,软件开发人员的费用开销相对较低,他们可以使用自己首选的编辑器,文档更易于维护,部分文档可以自动维护。此外,GitLab 针对文档和源代码实施同一种分支-提交-合并策略,可以轻松跟踪审查意见和历史记录。

除了本公司的内部开发项目,Melexis 还为多个开源项目做出了重要贡献

Melexis 还定制了 Sphinx 文档技术的功能集,以便将软件需求追溯到软件设计元素、元件测试和集成测试层级,确保整个项目的全面追溯能力。

除了本公司的内部开发项目,Melexis 也为多个开源项目做出了重要贡献。这种精神为 Melexis 在业内赢得了“公平竞争对手”的美誉。

灵活性和可配置性

嵌入式软件是所有基于微控制器的硬件的重要组成部分,Melexis 的产品尤为如此。Melexis 的许多产品均使用专有微控制器实现灵活性和可配置性。虽然各种标准(尤其是 ISO26262)中均有详细规定,但随着变化加快以及不断引入新技术和新应用,我们需要不断审查这些标准。

Melexis 的政策始终采用稳定成熟的最新软件技术和工具,开发出内部使用的定制工具和流程,保障设计流程清晰明了、快速高效并且全面细致,确保客户获得优质代码。在选购应用 Melexis 硬件和软件的车辆时,敬请客户放心,安全始终是我们整个设计和编码过程的主要考量因素。

深入了解 Melexis 为开源项目所做的努力