PowerPC在车辆显控系统中的应用

发布者:平和的心态最新更新时间:2011-06-27 来源: 单片机与嵌入式系统关键字:PowerPC  MPC8548E  VxWorks  BSP 手机看文章 扫描二维码
随时随地手机看文章

  车辆显控系统是对车辆工作状态信息进行显示、控制,并完成人机交互的系统。车辆显控系统需要在显示文字、图形和视频的同时响应按键操作,并对车辆控制系统进行操控。这就要求系统具有实时响应、并行处理多个任务的能力。本文在以PowerPC MPC8548E为处理器的控制主板上应用实时操作系统VxWorks,实现了实时响应系统操作、显示相应信息的功能。以此主板为核心控制主板的显控系统,具有高性能、高稳定性和良好的兼容性。

1 PowerPC MPC8548及其控制主板概述

  PowerPC MPC8548是Freescale公司开发的新一代PowerQUICC III系列的高性能处理器。其内部工作频率可达1.33 GHz,在该工作频率上处理性能可达3 065MIPS。一级缓存有指令缓存和数据缓存各32 KB,二级缓存为512 KB,支持DDR1和DDR2存储器控制器,支持PCI、PCI-X和PCIE接口,支持SRapid IO接口和4个GbE接口。MPC8548不仅拥有强大的数据处理能力,还具有很强的通信处理能力,可靠性高,抗恶劣环境能力好,特别适合对网络性能要求较高及有多个接口的场合。

  车辆显控系统的核心控制主板是以PowerPCMPC8548E为处理器的嵌入式系统。该系统通过扩展显示器、内存、Flash存储器以及其他接口控制电路,构成了高性能、高可靠性的核心控制主板。以此控制主板为硬件平台,移植嵌入式实时操作系统VxWorks,对接口设备驱动进行二次开发,继而以VxWorks为软件开发平台,开发应用程序,实现显示和控制任务。

2 PowerPC控制主板硬件设计

  如图1所示,PowerPC控制主板硬件系统由处理器、外围电路和外部接口设备组成。外围电路包括电源、晶振和复位电路;外部接口电路包括串口、网口、EL/LVDS液晶显示、16位PCI总线、USB接口、Flash、鼠标和键盘等。

a.JPG

3 PowerPC控制主板软件设计

  车辆显控系统是一个多任务的复杂的实时嵌入式系统,采用操作系统对所有软硬件资源进行分配、调度、控制和协调,尤其是协调并发活动,如任务调度、内存管理、同步机制、异常和中断处理、任务间通信等。WindRiver公司(现被Intel收购)的VxWorks是一个实时嵌入式操作系统。VxWorks操作系统已经广泛应用于航空、汽车等行业,鉴于VxWorks对PowerPC处理器体系结构的支持,使得应用PowerPC处理器的嵌入式系统大多以其作为操作系统。因此,车辆显控系统也采用VxWorks作为操作系统。

  嵌入式系统是根据实际要求对硬件资源进行配置和裁减而成的系统。由于嵌入式产品是软硬件的结合体,且随着产品的研制完成,软件就已固化在硬件环境中,因此,软硬件综合开发是嵌入式系统的一大特点,而软件设计是在紧密联系硬件的基础上完成的。

  PowerPC控制主板的软件设计遵循嵌入式软件的体系结构设计方法,分为如下两部分:

  ①特殊设备驱动的开发,通用设备驱动程序的集成,即板级支持包BSP的开发。

  ②应用程序的开发,即显控任务的实现。

  3.1 设备驱动开发

  由于本系统的硬件平台是根据实际需要设计的,故必须根据实际的接口对设备驱动进行开发。在VxWorks提供的通用设备驱动的架构上,结合每个具体设备的工作原理和功能,以数据流为中心,在掌握设备与CPU及外接设备的通信方式后,对具体设备的驱动进行逐一开发。设备驱动程序开发完成后,最终形成MPC8548E的板级支持包BSP。硬件设备程序的集成包括如下几个方面。

  (1)特殊设备驱动

  一些特殊设备的驱动程序不在VxWorks配备的标准设备清单中,因此需自行开发,例如PCI线驱动、DDR内存驱动和显示驱动等。

  (2)通用设备驱动

  通用设备的驱动程序可以直接应用VxWorks标准驱动,或在标准驱动的基础上稍作改动即可,例如鼠标、键盘、串口、以太网接口和USB接口等。

  3.2 应用程序开发

  首先将车辆显控系统要完成的任务分解为多个任务:按键查询、界面切换、数据显示、视频显示和参数存储。应用程序保证各任务按照规定的方式实时完成。PowerPC控制主板软件结构图如图2所示。

