基于IPMI协议的状态信息监控技术

来源:优秀文章 发布时间:2023-04-25 点击:

张 帅,于 昕,查文琦,张先云,陈 阳

(中国船舶集团有限公司第八研究院,南京 211153)

随着现代雷达装备综合化、智能化程度的不断提高,对装备测试性的要求也越来越高,传统的断线测试、状态指示、本地控制等检测控制方式已无法满足现代装备智能监测、综合诊断等需求[1],在线状态信息监控技术日益显示出其重要性。通过状态信息监控技术,系统监控中枢可以获得内部关键部件的工作状态数据,并对其实施控制。目前,相关功能件的状态监控功能主要采用专用硬件芯片实现,与上位机的数据通信并非标准协议,适用性窄,上传的状态信息数量和类型也极为有限。

针对状态信息监控功能标准化的迫切需求,本文采取基于IPMI(Intelligent Platform Management Interface)协议的状态信息监控方法,实现了对功能件状态信息的实时监控。由于采用了标准化协议,本文方法具有通用性强,应用广泛,状态监控信息类型全、数据多且可编程等优点。

1.1 IPMI协议

IPMI是智能型平台管理接口的开放协议[2],可以在硬件或固件平台管理中直接实现自主监控和恢复功能。智能平台管理独立于主控制器和操作系统,即使当系统处于关机状态时,智能管理也能工作。

IPMI体系结构的核心是一个称为基板管理控制器(Baseboard Management Controller,BMC)的微控制器,该控制器不依赖于服务器的处理、BIOS器或操作系统,用于管理软件系统和硬件平台之间的接口,提供自主监控、日志记录、恢复控制功能[3],这也是智能平台管理的关键特征。

IPMI系统中通常有一些附加的、远离BMC的管理控制器,系统通过智能平台管理总线(Intelligent Platform Management BUS,IPMB)将附加的管理控制器连接到系统,从而支持平台管理的扩展。IPMB是一个基于I2C的串行总线,它在主要的系统模块之间路由,用于管理控制器之间的通信,提供了一种将BMC与机箱或其他管理器集成到一起的标准化方法。IPMI原理如图1所示。

图1 IPMI原理框图

1.2 并联IPMI监控

在系统架构中通常会多级分布多组功能。为简化设计,最常见的做法是采用并联方式实现对各功能件的状态监控管理。多台组件的并联IPMI监控有2种实现方式:

一是单向通讯并联监控方式,如图2所示。多个组件同时向上位机发送数据,IPMB总线自带多主机时钟同步与仲裁机制,可以决定其中的一个组件获取IPMB总线的控制权,因而上位机可以自动接收多个并联组件发送的状态信息;

二是双向通讯并联监控方式,如图3所示。在硬件上分配不同的地址给并联组件,上位机循环发送包含地址信息的查询命令给各个组件,组件接收到查询命令后与自己的地址进行匹配, 地址匹配成功的组件响应上位机的查询命令,上传状态信息。

图2 并联IPMI监控功能

图3 双向通讯并联监控方式

2.1 IPMI通信设计

状态信息通信采用IPMI协议,该协议采用基于I2C数据传输的IPMB总线与上位机进行数据传输。I2C数据传输格式如图4所示。

图4 I2C数据格式

功能模块数据处理软件中的I2C模块作为从机,打开I2C中断,在中断中进行I2C事件的程序操作。

软件使能I2C外设时钟,以及配置I2C_CTL1中时钟相关寄存器来确保正确的I2C时序。之后,I2C运行在默认的从机模式状态,等待START起始位和地址。接收1个START起始位及随后的地址,地址可以是7位也可以是10位格式,I2C硬件将I2C_STAT0寄存器的ADDSEND位置1,此位应该被软件查询或者中断监视,发现置位后,软件应该依次读I2C_STAT0和I2C_STAT1寄存器。主机应接着再产生1个START,并发送1个地址头到I2C总线。从机在检测到START和紧接着的地址头之后会继续将ADDSEND位置1。软件也可以通过依次读I2C_STAT0、I2C_STAT1寄存器来第2次清除ADDSEND位。

在倒数第2个字节发送期间,软件写最后一个数据到I2C_DATA寄存器,以清除TBE标志位,之后就不用再关心TBE的状态。TBE位会在倒数第2个字节发送完成后置起,直到检测到STOP结束位时被清0。

