PowerPC在车辆显控系统中的应用
图3 I2C读流程 图4 I2C写流程
车辆显控系统中存在多个PCI设备,鉴于PowerPC较强的处理能力和实时操作系统的实时多任务处理功能,使得PowerPC控制主板成为"主设备",负责设备间的协调,其他设备作为"从设备"。由"主设备"根据"从设备"的设备识别号和供应商识别号对其进行配置,根据地址空间的存储映射访问方式进行数据通信。PCI设备间的通信流程如图6所示。
图5 亮度、对比度设置流程 图6 PCI设备间通信流程
3.3 应用程序与设备驱动的连接
应用程序是通过调用设备驱动程序来访问设备的。调用设备驱动有3种方式:直接调用、通过操作系统内核调用和通过操作系统的扩展模块调用。直接调用方式可以使应用程序高效地访问设备,但移植性差,且用户需自行管理设备;通过内核调用,由操作系统管理,移植性好,但增加了系统开销;通过扩展模块调用的优缺点与通过内核调用类似。
车辆显控系统是一个复杂的实时操作系统,需要良好的可移植性,且存在扩展模块,因此应用程序同时使用通过内核和扩展模块两种方式来调用设备驱动程序。通过内核调用通用设备驱动程序,通过扩展模块调用特殊驱动程序。
3.4 应用程序与设备的直接连接
针对一些特殊设备的控制要求,PowerPC控制主板对其采用直接控制的方式,而不通过设备驱动。
I2C总线是一种两线式串行总线,主要应用于微处理器外围芯片的扩展。它只需两根线--串行数据线和串行时钟线,即可实现微处理器与总线上具有I2C总线接口的设备进行数据交换。
I2C总线设备以其简单性和有效性被广泛使用。车辆显控系统中用于模拟视频显示的视频解码器CCX25836就是其中之一。CCX25836的寄存器需要用I2C总线进行配置,系统设计采用FPGA构建了硬件I2C电气结构,在PowerPC控制主板上用软件模拟视频解码器所需的I2C读写流程(详见图3~4),设置其寄存器,从而实现视频通道的切换、亮度对比度的调整等视频显示功能,如图5所示。
结语
PowerPC MPC8548E 微处理器以其丰富的接口、较强的运算能力、较快的处理速度、稳定性和易扩展性受到嵌入式系统开发者们的青睐。车辆显控系统的主板采用此芯片为核心处理器,配备必要的外围接口,并采用VxWorks作为运行在其上的操作系统,使其具备了实时处理多任务的能力。通过扩展PCI设备,实现了显控系统设备间、显示系统与其他系统设备间的数据交换和控制。