CN101593128A - 基于实时操作系统的atca系统中的ipmc及其构建方法 - Google Patents

基于实时操作系统的atca系统中的ipmc及其构建方法 Download PDF

Info

Publication number
CN101593128A
CN101593128A CN 200810038054 CN200810038054A CN101593128A CN 101593128 A CN101593128 A CN 101593128A CN 200810038054 CN200810038054 CN 200810038054 CN 200810038054 A CN200810038054 A CN 200810038054A CN 101593128 A CN101593128 A CN 101593128A
Authority
CN
China
Prior art keywords
order
event
message
ipmc
event handling
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
CN 200810038054
Other languages
English (en)
Other versions
CN101593128B (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.)
Shanghai B Star Co Ltd
Original Assignee
Shanghai B Star 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 Shanghai B Star Co Ltd filed Critical Shanghai B Star Co Ltd
Priority to CN 200810038054 priority Critical patent/CN101593128B/zh
Publication of CN101593128A publication Critical patent/CN101593128A/zh
Application granted granted Critical
Publication of CN101593128B publication Critical patent/CN101593128B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明揭示了一种基于实时操作系统的ATCA系统中的智能平台管理控制器(IPMC),所述系统包括硬件系统及软件系统,硬件系统与软件系统连接;硬件系统为一微控制器;软件系统包括实时控制系统移植模块、硬件接口函数模块、中断处理模块、中断预处理模块、事件处理模块;中断预处理模块分别与中断处理模块、事件处理模块连接。本发明在微控制器的事件处理中引入了嵌入式实时操作系统,它不但可以简化IPMC的设计和开发,而且也提高了IPMC的实时性。同时,本发明提出的IPMC开发方案可以帮助专有架构的电信刀片厂商快速进入ATCA刀片的生产领域,可以帮他们降低开发成本,并缩短开发周期。

Description

