美章网 资料文库 通用型列控系统的计算机设计论文范文

通用型列控系统的计算机设计论文范文

本站小编为你精心准备了通用型列控系统的计算机设计论文参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

通用型列控系统的计算机设计论文

1安全计算机平台硬件结构改进

信号系统包括地面系统与车载系统,车载设备是以一个安全计算机扩展开的,而地面系统则包含多个基于安全计算机的设备,系统功能多,结构复杂,具备典型性.因此,本文以CTCS-3地面信号系统安全计算机平台简化方案为例.该方案的硬件平台也可以较少修改移植于车载信号系统.

1.1信号系统实施方案基于分布式原则,将CTCS-3级信号系统分为核心主机部分和远程外设(车载设备也作为远程外设)部分,如图1所示.①核心主机部分基于核心主机型配置的安全计算机平台实现,放置于目前信号机械室内,支持目前无线闭塞中心(RBC)、临时限速服务器(TSRS)、计算机联锁(CBI)和列车运行控制中心(TCC)的核心控制逻辑,以及与临时限速服务器(TSRS)、计算机联锁(CBI)相适应的人机界面(DMI)的功能.②远程外设部分基于远程外设型配置的安全计算机平台实现,尽量靠近现场控制对象,确保远程外设和现场控制对象之间的硬连线尽可能缩短.远程外设支持计算机联锁通用数字量输入或输出功能;轨道电路通用数字量输入或输出功能,智能输入或智能输出功能;轨旁电子单元(LEU)通用数字量输入或输出功能,智能输入或智能输出功能。

1.2系统的具体实现针对列控系统这样的安全苛求系统,提高可靠性和安全性的最直接办法就是采用硬件冗余结构,但这样会加大共因失效的概率.因此,为了降低整个冗余结构的失效率,应遵循差异性结构的设计原则,在物理、功能及流程三方面,保证各通道、模块之间或系统功能之间存在充分独立性.本设计采用硬件/软件差异性设计原则.通过硬件上选择不同处理器架构,同时选择不同的操作系统、不同的编译器、不同的编程语言及开发环境,从而降低共因失效.改进的安全计算机平台基于2乘2取2结构,如图2所示.图2主要分为3个部分:逻辑处理单元(LogiProcessingUnit,LPU),外部设备管理单元(Pe-ripheralManagementUnit,PMU),容错和安全管理单元(FaultTolerantandSafetyManagement,FTSM)[6-7].其中,逻辑处理单元由2组共4个LPU构成,每2个LPU构成1组2取2结构的一系,两系构成2乘2取2结构.每一系2个LPU一个基于X86架构,另一个基于PowerPC架构.容错和安全管理单元由2个或多个FTSM构成,在满足安全性的前提下,优先选择2个FTSM的方案,即2取2(1-out-of-2,1oo2)结构的FTSM方案,2个FTSM一个基于ARM架构使用C语言实现,另一个FPGA使用VeriLogHDL实现.外部设备管理单元由2组共4个PMU构成,每2个PMU构成1组2取2结构的一系,两系构成热备(2乘)2取2冗余结构或并行2取2冗余结构.每一系的2个PMU一个基于X86架构,另一个基于PowerPC架构.根据上述信号系统的功能分析,通用安全计算机平台应可以配置成核心主机型配置、远程外设型配置两种形式,见图3和图4.典型的核心主机型配置包括逻辑处理单元、外部设备管理单元、容错和安全管理单元3个部分及安全通信内网VCIN.典型的远程外设型配置时,包括外部设备管理单元、容错和安全管理单元两个部分及安全通信内网VCIN。

2安全计算机平台软件结构改进

由于列控系统采用不同软件来实现不同的功能,要将几台设备完成的功能集成到一台设备,在时间上和内存上需要对各任务进行隔离,使得同一时间只有特定的任务在特定的内存中运行.这样在逻辑上没有破坏现有控制系统的结构,只是在硬件上运行于一台计算机中,能够在完成规定功能的基础上减少硬件的投资并提高了安全性.本文采用时空隔离的方法来实现通用型安全计算机平台软件的集成,并且基于实时操作系统来开发,在便于维护的同时还可以提高软件的可靠性和稳定性.1)时间隔离方面,采用了两级调度结构,如图5所示.底层使用时间片隔离的方法使子系统间不能相互干扰;上层在子系统内部使用实时调度算法以提高系统的效率.测量时间并计算参数时需要使用松弛迭代的路径测试方法,并利用VxWorks操作系统提供的时间功能.2)空间隔离方面,也采用了两级调度结构,如图6所示.底层使用MMU的功能对各子系统设置独立的地址空间,使得子系统间不能相互干扰;上层在子系统内部使用改进的动态内存分配算法best-fit,大块内存和小块内存的分配方式不同,以提高系统的效率并减少碎片化。在内存管理上,采用两级内存管理来提高内存的使用效率和管理的实时性.子系统内部采用改进的大小内存块的best-fit算法进行动态内存管理,保证了内存分配的实时性和低碎片性.在子系统间采用基于MMU的页内存管理方式,保证了实时性和隔离性.