b.JPG

  按键查询:定时查询是否有键按下,如有,则向界面切换、数据显示、视频显示和参数存储发送消息,完成相应的任务。

  界面切换:切换到相应界面。

  数据显示:显示车辆控制系统在不同工作模式下的状态。

  视频显示:切换视频通道,调节图像的亮度、对比度,并进行相关操作。

  参数存储:根据指令保存参数,或等间隔地将参数保存到缓存。

  3.2.1 I2C接口控制的软件实现

  I2C总线是一种两线式串行总线,主要应用于微处理器外围芯片的扩展。它只需两根线——串行数据线和串行时钟线,即可实现微处理器与总线上具有I2C总线接口的设备进行数据交换。

  I2C总线设备以其简单性和有效性被广泛使用。车辆显控系统中用于模拟视频显示的视频解码器CCX25836就是其中之一。CCX25836的寄存器需要用I2C总线进行配置,系统设计采用FPGA构建了硬件I2C电气结构,在PowerPC控制主板上用软件模拟视频解码器所需的I2C读写流程,设置其寄存器,从而实现视频通道的切换、亮度和对比度的调整等视频显示功能。I2C读、写流程如图3、图4所示,通过I2C总线设置亮度、对比度的流程如图5所示。

c.JPGd.JPG

  3.2.2 通过PCI局部总线实现设备间通信

  PCI局部总线是微型计算机中处理器/存储器与外围控制部件、扩展卡之间的互联接口,PCI局部总线规范是互联机构的协议,也是电气和机械配置的规范。PCI局部总线具有总线主设备支持和自动配置功能,提供了3类地址空间,即存储器、I/O和配置地址空间。这些特点为总线上各设备间的通信奠定了基础。

  车辆显控系统中存在多个PCI设备,鉴于PowerPC较强的处理能力和实时操作系统的实时多任务处理功能,使得PowerPC控制主板成为“主设备”,负责设备间的协调,其他设备作为“从设备”。由“主设备”根据“从设备”的设备识别号和供应商识别号对其进行配置,根据地址空间的存储映射访问方式进行数据通信。PCI设备间的通信流程如图6所示。

  3.3 应用程序与设备驱动的连接

  应用程序是通过调用设备驱动程序来访问设备的。调用设备驱动有3种方式:直接调用、通过操作系统内核调用和通过操作系统的扩展模块调用。直接调用方式可以使应用程序高效地访问设备,但移植性差,且用户需自行管理设备;通过内核调用,由操作系统管理,移植性好,但增加了系统开销;通过扩展模块调用的优缺点与通过内核调用类似。

  车辆显控系统是一个复杂的实时操作系统,需要良好的可移植性,且存在扩展模块,因此应用程序同时使用通过内核和扩展模块两种方式来调用设备驱动程序。通过内核调用通用设备驱动程序,通过扩展模块调用特殊驱动程序。

  3.4 应用程序与设备的直接连接

  针对一些特殊设备的控制要求,PowerPC控制主板对其采用直接控制的方式,而不通过设备驱动。

  I2C总线是一种两线式串行总线,主要应用于微处理器外围芯片的扩展。它只需两根线——串行数据线和串行时钟线,即可实现微处理器与总线上具有I2C总线接口的设备进行数据交换。

  I2C总线设备以其简单性和有效性被广泛使用。车辆显控系统中用于模拟视频显示的视频解码器CCX25836就是其中之一。CCX25836的寄存器需要用I2C总线进行配置,系统设计采用FPGA构建了硬件I2C电气结构,在PowerPC控制主板上用软件模拟视频解码器所需的I2C读写流程(详见图3~4),设置其寄存器,从而实现视频通道的切换、亮度对比度的调整等视频显示功能,如图5所示。

结语

  PowerPC MPC8548E微处理器以其丰富的接口、较强的运算能力、较快的处理速度、稳定性和易扩展性受到嵌入式系统开发者们的青睐。车辆显控系统的主板采用此芯片为核心处理器,配备必要的外围接口,并采用VxWorks作为运行在其上的操作系统,使其具备了实时处理多任务的能力。通过扩展PCI设备,实现了显控系统设备间、显示系统与其他系统设备间的数据交换和控制。

