一种信息传输方法和计算设备与流程

文档序号:33469984发布日期:2023-03-15 08:04阅读:24来源:国知局
一种信息传输方法和计算设备与流程

1.本技术涉及计算机领域,尤其涉及一种信息传输方法和计算设备。


背景技术:

2.随着计算产业的高速发展,服务器的需求量也在增加。为了保证服务器的供应稳定,服务器在设计之初就需要考虑多种兼容方案的实现,尤其满足不同的电压调节器(voltage regulator,vr)的组合方案的兼容能力,是服务器中主板兼容能力的重要衡量指标。
3.当前,服务器中的多个vr的管理,主要是通过主板上的基板管理控制器(baseboard management controller,bmc)芯片直连多个vr来实现(例如,管理内容可以包括对vr的在线升级、温度及电压获取等),其中,vr的地址通过设置外围硬件,通过外围硬件下拉电阻实现设置。那么,当要替换服务器中的部件(例如主板、网卡或背板)时,则需要替换该部件对应的一组vr的组合方案,在外围硬件上要修改大量的电阻值,而且还需要在bmc芯片上进行vr的地址适配,工作量巨大,增加了开发的周期。


技术实现要素:

4.本技术实施例提供了一种信息传输方法和计算设备,用于实现bmc芯片通过复杂可编程逻辑器件(complex programmable logic device,cpld)对多个vr进行管理,减少适配工作量。
5.本技术第一方面提供了一种信息传输方法,用于计算设备,所述计算设备包括基板管理控制器bmc芯片、复杂可编程逻辑器件cpld和多个vr,其中,所述bmc芯片连接所述cpld,所述cpld连接所述多个vr;所述方法包括:所述cpld接收所述bmc芯片发送的信息,所述信息的目的地址为第一vr的第一bmc定义地址,所述第一vr为所述多个vr中的一个;所述cpld确定与所述第一bmc定义地址对应的第一cpld定义地址;所述cpld基于所述第一cpld定义地址向所述第一vr发送所述信息。
6.在本技术中,由于cpld是可编程的,在bmc芯片中适配了第一vr和对应的第一bmc定义地址后,可以通过在cpld中写入第一bmc定义地址和第一cpld定义地址的对应关系。当第一vr的地址需要改变时,只需要在cpld中改变与第一bmc定义地址对应的cpld定义地址,而无需改变在bmc芯片中与第一vr和对应的第一bmc定义地址,即在bmc芯片上只需要对第一vr和第一bmc定义地址适配一次,减少了适配工作量,减短了开发周期。
7.在一些可行的实现方式中,所述cpld存储有第二映射表,所述第二映射表包括所述第一bmc定义地址到所述第一cpld定义地址的映射,所述cpld确定与所述第一bmc定义地址对应的第一cpld定义地址包括:所述cpld根据所述第二映射表确定所述第一bmc定义地址对应的所述第一cpld定义地址。
8.在一些可行的实现方式中,所述cpld确定与所述第一bmc定义地址对应的第一cpld定义地址之前,所述方法还包括:所述cpld获取第一地址分配方案,所述第一地址分配
方案包括所述第一vr到所述第一cpld定义地址的映射,那么所述cpld可以基于所述第一地址分配方案对所述第一vr进行地址设置,使得cpld可以基于所述第一cpld定义地址向所述第一vr发送所述信息。
9.在一些可行的实现方式中,所述计算设备包括存储器,所述存储器用于存储第一版本号,所述存储器连接所述cpld,以使得所述cpld可以从所述存储器中获取所述第一版本号,并从多个地址分配方案中确定与所述第一版本号对应的所述第一地址分配方案。
10.在一些可行的实现方式中,所述cpld确定与所述第一版本号对应的所述第一地址分配方案之前,还包括:所述cpld获取多个地址分配方案及其对应的版本号,得到第一映射表,那么所述cpld可以基于所述第一映射表确定与所述第一版本号对应的所述第一地址分配方案。
11.在一些可行的实现方式中,所述cpld确定与所述第一bmc定义地址对应的第一cpld定义地址之前,所述方法还包括:所述cpld确定与所述第一vr对应的所述第一bmc定义地址;所述cpld基于所述第一bmc定义地址和所述第一地址分配方案确定第二映射表,所述第二映射表包括所述第一bmc定义地址到所述第一cpld定义地址的映射。那么所述cpld可以根据所述第二映射表确定所述第一bmc定义地址对应的所述第一cpld定义地址。
12.在一些可行的实现方式中,所述cpld基于所述第一cpld定义地址向所述第一vr发送所述信息之后,所述方法还包括:所述cpld接收所述第一vr发送的所述相关数据;所述cpld向所述bmc芯片发送所述相关数据。因此,cpld获得了所需要的相关数据。
13.在一些可行的实现方式中,所述信息包括升级数据,用于向所述第一vr指示基于所述升级数据对固件进行升级,所述固件用于获取相关数据,使得第一vr可以对固件进行升级。
14.在一些可行的实现方式中,所述相关数据包括电流、电压和/或温度中的一个或多个,使得cpld可以基于相关数据评估第一vr所设置的部件的健康状况。
15.本技术第二方面提供了一种计算设备,包括:基板管理控制器bmc芯片、复杂可编程逻辑器件cpld和多个电压调节器vr,其中,所述bmc芯片连接所述cpld,所述cpld连接所述多个vr;所述bmc芯片,用于向所述cpld发送信息,所述信息的目的地址为第一vr的第一bmc定义地址,所述第一vr为所述多个vr中的一个;所述cpld,用于确定与所述第一bmc定义地址对应的第一cpld定义地址;所述cpld,还用于基于所述第一cpld定义地址向所述第一vr发送所述信息。
16.在本技术中,由于cpld是可编程的,在bmc芯片中适配了第一vr和对应的第一bmc定义地址后,可以通过在cpld中写入第一bmc定义地址和第一cpld定义地址的对应关系。当第一vr的地址需要改变时,只需要在cpld中改变与第一bmc定义地址对应的cpld定义地址,而无需改变在bmc芯片中与第一vr和对应的第一bmc定义地址,即在bmc芯片上只需要对第一vr和第一bmc定义地址适配一次,减少了适配工作量,减短了开发周期。
17.在一些可行的实现方式中,所述cpld存储有第二映射表,所述第二映射表包括所述第一bmc定义地址到所述第一cpld定义地址的映射;所述cpld,还用于根据所述第二映射表确定所述第一bmc定义地址对应的所述第一cpld定义地址。
18.在一些可行的实现方式中,所述计算设备还包括主板、背板、网卡;其中,所述bmc芯片、所述cpld均设于所述主板,所述网卡和所述背板均与所述主板电连接,所述主板、所
述背板和所述网卡上分别设有所述多个vr中的至少一个。
19.在一些可行的实现方式中,所述cpld,还用于获取第一地址分配方案,所述第一地址分配方案包括所述第一vr到所述第一cpld定义地址的映射,基于所述第一地址分配方案对所述第一vr进行地址设置。
20.在一些可行的实现方式中,所述计算设备还包括:存储器,所述存储器连接所述cpld;所述存储器,用于存储第一版本号;所述cpld,还用于从所述存储器中获取所述第一版本号;所述cpld,还用于确定与所述第一版本号对应的所述第一地址分配方案,所述第一地址分配方案为所述多个地址分配方案中的一个地址分配方案。
21.在一些可行的实现方式中,所述cpld,还用于获取多个地址分配方案及其对应的版本号,得到第一映射表,基于所述第一映射表确定与所述第一版本号对应的所述第一地址分配方案。
22.在一些可行的实现方式中,所述信息用于向所述第一vr请求对应的相关数据:所述第一vr,用于基于所述信息向所述cpld发送所述相关数据;所述cpld,还用于向所述bmc芯片发送所述相关数据。
23.本技术第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面中任一项所述的方法。
24.本技术第四方面提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得设备实施上述第一方面或者第一方面的任一种可能的实现方式所提供的方法。
25.本技术第五方面提供一种通信装置,该通信装置可以包括至少一个处理器、存储器和通信接口。至少一个处理器与存储器和通信接口耦合。存储器用于存储指令,至少一个处理器用于执行该指令,通信接口用于在至少一个处理器的控制下与其他通信装置进行通信。该指令在被至少一个处理器执行时,使至少一个处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
26.本技术第六方面提供了一种芯片系统,该芯片系统包括处理器,用于支持实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。
27.在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
28.其中,第二至第六方面或者其中任一种可能实现方式所带来的技术效果可参见第一方面或第一方面不同可能实现方式所带来的技术效果,此处不再赘述。
附图说明
29.图1为一种计算设备结构示意图;
30.图2为本技术实施例提供一种计算设备的组成结构示意图;
31.图3为本技术实施例提供的一种信息传输方法的流程示意图;
32.图4为本技术实施例提供的一种计算设备的结构示意图;
33.图5为本技术实施例提供的一种通信装置的结构示意图。
具体实施方式
34.本技术实施例提供了一种对多个vr的地址设置方法,用于实现bmc芯片和多个vr的解耦,容错率提升,减少适配工作量。
35.下面结合附图,对本技术的实施例进行描述。
36.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本技术的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
37.请参阅图1所示,为当前的一种计算设备的结构示意图,该计算设备100可以包括:bmc芯片110和多个vr 120。
38.bmc芯片110是一种单板控制器,通常用于管理组成服务器的各个硬件,从而对服务器进行管理。示例性的,在本技术实施例中,bmc芯片110可以用于管理vr控制系统100中的多个vr 120。
39.计算设备100可以包括主板、背板和网卡等部件,各个部件可以设置一个或多个vr120。vr 120可以设置计算设备100中的部件中,用于对这些部件进行健康监控和电压调节。其中,工作人员可以在vr 120中通过编程得到用于监控对应部件的固件,该固件可以用于获取部件中电压、电流、温度等相关数据,然后可以将相关数据存储在寄存器中。然后,bmc芯片可以通过访问vr 120的寄存器获取相关数据,实现了对计算设备100中部件的健康状况的监控。
40.需要说明的是,主板又称为主机板(mainboard)、系统板(systemboard)、或母板(motherboard),是计算机最基本的同时也是最重要的部件之一。主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有基本输入输出系统(basic input output system,bios)芯片、输入输出(in/out,i/o)控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件。背板用于支撑其他电路板、部件和部件之间的相互连接,并为所支撑的部件提供电源和数据信号的电路板或框架。网卡是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件。网卡具有唯一的媒体存取控制(media access control,mac)地址,用于实现其他设备可以通过电缆或无线与计算设备100相互连接。
41.随着计算产业的高速发展,服务器的需求量也在增加。为了保证服务器的供应稳定,服务器在设计之初就需要考虑多种兼容方案的实现,尤其满足不同的vr的组合方案的兼容能力,是服务器中主板兼容能力的重要衡量指标。
42.当前,服务器中的多个vr的管理,主要是通过主板上的bmc芯片直连多个vr来实现(例如,管理内容可以包括对vr的在线升级、温度及电压获取等),其中,vr的地址通过设置外围硬件,通过外围硬件下拉电阻实现设置。那么,当要替换服务器中的部件(例如主板、网卡或背板)时,则需要替换该部件对应的一组vr的组合方案,在外围硬件上要修改大量的电阻值,而且还需要在bmc芯片上进行vr的地址适配,工作量巨大而且出错率较高,增加了开发的周期。
43.综上所述,在上述技术方案中,在替换兼容方案时,工作人员需要为bmc芯片开发新的代码对不同的电源组合方案进行适配,增加了开发的周期。而且,需要变更外围的多个电阻值来修改vr的地址,由于vr数量较多,修改点成倍增加,出错率会升高。另外,由于bmc芯片通过集成电路总线(inter-integrated circuit,iic)接口直连所有vr,给印制电路板(printed circuit board,pcb)布局布线带来挑战,也不利于信号在传输路径上的质量(signal integrality,si)。
44.为此,本技术提出了一种信息传输方法和计算设备,用于实现bmc芯片通过复杂可编程逻辑器件(complex programmable logic device,cpld)对多个vr进行管理,减少适配工作量。
45.其中,本技术应用于计算设备,该计算设备可以包括bmc芯片、cpld和多个vr,bmc芯片连接cpld,cpld连接多个vr。当cpld接收到bmc芯片发送的信息时,信息的目的地址为第一vr的第一bmc定义地址,第一vr为所述多个vr中的一个,那么,cpld可以确定与第一bmc定义地址对应的第一cpld定义地址,并基于第一cpld定义地址向第一vr发送所述信息。
46.在本技术中,由于cpld是可编程的,在bmc芯片中适配了第一vr和对应的第一bmc定义地址后,可以通过在cpld中写入第一bmc定义地址和第一cpld定义地址的对应关系。当第一vr的地址需要改变时,只需要在cpld中改变与第一bmc定义地址对应的cpld定义地址,而无需改变在bmc芯片中与第一vr和对应的第一bmc定义地址,即在bmc芯片上只需要对第一vr和第一bmc定义地址适配一次,减少了适配工作量,减短了开发周期。
47.在一些可行的实现方式中,该计算设备可以为服务器或终端设备。
48.其中,服务器可因配置或性能不同而产生比较大的差异,可以包括至少一个中央处理器(central processing units,cpu)(例如,至少一个处理器)和存储器,至少一个存储应用程序或数据的存储介质(例如至少一个海量存储设备)。其中,存储器和存储介质可以是短暂存储或持久存储。存储在存储介质的程序可以包括至少一个模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器可以设置为与存储介质通信,在服务器上执行存储介质中的一系列指令操作。服务器还可以包括至少一个电源,至少一个有线或无线网络接口,至少一个输入输出接口,和/或,至少一个操作系统,例如windows server,mac os x,unix,linux,freebsd,netware等等。在一些可行的实现方式中,服务器还可以为云服务器,此处不做限定。
49.服务器可以是部署在服务器中的功能模块,或者是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心,本技术实施例对此不做限定。其中,服务器也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求并进行处理,提供可靠的服务,因此一般来说服务器应具备承担服务并且保障服务的能力,该服务器需要具备较强的处理能力、高稳定性、高可靠性、高安全性、可扩展性以及可管理性。在本技术实施例中,所述服务器可以是x86服务器,x86服务器又称复杂指令集(complex instruction set computer,cisc)架构服务器,即通常所讲的个人计算机(personal computer,pc)服务器,它是基于pc机体系结构,使用英特尔(intel)或其它兼容x86指令集的处理器芯片和windows操作系统的服务器。
50.终端设备,又可以称为用户设备(user equipment,ue)、移动台(mobile station,ms)、移动终端(mobile terminal,mt)、终端等,是一种向用户提供语音和/或数据连通性的
设备,或,设置于该设备内的芯片,例如,具有无线连接功能的手持式设备、车载设备等。目前,一些终端设备的举例为:手机、台式电脑、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,mid)、可穿戴设备,虚拟现实(virtual reality,vr)设备、增强现实(augmented reality,ar)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、支持5g加入的家庭网关设备(5g-residential gateway,5g-rg)等。
51.在本技术实施例中,计算设备以服务器为例进行说明。
52.请参阅图2,为本技术实施例提供一种计算设备200的组成结构示意图,该计算设备200可以包括:bmc芯片210、cpld 220和多个部件(示例性的,多个部件分别为部件1、部件2和部件3),该多个部件中各个部件可以为主板、背板或网卡等,每个部件上设有一个或多个vr 230(例如,部件1上设有一个或vr 230-1和vr 230-2,部件2上设有一个或vr 230-3和vr 230-4,部件3上设有一个或vr 230-5和vr 230-6,则cpld 220分别连接vr 230-1~vr 230-6)。其中,bmc芯片110连接cpld 220,cpld 220连接多个vr 230。在一些可行的实现方式中,bmc芯片110、cpld 220可以设置在主板中。
53.需要说明的是,不同场景下对bmc可以有不同的称呼。例如在一些场景下,亦可将bmc芯片210称为完全自动化集成(integrated ligths-out,ilo),另一场景下,亦可称为集成戴尔远程访问控制器(integrated dell remote access controller,idrac)。由此可知,无论是ilo或idrac,都可以理解为是本技术实施例中的bmc芯片210。
54.需要说明的是,cpld 220是一种用户根据各自需要而自行构造逻辑功能的数字集成电路,其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆将代码并存储起来,实现设计的数字系统。在本技术实施例中,bmc芯片210可以通过iic接口连接cpld 220,cpld 220通过iic接口分别连接各个vr 230。
55.在一些可能的实现方式中,该cpld 220还可以外接存储器240,该存储器240用于存储主板、背板、网卡等部件对应的版本号,cpld可以根据主板、背板、网卡对应的版本号匹配对应的地址分配方案。示例的,cpld可以根据主板对应的版本号匹配设置于主板上的多个vr的地址分配方案,可以根据背板对应的版本号,匹配于背板上的vr的地址分配方案。在一些可行的实现方式中,存储器可以为物料清单标识文件(bill of material identity document,bom id)模块。在一些可能的实现方式中,cpld 220可以通过iic接口连接存储器240。在一些可行的实现方式中,存储器240可以为忆阻器。
56.在一些可行的实现方式中,cpld 220可以获取多个地址分配方案和各个地址分配方案对应的版本号。例如,工作人员可以通过编程的方式在cpld 220中写入多个地址分配方案和各个地址分配方案对应的版本号,cpld 220也可以从第三方设备中获取多个地址分配方案和各个地址分配方案对应的版本号,此处不做限定。其中,存储器240中可以存储当前的地址分配方案对应的版本号,cpld 220从存储器240中获取版本号后,基于版本号确定对应的地址分配方案,再基于该地址分配方案对多个vr 230进行地址设置。
57.为此,在本技术提出了一种信息传输方法和计算设备,用于实现bmc芯片210通过
cpld220对多个vr 230管理,减少适配工作量。
58.在本技术中,由于cpld 220是可编程的,在bmc芯片210中适配了多个vr 230中的第一vr和对应的第一bmc定义地址后,可以通过在cpld 220中写入第一bmc定义地址和第一cpld定义地址的对应关系。当第一vr的地址需要改变时,只需要在cpld 220中改变与第一bmc定义地址对应的cpld定义地址,而无需改变在bmc芯片210中与第一vr和对应的第一bmc定义地址,即在bmc芯片210上只需要对第一vr和第一bmc定义地址适配一次,减少了适配工作量,减短了开发周期。
59.前述实施例介绍了本技术提供给的计算设备200,接下来介绍基于该计算设备200执行的信息传输方法。
60.请参阅图3所示,本技术实施例提供的信息传输方法主要可以包括如下步骤:
61.301、cpld获取多个地址分配方案及其对应的版本号,得到第一映射表。
62.需要说明的是,地址分配方案用于指示一个部件中多个vr的cpld定义地址。例如,网卡中设有vr1和vr2,那么对应的地址分配方案可以包括对vr1的cpld定义地址和vr2的cpld定义地址;背板中设有vr3和vr4,那么对应的地址分配方案可以包括对vr3的cpld定义地址和vr4的cpld定义地址。需要说明的是,vr用于监控所设置于的部件上的相关数据,例如电压、温度、电流等。当vr获取了这些相关数据后,可以将相关数据存储在vr的cpld地址对应的寄存器中。
63.在一些可行的实现方式中,一个地址分配方案可以对应一个版本号。例如,地址分配方案1对应版本号为001,地址分配方案2对应版本号为002。在一些可能的实现方式中,工作人员可以将准备使用的第一地址分配方案对应的第一版本号,存储在存储器中。
64.在一些可能的实现方式中,多个地址分配方案及其对应的版本号可以由工作人员确定,也可以由第三方确定,此处不做限定。在一些可行的实现方式中,工作人员可以将多个地址分配方案及其对应的版本号通过编程的方式写入cpld中,此处不做限定。
65.在一些可能的实现方式中,多个地址分配方案及其对应的版本号可以构成第一映射表,示例性的,如下表1所示,为第一映射表:
66.表1
67.版本号地址分配方案001地址分配方案1002地址分配方案2003地址分配方案3
68.302、cpld基于第一映射表确定与存储器中的第一版本号对应的第一地址分配方案。
69.在一些可行的实现方式中,第一地址分配方案可以包括第一vr到第一cpld定义地址的映射,第一地址分配方案为多个地址分配方案中的一个地址分配方案。例如,如表1(第一映射表)所示,存储器中当前的第一版本号为001,则对应地址分配方案1。
70.在一些可能的实现方式中,当工作人员需要替换部件时,需要改变该部件中设置的多个vr的地址分配方案,则需在存储器中将版本号改变为第一版本号,第一版本号对应第一地址分配方案,该第一地址分配方案为所替换的部件中预设的多个vr的地址分配方案。那么,cpld可以从存储器中确定当前的版本号为第一版本号,并基于第一映射表确定与
第一版本号对应的第一地址分配方案。例如,存储器中当前的版本号为001,替换部件后,工作人员在存储器中将版本号从001改为002,那么,cpld从bom id模块中确定到002,并基于第一映射表确定地址分配方案2。
71.在一些可行的实现方式中,存储器中可以存储有多个部件中各个部件对应的版本号,cpld可以从存储器中获取这些版本号,并基于这些版本号确定各个部件对应的地址分配方案。示例性的,在存储器中,网卡对应的版本号为001,背板的版本号为002,那么cpld基于001确定对应的地址分配方案1,基于002确定对应的地址分配方案2,地址分配方案1用于为网卡进行地址设备,地址分配方案2用于为背板进行地址设备。
72.303、cpld基于第一地址分配方案对第一vr进行地址设置。
73.在一些可行的实现方式中,cpld设置一个vr的寄存器的地址,即cpld定义地址。该寄存器用于存放相关数据,相关数据可以为该vr所在部件的电流、电压和/或温度中的一个或多个。
74.示例性的,第一地址分配方案包括对部件1中的vr1和vr2的地址设备,vr1对应地址12,vr2对应地址22,如表2所示:
75.表2
76.vrcpld定义地址vr1地址12vr2地址22
77.304、cpld确定与第一vr对应的第一bmc定义地址。
78.在一些可能的实现方式中,工作人员可以预先在bmc芯片中适配多个vr和多个bmc定义地址的对应关系,例如通过下拉电阻的方式在bmc芯片中适配,也可以通过其他方式,此处不做限定。在一些可行的实现方式中,工作人员可以预先在cpld中进行编程,将各个部件中各个vr和bmc定义地址的对应关系写入cpld中。
79.示例性的,如表3所示,为部件1中各个vr和bmc定义地址的对应关系:
80.表3
81.vrbmc定义地址vr1地址11vr2地址21
82.那么,若第一vr为部件1的vr,cpld即可基于表3确定与第一vr对应的第一bmc定义地址。
83.由此可见,工作人员仅需将一个部件中各个vr和对应的bmc定义地址在bmc芯片中适配一次,在后续替换该部件时(例如从部件1替换为部件2),工作人员只需要在存储器中修改该部件对应的版本号(例如从部件1对应的版本号1改变为部件2对应的版本号2),cpld则基于新的版本号(版本号2)确定新的地址分配方案(例如,版本号1对应地址分配方案1,版本号2对应地址分配方案2),并基于新的地址分配方案(地址分配方案2)为新的部件(部件2)进行地址设置,无需在bmc芯片再次适配vr和对应的bmc定义地址,减少了适配工作量,减短了开发周期。
84.305、cpld基于第一bmc定义地址和第一地址分配方案确定第二映射表,第二映射表包括第一bmc定义地址到第一cpld定义地址的映射。
85.示例性的,第二映射表可以如下表4-1所示:
86.表4-1
87.bmc定义地址cpld定义地址地址11地址12地址21地址22
88.例如,第一vr的第一bmc定义地址为11,其第一cpld定义地址为地址12。
89.需要说明的是,工作人员替换部件时,只需要改变存储器中将旧的版本号改为新部件对应的版本号即可,即可改变第二映射表,例如,将表4-1变为如表4-2所示的第二映射表:
90.表4-2
91.bmc定义地址cpld定义地址地址11’地址12地址21’地址22
92.例如,第一vr的bmc定义地址为11’,其cpld定义地址为地址12。
93.306、bmc芯片向cpld发送信息,信息的目的地址为第一vr的第一bmc定义地址,第一vr为多个vr中的一个。
94.示例性的,当cpld接收到bmc芯片发送的信息时,该信息指向第一vr的第一bmc定义地址,cpld可以基于第一bmc定义地址和第二映射表确定第一vr的第一cpld定义地址,并基于第一cpld定义地址向第一vr转发信息。
95.需要说明的是,由于bmc芯片并不感知地址分配方案的改变,即不感知第一vr的cpld定义地址的改变,bmc芯片向第一vr发送信息时,仍然基于第一vr的第一bmc定义地址发送信息。示例性的,如表3所示,若第一vr为vr1,第一bmc定义地址为地址11。
96.在一些可能的实现方式中,该信息可以为请求信息,用于请求获取第一vr所设置的部件的相关数据,例如电流、电压和/或温度。该相关数据存放在所设置的寄存器中,bmc定义地址可以为该寄存器的最初设置的地址,该bmc定义地址也可以为任意地址,不必为第一vr实际使用过的地址,只要可以对应该第一vr的一一对应的任意信息均可,此处不做限定。
97.307、cpld根据第二映射表确定第一bmc定义地址对应的第一cpld定义地址。
98.示例性的,如表4-1所示的第二映射表所示,若第一bmc定义地址为地址11,那么,cpld定义地址为地址12;或,如表4-2所示的第二映射表所示,若第一bmc定义地址为地址11’,那么,cpld定义地址为地址12。
99.308、cpld基于第一cpld定义地址向第一vr发送信息。
100.示例性的,若第一cpld定义地址为地址12,则cpld基于地址12向第一vr发送信息;若第一cpld定义地址为地址22,则cpld基于地址22向第一vr发送信息;若第一cpld定义地址为地址32,则cpld基于地址32向第一vr发送信息。
101.在一些可能的实现方式中,该信息可以为对第一vr进行升级的信息。需要说明的是,第一vr中存在一个固件,该固件为一个程序,可以实现对电流、电压、温度的获取,以及具有生成告警信息等功能,并将相关数据存储在第一cpld定义地址对应的寄存器中。示例性的,该信息用于克服固件中的某些缺陷;或者,通过改良算法,使得该固件运行时减少计
算量。
102.在一些可行的实现方式中,该信息也可以为向第一vr请求获取所设置的部件的相关数据。
103.在本技术实施例中,若该信息用于请求相关数据,则执行步骤310-311;若该信息用于指示对第一vr进行升级,则执行步骤309。
104.309、第一vr基于该信息进行升级。
105.在一些可行的实现方式中,所述信息可以包括升级数据,用于向所述第一vr指示基于所述升级数据对固件进行升级,所述固件用于获取相关数据。
106.在一些可能的实现方式中,当第一vr接收到信息后,该信息可以为对第一vr的固件进行升级的信息,则第一vr可以在信息中所指的cpld定义地址对应的寄存器中写入该信息。然后,第一vr可以基于该信息对固件进行升级。
107.310、第一vr向cpld发送相关数据。
108.在一些可能的实现方式中,当第一vr接收到信息后,若该信息用于请求相关数据,则第一vr可以向cpld反馈请求的相关数据。
109.311、cpld向bmc芯片发送相关数据。
110.当cpld接收到第一vr发送的相关数据后,可以向bmc芯片反馈该相关数据,则该bmc芯片可以基于这些相关数据监测第一vr所设置的部件的健康状态。示例性的,bmc芯片可以基于相关数据确定第一vr所设置的部件存在异常。例如,相关数据中的温度为99℃,则确定该部件过热,bmc芯片可以反馈相关的告警信息。
111.在本技术中,由于cpld是可编程的,在bmc芯片中适配了第一vr和对应的第一bmc定义地址后,可以通过在cpld中写入第一bmc定义地址和第一cpld定义地址的对应关系。当第一vr的地址需要改变时,只需要在cpld中改变与第一bmc定义地址对应的cpld定义地址,而无需改变在bmc芯片中与第一vr和对应的第一bmc定义地址,即在bmc芯片上只需要对第一vr和第一bmc定义地址适配一次,减少了适配工作量,减短了开发周期。
112.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
113.为便于更好的实施本技术实施例的上述方案,下面还提供用于实施上述方案的相关装置。
114.请参阅图4所示,本技术实施例提供的一种计算设备400,可以包括:
115.bmc芯片410、cpld 420和多个vr 430,其中,所述bmc芯片410连接所述cpld 420,所述cpld 420连接所述多个vr 430;
116.所述bmc芯片410,用于向所述cpld 420发送信息,所述信息的目的地址为第一vr的第一bmc定义地址,所述第一vr为所述多个vr中的一个;
117.所述cpld 420,用于确定与所述第一bmc定义地址对应的第一cpld定义地址;
118.所述cpld 420,还用于基于所述第一cpld定义地址向所述第一vr发送所述信息。
119.在一些可行的实现方式中,所述cpld 420,还用于获取第一地址分配方案,所述第
一地址分配方案包括所述第一vr到所述第一cpld定义地址的映射,基于所述第一地址分配方案对所述第一vr进行地址设置。
120.在一些可行的实现方式中,所述计算设备400还包括:存储器440,所述存储器连接所述cpld 420;
121.所述存储器440,用于存储第一版本号;
122.所述cpld 420,还用于从所述存储器440中获取所述第一版本号;
123.所述cpld 420,还用于确定与所述第一版本号对应的所述第一地址分配方案,所述第一地址分配方案为所述多个地址分配方案中的一个地址分配方案。
124.在一些可行的实现方式中,所述cpld 420,还用于获取多个地址分配方案及其对应的版本号,得到第一映射表,基于所述第一映射表确定与所述第一版本号对应的所述第一地址分配方案。
125.在一些可行的实现方式中,所述cpld 420,还用于确定与所述第一vr对应的所述第一bmc定义地址,基于所述第一bmc定义地址和所述第一地址分配方案确定第二映射表,所述第二映射表包括所述第一bmc定义地址到所述第一cpld定义地址的映射,根据所述第二映射表确定所述第一bmc定义地址对应的所述第一cpld定义地址。
126.在一些可行的实现方式中,所述第一vr 430,用于基于所述信息向所述cpld 420发送所述相关数据;所述cpld 420,还用于向所述bmc芯片410发送所述相关数据。
127.在一些可行的实现方式中,所述信息包括升级数据;所述第一vr 430,还用于基于所述升级数据对所述固件进行升级,所述固件用于获取相关数据。
128.需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其带来的技术效果与本技术方法实施例相同,具体内容可参见本技术前述所示的方法实施例中的叙述,此处不再赘述。
129.本技术实施例还提供一种计算机存储介质,其中,该计算机存储介质存储有程序,该程序执行包括上述方法实施例中记载的部分或全部步骤。
130.接下来介绍本技术实施例提供的另一种通信装置,请参阅图5所示,通信装置500包括:
131.接收器501、发射器502、处理器503和存储器504。在本技术的一些实施例中,接收器501、发射器502、处理器503和存储器504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
132.存储器504可以包括只读存储器和随机存取存储器,并向处理器503提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。存储器504存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
133.处理器503控制通信装置500的操作,处理器503还可以称为中央处理单元(central processing unit,cpu)。具体的应用中,通信装置500的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
134.上述本技术实施例揭示的方法可以应用于处理器503中,或者由处理器503实现。
处理器503可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器503中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器503可以是通用处理器、数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器504,处理器503读取存储器504中的信息,结合其硬件完成上述方法的步骤。
135.接收器501可用于接收输入的数字或字符信息,以及产生与相关设置以及功能控制有关的信号输入,发射器502可包括显示屏等显示设备,发射器502可用于通过外接接口输出数字或字符信息。
136.本技术实施例中,处理器503,用于执行前述的信息传输方法。
137.在另一种可能的设计中,当计算设备400或通信装置500为芯片时,包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使该终端内的芯片执行上述第一方面任意一项的无线报告信息的发送方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述终端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)等。
138.其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,asic,或一个或多个用于控制上述方法的程序执行的集成电路。
139.另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
140.通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、rom、ram、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述
的方法。
141.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
142.所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1