一种升级方法、系统及电子设备与流程

文档序号:17924644发布日期:2019-06-15 00:20阅读:173来源:国知局
一种升级方法、系统及电子设备与流程

本公开涉及it产品技术领域,具体而言,涉及一种升级方法、系统及电子设备。



背景技术:

服务器是一种较高复杂集成度的电子设备,同时服务器具有一定的可扩展性和可维修性。为了满足现在工业化生产的需要,服务器的子卡的复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld)经常需要升级逻辑程序。

现有技术中,可将待升级子卡置于测试系统,并在测试系统上电后独自完成升级,升级完成后再系统下电并更换新的待升级子卡,以此操作实现重复升级。但这样会带来大量的重复劳动,消耗的时间较多。



技术实现要素:

有鉴于此,本公开的目的在于提供一种升级方法、系统及电子设备,以解决上述问题。

为了实现上述目的,本公开实施例采用的技术方案如下:

第一方面,本公开实施例提供了一种升级方法,应用于升级系统的主控模块,所述主控模块包括芯片检测端口,所述芯片检测端口与所述升级系统的待升级芯片对应,所述方法包括:

检测所述芯片检测端口的在位信号;

根据所述在位信号从所述待升级芯片中确定在位芯片;

根据所述在位芯片形成菊花链;

将程序数据经所述菊花链传输至所述在位芯片。

第二方面,本公开实施例还提供了一种升级系统系统,所述升级系统包括主控模块及待升级芯片,所述主控模块包括芯片检测端口,所述待升级芯片与所述芯片检测端口对应;

所述主控模块用于检测所述芯片检测端口的在位信号;

所述主控模块还用于根据所述在位信号从所述待升级芯片中确定在位芯片,并根据所述在位芯片形成菊花链;

所述主控模块还用于将程序数据经所述菊花链传输至所述在位芯片。

第三方面,本公开实施例还提供了一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现上述的升级方法。

第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的升级方法。

本公开提供的升级方法、系统及电子设备,通过主控模块检测芯片检测端口的在位信号,并根据在位信号从待升级芯片中确定在位芯片,再根据在位芯片形成菊花链,最后将程序数据经菊花链传输至在位芯片;由于通过在位信号判断待升级芯片是否在位,并根据在位芯片形成菊花链,以便对在位芯片进行统一调试及升级,提高了升级效率,节约了升级所消耗的时间。

为使本公开的上述目的、特征和优点能更显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开提供的升级系统包含一个待升级芯片时的系统框图。

图2示出了本公开提供的升级系统包含多个待升级芯片时的系统框图。

图3示出了本公开提供的另一种升级系统包含一个待升级芯片时的系统框图。

图4示出了本公开提供的另一种升级系统包含一个待升级芯片时进一步的系统框图。

图5示出了本公开提供的另一种升级系统包含多个待升级芯片时的系统框图。

图6示出了本公开提供的升级方法的流程图。

图7示出了本公开提供的升级方法进一步的流程图。

图标:100-升级系统;110-主控模块;112-主控芯片;114-主通道选择芯片;120-待升级芯片;130-总联合测试工作组接口;140-基板管理控制器;150-子联合测试工作组接口;160-子通道选择芯片。

具体实施方式

下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

服务器是一种较高复杂集成度的电子设备,同时服务器具有一定的可扩展性和可维修性。通常地,服务器包括主卡以及子卡。其中,主卡包括多个子卡插槽,子卡可通过子卡插槽接入主卡,实现与主卡的数据交换。

现有技术中,时常需要对子卡的复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld)进行升级操作。除背景技术提到的方法以外,还可以通过联合测试工作组(jointtestactiongroup,jtag)信号形成菊花链的cpld的逻辑升级方法对服务器的子卡进行升级,该方法将子卡设计成一条完整的菊花链结构,使得所有子卡的逻辑程序可以一次性升级完成。

但通过这种方法,一旦任意一块子卡未插入系统,就无法形成完整的菊花链拓扑,导致jtag链不完整,从而无法完成更新任务。

本公开提供了一种升级系统100,能判断待升级芯片120是否在位,并根据在线芯片形成菊花链,避免现有技术中某一子卡未插入系统便不能进行统一升级的问题。

请参阅图1,为本公开提供的一种升级系统100的系统框图。该升级系统100包括主控模块110以及待升级芯片120。其中,主控模块110包括芯片检测端口,待升级芯片120与芯片检测端口对应。