3安全计算机平台实验验证

3.1硬件结构验证

3.1.1安全性指标计算本文采用挪威工业科技研究院(SINTEF)开发的PDS(基于计算机的安全系统)方法对改进的硬件结构安全性指标进行计算,该方法遵循IEC61508标准体系的相关规定和结论.计算过程在本文中不再赘述,详细步骤可参见文献[9].量化指标用每小时危险失效的平均频率(AverageFrequencyofaDangerousFailurePerHour,PFH)来表示.PFHSYS表示系统每小时危险失效的平均频率,其中有6项参数是未定的:诊断覆盖率DC,冗余结构修正因子CMooN(M-out-of-N,表示“N取M”;M≤N,均为自然数),失效率λ(FTSM单板的失效率为λFTSM),远程外设配置个数i,功能测试时间间隔τ,共因失效因子β.其中共因失效因子β根据计算,在本文中取1%.为了简化并考虑到经济效益,FTSM冗余结构采用loo2.而远程外设配置个数与实际应用相关,不能通过技术等手段限制.PFHSYS是通过计算共同提供安全功能的所有子系统的危险失效概率,并把这些值相加.用PFHL、PFHP、PFHR分别表示逻辑子系统、外设管理子系统及远程外设的每小时危险失效的平均频率,相加得出下式。

3.1.2硬件结构实验验证图8硬件实验平台Fig.8Hardwareexperimentplatform在实验室以核心主机的安全计算机平台为架构搭建的测试平台,采用COTS的硬件和软件资源.搭建一系1oo2结构逻辑处理单元和一系1oo2结构的外部设备管理单元,以及1个1oo2结构的FTSM如图8所示.搭建安全计算机硬件测试平台,先进行逻辑处理单元和FTSM的功能的测试,然后进行外部设备管理单元的安全通信功能测试.1)内部安全通信功能实验.具体实验方法是两台PU机向ARM、FPGA发送测试数据,通过PU机观察ARM、FPGA返回的数据.以验证PU机、ARM、FPGA的之间安全通信帧结构的具体功能.如图9所示,实验返回了两组数,通过地址标识判断,FPGA的返回数据为:00000b0d0000aaaa99dadf6bdc757674.ARM的返回数据为:00000b0e0000aaaa00c466f2c19247e4.前2字节为序列号,接着2字节为地址标识,接着4字节为数据位,最后8字节为通过计算前面8字节数据所得64位CRC检验码.这两组校验码均与通过Mi-crosoftVisualC++6.0计算的结果相一致.由序列号的定义、地址标识的定义和CRC检验码计算结果可知,ARM、FPGA返回的数据正确.本次实验验证了ARM板、FPGA板的序列号生成功能、地址标识功能、CRC检验编码功能的正确性.2)容错和安全管理实验.FTSM的工作流程是:首先通过内网与2台PU机连接,FTSM上电启动后等待PU1、PU2两台PU机的数据.然后对接受到的2台PU机数据进行数据解帧,CRC校验检查、地址标检查、两机数据时序约束、两机数据比较、序列号检查等数据正确性检查.最后对上述结果进行组帧输出.下面进行FTSM的功能实验:具体实验方法是PU1、PU2分别在下述6种情况下向FP-GA、ARM发送测试数据,在PU1、PU2上观察FP-GA、ARM的返回数据,以验证1oo2结构FTSM的功能,实验结果如表1所示.表1中,实验3与实验2共同验证了比较检查功能和CRC校验功能可以对正确与错误的输入做出相应的输出;实验4与实验2共同验证了目标地址标识检查功能和CRC校验功能可以对正确与错误的输入做出相应的输出;实验6与实验1共同验证了FPGA、ARM之间能正确通信,以及2取2结构正确性;实验5验证了时序约束功能.3)外部设备管理单元安全通信实验.为保证外部设备管理单元的通信安全,对通信的数据采用监听诊断,引入SPAN(SwitchedPortAnalyzer,交换端口分析仪)技术,通过实验测试,验证该技术既可以实现对数据监听,又能应用到外部设备管理单元.实验包括在Catalyst2950交换机中,实现第三方设备监控通信,以及自身设备监控通信,如图10所示.第三方监控通信是A计算机向C计算机发送,在B计算机上,使用抓包获取数据,能够获取源端口发往目标端口的镜像数据.通过SPAN镜像的数据与A发往C的数据一致,达到实验预期效果,说明B计算机能监控A与C之间的通信,实现B计算机监督A计算机输入输出的功能.自身设备监控通信是使带入口通信转发功能的目标端口对应B计算机向源端口对应C计算机发送数据.在带入口通信转发功能的目标端口,抓包能够获取B发往C的数据.说明了目标端口既可以实现实数的输入转发,又可以实现对源端口的监控.