基于实时操作系统的ATCA系统中的IPMC及其构建方法
技术领域
本发明属于电信通信技术领域,涉及一种ATCA系统中的IPMC(Intelligent PlatformManagement Controller),尤其涉及一种基于实时操作系统的ATCA系统中的IPMC;同时,本发明还涉及一种基于实时操作系统的ATCA系统中的IPMC的构建方法。
背景技术
近年来ATCA(Advanced Telecom Computing Architecture,标准即先进的电信计算平台)技术在电信通信领域逐渐获得的广泛应用,特别是一些新兴的通信技术已经把ATCA列为基础的通信计算平台,如果IPTV和WiMAX等。本专利就ATCA刀片产品中的核心技术“智能平台管理控制器(IPMC)”的开发进行论述,对于ATCA刀片产品厂商开发IPMC模块可以提供依据。
ATCA是由PICMG于2001年底制定的满足高吞吐量、高可靠性的新一代计算平台标准。ATCA的一个重要特点是集中的机框管理功能,其管理特性相对于传统私有架构的计算刀片和Compact PCI都有了大幅度的提升。目前ATCA在国内的研发主要集中在各种ATCA刀片的生产上,由于每块ATCA刀片都需要一个独立的IPMC管理模块,国内公司在生产ATCA刀片产品时,多采用购买国外公司的IPMC方案进行集成,不但花费巨大而且可定制性有限。本专利则介绍了一种基于实时操作系统开发IPMC的方案,可以帮助ATCA刀片厂商在短时间内开发出符合ATCA规范的IPMC模块。
如图1所示,ATCA架构中的管理功能由三级组件来实现:
(1)系统管理(System Manager)是整个ATCA架构中最高层的管理实体,它负责管理一个或更多机框。典型的系统管理软件基于RMCP(远程管理控制协议)协议来管理多个机框。
(2)机框管理控制器(ShMC)的主要职责是提供各种机框管理和控制功能,如刀片插拔管理、上电/下电/复位控制、功率控制,传感器事件管理,风扇单元状态检测和转速控制,配电单元状态检测和系统温度、电压的检测等。同时机框管理控制器还可用看作是系统管理和现场可管理可置换单元之间的桥梁,它通过IPMC收集刀片、风扇及配电单元上的信息,并向系统管理提供管理和维护这些组件的接口。
(3)每块ATCA刀片上都需要内置一个IPMC,它使用IPMB(智能平台管理总线)与机框管理控制器进行通信,并基于IPMI(智能平台管理接口)规范与机框管理控制器进行交互,负责刀片的功率控制、运行状况监测以及热插拔管理等,如图2所示。刀片上的IPMC处理模块应该包含以下功能:
(1)通过控制负载的上电和下电和改变负载功率,协调刀片对机框电源的使用;
(2)通过控制背板的基本接口、交换接口和更新接口,确保刀片互连时协议兼容;
(3)监控负载的工作状况,必要时可对其进行诊断、软复位或硬复位;
(4)通过非易失存储,保存刀片的资产信息、背板接口支持的连接协议和各类传感器事件定义;
(5)监控刀片上的温度、电压传感器等信息,在出现故障时向机框管理控制器或负载发送报告。
IPMC的功能比较复杂,如果采用前后台方式在设计程序结构和开发时都具有不小困难。另一方面,传统的前后台方式程序结构无法保证紧急事件得到优先处理,对实时要求较高的事件处理只能放在中断中进行,总体上实时性较差。
发明内容
本发明所要解决的技术问题是:提供一种能够提高IPMC实时性的ATCA系统中的IPMC。
另外,本发明还提供上述IPMC的构建方法。
为解决上述技术问题,本发明采用如下技术方案:
一种基于实时操作系统的ATCA系统中的IPMC,所述系统包括硬件系统及软件系统,所述硬件系统与软件系统连接;
所述硬件系统为一微控制器;
所述软件系统包括实时控制系统移植模块、硬件接口函数模块、中断处理模块、中断预处理模块、事件处理模块;所述中断预处理模块分别与中断处理模块、事件处理模块连接;
所述实时控制系统移植模块用以移植实时操作系统内核;
所述硬件接口函数模块用以提供中断驱动及接口操作函数;
所述中断处理模块用以处理微控制器的中断;
所述中断预处理模块用以读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列;
所述事件处理模块用以从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。
作为本发明的一种优选方案,所述ATCA系统包括若干刀片,所述IPMC安装于刀片上;所述微控制器的硬件接口包括:
RTC接口,用以连接实时时钟模块,实现本地事件日志提供日期及时间信息;
Handle接口,用以实现一个热插拔开关;
LED控制接口,用以在刀片的工作面版上实现若干个状态指示灯,包括指示刀片当前的工作状态的蓝色LED、指示负载的工作状态的OOS LED、背板的连接状态LED和报警信息LED;
Debug接口,用以供用户调试程序或监控IPMC工作状态时使用,输出若干定制的信息;
JTAG接口,用以微控制器的在线调试及固件下载更新;
Hard Addr接口,用以读取刀片所在槽位的硬件地址,由此转换可以得到微控制器进行IPMB通信的所需的I2C地址;
UART接口,用以实现IPMC与负载间的报文交互;
Reset接口,用以实现IPMC对负载的硬复位操作;
E-Keying(电子锁)接口,用以实现对负载的背板连接端口的控制;
电源模块接口,用以实现对负载的供电控制,协调ShMC对刀片的用电进行管理并支持功率控制;
传感器接口,用以读取温度和电压传感器的读值;
OSC接口,用以连接外部晶振;
IPMB_A接口,用以实现一条IPMB总线,接收和发送IPMI报文;
IPMB_B接口,用以实现一条IPMB总线,接收和发送IPMI报文;
所述微控制器内部的EEPROM上还保存了刀片的需要监视的传感器信息和FRU信息。
作为本发明的一种优选方案,所述中断处理模块包括Timer中断处理单元、I2C中断单元及UART中断单元,对应处理的中断包括Timer中断、I2C中断及UART中断。
作为本发明的一种优选方案,所述Timer中断处理单元执行多个定时间隔的累加和检测,如果规定的定时间隔到设置相应的定时标志位,该标志位通过中断预处理模块解析后会激活相关的定时事件处理;I2C中断单元将接受到的数据放入IPMI报文接收缓冲区中,具体的报文校验、解析和处理放在任务中进行;UART中断单元将接收到的数据分别放入UART接收缓冲区中。
作为本发明的一种优选方案,所述中断预处理模块用于读取在Timer中断设置的定时间隔标志位,根据标志位的变化与否来决定是否生成LOCAL处理事件,由Timer中断设置的标志位则作为LOCAL事件的处理参数;中断预处理模块负责读取I2C和UART的接收缓冲区,并对缓冲区中接收到的报文进行校验,如果校验正确,则继续对接收到报文进行解析;根据报文解析得到信息更新传感器读值、生成IPMI处理事件或PAYLOAD处理事件;
中断预处理模块还负责通过调用OSMemGet()函数申请内存,将待处理事件的处理参数放入申请的内存中,并以消息队列的方式通知各个事件处理任务;LocalQ消息处理队列主要用于传递定时器事件,I2cQ消息队列用于传递ShMC发送来的各类IPMI报文请求,PayloadQ消息队列用于传递负载发送的请求。
作为本发明的一种优选方案,所述事件处理模块包括LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元。
作为本发明的一种优选方案,所述LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元分别用于各自消息队列中事件的处理;所述事件处理模块事件处理任务的优先级高于中断预处理任务,LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元的优先级依次递减;事件处理任务通过OSQPend()函数来等待队列消息,一但接收到新的消息即被激活;而后从消息指针指向的内存中取得事件处理参数,进行相关事务处理,并通过OSMemPut()函数归还传递事件参数时使用的内存。
作为本发明的一种优选方案,所述LOCAL事件处理单元主要处理需要周期执行的任务,把Handle状态监测、负载OOS状态检测及更新、LED显示状态更新、IPMB工作状态检测、传感器报警检测;该类事件的处理依据是ATCA和IPMI规范;当Handle状态变化时需要依据刀片的热插拔策略设置位来决定是否发送热插拔请求给ShMC,当IPMB出现故障和传感器越限时需发生报警请求给ShMC。
作为本发明的一种优选方案,所述IPMI事件处理单元主要用于处理ATCA规范中规定的IPMI命令,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令、事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令;IPMI事件处理队列从事件参数中提取命令ID,而后根据报文内容参照ATCA和IPMI规范进行命令处理,并构建回应帧,最后依据公平原则选择一条IPMB总线,发送回应帧给ShMC。
作为本发明的一种优选方案,所述PAYLOAD事件处理单元用于处理IPMC与负载间的交互,包括负载工作状态更新,负载读取传感器值或刀片逻辑地址等。PAYLOAD事件处理任务从事件参数中提取请求ID,根据负载请求的内容构建回应帧,而后通过UART回复给负载。
上述IPMC的构建方法,包括如下步骤:
步骤A、所述中断处理模块处理微控制器的中断;
步骤B、所述中断预处理模块读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列;
步骤C、所述事件处理模块从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。
本发明的有益效果在于:本发明在微控制器的事件处理中引入了嵌入式实时操作系统,它不但可以简化IPMC的设计和开发,而且也提高了IPMC的实时性。同时,ATCA规范考虑到电信运营商不断增长的需求,采用了全新的设计。特别是这一新规范有助于满足电信设备运营商日益苛刻的要求,包括高可用性、可管理性和互操作性等。而IPMC是保障ATCA刀片产品具有高可用性、可管理性和互操作性的根本,本专利提出的IPMC开发方案可以帮助专有架构的电信刀片厂商快速进入ATCA刀片的生产领域,可以帮他们降低开发成本,并缩短开发周期。
附图说明
图1为现有技术中ATCA系统管理的组成示意图。
图2为现有技术中IPMC功能逻辑框图。
图3为本发明微控制器的硬件逻辑图。
图4为本发明软件系统组成示意图。
图5为本发明事件处理流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
请参阅图4,本发明揭示了一种基于实时操作系统的ATCA系统中的IPMC,该ATCA系统包括若干刀片,所述IPMC安装于刀片上。所述系统包括硬件系统及软件系统;所述硬件系统为一微控制器;所述软件系统包括IPMC硬件接口模块21、实时控制系统移植模块22、硬件接口函数模块23、中断处理模块24、中断预处理模块25、事件处理模块26。所述中断预处理模块25分别与中断处理模块24、事件处理模块26连接;所述硬件系统通过IPMC硬件接口模块21与软件系统连接。
首先介绍微控制器,请参阅图3,所述微控制器的硬件接口包括:
RTC接口,用以连接实时时钟模块,实现本地事件日志提供日期及时间信息;
Handle接口,用以实现一个热插拔开关;
LED控制接口,用以在刀片的工作面版上实现若干个状态指示灯,包括指示刀片当前的工作状态的蓝色LED、指示负载的工作状态的OOS LED、背板的连接状态LED和报警信息LED;
Debug接口,用以供用户调试程序或监控IPMC工作状态时使用,输出若干定制的信息;
JTAG接口,用以微控制器的在线调试及固件下载更新;
Hard Addr接口,用以读取刀片所在槽位的硬件地址,由此转换可以得到微控制器进行IPMB通信的所需的I2C地址;
UART接口,用以实现IPMC与负载间的报文交互;
Reset接口,用以实现IPMC对负载的硬复位操作;
E-Keying接口,用以实现对负载的背板连接端口的控制;
电源模块接口,用以实现对负载的供电控制,协调ShMC对刀片的用电进行管理并支持功率控制;
传感器接口,用以读取温度和电压传感器的读值;
OSC接口,用以连接外部晶振;
IPMB_A接口,用以实现一条IPMB总线,接收和发送IPMI报文;
IPMB_B接口,用以实现一条IPMB总线,接收和发送IPMI报文;
所述微控制器内部的EEPROM上还保存了刀片的需要监视的传感器信息(电压、温度等)和FRU(现场可置换单元)信息(资产状况、端口类型等)。
IPMC的软件系统中需要实现一个状态机,其通过判断Handle开关是否闭合来决定是否使刀片进入工作模式。当单板插入时ATCA刀片的前面板的蓝色LED指示灯点亮,当合上Handle开关时蓝色指示灯闪烁。由IPMC向ShMC上报传感器信息和FRU信息,并进行功率协商。刀片进入工作状态后,蓝色LED指示灯熄灭。当Handle打开时,IPMC向ShMC上报离线请求,蓝色LED指示灯闪烁,机箱管理板通知刀片离线,IPMC给单板下电,并点亮蓝色LED指示灯。当蓝色LED指示灯常亮时,就可以安全的拔出刀片。
请参阅图4,结合图4介绍本发明IPMC中的软件系统。本发明的软件系统包括IPMC硬件接口模块21、实时控制系统移植模块22、硬件接口函数模块23、中断处理模块24、中断预处理模块25、事件处理模块26。以下分别叙述。
IPMC硬件接口模块21为硬件提供驱动,用于实现硬件系统与软件系统的连接。所述实时控制系统移植模块22用于移植实时操作系统内核。
所述硬件接口函数模块23用于接收中断数据,提供中断驱动及接口操作函数;硬件接口函数模块23提供I2C驱动、UART驱动、EERPOM驱动、A/D和D/A驱动、handle、LED、Debug、Hard Addr、Reset、E-Keying和电源模块等接口的操作函数。
所述中断处理模块24用以处理微控制器的中断,包括Timer中断处理单元241、I2C中断单元242及UART中断单元243,对应处理的中断包括Timer中断、I2C中断及UART中断,如表1所示。
 中断名称  处理项目   功能描述
 Timer中断  Timer Chk   如果规定的定时间隔到则设置相应的标志位
 I2C中断  IPMI Rcv   接收IPMB收到的IPMI报文
 UART中断  Payload Rcv   接收负载发送的请求报文
