一种脉压导航雷达的双多核dsp的远程智能升级方法
【技术领域】
[0001]本发明涉及多核DSP芯片产品研宄领域,尤其涉及一种脉压导航雷达的双多核DSP的远程智能升级方法。
【背景技术】
[0002]在现有应用多核DSP芯片的产品中,升级DSP程序通常是通过仿真器的JTAG接口,在线运行烧写程序把需要升级的程序烧写进给DSP加载程序的FLASH中,该种方法在产品开发初期,是方便的,也是必要的,但是当产品定型后并销售给用户后,由于算法改进或修正程序缺陷等原因要通过DSP的JTAG接口升级程序时,就要把产品外壳打开才能升级程序,而且产品应用的环境主要是相对位置较高的室外平台或大型船只的桅杆上,所以这样升级程序非常不方便,甚至不安全。
[0003]综上所述,本申请发明人在实现本申请实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
在现有技术中,现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题。
【发明内容】
[0004]本发明提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
[0005]为解决上述技术问题,本申请实施例提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,所述方法包括:
雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号;
显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式。
[0006]进一步的,所述多核DSPO程序升级模式具体包括:
显控中心首先从数据备份库中读取DSPO的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPO程序升级命令并计时;
多核DSPO CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
多核DSPO CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSPO程序升级包,DSPO CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSPO CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSPO CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSPO已正确接收升级程序,DSPO将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPO多核程序升级完成命令。
[0007]进一步的,显控中心接收到DSPO程序升级成功后,再判断DSPl的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;gDSPl的程序需要升级,则显控中心将控制雷达进入多核DSPl程序升级模式。
[0008]进一步的,所述多核DSPl程序升级模式,具体包括:
显控中心首先从数据备份库中读取DSPl的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPl程序升级命令并计时;
雷达的多核DSPl CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
雷达的多核DSPl CPU若收到正确的升级命令,并通过高速通信接口 HyperLink向DSPlCPU转发该升级命令,DSPl若正确接收,解析该命令,则通过HyperLink向DSPl CPU发送准备好命令,DSPl再给显控中心回复一个DSPl CPU正确接收程序升级并进入程序升级模式命令;
显控中心开始给雷达发送DSPl程序升级包,雷达的DSPl CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSPl CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSPl CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中;
多核DSPl CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSPl已正确接收升级程序,则DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPl多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。
[0009]进一步的,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照IKB大小的数据块进行分害J,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包。
[0010]进一步的,所述DSPO或DSPl程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。
[0011]进一步的,所述DSPO或DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSPl将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。
[0012]本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
由于采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号;然后显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而
实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
【附图说明】
[0013]图1是本申请实施例一中脉压导航雷达的双多核DSP的智能远程升级方法的流程示意图;
图2本申请实施例一中导航雷达的双多核DSP的远程升级示意图。
【具体实施方式】
[0014]本发明提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
[0015]本申请实施中的技术方案为解决上述技术问题。总体思路如下:
采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号;然后显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
[0016]为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
[0017]实施例一:
在实施例一中,提供了一种脉压导航雷达的双多核DSP的智能远程升级方法,请参考图1-图2,所述方法包括:
首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号;
然后显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式。
[0018]其中,在本申请实施例中,所述多核DSPO程序升级模式具体包括:
显控中心首先从数据备份库中读取DSPO的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPO程序升级命令并计时;
多核DSPO CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
多核DSPO CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSPO程序升级包,DSPO CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSPO CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSPO CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSPO已正确接收升级程序,DSPO将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPO多核程序升级完成命令。
[0019]其中,在本申请实施例中,显控中心接收到DSPO程序升级成功后,再判断DSPl的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;gDSPl的程序需要升级,则显控中心将控制雷达进入多核DSPl程序升级模式。
[0020]其中,在本申请实施例中,所述多核DSPl程序升级模式,具体包括:
显控中心首先从数据备份库中读取DSPl的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包;
显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPl程序升级命令并计时;
雷达的多核DSPl CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
雷达的多核DSPl CPU若收到正确的升级命令,并通过高速通信接口 HyperLink向DSPlCPU转发该升级命令,DSPl若正确接收,解析该命令,则通过HyperLink向DSPl CPU发送准备好命令,DSPl再给显控中心回复一个DSPl CPU正确接收程序升级并进入程序升级模式命令;
显控中心开始给雷达发送DSPl程序升级包,雷达的DSPl CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSPl CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSPl CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中;
多核DSPl CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路;
若DSPl已正确接收升级程序,则DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPl多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。
[0021]其中,在本申请实施例中,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照IKB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包,如果我们的程序升级数据块分包过小,如128B字节一包,由于每个升级数据包的帧头、帧尾、校验和及数据长度等是固定的,这样就明显的降低了每包升级数据包有用的升级数据的负载率,并且过小的升级数据包会使收发双方的CPU频繁进入收发中断服务处理程序,这样累积的程序跳转时间就会显著增加,这就体现不出千兆以太网接口的通信速率高,升级程序快的优点;如果我们选择程序升级数据块过大,如1KB字节一包,这样虽然会稍微的提高程序的升级速度,但是由于通信链路的固有错误概率,这会造成每包数据出错的概率大大增加,这反而会降低程序升级成功概率。在本4核DSP中,四个核的升级程序一般为小于5MB,而我们用两字节的数据长度编号升级程序包,因此编号最大可计数升级程序大小为64KX 1KB,即64MB ;如果用一个字节,编号最大可计数升级程序大小为256X 1KB,即256KB,因此用两
字节的数据长度编号升级程序包既满足编号要求又不增加字节开销。由于千兆以太网接口是雷达与显控中心或其他PC机通信接口,该通信接口上有其他的网络通信数据,因此我们必须增加两字节的特殊识别帧头、帧尾字符,以区别于其他非升级数据包。
[0022]其中,在本申请实施例中,所述DSPO或DSPl程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。
[0023]其中,在本申请实施例中,所述DSPO或DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSPl将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。在对FLASH写入大批量数据时,我们选择页写入模式,一页数据的大小为256B,这样写入数据的速度是最快的,为了保证DSP写入FLASH数据的正确性,我们对数据加入ECC校验。
[0024]其中,在实际应用中,本方案的工作过程如下:雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号。显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式。
[0025]多核DSPO程序升级模式,显控中心首先从数据备份库中读取DSPO的信号处理程序,然后将该程序按照IKB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过 CRC-32C (生成多项式为 x32+ x28+ x27+ x26+ x25+ x23+ x22+ x20+ xl9+xl8+ xl4+ xl3+ xll+ xlO+ x9+ x8+ x6+ I)方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符(0XE1,0X1E)对数据块封装后生成1034字节长度的程序升级包。显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPO程序升级命令并计时,该命令包含升级程序的总字节数,总包数,最后一包字节数等信息。多核DSPO CPU如果收到一个无法识别的命令,就回复一个接收错误命令。控中心收到错误接收命令或定时时间已到还没有收到雷达回复命令,显控中心将认为数据发送失败,数据发送失败计数加一,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。雷达的多核DSPO CPU如果收到正确的升级命令,就给显控中心回复一个正确接收程序升级并进入程序升级模式命令。显控中心开始给雷达发送DSPO程序升级包,DSPOCPU接收到升级包后,如果根据升级协议解析这些包、且CRC-32C校验正确,多核DSPO CPU就按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSPOCPU如果解析包或CRC-32C校验错误,数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。如果DSPO已经正确接收升级程序,DSPO将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。当程序写入FLASH完成后,雷达向显控中心发送DSPO多核程序升级完成命令。
[0026]显控中心接收到DSPO程序升级成功后,再判断DSPl的程序是否需要升级,如果不需要,显控中心显示雷达程序升级成功,如果DSPl的程序需要升级,显控中心将控制雷达进入多核DSPl程序升级模式。
[0027]多核DSPl程序升级模式,显控中心首先从数据备份库中读取DSPl的信号处理程序,然后将该程序按照IKB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过 CRC-32C (生成多项式为 x32+ x28+ x27+ x26+ x25+ x23+ x22+ x20+ xl9+xl8+ xl4+ xl3+ xll+ xlO+ x9+ x8+ x6+ I)方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符(0XE1,0X1E)对数据块封装后生成1034字节长度的程序升级包。显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPl程序升级命令并计时,该命令包含升级程序的总字节数,总包数,最后一包字节数等信息。雷达的多核DSPl CPU接收、并解析该命令后,如果是一个无法识别的命令,就回复一个接收错误命令。控中心收到错误接收命令或定时时间已到还没有收到雷达回复命令,显控中心将认为数据发送失败,数据发送失败计数加一,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。雷达的多核DSPl CPU如果收到正确的升级命令,并通过高速通信接口 HyperLink向DSPl CPU转发该升级命令,DSPl如果正确接收、解析该命令,就通过HyperLink向DSP1CPU发送准备好命令,DSPl再给显控中心回复一个DSPl CPU正确接收程序升级并进入程序升级模式命令。显控中心开始给雷达发送DSPl程序升级包,雷达的DSPl CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSPl CPU,这些包如果满足升级协议、且CRC-32C校验也正确,多核DSPl CPU就按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSPl CPU如果解析包或CRC-32C校验错误,数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,如果数据发送失败计数多余3次,我们就判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路。如果DSPl已经正确接收升级程序,DSPl将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。当程序写入FLASH完成后,雷达向显控中心发送DSPl多核程序升级完成命令。显控中心收到该消息后,将显示雷达升级成功。
[0028]本文介绍的基于雷达多核DSP智能远程升级方法,有以下几个显著的特点:便捷性、高可高性、远距离传输、接口通用和安全性。在我们的脉压导航雷达中系统,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,该智能远程升级方法具有便捷性、高可靠性、可远程升级、接口通用和安全等显著的特点。
[0029]下面,结合图2对本申请中的升级方法进行介绍,如图2所示,图2为导航雷达的双多核DSP的远程升级示意图,在我们的雷达系统中,新版的多核DSP程序存储在显控中心的服务器中。雷达每次开机,都会通过以太网和交换机向显控上报雷达中两片多核DSP运行的程序版本号,显控把存储的最新的DSP程序版本号与雷达上报的版本号比较,如果雷达上报的DSP版本号有任何一个不为最新,显控将通过千兆以太网和交换机向雷达发送控制命令和升级程序包,以控制雷达进入升级模式并完成DSP升级程序的接收和存储。
[0030]下面,举个具体的例子对本申请中的技术方案进行介绍:
在我们的雷达系统开机后,雷达通过千兆以太网向显控中心报告DSPO的程序版本为VL 2.1,DSPl的程序版本为V1.2.2,而显控中心存储的DSPO和DSPl的程序版本都为V1.2.2,因此显控中心将对雷达的DSPO进行程序升级。显控中心从程序存储器中读出新版的DSPO程序,大小为1344022字节,该升级程序将被分割为1312个IK字节的数据块和一 534字节的数据块,显控中心对这些数据块从零开始按顺序编号,并对每一块数据块加CRC-32C校验码,然后给每个数据块加特殊识别字符0XE1,0X1E的帧头、帧尾,完成升级程序数据包的封包操作。随后显控中心和雷达就按照多核DSPO程序升级模式收发升级程序包,当DSPO正确完全接收升级程序后,DSPO把该程序分为5250个256字节数据块和一 22字节的数据块,DSPO给这些数据块加上ECC校验后,写入DSPO的FLASH中。
[0031]上述本申请实施例中的技术方案,至少具有如下的技术效果或优点:<
br> 由于采用了将脉压导航雷达的双多核DSP的智能远程升级方法设计为包括:首先雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号;然后显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式,即,显控中心当检测到有新版本的多核DSP程序时,会通过通用千兆以太网通信接口自动给雷达的两个多核DSP CPU升级程序,无需操作人员干预,显控或PC机可通过以太网升级多核DSP的程序;同一个以太网通信接口可升级两片DSP的程序;该方法会自动检测雷达多核DSP上运行的程序版本是否需要升级,如需要升级,显控或PC机会自动给雷达多核DSP升级程序,且这样我们通过通用的千兆以太网接口给脉压导航雷达的双多核DSP升级程序,就无需像现有的升级方法,即通过JTAG给DSP升级程序那样要把雷达从较高处搬运到地势宽阔平坦的地方,打开雷达外壳,利用PC机和DSP仿真器给脉压导航雷达的双多核DSP升级程序,所以,有效解决了现有的升级DSP程序的方法存在升级不方便,升级效率较低,安全性和可靠性较差的技术问题,进而实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
[0032]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0033]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种脉压导航雷达的双多核DSP的智能远程升级方法,其特征在于,所述方法包括: 雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSPO及DSPl信号处理程序版本号; 显控中心读取数据备份库中DSPO及DSPl的信号处理程序版本号与雷达上传的DSPO与DSPl版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSPO或DSPl程序版本不一致,显控中心将控制雷达进入多核DSPO程序升级模式或多核DSPl程序升级模式。2.根据权利要求1所述的方法,其特征在于,所述多核DSPO程序升级模式具体包括: 显控中心首先从数据备份库中读取DSPO的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包; 显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPO程序升级命令并计时; 多核DSPO CPU若收到一个无法识别的命令,则回复一个接收错误命令;显控中心收到错误接收命令或预设时间内没有收到雷达回复命令,则显控中心确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路; 多核DSPO CPU若收到正确的升级命令,则给显控中心回复一个正确接收程序升级并进入程序升级模式命令,显控中心开始给雷达发送DSPO程序升级包,DSPO CPU接收到升级包后,若根据升级协议解析升级包,且CRC-32C校验正确,则多核DSPO CPU按照数据块序号,接收数据包加一,并把升级程序缓存在DDR3相应的空间中;多核DSPO CPU若解析升级包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数多余3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路; 若DSPO已正确接收升级程序,DSPO将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPO多核程序升级完成命令。3.根据权利要求2所述的方法,其特征在于,显控中心接收到DSPO程序升级成功后,再判断DSPl的程序是否需要升级,若不需要,则显控中心显示雷达程序升级成功;gDSPl的程序需要升级,则显控中心将控制雷达进入多核DSPl程序升级模式。4.根据权利要求3所述的方法,其特征在于,所述多核DSPl程序升级模式,具体包括: 显控中心首先从数据备份库中读取DSPl的信号处理程序,然后将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包; 显控中心完成升级程序打包后,通过千兆以太网向雷达发送DSPl程序升级命令并计时; 雷达的多核DSPl CPU接收、并解析该命令后,若是一个无法识别的命令,则回复一个接收错误命令,控中心收到错误接收命令或预设时间内没有收到雷达回复命令,显控中心则确认数据发送失败,数据发送失败计数加一,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路; 雷达的多核DSPl CPU若收到正确的升级命令,并通过高速通信接口 HyperLink向DSPlCPU转发该升级命令,DSPl若正确接收,解析该命令,则通过HyperLink向DSPl CPU发送准备好命令,DSPl再给显控中心回复一个DSPl CPU正确接收程序升级并进入程序升级模式命令; 显控中心开始给雷达发送DSPl程序升级包,雷达的DSPl CPU接收到升级网络数据包后,通过HyperLink高速接口转发到DSPl CPU,数据包若满足升级协议,且CRC-32C校验正确,多核DSPl CPU则按照数据块序号,则接收数据包加一,并把升级程序缓存在DDR3相应的空间中; 多核DSPl CPU若解析数据包或CRC-32C校验错误,则数据发送失败计数加一,并向显控中心发送相应编号升级数据块发送错误命令,需要重新再发,若数据发送失败计数大于3次,则判定雷达系统的通信链路不稳定,停止雷达程序升级,需检测雷达通信链路; 若DSPl已正确接收升级程序,则DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,当程序写入FLASH完成后,雷达向显控中心发送DSPl多核程序升级完成命令,显控中心收到该消息后,将显示雷达升级成功。5.根据权利要求4所述的方法,其特征在于,所述显控中心将该程序分割成数据块并进行编号,并通过CRC-32C方式编码,然后将数据块封装成程序升级包,具体为:将该程序按照IKB大小的数据块进行分割,对这些数据块用两字节的数据长度顺序编号、通过CRC-32C方式编码后,再分别利用两字节的特殊识别帧头、帧尾字符对数据块封装后生成1034字节长度的程序升级包。6.根据权利要求4所述的方法,其特征在于,所述DSPO或DSPl程序升级命令包中的信息包括但不限于:升级程序的总字节数、总包数、最后一包字节数。7.根据权利要求4所述的方法,其特征在于,所述DSPO或DSPl将缓存在DDR3中的升级程序写入FLASH的Update部分进行升级,具体为:DSP0或DSPl将缓存在DDR3中的升级程序按照256B大小的数据块分页,加ECC校验写入FLASH的Update部分。
【专利摘要】本发明公开了一种脉压导航雷达的双多核DSP的智能远程升级方法,所述方法包括:雷达系统开机后,雷达通过千兆以太网向显控中心报告4核DSP0及DSP1信号处理程序版本号;显控中心读取数据备份库中DSP0及DSP1的信号处理程序版本号与雷达上传的DSP0与DSP1版本号比较,如果程序版本一致,显控中心将控制雷达进入正常的工作模式,如果有DSP0或DSP1程序版本不一致,显控中心将控制雷达进入多核DSP0程序升级模式或多核DSP1程序升级模式,实现了双多核DSP升级便捷,升级效率较高,安全性和可靠性较高的技术效果。
【IPC分类】H04L1/00, H04L29/08, G06F9/445
【公开号】CN104899064
【申请号】CN201510298251
【发明人】唐浩, 张鑫, 何奎
【申请人】成都天奥信息科技有限公司
【公开日】2015年9月9日
【申请日】2015年6月3日