一种信号采集传输系统中链路节点的代码更新方法技术方案

技术编号:13778122 阅读:108 留言:0更新日期:2016-10-01 04:42
本发明专利技术公开了一种信号采集传输系统中链路节点的代码更新方法,包括:将链路节点的代码存储区域划分为原始代码存储区、至少两个更新代码存储区、以及用于存储当前有效代码所对应当前区域标识的代码更新标识区;链路节点代码包括按顺序依次排列的启动程序和应用程序,其中启动程序用于读取代码更新标识区中的当前区域标识,依据该当前区域标识加载对应代码存储区中的应用程序;进行代码更新时,链路节点接收代码数据包,并读取代码数据包中的区域标识,依据区域标识,将代码数据写入相应的代码存储区,代码数据更新成功后,对代码更新标识区中的当前区域标识进行更新。本发明专利技术提供的代码更新方法操作简单,方便快捷,实现成本低,可靠性高。

【技术实现步骤摘要】

本专利技术涉及信号采集传输
,具体涉及一种信号采集传输系统中链路节点的代码更新方法
技术介绍
信号采集传输系统是将一定间隔的水听器,以线列阵型式布置到具有中性浮力的透声保护导管内,由电缆拖在船尾后进行水中目标探测的装置,该装置具有声阵配置不受舰体布置条件限制、声阵孔径大、工作频率低、探测距离远等优势。信号采集传输系统链路节点由高性能低功耗的DSP处理器及水声传感器构成,通过网络相连,被置于透声保护导管内,完成声信号的采集及其他相应的控制等功能。如果链路节点的业务逻辑需要改进,就需要更新DSP处理器中的软件代码。一般情况下,DSP处理器中的代码更新可以通过仿真器或烧片器将软件代码烧录到存储介质中完成,但是,信号采集传输系统的链路节点被放入到了透声保护导管内,且节点个数较多,如果通过上述方式进行代码更新,需将节点从导管内取出,不仅费时费力,而且成本较高。因此,专利技术一种可靠方便的信号采集传输系统链路节点的代码更新方法具有重要的工程使用价值。
技术实现思路
本专利技术提供了一种信号采集传输系统中链路节点的代码更新方法,该方法操作简单,方便快捷,可靠性高,成本低廉,出现错误情况时,易于恢复。一种信号采集传输系统中链路节点的代码更新方法,包括:将链路节
点的代码存储区域划分为原始代码存储区、至少两个更新代码存储区、以及用于存储当前有效代码所对应当前区域标识的代码更新标识区;链路节点代码包括按顺序依次排列的启动程序和应用程序,其中启动程序用于读取代码更新标识区中的当前区域标识,依据该当前区域标识加载对应代码存储区中的应用程序;进行代码更新时,链路节点接收代码数据包,并读取代码数据包中的区域标识,依据区域标识,将代码数据写入相应的代码存储区,代码数据更新成功后,对代码更新标识区中的当前区域标识进行更新。本专利技术中,原始代码存储区和更新代码存储区用于存储实际的链路节点代码,原始代码存储区和更新代码存储区分别设有对应的区域标识,代码更新标识区中用于存储当前有效代码所对应的当前区域标识。在链路节点出厂时,节点代码已被烧录在原始代码存储区,该区域的节点代码的正确性由生产过程中的验证来保证。若代码更新标识区中的当前区域标识为0,则(默认)加载原始代码存储区的应用程序。需要更新链路节点代码时,上位机为节点代码文件计算校验和,并将该校验和添加到节点代码文件的末尾,将上述重新生成的节点代码文件分成一个一个长度固定的代码数据包,并通过网络下发。本专利技术中,链路节点代码分为两部分进行设计,分别为启动程序和应用程序,启动程序主要用于初始化若干基本的硬件婚检,读取代码更新标识区中的当前区域标识,依据当前区域标识,将对应区域的应用程序部分搬运至内存中执行。应用程序用于实现信号采集传输系统中信号的采集及代码更新等业务逻辑。作为优选,启动程序和应用程序分别包括头部和实际代码,头部包括区分启动程序和应用程序的类型标识和实际代码的长度。作为优选,启动程序还用于接收网络下发的启动标识符,并依据启动标识符加载对应代码存储区中的应用程序。当更新的链路节点代码由于某些原因出现故障,导致链路节点无法正常启动时,在链路节点启动过程中,通过网络下发启动标识符,加载对应的代码存储区的应用程序,使链路节点正常启动。例如,代码更新标识区中的当前区域标识为某一更新代码存储区的区域标识,而该更新代码存储区的代码发生故障,可通过网络下发启动标识符,加载原始代码存储区的应用程序,然后采用本专利技术提供的更新方法进行代码的更新,以替换更新代码存储区的代码,消除故障。作为优选,所述更新代码存储区为两个,分别为第一更新代码存储区和第二更新代码存储区。若代码更新标识区中的当前区域标识为0xffffffff或者0xaaaaaaaa,将接收到的代码数据包写入第一更新代码存储区,更新成功后,将代码更新标识区中的当前区域标识更新为0x55555555;若代码更新标识区中的当前区域标识为0x55555555,将接收到的代码数据包写入第二更新代码存储区,更新成功后,将代码更新标识区中的当前区域标识更新为0xaaaaaaaa。更新代码时,已在运行的节点应用程序中的更新代码逻辑将首先读取代码更新标识区中的当前区域标识,如果为0xffffffff,表示首次通过网络更新节点代码,将通过网络接收的节点代码数据包写入第一更新代码存储区。接收完代码数据包后,计算循环冗余校验码的校验和,并将该校验和与收到的校验和进行比对,若比对一致,则代码更新成功。在更新链路节点代码时,由上位机计算节点代码文件的CRC校验和,并将该校验和发送给链路节点,链路节点接收完代码数据包后计算CRC校验和,并与上位机下发的校验和进行比对,结果一致则更新当前区域标识,有效避免了因网络链路传输中的异常情况导致的节点代码文件有误。如果节点代码数据包本身存在错误导致链路节点无法正常启动,可以在启动中,通过网络下发启动标识符,选择从原始代码区域的应用程序启动,保证节点可以正常启动。作为优选,若代码更新标识区中的当前区域标识为0xffffffff,则加载原始代码存储区的应用程序;若代码更新标识区中的当前区域标识为0x55555555,则加载第一更新代码存储区的应用程序;若代码更新标识区中的当前区域标识为0xaaaaaaaa,则加载第二更新代码存储区的应用程序。相较于现有的技术,本专利技术具有以下有益技术效果:(1)对信号采集传输系统链路节点进行代码更新时,无需将链路节点从透声保护导管中取出,即不需要破坏导管,借用系统本身固有的网络通信链路即可完成节点的代码更新,显著降低成本。(2)方便快捷,可以将同一份节点代码同时更新到信号采集传输系统链路中的多个链路节点,只需由上位机控制向哪些需要更新的链路节点发送更新代码数据包即可。(3)可靠性高,不会因为代码更新失败导致系统链路节点无法正常工作。附图说明图1为本专利技术中链路节点的存储区域划分示意图;图2为本专利技术中链路节点应用程序的代码更新流程图;图3为本专利技术中链路节点的启动流程图。具体实施方式下面结合附图,对本专利技术信号采集传输系统中链路节点的代码更新方法做详细描述。如图1所示,链路节点的存储区域被划分为原始代码存储区、第一更新代码存储区、第二更新代码存储区以及代码更新标识区,其中,原始代码存储区、第一更新代码存储区、第二更新代码存储区均用于存储链路节点代码,代码更新标识区存储当前有效代码所对应当前区域标识。如表1所示,链路节点的代码被分成两部分设计,分别是启动代码部分及应用程序代码部分,在链路节点的代码文件中,启动代码与应用程序代码顺序依次排列,启动代码和应用程序代码的结构组成都为一个头部及对应的实际代码。头部中包含类型标识及当前的实际代码长度,类型标识表示该部分程序为启动代码或应用程序代码;代码长度表示该部分程序的实际代码长度值。表1启动代码主要完成如下功能:读取代码更新标识区中的当前有效代码的当前区域标识,如果当前区域标识为0xffffffff,则从原始代码存储区的首地址读取启动代码的头部,获取启动代码的长度值后,偏移该长度,得到应用程序代码的位置,将应用程序搬运到内存中运行;如果当前区域标识为0x55555555,则从第一更新代码存储区的首地址读取启动代码的头部,获取启动代码的长度值后,偏移该长度本文档来自技高网...