关键字:PowerPC  MPC8548E  VxWorks  BSP 引用地址:PowerPC在车辆显控系统中的应用

上一篇:安森美半导体车载网络优化方案
下一篇:CSR定位与连接方案助力瑞萨电子汽车信息娱乐参考平台

推荐阅读最新更新时间:2024-11-14 18:09

[nrf52832][nrf52840][nrf52810][nrf52820][bsp_pwm] PWM配置和使用
PWM—脉宽调制 PWM模块可以在GPIO上产生脉宽调制信号。 该模块实现了一个上行或上下计数器,具有四个PWM通道,驱动分配的gpio。 三个PWM模块可以提供多达12个PWM通道与单独的频率控制组多达4个通道。 此外,内置的解码器和EasyDMA功能可以在没有CPU干预的情况下操纵PWM占空比。 任意占空比序列可从数据RAM中读取,并可链接以实现循环缓冲或重复进入复杂循环。 这里列出了一个PWM模块的主要特点: 固定的PWM基频与可编程时钟分频器 多达四个PWM通道,各自的极性和占空比值 沿PWM通道或中心对齐的脉冲 Data RAM中定义的多个占空比阵列(序列) 通过EasyDMA从内存直接自动和无故障更新占空比值
[单片机]
[nrf52832][nrf52840][nrf52810][nrf52820][<font color='red'>bsp</font>_pwm] PWM配置和使用
[单片机框架][bsp层][AT32F415][bsp_tim] tim定时器配置和使用
9 定时器(TIMER) 9.1 通用定时器(TMR2到TMR5) 9.1.1 TMRx简介 通用定时器是一个通过可编程预分频器驱动的 16 位自动装载计数器构成。它适用于多种场合,包括测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和 PWM) 。 使用定时器预分频器和 RCC 时钟控制器预分频器,脉冲长度和波形周期可以在几个微秒到几个毫秒间调整。 每个定时器都是完全独立的,没有互相共享任何资源。它们可以一起同步操作,参见 9.2.3.15 节。 9.1.2 TMRx主要功能 通用 TMRx(TMR2、TMR3、TMR4 和 TMR5)定时器功能包括: 16位向上、向下、向上/向下自动装载计数器 注意:
[单片机]
[单片机框架][<font color='red'>bsp</font>层][AT32F415][<font color='red'>bsp</font>_tim] tim定时器配置和使用
VxWorks共享看门狗定时机制的设计与实现
0 引言 VxWorks是目前应用最多的嵌入式实时操作系统之一,广泛应用于工业控制、医疗器械、通信、航空航天以及武器装备等领域。VxWorks是32位实时嵌入式操作系统,自20世纪80年代由风河公司推出以来,其良好的实时性、对多任务的支持、体积精简、可剪裁等优点得到众多公司、开发者及用户的喜爱。 在实时性要求高的应用系统中,定时器是经常被用到的重要器件。而对于VxWorks操作系统本身来说,并未提供一个通用、高效的定时器组件。文章所提出的共享看门狗定时机制就是针对这种情况实现的一种通用型定时器组件。 1 VxWorks定时的方法 1.1 使用taskDely函数 函数原型为:STATUS taskDelay(int tick
[嵌入式]
uCOS-II优先级任务调度在PowerPC上的移植和优化
μC/OS是Jean J.Labrosse开发的实时多任务内核,最初是为Motorola 8位处理器68HC11写的。在后来的相关著作中,作者将代码移植到了PC上,以便于更多的读者学习。μC/OSII继承了μC/OS的算法,有执行效率高、占用空间小、实时性强和可扩展性好等特点,被移植到几乎所有类型的CPU上,成为在嵌入式领域非常有影响力的RTOS。然而,由于该实时内核是为8位CPU设计的,对于那些具有优先级算法硬件指令的CPU,仅做移植是很不够的。 1 基于优先级的任务调度 一个基于优先级的实时多任务内核的任务调度机制需要实现下面三个核心的处理功能: ◆ 将任务置于就绪态; ◆ 将任务取消就绪态; ◆ 找出最高优先级的就绪态任务
[单片机]
uCOS-II优先级任务调度在<font color='red'>PowerPC</font>上的移植和优化
小广播
最新汽车电子文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved