汽车电子控制器处理芯片及ECU板级抽象技术研究报告 - 图文(4)

2019-04-14 15:30

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

端口驱动模块:

很多端口和端口引脚是由端口驱动模块分配给各种功能的,比如

· 常规I/O · ADC · SPI · PWM

DIO驱动抽象了对微控制器硬件引脚的访问。此外,它还能够对这些引脚进行分组。 DIO驱动提供以下服务:

· 一个一个地修改端口或通道组的输出通道的等级。 · 一个一个地读取端口或通道组的输入和输出通道的等级。

DIO驱动中的所有读写服务必须是可重入的。理由是:这些DIO驱动可以被不同的上

层处理程序或驱动程序访问。这些上层模块可以并行的访问驱动。

1.2.2.5 PORT驱动

PORT(端口)驱动提供微控制所有端口的初始化。

该模块初始化微控制器的整个端口结构。很多端口和端口引脚可以被分配给不同的功能,比如:

· 通用I/O · ADC · SPI · SCI · PWM

由于这个原因,必须对这个端口结构进行总的配置和初始化。这些端口引脚的配置和使

用是依赖于微控制器和ECU的。

该模块应该提供用于初始化微控制器的整个端口结构的服务。很多端口和端口引脚可以被分配给各种不同的功能。由于这个原因,必须有该端口结构的全部配置和初始化。这些端

13

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

口引脚的配置和模式是依赖于微控制器和ECU的。

该端口驱动模块应该完成端口结构的全部配置和初始化,该端口结构是用在DIO驱动

模块中的。因此,DIO驱动工作再引脚和端口之上,由端口驱动对它进行配置。端口和端口引脚的配置顺序是由配置工具负责的。

端口驱动应该在使用DIO功能之前进行初始化。否则DIO驱动会产生未定义的行为。 端口访问的原子性:端口驱动应该通过使用原子指令或者利用OS的中断屏蔽功能来提

供对端口的原子访问。

1.2.3 存储器驱动

存储器驱动层主要包括内部EEPROM驱动、内部Flash驱动、RAM测试等内容。

1.2.3.1 EEPROM驱动

EEPROM驱动提供读、写、擦除EEPROM的服务。也提供了用于比较EEPROM中数据块和内存中数据块的服务。这些服务是异步的。有两类EEPROM驱动:

· 内部EEPROM驱动 · 外部EEPROM驱动

内部EEPROM驱动直接访问微控制器硬件,并且定位在微控制器抽象层。外部EEPROM驱动使用处理程序(handler)或驱动访问外部EEPROM设备。它定位在ECU抽象层。

两种类型的驱动的功能需求和功能范围都是相同的。所以API在语义上是相同的。

1.2.3.2 flash驱动

如果受到底层硬件的支持,闪存驱动提供读、写和擦除闪存的服务,以及设置写/擦除保护的配置接口。闪存驱动提供了一个内置加载器,以加载闪存存取代码到RAM中,并在需要的时候执行写/擦除操作。

14

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

在ECU应用模式下,闪存驱动只用于闪存EEPROM仿真模块写数据。在应用模式下并不将程序代码写到闪存中。这应该由启动模式处理,超出了AUTOSAR的范围。

有两类闪存驱动: · 内部闪存驱动 · 外部闪存驱动

内部闪存的驱动直接存取微控制器硬件,并且定位在微控制器抽象层。外部闪存通常通过微控制器数据/地址总线连接,然后闪存驱动使用总线的处理程序/驱动访问外部闪存设备。外部闪存设备的驱动定位在ECU抽象层。两种类型的驱动的功能需求和功能范围都是相同的。所以API在语义上是相同的。

1.2.3.3 RAM测试

RAM测试:负责RAM单元(包括用于寄存器的单元)的物理性诊断(非数据检测),不同的诊断方式需要预编译然后更据系统或用户需要实时运行。

1.2.4 微控制器驱动

微控制器驱动层主要包括看门狗驱动、通用定时器GPT驱动、微控制器单元MCU驱动等内容。

1.2.4.1 看门狗驱动

看门狗驱动:设定片内看门狗模式以及触发看门狗设备,触发程序由上层系统服务层的看门狗管理器模块进行调用。内部看门狗驱动控制MCU的内部看门狗计时器。它提供触发器功能和模式选择服务。

1.2.4.2 通用定时器GPT驱动

通用定时器GPT驱动:为定时服务程序提供定时中断。

15

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

GPT驱动允许产生单触发或持续的计时器通知。这个模块使用通用计时器的硬件计时通道,因此就为操作系统中或者其它基本软件模块(在这类模块中,OS警告服务有过多的开销)中的使用提供了精确的、短期的计时。

GPT驱动提供了用于启动和停止硬件计时模块中的功能计时实例(通道)的服务。它能够产生单个超时周期以及重复超时周期。如果必须调用一个通知,那么当所请求的超时周期过期时,用户就能够对它进行配置。可以在运行时启用或禁用通知。

不管是从上一个通知发生以来的相对时间消耗,还是到下一个通知之间的剩余时间,都可以进行查询。

图8 GPT时序

注意,GPT驱动仅产生时间基础,而不服务于时间计数器。这个功能是由另一个模块(ICU驱动)提供的。

GPT驱动可以用来唤醒ECU,不管预定义的超时周期是否过期。模式转换服务将GPT驱动在普通操作和睡眠模式之间进行转换。

该驱动不提供超时周期,这些超时周期超过了被时钟源、预定标器和计时寄存器所限制的最大值。用户必须对这个进行处理。

1.2.4.3 微控制器单元MCU驱动

微控制器单元MCU驱动负责微处理器的各项设定,包括复位,初始化,电源管理,唤醒,时钟设定等。

MCU驱动提供用于基本微控制器的初始化,下电,复位和其它MCAL软件模块需要的

16

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

微控制器特定功能的服务。初始化服务提供了灵活性,同时,除了启动代码之外,还提供了应用程序相关的MCU初始化。启动代码是完全特定于MCU的。MCU驱动直接访问微控制器硬件,它位于微控制器抽象层(MCAL)中。

MCU驱动的特征:

· 初始化MCU时钟,PLL,时钟预定标器和MCU时钟分布 · 初始化RAM部件 · 激活微控制器节电模式 · 激活微控制器复位

另外,还有提供一个服务来从硬件处获得复位的原因。

MCU驱动微时钟和RAM初始化提供MCU服务。在MCU配置集中,特定于MCU的

时钟(例如,PLL设置)和RAM(例如,段基地址和大小)设置必须被配置。

注意:外部设备驱动是属于ECU抽象层而非微控制器抽象层的,但内存映射型外部设备(如外部flash存储器)的驱动是个例外,因为可以直接通过微控制器访问它们。这些外部设备的驱动位于微控制器抽象层。

1.3 复杂驱动

17


汽车电子控制器处理芯片及ECU板级抽象技术研究报告 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:护理学基础名词解释及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: