嵌入式系统的软件和硬件通常紧密相连,错综复杂。开发人员面对有限资源和紧迫截止日期等限制,还要确保无缝集成。这需要进行多轮器件测试。
这种方法对于快速的产品开发生命周期并不适用,也不符合以服务为导向的商业模式的要求。汽车制造商正在逐步接受软件定义汽车(SDV)的概念,而不是仅依靠维修期间进行的关键或有限的固件更新。SDV的目标是在其整个生命周期内持续发展和增强。
实现SDV必须采取平台方法。通过将硬件和软件解耦,应用程序和架构设计变得更加灵活,并且可以随着时间的推移添加其他功能。解耦还有助于在不同车型中增加软件复用,减少平台之间的适应成本。车主还将享受到更高的安全性和可靠性,同时降低能耗。
这种方法将彻底颠覆汽车软件开发。我们将看到行业“向左移动”,即使在原型硬件未量产的情况下,软件也能在产品开发生命周期的早期完成。同时,该行业还可以“向右延伸”,在车辆售出后继续进行更新。这让汽车制造商能够通过基于云的服务寻找新的收入源,让不同车型的车主都可以享用他们的服务,并通过无线(OTA)更新在汽车的整个生命周期内添加功能。
“向左移动,向右延伸”框图
在持续集成和部署的基础上构建
持续集成和持续部署(或近持续部署)概念在企业领域已经成功应用多年。“向左移动”和“向右延伸”是合乎逻辑的下一步。如果开发团队选择了正确的软件开发方法,这两者的要求在很大程度上是一致的。
SDV与其他嵌入式系统和支持技术没有本质的区别。例如,虚拟化和软件容器可以隔离软件模块,并将其从底层硬件中抽象出来。这种方法的优势是能更加轻松地与多项增值服务的云流程集成。这类服务通常将核心汽车功能与人工智能(AI)和基于云的分析相结合。
嵌入式系统的核心变化在于不再需要在物理硬件上进行大量的原型制作,或者至少尽量减少相关工作,以确保对时序和硬件行为的假设符合实际情况。然而,嵌入式系统确实需要一个额外的组件。