表1微控制器上的关键中断
为了减小中断处理延迟,将中断处理例程尽可能简单化。所述Timer中断处理单元241执行多个定时间隔的累加和检测,如果规定的定时间隔到设置相应的定时标志位,该标志位通过中断预处理模块解析后会激活相关的定时事件处理。I2C中断单元242将接受到的数据放入IPMI报文接收缓冲区中,具体的报文校验、解析和处理放在任务中进行。UART中断单元243将接收到的数据分别放入UART接收缓冲区中。
所述中断预处理模块25用以读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列。
所述中断预处理模块25用于读取在Timer中断设置的定时间隔标志位,根据标志位的变化与否来决定是否生成LOCAL处理事件,由Timer中断设置的标志位则作为LOCAL事件的处理参数;中断预处理模块负责读取I2C和UART的接收缓冲区,并对缓冲区中接收到的报文进行校验,如果校验正确,则继续对接收到报文进行解析;根据报文解析得到信息更新传感器读值、生成IPMI处理事件或PAYLOAD处理事件;
中断预处理模块25还负责通过调用OSMemGet()函数申请内存,将待处理事件的处理参数放入申请的内存中,并以消息队列的方式通知各个事件处理任务;LocalQ消息处理队列主要用于传递定时器事件,I2cQ消息队列用于传递ShMC发送来的各类IPMI报文请求,PayloadQ消息队列用于传递负载发送的请求。
所述事件处理模块26用以从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。所述事件处理模块26包括LOCAL事件处理单元261、IPMI事件处理单元262和PAYLOAD事件处理单元263,如表2所示。
  实时操作系统任务   优先级  处理项目   功能描述
  LOCAL事件处理任务   高  Timer(Handle Chk、PayloadOOS Chk、PayloadWatchdog Chk、LED Chk、IPMB State Chk、SensorAlarm Chk)   处理Handle状态变化,Payload OOS状态,Payload看门狗,LED显示更新、IPMB状态变化、传感器报警
  IPMI事件处理任务   中  E-keying、Power、HotswapFRU Ctrl、Sensor、SEL、LED、IPMB、FRU&SDRStorage、IPMC Reset、Watchdog、Misc   响应ShMC的报文请求,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令,事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令、其他IPMI和ATCA扩展命令
  PAYLOAD事件处理任务   低  Payload Heartbeat、SensorReading   处理Payload工作状态更新、传感器数据读取