根据I2C协议,I2C主机将不会对接收到的最后1个字节发送应答,所以在最后1个字节发送结束后,I2C从机的AERR(应答错误)会置起,以通知软件发送结束。软件写0到AERR位可以清除此位,如图5所示。

图5 I2C状态信息上传程序流程图

2.2 状态监控功能设计

IMPB总线在I2C总线的基础上,增加了详细的数据校验及握手命令,其发送信息包指令如图6所示,接收信息包指令如图7所示。

图6 IPMB总线发送信息包指令

图7 IPMB总线接收信息包指令

IPMI通信程序流程如图8所示,上位机向组件发送查询命令,组件接收后,将查询命令中的地址位与自己的地址位进行对比,如果匹配一致,则发送状态信息给上位机;
否则,继续接收查询命令,并判断地址位是否匹配。

图8 IPMI通信流程图

某型VPX架构的通用电源组件[4]采用IPMI协议实现了对电源状态信息的实时监控,它在I2C协议的基础上定义了与IPMB总线一致的数据校验和握手命令等方式,能够适配标准的IPMI系统,通用性强,应用广泛。

3.1 状态信息收集

IPMI程序可以在MCU单片机、DSP或FPGA中实现。VPX架构的通用电源组件内置了MCU单片机,下面以MCU单片机为例进行设计。

VPX架构的通用电源组件的采样电路分别对12 V、48 V、3.3 V输出电压、电流以及机壳温度进行采样,MCU接收采样信息后,通过IPMB总线接口将状态信息传输给上位机,从而实现对通用电源模块状态信息的实时监控。状态信息收集原理如图9所示。

图9 状态信息采样原理图

3.2 故障告警保护

IPMI系统具有远程控制故障告警保护能力。VPX架构的通用电源组件的内置MCU接收12 V、48 V、3.3 V等3种电压的过压、欠压、过流以及过温故障信息。一方面,VPX架构的通用电源组件的内置MCU通过IPMB总线将故障信息传输给上位机;
另一方面,以12 V输出为例,当MCU检测到12 V的输出过压、欠压、过流故障后,MCU输出关机命令,对12 V电源模块进行控制保护。故障告警保护原理框图如图10所示。

图10 故障保护原理框图

3.3 远程控制

VPX架构的通用电源组件能够通过IPMI协议进行远程控制。其内置的MCU接收上位机通过IPMB总线发送的遥控开关机、故障复位、状态查询命令。以12 V输出为例,MCU根据接收到的遥控命令实现对12 V电源输出的启动、关机、故障复位、状态查询操作。远程控制原理如图11所示。

图11 远程遥控原理框图

本文针对状态信息监控功能标准化的迫切需求,采取了基于IPMI协议的状态信息监控方法,实现了对组件状态信息的实时监控。从健康管理需求、标准化、通用化需求来说,IPMI协议实现了对组件状态信息的实时监控,通用性强,应用广泛,状态监控信息类型全、数据多且可编程,协议的标准化极大地增强了组件的适用性。

猜你喜欢上位并联总线识别串、并联电路的方法中学生数理化·中考版(2021年10期)2021-11-22基于PCI Express总线的xHC与FPGA的直接通信测控技术(2018年6期)2018-11-25机载飞控1553B总线转以太网总线设计测控技术(2018年8期)2018-11-25特斯拉 风云之老阿姨上位车迷(2018年12期)2018-07-26“三扶”齐上位 决战必打赢中国老区建设(2016年3期)2017-01-15基于ZigBee和VC上位机的教室智能监测管理系统山东工业技术(2016年15期)2016-12-01审批由“串联”改“并联”好在哪里?中国环境监察(2016年7期)2016-10-23并联型APF中SVPWM的零矢量分配通信电源技术(2016年1期)2016-04-16一种软开关的交错并联Buck/Boost双向DC/DC变换器通信电源技术(2016年5期)2016-03-22以新思路促推现代农业上位学习月刊(2015年3期)2015-07-09推荐访问:监控 状态 协议
上一篇:表面喷丸对Aermet100钢耐蚀性影响
下一篇:我的『晚霞』时光

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有