智能化全图形汽车仪表的硬件系统架构的制作方法

文档序号:3881347阅读:168来源:国知局

专利名称::智能化全图形汽车仪表的硬件系统架构的制作方法
技术领域
:本发明属于汽车电子仪表领域,具体涉及一种智能化全图形汽车仪表的硬件系统架构。
背景技术
:汽车的电子控制程度和信息化水平在不断的提高,同时各种车载设备及信息服务也都在不断增多。仪表系统作为传统的信息显示终端,有潜力胜任新趋势下显示大量复杂信息的新要求。升级传统仪表系统为新一代智能化全图形系统能够很好满足需求,并有传统机械或机电式仪表无法替代的优势。"智能化全图形汽车仪表"在自主研发的软硬件平台上,实现多功能的智能化全图形汽车仪表系统,将所有的车辆信息通过TFT液晶显示屏显示以替代现有的指针式仪表,TFT(ThinFilmTransistor)是指薄膜晶体管,即每个液晶像素点都是由集成在像素点后面的薄膜晶体管来驱动,从而可以做到高速度、高亮度、高对比度显示屏幕信息。具有以下9个方面的主要功能1.仪表系统核心系统,规格需根据具体车型设计,主要包涵传统仪表的所有功能。通过TFT液晶显示图形,满足高实时性响应,能够接收来自CAN总线和传感器的信号,CAN(ControllerAreaNetwork)为控制器局域网,是国际上应用最广泛的现场总线之一。2.车辆信息系统通过收集的信息进行车辆信息的诊断和分析,更加智能的监控车辆的性能和状况,并给予用户提示。3.车载摄像系统基于系统的液晶屏,实现车载摄像功能。支持多路摄像,最多3路,并具备防眩和夜视的功能,高端产品还可加入测距雷达。4.车辆行马史记录系统汽车黑匣子,基于仪表系统的硬件,功能满足国家汽车行驶记录仪的标准。5.导航信息系统实现筒明的导航功能。导航信息系统的显示限于局部区域,应不影响仪表系统的同时显示。6.车辆监控系统通过夕卜连全球定位系统GPS(GlobalPositioningSystem)模块和通讯模块,并通过监控中心,进行车辆防盗监控和远程控制。7.电^舌系统主要是通过蓝牙与手机进行通信,可进行免提电话服务。8.车载娱乐系统在车辆保证安全的同时,提供简单娱乐和游戏功能。9.辅助驾驶安全系统主要包括巡航驾驶信息、安全防撞信息和夜间行车安全系统。随着汽车的电子控制程度不断提高,汽车仪表的数字化、图形化也成为了未来汽车仪表的发展趋势。智能信息终端不仅以图形化的形式代替了传统的汽车仪表而且具有能提供大量、复杂的信息的优点,而且还具有高精度和高可靠性、一表多用的功能、外形设计美观、自由度高、满足小型、轻量化的要求、人性化的功能设计等特点,并且具有极强的可扩展性。因此智能信息终端成为现代汽车的发展新潮流,具有非常广阔的发展空间。同时高度集成的信息仪表也有更大的成本优势。目前传统仪表现状如下国内汽车仪表现状步进电动式汽车仪表,将是未来一段时间内汽车仪表的主导产品;采用平面电子显示技术的仪表正在逐步走向市场;采用TFT的图形化仪表市场完全空白;部分厂家和科研院所有意向研发类似产品。现有车型上的产品都是以传统机电式指针仪表为主,仍会出现机械或电气故障,影响测量的准确性和可靠性,其性能有待进一步提升;部分车型增加了灰度液晶辅助显示,但信息局限性大,功能有限且不具备可扩展性。查新记录数字图形化汽车仪表/申请人康^^>〃中国专利公开号1750048汽;仪表信息系统/李波,、武汉理工大学自i化学院〃电子质量.-2005,(1)带CAN通信的汽车智能仪表系统/申请人东风电动车辆股份有限公司〃中国专利申请号200320115454总线式汽车仪表总成(指针指示)/辽宁能发伟业汽车仪表有限公司//google.com电子式汽车组合仪表〃google.comNJ1020系列组合仪表、NJ1035系列组合仪表/南京汽车仪表厂//google.com汽车智能数字仪表的开发/纪常伟,北京工业大学环境与能源工程学院〃北京工业大学学报.-2006,(4)上述技术存在如下的相关问题现在液晶屏工作温度为-3085度,低温达不到汽车要求的-45度系统的稳定性上还略差于传统机械式仪表
发明内容本发明的目的为了克服现有技术存在的上述问题,而提供一种智能化全图形汽车仪表的硬件系统架构,本发明采用了高效、灵活的ARM+FPGA构架,其中ARM(AdvancedRISCMachine)是一种高性能的32位精简执令运算集微处理器,主要完成外部数据采集,整理,分析,存储等功能,FPGA(FieldProgrammableGateArray)即现场可编程门阵列,主要用于用户界面的显示。智能化全图形汽车仪表的硬件系统架构,由微处理器ARM+现场可编程门阵列FPGA组成,其中ARM用于数据采集及系统控制,FPGA用于;f见频处理及图形描画显示,其特征在于FPGA和ARM之间的通信方式为IIC方式通讯或共享内存方式,FPGA才莫块通过AVALON/SRAM桥扮演ARM处理器的静态随机存储器SRAM外部设备,将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动显示绘图阵列VGA显示器,完成多层混叠显示、画中画显示或画点画线绘图功能。所述ARM由硬件层、硬件驱动层、硬件抽象层、操作系统层、应用程序层组成,在设计上采用分层结构、分层设计、分层实现的方式,每一层的内部实现对其他层透明,下层只能被上层单向调用,各层间功能界定清晰、接口明确,其中硬件层是整个嵌入式操作系统和应用程序运行的硬件平台,由具体的芯片、模块、电子元件等各种硬件资源构成。硬件驱动层用于直接驱动这些硬件资源,硬件驱动层包括扩串口、IIC、主机外设接口HPI(hostperipheralinterface)及芯片内部硬件资源等,其作用在于隐藏系统的硬件细节,向上层模块提供对硬件操作的软件接口;硬件抽象层将硬件驱动层的寄存器操作封装起来,通过硬件抽象层接口向操作系统层以及应用程序层提供对硬件进行抽象后的服务;当操作系统层或应用程序层使用硬件抽象层API进行设计时,只要硬件抽象层API能够在下层硬件平台上实现,那么操作系统层和应用程序层的代码就可以方便的进行移植,硬件抽象层完全把系统软件和硬件部分隔离开来,这样就使得系统的驱动及应用程序的开发和硬件设备无关。操作系统层通过调用硬件抽象层的接口,实现其作为管理软硬件资源的系统平台和用户控制算法的运行平台的功能,而应用程序层在操作系统的平台上控制系统的运作和行为,以实现各种具体功能及应用。所述FPGA内部模块划分为NI0S2软核模块、AVALON/SRAM接口模块、SDRAM驱动模块、片内RAM模块、配置器件接口模块、VGA驱动模块,各个模块之间由AVALON总线连接起来。实现智能化全图形汽车仪表的方法,按以下步骤进行1)车辆信号采集ARM将各种车辆信号采集进来,车辆信号采集包括车速脉冲采集、转速脉冲采集、油量水温的AD采集、开关信号采集等;2)信号调理由于从发动机直接采集过来的数据噪声严重,是无法直接用于显示的,所以需要用数据处理算法对采集进来的车速脉冲、转速脉冲信号进行分析、调理、优化处理;3)信号按协议传输给FPGA:处理之后的信号,按照自定义的传输协议,通过IIC总线传输给FPGA;自定义的传输协议基本格式如下协议基本格式*代表任意字符串**,*承*,**回车换行协协分协分参分参分参分参分参分校回换议议隔议隔数隔数隔数隔数隔数隔验车行头类符类符1符2符3符4符5符码符符型—■二$为协议头,#为协议尾,协议字段之间以逗号分隔,协议头之后的第一个字段为协议类型说明,第二个字段为协议方向,协议尾之前的最后一个字段为循环冗余校验码CRC。循环冗余4交验CyclicRedundancyCheck/Code是对一个传送数据块进行校验,是一种高效的差错控制方法。协i义类型i兌明:协议类型一协议类型二地址位写命令读命令<table>tableseeoriginaldocumentpage7</column></row><table>4)解析信号FPGA接收到信号后,按照以上自定义的传输协议将具体的信号内容解析出来;5)图形描画包括指针描画、图标描画FPGA将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动VGA显示器,完成多层混叠显示、画中画显示或画点画线绘图功能,经过指针位图压缩存储算法和指针旋转及视觉优化算法的处理,将代表转速、车速的指针及各种开关量的图标显示在VGA显示器或液晶屏上,并实现与车辆信号的准确同步。在ARM芯片中运^f亍实时内核,拥有相当的实时性与稳定性。为了在数据精确性与用户适应性中取得一个很好的平衡,系统中还应用了多个数据处理算法,用于将实际采集的数据以用户易于接受的方式显示出来,避免因为数据精度过高,造成大量抖动。FPGA通过石更件加速实现LCD(LiquidCrystalDisplay)液晶显示器的控制,FPGA支持5层图象混叠输出,其中第0层为数据格式为RGB565(RedGreenBlue)以红绿蓝三种基色的背景层,第1层为数据格式为RGB565的图象层,第2-4层为调用数据才各式为RGB666的8位调色板的绘图层。除基本的LCD显示功能外,还扩充了硬件分层,Alpha混合,视频处理等功能,在2D加速性能上也达到了目前专用2D加速芯片的水平。图1为系统总体结构框图。图2为ARM部分系统结构框图。图3为FPGA部分系统结构框图。图4为系统工作流程图。具体实施方式系统总体设计如图1所示,硬件系统采用ARM+FPGA构架,其中ARM主要用于数据采集及系统控制,FPGA主要用于视频处理及图形描画显示,具体硬件设计详述如下ARM硬件设计如图2所示,是ARM部分总体设计,主要由硬件层、硬件驱动层、硬件抽象层、操:作系统层、应用程序层组成。在设计上采用分层结构、分层设计、分层实现的方式,每一层的内部实现对其他层透明,下层只能被上层单向调用,各层间功能界定清晰、接口明确。其中硬件层是整个嵌入式操作系统和应用程序运行的硬件平台,由具体的芯片、模块、电子元件等各种硬件资源构成。硬件驱动层用于直接驱动这些硬件资源,包括扩串口、IIC、HPI及芯片内部硬件资源等,其作用在于隐藏系统的硬件细节,向上层模块提供对硬件操作的软件接口。硬件抽象层将硬件驱动层的寄存器操作封装起来,通过硬件抽象层接口向操作系统层以及应用程序层提供对硬件进行抽象后的服务。当操作系统层或应用程序层使用硬件抽象层API进行设计时,只要硬件抽象层API能够在下层硬件平台上实现,那么操作系统层和应用程序层的代码就可以方便的进行移植。硬件抽象层完全把系统软件和硬件部分隔离开来,这样就使得系统的驱动及应用程序的开发和硬件设备无关。操作系统层通过调用硬件抽象层的接口,实现其作为管理软硬件资源的系统平台和用户控制算法的运行平台的功能,而应用程序层在操作系统的平台上控制系统的运作和行为,以实现各种具体功能及应用。其中,与ARM部分硬件设计相关的主要是硬件抽象层和硬件驱动层,分别详述如下。1硬件抽象层操作系统0S时钟操作系统0S使用一个时钟进行时钟节拍(Tick)计数,这个计数是OS提供的所有定时、延时的勤出。OS时钟的频率一般由处理器的性能决定,一般为1-2Hz/MIPS(每百万条指令执行的频率)。例如处理器的性能为100MIPS,那么OS时钟的频率应该大概取100-200Hz之间,频率太低会使OS的任务响应时间变大,频率太高会^f吏系统的CPU利用率降低。OS时钟信号触发时钟中断,从而相应的时钟中断函数^皮调用,时钟中断函数在处理一些必要的程序后,会调用系统OS时钟服务函数—tickTimerISR,该函数负责对系统Tick进行计数,并维护定时、延时队列。在目标板上,OS时钟由定时器O(TimerO)担任,定时器0的初始化步骤如下1.设置相关参数寄存器;2.分配中断优先级给TimerO;3.将TimerO的服务函数设置为相应优先级的响应函数;4.允许该优先级上的中断。OS中断管理;中断的处理有可能影响任务的执行顺序,因此OS要对ARM的中断源进行统一的管理,ARM没有提供硬件上的中断嵌套,因此中断管理还要负责在中断发生嵌套时对上下文进行必要的保护。符合OS要求的中断处理过程如下1.保存处理器上下文到当前任务堆栈,因为中断结束有可能引起任务切换;2.中断嵌套变量加l;3.执行用户的中断服务函数;4.用户函数中有可能允许中断时,关闭中断;5.中断嵌套变量减l;6.判断是否要进行任务切换;7.如果是则进行任务切换,否则中断返回。OS任务切换任务切换是整个OS运转的核心部分,由于上下文的切换涉及到处理器本身的特性,所以必须在抽象层完成。ARM的C语言编译器并不提供对堆栈的直接操作,因此切换必须是用汇编代码完成。任务切换的处理过程如下1.处理当前任务堆栈,使其处于中断结束前的状态;2.保存处理器上下文到当前任务堆栈;3.设置下一任务堆栈为当前任务堆栈;4.从当前任务堆栈恢复处理器上下文;5.中断返回。2硬件驱动层车速信号驱动车速信号是以脉冲方式传递的,脉冲的频率决定车速。在ARM上,通过一个软件的计数程序来计算车速。每个车速脉沖会引起一次中断,中断服务函数响应后将车速计数器加l,定时器Timerl在这里用作车速的测量,每隔一个单位时间记录一次车速计数器的值,然后把他清零,以进行下一个单位时间的记录。Timerl将计算好的车速直接以消息方式传递给应用程序,因此车速信号驱动除了初始化函数外,并不向应用程序提供接口。Timerl的初始化方式与系统时4中TimerQ类似。标准异步收发器UART驱动UART就是标准异步收发器,也就是我们平常说的串口。在这里串口被初始化为标准输出设备,以便使用printf函数将文字显示信息输出到超级终端。串口的通信使用的是非归零的编码方式,也就是高电平代表逻辑1,低电平代表逻辑0。在这里我们将串口初始化为标准工作方式,也就是8位数据位,l位结束位,无校验,数据传输流如下所示串口的初始化步骤如下1.设置串口工作方式;2.设置串口波特率;3.为串口分配中断向量;4.设置串口中断服务函数;5.允许串口中断。串口驱动程序提供的应用程序接口有以下两个-initUartO参数baudRate串口的波特率返回void功能初始化串口0—uartOSend参数data,要发送的数据,低8位有效;返回rvoid;功能通过串口O发送一个字节数据;其中-uartOSend函数一般应用程序不会直接用到,他被包装成标准输出函数-putc,间接#皮printf调用,因此应用程序通过printf函凄t可以直接输出需要的信息到串口0,以便显示在超级终端上。IIC驱动,Inter-IntegratedCircuit总线是一种由菲利普/>司开发的两线式串行总线IIC总线使用两线一条串行数据线(SDA)和一条串行时钟线(SCL)在连接到总线的器件间传递信息。器件在执行数据传输时可以被看作是主机或从机。主机是初始化总线的数据传输并产生允许传输的时钟信号的器件。此时,任何被寻址的器件都被认为是从机。IIC从机(ARM)操作流程如下1.设置I/0口工作模式,使用IIC口;2.设置自身的从机地址;3.配置自身为IIC从机模式;4.设置中断;5.使能IIC中断,等待主机才喿作;6.判断总线状态IISTAT,收到从机自身的地址和读(写)操作命令,以便进行数据传输控制;IIC主机操作1.初始化CSL;2.设置系统主频;3.初始化IIC,:没置起始地址;4.进行写操作;5.进行读操作;6.判断操作结果是否成功,成功则结束本次操作并将标志位置0,不成功则置1。FPGA硬件i更计FPGA和ARM之间的通信方式有两种IIC方式通讯和共享内存方式。1FPGA功能描述在本系统中,FPGA模块通过AVALON/SRAM桥扮演ARM处理器的静态随机存储器SRAM外设,将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动显示绘图阵列VGA(VideoGraphicArray)显示器,完成多层混叠显示、画中画显示、画点画线绘图等功能。FPGA主要有四个外围接口SDRAM接口、VGAD/A接口、ARM处理器接口、配置器件接口。2FPGA内部模块划分如图3所示,FPGA内部才莫块主要划分为NI0S2软核才莫块、AVALON/SRAM接口模块、SDR趨驱动模块、片内RAM模块、配置器件接口模块、VGA驱动模块,各个模块之间由AVALON总线连接起来,AVALON是一种将片上处理器和外设连接成片上可编程系统的一种简单总线结构,FPGA模块的划分和各模块之间的层次关系详述如下3FPGA模块设计说明NI0S2软核模块进入可编牙呈的片上系统SOPC(SystemOnProgrammableChip)环境中,直接在库中调出后,根据用户需求和器件资源情况设置参数即可。AVALON/SRAM接口才莫块该模块实现FPGA内模块与外部ARM处理器之间的通信。在SOPC环境中,用新元件向导工具按avalonmaster类型进行生成,另外握手方式按异步方式。具体接口如下arm_address地址线arm_data数据线arm_be数据字节使能线arm_wr写使能线arm—rdarm_ardyarm—elkarm—C6SDRAM驱动才莫块进入SOPC环境中,直接在库中调出后,根据用户需求和器件资源情况设置参数即可。片外的SDRAM存储图片数据和NI0S2程序代码及数据变量。片内RAM模块进入SOPC环境中,直接在库中调出后,根据用户需求和器件资源情况设置参数即可。配置器件接口模块进入SOPC环境中,直接在库中调出ASMI组件即可。VGA驱动模块VGA驱动才莫块由verilogHDL语言编写,VerilogHDL是一种石更件描述语言,是一种一文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。ARM处理器和NIOS软核通过AVALON总线对其进行寄存器设置,选择需要显示的图片和模式,VGA驱动模块完成推屏时序。各个Verilog文件功能如下线戈戈危复复育匕匕匕匕t育育夸^使使瞭&读读主片<table>tableseeoriginaldocumentpage13</column></row><table>VGA驱动模块有以下特性:支持5层图象混叠输出。其中第O层为数据格式为RGB565的背景层,第1层为数据格式为RGB565的图象层,第2-4层为调用数据格式为RGB666的8位调色板的绘图层。1、支持画中画功能。2、可变分辨率VGA输出。3、具有只读直接内存访问DMA(DirectMemoryAccess)Avalon总线主端口,进行高速数据传输。具有Avalon寄存器从端口,方便与外部处理器进行通信。4模块工作流程如图4所示,在系统复位后,外部ARM处理器通过AVALON/SRAM桥将图片数据存在SDRAM的指定位置,片内的NI0S2处理器对VGA驱动模块的Avalon从端口寄存器进行合理配置后,VGA驱动模块的Avalon总线主端口启动只读DMA通过AVALON总线读取SDRAM的指定位置的图片数据。经过緩冲、混叠后,按照VGA时序去驱动VGA显示器。5性能指标<table>tableseeoriginaldocumentpage14</column></row><table>权利要求1、智能化全图形汽车仪表的硬件系统架构,由微处理器ARM+现场可编程门阵列FPGA组成,其中ARM用于数据采集及系统控制,FPGA用于视频处理及图形描画显示,其特征在于FPGA和ARM之间的通信方式为IIC方式通讯或共享内存方式,FPGA模块通过AVALON/SRAM桥扮演ARM处理器的静态随机存储器SRAM外部设备,将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动显示绘图阵列VGA显示器,完成多层混叠显示、画中画显示或画点画线绘图功能。2、根据权利要求1所述的智能化全图形汽车仪表的硬件系统架构,其特征在于所述ARM由硬件层、硬件驱动层、硬件抽象层、操作系统层、应用程序层组成,其中硬件层是整个嵌入式操作系统和应用程序运行的硬件平台,由具体的芯片、模块、电子元件构成,硬件驱动层用于直接驱动这些硬件资源,硬件驱动层包括扩串口、IIC、主机外设接口HPI及芯片内部硬件资源,其作用在于隐藏系统的硬件细节,向上层模块提供对硬件操作的软件接口;硬件抽象层将硬件驱动层的寄存器操作封装起来,通过硬件抽象层接口向操作系统层以及应用程序层提供对硬件进行抽象后的服务;当操作系统层或应用程序层使用硬件抽象层API进行设计时,只要硬件抽象层API能够在下层硬件平台上实现,那么操作系统层和应用程序层的代码就可以方便的进行移植;操作系统层通过调用硬件抽象层的接口,实现其作为管理软硬件资源的系统平台和用户控制算法的运行平台的功能,而应用程序层在操作系统的平台上控制系统的运作和行为,以实现各种具体功能及应用。3、根据权利要求1所述的智能化全图形汽车仪表的硬件系统架构,其特征在于所述FPGA内部模块划分为NI0S2软核模块、AVALON/SRAM接口模块、SDRAM驱动模块、片内RAM模块、配置器件接口模块、VGA驱动模块,各个模块之间由AVALON总线连接起来。4、实现智能化全图形汽车仪表的方法,按以下步骤进行1)车辆信号采集ARM将各种车辆信号进来,车辆信号采集包括车速脉冲采集、转速脉冲采集、油量水温的AD采集、开关信号采集;2)信号调理用数据处理算法对釆集进来的车速脉冲、转速脉冲信号进行分析、调理、优化处理;3)信号按协议传输给FPGA:处理之后的信号,按照自定义的传输协议,通过IIC总线传输给FPGA;4)解析信号FPGA接收到信号后,按照自定义的传输协议将具体的信号内容解析出来;5)图形描画包括指针描画、图标描画FPGA将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动VGA显示器,完成多层混叠显示、画中画显示或画点画线绘图功能,经过指针位图压缩存储算法和指针旋转及视觉优化算法的处理,将代表转速、车速的指针及各种开关量的图标显示在VGA显示器或液晶屏上,并实现与车辆信号的准确同步。全文摘要本发明涉及智能化全图形汽车仪表的硬件系统架构,由微处理器ARM+现场可编程门阵列FPGA组成,其中ARM用于数据采集及系统控制,FPGA用于视频处理及图形描画显示,其特征在于FPGA和ARM之间的通信方式为IIC方式通讯或共享内存方式,FPGA模块通过AVALON/SRAM桥扮演ARM处理器的静态随机存储器SRAM外设,将ARM处理器传送过来的图片数据存储在同步动态随机存储器SDRAM内,根据ARM处理器指令推动显示绘图阵列VGA显示器,完成多层混叠显示、画中画显示或画点画线绘图功能。本发明采用了高效、灵活的ARM+FPGA构架,ARM完成外部数据采集、整理、分析、存储等功能,FPGA现场可编程门阵列用于用户界面的显示。文档编号B60L7/10GK101327785SQ200810047958公开日2008年12月24日申请日期2008年6月11日优先权日2008年6月11日发明者张俊峰,朱敦尧,温小华,斌谢,迅连申请人:武汉光庭汽车电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1