Word版可编辑-改进FlexRay总线的设计与实现精心整理.doc_第1页
Word版可编辑-改进FlexRay总线的设计与实现精心整理.doc_第2页
Word版可编辑-改进FlexRay总线的设计与实现精心整理.doc_第3页
Word版可编辑-改进FlexRay总线的设计与实现精心整理.doc_第4页
Word版可编辑-改进FlexRay总线的设计与实现精心整理.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

改进FlexRay总线的设计与实现何浩洋13, 穆建成2, 马连川34,曹源34(1轨道交通控制与安全国家重点实验室,北京 100044; 2铁道部科学技术司,北京 100844;3北京交通大学电子信息工程学院,北京 100044; 4轨道交通运行控制系统国家工程研究中心,北京 100044)摘要:随着列车运行控制技术的发展,各子系统以及子系统中子设备之间的通信安全问题变得日益重要,CTCS-2级、CTCS-3级列控系统中都具有安全相关通信功能。根据IEC61508标准针对列控中的通信安全,引入了时间触发架构。FlexRay总线由于其灵活性得到了越来越多的应用。为保证FlexRay总线能更好用于列控系统的安全通信中,借鉴ARINC659的物理层对FlexRay总线进行了改进。ARINC659采用双冗余交叉通信方式,具有很好的可靠性和容错能力。针对改进的FlexRay总线,在FPGA上进行IP核的设计。并根据需求设计FPGA开发板,搭建硬件平台。通过对改进设计FlexRay总线的仿真和硬件的符合性测试,验证改进总线的与设计的一致性。关键词: FlexRay; ARINC659; IP核; 符合性测试分类号:U285.49; TP309.1Design and implementation of improved FlexRay busHe Hao-yang13,MU Jian-cheng2,MA Lian-chuan34,CAO Yuan34(1. State Key Laboratory of Rail Traffic Control and Safety, Beijing 100044;2. Bureau of Science and Technology, Ministry of Railways, Beijing 100844;3. School of Electronics and Information Engineering, Beijing Jiaotong University, Beijing, 100044;4. National Engineering Research Center Railway Transportation Operation Control System,Beijing 100044) Abstract:As the development of the train operation control technology, the communication security problem between the subsystems and equipments in the subsytems becomes more and more important, CTCS-2 and CTCS-3 train operation control system has the function of safety related communication. According to the IEC61508 standard for communication security in train control, introduces the time-triggered architecture. FlexRay bus due to its flexibility has gained more and more applications. To ensure that FlexRay bus can be better used in fail-safe communications of the train control system, the FlexRay bus was improved with reference to the physical layer of ARINC659 bus. The ARINC659 bus uses a dual-dual redundant communication, has good reliability and fault tolerance. Through the analysis of the reliability and fault tolerance between the FlexRay bus and the improved bus, prove that the modified bus has a better performance.According to the improved FlexRay bus, designs the IP core on FPGA. According to the demand designing the FPGA development board, construct the hardware platform. Based on simulation and hardware conformance test of the improved design of FlexRay bus, to verify the consistency of the improved bus.Keywords:FlexRay; ARINC659; IP core; Conformance test随着我国现代化的进程,轨道交通得到更大发展,铁路逐渐信息化和器械化。轨道交通列车运行控制系统(简称列控系统)是典型的安全苛求控制系统,列控系统由多个子系统组成,子系统又由多个分布子设备组成;如地面子系统由RBC、TCC、轨道电路、应答器、GSM-R通信接口设备等组成,车作者简介:何浩洋(1989-),男,安徽安庆人,在读硕士研究生载子系统由车载安全计算机、应答器信息接收模块、轨道电路信息接收单元、测速测距单元、人机界面、列车接口等设备组成。虽然每个子系统和子设备是安全的,但如果系统和设备间的通信不安全会导致行车危险。因此,故障安全通信是列控系统中重要参数,CTCS-2级、CTCS-3级列控系统中都具有故障安全相关通信功能。在铁路、航空等安全理论中和国际标准中IEC61508是比较基本和核心的。IEC61508中指出,信息在传输时可能会出现随机错误、硬件故障和因软硬件问题而导致的系统失效,称为对通信的安全风险。为防护通信中的安全风险,IEC61508-2010中引入了时间触发架构。其中指出TTP/C、FlexRay、TTEthernet是常用的时间触发总线。FlexRay是混合信道结构设计,总线访问静态时间消息采用TDMA方式访问网络,动态事件消息采用柔性时分多址(FTDMA)方式访问网络,具有很好的灵活性。因此是未来现场总线的一大发展趋势。为保证FlexRay总线能更好用于列控系统的故障安全通信中,借鉴ARINC659的物理层对FlexRay总线进行了改进。1 FlexRay总线的改进设计FlexRay总线上的一个节点通常由一个主机接口、一个通信控制器两个总线监视器和两个收发器组成,如图1所示。图1 FlexRay节点结构ARINC659背板总线目前用于波音777航空电子架构中,采用四条总线冗余,完整的双冗余总线接口单元(BIUs)可提供功能强大但昂贵的架构。四条总线采用半双工传输和交叉检验的通信方式。每一个BIU接收所有4组总线发送的数据,并进行交叉校验:Ax=Ay,Bx=By,Ax=By,Bx=Ay。ARINC659采用交叉检测对数据进行容错。数据发送时对要发送的数据进行处理:Ax:所有数据保持不变;Ay:所有数据与010101进行异或;Bx:所有数据进行取反;By:所有数据与101010进行异或。节点接收到四条总线的数据,对接收到的4个数据按位进行比较,通过查表,能够检测出瞬态故障和硬故障,并能解决单个总线的故障,即可容忍一个总线的故障。通过比较判断是否接收数据,若所有数据均能接收到,则BIU接收该数据帧。为保证FlexRay总线能够更好用于故障安全通信,一方面可以保留FlexRay总线采用时间触发机制时间确定性,以及灵活性的优势,另一方面可以对FlexRay容错能力不足和总线利用率不高的方面进行改进,通过借鉴ARINC659高可靠度和安全度的物理层,进一步提高总线的可靠性和容错性以及利用率,使得FlexRay总线能更好的用于轨道交通列控系统中。由于每条线路发生传输错误的概率很小,且同一时刻传输相同错误的概率极其小,因此ARINC659总线接收到错误数据的概率远小于FlexRay总线,且可允许某个时刻单条线路的传输错误,其可靠性和容错能力均好于FlexRay总线。因此,将ARINC659总线的物理层借鉴到FlexRay总线中。其具体框架图如图2所示。图2 改进的FlexRay总线节点结构对FlexRay总线,采用交叉检验的四条总线进行数据传输,与ARINC659相同,发送时四条总线对每位数据进行不同的处理,接收时对每位数据进行查表检测,然后对完整接收的数据进行比较,Ax与Bx进行比较,Ay与By进行比较,再对比较后的两个数据进行CRC解码,最终得到的一致数据为接收到的有效数据。2 改进FlexRay总线的实现针对改进的FlexRay总线,在FPGA上进行IP核的设计。首先采用Quartus II实现各个模块的设计,再将各模块统一综合。模块包括时钟模块、协议运行控制状态模块、时钟同步模块、介质访问模块、收发模块。在FlexRay协议里,通信建立在重复的通信循环中。通信循环中按照时间定义的元素分为四个时间层次,从最低层到最高层分别是:微时钟(microtick)层、宏时钟(macrotick)层、仲裁格层和通信循环层。微时钟层的时钟大小是由系统时钟确定的,对于不同的节点可以使用不同的时钟。若干个microtick组成一个macrotick,具体的个数由时钟同步的机制来决定的,也表明macrotick是实现全局时钟同步最小的时间单元。静态段的时间单位为静态时隙,动态段的时间单位为小时隙(动态时隙)。静态时隙和小时隙均由若干个macrotick组成。最高层为通信循环层,由静态段、动态段、符号窗和网络空闲时间段组成。FlexRay总线上的节点一共有8个基本的协议运行控制状态,在各不同的状态下执行相应的功能。这8个状态,分别是默认配置状态(default config)、参数配置状态(config)、就绪状态(ready)、唤醒状态(wakeup)、启动状态(startup)、正常主动状态(normal active)、正常被动状态(normal passive)、中止状态(halt)。状态之间的转换如图3所示。图3 协议运行控制状态转换介质访问模块主要完成数据帧的组帧与解帧。数据帧根据具体情况,从各状态寄存器和从主机接收到的数据获取所需要的信息,再经过11位的头部CRC计算和24位的CRC计算,得到最终的数据帧。反之,解帧时也是先计算数据帧的头部CRC和总的CRC,然后与发送的CRC值进行比较,若一致则接收该数据,并更新状态寄存器的数据。FlexRay头部CRC采用11位CRC,生成多项式为。初始为0x1A。帧尾段采用24位CRC校验,协议中规定通道A初始值:0xFEDCBA,通道B初始值:0xABCDEF。本文改进的总线需要保证两个通道传输的数据都一致,即数据帧是相同的,因此采用一样的初始值。此处均采用通道A的初始值0xFEDCBA。FlexRay协议采用分布式的时钟同步机制,每个节点通过其他节点发送的同步帧测量时钟计时,从而实现总线上的节点时钟同步。所有节点采用相同的方式进行时钟同步,相位校正在奇数周期的网络空闲时间进行,频率校正则在整个周期中都进行。时钟同步包括时钟同步校正机制(MTG)和时钟同步计算机制(CSP),CSP在每个周期的起始时进行初始化,负责测量存储相位和频率偏差值,并进行相位和频率的校正值计算。校正值的计算采用容差中值法。容差中值法(FTM)的计算如下:1)首先检查数据的数目。如果在12之间,设置参数K为0;如果在37之间设置K为1;如果大于7设置K为2;2)按照由小到大的顺序排列数据,根据K的值丢弃最小的K个数据和最大的K个数据;3)将剩下数据的最大数据和最小数据求平均即得到需要的修正值。数据按照规范规定的位流进行传输。按照规范中所指出的编码方式得到数据帧或特征符的位流,接着将并行数据转换为串行数据,再根据ARINC659的底层对位流传输进行改进。对要发送的数据位流按第2节所述进行处理。接收时先仍按上述方式进行处理,对处理后数据根据数据确认表对接收的数据进行比较。再对接收到的数据进行串行转并行转换,得到最后的消息位流。数据位流的发送接收过程如图4所示。图4 数据位流的收发通道上的传输速率则可进行配置,接收的采样速率则是发送速率的8倍,通过晶振时钟分频可得发送速率和采样频率。节点对每一位数据进行8次采样,然后对其中几位数据进行表决,本文是对采样的第4、5、6位数据进行表决,表决的结果位即为采样的结果。对改进FlexRay总线各模块设计完成后,即可根据需要搭建FPGA硬件开发板。开发板芯片为Cyclone的EP1C12Q240C8。底层(电气层)通过485总线连接实现通信。采用5个开发板实现通信,具体连接图如图5所示。图5 开发板连接图3 改进FlexRay总线的符合性测试FlexRay发布的V3.0.1协议中包括FlexRay通信协议符合性测试规范和电气物理层符合性测试规范。FlexRay符合性测试规范符合ISO9464标准和FlexRay协议规范。对于通信控制器,协议符合性测试规范中指出可以采用基于硬件环境和基于仿真环境的符合性测试。基于硬件环境的测试被测试对象是基于FPGA的FlexRay通信控制器,处理器采用Cyclone自带的Nios II。基于仿真环境的测试则是采用Modelsim软件对设计的通信控制器进行RTL级的仿真。开发板上的晶振是40M,则最高的采样速率为40M,即能提供5M的传输速度,因此开发板设计采用5M的传输速度,系统时钟采用晶振提供的时钟。设置具体的仿真参数:系统时钟为CLK:25ns;微时钟Microtick:25ns;宏时钟Macrotick :1us;静态段时隙:50us;动态段时隙:40us;符号窗时隙和网络空闲时间的时钟采用微时钟,即25ns。对于通信循环,总的周期:5ms;其中静态段时间:3ms;动态段时间:1.8ms;符号窗时间:120us;网络空闲时间:80us。3.1 基于仿真的测试基于仿真环境的测试,通过编写Testbench实现RTL级的仿真。数据的发送仿真如图6所示。图6 改进FlexRay总线静态段的发送对于数据的接收,若传输未出现错误,则能正确接收到数据。仿真图如图7所示。图7 改进FlexRay总线静态段的接收通过对数据帧发送信号线的波形分析,可以看到与规范中的位流编码一致,设计符合要求。若一个通道传输错误,假定Bx通道传输错误,Bx中数据传输中第一位发生错误,即1变为0,也即接收的数据位流的最后第三位为0,数据接收仿真如图7所示。通过仿真可见,Bx在接收过程中出现错误,但对于通信控制器仍然能正确接收到数据,可见改进后的总线具有容错能力。若一位数据的传输时发生两处错误,假设Ay和Bx均发生错误,即Ay数据传输中第一位发生错误,接收的数据位流的最后第三位变为1;Bx中数据传输中第一位发生错误,即接收的数据位流的最后第三位变为0。图8 两条通道出现错误的帧接收通过仿真可见,若某位数据的传输过程中出现两条线同时错误的情况下,通信控制器不能解析到收到的数据,输出高阻。3.2 基于硬件的测试基于硬件仿真的测试,在开发平台上实现5个开发板的通信。处理器采用Nios II内核,系统参数与仿真设置参数相同,节点2在静态段时隙为15发送16位数据0x0215,节点3在静态段时隙为25发送16位数据0x0325,节点4在静态段时隙为35发送16位数据0x0435,节点5在静态段时隙为45发送16位数据0x0545。节点1接收数据。接收结果如图9所示。图9 节点1接收数据从以上实验中接收的结果可见改进FlexRay总线能正确收发,设计的电路能正确运行,即符合设计需求。测试节点4故障对传输的影响。对节点4,首先假定Bx通道传输错误,即节点4的Bx不与通道相连,测试数据能否被接收;然后假定Ay和Bx通道均发生错误,即节点4的Ay和Bx都不与通道相连,测试数据能否被接收。对其他节点仍正确连接。测试结果:Bx通道传输错误,实验结果与图10相同,仍能接收到节点4发送的数据,可见单个通道的故障不影响数据的通信,即改进后的FlexRay总线允许单个通道的传输故障。若Ay和Bx通道均发生错误,则实验结果如图10所示。图10 容错测试 从图中可以看到节点不能接收到节点4中的数据,因此,若两个通道同时传输错误,则节点不接收该帧数据。通过对改进后总线容错能力的测试,可见IP核的设计与要求容错能力一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论