避免更新CPLD版本错误方法、系统、设备及存储介质技术方案

技术编号:26417723 阅读:20 留言:0更新日期:2020-11-20 14:12
本发明专利技术提供一种避免更新CPLD版本错误方法、系统、设备及存储介质,所述方法包括如下步骤:S1.BMC根据应用场景判断CPLD更新模式;S2.BMC根据CPLD更新模式及CPLD当前版本号计算出CPLD目标版本号;S3.BMC获取CPLD待更新固件,比较CPLD待更新固件的版本号与CPLD目标版本号是否一致,并在版本号一致时,进行CPLD固件更新,以及在版本号不一致时,重新获取CPLD待更新固件。本发明专利技术,通过区分四种弹性的更新模式进行CPLD固件版本号确认,避免测试人员更新到非预期的CPLD固件版本,有效避免了BMC对CPLD固件更新版本错误问题率,保证功能验证结果,减少测试人员的验证时间。

【技术实现步骤摘要】
避免更新CPLD版本错误方法、系统、设备及存储介质
本专利技术属于固件更新
,具体涉及一种避免更新CPLD版本错误方法、系统、设备及存储介质。
技术介绍
CPLD,ComplexProgrammableLogicDevice的简称,复杂可编程逻辑器件。BMC,Baseboardmanagementcontroller的简称,基板管理控制器。服务器主板设计中均会设计CPLD,其最主要的功能是控制主板上所有晶片的电源时序,但在设计开发阶段,CPLD版本的管控极为重要,若果无法有效且正确的更新CPLD为正确的版本,将会导致CPLD无法配合当前的硬件设计,影响严重甚至将电路烧毁,导致系统无法开机或功能不齐全的问题,而且更新版本错误,也会造成浪费测试人员验证的时间及验证结果。在现有的服务器主板设计中,烧录CPLD的方法有两种,一种方法是使用CPLD厂商所提供的烧录缆线,通过烧录缆线搭配CPLD厂商所提供的烧录软体来更新CPLD,但在产线端或是客户端并不是每个人都有烧录的工具,且系统都是盖上机壳的情况下,使用治具更新CPLD更是一个困扰,因此,该方法不实用;另一种传统方法是使用BMC来更新CPLD,此方法仅需要BMC开发人员在更新的界面提供更新CPLD的选项,并让使用者上传CPLD更新版本,再更新CPLD,但此方法存在一个问题,就是使用者在通过BMC更新CPLD时,可能会更新错误的CPLD版本,并且只能在CPLD更新完成后,通过读版本的方式才知道更新错误,后续将浪费测试人员验证的时间及影响验证结果。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种避免更新CPLD版本错误方法、系统、设备及存储介质,是非常有必要的。
技术实现思路
针对现有技术的上述BMC对CPLD更新版本错误后,浪费测试人员验证时间,并影响验证结果的缺陷,本专利技术提供一种避免更新CPLD版本错误方法、系统、设备及存储介质,以解决上述技术问题。第一方面,本专利技术提供一种避免更新CPLD版本错误方法,包括如下步骤:S1.BMC根据应用场景判断CPLD更新模式;S2.BMC根据CPLD更新模式及CPLD当前版本号计算出CPLD目标版本号;S3.BMC获取CPLD待更新固件,比较CPLD待更新固件的版本号与CPLD目标版本号是否一致,并在版本号一致时,进行CPLD固件更新,以及在版本号不一致时,重新获取CPLD待更新固件。进一步地,步骤S1具体步骤如下:S11.BMC获取应用场景;当应用场景为验证CPLD当前版本与前一版本差异时,进入步骤S12;当应用场景为验证CPLD新版本功能时,进入步骤S13;当应用场景为重新验证CPLD当前版本功能时,进入步骤S14;当应用场景为验证CPLD当前版本与非前一版本的旧版本差异时,进入步骤S15;S12.BMC判定CPLD更新模式为前一版本更新模式,进入步骤S2;S13.BMC判定CPLD更新模式为下一版本更新模式,进入步骤S2;S14.BMC判定CPLD更新模式为当前版本更新模式,进入步骤S2;S15.BMC判定CPLD更新模式为任意版本更新模式,进入步骤S2。当应用场景为验证CPLD当前版本与前一版本差异时,只能使用前一版本;当应用场景为待发布的CPLD新版本功能验证时,只能使用后一版本;当应用场景为对当前版本重新更新时,只能使用当前版本;以上三种情形情况唯一,若版本更新错误则会出现CPLD版本刷新错误,导致一系列问题,而当应用场景为任何非前一旧版本与当前版本的功能验证时,此时直接获取旧版本确认。进一步地,步骤S2具体步骤如下:S21.BMC获取CPLD当前版本的版本号N;S22.BMC获取CPLD更新模式;当更新模式为前一版本更新模式时,进入步骤S23;当更新模式为下一版本更新模式时,进入步骤S24;当更新模式为当前版本更新模式时,进入步骤S25;当更新模式为任意版本更新模式时,进入步骤S26;S23.BMC计算CPLD目标版本号为N+1,进入步骤S3;S24.BMC计算CPLD目标版本号为N-1,进入步骤S3;S25.BMC计算CPLD目标版本号为N,进入步骤S3;S26.BMC更新获取CPLD待更新固件,进行固件更新。不同更新模式,目标版本号计算方式不同,进一步确认,有效降低CPLD固件更新版本错误。进一步地,步骤S3具体步骤如下:S31.BMC获取CPLD待更新固件及其版本号;S32.BMC比较CPLD待更新固件的版本号与CPLD目标版本号是否一致;当版本号一致时,进入步骤S33;当版本号不一致时,进入步骤S34;S33.BMC将CPLD待更新固件进行CPLD固件更新,结束;S34.BMC重新获取CPLD待更新固件,返回步骤S32。CPLD待更新固件版本号与目标版本号不一致时,需要重新CPLD待更新固件,重新进行版本号确认。第二方面,本专利技术提供一种避免更新CPLD版本错误系统,包括CPLD更新模式判断模块,用于设置BMC根据应用场景判断CPLD更新模式;CPLD目标版本号计算模块,用于设置BMC根据CPLD更新模式及CPLD当前版本号计算出CPLD目标版本号;CPLD固件更新判断模块,用于设置BMC获取CPLD待更新固件,比较CPLD待更新固件的版本号与CPLD目标版本号是否一致,并在版本号一致时,进行CPLD固件更新,以及在版本号不一致时,重新获取CPLD待更新固件。进一步地,CPLD更新模式判断模块包括:应用场景获取单元,用于设置BMC获取应用场景;上一更新模式判定单元,用于当应用场景为验证CPLD当前版本与前一版本差异时,设置BMC判定CPLD更新模式为前一版本更新模式;下一更新模式判定单元,用于当应用场景为验证CPLD新版本功能时,设置BMC判定CPLD更新模式为下一版本更新模式;当前更新模式判定单元,用于当应用场景为重新验证CPLD当前版本功能时,设置BMC判定CPLD更新模式为任意版本更新模式。进一步地,CPLD目标版本号计算模块包括:版本号获取单元,用于设置BMC获取CPLD当前版本的版本号N;更新模式获取及判断单元,用于设置BMC获取并判断CPLD更新模式;第一目标版本号计算单元,用于当更新模式为前一版本更新模式时,设置BMC计算CPLD目标版本号为N+1;第二目标版本号计算单元,用于当更新模式为下一版本更新模式时,设置BMC计算CPLD目标版本号为N-1;第三目标版本号计算单元,用于当更新模式为当前版本更新模式时,设置BMC计算CPLD目标版本号为N;任意版本模式固件更新单元,用于当更新模式为任意版本更新模式时,设置BMC更新获取CPLD待更新固件,进行固件更新。进一步地,CPLD固件更新判断本文档来自技高网
...

