CN114546912A - 一种用于服务器***的中断拓展方法 - Google Patents

一种用于服务器***的中断拓展方法 Download PDF

Info

Publication number
CN114546912A
CN114546912A CN202210049204.9A CN202210049204A CN114546912A CN 114546912 A CN114546912 A CN 114546912A CN 202210049204 A CN202210049204 A CN 202210049204A CN 114546912 A CN114546912 A CN 114546912A
Authority
CN
China
Prior art keywords
interrupt
server system
cpu
outage
host
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
Application number
CN202210049204.9A
Other languages
English (en)
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.)
Phytium Technology Co Ltd
Original Assignee
Phytium Technology 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 Phytium Technology Co Ltd filed Critical Phytium Technology Co Ltd
Priority to CN202210049204.9A priority Critical patent/CN114546912A/zh
Publication of CN114546912A publication Critical patent/CN114546912A/zh
Pending legal-status Critical Current

Links

Images

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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Abstract

本发明公开了一种用于服务器***的中断拓展方法,包括:通过中断状态寄存器保存中断ID,所述中断ID与从机进行一一对应的映射;CPU读取中断状态寄存器的值,根据不同的ID执行不同的中断服务程序,同时清除中断,在另外一个线程上执行中断请求任务。本发明具有原理简单、操作简便、适用范围等优点。

Description

