CN104899170B - 分布式智能平台管理总线ipmb连接方法及atca机框 - Google Patents

分布式智能平台管理总线ipmb连接方法及atca机框 Download PDF

Info

Publication number
CN104899170B
CN104899170B CN201410083288.3A CN201410083288A CN104899170B CN 104899170 B CN104899170 B CN 104899170B CN 201410083288 A CN201410083288 A CN 201410083288A CN 104899170 B CN104899170 B CN 104899170B
Authority
CN
China
Prior art keywords
bmc
ipmi
data
ipmc
ipmb
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.)
Active
Application number
CN201410083288.3A
Other languages
English (en)
Other versions
CN104899170A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201410083288.3A priority Critical patent/CN104899170B/zh
Priority to PCT/CN2014/086972 priority patent/WO2015131516A1/zh
Publication of CN104899170A publication Critical patent/CN104899170A/zh
Application granted granted Critical
Publication of CN104899170B publication Critical patent/CN104899170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开了一种分布式智能平台管理总线IPMB连接方法及ATCA机框。具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,在每个主控板上设置智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接;BMC通过IPMI与外围板的IPMC节点进行数据交换,其中,BMC与IPMI通过本地总线进行数据交换,IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应。

Description

分布式智能平台管理总线IPMB连接方法及ATCA机框
技术领域
本发明涉及计算机领域,特别是涉及一种分布式智能平台管理总线(IntelligentPlatform Management BUS,简称为IPMB)连接方法及ATCA机框。
背景技术
先进的电信计算平台(Advanced Telecom Computing Architecture,简称为ATCA)标准始于在电信、航天、工业控制、医疗器械、智能交通、军事装备等领域应用广泛的新一代主流工业计算技术——CompactPCI标准。是为下一代融合通信及数据网络应用提供的一个高性价比的、基于模块化结构的、兼容的、并可扩展的硬件构架。
智能平台管理接口(Intelligent Platform Management Interface,简称为IPMI)原本是一种因特网(Intel)架构的企业系统的周边设备所采用的一种工业标准。如图1所示,在ATCA机框中,IPMI包含了一个以基板管理控制器(BMC)为主的控制器和分布在不同系统模组的智能平台管理控制器(IPMC)完成对ACTA系统中的单板的管理。IPMC分布在系统的单板上,用于管理、监视和控制单板上的电源电压、温度传感器和风扇的转速等。
基板管理控制器(BMC)通过智能平台管理总线(IPMB)连接各单板,提供基板管理控制器对其它单板的IPMC管理通信通道。IPMB通信总线采用I2C信号线(包括一条数据线SDA、一条时钟线SCL),ATCA规范制定要求单板有2个IPMB总线接口,分别称作IPMB-A和IPMB-B,两条总线合一称之为IPMB-0。目前IPMB连接方式主要是以双总线或者双星型配置方式实现,以保证系统的稳定性。
在IPMB双总线连接方式中,主备BMC分别提供2个IPMB总线接口IPMB-A和IPMB-B,外围单板上的IPMC节点同时提供两路I2C接口分别挂载到两路IPMB总线上。实际工作时,主用BMC作为I2C总线的主设备,管理外围单板节点上的IPMC和备用BMC上的IPMC。当主用BMC出现故障时,备用BMC成为I2C总线的主设备,替代故障BMC完成系统管理功能。
对于IPMB双总线连接方式具有以下缺点:任意IPMC或BMC节点的I2C信号出现硬件信号异常(SCL或SDA常低),会把整条I2C总线箝位(无法进行正常数据收发),导致所有的IPMC节点均无法通过I2C总线信号进行通信;另外,I2C故障单板位置也无法进行定位。
在IPMB双星型连接方式中,BMC与IPMC之间是点对点的通信。星型连接能够避免总线型连接中的缺点。如图2所示,目前的星型连接方式中,主要是控制I2C开关进行I2C通道的切换,BMC的处理器与I2C开关之间是通过一条I2C总线连接。
现有技术中公开了一种对星型IPMB总线结构的改进,主备BMC的处理器分别提供一条IPMB总线经过I2C开关形成独立的IPMB总线对IPMC节点进行管理。这种集中式的数据管理方式不能够对设备环境进行及时的掌控,特别当管理的槽位增加,数据量激增时,机框信息的反馈延迟更加严重。同时,当正在通信的IPMC节点硬件故障时,仍然会钳住I2C总线,导致BMC失去对总线的控制。
发明内容
鉴于现有技术中IPMB通信带宽窄和单个IPMC节点故障导致机框管理功能瘫痪问题,提出了本发明以便提供一种克服上述问题的分布式智能平台管理总线IPMB连接方法及ATCA机框。
本发明提供一种分布式智能平台管理总线IPMB连接方法,用于高级电信计算体系结构ATCA机框,其中,具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,具体包括:在每个主控板上设置智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接;BMC通过IPMI与外围板的IPMC节点进行数据交换,其中,BMC与IPMI通过本地总线进行数据交换,IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应。
优选地,两个主控板上BMC分别为主用BMC和备用BMC,主用BMC和备用BMC之间设置有一条IPMB总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
优选地,BMC通过IPMI与外围板的IPMC节点进行数据交换具体包括:BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作;其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式;IPMI进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输。
优选地,BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作具体包括:BMC通过本地总线向IPMI写数据包括如下处理:向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,IPMI将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送;BMC通过本地总线向IPMI读数据包括如下处理:BMC接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空。
优选地,上述方法进一步包括:IPMI统计BMC与IPMC之间交互的数据包的状态并进行上报。
本发明还提供了一种高级电信计算体系结构ATCA机框,包括:具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,每个主控板上设置有智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接,BMC通过IPMI与外围板的IPMC节点进行数据交换,其中,BMC与IPMI通过本地总线进行数据交换,IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应。
优选地,两个主控板上BMC分别为主用BMC和备用BMC,主用BMC和备用BMC之间设置有一条IPMB总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
优选地,BMC具体用于:通过本地总线向IPMI进行读数据和写数据的逻辑操作;IPMI具体用于:进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输,其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,IPMI在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式。
优选地,BMC具体用于:向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,在接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空;IPMI具体用于:将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送。
优选地,IPMI进一步用于:统计BMC与IPMC之间交互的数据包的状态并进行上报。
本发明有益效果如下:
借助于本发明实施例所述的分布式的IPMB连接方法,解决了现有技术中IPMB通信带宽窄和单个IPMC节点故障导致机框管理功能瘫痪问题,在本发明实施例的技术方案中,各IPMB总线之间是独立的,其中任意IPMB总线故障后不会导致整框管理系统故障,提高系统的可靠性;机框管理控制器可以并行处理各条IPMB总线,提高系统数据响应和处理速度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是现有技术中ATCA机框IPMB双总线连接架构实现示意图;
图2是现有技术中改进的ATCA机框的IPMB双星型连接架构实现示意图;
图3是本发明实施例的分布式智能平台管理总线IPMB连接方法的流程图;
图4是本发明实施例的ATCA机框的中分布式IPMB连接架构示意图;
图5是本发明实施例的IPMI提供24路IPMB接口示意图;
图6是本发明实时的IPMI接口中的一路状态转换的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为了解决现有技术中IPMB通信带宽窄和单个IPMC节点故障导致机框管理功能瘫痪问题,本发明提供了一种分布式智能平台管理总线IPMB连接方法及ATCA机框,具体地:本发明实施例实现了一种分布式的IPMB总线连接方法,在基板管理控制器(BMC)节点集成一种智能平台管理接口(IPMI)设备,配合BMC软件,提供分布式的IPMB总线通道管理ATCA机架。其中,BMC节点与IPMI设备之间通过并行总线通道实现数据交换;IPMI提供独立的IPMB总线通道与外围板的IPMC节点实现数据交换,这样可以在BMC节点并行处理外围分布的IPMC节点的数据,实现更快的系统响应。进一步,各通道独立通信的设计,能够避免某个节点故障影响整个机框的管理。
本发明实施例还提供了一种高级电信计算体系结构ATCA机框,包括具有多个槽位的ATCA框架及插在槽位中的ATCA单板,所述ATCA单板包括两个主控单板和至少一个节点板,ATCA单板上均具有智能平台管理控制器IPMC,其中,基板管理控制器BMC分别集成在两个主控板上,对于每个主控板上的BMC通过IPMI接口与各节点板的IPMC、另一主控板上的IPMI为点到点的星型连接,主控板上的IPMI提供独立的I2C信号完成IPMB管理总线的分布式连接。
在本发明实施例中,包括主备基板管理控制器(BMC),用于系统总体管理控制;包括智能平台管理控制器(IPMC),用于管理控制系统节点的温度,电压等实时监控信息;包括智能平台管理总线(IPMB),用于提供BMC与IPMC之间通信的协议规范。主备BMC都与外围IPMC节点按照星型拓扑结构连接,同时主备BMC之间存在一条IPMB链路,其中一个作为主BMC时,另一个作为IPMC节点使用。当前主用BMC故障时,备用BMC切换为主用BMC,完成系统管理控制功能。
本发明还提供了一种BMC与IPMC之间的连接方式。通过一种智能平台管理接口(IPMI)将BMC与IPMC之间的通道分布化,提供独立的IPMB通道管理外围板上的IPMC节点。IPMI与BMC之间通过并行总线传输数据。
以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
方法实施例
根据本发明的实施例,提供了一种分布式智能平台管理总线IPMB连接方法,用于高级电信计算体系结构ATCA机框,其中,具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,优选地,在本发明实施例中,两个主控板上BMC分别为主用BMC和备用BMC,主用BMC和备用BMC之间设置有一条IPMB总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
图3是本发明实施例的分布式智能平台管理总线IPMB连接方法的流程图,如图3所示,根据本发明实施例的分布式智能平台管理总线IPMB连接方法包括如下处理:
步骤301,在每个主控板上设置智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接;
步骤302,BMC通过IPMI与外围板的IPMC节点进行数据交换,其中,BMC与IPMI通过本地总线进行数据交换,IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应。
在步骤302中,BMC通过IPMI与外围板的IPMC节点进行数据交换具体包括:
步骤1、BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作;其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式;
其中,BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作具体包括:
BMC通过本地总线向IPMI写数据包括如下处理:向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,IPMI将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送;
BMC通过本地总线向IPMI读数据包括如下处理:BMC接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空。
步骤2、IPMI进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输。
优选地,在本发明实施例中,IPMI还可以统计BMC与IPMC之间交互的数据包的状态并进行上报。
以下结合附图,对本发明实施例的上述技术方案进行详细说明。
图4是本发明实施例的ATCA机框的中分布式IPMB连接架构示意图,如图4所示,包括:主备基板管理控制器(BMC)、智能平台管理接口(IPMI)、以及智能平台管理控制器(IPMC)。
BMC实现用户数据与IPMB协议包之间的转换,完成机架对外围节点监控信息的管理控制。IPMI模块要实现LOCAL BUS接口(图5中的1总线)与I2C接口之间数据的转化、I2C接口与I2C设备之间的数据传输(图5中的2总线)。
IPMI连接BMC节点和IPMC节点。BMC与IPMC之间的通讯包括:BMC主动向IPMC写数据和IPMC主动向BMC写数据。BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI作为从机模式。为了确保尽量及时的接收IPMC节点上报的数据,IPMI的默认工作模式应该是从机接收模式,当然,为了防止长时间处于该模式下,在一定条件下,需要退出该进程,等待BMC的仲裁,现在采用的方式是在从机接收模式下接收完一个包后即退出从机接收模式。
BMC通过Local Bus与IPMI内部缓存进行读、写数据的逻辑操作,通过IPMI设备中的Local Bus模块实现与IPMI内部信息的交互,包括参数的配置,状态信息的获取和与I2C总线的通信。
BMC向发送缓存发送数据的操作实现(Master Write)过程:BMC软件通过向通道内的写数据缓存寄存器写数据来完成,写完一个IPMB通信协议数据包后,主动关闭写缓存写使能寄存器,将发送任务交给IPMI设备,BMC软件就完成了向IPMI设备写入一个完整的包的操作。IPMI设备将数据包发送完毕后,会将数据缓存寄存器的写使能打开,BMC软件可以继续写入数据进行发送。
BMC从接收缓存读出数据的操作实现(Slave Receive)过程:BMC软件发现通道上报接收中断,并确定类型是接收中断,BMC读取长度寄存器,得到将要取出数据包的长度,再从数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空,长度寄存器和数据寄存器读空操作后,如果一个寄存器为空,一个寄存器不为空,都将被视为异常,上报异常中断。
优选地,在本发明实施例中,IPMI接口需要实现的功能包括:实现独立分布的多路I2C功能,采用LVTTL电平,时钟频率100KHz;实现发起主发送器模式(Master Write)功能;实现发起主接收模式(Master Read)功能;实现响应主设备发起的START,实现从接受器模式(Slave Receive)功能;实现和Host CPU之间的Local Bus接口;实现Local Bus和多路I2C接口的转换;实现必要的统计功能,提供给软件监控收发包状态。
主用BMC与各节点板的IPMC,通过IPMI接口提供的I2C信号(一条SDA数据线,一条SCL时钟线)连接。IPMI提供的I2C信号通道总数与外围节点板的数量对应,另外增加一路连接到备用BMC的IPMI接口。各条通道之间的I2C信号是相互独立的,BMC同时可以与任意外围节点板进行点对点通信。备用主控的I2C拓扑结构与主用主控相同。
主用BMC与备用BMC之间通过IPMI提供的I2C通道协商主备用状态。主备的状态不是固定的。系统上电时,两个BMC竞争主备状态,获得主用的BMC管理系统功能,另一块BMC作为被管理的节点处于系统中。如果当前主用BMC出现故障时,则协商为备用状态,处于被管理节点;当前备用BMC成为主用状态,完成系统管理功能。
通过IPMI接口的形式实现的分布式的IPMB总线,各总线之间完全独立,BMC软件可以同步处理外围IPMC节点上报的数据。同时接口扩展方便,只需要修改IPMI的逻辑,就可以灵活的支持不同数量的IPMC节点。
图5是本发明实施例的IPMI提供24路IPMB接口示意图,如图5所示,IPMI接口提供的24路IPMB总线,每一路独立控制一个IPMC节点。可以实现对业务板23个槽位的监控,同时提供一路给主控板节点。
IPMI提供的每一路IPMB总线具有相同的状态机调度。图6是本发明实时的IPMI接口中的一路状态转换的示意图,如图6所示,BMC使能IPMI调度机后,IPMI的调度机从空闲状态进入到从机接收状态,从机接收状态的优先级较高,如果发现作为主机的IPMC有数据发送时,状态机进入到从机接收处理流程,用户接收完一个包或缓存将满的时候,将进入从机接收等待模式,此时若有数据发送,将自动跳转到主机发送流程;也就是说,调度机默认运行在从收状态,BMC软件只需要将发送数据写入发送缓存,发送时机由IPMI的调度机处理。
在主机发送模式状态中,IPMI处于I2C协议的主机模式,IPMC处于I2C协议的从机模式。在数据传输的过程中,BMC通过Local Bus接口将数据缓存在主传输缓冲区(MasterTransmit buffer,简称为MTB)中。当I2C传输链路握手建立后,IPMI将数据传输到IPMC,BMC可以通过IPMI提供的I2CSTAT监控传输过程。
在从机接收模式状态中,IPMC有数据要上报给IPMI时,IPMC处于I2C协议的主机模式,IPMI处于I2C协议的从机模式。IPMI接收来自IPMC发送的数据,收完一个包后将接收到的长度写入缓存中,并通知BMC读出。IPMI中的设计允许每个通道的数据缓存中同时存在多个包。
数据缓存为空的时候,长度缓存必须为空;长度缓存为空的时候,数据缓存也必须为空,否则视为错误,通知用户。
IPMI状态机的默认工作状态是从机接收模式,因此IPMC有数据要上报时,优先响应。如果IPMC总有数据上报的时候,状态机将总工作在从机接收模式中,从机接收模式的优先级最高。如果BMC发送数据到IPMI后,状态机会等待时机转换到主机发送模式。
综上所述,采用本发明实施例所述的分布式的IPMB连接方法,与现有技术相比,各IPMB总线之间是独立的,其中任意IPMB总线故障后不会导致整框管理系统故障,提高系统的可靠性;机框管理控制器可以并行处理各条IPMB总线,提高系统数据响应和处理速度。
装置实施例
根据本发明的实施例,提供了一种高级电信计算体系结构ATCA机框,如图4所示,根据本发明实施例的高级电信计算体系结构ATCA机框包括:具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,每个主控板上设置有智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接,BMC通过IPMI与外围板的IPMC节点进行数据交换,其中,BMC与IPMI通过本地总线进行数据交换,IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应。
优选地,两个主控板上BMC分别为主用BMC和备用BMC,主用BMC和备用BMC之间设置有一条IPMB总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
BMC具体用于:通过本地总线向IPMI进行读数据和写数据的逻辑操作;
IPMI具体用于:进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输,其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,IPMI在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式。
其中,BMC具体用于:向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,在接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空;
IPMI具体用于:将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送。
IPMI进一步用于:统计BMC与IPMC之间交互的数据包的状态并进行上报。
以下结合附图,对本发明实施例的上述技术方案进行详细说明。
如图4所示,包括:主备基板管理控制器(BMC)、智能平台管理接口(IPMI)、以及智能平台管理控制器(IPMC)。
BMC实现用户数据与IPMB协议包之间的转换,完成机架对外围节点监控信息的管理控制。IPMI模块要实现LOCAL BUS接口(图5中的1总线)与I2C接口之间数据的转化、I2C接口与I2C设备之间的数据传输(图5中的2总线)。
IPMI连接BMC节点和IPMC节点。BMC与IPMC之间的通讯包括:BMC主动向IPMC写数据和IPMC主动向BMC写数据。BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI作为从机模式。为了确保尽量及时的接收IPMC节点上报的数据,IPMI的默认工作模式应该是从机接收模式,当然,为了防止长时间处于该模式下,在一定条件下,需要退出该进程,等待BMC的仲裁,现在采用的方式是在从机接收模式下接收完一个包后即退出从机接收模式。
BMC通过Local Bus与IPMI内部缓存进行读、写数据的逻辑操作,通过IPMI设备中的Local Bus模块实现与IPMI内部信息的交互,包括参数的配置,状态信息的获取和与I2C总线的通信。
BMC向发送缓存发送数据的操作实现(Master Write)过程:BMC软件通过向通道内的写数据缓存寄存器写数据来完成,写完一个IPMB通信协议数据包后,主动关闭写缓存写使能寄存器,将发送任务交给IPMI设备,BMC软件就完成了向IPMI设备写入一个完整的包的操作。IPMI设备将数据包发送完毕后,会将数据缓存寄存器的写使能打开,BMC软件可以继续写入数据进行发送。
BMC从接收缓存读出数据的操作实现(Slave Receive)过程:BMC软件发现通道上报接收中断,并确定类型是接收中断,BMC读取长度寄存器,得到将要取出数据包的长度,再从数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空,长度寄存器和数据寄存器读空操作后,如果一个寄存器为空,一个寄存器不为空,都将被视为异常,上报异常中断。
优选地,在本发明实施例中,IPMI接口需要实现的功能包括:实现独立分布的多路I2C功能,采用LVTTL电平,时钟频率100KHz;实现发起主发送器模式(Master Write)功能;实现发起主接收模式(Master Read)功能;实现响应主设备发起的START,实现从接受器模式(Slave Receive)功能;实现和Host CPU之间的Local Bus接口;实现Local Bus和多路I2C接口的转换;实现必要的统计功能,提供给软件监控收发包状态。
主用BMC与各节点板的IPMC,通过IPMI接口提供的I2C信号(一条SDA数据线,一条SCL时钟线)连接。IPMI提供的I2C信号通道总数与外围节点板的数量对应,另外增加一路连接到备用BMC的IPMI接口。各条通道之间的I2C信号是相互独立的,BMC同时可以与任意外围节点板进行点对点通信。备用主控的I2C拓扑结构与主用主控相同。
主用BMC与备用BMC之间通过IPMI提供的I2C通道协商主备用状态。主备的状态不是固定的。系统上电时,两个BMC竞争主备状态,获得主用的BMC管理系统功能,另一块BMC作为被管理的节点处于系统中。如果当前主用BMC出现故障时,则协商为备用状态,处于被管理节点;当前备用BMC成为主用状态,完成系统管理功能。
通过IPMI接口的形式实现的分布式的IPMB总线,各总线之间完全独立,BMC软件可以同步处理外围IPMC节点上报的数据。同时接口扩展方便,只需要修改IPMI的逻辑,就可以灵活的支持不同数量的IPMC节点。
图5是本发明实施例的IPMI提供24路IPMB接口示意图,如图5所示,IPMI接口提供的24路IPMB总线,每一路独立控制一个IPMC节点。可以实现对业务板23个槽位的监控,同时提供一路给主控板节点。
IPMI提供的每一路IPMB总线具有相同的状态机调度。图6是本发明实时的IPMI接口中的一路状态转换的示意图,如图6所示,BMC使能IPMI调度机后,IPMI的调度机从空闲状态进入到从机接收状态,从机接收状态的优先级较高,如果发现作为主机的IPMC有数据发送时,状态机进入到从机接收处理流程,用户接收完一个包或缓存将满的时候,将进入从机接收等待模式,此时若有数据发送,将自动跳转到主机发送流程;也就是说,调度机默认运行在从收状态,BMC软件只需要将发送数据写入发送缓存,发送时机由IPMI的调度机处理。
在主机发送模式状态中,IPMI处于I2C协议的主机模式,IPMC处于I2C协议的从机模式。在数据传输的过程中,BMC通过Local Bus接口将数据缓存在主传输缓冲区(MasterTransmit buffer,简称为MTB)中。当I2C传输链路握手建立后,IPMI将数据传输到IPMC,BMC可以通过IPMI提供的I2CSTAT监控传输过程。
在从机接收模式状态中,IPMC有数据要上报给IPMI时,IPMC处于I2C协议的主机模式,IPMI处于I2C协议的从机模式。IPMI接收来自IPMC发送的数据,收完一个包后将接收到的长度写入缓存中,并通知BMC读出。IPMI中的设计允许每个通道的数据缓存中同时存在多个包。
数据缓存为空的时候,长度缓存必须为空;长度缓存为空的时候,数据缓存也必须为空,否则视为错误,通知用户。
IPMI状态机的默认工作状态是从机接收模式,因此IPMC有数据要上报时,优先响应。如果IPMC总有数据上报的时候,状态机将总工作在从机接收模式中,从机接收模式的优先级最高。如果BMC发送数据到IPMI后,状态机会等待时机转换到主机发送模式。
综上所述,采用本发明实施例所述的分布式的IPMB连接方法,与现有技术相比,各IPMB总线之间是独立的,其中任意IPMB总线故障后不会导致整框管理系统故障,提高系统的可靠性;机框管理控制器可以并行处理各条IPMB总线,提高系统数据响应和处理速度。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种分布式智能平台管理总线IPMB连接方法,用于高级电信计算体系结构ATCA机框,其中,具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,其特征在于,所述方法具体包括:
在每个主控板上设置智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接;
所述BMC通过所述IPMI与外围板的IPMC节点进行数据交换,其中,所述BMC与所述IPMI通过本地总线进行数据交换,所述IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,所述IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应;
其中,所述BMC通过所述IPMI与外围板的IPMC节点进行数据交换具体包括:BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作;
BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作具体包括:
BMC通过本地总线向IPMI写数据包括如下处理:向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,IPMI将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送;
BMC通过本地总线向IPMI读数据包括如下处理:BMC接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空。
2.如权利要求1所述的方法,其特征在于,所述两个主控板上BMC分别为主用BMC和备用BMC,所述主用BMC和备用BMC之间设置有一条IPMB 总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
3.如权利要求1所述的方法,其特征在于,所述BMC通过所述IPMI与外围板的IPMC节点进行数据交换具体包括:
BMC通过本地总线向IPMI进行读数据和写数据的逻辑操作;其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式;
IPMI进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输。
4.如权利要求1所述的方法,其特征在于,所述方法进一步包括:所述IPMI统计所述BMC与所述IPMC之间交互的数据包的状态并进行上报。
5.一种高级电信计算体系结构ATCA机框,其特征在于,包括:
具有多个槽位的ATCA框架中设置有插在槽位中的ATCA单板,每个ATCA单板包括两个主控板和至少一个节点板,每个节点板上均设置有智能平台管理控制器IPMC,基板管理控制器BMC分别集成在两个主控板上,每个主控板上设置有智能平台管理接口IPMI,每个主控板上的BMC通过IPMI与各节点板的IPMC、以及另一主控板上的IPMI进行点到点的星型连接,BMC通过所述IPMI与外围板的IPMC节点进行数据交换,其中,所述BMC与所述IPMI通过本地总线进行数据交换,所述IPMI通过独立分布的基于I2C的多路IPMB总线与外围板的各个IPMC节点进行数据交换,所述IPMI提供的基于I2C的多路IPMB总线的总数与外围板的数量相对应;
其中,BMC具体用于:通过本地总线向IPMI进行读数据和写数据的逻辑操作;向IPMI中的写数据缓存寄存器写入数据,在BMC写完一个IPMB通信协议数据包后,主动关闭写数据缓存寄存器的写使能,并将发送任务交给IPMI,在接收到本地总线通道上报的接收中断后,读取IPMI中的长度寄存器,获取将要取出的数据包的长度,再从IPMI中的数据寄存器中将数据包内容按字节读出,直到长度寄存器和数据寄存器被读空;IPMI具体用于:将IPMB通信协议数据包发送完毕后,将写数据缓存寄存器的写使能打开,BMC软件继续写入数据进行发送。
6.如权利要求5所述的ATCA机框,其特征在于,所述两个主控板上BMC分别为主用BMC和备用BMC,所述主用BMC和备用BMC之间设置有一条IPMB总线,在其中一个作为主用BMC时,另一个作为IPMC节点使用,在当前主用BMC故障时,备用BMC切换为主用BMC。
7.如权利要求5所述的ATCA机框,其特征在于,
BMC具体用于:通过本地总线向IPMI进行读数据和写数据的逻辑操作;
IPMI具体用于:进行本地总线接口与I2C接口之间数据的转换、以及I2C接口与IPMC之间的数据传输,其中,BMC主动向IPMC写数据时,IPMI处于主机模式;IPMC主动向BMC写数据时,IPMI处于从机模式,IPMI的默认工作模式为从机接收模式,IPMI在从机接收模式下接收完一个包后即退出从机接收模式,等待BMC确定其工作模式。
8.如权利要求5所述的ATCA机框,其特征在于,所述IPMI进一步用于:统计所述BMC与所述IPMC之间交互的数据包的状态并进行上报。
CN201410083288.3A 2014-03-07 2014-03-07 分布式智能平台管理总线ipmb连接方法及atca机框 Active CN104899170B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410083288.3A CN104899170B (zh) 2014-03-07 2014-03-07 分布式智能平台管理总线ipmb连接方法及atca机框
PCT/CN2014/086972 WO2015131516A1 (zh) 2014-03-07 2014-09-19 分布式智能平台管理总线连接方法及atca机框

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410083288.3A CN104899170B (zh) 2014-03-07 2014-03-07 分布式智能平台管理总线ipmb连接方法及atca机框

