本申请涉及一种复杂可编程逻辑器件在线升级方法,所述复杂可编程逻辑器件包括静态随机存取存储器,所述方法包括:响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;响应于寄存器值改写指令,获取待改写寄存器值的物理地址;基于所述待改写寄存器值的物理地址映射得到所述待改写寄存器值在所述内存的物理地址,对所述待改写寄存器值进行改写并保存;响应于静态随机存取存储器升级完毕指令,激活所述无中断更新寄存器的数据写操作,将存储至所述内存的寄存器值写回至所述寄存器。所述内存的寄存器值写回至所述寄存器。所述内存的寄存器值写回至所述寄存器。
【技术实现步骤摘要】
复杂可编程逻辑器件在线升级方法和装置
[0001]本申请涉及数据交换设备
,特别是涉及一种复杂可编程逻辑器件在线升级方法和装置。
技术介绍
[0002]数据交换设备是按照通信两端传输信息的需要,用人工或设备自动完成的方法,把要传输的信息送到符合要求的相应路由上的技术的统称。
[0003]随着复杂可编程逻辑器件(CPLD)在数据交换设备应用的深入,CPLD在数据交换设备的应用中发挥的作用越来越重要。其原因在于:为了适应数据交换设备应用场景的需求,数据交换设备的端口越来越多,与之伴随而来的是对于数据交换设备的端口的管理越来越复杂,为了减少数据交换设备中的数据线的数量,现有技术中,通常会在数据交换设备的端口和数据交换设备的芯片之间连接一个CPLD,以扩充数据线的数量。
[0004]现有技术中,由于数据交换设备产品迭代及为了确保CPLD正常工作,常常需要对CPLD进行在线升级,在对CPLD进行在线升级的过程中,数据交换设备的寄存器的值会被改动,但是基于现有的CPLD在线升级方法,在对CPLD进行在线升级的过程中,均无法保证寄存器的值不丢失。
[0005]因此,急需提出一种解决上述技术问题的复杂可编程逻辑器件在线升级方法和装置。
技术实现思路
[0006]基于此,有必要针对上述技术问题,提供一种能够保证在对CPLD进行在线升级的过程中,寄存器值不丢失的复杂可编程逻辑器件在线升级方法和装置。
[0007]一方面,提供一种复杂可编程逻辑器件在线升级方法,所述复杂可编程逻辑器件包括静态随机存取存储器,所述方法包括:
[0008]响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;
[0009]响应于寄存器值改写指令,获取待改写寄存器值的物理地址;
[0010]基于所述待改写寄存器值的物理地址映射得到所述待改写寄存器值在所述内存的物理地址,对所述待改写寄存器值进行改写并保存;
[0011]响应于静态随机存取存储器升级完毕指令,激活所述无中断更新寄存器的数据写操作,将存储至所述内存的寄存器值写回至所述寄存器。
[0012]在其中一个实施例中,所述方法还包括:响应于复杂可编程逻辑器件在线升级指令,加载复杂可编程逻辑器件新镜像至移动存储单元;挂载所述移动存储单元至所述复杂可编程逻辑器件所在的数据交换设备,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存,对所述复杂可编程逻辑器件执行在线升级操作。
[0013]在其中一个实施例中,所述方法还包括:响应于复杂可编程逻辑器件在线升级指令,上传所述复杂可编程逻辑器件新镜像至服务器;通信连接所述复杂可编程逻辑器件至所述服务器,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存,对所述复杂可编程逻辑器件执行在线升级操作。
[0014]在其中一个实施例中,对所述复杂可编程逻辑器件执行在线升级操作,还包括:响应于静态随机存取存储器更新指令,锁定正基于复杂可编程逻辑器件旧镜像运行的静态随机存取存储器的输出管脚;待所述静态随机存取存储器的输出管脚被锁定后,将所述闪存中的复杂可编程逻辑器件新镜像写入所述静态随机存取存储器,以升级所述静态随机存取存储器;待所述静态随机存取存储器升级完毕后,解锁正基于所述复杂可编程逻辑器件新镜像运行的静态随机存取存储器的输出管脚。
[0015]在其中一个实施例中,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存前,所述方法还包括:识别预先封装在所述复杂可编程逻辑器件新镜像中的镜像校验码;将所述镜像校验码与所述复杂可编程逻辑器件的固件校验码进行比对;若所述镜像校验码与所述复杂可编程逻辑器件的固件校验码一致,则拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存。
[0016]在其中一个实施例中,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存前,所述方法还包括:获取预先封装在所述复杂可编程逻辑器件新镜像中的私钥;将所述私钥与预先存储于所述复杂可编程逻辑器件所在的数据交换设备的系统目录下的公钥进行比对;若所述私钥与预先存储于所述复杂可编程逻辑器件所在的数据交换设备的系统目录下的公钥比对成功,则拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存。
[0017]在其中一个实施例中,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存前,所述方法还包括:获取所述复杂可编程逻辑器件新镜像中的镜像类型;将所述复杂可编程逻辑器件新镜像的镜像类型与所述复杂可编程逻辑器件的类型进行匹配;若所述复杂可编程逻辑器件新镜像的镜像类型与所述复杂可编程逻辑器件的类型匹配成功,则拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存。
[0018]另一方面,提供了一种复杂可编程逻辑器件在线升级装置,所述复杂可编程逻辑器件包括静态随机存取存储器,所述装置包括:
[0019]数据写单元,以用于响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;
[0020]获取单元,以用于响应于寄存器值改写指令,获取待改写寄存器值的物理地址;
[0021]所述数据写单元,还用于基于所述待改写寄存器值的物理地址映射得到所述待改写寄存器值在所述内存的物理地址,对所述待改写寄存器值进行改写并保存;还用于响应于静态随机存取存储器升级完毕指令,激活所述无中断更新寄存器的数据写操作,将存储至所述内存的寄存器值写回至所述寄存器。
[0022]再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0023]响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中
断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;
[0024]响应于寄存器值改写指令,获取待改写寄存器值的物理地址;
[0025]基于所述待改写寄存器值的物理地址映射得到所述待改写寄存器值在所述内存的物理地址,对所述待改写寄存器值进行改写并保存;
[0026]响应于静态随机存取存储器升级完毕指令,激活所述无中断更新寄存器的数据写操作,将存储至所述内存的寄存器值写回至所述寄存器。
[0027]又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0028]响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;
[0029]本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种复杂可编程逻辑器件在线升级方法,其特征在于,所述复杂可编程逻辑器件包括静态随机存取存储器,所述方法包括:响应于对静态随机存取存储器的升级指令,激活所述复杂可编程逻辑器件的无中断更新寄存器的数据读操作,读取所述复杂可编程逻辑器件内至少一个寄存器的寄存器值,并将所述寄存器值写入内存;响应于寄存器值改写指令,获取待改写寄存器值的物理地址;基于所述待改写寄存器值的物理地址映射得到所述待改写寄存器值在所述内存的物理地址,对所述待改写寄存器值进行改写并保存;响应于静态随机存取存储器升级完毕指令,激活所述无中断更新寄存器的数据写操作,将存储至所述内存的寄存器值写回至所述寄存器。2.根据权利要求1所述的复杂可编程逻辑器件在线升级方法,其特征在于,所述方法还包括:响应于复杂可编程逻辑器件在线升级指令,加载复杂可编程逻辑器件新镜像至移动存储单元;挂载所述移动存储单元至所述复杂可编程逻辑器件所在的数据交换设备,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存,对所述复杂可编程逻辑器件执行在线升级操作。3.根据权利要求1所述的复杂可编程逻辑器件在线升级方法,其特征在于,所述方法还包括:响应于复杂可编程逻辑器件在线升级指令,上传所述复杂可编程逻辑器件新镜像至服务器;通信连接所述复杂可编程逻辑器件至所述服务器,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存,对所述复杂可编程逻辑器件执行在线升级操作。4.根据权利要求2或3所述的复杂可编程逻辑器件在线升级方法,其特征在于,对所述复杂可编程逻辑器件执行在线升级操作,还包括:响应于静态随机存取存储器更新指令,锁定正基于复杂可编程逻辑器件旧镜像运行的静态随机存取存储器的输出管脚;待所述静态随机存取存储器的输出管脚被锁定后,将所述闪存中的复杂可编程逻辑器件新镜像写入所述静态随机存取存储器,以升级所述静态随机存取存储器;待所述静态随机存取存储器升级完毕后,解锁正基于所述复杂可编程逻辑器件新镜像运行的静态随机存取存储器的输出管脚。5.根据权利要求4所述的复杂可编程逻辑器件在线升级方法,其特征在于,拷贝所述复杂可编程逻辑器件新镜像至所述复杂可编程逻辑器件的闪存前,所述方法还包括:识别预先封装在所述复杂可编程逻辑器件新镜像中的镜像校验码;将所述镜像校验码与所述复杂可编程逻辑器件的固件校验码进行...
【专利技术属性】
技术研发人员:刘齐,张锡鑫,陈翔,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。