一种用于服务器***的中断拓展方法
技术领域
本发明主要涉及到服务器管控技术领域,特指一种用于服务器***的中断拓展方法。
背景技术
为了便于管理服务器,现阶段的服务器***中,都加入了服务器管控单元(BMC)。CPU与BMC的主从关系为:CPU为主设备,BMC为从设备。CPU(主机)可以发起对BMC的访问,但是BMC(从机)却没有这样的权限。这样的限制就会造成BMC无法向CPU发起命令,造成BMC关机这一类的行为无法进行。为规避这样的问题,大部分的处理器都是用自身具有中断功能的GPIO,接收BMC对应的中断信号再执行对应的功能操作,规避上述问题。但是这也会大大地浪费了CPU本就不多的GPIO口。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种原理简单、操作简便、适用范围广的用于服务器***的中断拓展方法。
为解决上述技术问题,本发明采用以下技术方案:
一种用于服务器***的中断拓展方法,其包括:
将中断ID保存于中断状态寄存器中,所述中断ID与服务器***的从机采用一一对应的方式进行映射;
服务器***中主机的CPU读取中断状态寄存器中的中断ID值;
服务器***中主机的CPU根据读取的中断ID值执行对应的中断服务程序;
服务器***中主机的CPU清除中断,在另一个线程中执行中断请求任务。
作为本发明的进一步改进:所述主机与服务器***中的从机使用同一个时钟源,通过中断线将一个主机与多个从机连接在一起。
作为本发明的进一步改进:所述从机包括BMC,以BMC向CPU发起中断命令。
作为本发明的进一步改进:所述BMC与CPU之间连接时设置电平转换。
作为本发明的进一步改进:确定服务器***中多个从机所使用的中断ID和主机的中断ID,均保存至中断状态寄存器。
作为本发明的进一步改进:所述中断状态寄存器采用uart虚拟串口中断;当中断发出之后,所述主机的CPU根据设置好的中断ID,通过uart虚拟串口来进行中断操作。
作为本发明的进一步改进:在所述中断状态寄存器中设置有多个从机所使用的中断ID和主机的中断ID。
作为本发明的进一步改进:所述中断状态寄存器中中断ID的定义采用自定义方式,令从机能够判断中断ID对应的是虚拟串口功能。
作为本发明的进一步改进:当需要修改中断ID时,直接写入对应的所需确定的数值。
作为本发明的进一步改进:所述主机的CPU根据不同的中断ID来选择走不同的分支线程。
与现有技术相比,本发明的优点就在于:
1、本发明的用于服务器***的中断拓展方法,原理简单、操作简便、适用范围广,不占用CPU中有限的带中断功能的GPIO引脚,能够最大提升SerIRQ的设备占有率,降低硬件设计的复杂程度。本发明将采用其他固定模块并没有占用的中断,去实现若干拓展功能,如:向CPU发起关机、重启、获取CPU状态等请求。而且,采用本发明之后,中断的设备数量可以进行灵活的增减,便于后期的开发维护。
2、本发明的用于服务器***的中断拓展方法,服务器***中的主机CPU不会直接执行中断,CPU会读取中断状态寄存器的值。该中断状态寄存器保存了中断ID(中断号),该中断ID与外设(从机)进行一一对应的映射。而后根据不同的中断ID执行不同的中断服务程序,并同时清除中断,在另外一个线程上执行中断请求任务。
附图说明
图1是本发明在具体应用实例中方法的流程示意图。
图2是SerIRQ支持的中断数量示意图。
图3是本发明在一个具体应用实例中控制的拓扑结构原理示意图。
图4是本发明在一个具体应用实例中寄存器设置的示意图。
图5是本发明在一个具体应用实例中控制的拓扑结构原理示意图。
具体实施方式
以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
如图2所示,为SerIRQ支持的中断数量示意图。在服务器***的主机与从机的构架中,一般均设置有LPC接口,而带有LPC接口中附带有SerIRQ中断。通常都是用于符合SerIRQ中断的从机(专有设备)来使用,当然上述的从机(专有设备)包括了BMC。在BMC中的固定模块(如SOL模块、superIO模块、ACPI模块等)会通过该中断向CPU发送命令。显然,上述固定模块都是有限的,而SerIRQ是可以承载多个设备的串行中断,因此本发明将采用其他固定模块并没有占用的中断,去实现若干拓展功能,如:向CPU发起关机、重启、获取CPU状态等请求。
如图1所示,本发明的用于服务器***的中断拓展方法,令服务器***中的主机与从机使用的均为同一个时钟源,通过中断线将一个主机与多个从机连接在一起;所述从机包括BMC;先确定多个从机(专有设备)所使用的中断ID(中断号)和主机的中断ID(中断号)并保存至中断状态寄存器;所述中断状态寄存器采用uart虚拟串口中断;当中断发出之后,主机的CPU需要根据设置好的中断ID,通过uart虚拟串口来进行中断操作。
通过采用本发明的上述方案,本发明中CPU不会直接执行中断,CPU会读取中断状态寄存器的值。该中断状态寄存器保存了中断ID(中断号),该中断ID与外设(从机)进行一一对应的映射。而后根据不同的中断ID执行不同的中断服务程序,并同时清除中断,在另外一个线程上执行中断请求任务。
在具体应用实例中,在所述寄存器中设置有多个从机(专有设备)所使用的中断ID(中断号)和主机的中断ID(中断号),并以特定数值的形式保存。当需要修改时,直接写入对应的所需确定的数值即可。
在具体应用实例中,寄存器中断ID的定义可以通过图2中的寄存器第7到第4个bit进行调整,但是需要让对方的server知道该中断ID(中断号)对应的是虚拟串口功能。由此可见,本发明就是因为可以自定义该中断ID,才使得更多的设备可以加入到中断上。
LPC接口中附带的SerIRQ中断,通常都是用于符合SerIRQ中断的专有设备使用,当然上述的专有设备包括了BMC。BMC中的固定模块如SOL模块、superIO模块、ACPI模块等会通过该中断向CPU发送命令。上述模块都是有限的,而SerIRQ是可以承载多个设备的串行中断,因此本方案将采用其他模块并没有占用的中断,去实现如:向CPU发起关机、重启、获取CPU状态等请求。
具体应用实例1:参见图3,本发明以BMC向CPU发起关机命令为例说明。由于本发明的硬件连接与常用的LPC接口实现master和slaver的连接并没有做调整,因此在硬件的描述上就此省略了。
本发明的具体流程为:
步骤S1:确定所有设备所使用的中断,包括服务器***中从机和主机根据自己选择的中断ID,确定图4中寄存器的值,并写入确定好的数值。
步骤S2:将从机中BMC的0x1e787020的值改写为0x23,即可向主机的CPU发出中断请求。在该实例中,所述寄存器本身为uart的虚拟串口中断。
步骤S3:当中断发出之后,主机的CPU需要根据上述步骤S1中设置的中断ID,走关机的操作流程。
至此,就实现了使用uart虚拟串口中断,实现关机操作的功能了。
具体应用实例2:参见图5,当BMC检查到整机的外设中,风扇、温度等任何部件出现异常的情况下,均可以通过该中断上报到Server的CPU,让CPU做好降频、任务转移等工作,防止由于部件的异常,导致整个计算节点故障,进而造成大量数据丢失。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (10)