Publications (2)

Publication Number Publication Date
CN104899170A CN104899170A (zh) 2015-09-09
CN104899170B true CN104899170B (zh) 2019-05-10

Family

ID=54031842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410083288.3A Active CN104899170B (zh) 2014-03-07 2014-03-07 分布式智能平台管理总线ipmb连接方法及atca机框

Country Status (2)

Country Link
CN (1) CN104899170B (zh)
WO (1) WO2015131516A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106940676B (zh) * 2016-01-05 2020-07-21 佛山市顺德区顺达电脑厂有限公司 机柜的监控系统
CN105718396B (zh) * 2016-01-21 2018-05-29 哈尔滨理工大学 一种大数据主设备传输的i2c总线装置及其通讯方法
CN107885687A (zh) * 2017-12-04 2018-04-06 盛科网络(苏州)有限公司 一种用于将fru模块连接到i2c总线的接口
CN109582541A (zh) * 2018-12-03 2019-04-05 群蜂信息技术(上海)有限公司 一种服务器管理方法、服务器管理模块组、服务器
CN111355647A (zh) * 2018-12-21 2020-06-30 海能达通信股份有限公司 一种通信设备
CN111124979B (zh) * 2019-10-31 2021-07-06 苏州浪潮智能科技有限公司 一种基于堆栈结构的i2c多主访问方法和系统
CN111262745A (zh) * 2020-04-01 2020-06-09 江苏华创微系统有限公司 信息处理平台冗余系统设计
CN112346910A (zh) * 2020-11-12 2021-02-09 盛科网络(苏州)有限公司 Cpu模块的启动备份方法、atca单板、设备和存储介质
TWI764481B (zh) * 2020-12-28 2022-05-11 技嘉科技股份有限公司 機箱管理控制裝置以及機箱管理控制系統
CN113872796B (zh) * 2021-08-26 2024-04-23 浪潮电子信息产业股份有限公司 服务器及其节点设备信息获取方法、装置、设备、介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1767451A (zh) * 2004-10-27 2006-05-03 华为技术有限公司 一种单板管理方法和系统
CN1863081A (zh) * 2005-10-14 2006-11-15 华为技术有限公司 基于智能平台管理接口的管理系统和方法
CN1960261A (zh) * 2006-08-25 2007-05-09 华为技术有限公司 一种获取单板的物理槽位号和槽位类型的方法及系统
CN102724093A (zh) * 2012-06-26 2012-10-10 大唐移动通信设备有限公司 一种atca机框及其ipmb连接方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200758B2 (en) * 2002-10-09 2007-04-03 Intel Corporation Encapsulation of a TCPA trusted platform module functionality within a server management coprocessor subsystem
US9116821B2 (en) * 2011-03-23 2015-08-25 Avocent Corporation Method and system for USB device virtualization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1767451A (zh) * 2004-10-27 2006-05-03 华为技术有限公司 一种单板管理方法和系统
CN1863081A (zh) * 2005-10-14 2006-11-15 华为技术有限公司 基于智能平台管理接口的管理系统和方法
CN1960261A (zh) * 2006-08-25 2007-05-09 华为技术有限公司 一种获取单板的物理槽位号和槽位类型的方法及系统
CN102724093A (zh) * 2012-06-26 2012-10-10 大唐移动通信设备有限公司 一种atca机框及其ipmb连接方法

