理论教育 汽车嵌入式系统手册:模块化软件组件研发

汽车嵌入式系统手册:模块化软件组件研发

时间:2023-08-26 理论教育 版权反馈
【摘要】:使用“功能架构”,我们表示了ECU模块(软件)的定义和分配。这个流程需要模块化软件组件摆脱对硬件部件的依赖并独立于硬件部件。模块化的软件组件根据可移动性和重用性的定义,也能够在这个特殊流程中实现复用。尽管组件的分区不仅是相对于可重用性进行的,但它们还是被称为“标准软件”。另一方面,基于推荐软件层的功能软件层可以在ECU、微控制器和模型上重复使用。表8.1 与复用有关的软件分类

汽车嵌入式系统手册:模块化软件组件研发

图8.5显示了开发一个新模型的完整电子系统的流程,以及阶段之间的循环依赖。使用“功能架构”,我们表示了ECU模块(软件)的定义和分配。此分配导致的通信关系定义了信号和通过车载总线系统交换的消息(通信的定义)。“硬件系统”由带中央微控制器的ECU组成,它们需要有足够的计算能力、芯片上的外设(例如,通信控制器、连接传感器和执行器的接口)和更多的电子元器件。

978-7-111-52251-5-Part03-21.jpg

图8.5 汽车电子系统产品开发流程

由此,三个主要的流程步骤必须按迭代的方式进行,这是因为每个步骤取决于其他步骤。因此,给ECU分配软件模块必须在定义硬件系统之后进行。然而,这种分配依赖于ECU的内存和处理能力。同样重要的是总线系统的带宽限制问题,它是否允许在各个软件模块之间传输必要的信号。

这个流程需要模块化软件组件摆脱对硬件部件的依赖并独立于硬件部件。模块化的软件组件根据可移动性和重用性的定义,也能够在这个特殊流程中实现复用。为了支持根据它们的可移动性和重用性进行的软件分类,下面介绍以下术语:“固件(指存储在存储器而非软件中的指令)”“基本软件”“适应软件”和“功能的软件”。

•固件是ECU软件中依赖于硬件的部件。案例有:通信驱动器、用于模拟-数字转换器的驱动器,或脉冲宽度调制器的驱动器。

•基础软件是软件,它独立于应用软件和硬件。例如应用软件模块和通信驱动器之间的通信交互层。它们并非依赖于硬件,因为它们采用了通信驱动器的应用程序可编程接口(API)(见8.3.4节)。

两类基本软件和固件今天已被重用。尽管组件的分区不仅是相对于可重用性进行的(参见8.3.4节),但它们还是被称为“标准软件”。分解标准软件的另一个原因,是通过移除标准软件中不需要的组件以满足不同类别的电子控制单元(ECU)的需求的可能性。

我们定义剩余的两种类型软件如下:

•适应软件是软件特定的应用程序部分,它使功能软件适应汽车模型,并建立从功能软件到固件和基本软件的连接。(www.daowen.com)

•功能软件是软件的特定功能部分,它独立于所使用的汽车模型。

使用这些新术语,组件的类型可以根据可移动性和重用的类型来区分开来。考虑这个抽象模型,三种复用可以定义为:

•重复使用不同的ECU。

•重复使用不同的微控制器平台。

•重复使用不同的模型范围。

软件类型的分类及相应的复用类型见表8.1。这种分类指导了模块化如何执行以获得最大的可移动性和再利用的效果。例如,一个通信驱动程序(固件)可以在不同的ECU上和不同的模型范围内重复使用(假设它们使用同一个家族的微控制器),但不在不同的微控制器平台上使用,这是因为通常的通信控制器在不同的微控制器上是相当不同的。另一方面,基于推荐软件层的功能软件层可以在ECU、微控制器和模型上重复使用。

表8.1 与复用有关的软件分类

978-7-111-52251-5-Part03-22.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