【技术保护点】
1.一种避免更新CPLD版本错误方法,其特征在于,包括如下步骤:/nS1.BMC根据应用场景判断CPLD更新模式;/nS2.BMC根据CPLD更新模式及CPLD当前版本号计算出CPLD目标版本号;/nS3.BMC获取CPLD待更新固件,比较CPLD待更新固件的版本号与CPLD目标版本号是否一致,并在版本号一致时,进行CPLD固件更新,以及在版本号不一致时,重新获取CPLD待更新固件。/n

【技术特征摘要】
1.一种避免更新CPLD版本错误方法,其特征在于,包括如下步骤:
S1.BMC根据应用场景判断CPLD更新模式;
S2.BMC根据CPLD更新模式及CPLD当前版本号计算出CPLD目标版本号;
S3.BMC获取CPLD待更新固件,比较CPLD待更新固件的版本号与CPLD目标版本号是否一致,并在版本号一致时,进行CPLD固件更新,以及在版本号不一致时,重新获取CPLD待更新固件。


2.如权利要求1所述的避免更新CPLD版本错误方法,其特征在于,步骤S1具体步骤如下:
S11.BMC获取应用场景;
当应用场景为验证CPLD当前版本与前一版本差异时,进入步骤S12;
当应用场景为验证CPLD新版本功能时,进入步骤S13;
当应用场景为重新验证CPLD当前版本功能时,进入步骤S14;
当应用场景为验证CPLD当前版本与非前一版本的旧版本差异时,进入步骤S15;
S12.BMC判定CPLD更新模式为前一版本更新模式,进入步骤S2;
S13.BMC判定CPLD更新模式为下一版本更新模式,进入步骤S2;
S14.BMC判定CPLD更新模式为当前版本更新模式,进入步骤S2;
S15.BMC判定CPLD更新模式为任意版本更新模式,进入步骤S2。


3.如权利要求2所述的避免更新CPLD版本错误方法,其特征在于,步骤S2具体步骤如下:
S21.BMC获取CPLD当前版本的版本号N;
S22.BMC获取CPLD更新模式;
当更新模式为前一版本更新模式时,进入步骤S23;
当更新模式为下一版本更新模式时,进入步骤S24;
当更新模式为当前版本更新模式时,进入步骤S25;
当更新模式为任意版本更新模式时,进入步骤S26;
S23.BMC计算CPLD目标版本号为N+1,进入步骤S3;
S24.BMC计算CPLD目标版本号为N-1,进入步骤S3;
S25.BMC计算CPLD目标版本号为N,进入步骤S3;
S26.BMC更新获取CPLD待更新固件,进行固件更新。


4.如权利要求3所述的避免更新CPLD版本错误方法,其特征在于,步骤S3具体步骤如下:
S31.BMC获取CPLD待更新固件及其版本号;
S32.BMC比较CPLD待更新固件的版本号与CPLD目标版本号是否一致;
当版本号一致时,进入步骤S33;
当版本号不一致时,进入步骤S34;
S33.BMC将CPLD待更新固件进行CPLD固件更新,结束;
S34.BMC重新获取CPLD待更新固件,返回步骤S32。


5.一种避免更新CPLD版本错误系统,其特征在于,包括
CPLD更新模式判断模块(1),用于设置BMC根据应用场景判断CPLD更新模式;
CPLD目标版本号计算模块(2),用于设置BMC根据CPLD更新模式及CPLD...

【专利技术属性】
技术研发人员:林正中
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1