表2微控制器中的关键任务
所述LOCAL事件处理单元261、IPMI事件处理单元262和PAYLOAD事件处理单元263分别用于各自消息队列中事件的处理。所述事件处理模块26事件处理任务的优先级高于中断预处理任务。由于LOCAL事件多涉及人机交互及设备安全,所以优先处理,IPMI事件处理任务的优先级则次之,PAYLOAD事件对实时性无要求,所以优先级设为最低;因此,LOCAL事件处理单元261、IPMI事件处理单元262和PAYLOAD事件处理单元263的优先级依次递减。
事件处理任务通过OSQPend()函数来等待队列消息,一但接收到新的消息即被激活;而后从消息指针指向的内存中取得事件处理参数,进行相关事务处理,并通过OSMemPut()函数归还传递事件参数时使用的内存。
所述LOCAL事件处理单元261主要处理需要周期执行的任务,如把Handle状态监测、负载OOS状态检测及更新、LED显示状态更新、IPMB工作状态检测、传感器报警检测等。该类事件的处理依据是ATCA和IPMI规范。有的事件处理完毕后需要发送请求报文给ShMC,如Handle状态变化时需要依据刀片的热插拔策略设置位来决定是否发送热插拔请求给ShMC,当IPMB出现故障和传感器越限时也要发生报警请求给ShMC。
所述IPMI事件处理单元262主要用于处理ATCA规范中规定的IPMI命令,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令、事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令和其他IPMI和ATCA扩展命令。IPMI事件处理队列从事件参数中提取命令ID,然后根据报文内容参照ATCA和IPMI规范进行命令处理,并构建回应帧,最后依据公平原则选择一条IPMB总线,发送回应帧给ShMC。
所述PAYLOAD事件处理单元263用于处理IPMC与负载间的交互,如负载工作状态更新,负载读取传感器值或刀片逻辑地址等。PAYLOAD事件处理任务从事件参数中提取请求ID,根据负载请求的内容构建回应帧,然后通过UART回复给负载。
请参阅图5,图5介绍了利用上述IPMC的构建方法,中断处理模块负责接收数据,中断预处理模块负责解析这些数据并生产事件处理参数,然后交给LOCAL、IPMI和PAYLOAD这三个事件处理单元来完成具体的事件处理。具体包括如下步骤:
【步骤A】所述中断处理模块处理微控制器的中断。
其中,所述中断处理模块处理的中断包括Timer中断、I2C中断及UART中断;Timer中断执行多个定时间隔的累加和检测,若规定的定时间隔到设置相应的定时标志位,该标志位通过中断预处理模块解析后会激活相关的定时事件处理;I2C中断中,I2C中断单元将接受到的数据放入IPMI报文接收缓冲区中,具体的报文校验、解析和处理放在任务中进行;UART中断中,UART中断单元将接收到的数据分别放入UART接收缓冲区中。
【步骤B】所述中断预处理模块读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列。
其中,所述中断预处理过程中,所述中断预处理模块读取在Timer中断设置的定时间隔标志位,根据标志位的变化与否来决定是否生成LOCAL处理事件,由Timer中断设置的标志位则作为LOCAL事件的处理参数;中断预处理模块负责读取I2C和UART的接收缓冲区,并对缓冲区中接收到的报文进行校验,如果校验正确,则继续对接收到报文进行解析;根据报文解析得到信息更新传感器读值、生成IPMI处理事件或PAYLOAD处理事件;中断预处理模块通过调用OSMemGet()函数申请内存,将待处理事件的处理参数放入申请的内存中,并以消息队列的方式通知各个事件处理任务;LocalQ消息处理队列主要用于传递定时器事件,I2cQ消息队列用于传递ShMC发送来的各类IPMI报文请求,PayloadQ消息队列用于传递负载发送的请求。
【步骤C】所述事件处理模块从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。
其中,所述事件处理包括LOCAL事件处理、IPMI事件处理和PAYLOAD事件处理;所述事件处理任务的优先级高于中断预处理任务,LOCAL事件处理任务、IPMI事件处理任务和PAYLOAD事件处理任务的优先级依次递减;事件处理任务通过OSQPend()函数来等待队列消息,一但接收到新的消息即被激活;而后从消息指针指向的内存中取得事件处理参数,进行相关事务处理,并通过OSMemPut()函数归还传递事件参数时使用的内存。
所述LOCAL事件处理主要处理需要周期执行的任务,把Handle状态监测、负载OOS状态检测及更新、LED显示状态更新、IPMB工作状态检测、传感器报警检测;该类事件的处理依据是ATCA和IPMI规范;当Handle状态变化时需要依据刀片的热插拔策略设置位来决定是否发送热插拔请求给ShMC,当IPMB出现故障和传感器越限时需发生报警请求给ShMC;
所述IPMI事件处理主要用于处理ATCA规范中规定的IPMI命令,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令、事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令;IPMI事件处理队列从事件参数中提取命令ID,而后根据报文内容参照ATCA和IPMI规范进行命令处理,并构建回应帧,最后依据公平原则选择一条IPMB总线,发送回应帧给ShMC。
所述PAYLOAD事件处理用于处理IPMC与负载间的交互,包括负载工作状态更新,负载读取传感器值或刀片逻辑地址等。PAYLOAD事件处理任务从事件参数中提取请求ID,根据负载请求的内容构建回应帧,而后通过UART回复给负载。
综上,本发明在微控制器的事件处理中引入了嵌入式实时操作系统,它不但可以简化IPMC的设计和开发,而且也提高了IPMC的实时性。同时,ATCA规范考虑到电信运营商不断增长的需求,采用了全新的设计。特别是这一新规范有助于满足电信设备运营商日益苛刻的要求,包括高可用性、可管理性和互操作性等。而IPMC是保障ATCA刀片产品具有高可用性、可管理性和互操作性的根本,本专利提出的IPMC开发方案可以帮助专有架构的电信刀片厂商快速进入ATCA刀片的生产领域,可以帮他们降低开发成本,并缩短开发周期。
以上实施例仅用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。