Also Published As

Publication number Publication date
CN104899170A (zh) 2015-09-09
WO2015131516A1 (zh) 2015-09-11

Similar Documents

Publication Publication Date Title
CN104899170B (zh) 分布式智能平台管理总线ipmb连接方法及atca机框
US9043526B2 (en) Versatile lane configuration using a PCIe PIe-8 interface
JP4831473B2 (ja) ネットワーク管理方法、プログラム及びシステム
US9424224B2 (en) PCIe tunneling through SAS
US20140344500A1 (en) Pci express tunneling over a multi-protocol i/o interconnect
US10868754B2 (en) High availability input/output management nodes
US8155136B2 (en) Single network interface circuit with multiple-ports and method thereof
US20220291730A1 (en) Protocol Level Control for System on a Chip (SOC) Agent Reset and Power Management
CN110232039A (zh) 可安装在机架上的数据存储系统和可编程逻辑装置
US20210055777A1 (en) System power management in multi-port i/o hybrid systems
US20050251612A1 (en) Separating transactions into different virtual channels
US20070053350A1 (en) Buffering data packets according to multiple flow control schemes
CN104583944B (zh) 在退出低功率部分宽度高速链路状态时的快速抗扭斜
CN109710548A (zh) 一种dma控制数据传输方法、系统及设备
WO2014051778A1 (en) Adaptive packet deflection to achieve fair, low-cost, and/or energy-efficient quality of service in network on chip devices
CN103890745A (zh) 集成知识产权(Ip)块到处理器中
CN102185750A (zh) 封装体
EP2842293B1 (en) Usb 3.0 link layer timer adjustment to extend distance
JP3946145B2 (ja) 高速イーサネット(登録商標)スイッチおよび高速イーサネット(登録商標)データフレームを分配するための方法
CN108234337A (zh) 一种支持主机接口的SpaceWire总线路由器
US20120044951A1 (en) Alignment apparatus and method
TWI411264B (zh) 非阻塞式網路系統及其封包仲裁方法
CN115437978A (zh) 高速外围组件互连接口装置及其操作方法
CN108021525A (zh) 一种基于pcie总线多主互连的冗余交换系统
US7688721B2 (en) Distributed communication traffic control systems and methods

Legal Events

Date Code Title Description
C06 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