CN115129643A - Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 - Google Patents
Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115129643A CN115129643A CN202210764534.6A CN202210764534A CN115129643A CN 115129643 A CN115129643 A CN 115129643A CN 202210764534 A CN202210764534 A CN 202210764534A CN 115129643 A CN115129643 A CN 115129643A
- Authority
- CN
- China
- Prior art keywords
- cmc
- bmc
- management controller
- spi
- server
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000005540 biological transmission Effects 0.000 title claims abstract description 41
- 230000002093 peripheral effect Effects 0.000 claims abstract description 20
- 238000012544 monitoring process Methods 0.000 claims abstract description 14
- 238000004891 communication Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 230000011664 signaling Effects 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000010276 construction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4081—Live connection to bus, e.g. hot-plugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Programmable Controllers (AREA)
Abstract
本申请公开了一种BMC与CMC间传输频宽提升方法、装置、设备及存储介质,涉及计算机技术领域,包括:在BMC和CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与BMC对应的第一SPI总线和与CMC对应的第二SPI总线;通过第一SPI总线获取服务器节点的复杂可编程逻辑器件的在位讯号,并监测其状态变化;基于在位讯号的状态变化的过程,利用低电压差分信号与服务器背板上的复杂可编程逻辑器件进行通讯,以便服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。通过本申请的技术方案,不需要外加芯片支持热插拔,降低设计难度与节省成本,同时在不影响安全性的前提下,提升CMC与BMC之间的传输速度。
Description
技术领域
本发明涉及计算机技术领域,特别涉及BMC与CMC间传输频宽提升方法、装置、设备及存储介质。
背景技术
随着存储业务的发展和广泛应用,越来越大的存储系统也逐渐出现在视野中,庞大的存储系统会由许多node(节点)组成,在多节点系统中,每个节点都存在各自的基板管理控制器BMC(Basic management controller)以及一个机箱管理控制器CMC(Chassismanagement controller),其BMC与CMC之间的沟通必须基于IPMI(Intelligent PlatformManagement Interface,智能平台管理接口)通信,通道几乎是使用I2C(Inter-Integrated Circuit)且多节点系统都需要支持节点热插拔来提升使用者维护性,但节点存在热插拔对于I2C通道会产生扰动,需要透过I2C hot plug IC芯片(热插拔IntegratedCircuit集成电路)来避免I2C通道于热插拔产生的问题。但由于I2C其速度较慢,导致CMC管理各个节点BMC的许多功能被受限。
当前多节点系统其各节点BMC与机箱管理CMC的主要通讯还是透过I2Cbus(总线)来传输管理资讯,以及BMC网路与CMC网路透过I2C命令来协助较大档案的传输,但CMC需要获得的固定资讯还是必须透过I2C来传送,这会导致CMC管理功能受到限制,如图1所示。由于I2C其速度很慢100KHz/400KHz or 1MHz,使得其节点的BMC与CMC传输速率依旧很慢,且当前市面上可支持I2C hot plug re-driver只有到400Khz,并无更高速的I2C hot plugre-driver IC,使得CMC与各个BMC沟通所需时间较长,导致CMC并无法更加及时确认各个节点BMC状态。且由频宽慢CMC不适合执行较大档案的传输,如韧体(BIOS BMC等较大的镜像),会产生更新的时间较久以及占用原本已经不快的通道等问题,使得CMC管理功能受限。另外支持高速度的I2C 400Khz or 1MHz速度,都必须透过额外的驱动器来满足支持,避免通道上的寄生电容导致速率无法达到规划的速度。此外,多节点系统都必须支持热插拔,避免单一节点需更换时要多节点停机。但是I2C通道本身是不支持热插拔,要支持就必需要透过hot plug IC来使通道支持,避免热插拔避免热插拔过程出现资料扰动问题。
综上,如何为上述存储系统集群,在不需要外加芯片的情况下支持热插拔,降低设计难度与节省成本,同时在不影响安全性的前提下,提升CMC与BMC之间的传输速度是本领域技术人员亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供BMC与CMC间传输频宽提升方法、装置、设备及存储介质,能够在不需要外加芯片的情况下支持热插拔,降低设计难度与节省成本,同时在不影响安全性的前提下,提升CMC与BMC之间的传输速度。其具体方案如下:
第一方面,本申请公开了一种BMC与CMC间传输频宽提升方法,包括:
在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;
通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;
基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
可选的,在基板管理控制器BMC内构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,包括:
在基板管理控制器BMC内构建用于将400KHz的I2C总线模式或1MHz的I2C总线模式转换为串行外设接口SPI总线模式的预设代码。
可选的,所述利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,包括:
通过多路数据选择器,利用低电压差分信号将多个所述服务器节点与所述服务器背板上的复杂可编程逻辑器件进行通讯。
可选的,所述基板管理控制器BMC和机箱管理控制器CMC均采用AST2600系列芯片和/或AST2500系列芯片。
可选的,所述的BMC与CMC间传输频宽提升方法,还包括:
在所述基板管理控制器BMC和机箱管理控制器CMC中,通过第一SPI接口读取所述基板管理控制器BMC的频宽,通过第二SPI接口跟新基本输入输出系统的闪存,通过第三SPI接口利用所述预设代码将I2C总线模式转换为串行外设接口SPI总线模式。
可选的,所述基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,包括:
若所述在位讯号的状态由在位状态变为不在位状态的第一过程,则确定所述第一过程对应的时间范围,并在所述时间范围内通过所述服务器背板上的复杂可编程逻辑器件去除所述低电压差分信号;
若所述在位讯号的状态由不在位状态变为在位状态的第二过程,则当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号。
可选的,所述当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号,包括:
当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件,在延迟预设时间间隔后读取所述低电压差分信号。
第二方面,本申请公开了一种BMC与CMC间传输频宽提升装置,包括:
总线模式转换模块,用于在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;
在位讯号监测模块,用于通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;
通讯模块,用于基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
第三方面,本申请公开了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如前所述的BMC与CMC间传输频宽提升方法。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中所述计算机程序被处理器执行时实现如前所述的BMC与CMC间传输频宽提升方法。
本申请中,首先在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;然后通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;最后基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。可见,构建将I2C转换成SPI的预设代码放于BMC/CMC,可以使得IPMI协议应用于BMC/CMC既有的SPI硬体通道,取代I2C通道,简化降低系统零件需求,降低设计难度与节省成本,省去I2C高速驱动IC;另外,节点设计在位讯号,让低电压差分信号总线支持多节点热插拔应用,省去I2C热插入IC,除了优化成本之外降低零件面积所需空间。由于SPI于短距离传输时,其带宽可以达到200MHz,远高于I2C,后续透过节点与背板既有的复杂可编程逻辑器件利用低电压差分信号传输,其低电压差分信号速度更可达500MHz以上,如此一来,将功能整合到主板与背板既有的复杂可编程逻辑器件,以降低系统所需晶片数量以提升系统密度,降低产品成本,提升产品竞争力,在不影响安全性前提下,提升CMC与BMC之间的传输速度,亦可以提升CMC与节点BMC之间通信管理的频宽性能,可以进一步提供更多的CMC管理能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的四路多节点CMC与各个节点BMC通信架构示意图;
图2为本申请公开的一种BMC与CMC间传输频宽提升方法流程图;
图3为本申请公开的透过BMC与CMC的SPI与CPLD的LVDS取代I2C架构示意图;
图4为本申请公开的一种具体的BMC与CMC间传输频宽提升方法流程图;
图5为本申请公开的一种CPLD的LVDS总线热插拔动作示意图;
图6为本申请公开的一种BMC与CMC间传输频宽提升装置结构示意图;
图7为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,多节点系统其各节点BMC与机箱管理CMC的主要通讯还是透过I2C bus来传输管理资讯,这会导致CMC管理功能受到限制;此外,I2C通道本身不支持热插拔,要支持就必需透过hot plug IC来使通道支持。
为此,本申请提供了一种BMC与CMC间传输频宽提升方案,能够在不需要外加芯片的情况下支持热插拔,降低设计难度与节省成本,同时在不影响安全性的前提下,提升CMC与BMC之间的传输速度。
本发明实施例公开了一种BMC与CMC间传输频宽提升方法,参见图2所示,该方法包括:
步骤S11:在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接。
本申请实施例中,所述基板管理控制器BMC和机箱管理控制器CMC均采用AST2600系列芯片和/或AST2500系列芯片。可以理解的是,该系列的IC芯片皆有三组SPI(SerialPeripheral Interface,串行外设接口),其中一个用来读取BMC的频宽(FW),另外一个用来跟新BIOS Flash(Basic Input Output System,基本输入输出系统闪存),当前架构还空一个SPI,由于IPMI协定当前不支持SPI通道,所以在BMC代码内开发一组I2C to SPI转换界面的代码,使其满足IPMI当前架构,相应的,CMC同样于代码加入I2C to SPI。如此一来,透过此SPI来替代I2C传输,克服了I2C频宽限制的问题,CMC与节点BMC频宽提升,降低设计难度与节省成本,可以有效利用BMC/CMC多余的一个硬件SPI总线;并且,SPI于短距离传输,其带宽可以达到200MHz,远高于I2C,可以提升CMC与节点BMC之间通信管理的频宽性能。
具体的,在所述基板管理控制器BMC和机箱管理控制器CMC中,通过第一SPI接口读取所述基板管理控制器BMC的频宽,通过第二SPI接口跟新基本输入输出系统的闪存,通过第三SPI接口利用所述预设代码将I2C总线模式转换为串行外设接口SPI总线模式。
步骤S12:通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔。
本申请实施例中,由于I2C于高速模式时,即400KHz或1MHz时,节点热插拔应用都需要透过外加IC来处理,当通过第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化时,即可以根据在位讯号的变化来克服节点热插拔的需求,如此一来,可以省略需要外加芯片的需求,降低设计难度与节省成本。
步骤S13:基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
本申请实施例中,透过节点的在位讯号的变化,提供给背板的复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD),透过硬体SPI与CPLD传输,节点的CPLD再透过低电压差分信号(Low-Voltage Differential Signaling,LVDS)来满足节点与服务器背板的CPLD的长距离传输,如此一来,CPLD透过LVDS传输,其LVDS速度更可达500MHz以上。
需要指出的是,服务器背板CPLD内部通过多路数据选择器与各个节点的复杂可编程逻辑器件进行通讯,如图3所示,各服务器节点的BMC内利用预设代码将I2C to SPI,然后通过SPI与节点的CPLD进行链接,然后将SPI to LVDS,服务器背板CPLD内部代码创建一个1:4MUX(multiplexer,数据选择器)与各个节点的CPLD通讯,最后CMC利用预设代码将I2Cto SPI与各服务器节点进行通讯。本申请实施例使得服务器节点与CMC传输无需透过外部网络,应用此架构即可拥有较大频宽,来满足较大带宽的应用,如FW更新、CMC显示BMC前荧幕与控制等应用。
可以理解的是,本申请实施例是列举4路的系统,同样也可以应用在8路或者更多路的系统上,在此不作具体限定。
本申请中,首先在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;然后通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;最后基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。可见,构建将I2C转换成SPI的预设代码放于BMC/CMC,可以使得IPMI协议应用于BMC/CMC既有的SPI硬体通道,取代I2C通道,简化降低系统零件需求,降低设计难度与节省成本,省去I2C高速驱动IC;另外,节点设计在位讯号,让低电压差分信号总线支持多节点热插拔应用,省去I2C热插入IC,除了优化成本之外降低零件面积所需空间。由于SPI于短距离传输时,其带宽可以达到200MHz,远高于I2C,后续透过节点与背板既有的复杂可编程逻辑器件利用低电压差分信号传输,其低电压差分信号速度更可达500MHz以上,如此一来,将功能整合到主板与背板既有的复杂可编程逻辑器件,以降低系统所需晶片数量以提升系统密度,降低产品成本,提升产品竞争力,在不影响安全性前提下,提升CMC与BMC之间的传输速度,亦可以提升CMC与节点BMC之间通信管理的频宽性能,可以进一步提供更多的CMC管理能力。
本申请实施例公开了一种具体的BMC与CMC间传输频宽提升方法,参见图4所示,该方法包括:
步骤S21:在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接。
步骤S22:通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔。
其中,关于上述步骤S21、步骤S22更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
步骤S23:若所述在位讯号的状态由在位状态变为不在位状态的第一过程,则确定所述第一过程对应的时间范围,并在所述时间范围内通过所述服务器背板上的复杂可编程逻辑器件去除所述低电压差分信号。
本申请实施例中,节点设计在位讯号,让LVDS bus支持多节点热插拔应用,通过对在位讯号状态的判断,满足节点的热插拔功能,避免LVDS读取受干扰讯号。
可以理解的是,由于在位讯号用于表征当前的服务器节点是否发生热插拔,所以当在位讯号的状态由在位状态变为不在位状态的第一过程时,说明此时的服务器节点处于热移除的过程,此时将服务器背板CPLD直接去除该段时间的LVDS讯号,以免节点热移除的过程对于LVDS bus的扰动让背板CPLD取得不正确讯号。
步骤S24:若所述在位讯号的状态由不在位状态变为在位状态的第二过程,则当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号。
本申请实施例中,若所述在位讯号的状态由不在位状态变为在位状态的第二过程,则说明此时的服务器节点处于热插入的过程,此时,当节点不在位,服务器背板CPLD是不会去读取该LVDS bus通道,直到节点在位讯号出现。
本申请实施例中,当节点在位讯号出现时,服务器背板还会延迟一段时间,如100ms(此时间可调整),才获取该LVDS bus通道讯号,也即,在延迟预设时间间隔后读取所述低电压差分信号,以免节点热插入的过程对于LVDS bus的扰动让背板CPLD取得不正确讯号。
示例性的,如图5所示,为透过节点的PRESENT_N在位讯号的变化,提供给背板CPLD,满足节点的热插拔功能,避免LVDS读取受干扰的示意图。也即,节点的在位讯号变化时,如果由在位状态变成不在位状态,则去除该段时间LVDS讯号,也即,LVDS bus off;如果由不在位状态变成在位状态,则延迟100ms获取该LVDS bus通道讯号,也即,LVDS bus on。
步骤S25:所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
其中,关于上述步骤S25更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请中,首先在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;然后通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;若所述在位讯号的状态由在位状态变为不在位状态的第一过程,则确定所述第一过程对应的时间范围,并在所述时间范围内通过所述服务器背板上的复杂可编程逻辑器件去除所述低电压差分信号;若所述在位讯号的状态由不在位状态变为在位状态的第二过程,则当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号;最后所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。可见,构建将I2C转换成SPI的预设代码放于BMC/CMC,可以使得IPMI协议应用于BMC/CMC既有的SPI硬体通道,取代I2C通道,简化降低系统零件需求,降低设计难度与节省成本,省去I2C高速驱动IC;另外,节点设计在位讯号,让低电压差分信号总线支持多节点热插拔应用,省去I2C热插入IC,除了优化成本之外降低零件面积所需空间。由于SPI于短距离传输时,其带宽可以达到200MHz,远高于I2C,后续透过节点与背板既有的复杂可编程逻辑器件利用低电压差分信号传输,其低电压差分信号速度更可达500MHz以上,如此一来,将功能整合到主板与背板既有的复杂可编程逻辑器件,以降低系统所需晶片数量以提升系统密度,降低产品成本,提升产品竞争力,在不影响安全性前提下,提升CMC与BMC之间的传输速度,亦可以提升CMC与节点BMC之间通信管理的频宽性能,可以进一步提供更多的CMC管理能力。
相应的,本申请实施例还公开了一种BMC与CMC间传输频宽提升装置,参见图6所示,该装置包括:
总线模式转换模块11,用于在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;
在位讯号监测模块12,用于通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;
通讯模块13,用于基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
由此可见,通过本实施例的上述方案,首先在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;然后通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;最后基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。可见,构建将I2C转换成SPI的预设代码放于BMC/CMC,可以使得IPMI协议应用于BMC/CMC既有的SPI硬体通道,取代I2C通道,简化降低系统零件需求,降低设计难度与节省成本,省去I2C高速驱动IC;另外,节点设计在位讯号,让低电压差分信号总线支持多节点热插拔应用,省去I2C热插入IC,除了优化成本之外降低零件面积所需空间。由于SPI于短距离传输时,其带宽可以达到200MHz,远高于I2C,后续透过节点与背板既有的复杂可编程逻辑器件利用低电压差分信号传输,其低电压差分信号速度更可达500MHz以上,如此一来,将功能整合到主板与背板既有的复杂可编程逻辑器件,以降低系统所需晶片数量以提升系统密度,降低产品成本,提升产品竞争力,在不影响安全性前提下,提升CMC与BMC之间的传输速度,亦可以提升CMC与节点BMC之间通信管理的频宽性能,可以进一步提供更多的CMC管理能力。
进一步的,本申请实施例还公开了一种电子设备,图7是根据一示例性实施例示出的电子设备20结构图,图中内容不能认为是对本申请的使用范围的任何限制。
图7为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的BMC与CMC间传输频宽提升方法中的相关步骤。另外,本实施例中的电子设备20具体可以为计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及数据223等,数据223可以包括各种各样的数据。存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的BMC与CMC间传输频宽提升方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、内存、只读存储器(Read-Only Memory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、磁碟或者光盘或技术领域内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述BMC与CMC间传输频宽提升方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的BMC与CMC间传输频宽提升或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的BMC与CMC间传输频宽提升方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种BMC与CMC间传输频宽提升方法,其特征在于,包括:
在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;
通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;
基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
2.根据权利要求1所述的BMC与CMC间传输频宽提升方法,其特征在于,在基板管理控制器BMC内构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,包括:
在基板管理控制器BMC内构建用于将400KHz的I2C总线模式或1MHz的I2C总线模式转换为串行外设接口SPI总线模式的预设代码。
3.根据权利要求1所述的BMC与CMC间传输频宽提升方法,其特征在于,所述利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,包括:
通过多路数据选择器,利用低电压差分信号将多个所述服务器节点与所述服务器背板上的复杂可编程逻辑器件进行通讯。
4.根据权利要求1所述的BMC与CMC间传输频宽提升方法,其特征在于,所述基板管理控制器BMC和机箱管理控制器CMC均采用AST2600系列芯片和/或AST2500系列芯片。
5.根据权利要求4所述的BMC与CMC间传输频宽提升方法,其特征在于,还包括:
在所述基板管理控制器BMC和机箱管理控制器CMC中,通过第一SPI接口读取所述基板管理控制器BMC的频宽,通过第二SPI接口跟新基本输入输出系统的闪存,通过第三SPI接口利用所述预设代码将I2C总线模式转换为串行外设接口SPI总线模式。
6.根据权利要求1至5任一项所述的BMC与CMC间传输频宽提升方法,其特征在于,所述基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,包括:
若所述在位讯号的状态由在位状态变为不在位状态的第一过程,则确定所述第一过程对应的时间范围,并在所述时间范围内通过所述服务器背板上的复杂可编程逻辑器件去除所述低电压差分信号;
若所述在位讯号的状态由不在位状态变为在位状态的第二过程,则当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号。
7.根据权利要求6所述的BMC与CMC间传输频宽提升方法,其特征在于,所述当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件读取所述低电压差分信号,包括:
当所述在位讯号出现时,通过所述服务器背板上的复杂可编程逻辑器件,在延迟预设时间间隔后读取所述低电压差分信号。
8.一种BMC与CMC间传输频宽提升装置,其特征在于,包括:
总线模式转换模块,用于在基板管理控制器BMC和机箱管理控制器CMC内各自构建用于将I2C总线模式转换为串行外设接口SPI总线模式的预设代码,以确定与所述基板管理控制器BMC对应的第一SPI总线和与所述机箱管理控制器CMC对应的第二SPI总线;其中,每个服务器节点上设置有一个所述基板管理控制器BMC,所述机箱管理控制器CMC与服务器背板相连接;
在位讯号监测模块,用于通过所述第一SPI总线获取所述服务器节点的复杂可编程逻辑器件的在位讯号,并监测所述在位讯号的状态变化;其中,所述在位讯号用于表征当前的服务器节点是否发生热插拔;
通讯模块,用于基于所述在位讯号的状态变化的过程,利用低电压差分信号与所述服务器背板上的复杂可编程逻辑器件进行通讯,以便所述服务器背板上的复杂可编程逻辑器件通过所述第二SPI总线与所述机箱管理控制器CMC进行传输。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一项所述的BMC与CMC间传输频宽提升方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的BMC与CMC间传输频宽提升方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210764534.6A CN115129643A (zh) | 2022-06-30 | 2022-06-30 | Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210764534.6A CN115129643A (zh) | 2022-06-30 | 2022-06-30 | Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115129643A true CN115129643A (zh) | 2022-09-30 |
Family
ID=83382605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210764534.6A Pending CN115129643A (zh) | 2022-06-30 | 2022-06-30 | Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129643A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115883362A (zh) * | 2022-12-21 | 2023-03-31 | 硅基大陆(成都)科技有限公司 | 基于cmc和bmc的服务器管理系统、方法以及服务器 |
-
2022
- 2022-06-30 CN CN202210764534.6A patent/CN115129643A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115883362A (zh) * | 2022-12-21 | 2023-03-31 | 硅基大陆(成都)科技有限公司 | 基于cmc和bmc的服务器管理系统、方法以及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901164B (zh) | Ocp nic网卡的适配控制方法、装置、设备及系统 | |
CN111581050B (zh) | 机箱、机箱监控系统及监控方法 | |
CN104503932A (zh) | 多主板服务器主基板管理控制器仲裁方法及系统 | |
CN104516838A (zh) | 管理路径确定方法及装置 | |
CN110968352B (zh) | 一种pcie设备的复位系统及服务器系统 | |
CN112000501A (zh) | 一种多节点分区服务器访问i2c设备的管理系统 | |
CN102867158B (zh) | 一种切换内存的方法、装置及具有双系统的终端 | |
CN115129643A (zh) | Bmc与cmc间传输频宽提升方法、装置、设备及存储介质 | |
CN116723198A (zh) | 一种多节点服务器主机控制方法、装置、设备、存储介质 | |
CN103092735A (zh) | 节点状态更新方法 | |
CN114003528A (zh) | Ocp转接卡、转接系统及转接方法 | |
CN115580365A (zh) | 一种时钟信号传输方法、装置、设备及介质 | |
CN114968880A (zh) | 多主机系统及主机设备与共享人机接口装置的操作方法 | |
CN113836058A (zh) | 一种板卡间数据交换方法、装置、设备及存储介质 | |
CN113961502B (zh) | 一种交换机接口管理系统和方法 | |
CN112612741A (zh) | 一种多路服务器 | |
CN102193850A (zh) | 一种多主机板服务器的时间更新系统 | |
CN112256603B (zh) | 一种服务器及基于ocp的扩展设备 | |
US11847089B2 (en) | Electronic device and method for sharing data lanes of a network interface device between two or more computing devices | |
CN216014148U (zh) | 一种服务器和服务器背板 | |
CN113051208B (zh) | 一种时钟控制电路及终端设备 | |
CN114816865A (zh) | 刀片服务器架构创建方法、装置、设备及介质 | |
US20230315591A1 (en) | PCIe DEVICE AND COMPUTING SYSTEM INCLUDING THE SAME | |
CN115185869A (zh) | 基板管理控制器与iic设备的通信方法、装置、设备及介质 | |
CN113867787A (zh) | 一种服务器网卡之间的切换系统和方法 |
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 |