CN113468027A - 监测器件地址管理方法及装置、基板管理控制器、设备 - Google Patents

监测器件地址管理方法及装置、基板管理控制器、设备 Download PDF

Info

Publication number
CN113468027A
CN113468027A CN202111030311.9A CN202111030311A CN113468027A CN 113468027 A CN113468027 A CN 113468027A CN 202111030311 A CN202111030311 A CN 202111030311A CN 113468027 A CN113468027 A CN 113468027A
Authority
CN
China
Prior art keywords
monitoring device
identification code
board
monitoring
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111030311.9A
Other languages
English (en)
Other versions
CN113468027B (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Bilin Technology Development Co ltd
Shanghai Bi Ren Technology Co ltd
Original Assignee
Beijing Bilin Technology Development Co ltd
Shanghai Biren Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Bilin Technology Development Co ltd, Shanghai Biren Intelligent Technology Co Ltd filed Critical Beijing Bilin Technology Development Co ltd
Priority to CN202111030311.9A priority Critical patent/CN113468027B/zh
Publication of CN113468027A publication Critical patent/CN113468027A/zh
Application granted granted Critical
Publication of CN113468027B publication Critical patent/CN113468027B/zh
Priority to PCT/CN2022/115631 priority patent/WO2023030275A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3031Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a motherboard or an expansion card

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种监测器件地址管理方法及装置、基板管理控制器、电子设备。该监测器件地址管理方法用于包括至少一个监测器件的板卡,监测器件基于***管理总线进行管理。该方法包括:获取板卡的枚举时间;基于枚举时间,生成监测器件的标识码,以用于监测器件的地址编码。该方法可以动态生成监测器件的标识码,无需对硬件进行修改,无需板卡上的微处理器具备随机数生成功能,可以有效降低撞码概率,降低产品成本。

Description

监测器件地址管理方法及装置、基板管理控制器、设备
技术领域
本公开的实施例涉及一种监测器件地址管理方法及装置、基板管理控制器、电子设备。
背景技术
计算机或服务器通常支持通过主板自带的插槽扩展外设,例如网卡、音频卡、采样卡、密码卡等。这些扩展外设通常设计为板卡的形式,板卡可以被***计算机或服务器提供的插槽中,通过使板卡与计算机或服务器的控制部件建立通信连接,可以使计算机或服务器使用板卡提供的硬件资源,从而实现硬件扩展。
发明内容
本公开至少一个实施例提供一种监测器件地址管理方法,用于包括至少一个监测器件的板卡,所述监测器件基于***管理总线进行管理,所述方法包括:获取所述板卡的枚举时间;基于所述枚举时间,生成所述监测器件的标识码,以用于所述监测器件的地址编码。
例如,在本公开一实施例提供的方法中,基于所述枚举时间,生成所述监测器件的标识码,包括:获取所述至少一个监测器件中每个监测器件的监测数据;对于每个监测器件,根据所述监测数据和所述板卡的枚举时间,生成所述监测器件的标识码。
例如,在本公开一实施例提供的方法中,对于每个监测器件,根据所述监测数据和所述板卡的枚举时间,生成所述监测器件的标识码,包括:将所述监测数据和所述枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将所述计算结果作为所述监测器件的标识码。
例如,在本公开一实施例提供的方法中,所述监测数据包括电压参数和温度参数中的至少一种。
例如,在本公开一实施例提供的方法中,所述板卡包括多个监测器件,针对所述多个监测器件中的每一个监测器件,进行所述计算所采用的监测数据的参数类型相同。
例如,在本公开一实施例提供的方法中,所述多个监测器件中的每一个监测器件分别对应于不同的标识码。
例如,在本公开一实施例提供的方法中,所述板卡包括一个监测器件,基于所述枚举时间,生成所述监测器件的标识码,包括:将所述板卡的枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将所述计算结果作为所述监测器件的标识码。
例如,本公开一实施例提供的方法还包括:将所述监测器件的标识码通过所述***管理总线发送至管理所述板卡的基板管理控制器,以使所述基板管理控制器基于所述标识码进行地址编码而生成所述监测器件的地址。
例如,在本公开一实施例提供的方法中,所述板卡包括外设部件互连板卡或外设部件互连高速板卡。
例如,在本公开一实施例提供的方法中,所述板卡连接至主机,所述枚举时间为所述板卡基于外设部件互连总线或外设部件互连高速总线被所述主机枚举的时间。
例如,在本公开一实施例提供的方法中,所述监测器件包括传感器,所述传感器配置为对反映所述板卡的运行状态的参数进行感测。
本公开至少一个实施例提供一种监测器件地址管理方法,用于基板管理控制器,其中,所述基板管理控制器配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理,所述方法包括:接收所述监测器件的标识码,其中,所述标识码基于所述监测器件所属的板卡的枚举时间生成;以及基于所述标识码,进行地址编码,生成所述监测器件的地址。
例如,在本公开一实施例提供的方法中,接收所述监测器件的标识码包括:通过所述***管理总线接收所述监测器件的标识码。
例如,在本公开一实施例提供的方法中,所述至少一个板卡为多个板卡,所述多个板卡中的每一个板卡分别对应于不同的枚举时间。
本公开至少一个实施例提供一种监测器件地址管理装置,用于包括至少一个监测器件的板卡,所述监测器件基于***管理总线进行管理,所述装置包括:枚举时间获取单元,配置为获取所述板卡的枚举时间;标识码生成单元,配置为基于所述枚举时间,生成所述监测器件的标识码,以用于所述监测器件的地址编码。
本公开至少一个实施例提供一种基板管理控制器,配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理,其中,所述基板管理控制器包括:标识码获取单元,配置为接收所述监测器件的标识码,其中,所述标识码基于所述监测器件所属的板卡的枚举时间生成;以及地址生成单元,配置为基于所述标识码,进行地址编码,生成所述监测器件的地址。
本公开至少一个实施例提供一种电子设备,包括本公开任一实施例提供的监测器件地址管理装置或基板管理控制器。
本公开至少一个实施例提供一种电子设备,包括基板管理控制器和至少一个板卡,其中,所述基板管理控制器与所述至少一个板卡通信连接,每个板卡包括微处理器和至少一个监测器件;所述微处理器配置为获取所述板卡的枚举时间,并基于所述枚举时间生成所述监测器件的标识码;所述监测器件配置为对反映所述板卡的运行状态的参数进行感测;所述基板管理控制器配置为接收所述监测器件的标识码,并基于所述标识码进行地址编码,生成所述监测器件的地址。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1为一种电子设备的示意框图;
图2为本公开一些实施例提供的一种监测器件地址管理方法的流程示意图;
图3为图2中步骤S120的示例性流程图;
图4为本公开一些实施例提供的另一种监测器件地址管理方法的流程示意图;
图5A为本公开一些实施例提供的监测器件地址管理方法的应用流程图之一;
图5B为本公开一些实施例提供的监测器件地址管理方法的应用流程图之二;
图6为本公开一些实施例提供的一种监测器件地址管理方法的流程示意图;
图7为本公开一些实施例提供的一种监测器件地址管理装置的示意框图;
图8为本公开一些实施例提供的一种基板管理控制器的示意框图;
图9为本公开一些实施例提供的一种电子设备的示意框图;以及
图10为本公开一些实施例提供的另一种电子设备的示意框图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
板卡作为计算机外设的附加硬件设备,广泛应用于计算机领域。板卡采用总线协议与计算机通信,以便于接收计算机发出的控制信号、控制命令等,并且向计算机发出反馈信息。比较常用的用于板卡的总线协议包括外设部件互连(Peripheral ComponentInterconnect,PCI)总线和外设部件互连高速(Peripheral Component InterconnectExpress,PCI-e)总线,相应的板卡被称为PCI板卡、PCI-e板卡。在PCI板卡、PCI-e板卡上可以设置一个或多个监测器件,这些监测器件可以对板卡的运行状态进行监控,从而便于计算机管理这些板卡。
图1为一种电子设备的示意框图。如图1所示,在该电子设备中,主机01与多个PCI-e板卡连接。例如,主机01可以为通常的计算机或服务器,其提供多个插槽以便于与PCI-e板卡连接,从而实现硬件扩展。在该示例中,多个板卡PCI-e-1、PCI-e-2、…、PCI-e-n通过PCI-e桥(PCI-e Bridge)与主机01通信连接。PCI-e桥通常可以集成在主机01的南桥芯片或北桥芯片中。板卡PCI-e-1、PCI-e-2、…、PCI-e-n基于PCI-e总线与主机01之间进行数据传输。需要说明的是,虽然该示例以PCI-e板卡为例进行说明,本领域技术人员可以理解,也可以采用PCI板卡,本公开的实施例对此不作限制。
例如,板卡PCI-e-1、PCI-e-2、…、PCI-e-n上可以设置一个或多个监测器件,这些监测器件可以对板卡PCI-e-1、PCI-e-2、…、PCI-e-n的运行状态进行监控,以便于管理板卡PCI-e-1、PCI-e-2、…、PCI-e-n。例如,监测器件可以被称为PVT(Process, Voltage andTemperature)器件,可以感测板卡的电压、温度等参数。在图1所示的示例中,每个板卡上设置一个监测器件,例如,板卡PCI-e-1上设置有监测器件PVT-1,板卡PCI-e-2上设置有监测器件PVT-2,以此类推,板卡PCI-e-n上设置有监测器件PVT-n。当然,本公开的实施例不限于此,每个板卡上也可以设置多个监测器件,这可以根据实际需求而定。
例如,监测器件PVT-1、PVT-2、…、PVT-n通过***管理总线(System ManagementBus,SMbus)与主机01通信,例如与主机01的基板管理控制器(Baseboard ManagementController,BMC)中部署的SMbus控制器通信。例如,监测器件PVT-1、PVT-2、…、PVT-n可以通过SMbus接收来自BMC的控制命令或控制信号,并且将测量得到的数据传输给BMC。SMBus是BMC所广泛采用的总线协议,通常计算机***中存在多个PCI板卡或PCI-e板卡,其上又包括一个或多个基于SMbus管理的监测器件,以对计算机电源、附件等运行状态进行监控。
例如,当主机01与多个板卡连接且至少部分板卡的类型相同时,为了识别并区分各个板卡上的监测器件,需要对各个监测器件进行地址编码,也即,为各个监测器件分配地址。
例如,在一些示例中,可以采用硬件定址的方式来确定地址。例如,在主机箱背板上针对不同PCI-e插槽配置不同的上下拉电阻。在将板卡***PCI-e插槽后,由于硬件接触而产生电气连接,从而可以确定监测器件的地址。然而,这种方式需要在硬件设计上进行额外考虑,提高了硬件成本,并且,由于依赖于板卡与插槽的电气连接,这种方式可以支持的设备数目受到物理尺寸、板卡制程等因素的限制。
例如,在另一些示例中,可以采用软件动态分配的方式来确定地址。例如,可以根据SMbus协议中的地址解析协议(Address Resolution Protocol,ARP)来实现地址编码。此时,需要各个监测器件自行提供唯一的标识码(UDID),在确定各个监测器件的标识码之后,根据该标识码来生成地址。然而,ARP协议要求每个监测器件各自提供唯一的标识码,而在对称多设备***中,即便是采用伪随机数做种子,也有一定概率会出现“撞码”(也即,不同的监测器件的标识码相同)。而且,该方式需要板卡上的微处理器(Microprocessor Unit)具有随机数产生功能,这对板卡的硬件要求较高。
上述编址方式,无论是硬件定址的方式,还是基于随机数的软件动态分配方式,都存在局限性,对包含板卡的设备的性能、结构、成本等带来不利影响,无法满足日益增长的需求。
本公开至少一个实施例提供一种监测器件地址管理方法及装置、基板管理控制器、电子设备。该方法可以动态生成监测器件的标识码,无需对硬件进行修改,无需板卡上的微处理器具备随机数生成功能,可以有效降低撞码概率,降低产品成本。
下面,将参考附图详细地说明本公开的实施例。应当注意的是,不同的附图中相同的附图标记将用于指代已描述的相同的元件。
本公开至少一个实施例提供一种监测器件地址管理方法。该监测器件地址管理方法用于包括至少一个监测器件的板卡,监测器件基于***管理总线进行管理。该方法包括:获取板卡的枚举时间;基于枚举时间,生成监测器件的标识码,以用于监测器件的地址编码。
图2为本公开一些实施例提供的一种监测器件地址管理方法的流程示意图。如图2所示,在一些实施例中,该方法包括如下操作。
步骤S110:获取板卡的枚举时间;
步骤S120:基于枚举时间,生成监测器件的标识码,以用于监测器件的地址编码。
例如,该方法可以用于包括至少一个监测器件的板卡,监测器件基于***管理总线进行管理。例如,该方法可以用于如图1所示的各个PCI-e板卡以及包含这些PCI-e板卡的电子设备。
例如,在步骤S110中,板卡上的微处理器可以获取该板卡的枚举时间。例如,当该板卡连接至主机01时,也即,该板卡被***主机01提供的插槽时,若该板卡为PCI板卡或PCI-e板卡,则该板卡会基于PCI总线或PCI-e总线被主机01枚举。这里,枚举时间是指该板卡基于PCI总线或PCI-e总线被主机01枚举的时间,也即进行枚举时主机01中的时间模块所运行的***时间中对应的时刻。例如,可以采用MSI_CAPABILITY_REGISTER和MSI_CONTROL_REGISTER来实现枚举。在完成枚举之后,可以通过查询PCI-e MSI_CAPABILITY_REGISTER等寄存器的变化来确定枚举时间。关于PCI板卡或PCI-e板卡枚举的具体说明可参考常规设计,此处不再详述。
例如,在步骤S120中,可以根据枚举时间来生成监测器件的标识码,该标识码可以用于后续监测器件的地址编码。由于各个板卡在PCI总线或PCI-e总线上是依序进行枚举的,并非同时进行枚举,因此每个板卡对应于一个唯一的枚举时间,该枚举时间与板卡具有特定的对应关系,从而可以利用枚举时间来生成监测器件的标识码,使得相应生成的标识码与该板卡上的监测器件具有特定的对应关系,从而使得监测器件的标识码具有唯一性。
例如,在一些示例中,如图3所示,上述步骤S120可以进一步包括如下操作。
步骤S121:获取至少一个监测器件中每个监测器件的监测数据;
步骤S122:对于每个监测器件,根据监测数据和板卡的枚举时间,生成监测器件的标识码。
例如,在步骤S121中,监测器件可以为设置在板卡上的PVT器件,监测器件可以采集得到所属板卡的电压参数和温度参数中的至少一种。监测器件的监测数据是指监测器件采集得到的数据,也可称为PVT数据,相应地,监测数据包括电压参数和温度参数中的至少一种,因此,监测数据可以是电压值、温度值等。例如,在一些示例中,监测器件为传感器,该传感器配置为对反映板卡的运行状态的参数进行感测,这些反映板卡的运行状态的参数包括电压参数和温度参数中的至少一种。例如,可以由板卡上的微处理器来获取监测器件的监测数据。
例如,当板卡上设置一个监测器件时,需要获取该监测器件的监测数据;当板卡上设置有多个监测器件时,需要获取每个监测器件的监测数据。当板卡上设置有多个监测器件时,各个监测器件可以为不同类型的监测器件,以用于得到不同类型的监测数据,或者,各个监测器件可以为相同类型的监测器件,以用于针对板卡的不同部位或不同信号路径进行监测。
例如,在步骤S122中,对于每个监测器件,根据该监测器件的监测数据以及该监测器件所属的板卡的枚举时间,可以生成该监测器件的标识码。例如,标识码可以为预设位数的二进制数,例如,64位、32位、16位、8位或其他任意位数等,本公开的实施例对此不作限制。例如,标识码可以采用整数型、字符型、浮点型等任意类型的数据形式表示,本公开的实施例对此不作限制。
例如,在一个示例中,步骤S122可以包括:将监测数据和枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将计算结果作为监测器件的标识码。哈希算法也可称为散列算法,可以把任意长度的输入通过散列计算变换成固定长度的输出。由于各个监测器件本身测量的监测数据有差异,且不同板卡的枚举时间也有差异,因此,监测数据及枚举时间所组成的数据集合对于每个监测器件而言是唯一的。将监测数据及枚举时间作为种子,也即,作为哈希运算的输入,可以得到全局唯一的标识码。由此使得不同的监测器件对应于不同的标识码,便于后续进行地址编码。当存在多个监测器件时,多个监测器件中的每一个监测器件分别对应于不同的标识码。例如,可以由设置在板卡上的微处理器来进行哈希运算并生成标识码。当然,本公开的实施例不限于此,也可以由板卡上的其他适用的固件或硬件来执行哈希运算。
例如,监测数据可以表示为D0, D1, …, Dn,其中,D0, D1, …, Dn可以表示针对同一类型的参数进行多次采样而得到的多个数值,也可以指对于不同类型的参数分别采样而得到的数值,这可以根据实际需求而定,本公开的实施例对此不作限制。
假设枚举时间表示为T,标识码表示为UDID,则哈希运算可以表示为UDID=Hash({T, D0, D1, …, Dn})。需要说明的是,当进行哈希运算时,可以使用D0, D1, …, Dn中的任意一个或多个数值,而不限于使用D0, D1, …, Dn的全部数值,例如UDID=Hash({T,D0}),UDID=Hash({T, D0, D1}),UDID=Hash({T, D1}),UDID=Hash({T, D2, …, Dn})等,这可以根据实际需求而定,本公开的实施例对此不作限制。
例如,当存在多个监测器件时,针对多个监测器件中的每一个监测器件,进行计算所采用的监测数据的参数类型相同。也即是,假设多个监测器件包括第一监测器件和第二监测器件,若计算第一监测器件的标识码时采用了第一监测器件测量的电压值,则计算第二监测器件的标识码时也需采用第二监测器件测量的电压值;若计算第一监测器件的标识码时采用了第一监测器件测量的温度值,则计算第二监测器件的标识码时也需采用第二监测器件测量的温度值。由此,可以使针对不同监测器件的计算结果具有相同或相近的精度和准确度。
需要说明的是,本公开的实施例中,监测数据不限于电压参数和温度参数,也可以为其他类型的参数,例如功率参数、频率参数、电流参数等,通常的PVT数据均可以作为监测数据,本公开的实施例对此不作限制。用于计算标识码的算法不限于哈希算法,也可以采用其他类型的算法,只需要能够基于监测数据和枚举时间生成相应的编码以作为标识码即可,这可以根据实际需求而定,本公开的实施例对此不作限制。
例如,在一些示例中,若板卡上仅设置有一个监测器件,则可以只采用该板卡的枚举时间进行哈希运算,而无需使用该监测器件的监测数据。例如,上述步骤S120可以包括:将板卡的枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将计算结果作为监测器件的标识码。由于板卡上仅有一个监测器件,无需在板卡内对多个监测器件进行区分,因此板卡的枚举时间对于该监测器件而言是唯一的。将枚举时间作为种子,也即,作为哈希运算的输入,可以得到全局唯一的标识码,以便于后续进行地址编码。仍然将枚举时间表示为T,标识码表示为UDID,则哈希运算可以表示为UDID=Hash({T})。通过这种方式,可以简化操作,省略获取监测数据的步骤,从而提高处理效率。
图4为本公开一些实施例提供的另一种监测器件地址管理方法的流程示意图。如图4所示,在一些实施例中,除了包括步骤S110和S120,该方法还可以包括步骤S130。该实施例提供的方法中的步骤S110和S120与图2所示的方法中的步骤S110和S120基本相同,此处不再赘述。
步骤S130:将监测器件的标识码通过***管理总线发送至管理板卡的基板管理控制器,以使基板管理控制器基于标识码进行地址编码而生成监测器件的地址。
例如,在步骤S130中,由于监测器件基于***管理总线(SMbus)进行管理,因此可以通过SMbus将标识码发送至管理该监测器件所属板卡的基板管理控制器。基板管理控制器可以根据SMbus协议中的ARP协议来对标识码进行地址编码,以得到监测器件的地址。例如,监测器件与基板管理控制器之间基于SMbus进行通信的方式、基于ARP协议的具体编址方式等可以参考常规设计,此处不再赘述。
在本公开的实施例中,通过使用枚举时间或枚举时间与监测数据的数据集合,可以动态生成监测器件的标识码。这种方式不需要对硬件进行修改,不需要额外设置上下拉电阻。而且,标识码并非基于随机数生成功能得到,因此无需板卡上的微处理器具备随机数生成功能。通过将枚举时间或枚举时间与监测数据的数据集合作为种子,加工生成监测器件的标识码,可以有效降低撞码概率,降低产品成本。
图5A为本公开一些实施例提供的监测器件地址管理方法的应用流程图之一。下面结合图5A对基于枚举时间和监测数据生成标识码的应用流程进行简要说明。
首先,使电子设备上电,也即,向电子设备供电以使其开始工作。接着,等待PCI-e板卡(也可以是PCI板卡)被与之连接的主机枚举。然后,板卡上的微处理器判断枚举是否完成。若完成枚举,则记录枚举时间T1。若未完成枚举,则继续等待并在预定时间间隔后继续判断是否完成枚举。
在完成枚举且记录了枚举时间T1之后,微处理器读取板卡上的监测器件的监测数据(PVT数据)D0, D1, …, Dn。然后,微处理器根据枚举时间T1和监测数据D0, D1, …, Dn进行哈希运算,也即,UDID=Hash({T1, D0, D1, …, Dn}),由此得到该监测器件的标识码UDID。
图5B为本公开一些实施例提供的监测器件地址管理方法的应用流程图之二。下面结合图5B对基于枚举时间生成标识码的应用流程进行简要说明。
首先,使电子设备上电,也即,向电子设备供电以使其开始工作。接着,等待PCI-e板卡(也可以是PCI板卡)被与之连接的主机枚举。然后,板卡上的微处理器判断枚举是否完成。若完成枚举,则记录枚举时间T2。若未完成枚举,则继续等待并在预定时间间隔后继续判断是否完成枚举。在完成枚举且记录了枚举时间T2之后,微处理器根据枚举时间T2进行哈希运算,也即,UDID=Hash({T2}),由此得到该监测器件的标识码UDID。
需要说明的是,图5A和图5B所示的应用流程仅为示例性的,而非限制性的,在实际操作时,还可以在该流程中加入其它操作步骤,或者调整该操作流程的执行顺序,这可以根据实际需求而定,本公开的实施例对此不作限制。
本公开至少一个实施例还提供一种监测器件地址管理方法,用于基板管理控制器。例如,基板管理控制器配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理。该方法例如用于如图1所示的电子设备,基板管理控制器通过运行SMbus控制器来实施该方法。
如图6所示,在一些实施例中,该方法包括如下操作。
步骤S210:接收监测器件的标识码,该标识码基于监测器件所属的板卡的枚举时间生成;
步骤S220:基于标识码,进行地址编码,生成监测器件的地址。
例如,在步骤S210中,可以通过监测器件与基板管理控制器之间的总线协议来接收监测器件的标识码。该标识码可以是通过如图2至图4所示的方法得到的,也即,基于板卡的枚举时间得到的,或者,基于枚举时间与监测器件的监测数据得到的。
例如,上述步骤S210可以包括:通过***管理总线(SMbus)接收监测器件的标识码。由于基板管理控制器基于SMbus对监测器件进行管理,因此基于SMbus接收标识码可以提高效率。例如,当基板管理控制器对多个板卡进行管理时,由于板卡是依序进行枚举的,因此多个板卡中的每一个板卡分别对应于不同的枚举时间,使得基于枚举时间生成的标识码可以彼此不同。
例如,在步骤S220中,在接收到标识码之后,根据该标识码,基板管理控制器进行地址编码,从而生成相应的监测器件的地址。例如,基板管理控制器可以根据SMbus协议中的ARP协议来对标识码进行地址编码。在得到监测器件的地址之后,基板管理控制器可以根据该地址来对监测器件进行管理和操作。
通过图6所示的方法与图2至图4所示的方法相互配合,可以生成监测器件的标识码并基于该标识码生成监测器件的地址。相比于硬件定址的方式和基于随机数的软件动态分配方式,本公开实施例提供的方法不需要对硬件进行修改,不需要额外设置上下拉电阻,并且无需板卡上的微处理器具备随机数生成功能。该方法可以用于对称多设备***中,能够有效降低撞码概率,降低产品成本。
本公开至少一个实施例还提供一种监测器件地址管理装置。该装置可以动态生成监测器件的标识码,无需对硬件进行修改,无需板卡上的微处理器具备随机数生成功能,可以有效降低撞码概率,降低产品成本。
图7为本公开一些实施例提供的一种监测器件地址管理装置的示意框图。如图7所示,监测器件地址管理装置10可以用于包括至少一个监测器件的板卡,该监测器件基于***管理总线进行管理。例如,监测器件地址管理装置10包括枚举时间获取单元11和标识码生成单元12。
枚举时间获取单元11配置为获取板卡的枚举时间。例如,枚举时间获取单元11可以执行如图2、图4所示的监测器件地址管理方法的步骤S110。标识码生成单元12配置为基于枚举时间,生成监测器件的标识码,以用于监测器件的地址编码。例如,标识码生成单元12可以执行如图2、图4所示的监测器件地址管理方法的步骤S120。
例如,枚举时间获取单元11和标识码生成单元12可以实现为微处理器或者微处理器中的线程,该微处理器设置在板卡上,从而通过上述操作得到该板卡上的监测器件的标识码。需要说明的是,枚举时间获取单元11和标识码生成单元12可以为硬件、软件、固件以及它们的任意可行的组合。例如,枚举时间获取单元11和标识码生成单元12可以为专用或通用的电路、芯片或装置等,也可以为处理器和存储器的结合。关于枚举时间获取单元11和标识码生成单元12的具体实现形式,本公开的实施例对此不作限制。
需要说明的是,本公开的实施例中,监测器件地址管理装置10的各个单元与前述的监测器件地址管理方法的各个步骤对应,关于该监测器件地址管理装置10的具体功能可以参考上文中监测器件地址管理方法的相关描述,此处不再赘述。图7所示的监测器件地址管理装置10的组件和结构只是示例性的,而非限制性的,根据需要,该监测器件地址管理装置10还可以包括其他组件和结构。
本公开至少一个实施例还提供一种基板管理控制器。该基板管理控制器可以根据利用板卡的枚举时间生成的标识码进行地址编码,无需对硬件进行修改,无需板卡上的微处理器具备随机数生成功能,可以有效降低撞码概率,降低产品成本。
图8为本公开一些实施例提供的一种基板管理控制器的示意框图。如图8所示,基板管理控制器20配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理。例如,基板管理控制器20包括标识码获取单元21和地址生成单元22。
标识码获取单元21配置为接收监测器件的标识码。例如,标识码基于监测器件所属的板卡的枚举时间生成。例如,标识码获取单元21可以执行如图6所示的监测器件地址管理方法的步骤S210。地址生成单元22配置为基于标识码,进行地址编码,生成监测器件的地址。例如,地址生成单元22可以执行如图6所示的监测器件地址管理方法的步骤S220。
例如,标识码获取单元21和地址生成单元22可以实现为基板管理控制器20中的模块或线程,基板管理控制器20可以为BMC并且部署在包括板卡的电子设备中,从而通过上述操作得到板卡上的监测器件的地址。需要说明的是,标识码获取单元21和地址生成单元22可以为硬件、软件、固件以及它们的任意可行的组合。例如,标识码获取单元21和地址生成单元22可以为专用或通用的电路、芯片或装置等,也可以为处理器和存储器的结合。关于标识码获取单元21和地址生成单元22的具体实现形式,本公开的实施例对此不作限制。
需要说明的是,本公开的实施例中,基板管理控制器20的各个单元与前述的监测器件地址管理方法的各个步骤对应,关于该基板管理控制器20的具体功能可以参考上文中监测器件地址管理方法的相关描述,此处不再赘述。图8所示的基板管理控制器20的组件和结构只是示例性的,而非限制性的,根据需要,该基板管理控制器20还可以包括其他组件和结构。
本公开至少一个实施例还提供一种电子设备,该电子设备包括上述监测器件地址管理装置或上述基板管理控制器。该电子设备可以动态生成监测器件的标识码,并根据该标识码进行地址编码,无需对硬件进行修改,无需板卡上的微处理器具备随机数生成功能,可以有效降低撞码概率,降低产品成本。
图9为本公开一些实施例提供的一种电子设备的示意框图。如图9所示,电子设备30可以包括监测器件地址管理装置31或基板管理控制器32。例如,监测器件地址管理装置31可以为图7所示的监测器件地址管理装置10,基板管理控制器32可以为图8所示的基板管理控制器20。例如,在一些示例中,电子设备30可以同时包括监测器件地址管理装置31和基板管理控制器32,以生成监测器件的标识码并根据该标识码进行地址编码。关于该电子设备30的相关说明可参考上文中关于监测器件地址管理装置10和基板管理控制器20的描述,此处不再赘述。
图10为本公开一些实施例提供的另一种电子设备的示意框图。如图10所示,电子设备40包括基板管理控制器41和至少一个板卡。例如,图中示出多个板卡PCI-e-1、PCI-e-2、…、PCI-e-n,但这并不构成对本公开实施例的限制,在一些示例中,电子设备40也可以仅包括一个板卡。电子设备40所包含的板卡可以为PCI-e板卡,也可以为PCI板卡,或者为其他总线类型的板卡。
例如,基板管理控制器41与至少一个板卡通信连接。基板管理控制器41可以为BMC,并且基于***管理总线(SMbus)与板卡通信连接,例如与板卡上设置的监测器件(PVT器件)通信连接。
例如,每个板卡包括微处理器和至少一个监测器件。在图10所示的示例中,板卡PCI-e-1包括微处理器MPU1和监测器件PVT-1,板卡PCI-e-2包括微处理器MPU2和监测器件PVT-2,以此类推,板卡PCI-e-n包括微处理器MPUn和监测器件PVT-n。
例如,监测器件配置为对反映板卡的运行状态的参数进行感测。在图10所示的示例中,监测器件PVT-1对反映板卡PCI-e-1的运行状态的参数进行感测,监测器件PVT-2对反映板卡PCI-e-2的运行状态的参数进行感测,以此类推,监测器件PVT-n对反映板卡PCI-e-n的运行状态的参数进行感测。这些参数可以包括电压参数和/或温度参数。
例如,微处理器配置为获取板卡的枚举时间,并基于枚举时间生成监测器件的标识码。例如,在图10所示的示例中,微处理器MPU1配置为获取板卡PCI-e-1的枚举时间,并基于枚举时间生成监测器件PVT-1的标识码;微处理器MPU2配置为获取板卡PCI-e-2的枚举时间,并基于枚举时间生成监测器件PVT-2的标识码;微处理器MPUn配置为获取板卡PCI-e-n的枚举时间,并基于枚举时间生成监测器件PVT-n的标识码。例如,可以将枚举时间作为哈希运算的输入,将哈希运算的结果作为标识码。或者,也可以将枚举时间与监测器件的监测数据所组成的数据集合作为哈希运算的输入,将哈希运算的结果作为标识码。
例如,当存在多个板卡时,针对每一个板卡进行计算所采用的监测数据的参数类型相同。在监测数据包括电压参数和/或温度参数时,也即,监测数据包括电压值和/或温度值时,假设多个板卡包括第一板卡和第二板卡,若计算第一板卡上的某一监测器件的标识码时采用了该监测器件测量的电压值,则计算第二板卡上的某一监测器件的标识码时也需采用该监测器件测量的电压值;若计算第一板卡上的某一监测器件的标识码时采用了该监测器件测量的温度值,则计算第二板卡上的某一监测器件的标识码时也需采用该监测器件测量的温度值。由此,可以使针对不同板卡上的监测器件的计算结果具有相同或相近的精度和准确度。当然,在该情形中,对于同一板卡上的不同监测器件,进行计算所采用的监测数据的参数类型也相同。
例如,基板管理控制器41配置为接收监测器件的标识码,并基于标识码进行地址编码,生成监测器件的地址。例如,基板管理控制器41可以根据SMbus协议中的ARP协议来对标识码进行地址编码,以得到各个监测器件PVT-1、PVT-2、…、PVT-n的地址。
需要说明的是,本公开的实施例中,电子设备40的组件和结构只是示例性的,而非限制性的,根据需要,该电子设备40还可以包括其他组件和结构。关于该电子设备40的详细说明和技术效果可以参考上文中关于监测器件地址管理方法的描述,此处不再赘述。
有以下几点需要说明:
(1)本公开实施例附图只涉及到本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。

Claims (18)

1.一种监测器件地址管理方法,用于包括至少一个监测器件的板卡,所述监测器件基于***管理总线进行管理,所述方法包括:
获取所述板卡的枚举时间;以及
基于所述枚举时间,生成所述监测器件的标识码,以用于所述监测器件的地址编码。
2.根据权利要求1所述的方法,其中,基于所述枚举时间,生成所述监测器件的标识码,包括:
获取所述至少一个监测器件中每个监测器件的监测数据;
对于每个监测器件,根据所述监测数据和所述板卡的枚举时间,生成所述监测器件的标识码。
3.根据权利要求2所述的方法,其中,对于每个监测器件,根据所述监测数据和所述板卡的枚举时间,生成所述监测器件的标识码,包括:
将所述监测数据和所述枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将所述计算结果作为所述监测器件的标识码。
4.根据权利要求2所述的方法,其中,所述监测数据包括电压参数和温度参数中的至少一种。
5.根据权利要求3所述的方法,其中,所述板卡包括多个监测器件,
针对所述多个监测器件中的每一个监测器件,进行所述计算所采用的监测数据的参数类型相同。
6.根据权利要求5所述的方法,其中,所述多个监测器件中的每一个监测器件分别对应于不同的标识码。
7.根据权利要求1所述的方法,其中,所述板卡包括一个监测器件,
基于所述枚举时间,生成所述监测器件的标识码,包括:
将所述板卡的枚举时间作为输入,采用哈希算法进行计算并得到计算结果,将所述计算结果作为所述监测器件的标识码。
8.根据权利要求1所述的方法,还包括:
将所述监测器件的标识码通过所述***管理总线发送至管理所述板卡的基板管理控制器,以使所述基板管理控制器基于所述标识码进行地址编码而生成所述监测器件的地址。
9.根据权利要求1-8任一项所述的方法,其中,所述板卡包括外设部件互连板卡或外设部件互连高速板卡。
10.根据权利要求9所述的方法,其中,所述板卡连接至主机,所述枚举时间为所述板卡基于外设部件互连总线或外设部件互连高速总线被所述主机枚举的时间。
11.根据权利要求1-8任一项所述的方法,其中,所述监测器件包括传感器,所述传感器配置为对反映所述板卡的运行状态的参数进行感测。
12.一种监测器件地址管理方法,用于基板管理控制器,其中,所述基板管理控制器配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理,
所述方法包括:
接收所述监测器件的标识码,其中,所述标识码基于所述监测器件所属的板卡的枚举时间生成;以及
基于所述标识码,进行地址编码,生成所述监测器件的地址。
13.根据权利要求12所述的方法,其中,接收所述监测器件的标识码包括:
通过所述***管理总线接收所述监测器件的标识码。
14.根据权利要求12所述的方法,其中,所述至少一个板卡为多个板卡,所述多个板卡中的每一个板卡分别对应于不同的枚举时间。
15.一种监测器件地址管理装置,用于包括至少一个监测器件的板卡,所述监测器件基于***管理总线进行管理,所述装置包括:
枚举时间获取单元,配置为获取所述板卡的枚举时间;
标识码生成单元,配置为基于所述枚举时间,生成所述监测器件的标识码,以用于所述监测器件的地址编码。
16.一种基板管理控制器,配置为基于***管理总线对位于至少一个板卡上的至少一个监测器件进行管理,其中,
所述基板管理控制器包括:
标识码获取单元,配置为接收所述监测器件的标识码,其中,所述标识码基于所述监测器件所属的板卡的枚举时间生成;以及
地址生成单元,配置为基于所述标识码,进行地址编码,生成所述监测器件的地址。
17.一种电子设备,包括如权利要求15所述的监测器件地址管理装置或如权利要求16所述的基板管理控制器。
18.一种电子设备,包括基板管理控制器和至少一个板卡,其中,所述基板管理控制器与所述至少一个板卡通信连接,每个板卡包括微处理器和至少一个监测器件;
所述微处理器配置为获取所述板卡的枚举时间,并基于所述枚举时间生成所述监测器件的标识码;
所述监测器件配置为对反映所述板卡的运行状态的参数进行感测;
所述基板管理控制器配置为接收所述监测器件的标识码,并基于所述标识码进行地址编码,生成所述监测器件的地址。
CN202111030311.9A 2021-09-03 2021-09-03 监测器件地址管理方法及装置、基板管理控制器、设备 Active CN113468027B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111030311.9A CN113468027B (zh) 2021-09-03 2021-09-03 监测器件地址管理方法及装置、基板管理控制器、设备
PCT/CN2022/115631 WO2023030275A1 (zh) 2021-09-03 2022-08-29 监测器件地址管理方法及装置、基板管理控制器、设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111030311.9A CN113468027B (zh) 2021-09-03 2021-09-03 监测器件地址管理方法及装置、基板管理控制器、设备

Publications (2)

Publication Number Publication Date
CN113468027A true CN113468027A (zh) 2021-10-01
CN113468027B CN113468027B (zh) 2021-11-19

Family

ID=77867344

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111030311.9A Active CN113468027B (zh) 2021-09-03 2021-09-03 监测器件地址管理方法及装置、基板管理控制器、设备

Country Status (2)

Country Link
CN (1) CN113468027B (zh)
WO (1) WO2023030275A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023030275A1 (zh) * 2021-09-03 2023-03-09 上海壁仞智能科技有限公司 监测器件地址管理方法及装置、基板管理控制器、设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102725749A (zh) * 2011-08-22 2012-10-10 华为技术有限公司 枚举输入输出设备的方法和设备
US20130080754A1 (en) * 2011-09-22 2013-03-28 Cisco Technology, Inc. Service Profile Based Peripheral Component Interconnect Device Enumeration And Option ROM Loading
US20130346660A1 (en) * 2012-06-25 2013-12-26 Piotr Kwidzinski Usb device control using endpoint type detection during enumeration
CN103530254A (zh) * 2013-10-11 2014-01-22 杭州华为数字技术有限公司 多节点***的外部设备互联枚举方法和装置
US20190042498A1 (en) * 2017-05-22 2019-02-07 Intel Corporation Enumerated per device addressability for memory subsystems
CN110858184A (zh) * 2018-08-24 2020-03-03 龙芯中科技术有限公司 一种pci总线设备枚举方法和装置
CN111008379A (zh) * 2019-11-22 2020-04-14 腾讯科技(深圳)有限公司 电子设备的固件安全检测方法及相关设备
CN112131011A (zh) * 2020-11-26 2020-12-25 北京壁仞科技开发有限公司 用于管理资源的方法、计算设备和计算机可读存储介质
CN113127302A (zh) * 2021-04-16 2021-07-16 山东英信计算机技术有限公司 一种板卡gpio的监控方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103595591A (zh) * 2013-11-29 2014-02-19 迈普通信技术股份有限公司 多板卡设备监控板卡的方法和***
CN106161662A (zh) * 2015-03-24 2016-11-23 中兴通讯股份有限公司 一种生成网际协议地址前缀的方法和装置
CN106027548B (zh) * 2016-06-28 2019-05-17 武汉斗鱼网络科技有限公司 视频直播网站基于页面心跳事件生成白名单的***及方法
CN108563462B (zh) * 2018-04-25 2021-12-14 珠海全志科技股份有限公司 数据处理方法、装置、计算机设备和计算机存储介质
CN113468027B (zh) * 2021-09-03 2021-11-19 北京壁仞科技开发有限公司 监测器件地址管理方法及装置、基板管理控制器、设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102725749A (zh) * 2011-08-22 2012-10-10 华为技术有限公司 枚举输入输出设备的方法和设备
US20130080754A1 (en) * 2011-09-22 2013-03-28 Cisco Technology, Inc. Service Profile Based Peripheral Component Interconnect Device Enumeration And Option ROM Loading
US20130346660A1 (en) * 2012-06-25 2013-12-26 Piotr Kwidzinski Usb device control using endpoint type detection during enumeration
CN103530254A (zh) * 2013-10-11 2014-01-22 杭州华为数字技术有限公司 多节点***的外部设备互联枚举方法和装置
US20190042498A1 (en) * 2017-05-22 2019-02-07 Intel Corporation Enumerated per device addressability for memory subsystems
CN110858184A (zh) * 2018-08-24 2020-03-03 龙芯中科技术有限公司 一种pci总线设备枚举方法和装置
CN111008379A (zh) * 2019-11-22 2020-04-14 腾讯科技(深圳)有限公司 电子设备的固件安全检测方法及相关设备
CN112131011A (zh) * 2020-11-26 2020-12-25 北京壁仞科技开发有限公司 用于管理资源的方法、计算设备和计算机可读存储介质
CN113127302A (zh) * 2021-04-16 2021-07-16 山东英信计算机技术有限公司 一种板卡gpio的监控方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MIGUEL CORREIA: "PCIe Hot-Plug Support Standardization Challenges in ATCA", 《 IEEE TRANSACTIONS ON NUCLEAR SCIENCE 》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023030275A1 (zh) * 2021-09-03 2023-03-09 上海壁仞智能科技有限公司 监测器件地址管理方法及装置、基板管理控制器、设备

Also Published As

Publication number Publication date
CN113468027B (zh) 2021-11-19
WO2023030275A1 (zh) 2023-03-09

Similar Documents

Publication Publication Date Title
CN111159085B (zh) 一种pcie带宽的自动配置方法、服务器主板及服务器
US6496790B1 (en) Management of sensors in computer systems
US6427198B1 (en) Method, system, and program for determining system configuration
US8898358B2 (en) Multi-protocol communication on an I2C bus
US7493438B2 (en) Apparatus and method for enumeration of processors during hot-plug of a compute node
US10372639B2 (en) System and method to avoid SMBus address conflicts via a baseboard management controller
US20080034122A1 (en) Apparatus and Method to Detect Miscabling in a Storage Area Network
CN108664429B (zh) 主从配置沟通协议、提高兼容性的方法以及电子设备
US10783109B2 (en) Device management messaging protocol proxy
CN107239372B (zh) 电子装置及其检测方法
CN113468027B (zh) 监测器件地址管理方法及装置、基板管理控制器、设备
CN110825204A (zh) 电子设备的主板及电源信息管理方法
CN112868013B (zh) 经由边带接口恢复场域可程序门阵列固件的***及方法
US11308002B2 (en) Systems and methods for detecting expected user intervention across multiple blades during a keyboard, video, and mouse (KVM) session
CN110389918B (zh) 热插拔识别方法及具有热插拔识别功能的服务器
WO2024113767A1 (zh) 智能网卡的上电方法及上电装置
US12007928B2 (en) Signal bridging using an unpopulated processor interconnect
CN109542198B (zh) 一种控制pcie卡上电的方法及设备
WO2023030249A1 (zh) 用于计算设备的设备管理方法、计算设备、装置和介质
CN116226008A (zh) 端口地址配置器、配置方法及终端
US20030212932A1 (en) Remote diagnostic packets
US10585833B1 (en) Flexible PCIe topology
US10360167B1 (en) Systems and methods for using a bus exchange switch to control processor affinity
CN111897577B (zh) 一种cpu的主从辨别方法及其装置、计算机终端设备
US20220171726A1 (en) Systems and methods for management controller co-processor host to variable subsystem proxy

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Room 0106-508, 1st floor, No.26, shangdixin Road, Haidian District, Beijing 100085

Patentee after: Beijing Bilin Technology Development Co.,Ltd.

Country or region after: China

Patentee after: Shanghai Bi Ren Technology Co.,Ltd.

Address before: Room 0106-508, 1st floor, No.26, shangdixin Road, Haidian District, Beijing 100085

Patentee before: Beijing Bilin Technology Development Co.,Ltd.

Country or region before: China

Patentee before: Shanghai Bilin Intelligent Technology Co.,Ltd.

CP03 Change of name, title or address