1.一种用于服务器***的中断拓展方法,其特征在于,包括:
将中断ID保存于中断状态寄存器中,所述中断ID与服务器***的从机采用一一对应的方式进行映射;
服务器***中主机的CPU读取中断状态寄存器中的中断ID值;
服务器***中主机的CPU根据读取的中断ID值执行对应的中断服务程序;
服务器***中主机的CPU清除中断,在另一个线程中执行中断请求任务。
2.根据权利要求1所述的用于服务器***的中断拓展方法,其特征在于:所述主机与服务器***中的从机使用同一个时钟源,通过中断线将一个主机与多个从机连接在一起。
3.根据权利要求2所述的用于服务器***的中断拓展方法,其特征在于:所述从机包括BMC,以BMC向CPU发起中断命令。
4.根据权利要求3所述的用于服务器***的中断拓展方法,其特征在于:所述BMC与CPU之间连接时设置电平转换。
5.根据权利要求1-4中任意一项所述的用于服务器***的中断拓展方法,其特征在于:确定服务器***中多个从机所使用的中断ID和主机的中断ID,均保存至中断状态寄存器。
6.根据权利要求1-4中任意一项所述的用于服务器***的中断拓展方法,其特征在于:所述中断状态寄存器采用uart虚拟串口中断;当中断发出之后,所述主机的CPU根据设置好的中断ID,通过uart虚拟串口来进行中断操作。
7.根据权利要求1-4中任意一项所述的用于服务器***的中断拓展方法,其特征在于:在所述中断状态寄存器中设置有多个从机所使用的中断ID和主机的中断ID。
8.根据权利要求7所述的用于服务器***的中断拓展方法,其特征在于:所述中断状态寄存器中中断ID的定义采用自定义方式,令从机能够判断中断ID对应的是虚拟串口功能。
9.根据权利要求7所述的用于服务器***的中断拓展方法,其特征在于:当需要修改中断ID时,直接写入对应的所需确定的数值。
10.根据权利要求1-4中任意一项所述的用于服务器***的中断拓展方法,其特征在于:所述主机的CPU根据不同的中断ID来选择走不同的分支线程。
CN202210049204.9A 2022-01-17 2022-01-17 一种用于服务器***的中断拓展方法 Pending CN114546912A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210049204.9A CN114546912A (zh) 2022-01-17 2022-01-17 一种用于服务器***的中断拓展方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210049204.9A CN114546912A (zh) 2022-01-17 2022-01-17 一种用于服务器***的中断拓展方法

Publications (1)

Publication Number Publication Date
CN114546912A true CN114546912A (zh) 2022-05-27

Family

ID=81672278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210049204.9A Pending CN114546912A (zh) 2022-01-17 2022-01-17 一种用于服务器***的中断拓展方法

Country Status (1)

Country Link
CN (1) CN114546912A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005135063A (ja) * 2003-10-29 2005-05-26 Hitachi Ltd 情報処理装置及び情報処理装置の時計異常検出プログラム
CN101872330A (zh) * 2009-11-04 2010-10-27 杭州海康威视数字技术股份有限公司 多pcie设备***中断处理方法
CN104486419A (zh) * 2014-12-18 2015-04-01 浪潮电子信息产业股份有限公司 一种基于飞腾平台通过网络更新固件的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005135063A (ja) * 2003-10-29 2005-05-26 Hitachi Ltd 情報処理装置及び情報処理装置の時計異常検出プログラム
CN101872330A (zh) * 2009-11-04 2010-10-27 杭州海康威视数字技术股份有限公司 多pcie设备***中断处理方法
CN104486419A (zh) * 2014-12-18 2015-04-01 浪潮电子信息产业股份有限公司 一种基于飞腾平台通过网络更新固件的方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
余小清 等编著: "《高性能8位单片机程序设计与实践》", 30 June 2012, 上海大学出版社 *
宋伟主编: "《操作***应用》", 28 February 2006, 中央广播电视大学出版社 *
张志良主编: "《单片机原理与控制技术》", 31 July 2001, 机械工业出版社 *
陈章龙 等主编: "《嵌入式技术与*** Intel XScale结构与开发》", 29 February 2004, 北京航空航天大学出版社 *

Similar Documents

Publication Publication Date Title
US10606725B2 (en) Monitor peripheral device based on imported data
CN110554943B (zh) 一种基于i3c的多节点服务器cmc管理***及方法
WO2021258748A1 (zh) I2c总线通信控制方法、装置、***及可读存储介质
CN100465907C (zh) 一种cmos参数的设置维护装置及方法
MX2008003299A (es) Depuracion de sistemas integrados.
WO2015131516A1 (zh) 分布式智能平台管理总线连接方法及atca机框
CN105159851A (zh) 多控存储***
CN104471523A (zh) 计算机***及其控制方法
CN112583683B (zh) 一种主从式can fd总线应用层通信方法及***、电子设备
CN114124656A (zh) 一种运载火箭地面一体化测控***
CN107729213B (zh) 一种后台任务监控方法及装置
CN102063366B (zh) 调试进程的方法和***
CN111324503B (zh) 机框管理装置、方法和计算机可读存储介质
CN114546912A (zh) 一种用于服务器***的中断拓展方法
WO2019227839A1 (zh) 一种基于bmc的文件传输方法、装置、设备及介质
CN115168141A (zh) 光口管理***、方法、装置、可编程逻辑器件及存储介质
CN101458671B (zh) 外设访问控制方法、装置与***
US7519495B2 (en) Method and device for executing method steps
CN112346905B (zh) 数据备援***
WO2024066857A1 (zh) 一种电子设备、处理器、数据传输方法及装置
CN113961502B (zh) 一种交换机接口管理***和方法
RU2743247C1 (ru) Способ работы программируемого логического контроллера
CN112306913B (zh) 一种端点设备的管理方法、装置及***
CN116015987A (zh) 一种多路通信接口适配方法、***、设备及可读存储介质
JPH07306800A (ja) デバッグ方式

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20220527