Claims (14)

1、一种基于实时操作系统的ATCA系统中的IPMC,其特征在于:所述系统包括硬件系统及软件系统,所述硬件系统与软件系统连接;
所述硬件系统为一微控制器;
所述软件系统包括实时控制系统移植模块、硬件接口函数模块、中断处理模块、中断预处理模块、事件处理模块;所述中断预处理模块分别与中断处理模块、事件处理模块连接;
所述实时控制系统移植模块用以移植实时操作系统内核;
所述硬件接口函数模块用以提供中断驱动及接口操作函数;
所述中断处理模块用以处理微控制器的中断;
所述中断预处理模块用以读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列;
所述事件处理模块用以从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。
2、根据权利要求1所述的ATCA系统中的IPMC,其特征在于:所述ATCA系统包括若干刀片,所述IPMC安装于刀片上;所述微控制器的硬件接口包括:
RTC接口,用以连接实时时钟模块,实现本地事件日志提供日期及时间信息;
Handle接口,用以实现一个热插拔开关;
LED控制接口,用以在刀片的工作面版上实现若干个状态指示灯,包括指示刀片当前的工作状态的蓝色LED、指示负载的工作状态的OOS LED、背板的连接状态LED和报警信息LED;
Debug接口,用以供用户调试程序或监控IPMC工作状态时使用,输出若干定制的信息;
JTAG接口,用以微控制器的在线调试及固件下载更新;
Hard Addr接口,用以读取刀片所在槽位的硬件地址,由此转换可以得到微控制器进行IPMB通信的所需的I2C地址;
UART接口,用以实现IPMC与负载间的报文交互;
Reset接口,用以实现IPMC对负载的硬复位操作;
E-Keying接口,用以实现对负载的背板连接端口的控制;
电源模块接口,用以实现对负载的供电控制,协调ShMC对刀片的用电进行管理并支持功率控制;
传感器接口,用以读取温度和电压传感器的读值;
OSC接口,用以连接外部晶振;
IPMB_A接口,用以实现一条IPMB总线,接收和发送IPMI报文;
IPMB_B接口,用以实现一条IPMB总线,接收和发送IPMI报文;
所述微控制器内部或外部扩展的EEPROM上还保存了刀片的需要监视的传感器信息和FRU信息。
3、根据权利要求1所述的ATCA系统中的IPMC,其特征在于:所述中断处理模块包括Timer中断处理单元、I2C中断单元及UART中断单元,对应处理的中断包括Timer中断、I2C中断及UART中断。
4、根据权利要求3所述的ATCA系统中的IPMC,其特征在于:所述Timer中断处理单元执行多个定时间隔的累加和检测,如果规定的定时间隔到设置相应的定时标志位,该标志位通过中断预处理模块解析后会激活相关的定时事件处理;I2C中断单元将接受到的数据放入IPMI报文接收缓冲区中,具体的报文校验、解析和处理放在任务中进行;UART中断单元将接收到的数据分别放入UART接收缓冲区中。
5、根据权利要求1所述的ATCA系统中的IPMC,其特征在于:所述中断预处理模块用于读取在Timer中断设置的定时间隔标志位,根据标志位的变化与否来决定是否生成LOCAL处理事件,由Timer中断设置的标志位则作为LOCAL事件的处理参数;中断预处理模块负责读取I2C和UART的接收缓冲区,并对缓冲区中接收到的报文进行校验,如果校验正确,则继续对接收到报文进行解析;根据报文解析得到信息更新传感器读值、生成IPMI处理事件或PAYLOAD处理事件;
中断预处理模块还负责通过调用OSMemGet()函数申请内存,将待处理事件的处理参数放入申请的内存中,并以消息队列的方式通知各个事件处理任务;LocalQ消息处理队列主要用于传递定时器事件,I2cQ消息队列用于传递ShMC发送来的各类IPMI报文请求,PayloadQ消息队列用于传递负载发送的请求。
6、根据权利要求1所述的ATCA系统中的IPMC,其特征在于:所述事件处理模块包括LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元。
7、根据权利要求6所述的ATCA系统中的IPMC,其特征在于:所述LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元分别用于各自消息队列中事件的处理;所述事件处理模块事件处理任务的优先级高于中断预处理任务,LOCAL事件处理单元、IPMI事件处理单元和PAYLOAD事件处理单元的优先级依次递减;事件处理任务通过OSQPend()函数来等待队列消息,一但接收到新的消息即被激活;而后从消息指针指向的内存中取得事件处理参数,进行相关事务处理,并通过OSMemPut()函数归还传递事件参数时使用的内存。
8、根据权利要求6或7所述的ATCA系统中的IPMC,其特征在于:所述LOCAL事件处理单元主要处理需要周期执行的任务,把Handle状态监测、负载OOS状态检测及更新、LED显示状态更新、IPMB工作状态检测、传感器报警检测;该类事件的处理依据是ATCA和IPMI规范;当Handle状态变化时需要依据刀片的热插拔策略设置位来决定是否发送热插拔请求给ShMC,当IPMB出现故障和传感器越限时需发生报警请求给ShMC。
9、根据权利要求6或7所述的ATCA系统中的IPMC,其特征在于:所述IPMI事件处理单元主要用于处理ATCA规范中规定的IPMI命令,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令、事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令;IPMI事件处理队列从事件参数中提取命令ID,而后根据报文内容参照ATCA和IPMI规范进行命令处理,并构建回应帧,最后依据公平原则选择一条IPMB总线,发送回应帧给ShMC。
10、根据权利要求6或7所述的ATCA系统中的IPMC,其特征在于:所述PAYLOAD事件处理单元用于处理IPMC与负载间的交互,包括负载工作状态更新,负载读取传感器值或刀片逻辑地址等。PAYLOAD事件处理任务从事件参数中提取请求ID,根据负载请求的内容构建回应帧,而后通过UART回复给负载。
11、权利要求1至10任意一项所述IPMC的构建方法,其特征在于:所述方法包括如下步骤:
步骤A、所述中断处理模块处理微控制器的中断;
步骤B、所述中断预处理模块读取定时器标志位及接收缓冲区,通过解析标志位和缓冲区内容,生成待处理事件,并将其分门别类放入相应的待处理事件消息队列;
步骤C、所述事件处理模块从各自的消息队列中提取待处理事件参数,并通过调用合适的硬件接口函数完成相应的处理任务。
12、根据权利要求11所述的ATCA系统中的IPMC的构建方法,其特征在于:所述步骤A中,所述中断处理模块处理的中断包括Timer中断、I2C中断及UART中断;Timer中断执行多个定时间隔的累加和检测,若规定的定时间隔到设置相应的定时标志位,该标志位通过中断预处理模块解析后会激活相关的定时事件处理;I2C中断中,I2C中断单元将接受到的数据放入IPMI报文接收缓冲区中,具体的报文校验、解析和处理放在任务中进行;UART中断中,UART中断单元将接收到的数据分别放入UART接收缓冲区中。
13、根据权利要求11所述的ATCA系统中的IPMC的构建方法,其特征在于:步骤B中,所述中断预处理过程中,所述中断预处理模块读取在Timer中断设置的定时间隔标志位,根据标志位的变化与否来决定是否生成LOCAL处理事件,由Timer中断设置的标志位则作为LOCAL事件的处理参数;中断预处理模块负责读取I2C和UART的接收缓冲区,并对缓冲区中接收到的报文进行校验,如果校验正确,则继续对接收到报文进行解析;根据报文解析得到信息更新传感器读值、生成IPMI处理事件或PAYLOAD处理事件;中断预处理模块通过调用OSMemGet()函数申请内存,将待处理事件的处理参数放入申请的内存中,并以消息队列的方式通知各个事件处理任务;LocalQ消息处理队列主要用于传递定时器事件,I2cQ消息队列用于传递ShMC发送来的各类IPMI报文请求,PayloadQ消息队列用于传递负载发送的请求。
14、根据权利要求11所述的ATCA系统中的IPMC的构建方法,其特征在于:步骤C中,所述事件处理包括LOCAL事件处理、IPMI事件处理和PAYLOAD事件处理;所述事件处理任务的优先级高于中断预处理任务,LOCAL事件处理任务、IPMI事件处理任务和PAYLOAD事件处理任务的优先级依次递减;事件处理任务通过OSQPend()函数来等待队列消息,一但接收到新的消息即被激活;而后从消息指针指向的内存中取得事件处理参数,进行相关事务处理,并通过OSMemPut()函数归还传递事件参数时使用的内存;
所述LOCAL事件处理主要处理需要周期执行的任务,把Handle状态监测、负载OOS状态检测及更新、LED显示状态更新、IPMB工作状态检测、传感器报警检测;该类事件的处理依据是ATCA和IPMI规范;当Handle状态变化时需要依据刀片的热插拔策略设置位来决定是否发送热插拔请求给ShMC,当IPMB出现故障和传感器越限时需发生报警请求给ShMC;
所述IPMI事件处理主要用于处理ATCA规范中规定的IPMI命令,包括E-Keying命令、电源管理命令、热插拔命令、FRU控制命令、传感器命令、事件日志命令、LED命令、IPMB命令、FRU及SDR存储命令、IPMC复位命令、看门狗命令;IPMI事件处理队列从事件参数中提取命令ID,而后根据报文内容参照ATCA和IPMI规范进行命令处理,并构建回应帧,最后依据公平原则选择一条IPMB总线,发送回应帧给ShMC;
所述PAYLOAD事件处理用于处理IPMC与负载间的交互,包括负载工作状态更新,负载读取传感器值或刀片逻辑地址等。PAYLOAD事件处理任务从事件参数中提取请求ID,根据负载请求的内容构建回应帧,而后通过UART回复给负载。
CN 200810038054 2008-05-26 2008-05-26 基于实时操作系统的atca系统中的ipmc及其构建方法 Active CN101593128B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200810038054 CN101593128B (zh) 2008-05-26 2008-05-26 基于实时操作系统的atca系统中的ipmc及其构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810038054 CN101593128B (zh) 2008-05-26 2008-05-26 基于实时操作系统的atca系统中的ipmc及其构建方法