【技术保护点】
一种信号采集传输系统中链路节点的代码更新方法,其特征在于,包括:将链路节点的代码存储区域划分为原始代码存储区、至少两个更新代码存储区、以及用于存储当前有效代码所对应当前区域标识的代码更新标识区;链路节点代码包括按顺序依次排列的启动程序和应用程序,其中启动程序用于读取代码更新标识区中的当前区域标识,依据该当前区域标识加载对应代码存储区中的应用程序;进行代码更新时,链路节点接收代码数据包,并读取代码数据包中的区域标识,依据区域标识,将代码数据写入相应的代码存储区,代码数据更新成功后,对代码更新标识区中的当前区域标识进行更新。

【技术特征摘要】
1.一种信号采集传输系统中链路节点的代码更新方法,其特征在于,包括:将链路节点的代码存储区域划分为原始代码存储区、至少两个更新代码存储区、以及用于存储当前有效代码所对应当前区域标识的代码更新标识区;链路节点代码包括按顺序依次排列的启动程序和应用程序,其中启动程序用于读取代码更新标识区中的当前区域标识,依据该当前区域标识加载对应代码存储区中的应用程序;进行代码更新时,链路节点接收代码数据包,并读取代码数据包中的区域标识,依据区域标识,将代码数据写入相应的代码存储区,代码数据更新成功后,对代码更新标识区中的当前区域标识进行更新。2.如权利要求1所述的信号采集传输系统中链路节点的代码更新方法,其特征在于,启动程序还用于接收网络下发的启动标识符,并依据启动标识符加载对应代码存储区中的应用程序。3.如权利要求1或2所述的信号采集传输系统中链路节点的代码更新方法,其特征在于,若代码更新标识区中的当前区域标识为0,则加载原始代码存储区的应用程序。4.如权利要求3所述的信号采集传输系统中链路节点的代码更新方法,其特征在于,启动程序和应用程序分别包括头部和实际代码,头部包括区分启动程序和应用程序的类型标识和实际代码的长度。5.如权利要求4所述的信号采集传输系统中链路节点的代码更新方法...

【专利技术属性】
技术研发人员:周斯忠汤家兴
申请(专利权)人:苏州联视泰电子信息技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1