微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 基于FPGA的汽车ECU设计充分符合AUTOSAR和ISO 26262标准

基于FPGA的汽车ECU设计充分符合AUTOSAR和ISO 26262标准

时间:04-21 来源:电子发烧友网 点击:

成和软件组件的重复使用。AUTOSAR 的主要目的是定义一个统一的 ECU 架构,让硬件与软件分离。这样 AUTOSAR 通过定义硬件无关的接口,可提高软件的重复使用。换句话说,如果按照 AUTOSAR 标准编写的软件组件,只要正确集成到符合 AUTOSAR 标准的运行环境中,就能够在任何厂商的微控制器上运行。

  这项功能给汽车制造商带来了更高的灵活性。由于 AUTOSAR 标准内在的即插即用特性,汽车制造商可以在整个汽车平台上以透明的方式更换不同供应商开发的相同软件模块的各个版本,且不会给汽车中其余功能的发挥造成负面效果。最终硬件和软件实现彼此高度独立。这种分离是通过标准软件的 API 将抽象层互联实现的。图 1 是 AUTOSAR 定义的功能层的分解图。

  
图1 从 MCU 到应用层的 AUTOSAR 分层模型

  底部以黑色表示的是硬件层或物理层,由 MCU 自身(即 CPU 和与其相连的部分标准外设)构成。微控制器之上是基础软件(BSW),分为三层:粉色的微控制器抽象层 (MCAL)、绿色的 ECU 抽象层 (ECUAL) 和复杂驱动程序、紫色的服务层(SRV)。这三层经组织形成了多个列或协议栈(存储器、通信、输入/输出等)。

  紧贴硬件组件的是微控制器抽象层。正如其名所示,该层是 MCU 的抽象。该层的目的是提供一个硬件独立的 API,负责处理微控制器中的硬件外设。微控制器抽象层的上一层是 ECU 抽象层,负责抽象 ECU 开发板上的其他智能器件,一般直接与MCU接触(例如,系统电压调节器、智能交换控制器、可配置通信收发器等)。接下来的第三层是服务层。该层基本具有硬件独立性,其作用是处理所需的不同类型的背景服务。例如网路服务,系统看门狗的 NVRAM 处理或管理。通过这三层,AUTOSAR 定义了一套基础软件功能。这套软件功能在特定的硬件平台下支持着汽车 ECU 各高级抽象层的所有功能。

  第四层是运行环境 (RTE),为应用软件提供通信服务。它由可从上面的 BSW 层和应用层 (APP)共同访问的一套信号(发送器/接收器端口)和服务(客户端和服务器端口)构成。该 RTE 从基础软件中抽象出应用,明确地勾勒出将通用的可交换软件代码 (APP))与特定的硬件相关代码 (BSW) 分离的软件协议栈架构。换句话说,RTE可将软件应用与硬件平台分离。因此运行在 RTE 上的所有软件模块都具有平台无关性。

  在 RTE 之上,通过应用层,软件架构方式从分层变为以组件为基础。功能主要封装在软件组件 (SWC) 中。因此,完成 AUTOSAR 软件组件接口的标准化是支持各项功能跨不同车辆平台的ECU实现可扩展性和可移植性的中心环节。除复杂驱动程序外,AUTOSAR 标准明确地规定了这些组件的 API 及特性。SWC 仅通过运行环境与其他模块(ECU 间或内部)通信。

  随着 ECU 不断集成越来越多的功能,FPGA 器件成为了单核或多核MCU 的明智替代。通过从总体上把握 AUTOSAR 的不同层次,可以预见设计人员将这种架构部署在可编程逻辑中所能带来的优势。下文将更深入地介绍我们的设计如何实现基于定制静态硬件(基于闪存或SRAM 的 FPGA 技术)的解决方案,然后将这种方法延伸为为一种运行时可重配置的硬件实现方案(基于 SRAM 的部分可重配置 FPGA)。

  基于 FPGA 静态硬件的 ECU 设计

  AUTOSAR 架构非常适合由 CPU、存储器和可编程逻辑组成的嵌入式系统。ECU 平台需要一个 CPU 或主机处理器来管理应用并处理分布在应用层的软件组件中的不同功能。同时,MCU 层和部分基础软件层可以在可编程逻辑结构中的硬件中综合。因此,除了能够实现与 CPU 相连的标准外设,其它定制外设和协处理器也能够在硬件中并存,并在软件中完全或部分地加以管理。

  另外从功能安全的角度来看,专用协处理器或内核处理器也非常适用,因为用它们实现功能可让硬件从源头避免干扰,即便要求冗余性,也能给系统设计带来高灵活性。另外,居于中间的 RTE 层可以在分布于 FPGA 中的 RAM 模块中,或者在嵌入在器件逻辑单元中的触发器中以及外部存储器中综合。而且,RTE 信号接口经简单设计就能够同时进行读写操作(通过单端口存储器)或限制架构仅进行读操作或者写操作(通过配有两个独立读写端口的单个双端口存储器),以防范干扰,比如 AUTOSAR 所定义的彼此对应的发送器和接收器软件端口。

  
图2 将 AUTOSAR ECU 架构移植到 FPGA 平台上

建议将基于 MCU 的 AUTOSAR ECU 架构移植到可扩展处理平台 (EPP) 或者 FPGA 器件上,并在各层中确保清晰的系统分区,如图 2 所示。位于 RTE 层以下的有操作系统 (OS)

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top