Publications (2)

Publication Number Publication Date
CN101593128A true CN101593128A (zh) 2009-12-02
CN101593128B CN101593128B (zh) 2013-03-06

Family

ID=41407797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810038054 Active CN101593128B (zh) 2008-05-26 2008-05-26 基于实时操作系统的atca系统中的ipmc及其构建方法

Country Status (1)

Country Link
CN (1) CN101593128B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402492A (zh) * 2011-11-21 2012-04-04 浪潮电子信息产业股份有限公司 一种服务器管理模块和时序控制模块的通信方法
CN103559124A (zh) * 2013-10-24 2014-02-05 华为技术有限公司 故障快速检测方法及装置
CN105676970A (zh) * 2016-01-08 2016-06-15 浪潮集团有限公司 一种基于cpci构架的x86平台背板
CN106663053A (zh) * 2014-07-24 2017-05-10 三星电子株式会社 数据操作方法和电子设备
CN108199980A (zh) * 2017-12-29 2018-06-22 天津芯海创科技有限公司 交换芯片的事件监听方法和监听系统
CN108234476A (zh) * 2017-12-29 2018-06-29 天津芯海创科技有限公司 交换芯片的事件监听方法和监听系统
CN108415866A (zh) * 2018-02-27 2018-08-17 深圳市风云实业有限公司 智能平台管理控制器
CN113407369A (zh) * 2020-03-16 2021-09-17 普天信息技术有限公司 支持主备系统管理的智能平台管理系统及实现方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415557B2 (en) * 2006-06-06 2008-08-19 Honeywell International Inc. Methods and system for providing low latency and scalable interrupt collection
CN101163308B (zh) * 2006-10-12 2010-09-08 大唐移动通信设备有限公司 智能平台管理控制器
CN201039204Y (zh) * 2007-03-30 2008-03-19 上海未来宽带技术及应用工程研究中心有限公司 基于事件驱动原理开发ipmc的系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402492A (zh) * 2011-11-21 2012-04-04 浪潮电子信息产业股份有限公司 一种服务器管理模块和时序控制模块的通信方法
CN102402492B (zh) * 2011-11-21 2014-01-15 浪潮电子信息产业股份有限公司 一种服务器管理模块和时序控制模块的通信方法
CN103559124A (zh) * 2013-10-24 2014-02-05 华为技术有限公司 故障快速检测方法及装置
WO2015058711A1 (zh) * 2013-10-24 2015-04-30 华为技术有限公司 故障快速检测方法及装置
US10223183B2 (en) 2013-10-24 2019-03-05 Huawei Technologies Co., Ltd. Rapid fault detection method and device
CN103559124B (zh) * 2013-10-24 2017-04-12 华为技术有限公司 故障快速检测方法及装置
CN106663053A (zh) * 2014-07-24 2017-05-10 三星电子株式会社 数据操作方法和电子设备
CN105676970A (zh) * 2016-01-08 2016-06-15 浪潮集团有限公司 一种基于cpci构架的x86平台背板
CN108199980A (zh) * 2017-12-29 2018-06-22 天津芯海创科技有限公司 交换芯片的事件监听方法和监听系统
CN108234476A (zh) * 2017-12-29 2018-06-29 天津芯海创科技有限公司 交换芯片的事件监听方法和监听系统
CN108415866A (zh) * 2018-02-27 2018-08-17 深圳市风云实业有限公司 智能平台管理控制器
CN113407369A (zh) * 2020-03-16 2021-09-17 普天信息技术有限公司 支持主备系统管理的智能平台管理系统及实现方法
CN113407369B (zh) * 2020-03-16 2023-12-22 普天信息技术有限公司 支持主备系统管理的智能平台管理系统及实现方法

