CN117873514A - 用于安全计算机平台的在线更新系统、方法、设备及介质 - Google Patents
用于安全计算机平台的在线更新系统、方法、设备及介质 Download PDFInfo
- Publication number
- CN117873514A CN117873514A CN202311702296.7A CN202311702296A CN117873514A CN 117873514 A CN117873514 A CN 117873514A CN 202311702296 A CN202311702296 A CN 202311702296A CN 117873514 A CN117873514 A CN 117873514A
- Authority
- CN
- China
- Prior art keywords
- execution unit
- updating
- image data
- data
- main control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000006854 communication Effects 0.000 claims abstract description 18
- 238000004891 communication Methods 0.000 claims abstract description 16
- 230000005540 biological transmission Effects 0.000 claims description 13
- 230000007246 mechanism Effects 0.000 claims description 13
- KKIMDKMETPPURN-UHFFFAOYSA-N 1-(3-(trifluoromethyl)phenyl)piperazine Chemical compound FC(F)(F)C1=CC=CC(N2CCNCC2)=C1 KKIMDKMETPPURN-UHFFFAOYSA-N 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 4
- 238000013475 authorization Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 239000000306 component Substances 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种用于安全计算机平台的在线更新系统、方法、设备及介质,该在线更新系统包括:更新工具,用于存放需更新的软件以及管理软件的升级;通信转发部分,设在主控单元中,用于通过以太网与更新工具交互信息以及通过CAN总线向执行单元转发信息;各单元在线更新部分,设在各执行单元中,用于执行单元安全可靠的在线更新;其中所述更新工具对N个使用相同镜像的执行单元进行远程更新时,只发送一份镜像数据给主控单元,所述主控单元只广播一份镜像数据至CAN总线,所有执行单元根据广播目标字段识别是否接收镜像数据。与现有技术相比,本发明具有大大减少了通信次数,大幅提升在线更新的效率等优点。
Description
技术领域
本发明涉及列车信号控制系统,尤其是涉及一种用于安全计算机平台的在线更新系统、方法、设备及介质。
背景技术
安全计算机平台是一种故障导向安全的底层平台,具有良好的通用性,在不改变硬件和核心软件的基础上,仅通过应用软件开发和硬件配置就能构建不同的应用系统,是铁路信号系统的核心组成部分。铁路信号系统投入使用后,难免遇到功能扩展和软件缺陷,需要进行软件更新。
经过检索中国CN111273919A中公开了一种支持软件批量远程更新的安全计算机平台,该平台包括通信单元和执行单元,上位机维护工具连接通信单元,通信单元通过执行单元控制被控对象。该发明主要实现的上位机维护工具与执行单元的一对一软件更新,即对同一类型的N个执行单元软件批量更新时,上位机维护工具需要发送N份相同的软件更新包,通信单元需要将相同的N份软件更新包转发至各个执行单元,这种方式存在以太网及CAN总线上冗余数据过多等弊端,影响通信效率。
因此如何使更新过程中减少通信次数,从而大幅提升在线更新的效率,成为需要解决的技术问题。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种用于安全计算机平台的在线更新系统、方法、设备及介质。
本发明的目的可以通过以下技术方案来实现:
根据本发明的第一方面,提供了一种用于安全计算机平台的在线更新系统,所述安全计算机平台包括主控单元和执行单元,该在线更新系统包括:
更新工具,用于存放需更新的软件以及管理软件的升级;
通信转发部分,设在主控单元中,用于通过以太网与更新工具交互信息以及通过CAN总线向执行单元转发信息;
各单元在线更新部分,设在各执行单元中,用于执行单元安全可靠的在线更新;
其中所述更新工具对N个使用相同镜像的执行单元进行远程更新时,只发送一份镜像数据给主控单元,所述主控单元只广播一份镜像数据至CAN总线,所有执行单元根据广播目标字段识别是否接收镜像数据。
作为优选的技术方案,所述更新工具在发送非广播镜像数据时,目的端口设置为主控单元端口号,TFTP的DATA字段填充为非广播镜像数据。
作为优选的技术方案,所述更新工具在发送广播镜像数据时,目的端口设置为0xAA,TFTP的DATA字段填充为广播目标字段加镜像数据。
作为优选的技术方案,所述广播目标字段设置如下:
将镜像数据报发给某个NodeID对应的执行单元,则将13bytes广播目标字段的第N个字节的M位bit位置为1,其中N=(NodeID-1)/8,M=(NodeID-1)%8,其中%为取余运算符。
作为优选的技术方案,所述主控单元以太网上收到更新工具的消息,如果目的端口号为0xAA,所述主控单元首先将该消息拷贝至内存一份,然后将数据打包成CAN帧,并将目的CAN地址改成0x7F,以广播的形式在CAN总线上转发给所有执行单元。
作为优选的技术方案,所述主控单元对于在CAN总线从各执行单元收到的广播数据回复消息,所述主控单元将所有消息进行汇总,如果同一类型所有执行单元均已成功接收广播数据,则回复更新工具获取下一包镜像数据;否则对接收失败的执行单元执行重发机制。
作为优选的技术方案,所述重发机制具体为:
如果在T时间内没有收到某个执行单元的请求或者回复,重发数据包,累计Y次未收到回复,则给出错误提示信息,并将该执行单元剔除执行单元组,继续后续操作。
作为优选的技术方案,所述执行单元在CAN总线收到目的CAN地址为0x7F的广播镜像数据,判断DATA段的广播目标字段与本执行单元NodeID是否匹配,匹配则接收该广播镜像数据,并回复ACK;不匹配则丢弃该广播镜像数据。
根据本发明的第二方面,提供了一种采用所述用于安全计算机平台的在线更新系统的在线更新方法,包括以下步骤:
步骤S1,更新工具将此次广播远程更新执行单元组信息通过以太网发给主控单元;
步骤S2,主控单元与执行单元组进行交互,判断执行单元组当前工作状态是否满足远程更新条件,若满足执行步骤步骤S3,否则结束更新过程;
步骤S3,主控单元向更新工具请求镜像数据描述信息,同时破坏执行单元组的远程更新标识;
步骤S4,执行单元组各单元破坏远程更新标志后,重启进入更新模式,给主控单元发送开始传输镜像数据描述信息请求;
步骤S5,主控单元判断Timeout时间内是否收到执行单元组中某执行单元的镜像数据描述信息请求,若没收到则将该执行单元剔出执行单元组;
若主控单元收到执行单元组传输的镜像数据描述信息请求后,将其回复给执行单元;
步骤S6,执行单元组收到传输镜像数据描述信息回复后,给主控单元发送开始传输镜像数据请求;
步骤S7,主控单元判断是否收到执行单元组传输镜像请求,如果收到则向更新工具发送传输镜像请求,如果未收到某个执行单元的传输镜像请求,则对该执行单元执行主控单元重发机制;
步骤S8,更新工具将第n包广播镜像数据发送给主控单元,目的端口设置为0xAA,TFTP的DATA字段填充为广播目标字段加第n包广播镜像数据;
步骤S9,主控单元先将第n包广播镜像数据拷贝至内存一份,然后将目的CAN地址改成0x7F,以广播的形式通过CAN总线转发给所有执行单元;
步骤S10,执行单元根据广播目标字段,判断本执行单元是否需要接收,匹配则接收并回复ACK,不匹配则丢弃;
步骤S11,主控单元统计执行单元组回复的ACK信息,如果执行单元组全部回复ACK,主控单元通知更新工具发送下一包广播镜像数据;如果某个执行单元未回复ACK,则执行主控单元重发机制;
步骤S12,主控单元重复步骤S8至步骤S11发送第1到AllPackNum包镜像数据,直至所有广播镜像数据发送完毕;
步骤S13,执行单元若收到了有效的AllPackNum包数据,则验证AllCRC,回复操作状态信息;
步骤S14,执行单元接收到Flash擦写请求时,覆盖旧镜像,回读镜像并验证AllCRC,恢复远程更新标志,回复操作状态信息,自动重启。
作为优选的技术方案,所述步骤S2中的交互信息包括模块功能模式、熔丝状态和更新镜像的授权状态。
作为优选的技术方案,所述镜像数据描述信息包括镜像的数据总包数、各包数据的大小、各包镜像数据的CRC(nPackCRC)和镜像数据的总校验字(AllCRC)。
作为优选的技术方案,所述步骤S10,在匹配接收后,通过双通道校验校核字信息确保镜像分块的完整性、真实性和有效性;若非重复数据,则按照PackNum序号直接索引到数据存放地址,并将数据储存在该地址。
根据本发明的第三方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现所述的方法。
根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述的方法。
与现有技术相比,本发明具有以下优点:
1)本发明对N个使用相同镜像的执行单元进行远程更新时,更新工具只发送一份镜像数据给主控单元,主控单元只广播一份镜像数据(带广播目标字段)至CAN总线,所有执行单元根据广播目标字段识别是否接收镜像数据,本发明大大利用了通信带宽,并大大减少了通信次数,大幅提升在线更新的效率,实现直正意义上的并行批量更新。
2)本发明在对镜像文件进行分块传输前,执行单元收到此次镜像更新的所有信息,数据总包数(AllPackNum)、各包数据的大小(size)及各包镜像数据的CRC(nPackCRC)、更新数据的总校验字(AllCRC),这样更便于校验收到的数据是否是期望的数据,便于计算收到的数据应该存放的内存位置,有利于快速处理重复数据,有利于快速保存数据,在保证安全可靠的同时,提升了效率;由于这种机制不要求收到的数据是顺序的,能更有效判断数据接收是否完成,使整个接收数据过程更灵活高效。
3)本发明在接收到每一个数据包进行校验,整个镜像进行校验,写入FLASH后再回读校验,在重启之前保证了传输过程中的异常不会破坏到旧镜像文件,写FLASH失效时能及时发现并回退,提升了整个系统的健壮性。
附图说明
图1为本发明安全计算机平台及更新工具结构图;
图2为本发明写通信过程图;
图3为本发明读通信过程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本发明涉及的安全计算机平台采用2oo2的安全架构,基本结构和边界如图1所示,安全计算机平台由主控单元和执行单元构成,主控单元通过以太网对外通信,各单元间通过CAN总线进行内部通信,其中主控单元是冗余结构,用户可以将软件布署在执行单元上,同一个执行单元的两个CPUa和CPUb上是同样的软件,不同的执行单元之间可以相同的软件也可以是不同的软件。对安全计算机平台集成上层应用,可以构成完整的信号系统板卡,完成对信号机、道岔、应答器等被控对象的控制。
本发明所述的在线更新是安全计算机平台的一个功能模块,是可执行程序的一部分。包括三个部分:第一部分是更新工具,用于用户存放需更新的软件以及管理软件的升级;第二部分是通信转发部分,包含于主控单元中,通过以太网和更新工具交互信息以及通过CAN总线向执行单元转发信息。第三部分是各单元在线更新部分,包含于每个执行单元(主控单元以及执行单元)中,用于执行单元安全可靠的在线更新,交互流程如图2和3所示。
1.更新工具
在发送非广播镜像数据时,目的端口应设置为主控单元端口号,TFTP的DATA字段应填充为非广播镜像数据;
在发送广播镜像数据时,目的端口应设置为0xAA,TFTP的DATA字段应填充为广播目标字段(13bytes)+镜像数据。
广播目标字段设置如下:需要将镜像数据报发给某个NodeID对应的执行单元则将13bytes字段的第((NodeID-1)/8)个字节的((NodeID-1)%8)位bit位置为1,其中%为取余运算符。广播目标字段(13bytes)采用大端模式。例如:1号机笼槽道号码为9的1_9SVCUCPUB的nodeid=(9+3)*2+1=25,广播目标字段为:0x00 00 0001 00 00 00 00 00 00 0000 00。
2.主控单元
对于在以太网上收到更新工具的消息,如果目的端口号为0xAA,主控单元首先将该消息拷贝至内存一份,然后将数据打包成CAN帧,并将目的CAN地址改成0x7F,以广播的形式在CAN总线上转发给所有执行单元。该类消息为一对多转发,仅用于发送同一类执行单元的镜像数据。
对于在CAN总线从各执行单元收到的广播数据回复消息,主控单元应将所有消息进行汇总,如果同一类型所有执行单元均已成功接收广播数据,则回复更新工具获取下一包镜像数据;否则对接收失败的执行单元执行重发机制。
重发机制:如果在200ms内没有收到某个执行单元的请求或者回复,重发数据包,累计3次未收到回复,则给出错误提示信息,并将该执行单元剔除执行单元组,继续后续操作。此处200ms、3次仅为示例值。
3.执行单元
对于在CAN总线收到目的CAN地址为0x7F的广播镜像数据,执行单元判断DATA段的前13bytes(广播目标字段)与本执行单元NodeID是否匹配,匹配则接收该广播镜像数据,并回复ACK;不匹配则丢弃该广播镜像数据。
与现有技术相比,现有技术中对N个执行单元更新,更新工具发送N份相同镜像数据至主控单元,每份镜像数据目的端口号根据执行单元的NodeID设置;主控单元转发N份相同镜像数据至执行单元;执行单元根据镜像数据目的端口号判断是否接收镜像数据。本发明中更新工具仅需要发送一份数据至主控单元,该份镜像数据中带广播目的字段,广播目的字段根据待更新的执行单元组设置;主控单元充分利用网络或CAN总线组播或广播的性质,只广播一份镜像数据;执行单元根据镜像数据中的广播目的字段判断是否接收镜像数据。本发明大大利用了通信带宽,并大大减少了通信次数,大幅提升在线更新的效率,实现直正意义上的并行批量更新。
以上是关于系统实施例的介绍,以下通过方法实施例,对本发明所述方案进行进一步说明。
本发明一种安全可靠的执行单元软件在线更新方法,具体包括以下步骤:
步骤1,更新工具将此次广播远程更新执行单元组信息通过以太网发给主控单元。例如此次广播更新A、B、C共3个执行单元,这3个执行单元的镜像数据相同。后文中执行单元组为A、B、C这3个执行单元总称。
步骤2,主控单元与执行单元组进行交互,判断执行单元组当前工作状态是否满足远程更新条件,交互信息包括不仅限于模块功能模式、熔丝状态、更新镜像的授权状态等。执行单元组满足条件则转至步骤3,不满足条件则结束更新过程。
步骤3,主控单元向更新工具请求镜像数据描述信息,包括镜像的数据总包数(AllPackNum)、各包数据的大小(size)及CRC(nPackCRC)、更新数据的总校验字(AllCRC)等信息,同时破坏执行单元组的远程更新标识。
步骤4,执行单元组各单元破坏远程更新标志后,重启进入更新模式,给主控单元发送开始传输镜像数据描述信息请求。
步骤5,主控单元判断Timeout时间内是否收到执行单元组中某执行单元的镜像数据描述信息请求,若没收到则将该执行单元剔出执行单元组,若主控单元收到执行单元组的传输镜像数据描述信息请求后,将镜像的数据总包数(AllPackNum)、各包数据的大小(size)及CRC(nPackCRC)、更新数据的总校验字(AllCRC)等信息回复给执行单元。
步骤6,执行单元组收到传输镜像数据描述信息回复后,给主控单元发送开始传输镜像数据请求。
步骤7,主控单元判断是否收到执行单元组传输镜像请求,如果收到则向更新工具发送传输镜像请求,如果未收到某个执行单元的传输镜像请求,则对该执行单元执行上述主控单元重发机制。
步骤8,更新工具将第n包广播镜像数据发送给主控单元,目的端口设置为0xAA,TFTP的DATA字段填充为广播目标字段(13bytes)+第n包广播镜像数据
步骤9,主控单元先将第n包广播镜像数据拷贝至内存一份,然后将目的CAN地址改成0x7F,以广播的形式通过CAN总线转发给所有执行单元
步骤10,执行单元根据广播目标字段,判断本执行单元是否需要接收,匹配则接收并回复ACK,不匹配则丢弃。在匹配接收后,通过双通道校验校核字信息(CheckWord=SessionID^nPackCRC)确保镜像分块的完整性、真实性和有效性;若非重复数据,则按照PackNum序号可以直接索引到数据存放地址,并将数据存在在该位置。
步骤11,主控单元统计执行单元组回复的ACK信息,如果执行单元组全部回复ACK,主控单元通知更新工具发送下一包广播镜像数据;如果某个执行单元未回复ACK,则执行上述主控单元重发机制。
步骤12,主控单元重复步骤8至步骤11发送第1到AllPackNum包镜像数据,直至所有广播镜像数据发送完毕。
步骤13,执行单元若收到了有效的AllPackNum包数据,则验证AllCRC,回复操作状态信息。
步骤14,执行单元接收到Flash擦写请求时,覆盖旧镜像,回读镜像并验证AllCRC,恢复远程更新标志,回复操作状态信息,自动重启。
如图2所示,本发明写流程具体如下:
(1)更新工具作为TFTP客户端对某一类执行单元组(ExeUnit_TypeN)发送写请求WRQ,将请求目的端口设置为0xAA,TFTP消息的DATA字段包含广播目的字段;
(2)安全计算机平台作为TFTP服务器端对收到的WRQ/DATA,分析消息目的端口为0xAA则类型是ExeUnit_TypeN,则将数据打包成CAN帧,并将消息帧目的CAN地址改成0x7F发送出去;
(3)ExeUnit_TypeN执行单元组收到WRQ/DATA后分别回复ACK信息给主控单元。
(4)主控单元对于从ExeUnit_N或ExeUnit_TypeN执行单元接收到ACK进行汇总处理,并回复ACK消息给更新工具;
(5)更新工具收到ACK后,发送DATA;
(6)主控单元收到DATA后,同(2);
(7)执行单元收到DATA后,同(3);
(8)同(4)。
如图3所示,本发明读流程具体如下:
(1)更新工具作为TFTP客户端对某一类执行单元组(ExeUnit_TypeN)发出RRQ读请求,将请求目的端口设置为0xAA,TFTP消息的DATA字段包含广播目的字段;
(2)主控单元作为TFTP服务器端对收到的RRQ读请求,分析消息类型是ExeUnit_TypeN,则将数据打包成CAN帧,并将消息目的CAN地址改成0x7F发送出去;
(3)ExeUnit_TypeN执行单元分别回复DATA信息;
(4)主控单元从ExeUnit_TypeN执行单元接收到DATA信息,回复给ExeUnit_TypeN执行单元ACK消息;然后对DATA信息进行汇总,若相同,则只发送一份DATA给更新工具;若不同则将差异的DATA均发给更新工具;
(5)更新工具收到DATA后,发送ACK。
本发明实施例还提供一种电子设备包括中央处理单元(CPU),其可以根据存储在只读存储器(ROM)中的计算机程序指令或者从存储单元加载到随机访问存储器(RAM)中的计算机程序指令,来执行各种适当的动作和处理。在RAM中,还可以存储设备操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
设备中的多个部件连接至I/O接口,包括:输入单元,例如键盘、鼠标等;输出单元,例如各种类型的显示器、扬声器等;存储单元,例如磁盘、光盘等;以及通信单元,例如网卡、调制解调器、无线通信收发机等。通信单元允许设备通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元执行上文所描述的各个方法和处理,例如本发明方法。例如,在一些实施例中,本发明方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元而被载入和/或安装到设备上。当计算机程序加载到RAM并由CPU执行时,可以执行上文描述的本发明方法的一个或多个步骤。备选地,在其他实施例中,CPU可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行本发明方法。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种用于安全计算机平台的在线更新系统,所述安全计算机平台包括主控单元和执行单元,其特征在于,该在线更新系统包括:
更新工具,用于存放需更新的软件以及管理软件的升级;
通信转发部分,设在主控单元中,用于通过以太网与更新工具交互信息以及通过CAN总线向执行单元转发信息;
各单元在线更新部分,设在各执行单元中,用于执行单元安全可靠的在线更新;
其中所述更新工具对N个使用相同镜像的执行单元进行远程更新时,只发送一份镜像数据给主控单元,所述主控单元只广播一份镜像数据至CAN总线,所有执行单元根据广播目标字段识别是否接收镜像数据。
2.根据权利要求1所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述更新工具在发送非广播镜像数据时,目的端口设置为主控单元端口号,TFTP的DATA字段填充为非广播镜像数据。
3.根据权利要求1所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述更新工具在发送广播镜像数据时,目的端口设置为0xAA,TFTP的DATA字段填充为广播目标字段加镜像数据。
4.根据权利要求3所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述广播目标字段设置如下:
将镜像数据报发给某个NodeID对应的执行单元,则将13bytes广播目标字段的第N个字节的M位bit位置为1,其中N=(NodeID-1)/8,M=(NodeID-1)%8,其中%为取余运算符。
5.根据权利要求1所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述主控单元以太网上收到更新工具的消息,如果目的端口号为0xAA,所述主控单元首先将该消息拷贝至内存一份,然后将数据打包成CAN帧,并将目的CAN地址改成0x7F,以广播的形式在CAN总线上转发给所有执行单元。
6.根据权利要求1所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述主控单元对于在CAN总线从各执行单元收到的广播数据回复消息,所述主控单元将所有消息进行汇总,如果同一类型所有执行单元均已成功接收广播数据,则回复更新工具获取下一包镜像数据;否则对接收失败的执行单元执行重发机制。
7.根据权利要求6所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述重发机制具体为:
如果在T时间内没有收到某个执行单元的请求或者回复,重发数据包,累计Y次未收到回复,则给出错误提示信息,并将该执行单元剔除执行单元组,继续后续操作。
8.根据权利要求1所述的一种用于安全计算机平台的在线更新系统,其特征在于,所述执行单元在CAN总线收到目的CAN地址为0x7F的广播镜像数据,判断DATA段的广播目标字段与本执行单元NodeID是否匹配,匹配则接收该广播镜像数据,并回复ACK;不匹配则丢弃该广播镜像数据。
9.一种采用权利要求1所述用于安全计算机平台的在线更新系统的在线更新方法,其特征在于,包括以下步骤:
步骤S1,更新工具将此次广播远程更新执行单元组信息通过以太网发给主控单元;
步骤S2,主控单元与执行单元组进行交互,判断执行单元组当前工作状态是否满足远程更新条件,若满足执行步骤步骤S3,否则结束更新过程;
步骤S3,主控单元向更新工具请求镜像数据描述信息,同时破坏执行单元组的远程更新标识;
步骤S4,执行单元组各单元破坏远程更新标志后,重启进入更新模式,给主控单元发送开始传输镜像数据描述信息请求;
步骤S5,主控单元判断Timeout时间内是否收到执行单元组中某执行单元的镜像数据描述信息请求,若没收到则将该执行单元剔出执行单元组;
若主控单元收到执行单元组传输的镜像数据描述信息请求后,将其回复给执行单元;
步骤S6,执行单元组收到传输镜像数据描述信息回复后,给主控单元发送开始传输镜像数据请求;
步骤S7,主控单元判断是否收到执行单元组传输镜像请求,如果收到则向更新工具发送传输镜像请求,如果未收到某个执行单元的传输镜像请求,则对该执行单元执行主控单元重发机制;
步骤S8,更新工具将第n包广播镜像数据发送给主控单元,目的端口设置为0xAA,TFTP的DATA字段填充为广播目标字段加第n包广播镜像数据;
步骤S9,主控单元先将第n包广播镜像数据拷贝至内存一份,然后将目的CAN地址改成0x7F,以广播的形式通过CAN总线转发给所有执行单元;
步骤S10,执行单元根据广播目标字段,判断本执行单元是否需要接收,匹配则接收并回复ACK,不匹配则丢弃;
步骤S11,主控单元统计执行单元组回复的ACK信息,如果执行单元组全部回复ACK,主控单元通知更新工具发送下一包广播镜像数据;如果某个执行单元未回复ACK,则执行主控单元重发机制;
步骤S12,主控单元重复步骤S8至步骤S11发送第1到AllPackNum包镜像数据,直至所有广播镜像数据发送完毕;
步骤S13,执行单元若收到了有效的AllPackNum包数据,则验证AllCRC,回复操作状态信息;
步骤S14,执行单元接收到Flash擦写请求时,覆盖旧镜像,回读镜像并验证AllCRC,恢复远程更新标志,回复操作状态信息,自动重启。
10.根据权利要求9所述的在线更新方法,其特征在于,所述步骤S2中的交互信息包括模块功能模式、熔丝状态和更新镜像的授权状态。
11.根据权利要求9所述的在线更新方法,其特征在于,所述镜像数据描述信息包括镜像的数据总包数、各包数据的大小、各包镜像数据的CRC(nPackCRC)和镜像数据的总校验字(AllCRC)。
12.根据权利要求9所述的在线更新方法,其特征在于,所述步骤S10,在匹配接收后,通过双通道校验校核字信息确保镜像分块的完整性、真实性和有效性;若非重复数据,则按照PackNum序号直接索引到数据存放地址,并将数据储存在该地址。
13.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求9~12中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求9~12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311702296.7A CN117873514A (zh) | 2023-12-12 | 2023-12-12 | 用于安全计算机平台的在线更新系统、方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311702296.7A CN117873514A (zh) | 2023-12-12 | 2023-12-12 | 用于安全计算机平台的在线更新系统、方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117873514A true CN117873514A (zh) | 2024-04-12 |
Family
ID=90595759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311702296.7A Pending CN117873514A (zh) | 2023-12-12 | 2023-12-12 | 用于安全计算机平台的在线更新系统、方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117873514A (zh) |
-
2023
- 2023-12-12 CN CN202311702296.7A patent/CN117873514A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS5866448A (ja) | パケット交換における誤り検出方式 | |
CN106254238B (zh) | 一种数据传输方法、集中控制器和通信装置 | |
US11843477B2 (en) | Anomaly determination method, anomaly determination device, and recording medium | |
CN110166354B (zh) | 一种包含片上网络容错路由的数据处理系统 | |
CN112769939B (zh) | 一种用于实时通讯的大数据可靠传输方法 | |
US11096087B2 (en) | Control device, control method, computer program product, and communication system | |
CN108111576B (zh) | 一种车地无线传输方法及装置 | |
CN104714862A (zh) | 用于安全和任务关键系统的表决架构 | |
CN114489718A (zh) | 树状连接系统的固件升级方法、装置、设备及存储介质 | |
CN114124669B (zh) | 一种ctc与现车系统互联互通的方法及系统 | |
US9451524B2 (en) | Wireless networking with flexibly-ordered relayers | |
CN114612101A (zh) | 面向连接的可靠链间路由跨链方法及系统 | |
US20050144339A1 (en) | Speculative processing of transaction layer packets | |
CN112003816B (zh) | 数据传输方法、装置、设备及存储介质 | |
CN117873514A (zh) | 用于安全计算机平台的在线更新系统、方法、设备及介质 | |
CN111273919B (zh) | 一种支持软件批量远程更新的安全计算机平台 | |
US20220303362A1 (en) | Method for compressing can-bus data | |
CN116155826A (zh) | 报文收发方法、网络设备、系统和存储介质 | |
CN111464272B (zh) | 数据可靠交互方法、交互系统及磁悬浮列车电磁推进系统 | |
KR101442963B1 (ko) | 통신 장치 및 통신 방법 | |
CN114362893A (zh) | 数据发送方法、数据接收方法、终端及计算机存储介质 | |
CN111638900A (zh) | 一种机车信号设备的iap在线升级方法 | |
CN115257877B (zh) | 车站列控系统及其自动列车监控系统与联锁下位机的接口方法 | |
CN113938494B (zh) | 一种面向大规模物联网场景的链网分割重组方法及系统 | |
US20110222533A1 (en) | Switch apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |