嵌入式体系的典型特征是面向用户、面向产品、面向运用的,商场运用是嵌入式体系开发的导向和条件。一个嵌入式体系的规划取决于体系的需求。本文主要给我们共享一个典型的嵌入式体系规划。供我们参阅!
一般来说,一个嵌入式体系的开发进程如下:
承认嵌入式体系的需求;
规划体系的体系结构:挑选处理器和相关外部设备,操作体系,开发渠道以及软硬件的切割和全体体系集成;
具体的软硬件规划和RTL代码、软件代码开发;
软硬件的联谐和集成;
体系的测验。
一、进程1:承认体系的需求:
嵌入式体系的典型特征是面向用户、面向产品、面向运用的,商场运用是嵌入式体系开发的导向和条件。一个嵌入式体系的规划取决于体系的需求。
1、MVB总线简介
列车通讯网(Train CommunicaTIon Network,简称TCN)是一个集整列列车内部测控使命和信息处理使命于一体的列车数据通讯的IEC国际规范(IEC-61375-1), 它包含两种总线类型绞线式列车总线(WTB)和多功用车厢总线(MVB)。
TCN在列车操控体系中的位置适当与CAN总线在轿车电子中的位置。多功用车辆总线MVB是用于在列车上设备之间传送和交流数据的规范通讯介质。附加在总线上的设备可能在功用、巨细、功能上互不相同,可是它们都和 MVB总线相连,经过MVB总线来交流信息,构成一个完好的通讯网络。在MVB体系中,依据IEC-61375-1列车通讯网规范, MVB总线有如下的一些特色:
拓扑结构:MVB总线的结构遵从OSI方法,吸取了ISO的规范。支撑最多4095个设备,由一个中心总线办理器操控。简略的传感器和智能站共存于同一总线上。
数据类型:MVB总线支撑三种数据类型:
a.进程数据:进程变量表明列车的状况,如速度、电机电流、操作员的指令。进程变量的值叫进程数据。它们的传输时刻是承认的和有界的。为保证这一延迟时刻,这些数据被周期性地传送。
b.音讯数据:音讯被分红小的包,这些包分别被编号并由意图站承认。音讯包及与之相关的操控数据构成音讯数据。音讯数据以指令方法传输。功用音讯被运用层所运用;服务音讯用于列车通讯体系本身的办理等。
c.监督数据:是短的帧,主设备用它作同一总线内设备的状况校验、联机设备的检测、主权传输、列车初运转和其它办理功用。
介质拜访方法:MVB总线支撑RS485铜介质和光纤。其物理层的数据格式为1.5Mbps串行曼彻斯特编码数据。
MVB的介质拜访是由总线办理器BA进行办理的,总线办理器BA是仅有的总线主设备,一切其它设备都是从设备。主设备依照某种预订的次序对端口进行周期性轮询,在周期的距离中,主设备转而处理偶发性恳求。
可靠性办法:MVB容错办法包含
发送的完好性:链路层有扩大的检错机制,该机制供给的汉明码距为8,可检测位、帧和同步过错。
毛病的独立性:一般对铜介质进行彻底双份装备,以保证设备毛病的独立性。
发送的可用性:可用功能够经过介质冗余、电源冗余、办理器冗余等办法得以进步。
2、MVB体系的根本需求如下:
a. 彻底与IEC-61375-1(TCN) 国际规范兼容,支撑MVB总线界说的三种数据类型进程数据,音讯数据,监督数据。
b. 体系可装备成为:
i. 总线办理器(BA)功用
ii. 总线办理器(BA)功用和通讯功用
iii. 独立的通讯功用
c. 选用ARM7TDMI的处理器
d. 选用实时操作体系
e. 供TCN的实时协议栈协议(RTP)
f. 支撑 4096 逻辑端口的进程数据
g. 支撑与上位PC104主机的双口RAM接口
h. 输入电压5V
i. 作业环境温度:-40℃~75℃
3、其他需求
多功用车辆总线MVB体系与用户的列车操控体系同步规划,有着严厉的时刻约束。
二、进程2:规划体系的体系结构,协同分配硬件/软件方面的要求
嵌入式体系包含硬件和软件两部分:硬件架构上以嵌入式处理器为中心,装备存储器、 I/O设备、通讯模块等必要的外设;软件部分以软件开发渠道为中心,向上供给运用编程接口(API),向下屏蔽具体硬件特性的板级支撑包BSP。嵌入式体系中,软件和硬件紧密配合,和谐作业,共同完结体系预订的功用。依据OSI的七层模型能够承认链路层和物理层由硬件完结,其他各层由软件完结,如图1。
图1:MVB的OSI模型和MVB体系软硬件区分。
1、嵌入式操作体系挑选:
一般而言,为一个嵌入式体系挑选操作体系要考虑如下几个要素:
操作体系支撑的微处理器
操作体系的功能
操作体系的软件组件和设备驱动程序
操作体系的调试东西,开发环境、在线仿真器(ICE)、编译器、汇编器、连接器、调试器以及模拟器等等
操作体系的规范兼容性
操作体系的技能支撑程度
操作体系是供给源代码仍是方针代码
操作体系的答应运用状况
操作体系的开发者名誉状况
依据体系的需求和以上的准则,在MVB体系中选用了Vxworks实时操作体系,VxWorks 是风河公司(Windriver)开发的实时操作体系之一,以其优异的可靠性、实时性及内核的可削减性,被广泛运用于通讯、军事、航天、航空、工业操控等要害职业范畴,其开发环境为Tornado。
2、处理器的挑选:
在为嵌入式体系挑选处理器时需求考虑以下几个方面:
功能:处理器必须有满足的功能执行使命和支撑产品生命周期。
东西支撑:支撑软件创立、调试、体系集成、代码调整和优化东西对全体项目成功与否十分要害。
操作体系支撑:嵌入式体系运用需求运用有协助的笼统来削减其复杂性。
开发人员曩昔的处理器经历:具有处理器或处理器系列产品的开发经历能够削减可观的学习新处理器、东西和技能的时刻。
本钱,功耗,产品上市时刻,技能支撑等等
在本体系的规划中,归纳以上各方面的要素,考虑到处理器功能,操作体系支撑以及列车上严格的工业环境等等,在MVB体系中选用了ATMEL用于工业操控范畴的工业级的AT91系列ARM处理器AT91M40800,它是根据ARM7TDMI内核,内含高功能的32位RISC处理器、16位高集成度指令集、8KB片上SRAM、可编程外部总线接口(EBI)、3通道16位计数器/守时器、32个可编程I/O口、中止操控器、2个USART、可编程看门狗守时器、主时钟电路和 DRAM时序操控电路,并配有高档节能电路;一起,可支撑JTAG调试,主频可到达40MHz。
3、相关外部设备的挑选:
在承认操作体系和处理器之后,就能够承认相关的外部设备,如FLASH,RAM,串口等等。在MVB体系中,MVB操控器MVBC(MulTIfuncTIon Vehicle Bus Controller)是一个MVB电路和实践的物理设备之间的接口操控器,它的主要功用是完结MVB总线信号与数据帧的编解码,纠错等功用,是本体系中要完结的要害的硬件模块。因为体系规划,上市时刻等方面的要求,体系暂时不考虑ASIC完结,因而在MVB体系顶用FPGA来完结这个要害模块,FPGA 是ASIC最灵敏和最合算的代替计划。考虑到体系需求与FPGA资源,本钱,供货状况等要素,终究挑选了Altera公司的Cyclone系列FPGA, 其开发东西是Quartus II。
4、MVB体系架构
由以上的需求剖析和选型,完好的体系硬件架构和软件架构如图2图3所示
图2:MVB体系的硬件架构。
图3:MVB体系的软件架构。
其间,处理器和 MVBC经过Traffic Memory(TM)进行通讯数据交流,一切软件和MVBC要交流的操控信息和数据都能够在TM地址空间中找到,这个地址空间对处理器和MVBC都是可拜访的。其示意图4如下
图4:Traffic Memory。
三、进程3:具体的软硬件规划和RTL代码、软件代码开发
在体系架构承认的基础上,具体的软硬件规划就能够开端了。
1、硬件规划
硬件规划规划包含了MVB操控器的FPGA规划和MVB总线体系的板级规划,其间要害的MVB操控器的规划如图5
图5:MVB操控器的框图
如图所示,MVB操控器包含以下功用模块:
编码器:发生曼彻斯特编码,传送数据帧
发送缓冲区:作为要发送的数据和CRC检测值的缓冲区
译码器:接纳、曼彻斯特译码,数据提取、数据过错检测
接纳缓冲区:作为接纳端数据和CRC成果的缓冲区
报文剖析单元:检测主帧和从帧超时,帧误检测、过错状况陈述
状况操控寄存器:MVBC装备
主控单元:支撑MVBC作为主设备或许从设备作业,支撑行列音讯传送
设备地址读取和贮存单元:硬件界说的设备地址能够被不同的值掩盖
地址逻辑:把CPU对MVBC内部寄存器进行拜访的输入地址进行解析;发生MVBC拜访TM的输出地址
总线复用、转化单元:处理MVBC内部的数据传送
中止逻辑:支撑16种中止源;
通用守时器:两个守时输出信号,可供给给体系同步运用
时钟发生电路:发生一切MVBC作业的时钟和计数器
2、软件规划
因为在MVB体系中,进程数据,音讯数据,监督数据是三种不同的通讯机制,因而,MVB体系软件的模块规划如图6。
四、软硬件的联谐和集成
下面,以一个简略的比如来阐明MVB体系的软硬件的集成和验证。
进程数据在MVB体系中是周期性发送的数据,其在本体系中的通讯机制如下:关于发送方,用户运用模块将一个端口的进程变量发送给进程数据处理模块,进程数据处理模块依照逻辑端口的设置守时经过链路层接口模块更新Traffic Memory傍边的相应逻辑端口的数据,此刻发送方软件的使命完结。发送方的MVBC硬件接纳总线办理器BA守时宣布的主帧,经过译码器解码得到相应的逻辑端口的值,经过查询Traffic Memory相关的逻辑端口发送设置后将MVBC主动设置为发送状况,将逻辑端口的数据作为进程数据从帧经过编码器宣布,如图7所示:
图7:进程数据通讯示例。
关于接纳方,其接纳进程与发送方相逆,接纳方的MVBC硬件接纳总线办理器BA守时宣布的主帧,经过译码器解码得到相应的逻辑端口的值,经过查询Traffic Memory相关的逻辑端口接纳设置后将MVBC主动设置为接纳状况将,在收到发送方宣布的从帧后更新相应逻辑端口在Traffic Memory的数据并宣布中止信号然后完结硬件的接纳进程。接纳方的软件能够用中止或守时查询的方法经过进程数据处理模块得到更新后的逻辑端口的进程数据
五、体系的测验
在本体系中,体系的测验即包含了软件的测验,也包含了硬件,FGPA的测验,在本文中不再赘述。
结束语
上述的MVB体系现已运转在列车操控体系中,成功完结对列车的运转操控、机车操控、车辆操控、状况监测、毛病诊断。当然,如有需求,本文中的MVB体系能够转化成为ASIC规划,然后成为一个SOC的嵌入式体系。