3.2软件集成验证

为了验证提出的软件改进,在CTCS-3列控系统中选取RBC,TCC,TSRS进行集成.其中RBC由3个任务组成:列车注册、列车注销和MA生成;TCC有一个任务:发送调度信息.TSRS由两个任务组成:临时限速提示激活和重复提示.软件的时间参数(总周期和各子系统隔离时间)和空间参数(各子系统隔离内存大小)的确定方法如下.

3.2.1时空参数的确定时间参数有两个,即分配给每个子系统的隔离时间和每个程序执行所需时间,隔离时间可以通过执行所需时间计算出来,而执行所需时间可利用软件测试的方法和VxWorks的实时性来确定.因此,计算出RBC、TCC及TSRS的一个周期内分配的时间分别为220ms,44ms,44ms.空间参数利用VxWorks集成开发环境Work-Bench的memoryanalyzer工具,可知每个子系统的最大内存使用情况.再根据以下内存分配算法进行放大:1)已知任务内存集合{Mi|1≤i≤m}为任务正常运行时所需要的内存大小.2)令ΔM=min{Mi|1≤i≤m}.3)以ΔM为基准对内存集{Mi|1≤i≤m}进行归一化处理,任务τi的内存Mi进行归一化处理后的结果是ni.定义处理后的结果为{ni|1≤i≤m}.4)计算{ni+ni+1|1≤i≤m,令nm+1=n1},取最大值N=max{ni+ni+1}.5)计算出所需内存的总大小为L=ΔM×N,划分成N个ΔM大小的内存块.这样计算可得所需全部内存为60KB.从时间和空间两方面都知道具体分配参数后,就可以编程实现.

3.2.2编程实现所采用的软件平台为VxWorks-cert,之后模拟RBC,TCC,TSRS的功能,并通过编程予以实现,观察各子系统状态如图11所示。图11中图(a)~(d)表示正常情况下各子系统运行;图11(e)表示在TSRS程序中任意行加入一个比较长的延时,使在分配的时间内不能完成功能.TSRS无法在分配时间内完成,没有发送OK返回值,RBC、TCC没有检验到OK返回值,输出错误信息.图11(f)表示在TSRS任意程序中任意行加入比较大的内存分配,使得分配给它的内存不够使用.而由于内存出错,TSRS无法完成任务,均输出错误信息.实验结果说明了通过编程实现RBC、TCC及TSRS的功能的可行性,达到了将几台列控系统设备的软件功能进行集成的预期目的.该设计首先确定程序的最坏执行时间,然后计算出总周期和各子系统的隔离时间,最后按照所需内存安排静态内存分配.图11也证明了这种方法能够保证程序在时间和空间的确定性,使其具有良好的安全性.

4结论

本文主要针对目前CTCS-3级列控系统安全计算机软件和硬件的集成提出一套方案,包括基于差异性结构的硬件平台以降低共因失效,基于两级调度的软件架构以实现时空隔离,并分别进行了理论计算和实验验证.实验结论如下.1)利用PDS方法计算改进硬件结构的安全计算机平台的安全性指标,在配置合适的参数条件下能够满足安全完整性等级SIL-4.并且通过实验验证了改进的硬件结构能够实现内部安全通信、容错和安全管理及外部设备管理单元安全通信的功能.2)提出软件集成设计通过理论计算和软件测试的方法,确定时间参数和空间(内存)参数,并通过编程实现RBC、TCC和TSRS的功能.程序运行结果表明在满足基本功能的条件下,还实现预期的时间保护和空间保护的功能.

作者:郑升曹源张玉琢景浩胡华单位:中国铁路总公司运输局北京交通大学轨道交通运行控制系统国家工程研究中心