其中,主控模块110用于检测芯片检测端口的在位信号。

可以理解地,待升级芯片120通过芯片检测端口接入主控模块110,且在位信号的状态随着待升级芯片120与芯片检测端口的连接状态而有所不同,因而通过在位信号可判断对应的待升级芯片120所在的子卡是否插入子卡插槽,也即,判断对应的待升级芯片120是否与主控模块110电连接。

需要说明的是,在本公开的升级系统100中,不对待升级芯片120以及芯片检测端口的数量进行具体限制。例如,升级系统100既可以只包含1个待升级芯片120以及1个芯片检测端口,且待升级芯片120与芯片检测端口对应(如图1所示);升级系统100也可以包含2、3……n个芯片检测端口以及2、3……n个待升级芯片120,且n个待升级芯片120与n个芯片检测端口一一对应(如图2所示)。

主控模块110还用于根据在位信号从待升级芯片120中确定在位芯片。

具体地,主控模块110用于当在位信号与预设定的有效电平匹配时,将与在位信号对应的待升级芯片120确定为在位芯片。

需要说明的是,在位信号包括两种状态,分别为高电平状态以及低电平状态。因而通过判断在位信号为高电平状态或低电平状态,便能确定该在位信号对应的待升级芯片120是否为在位芯片。其中,在位芯片即为所属子卡已经插入子卡插槽的cpld芯片。

其中,有效电平即为待升级芯片120所在的子卡插入子卡插槽时在位信号的状态。

在一种可选的实施方式中,在位芯片默认状态下为高电平状态。也即,当待升级芯片120所在的子卡未插入子卡插槽时,主控模块110通过待升级芯片120对应的芯片检测端口所检测得到的在位信号为高电平;而一旦待升级芯片120所在的子卡插入子卡插槽时,则待升级芯片120对应的芯片检测端口被拉低到地,从而主控模块110通过待升级芯片120对应的芯片检测端口所检测得到的在位信号为低电平。

因此,对应地,有效电平应当为低电平,主控模块110用于当在位信号为低电平时,确定该在位信号对应的待升级芯片120已经插入子卡插槽,因而将与该在位信号对应的待升级芯片120确定为在位芯片。

当然,在其他实施方式中,有效电平也可以根据需要变为高电平,在此不做具体限制。

主控模块110还用于根据在位芯片形成菊花链。

由于在位芯片所在的子卡是插入主卡的子卡插槽,而每个子卡插槽的jtag信号已预先连接到主控模块110,同时,只有在位芯片的jtag信号才是有效的,其他未插入子卡插槽的待升级芯片120的jtag信号无效,从而主控模块110在确定在位芯片后,将在位芯片的jtag信号接入到jtag升级链路便形成菊花链。

需要说明的是,本公开所述的菊花链实际上为主控模块110基于在位芯片构建的虚拟菊花链拓扑。也即,当菊花链中包含多个在位芯片时,多个在位芯片之间并不直接电连接并进行数据传输,而是经由主控模块110传输数据。

此外,还需要说明的是,菊花链可以包含一个或多个在位芯片。

主控模块110还用于将程序数据经菊花链传输至在位芯片。

例如,升级系统100包含n+1个待升级芯片120,但主控模块110确定存在1号在位芯片、2号在位芯片、3号在位芯片、……、n号在位芯片,并基于上述多个在位芯片的jtag信号接入到jtag升级链路形成菊花链。当利用该菊花链传输程序数据时,主控模块110首先将程序数据传输至1号在位芯片的信号输入接口,再接收由1号在位芯片的信号输出接口输出的程序数据,再将该程序数据传输至2号在位芯片的信号输入接口,再接收由2号在位芯片的信号输出接口输出的程序数据,以此类推直至接收到n号在位芯片的信号输出接口输出的程序数据为止。

可以理解地,本公开提供的升级系统,既支持多个待升级芯片120的一次性升级,减少重复劳动,提高效率;又能判断待升级芯片120是否在位,并根据在线芯片形成菊花链,避免现有技术中某一子卡未插入系统便不能进行统一升级的问题,适配性更强。