Also Published As

Publication number Publication date
CN101593128B (zh) 2013-03-06

Similar Documents

Publication Publication Date Title
CN101593128B (zh) 基于实时操作系统的atca系统中的ipmc及其构建方法
CN103592880B (zh) 用于大型工程类设备的智能控制器系统
CN104899055B (zh) 一种基于bios控制的me更新系统及其更新方法
CN107122321A (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
CN106383763B (zh) 数据中心智能故障检测报警系统
CN101609308A (zh) 一种基于rfid数据采集功能的工业智能终端及其控制方法
CN102880527B (zh) 一种基板管理控制器的数据恢复方法
CN111564902A (zh) 一种用于电力物联网的智能量测终端
CN106952464A (zh) 智能数据采集系统和采集方法
CN101097563A (zh) 一种单板集中管理与控制的实现系统与方法
CN111831488B (zh) 具有安全等级设计的tcms-mpu控制单元
CN202870836U (zh) 涉密计算机pci信息安全防护卡及系统
CN101136500B (zh) 智能ups电源的管理监控方法
CN110445638A (zh) 一种交换机系统故障保护方法及装置
CN105549522B (zh) 一种基于sparc 架构cpu 的plc 嵌入式实时安全控制运行系统及其运行方法
CN204406186U (zh) 一种现场总线控制器
CN110096291A (zh) 电源管理芯片升级电路、方法及网络设备
CN201203774Y (zh) 一种基于rfid数据采集功能的工业智能终端
CN103376877B (zh) 一种多核处理器时钟控制装置及控制方法
CN103019694A (zh) 恢复网络设定参数的系统及方法
CN108132621A (zh) 一种基于国产软硬件的智能管理平台
CN110231951A (zh) 一种多单片机程序升级系统及其方法
CN110119113A (zh) 一种嵌入式短波天线交换开关控制系统
CN202309098U (zh) 一种光伏发电并网逆变器系统的通讯监控模块
CN104991193A (zh) 充电电池使用能效追踪系统与方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 200336 Shanghai city Changning District Honggu Road No. 150

Applicant after: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Address before: 200336 Shanghai city Changning District Honggu Road No. 150

Applicant before: Shanghai B-STAR Co.,Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SHANGHAI B-STAR BROADBAND TECHNOLOGY + APPLICATION ENGINEERING RESEARCH CENTER CO., LTD. TO: SHANGHAI B-STAR BROADBAND TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: IPMC in ATCA system based on real-time operating system and its construction method

Effective date of registration: 20210914

Granted publication date: 20130306

Pledgee: Industrial Bank Co.,Ltd. Shanghai Hongkou sub branch

Pledgor: SHANGHAI B-STAR TECHNOLOGY Co.,Ltd.

Registration number: Y2021980009305

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20231030

Granted publication date: 20130306

Pledgee: Industrial Bank Co.,Ltd. Shanghai Hongkou sub branch

Pledgor: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Registration number: Y2021980009305

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: IPMC and its construction method in ATCA system based on real-time operating system

Effective date of registration: 20231113

Granted publication date: 20130306

Pledgee: Jiangsu Bank Co.,Ltd. Shanghai Huinan Branch

Pledgor: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Registration number: Y2023310000728