一种基于nvmessd硬盘的监控系统、基板管理控制器和监控方法_3

文档序号:9235362阅读:来源:国知局
所述确定的所有I2C switch芯片的地址和所有输入状态的I2C/GP1expander芯片的地址间的对应关系,根据所述至少一条输入I2C链路的负载,确定发送所述NVME SSD硬盘SMBUS信号、PRESENT和IFDET信号的I2C switch芯片的地址和/或对应的输入状态的I2C/GP1 expander芯片的地址,并接收该至少一条输入I2C链路发送的I2C信号。
[0080]在本发明另一实施例中,上述监控系统进一步包括:第二确定模块(图中未示出),其中,
[0081]所述第二确定模块,用于根据所述硬盘指示灯的个数,确定所述输出状态的I2C/GP1 expander芯片的个数,并确定所有输出状态的I2C/GP1 expander芯片的地址以及所有输出状态的I2C/GP10 expander芯片的地址与所述硬盘指示灯间的对应关系;
[0082]所述基板管理控制器BMC,通过至少一条输出I2C链路与所有输出状态的I2C/GP1 expander芯片相连,并进一步用于建立所述至少一条输入I2C链路与所述确定的所有输出状态的I2C/GP10 expander芯片的地址间的对应关系,根据所述至少一条输出I2C链路的负载,确定接收所述状态控制信息的输出状态的12C/GP1 expander芯片的地址,并通过该至少一条输出I2C链路发送所述状态控制信息。
[0083]如图2所示,本发明实施例提供一种基板管理控制器,通过I2C链路与I2C switch芯片、输入状态的I2C/GP10 expander芯片和输出状态的I2C/GP10 expander芯片相连,包括:
[0084]接收单元201,用于接收所述I2C switch芯片通过第一 I2C链路发送的第一 I2C信号和所述输入状态的I2C/GP10 expander芯片通过第一 I2C链路第二 I2C信号;
[0085]解析处理单元202,用于解析和处理所述第一 I2C信号和所述第二 I2C信号,形成状态控制信息;
[0086]第一发送单元203,用于以第三I2C信号的形式发送所述状态控制信息。
[0087]在本发明一个实施例中,上述基板管理控制器进一步包括:获取单元和第二发送单元(图中未示出),其中,
[0088]所述获取单元,用于从解析处理单元解析和处理的所述第一 I2C信号和所述第二I2C信号中获取所述每一个NVME SSD硬盘的温度、VPD值、健康信息、fault信息、硬盘类型和驱动类型;
[0089]第二发送单元,用于发送所述获取单元获取的所述每一个NVME SSD硬盘的温度、VPD值、健康信息、fault信息、硬盘类型和驱动类型。
[0090]如图3所示,本发明实施例提供一种基于NVME SSD硬盘的监控方法,该方法包括步骤如下:
[0091]步骤301:建立硬盘指示灯与至少一个NVME SSD硬盘运行状态的对应关系;
[0092]步骤302:所述至少一个NVME SSD硬盘发送SMBUS信号、PRESENT和IFDET信号,所述SMBUS信号,包括:硬盘的温度、VPD值、健康信息和fault信息,所述PRESENT和IFDET信号,包括:硬盘类型和驱动类型;
[0093]步骤303:通过所述I2C switch芯片接收所述SMBUS信号,并将所述SMBUS信号转换为第一 I2C信号,并通过第一 I2C链路发送该第一 I2C信号;
[0094]步骤304:通过所述输入状态的I2C/GP1 expander芯片接收所述PRESENT和IFDET信号,并将所述PRESENT和IFDET信号转换为第二 I2C信号,并通过第一 I2C链路发送该第二 I2C信号;
[0095]步骤305:通过所述基板管理控制器BMC接收所述第一 I2C信号和所述第二 I2C信号,并解析和处理所述第一 I2C信号和所述第二 I2C信号,形成状态控制信息,并以第三I2C信号的形式发送所述状态控制信息;
[0096]步骤306:通过所述输出状态的I2C/GP1 expander芯片接收并解析所述状态控制信息,形成所述硬盘指示灯的驱动信号,并根据所述硬盘指示灯与至少一个NVME SSD硬盘运行状态的对应关系,通过该驱动信号控制硬盘指示灯提供所述至少一个NVME SSD硬盘的运行状态。
[0097]在本发明一个实施例中,为了尽可能减少芯片个数,以降低成本,所述I2C switch芯片为四路转一路的I2C switch芯片;所述通过所述I2C switch芯片接收所述SMBUS信号,并将所述SMBUS信号转换为第一 I2C信号,包括:通过四路线路最多接收四个所述NVMESSD硬盘发送的所述SMBUS信号,并将该最多四个所述NVME SSD硬盘发送的所述SMBUS信号转换为一路所述第一 I2C信号。
[0098]在本发明一个实施例中,所述输入状态的I2C/GP1 expander芯片为输入状态的八路转一路的I2C/GP1 expander芯片,实现了减少芯片个数,达到降低成本的目的,所述通过所述输入状态的I2C/GP1 expander芯片接收所述PRESENT和IFDET信号,并将所述PRESENT和IFDET信号转换为第二 I2C信号,包括:通过八路线路最多接收四个所述NVMESSD硬盘发送的所述PRESENT和IFDET信号,并将该最多接收四个所述NVME SSD硬盘发送的所述PRESENT和IFDET信号转换为一路所述第二 I2C信号。
[0099]在本发明一个实施例中,所述输出状态的I2C/GP1 expander芯片为输出状态八路转一路的I2C/GP1 expander芯片。
[0100]在本发明一个实施例中,为了直观的为客户提供NVME SSD硬盘的状态,在所述解析和处理所述第一 I2C信号和所述第二 I2C信号之后,进一步包括:
[0101 ] 所述基板管理控制器BMC通过主机端显示所述每一个NVME SSD硬盘的温度、VPD值、健康信息、fault信息、硬盘类型和驱动类型。
[0102]在本发明一个实施例中,为了能够使每一个NVME SSD硬盘的运行状态均被获取到,该方法进一步包括:根据所述NVME SSD硬盘的个数,确定所述I2C switch芯片的个数以及所述输入状态的I2C/GP1 expander芯片的个数;确定所有I2C switch芯片的地址以及所有输入状态的I2C/GP1 expander芯片的地址;在所述基板管理控制器BMC中建立所述至少一条输入I2C链路与所述确定的所有I2C switch芯片的地址和所有输入状态的I2C/GP1 expander芯片的地址间的对应关系;在所述通过所述I2C switch芯片接收所述SMBUS信号之后,在所述通过所述基板管理控制器BMC接收所述第一 I2C信号之前,进一步包括:根据所述至少一条输入I2C链路的负载,确定发送所述NVME SSD硬盘SMBUS信号的I2C switch芯片的地址;所述接收所述第一 I2C信号,包括:接收所述确定的I2Cswitch芯片的地址对应的I2C switch芯片发送的所述第一 I2C信号;在所述通过所述输入状态的I2C/GP1 expander芯片接收所述PRESENT和IFDET信号之后,在所述通过所述基板管理控制器BMC接收所述所述第二 I2C信号之前,进一步包括:根据所述至少一条输入I2C链路的负载,确定发送所述NVME SSD硬盘PRESENT和IFDET信号的输入状态的I2C/GP1 expander芯片的地址;所述接收所述第二 I2C信号,包括:接收所述确定的输入状态的I2C/GP1 expander芯片的地址对应的输入状态的I2C/GP1 expander芯片发送的所述第一 I2C信号。
[0103]在本发明一个实施例中,为了能够提供足够的硬盘指示灯,以使NVME SSD硬盘的运行状态尽可能完全的被提供给客户,该方法进一步包括:根据所述硬盘指示灯的个数,确定所述输出状态的I2C/GP1 expander芯片的个数;确定所有输出状态的I2C/GP1expander芯片的地址以及所有输出状态的I2C/GP1 expander芯片的地址与所述硬盘指示灯间的对应关系;建立所述至少一条输入I2C链路与所述确定的所有输出状态的I2C/GP1 expander芯片的地址间的对应关系;在所述通过所述输出状态的I2C/GP10 expander芯片接收并解析所述状态控制信息之前,进一步包括:根据所述至少一条输出I2C链路的负载,确定接收所述状态控制信息的输出状态的I2C/GP10 expander芯片的地址。
[0104]如图4所示,本发明实施例以通过四路转一路I2C switch芯片和八路转一路I2C/GP1 expander芯片对四个NVME SSD硬盘进行监控为例展开说明基于NVME SSD硬盘的监控方法,该方法包括步骤如下:
[0105]步骤401:根据所述NVME SSD硬盘的个数,确定四路转一路的I2C switch芯片的个数、输入状态的八路转一路I2C/GP10 expander芯片的个数和输出状态的八路转一路I2C/GP10 expander 芯片的个数;
[0106]例如:本发明实施例中NVME SSD硬盘的个数为四个,那么,通过I个四路的即可将这4个NVME SSD硬盘全部连接,那么,该四个NVME SSD硬盘可通过I个四路转一路I2Cswitch芯片如PCA9546芯片、I个输入状态的八路转一路I2C/GP10 expander芯片如输入状态的TCA6408和I个输出状态的八路转一路I2C/GP10 expander芯片如输出状态的TCA6408。
[0107]步骤402:确定I2C switch芯片、输入状态I2C/GP10 expander芯片以及输出状态的I2C/GP10 expander芯片的地址,以及这些地址与I2C链路的对应关系;
[0108]例如:1个四路转一路I2C switch芯片的地址为1110_000 ;1个八路转一路输入状态I2C/GP1 expander芯片的地址为0100_000 ;1个八路转一路输出状态I2C/GP1expander芯片的地址为0100_001 ;其中,地址1110_000和地址0100_000与I2C0对应,该I2C0为输入信号链路,即四路转一路I2C switch芯片和八路转一路输入状态I2C/GP1expander芯
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1