请参阅图3,为本公开提供的另一种升级系统100的系统框图。该升级系统100还包括总联合测试工作组接口130、基板管理控制器140(baseboardmanagementcontroller,bmc)、子通道选择芯片160以及子联合测试工作组接口150。其中,主控模块110与总联合测试工作组接口130及基板管理控制器140电连接,待升级芯片120与子通道选择芯片160及子联合测试工作组接口150电连接,子通道选择芯片160与主控模块110电连接。

其中,总联合测试工作组接口130用于连接烧录器,并将烧录器中预存储的程序数据经主控模块110、菊花链传输至在位芯片,实现在位芯片的离线升级。

基板管理控制器140用于在线下载程序数据,并将下载得到的程序数据经主控模块110、菊花链传输至在位芯片,实现在位芯片的在线升级。

主控模块110还用于检测第一选择信号,并根据第一选择信号将总联合测试工作组接口130发送的程序数据经菊花链传输至在位芯片,或将基板管理控制器140发送的程序数据经菊花链传输至在位芯片。

其中,第一选择信号包括两种状态,分别为高电平状态以及低电平状态。因而主控模块110通过判断第一选择信号为高电平状态或低电平状态,便能确定将总联合测试工作组接口130发送的程序数据经菊花链传输至在位芯片,或将基板管理控制器140发送的程序数据经菊花链传输至在位芯片。

具体地,主控模块110用于当第一选择信号与总联合测试工作组接口130匹配时,将总联合测试工作组接口130发送的程序数据经菊花链传输至在位芯片;当第一选择信号与基板管理控制器140匹配时,将基板管理控制器140发送的程序数据经菊花链传输至在位芯片。

请参阅图4,为本公开提供的另一种升级系统100进一步的系统框图。其中,主控模块110包括主控芯片112以及主通道选择芯片114,主通道选择芯片114与主控芯片112、基板管理控制器140以及总联合测试工作组接口130均电连接。具体地,主通道选择芯片114包括通道选择接口,且通道选择接口与总联合测试工作组接口130电连接。

其中,主控芯片112用于根据在位信号从待升级芯片120中确定在位芯片,并根据在位芯片形成菊花链。

具体地,主控芯片112为服务器主卡的cpld芯片。

主通道选择芯片114用于通过通道选择接口检测第一选择信号。

在一种可选的实施方式中,第一选择信号在默认状态为高电平。也即,当总联合测试工作组接口130未接入烧录器时,主通道选择芯片114通过通道选择接口检测到的第一选择信号为高电平信号,该第一选择信号与基板管理控制器140匹配;当总联合测试工作组接口130接入烧录器时,则通道选择接口被拉低到地,主通道选择芯片114通过通道选择接口检测到的第一选择信号为低电平信号,该第一选择信号与总联合测试工作组接口130匹配。

此外,主通道选择芯片114还用于当第一选择信号与总联合测试工作组接口130匹配时,将总联合测试工作组接口130发送的程序数据经主控芯片112及菊花链传输至在位芯片;当第一选择信号与基板管理控制器140匹配时,将基板管理控制器140发送的程序数据经主控芯片112及菊花链传输至在位芯片。

当第一选择信号与总联合测试工作组接口130匹配时,也即第一选择信号为低电平信号时,表明总联合测试工作组接口130接入烧录器,此时主通道选择芯片114接收总联合测试工作组接口130传输的烧录器中预存储的程序数据,并将程序数据经主控芯片112、菊花链传输至在位芯片,实现在位芯片的离线升级。

当第一选择信号与基板管理控制器140匹配时,也即第一选择信号为高电平信号时,表明总联合测试工作组接口130未接入烧录器,此时主通道选择芯片114接收基板管理控制器140在线下载的程序数据,并将程序数据经主控芯片112、菊花链传输至在位芯片,实现在位芯片的在线升级。

在一种可选的实施方式中,主通道选择芯片114为switch芯片。

可以理解地,通过设置主通道选择芯片114,从而实现了通过主通道选择芯片114对离线升级和在线升级这两种升级方式的自由切换,使得升级系统100的适配性更强。

需要说明的是,在其他实施方式中,第一选择信号在默认状态也可以为低电平,其原理与第一选择信号在默认状态为高电平时相似,在此不再赘述。

另外,通过主控芯片112可实现对待升级芯片120的在位检测,并根据在位芯片形成菊花链,再利用主通道选择芯片114对菊花链内的在位芯片实现统一的离线/在线升级。但有时升级系统100只需要对单个的待升级芯片120进行升级操作。其中,子通道选择芯片160以及子联合测试工作组接口150便用于实现单个待升级芯片120的升级操作。

