求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code
会员   
客户专区 | 联系我们
1655 次浏览  4次
模型库 > 模型库
模型中心  

模型库
WebEA  
学习资料
产品购买
AUTOSAR_BSW的 UML模型库
作者:俎涛 (火龙果软件工程)
AUTOSAR_BSW的 UML模型库
作者:俎涛 (火龙果软件工程)
 
1. AUTOSAR简介
AUTOSAR定义了一个开放的汽车控制器(ECU)标准软件架构。AUTOSAR 层次框架把软件分为三层:基础层,中间层和应用层。如下图所示:
  • 应用层:面向用户的功能需求提供应用组件。
  • 中间层:RTE屏蔽掉底层驱动的差异,提供支持应用组件的服务和通信机制。
  • 基础层(BSW):封装各种驱动为基础服务。
  • 如下是AUTOSAR软件架构定义的组件策略和接口规范:
    基于AUTOSAR架构,可以让系统设计和软件的开发过程更易于分工协作,如下是AUTOSAR希望达到的工作流程:
    1. 整车企业定义系统架构,把系统划分为子系统和组件,定义子系统和应用组件的功能和接口。
    2. 平台厂家通过RTE规范提供VFS的实现,并把VFS通过配置对接到BSW。
    3. 底层技术厂家按照BSW的规范提供BSW。
    4. 应用功能开发商进行应用组件设计,然后把应用组件之间的通过RTE进行通信,快速的构建应用。
    AUTOSAR的软件架构内容丰富,为了让用户能够快速而全面的了解AUTOSAR 的基础框架,提供了AUTOSAR BSW的UML模型。如下是AUTOSAR的 BSW的UML模型目录:
    各个包简要说明如下:
    模型包 内容
    ReadMe AUTOSAR BSW的模型的简介。
    Software package BSW的各个层次的软件包,主要有:RTE、SL(Service Layer)、ECAL(ECU Abstract Layer)、MCAL(MCU Abstract Layer)、Hardware。
    Overall view 提供一些BSW的概览图,包括: 各种包的整体视图、全局依赖关系图、通信栈图、存储栈图等等。
    Interaction View 交互视图,采用UML顺序图描述BSW的各个层次的组件实现各种场景中对象的交互。
    Generic Elements 提供基础组件和接口的描述,这些主要是一些复用资源。
    Project Views 提供在项目中对各个软件包的综合应用的视图,用到什么描述什么,按需展示。
    下面就对每个AUTOSAR_BSW的模型框架进行详细说明:
    2.Software package
    软件包描述了AUTOSAR的BSW的主要内容,它的主要内容如下图所示:

    2.1 RTE
    RTE层的目标:使AUTOSAR软件组件独立于映射到特定的ECU。
    RTE是一个为应用软件(AUTOSAR软件组件和/或AUTOSAR传感器/执行器组件)提供通信服务的层。在RTE之上,软件体系结构风格从“分层”转变为“组件风格”。AUTOSAR软件组件通过RTE与其他组件(ECU内部和/或内部)和/或服务通信。
    RTE的定位:
  • RTE之下的层实现ECU特定的服务,
  • RTE面向上面提供完全独立于ECU的接口。
  • 2.2 SL (Service Layer)
    SL的目标:为应用提供基础服务和软件模块 。
    服务层是基础软件的最高层,它封装ECU硬件抽象层,为应用软件提供服务:
  • 操作系统的服务
  • 车辆网络通信和管理服务
  • 内存服务(NVRAM管理)
  • 诊断业务(UDS通信、错误内存、故障处理)
  • ECU状态管理
  • SL的定位:
  • 服务层之下:实现部分μC, ECU硬件相关的特定的功能
  • 服务层向上提供独立于μC和ECU硬件的接口。
  • 2.3 ECAL(ECU抽象层)
    ECUAL目标是:使更高的软件层独立于ECU硬件层。
    ECUAL提供与MCAL(单片机抽象层)的驱动程序进行接口。它还包含外部设备的驱动程序。
    它提供了一个API来访问外设和设备,不管它们的位置(μC内部/外部)和它们的连接μC(端口引脚\接口类型)
    ECUAL定位:
  • ECUAL之下:实现 和μC无关,而和ECU硬件相关的功能
  • ECUAL向上提供接口:和μC和ECU硬件无关,而和通信的信号类型相关。
  • 2.4 MCAL(Microcontroller Abstraction Layer)
    MCAL的目标:使更高的软件层独立于μC.
    MCAL是基本软件的最低软件层。它包含内部驱动程序,提供直接访问μC内部外设和内存映射μC外部设备的软件模块。
    MCAL定位:
  • MCAL之下:提供μC的相关的实现。
  • MCAL向上提供接口: 独立于μC的标准化接口。
  • 2.5 Complex Dev Drivers
    Complex Dev Drivers对于复杂设备提供统一的驱动接口,如下图所示:
    2.6 Hardware
    Complex Hardware包里面主要是常见的汽车电子硬件设备,如下图所示:
    3. Overall view
    这里提供一些概览图如下:
    3.1 Detailed Packages (细化的包)
    展示了BSW的包括了那些包,如下所示:
    3.2 Overall Dependencies(全局依赖)
    此图显示了所有层的组件之间的所有使用依赖关系。
    3.3 Communication stack(通信栈)
    描述了通信的各个层次的映射,包括:通信硬件、通信驱动、通信硬件抽象、通信服务层。示例了各个层次的核心组件、接口,以及各个层次的依赖关系。
    3.4 Can Stack
    描述了CAN的各个层次的映射,包括:通信硬件、通信驱动、通信硬件抽象、通信服务层。示例了各个层次的核心组件、接口,以及各个层次的依赖关系。
    3.5 Flex Ray Stack
    描述了Flex Ray的各个层次的映射,包括:通信硬件、通信驱动、通信硬件抽象、通信服务层。示例了各个层次的核心组件、接口,以及各个层次的依赖关系。
    3.6 Lin Stack
    描述了Lin 的各个层次的映射,包括:通信硬件、通信驱动、通信硬件抽象、通信服务层。示例了各个层次的核心组件、接口,以及各个层次的依赖关系。
    3.7 Memory Stack
    描述了内存的各个层次的映射,包括:memory硬件、memory驱动、memory硬件抽象、memory服务层。示例了各个层次的核心组件、接口,以及各个层次的依赖关系。
    4. Interaction view
    交互视图,这里面描述了Auto SAR BSW中的一些场景的对象交互,例如如下是 一个Application进行 系统调用 的顺序图
    5 .Generic Elements(基本元素)
    Generic Elements提供常见的基础组件,包括组件和对外提供的接口模型,如下图所示:
    6. Project Views
    项目视图提供对各个软件包的综合应用,本模型库提供了如下典型的项目应用视图:
    例如,如下是 CAN_LIN 的项目视图
     
    浏览:AUTOSAR_BSW的UML模型库  模型库  HTML页面
    如果希望进一步学习 AUTOSAR ,可以参考如下的资料。
  • 文章: AUTOSAR 建模和ARXML文件生成(基于EA)
  • 模型库: AUTOSAR 模型框架(基于EA)
  • 如果您希望了解更多信息:
  • 欢迎访问建模者频道 http://modeler.org.cn/
  • 也欢迎直接联系我们 zhgx@uml.net.cn ,010-62670969
  • 1655 次浏览 4 次