CN104899064A - 一种脉压导航雷达的双多核dsp的远程智能升级方法 - Google Patents
一种脉压导航雷达的双多核dsp的远程智能升级方法 Download PDFInfo
- Publication number
- CN104899064A CN104899064A CN201510298251.7A CN201510298251A CN104899064A CN 104899064 A CN104899064 A CN 104899064A CN 201510298251 A CN201510298251 A CN 201510298251A CN 104899064 A CN104899064 A CN 104899064A
- Authority
- CN
- China
- Prior art keywords
- radar
- program
- dsp1
- dsp0
- upgrade
- 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
Abstract
本发明公开了一种脉压导航雷达的双多核DSP的智能远程升级方法,所述方法包括:雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
Description
技术领域
本发明涉及多核DSP芯片产品研究领域,尤其涉及一种脉压导航雷达的双多核DSP的远程智能升级方法。
背景技术
在现有应用多核DSP芯片的产品中,升级DSP程序通常是通过仿真器的JTAG接口,在线运行烧写程序把需要升级的程序烧写进给DSP加载程序的FLASH中,该种方法在产品开发初期,是方便的,也是必要的,但是当产品定型后并销售给用户后,由于算法改进或修正程序缺陷等原因要通过DSP的JTAG接口升级程序时,就要把产品外壳打开才能升级程序,而且产品应用的环境主要是相对位置较高的室外平台或大型船只的桅杆上,所以这样升级程序非常不方便,甚至不安全。
综上所述,本申请发明人在实现本申请实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
在现有技术中,现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题。
发明内容
本发明提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
为解决上述技术问题,本申请实施例提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,所述方法包括:
雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;
显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式。
进一步的,所述多核DSP0程序升级模式具体包括:
显控中心首先从数据备份库中读取DSP0的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP0程序升级命令并计时;
多核DSP0 CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
多核DSP0 CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSP0程序升级包,DSP0 CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSP0 CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSP0 CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP0已正确接收升级程序,DSP0将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP0多核程序升级完成命令。
进一步的,显控中心接收到DSP0程序升级成功后,再判断DSP1的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;若DSP1的程序需要升级,则显控中心将控制雷达进入多核DSP1程序升级模式。
进一步的,所述多核DSP1程序升级模式,具体包括:
显控中心首先从数据备份库中读取DSP1的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP1程序升级命令并计时;
雷达的多核DSP1 CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
雷达的多核DSP1 CPU若收到正确的升级命令,并通过高速通信接口HyperLink向DSP1 CPU转发该升级命令,DSP1若正确接收,解析该命令,则通过HyperLink向DSP1 CPU发送准备好命令,DSP1再给显控中心回复一个DSP1 CPU正确接收程序升级并进入程序升级模式命令;
显控中心开始给雷达发送DSP1程序升级包,雷达的DSP1 CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSP1 CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSP1 CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中;
多核DSP1 CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP1已正确接收升级程序,则DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP1多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。
进一步的,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照1KB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包。
进一步的,所述DSP0或DSP1程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。
进一步的,所述DSP0或DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSP1将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
由于采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;然后显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
附图说明
图1是本申请实施例一中脉压导航雷达的双多核DSP的智能远程升级方法的流程示意图;
图2 本申请实施例一中导航雷达的双多核DSP的远程升级示意图。
具体实施方式
本发明提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
本申请实施中的技术方案为解决上述技术问题。总体思路如下:
采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;然后显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
实施例一:
在实施例一中,提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,请参考图1-图2,所述方法包括:
首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;
然后显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式。
其中,在本申请实施例中,所述多核DSP0程序升级模式具体包括:
显控中心首先从数据备份库中读取DSP0的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP0程序升级命令并计时;
多核DSP0 CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
多核DSP0 CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSP0程序升级包,DSP0 CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSP0 CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSP0 CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP0已正确接收升级程序,DSP0将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP0多核程序升级完成命令。
其中,在本申请实施例中,显控中心接收到DSP0程序升级成功后,再判断DSP1的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;若DSP1的程序需要升级,则显控中心将控制雷达进入多核DSP1程序升级模式。
其中,在本申请实施例中,所述多核DSP1程序升级模式,具体包括:
显控中心首先从数据备份库中读取DSP1的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP1程序升级命令并计时;
雷达的多核DSP1 CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
雷达的多核DSP1 CPU若收到正确的升级命令,并通过高速通信接口HyperLink向DSP1 CPU转发该升级命令,DSP1若正确接收,解析该命令,则通过HyperLink向DSP1 CPU发送准备好命令,DSP1再给显控中心回复一个DSP1 CPU正确接收程序升级并进入程序升级模式命令;
显控中心开始给雷达发送DSP1程序升级包,雷达的DSP1 CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSP1 CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSP1 CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中;
多核DSP1 CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP1已正确接收升级程序,则DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP1多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。
其中,在本申请实施例中,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照1KB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包,如果我们的程序升级数据块分包过小,如128B字节一包,由于每个升级数据包的帧头、帧尾、校验和及数据长度等是固定的,这样就明显的降低了每包升级数据包有用的升级数据的负载率,并且过小的升级数据包会使收发双方的CPU频繁进入收发中断服务处理程序,这样累积的程序跳转时间就会显著增加,这就体现不出千兆以太网接口的通信速率高,升级程序快的优点;如果我们选择程序升级数据块过大,如10KB字节一包,这样虽然会稍微的提高程序的升级速度,但是由于通信链路的固有错误概率,这会造成每包数据出错的概率大大增加,这反而会降低程序升级成功概率。在本4核DSP中,四个核的升级程序一般为小于5MB,而我们用两字节的数据长度编号升级程序包,因此编号最大可计数升级程序大小为64K×1KB,即64MB;如果用一个字节,编号最大可计数升级程序大小为256×1KB,即256KB,因此用两字节的数据长度编号升级程序包既满足编号要求又不增加字节开销。由于千兆以太网接口是雷达与显控中心或其他PC机通信接口,该通信接口上有其他的网络通信数据,因此我们必须增加两字节的特殊识别帧头、帧尾字符,以区别于其他非升级数据包。
其中,在本申请实施例中,所述DSP0或DSP1程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。
其中,在本申请实施例中,所述DSP0或DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSP1将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。在对FLASH写入大批量数据时,我们选择页写入模式,一页数据的大小为256B,这样写入数据的速度是最快的,为了保证DSP写入FLASH数据的正确性,我们对数据加入ECC校验。
其中,在实际应用中,本方案的工作过程如下:雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号。显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式。
多核DSP0程序升级模式,显控中心首先从数据备份库中读取DSP0的信号处理程序,然后将该程序按照1KB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C(生成多项式为x32+ x28+ x27+ x26+ x25+ x23+ x22+ x20+ x19+ x18+ x14+ x13+ x11+ x10+ x9+ x8+ x6+ 1)方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符(0XE1,0X1E)对数据块封装后生成1034字节长度的程序升级包。显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP0程序升级命令并计时,该命令包含升级程序的总字节数,总包数,最后一包字节数等信息。多核DSP0 CPU如果收到一个无法识别的命令,就回复一个接收错误命令。控中心收到错误接收命令或定时时间已到还没有收到雷达回复命令,显控中心将认为数据发送失败,数据发送失败计数加一,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。雷达的多核DSP0 CPU如果收到正确的升级命令,就给显控中心回复一个正确接收程序升级并进入程序升级模式命令。显控中心开始给雷达发送DSP0程序升级包,DSP0 CPU接收到升级包后,如果根据升级协议解析这些包、且CRC-32C校验正确,多核DSP0 CPU就按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSP0 CPU如果解析包或CRC-32C校验错误,数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。如果DSP0已经正确接收升级程序,DSP0将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。当程序写入FLASH完成后,雷达向显控中心发送DSP0多核程序升级完成命令。
显控中心接收到DSP0程序升级成功后,再判断DSP1的程序是否需要升级,如果不需要,显控中心显示雷达程序升级成功,如果DSP1的程序需要升级,显控中心将控制雷达进入多核DSP1程序升级模式。
多核DSP1程序升级模式,显控中心首先从数据备份库中读取DSP1的信号处理程序,然后将该程序按照1KB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C(生成多项式为x32+ x28+ x27+ x26+ x25+ x23+ x22+ x20+ x19+ x18+ x14+ x13+ x11+ x10+ x9+ x8+ x6+ 1)方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符(0XE1,0X1E)对数据块封装后生成1034字节长度的程序升级包。显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP1程序升级命令并计时,该命令包含升级程序的总字节数,总包数,最后一包字节数等信息。雷达的多核DSP1 CPU接收、并解析该命令后,如果是一个无法识别的命令,就回复一个接收错误命令。控中心收到错误接收命令或定时时间已到还没有收到雷达回复命令,显控中心将认为数据发送失败,数据发送失败计数加一,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。雷达的多核DSP1 CPU如果收到正确的升级命令,并通过高速通信接口HyperLink向DSP1 CPU转发该升级命令,DSP1如果正确接收、解析该命令,就通过HyperLink向DSP1CPU发送准备好命令,DSP1再给显控中心回复一个DSP1 CPU正确接收程序升级并进入程序升级模式命令。显控中心开始给雷达发送DSP1程序升级包,雷达的DSP1 CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSP1 CPU,这些包如果满足升级协议、且CRC-32C校验也正确,多核DSP1 CPU就按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSP1 CPU如果解析包或CRC-32C校验错误,数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。如果DSP1已经正确接收升级程序,DSP1将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。当程序写入FLASH完成后,雷达向显控中心发送DSP1多核程序升级完成命令。显控中心收到该消息后,将显示雷达升级成功。
本文介绍的基于雷达多核DSP智能远程升级方法,有以下几个显著的特点:便捷性、高可高性、远距离传输、接口通用和安全性。在我们的脉压导航雷达中系统,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,该智能远程升级方法具有便捷性、高可靠性、可远程升级、接口通用和安全等显著的特点。
下面,结合图2对本申请中的升级方法进行介绍,如图2所示,图2为导航雷达的双多核DSP的远程升级示意图,在我们的雷达系统中,新版的多核DSP程序存储在显控中心的服务器中。雷达每次开机,都会通过以太网和交换机向显控上报雷达中两片多核DSP运行的程序版本号,显控把存储的最新的DSP程序版本号与雷达上报的版本号比较,如果雷达上报的DSP版本号有任何一个不为最新,显控将通过千兆以太网和交换机向雷达发送控制命令和升级程序包,以控制雷达进入升级模式并完成DSP升级程序的接收和存储。
下面,举个具体的例子对本申请中的技术方案进行介绍:
在我们的雷达系统开机后,雷达通过千兆以太网向显控中心报告DSP0的程序版本为V1.2.1,DSP1的程序版本为V1.2.2,而显控中心存储的DSP0和DSP1的程序版本都为V1.2.2,因此显控中心将对雷达的DSP0进行程序升级。显控中心从程序存储器中读出新版的DSP0程序,大小为1344022字节,该升级程序将被分割为1312个 1K字节的数据块和一534字节的数据块,显控中心对这些数据块从零开始按顺序编号,并对每一块数据块加CRC-32C校验码,然后给每个数据块加特殊识别字符0XE1,0X1E的帧头、帧尾,完成升级程序数据包的封包操作。随后显控中心和雷达就按照多核DSP0程序升级模式收发升级程序包,当DSP0正确完全接收升级程序后,DSP0把该程序分为5250个256字节数据块和一22字节的数据块,DSP0给这些数据块加上ECC校验后,写入DSP0的FLASH中。
上述本申请实施例中的技术方案,至少具有如下的技术效果或优点:
由于采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;然后显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (7)
1.一种脉压导航雷达的双多核DSP的智能远程升级方法,其特征在于,所述方法包括:
雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;
显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式。
2.根据权利要求1所述的方法,其特征在于,所述多核DSP0程序升级模式具体包括:
显控中心首先从数据备份库中读取DSP0的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP0程序升级命令并计时;
多核DSP0 CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
多核DSP0 CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSP0程序升级包,DSP0 CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSP0 CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSP0 CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP0已正确接收升级程序,DSP0将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP0多核程序升级完成命令。
3.根据权利要求2所述的方法,其特征在于,显控中心接收到DSP0程序升级成功后,再判断DSP1的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;若DSP1的程序需要升级,则显控中心将控制雷达进入多核DSP1程序升级模式。
4.根据权利要求3所述的方法,其特征在于,所述多核DSP1程序升级模式,具体包括:
显控中心首先从数据备份库中读取DSP1的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSP1程序升级命令并计时;
雷达的多核DSP1 CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
雷达的多核DSP1 CPU若收到正确的升级命令,并通过高速通信接口HyperLink向DSP1 CPU转发该升级命令,DSP1若正确接收,解析该命令,则通过HyperLink向DSP1 CPU发送准备好命令,DSP1再给显控中心回复一个DSP1 CPU正确接收程序升级并进入程序升级模式命令;
显控中心开始给雷达发送DSP1程序升级包,雷达的DSP1 CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSP1 CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSP1 CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中;
多核DSP1 CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSP1已正确接收升级程序,则DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSP1多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。
5.根据权利要求4所述的方法,其特征在于,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照1KB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包。
6.根据权利要求4所述的方法,其特征在于,所述DSP0或DSP1程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。
7.根据权利要求4所述的方法,其特征在于,所述DSP0或DSP1将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSP1将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510298251.7A CN104899064A (zh) | 2015-06-03 | 2015-06-03 | 一种脉压导航雷达的双多核dsp的远程智能升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510298251.7A CN104899064A (zh) | 2015-06-03 | 2015-06-03 | 一种脉压导航雷达的双多核dsp的远程智能升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104899064A true CN104899064A (zh) | 2015-09-09 |
Family
ID=54031742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510298251.7A Pending CN104899064A (zh) | 2015-06-03 | 2015-06-03 | 一种脉压导航雷达的双多核dsp的远程智能升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104899064A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255510A (zh) * | 2017-12-22 | 2018-07-06 | 芯海科技(深圳)股份有限公司 | 一种基于iap在线升级待升级固件传输校验设计方法 |
CN108845811A (zh) * | 2018-05-30 | 2018-11-20 | 武汉高仕达电气有限公司 | 一种基于can总线的双核dsp固件升级方法及系统 |
CN110389772A (zh) * | 2018-04-23 | 2019-10-29 | 中车株洲电力机车研究所有限公司 | 双核mcu应用程序升级方法 |
CN111638900A (zh) * | 2020-05-15 | 2020-09-08 | 哈尔滨市科佳通用机电股份有限公司 | 一种机车信号设备的iap在线升级方法 |
CN112181444A (zh) * | 2020-08-25 | 2021-01-05 | 北京航天时代激光导航技术有限责任公司 | 一种基于1553b总线的dsp多核数据烧写方法 |
CN112241281A (zh) * | 2020-10-14 | 2021-01-19 | 四川九洲空管科技有限责任公司 | 数字雷达tr组件fpga程序批量升级方法及系统 |
CN113671478A (zh) * | 2021-07-27 | 2021-11-19 | 西安电子科技大学 | 基于多核cpu的高速机动目标识别数据处理方法 |
CN112181444B (zh) * | 2020-08-25 | 2024-05-14 | 北京航天时代激光导航技术有限责任公司 | 一种基于1553b总线的dsp多核数据烧写方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101105756A (zh) * | 2007-08-21 | 2008-01-16 | 中兴通讯股份有限公司 | 多核终端的固件升级方法 |
CN101853172A (zh) * | 2010-05-24 | 2010-10-06 | 中兴通讯股份有限公司 | 复杂可编程逻辑器件cpld动态升级装置及方法 |
CN102436390A (zh) * | 2012-01-09 | 2012-05-02 | 华为数字技术有限公司 | 多核处理器软件升级方法及设备 |
CN103092659A (zh) * | 2013-01-31 | 2013-05-08 | 中国航空无线电电子研究所 | 脱离仿真器支持环境的dsp软件升级系统及其升级方法 |
CN103581008A (zh) * | 2012-08-07 | 2014-02-12 | 杭州华三通信技术有限公司 | 路由器及其软件升级方法 |
CN103856349A (zh) * | 2012-12-07 | 2014-06-11 | 华为技术有限公司 | 多核路由器的版本升级处理方法及多核路由器 |
CN104090795A (zh) * | 2014-07-08 | 2014-10-08 | 三星电子(中国)研发中心 | 实现多核移动终端升级的方法、系统及装置 |
-
2015
- 2015-06-03 CN CN201510298251.7A patent/CN104899064A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101105756A (zh) * | 2007-08-21 | 2008-01-16 | 中兴通讯股份有限公司 | 多核终端的固件升级方法 |
CN101853172A (zh) * | 2010-05-24 | 2010-10-06 | 中兴通讯股份有限公司 | 复杂可编程逻辑器件cpld动态升级装置及方法 |
CN102436390A (zh) * | 2012-01-09 | 2012-05-02 | 华为数字技术有限公司 | 多核处理器软件升级方法及设备 |
CN103581008A (zh) * | 2012-08-07 | 2014-02-12 | 杭州华三通信技术有限公司 | 路由器及其软件升级方法 |
CN103856349A (zh) * | 2012-12-07 | 2014-06-11 | 华为技术有限公司 | 多核路由器的版本升级处理方法及多核路由器 |
CN103092659A (zh) * | 2013-01-31 | 2013-05-08 | 中国航空无线电电子研究所 | 脱离仿真器支持环境的dsp软件升级系统及其升级方法 |
CN104090795A (zh) * | 2014-07-08 | 2014-10-08 | 三星电子(中国)研发中心 | 实现多核移动终端升级的方法、系统及装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255510A (zh) * | 2017-12-22 | 2018-07-06 | 芯海科技(深圳)股份有限公司 | 一种基于iap在线升级待升级固件传输校验设计方法 |
CN110389772A (zh) * | 2018-04-23 | 2019-10-29 | 中车株洲电力机车研究所有限公司 | 双核mcu应用程序升级方法 |
CN110389772B (zh) * | 2018-04-23 | 2022-12-13 | 中车株洲电力机车研究所有限公司 | 双核mcu应用程序升级方法 |
CN108845811A (zh) * | 2018-05-30 | 2018-11-20 | 武汉高仕达电气有限公司 | 一种基于can总线的双核dsp固件升级方法及系统 |
CN108845811B (zh) * | 2018-05-30 | 2021-12-03 | 武汉高仕达电气有限公司 | 一种基于can总线的双核dsp固件升级方法及系统 |
CN111638900A (zh) * | 2020-05-15 | 2020-09-08 | 哈尔滨市科佳通用机电股份有限公司 | 一种机车信号设备的iap在线升级方法 |
CN112181444A (zh) * | 2020-08-25 | 2021-01-05 | 北京航天时代激光导航技术有限责任公司 | 一种基于1553b总线的dsp多核数据烧写方法 |
CN112181444B (zh) * | 2020-08-25 | 2024-05-14 | 北京航天时代激光导航技术有限责任公司 | 一种基于1553b总线的dsp多核数据烧写方法 |
CN112241281A (zh) * | 2020-10-14 | 2021-01-19 | 四川九洲空管科技有限责任公司 | 数字雷达tr组件fpga程序批量升级方法及系统 |
CN112241281B (zh) * | 2020-10-14 | 2024-02-06 | 四川九洲空管科技有限责任公司 | 数字雷达tr组件fpga程序批量升级方法及系统 |
CN113671478A (zh) * | 2021-07-27 | 2021-11-19 | 西安电子科技大学 | 基于多核cpu的高速机动目标识别数据处理方法 |
CN113671478B (zh) * | 2021-07-27 | 2024-04-23 | 西安电子科技大学 | 基于多核cpu的高速机动目标识别数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104899064A (zh) | 一种脉压导航雷达的双多核dsp的远程智能升级方法 | |
CN106569847B (zh) | 一种用于车载系统基于移动网络实现iap远程升级的方法 | |
US8996828B2 (en) | Systems and methods for migrating data | |
KR102274960B1 (ko) | 컴퓨터 시스템에서의 메모리 쓰기 관리 | |
CN106933632A (zh) | 基于以太网的fpga功能在线升级方法 | |
CN110134415A (zh) | 一种控制器及其软件升级方法和装置 | |
KR102358177B1 (ko) | 제어회로 및 제어회로를 포함하는 메모리 장치 | |
US20220317997A1 (en) | Online Upgrade Method for Household Appliance Multi-MCU System, Electronic Device and Medium | |
KR20160018987A (ko) | 인터페이스 회로 및 그것의 패킷 전송 방법 | |
WO2016173128A1 (zh) | 一种软件版本的下载方法及装置、存储介质 | |
CN103106095A (zh) | 一种工业照相机远程升级的方法及照相机 | |
CN108037931B (zh) | 一种对微处理器存储单元进行文件烧写的方法 | |
CN112835616A (zh) | 一种版本升级方法、装置、电子设备及存储介质 | |
CN114616544A (zh) | 固件数据处理方法及装置 | |
CN105630424A (zh) | 数据处理方法、装置及系统 | |
CN111435288B (zh) | 数据的处理方法和装置 | |
CN104184543A (zh) | 一种数据传输的方法、装置和系统 | |
CN110647342A (zh) | 基于usb的网关升级方法及系统 | |
CN103631611A (zh) | 对光端机进行升级的方法及该设备 | |
CN112286565A (zh) | 一种基于存储容器的嵌入式系统差分升级方法 | |
CN107515757A (zh) | 软件程序升级方法和系统、终端 | |
CN115129509A (zh) | 一种数据传输方法、装置、介质 | |
CN102567059B (zh) | 一种远程更新设备软件的方法 | |
CN100490002C (zh) | 串行传输接口的存储器装置以及错误更正方法 | |
US11604600B2 (en) | Stand-alone bridging test method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20180622 |