嵌入式计算机工程化设计分析
嵌入式计算机工程化设计分析 嵌入式计算机工程化设计分析嵌入式计算机工程化设计分析 文章来源教育网
1引言
某控制管理系统主要用于收集外部传感器数据及控制数据,对数据进行分析处理及逻辑判断,最后向外部设备输出处理后的数据及控制指令。系统中嵌入式计算机模块的主要任务是处理外部通信接口的大量数据收发,数据及控制逻辑处理任务相对简单。嵌入式计算机要求具备异步串口、网络接口、离散量接口等资源,满足控制任务的实时性要求,便于应用软件的研制、维护及升级并且能够适用于恶劣的使用环境。传统嵌入式计算机中的应用软件与系统软件联合编译、统一加载,不便于工程应用。为满足某控制管理系统的功能及工程化需求,对传统嵌入式计算机系统软件进行了改进,给出了采用MPC8265处理器[1]实现该嵌入式计算机的设计方案,指出了工程应用中的设计要点。
2硬件设计
整个嵌入式计算机系统的硬件功能模块主要由电源、时钟、复位电路、中央处理器、FPGA、接口电路和存储系统等部分组成。FPGA主要实现模块的控制逻辑、LBE总线逻辑及部分外围资源,比如串口、双口等;接口电路主要实现模块内外接口信号的隔离及信号电平的变换以及串口和网口等。各硬件功能模块的组成及设计要点与其他嵌入式计算机类似,下面对主要功能模块的设计进行说明。
中央处理器
时钟设计
复位设计
复位设计包括加电复位、手动复位、COP接口复位和看门狗复位等设计,复位控制逻辑统一处理所有输入的复位电路信号,并且实现对硬件配置字的访问。在实际工程应用中,MPC8265硬件配置字一般不会改变,因此,为了简化设计,提高生产效率,直接把硬件配置字配置在FPGA逻辑中,从而略去生产过程℉中的硬件配置字烧写步骤。
存储器系统
存储器系统包括SDRAM存储器、程序存储器、数据存储器和双口存储器。SDRAM存储器分配在存储空间的低端。在系统运行中被划分成3个功能区,即操作系统驻留区、应用程序驻留区、保留区。程序存储器分配在存储空间的高端,程序存储器分为系统程序区和用户程序区。系统程序区用于保存系统程序,包括操作系统、底层测试与监控软件等程序。用户程序区用于保存用户应用程序。数据存储器和双口存储器分别分布在存储空间的高端和中端。在工程应用中,为了实现系统软件和用户软件完全独立的设计和开发,存储器系统必须为系统软件和用户软件提供完全独立的存储区域和运行区域。
总线接口设计
计算机系统采用32位机载航空计算机系统总线作为对外总线接口。LBE总线与处理器总线间的桥ภ接逻辑采用FPGA实现,主要包括地址和数据信号的处理单元、信号的时序同步单元和控制信号逻辑实现单元。数据和地址信号处理单元用于实现处理器及LBE总线间数据和地址信号的转换、缓冲、输入输出控制等。数据总线处理单元包括数据缓冲、字节交换、字节选择输出等模块,支持对外部存储器的对齐与不对齐的字、半字等动态数据宽度的读写操作以及突发传输等。时序同步单元用于对控制信号逻辑单元产生的控制信号、数据信号处理单元产生的数据信号和地址信号处理单元产生的地址信号进行时序控制。时序同步单元功能分为两部分,可以分别按照处理器总线和LBE总线的时序要求完成同步控制。控制信号逻辑单元用于实现对处理器及LBE总线间的所有控制信号的转换和访问模式的转换,以及地址译码控制信号的产生等。
3软件设计
嵌入式计算机系统上的驻留软件是非常重要的一部分。目前,较为常用的方式是系统软件及用户应用软件分别独立设计,最后把两者代码联合编译、调试并生成最终的嵌入式计算机系统驻留软件,通过仿真器加载、固化驻留软件。这种联合编译及软件加载的方式实现简单,但是任务界面不清晰,维护不便,不利于工程化。为此,对嵌入式计算机的软件结构进行了改进,在传统的嵌入式计算机系统软件结构上增加了状态监控软☮件及维护系统软件۵,实现了各系统软件及用户应用程序的。单独编译、调试以及维护系统软件、操作系统及用户应用程序的单独加载。改进的嵌入式计算机系统软件模块结构层次如图4所示,图中无底色部分的软件模块包括板级支持包、设备驱动、操作系统及系统应用软件,这些软件模块的功能及组成与其他嵌入式计算机系统基本相同;加底色部分为在传统嵌入式计算机系统基础上增加的系统软件,其主要功能及组成如下所述。
状态监控软件
状态监控软件位于BSP软件和设备驱动软件之上,在BSP和设备驱动完成对计算机主要硬件资源和设备的初始化后运行[2],负责收集设备的状态信息,引导设备进入不同的工作模式。设备的状态信息由计算机外部离散量或IO设备提供,不同的状态信息对应不同的工作模式。计算机系统的工作模式分为运行态及维护态两种模式,其中运行态模式是计算机的默认模式,该模式下计算机将调用并运行操作系统和用户软件。维护态运行模式下,系统将调用并运行维护系统软件。软件的主要功能模块有两个,一是模式检测模块,实现对计算机系统不同模式的检测及引导;二是程序搬移模块,实现程序从固存向内存的搬移。
维护系统
该软件主要用于计算机系统的维护,包括调试模式、加载模式及测试模式等3种模式,计算机的实际运行模式由用户通过计算机外部离散量或IO设备选择。调试模式下,计算机建立了一个多任务运行环境,可以实现用户软件的在线调试,常用于软件故障定位及软件调试;加载模式下,可以完成对Vx-Works操作系统和用户软件的升级,常用于产品的维护及更新;测试模式下,计算机系统运行测试软件对主要的硬件资源进行测试并输出结果。维护系统的主要功能模块有3个,一是软件调试模块,实现用户软件的动态加载、调试;二是软件加载模块,实现操作系统或用户软件的接收、缓存、烧入及更新;三是测试模块,实现对硬件资源的测试。
4应用情况
本方案实现的基于MPC8265处理器的嵌入式计算机,通过了某控制管理系统的环境适应性试验及现场高强度的使用验证,满足该系统小型化、实时性以及恶劣的使用环境要求。经过软件设计人员和产品用户现场使用,该嵌入式计算机可以有效提高应用软件的开发效率,增加软件维护的便利性,有利于产品的设计、研制、维护和升级。目前,该嵌入式计算机已在多个类似的控制管理系统中推广应用。
5设计建议 6结束语
本文针对某控制管理系统的实际工程需求,给出了基于MPC8265处理器的嵌入式计算机设计方案,结合实际工程经验,指出了工程设计中的关键点,给出了设计建议和软件改进方法,对工程应用中的嵌入式计算机设计具有一定的参考价值。