前言:想要写出一篇引人入胜的文章?我们特意为您整理了嵌入式计算机工程化设计分析范文,希望能给你带来灵感和参考,敬请阅读。
1引言
某控制管理系统主要用于收集外部传感器数据及控制数据,对数据进行分析处理及逻辑判断,最后向外部设备输出处理后的数据及控制指令。系统中嵌入式计算机模块的主要任务是处理外部通信接口的大量数据收发,数据及控制逻辑处理任务相对简单。嵌入式计算机要求具备异步串口、网络接口、离散量接口等资源,满足控制任务的实时性要求,便于应用软件的研制、维护及升级并且能够适用于恶劣的使用环境。传统嵌入式计算机中的应用软件与系统软件联合编译、统一加载,不便于工程应用。为满足某控制管理系统的功能及工程化需求,对传统嵌入式计算机系统软件进行了改进,给出了采用MPC8265处理器[1]实现该嵌入式计算机的设计方案,指出了工程应用中的设计要点。
2硬件设计
整个嵌入式计算机系统的硬件功能模块主要由电源、时钟、复位电路、中央处理器、FPGA、接口电路和存储系统等部分组成。FPGA主要实现模块的控制逻辑、LBE总线逻辑及部分外围资源,比如串口、双口等;接口电路主要实现模块内外接口信号的隔离及信号电平的变换以及串口和网口等。各硬件功能模块的组成及设计要点与其他嵌入式计算机类似,下面对主要功能模块的设计进行说明。
(1)中央处理器
中央处理器选用MPC8265芯片,工作频率为150~300MHz,内核电压为1.7~2.2V。中央处理器的电路设计主要包括对一些关键信号的端接处理、处理器工作电源的分配及滤波、工作频率设置电路及调试接口设计等。在工程应用设计过程中,由于该控制管理系统的工作环境温度范围要求较宽,为保证中央处理器在高温环境中运行的可靠性,处理器设定的工作频率应低于最高值,比如200MHz;为提高中央处理器在低温环境中运行的稳定性,处理器的内核电压应设置为可选范围的上限电压值,比如200MHz的主频,内核电压值应设定为1.9V。
(2)时钟设计
计算机中存在3种时钟频率,分别为计算机系统外部总线使用的100MHz时钟、网络接口电路使用的25MHz时钟以及异步串行接口使用的14.7456MHz时钟。其中100MHz是主时钟信号,采用全局时钟的设计原则,经CY2305芯片驱动后,输出给MPC8265器件和SDRAM器件。由于MPC8265器件和SDRAM器件MT48LC8M32的建立、保持时间存在差异,因此,两者的输入时钟信号时序需进行控制,最为简便的方法是控制时钟信号的传输距离。工程应用中,根据MPC8265器件和MT48LC8M32器件的建立、保持时间要求,同时结合印制板的布线面积以及所使用的FR4材料,最终要求输入MPC8265的时钟信号线需要比输入MT48LC8M32的长约15cm。
(3)复位设计
复位设计包括加电复位、手动复位、COP接口复位和看门狗复位等设计,复位控制逻辑统一处理所有输入的复位电路信号,并且实现对硬件配置字的访问。在实际工程应用中,MPC8265硬件配置字一般不会改变,因此,为了简化设计,提高生产效率,直接把硬件配置字配置在FPGA逻辑中,从而略去生产过程中的硬件配置字烧写步骤。
(4)存储器系统
存储器系统包括SDRAM存储器、程序存储器、数据存储器和双口存储器。SDRAM存储器分配在存储空间的低端。在系统运行中被划分成3个功能区,即操作系统驻留区、应用程序驻留区、保留区。程序存储器分配在存储空间的高端,程序存储器分为系统程序区和用户程序区。系统程序区用于保存系统程序,包括操作系统、底层测试与监控软件等程序。用户程序区用于保存用户应用程序。数据存储器和双口存储器分别分布在存储空间的高端和中端。在工程应用中,为了实现系统软件和用户软件完全独立的设计和开发,存储器系统必须为系统软件和用户软件提供完全独立的存储区域和运行区域。
(5)总线接口设计
计算机系统采用32位机载航空计算机系统(LBE)总线作为对外总线接口。LBE总线与处理器总线间的桥接逻辑采用FPGA实现,主要包括地址和数据信号的处理单元、信号的时序同步单元和控制信号逻辑实现单元。数据和地址信号处理单元用于实现处理器及LBE总线间数据和地址信号的转换、缓冲、输入输出控制等。数据总线处理单元包括数据缓冲、字节交换、字节选择输出等模块,支持对外部存储器的对齐与不对齐的字、半字等动态数据宽度的读写操作以及突发传输等。时序同步单元用于对控制信号逻辑单元产生的控制信号、数据信号处理单元产生的数据信号和地址信号处理单元产生的地址信号进行时序控制。时序同步单元功能分为两部分,可以分别按照处理器总线和LBE总线的时序要求完成同步控制。控制信号逻辑单元用于实现对处理器及LBE总线间的所有控制信号的转换和访问模式的转换,以及地址译码控制信号的产生等。
3软件设计
嵌入式计算机系统上的驻留软件是非常重要的一部分。目前,较为常用的方式是系统软件及用户应用软件分别独立设计,最后把两者代码联合编译、调试并生成最终的嵌入式计算机系统驻留软件,通过仿真器加载、固化驻留软件。这种联合编译及软件加载的方式实现简单,但是任务界面不清晰,维护不便,不利于工程化。为此,对嵌入式计算机的软件结构进行了改进,在传统的嵌入式计算机系统软件结构上增加了状态监控软件及维护系统软件,实现了各系统软件及用户应用程序的单独编译、调试以及维护系统软件、操作系统及用户应用程序的单独加载。改进的嵌入式计算机系统软件模块结构层次如图4所示,图中无底色部分的软件模块包括板级支持包、设备驱动、操作系统及系统应用软件,这些软件模块的功能及组成与其他嵌入式计算机系统基本相同;加底色部分为在传统嵌入式计算机系统基础上增加的系统软件,其主要功能及组成如下所述。
(1)状态监控软件
状态监控软件位于BSP软件和设备驱动软件之上,在BSP和设备驱动完成对计算机主要硬件资源和设备的初始化后运行[2],负责收集设备的状态信息,引导设备进入不同的工作模式。设备的状态信息由计算机外部离散量或IO设备提供,不同的状态信息对应不同的工作模式。计算机系统的工作模式分为运行态及维护态两种模式,其中运行态模式是计算机的默认模式,该模式下计算机将调用并运行操作系统和用户软件。维护态运行模式下,系统将调用并运行维护系统软件。软件的主要功能模块有两个,一是模式检测模块,实现对计算机系统不同模式的检测及引导;二是程序搬移模块,实现程序从固存向内存的搬移。
(2)维护系统
该软件主要用于计算机系统的维护,包括调试模式、加载模式及测试模式等3种模式,计算机的实际运行模式由用户通过计算机外部离散量或IO设备选择。调试模式下,计算机建立了一个多任务运行环境,可以实现用户软件的在线调试,常用于软件故障定位及软件调试;加载模式下,可以完成对Vx-Works操作系统和用户软件的升级,常用于产品的维护及更新;测试模式下,计算机系统运行测试软件对主要的硬件资源进行测试并输出结果。维护系统的主要功能模块有3个,一是软件调试模块,实现用户软件的动态加载、调试;二是软件加载模块,实现操作系统或用户软件的接收、缓存、烧入及更新;三是测试模块,实现对硬件资源的测试。
4应用情况
本方案实现的基于MPC8265处理器的嵌入式计算机,通过了某控制管理系统的环境适应性试验及现场高强度的使用验证,满足该系统小型化、实时性以及恶劣的使用环境要求。经过软件设计人员和产品用户现场使用,该嵌入式计算机可以有效提高应用软件的开发效率,增加软件维护的便利性,有利于产品的设计、研制、维护和升级。目前,该嵌入式计算机已在多个类似的控制管理系统中推广应用。
5设计建议
根据实际的工程应用经验,在基于MPC8265的嵌入式计算机系统设计过程中,下面两点需要特别注意。(1)内核供电MPC8265器件的内核供电电压与工作频率密切相关,工作频率越高,内核电压值越高,最高不能超过2.5V,工作频率与内核电压推荐值关系。实际应用中,应根据选用的MPC8265工作频率和表2的推荐来选择内核电压。如果内核电压设置为下限值,可在一定程度上降低硬件功耗,但是在特殊的低温应用环境中,电路的工作稳定较差;如果内核电压设置为上限值,硬件功耗较高,而且在特殊的高温应用环境中,电路的工作稳定较差。对于大多数普通应用环境的设计而言,内核电压值可以选择推荐范围的中间值。因此,建议内核电压供电电路的输出电压设计成可调的。实际设计中,综合考虑应用环境和硬件设计的具体情况,最好通过应用环境摸底测试最终确定内核电压值,根据该电压值调整内核电压的供电。(2)时钟信号设计由于MPC8265器件输出信号保持时间小于大多数SDRAM器件输入信号的最小保持时间,因此,在MPC8265和SDRAM器件的时钟信号电路设计中,为保证两者信号的建立,保持时间满足要求并具有一定的余量,需要对两者的输入时钟信号时序进行控制。建议采用延长(相对输入SDRAM的时钟信号而言)输入MPC8265的时钟信号传输距离,使得输入MPC8265的时钟信号比输入SDRAM的晚,从而保证MPC8265和SDRAM间信号满足特定时序要求。工程设计中,选用的MPC8265器件输出信号的最小保持时间为0.5ns,SDRAM器件MT48LC8M32输入信号要求的最小保持时间为1ns;MPC8265器件输入信号的保持时间要求必须大于0.5ns,MT48LC8M32数据信号输出保持时间最小为2.5ns,因此,为满足时序设计要求,输入MPC8265的时钟信号必须比输入SDRAM的晚t时间(0.5ns<t<2ns)。根据FR4材料印制板中内层信号典型的传输延迟约70.87ps/cm,可以换算出输入MPC8265的时钟信号线需要在输入SDRAM的时钟信号线基础上延长约7.06~28.19cm。
6结束语
本文针对某控制管理系统的实际工程需求,给出了基于MPC8265处理器的嵌入式计算机设计方案,结合实际工程经验,指出了工程设计中的关键点,给出了设计建议和软件改进方法,对工程应用中的嵌入式计算机设计具有一定的参考价值。