子通道选择芯片160均用于检测第二选择信号。

具体地,子通道选择芯片160均包括通道选择接口,子通道选择芯片160用于通过通道选择接口检测第二选择信号。

子通道选择芯片160用于根据第二选择信号将子联合测试工作组接口150发送的程序数据传输至待升级芯片120,或将主控模块110发送的程序数据传输至待升级芯片120。

其中,第二选择信号在默认状态为高电平。也即,当子联合测试工作组接口150未接入烧录器时,子通道选择芯片160通过通道选择接口检测到的第二选择信号为高电平信号,该第二选择信号与主控模块110的主控芯片112匹配;当子联合测试工作组接口150接入烧录器时,则通道选择接口被拉低到地,子通道选择芯片160通过通道选择接口检测到的第二选择信号为低电平信号,该第二选择信号与子联合测试工作组接口150匹配。

具体地,子通道选择芯片160用于当第二选择信号与子联合测试工作组接口150匹配时,将子联合测试工作组接口150发送的程序数据传输至待升级芯片120;当第二选择信号与主控模块110匹配时,将主控模块110发送的程序数据传输至待升级芯片120。

当第二选择信号与子联合测试工作组接口150匹配时,也即第二选择信号为低电平信号时,表明子联合测试工作组接口150接入烧录器,此时子通道选择芯片160接收子联合测试工作组接口150传输的烧录器中预存储的程序数据,并将程序数据传输至与其电连接的待升级芯片120,实现待升级芯片120的离线升级。

当第二选择信号与主控模块110匹配时,也即第二选择信号为高电平信号时,表明子联合测试工作组接口150未接入烧录器,此时子通道选择芯片160接收主控模块110传输的程序数据。但需要说明的是,当子联合测试工作组接口150未接入烧录器时,由于与子联合测试工作组接口150电连接的待升级芯片120是在位芯片,因而可以利用主控芯片112形成菊花链,实现统一升级,但该统一升级的方法既可以是在线升级也可以是离线升级。

在一种可选的实施方式中,子通道选择芯片160同样为switch芯片。

同样地,在其他实施方式中,第二选择信号在默认状态也可以为低电平,其原理与第二选择信号在默认状态为高电平时相似,在此不再赘述。

另外,图3及图4仅示出了升级系统100仅包含一个待升级芯片120时的电路结构框图,但升级系统100还可包含多个待升级芯片120,因此,请参阅图5,为升级系统100包含多个待升级芯片120时的电路结构框图。其原理与仅包含一个待升级芯片120时的原理相同,在此不再赘述。进一步地,请参阅图6,图6为本公开提供的升级方法的流程图。需要说明的是,本实施例所提供的升级方法,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该升级方法包括:

s401,检测芯片检测端口的在位信号。

可以理解地,在一种可选的实施方式中,s401可由上述主控芯片112执行。

s402,根据在位信号从待升级芯片120中确定在位芯片。

可以理解地,在一种可选的实施方式中,s402可由上述主控芯片112执行。

s403,根据在位芯片形成菊花链。

可以理解地,在一种可选的实施方式中,s403可由上述主控芯片112执行。

s404,将程序数据经菊花链传输至在位芯片。

请参阅图7,为本公开提供的升级方法进一步的流程图。s404包括:

s4041,检测第一选择信号。

s4042,根据第一选择信号将总联合测试工作组接口130发送的程序数据经菊花链传输至在位芯片,或将基板管理控制器140发送的程序数据经菊花链传输至在位芯片。

可以理解地,在一种可选的实施方式中,s404、s4041以及s4042可由上述主通道选择芯片114执行。

本公开实施例还提供了一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现上述的升级方法。

本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的升级方法。

综上所述,本公开提供的升级方法、系统及电子设备,通过主控模块检测芯片检测端口的在位信号,并根据在位信号从待升级芯片中确定在位芯片,再根据在位芯片形成菊花链,最后将程序数据经菊花链传输至在位芯片;由于通过在位信号判断待升级芯片是否在位,并根据在位芯片形成菊花链,以便对在位芯片进行统一调试及升级,提高了升级效率,节约了升级所消耗的时间。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本公开各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1