一种基于fpga的cpu热插拔实现方法及系统的制作方法

文档序号:8498666阅读:392来源:国知局
一种基于fpga的cpu热插拔实现方法及系统的制作方法
【技术领域】
[0001]本发明公开一种基于FPGA的CPU热插拔实现方法及系统,属于计算机应用领域,具体地说是服务器系统中基于FPGA的CPU热插拔的实现方法及系统。
【背景技术】
[0002]在服务器技术的发展中,热插拔一直是一个重要的功能,在系统维护时具有重要的作用。CPU热插拔是对CPU进行维护的一种重要方式,可以在不影响系统功能的情况完成CPU的维护。而这种高级特性需要内核在必要时能移除正在使用的CPU,比如,为了 RAS的需要,必须将一个执行恶意代码的CPU保持在系统执行路径之外等。一般在实现热插拔时都是利用分立元件或电路模块来实现的,增加了设计复杂度和成本,并且不利于系统维护。本发明提出了一种基于FPGA的CPU热插拔方法,将外围分立元件或电路模块的功能利用FPGA来实现,通过与B1S进行通信完成CPU热插拔的功能。本设计充分利用FPGA的内部资源,增加了设计和维护的灵活性,并降低了设计成本。

【发明内容】

[0003]本发明针对实现热插拔时都是利用分立元件或电路模块来实现的,增加了设计复杂度和成本,并且不利于系统维护的问题,一种基于FPGA的CPU热插拔方法,利用FPGA,通过与B1S进行通信完成CPU热插拔的功能,本设计充分利用FPGA的内部资源,增加了设计和维护的灵活性,并降低了设计成本。
[0004]本发明提出的具体方案是:
一种基于FPGA的CPU热插拔实现方法:
在服务器系统内包括FPGA,B1S ;FPGA上设置I2C通信模块,CPU热插拔控制模块,时序控制模块;利用CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;
FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ;
时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序,完成CPU的热插拔。
[0005]FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块的I2C通信接口发送到B1S,然后B1S通过I2C通信接口发送相应的控制命令到FPGA。
[0006]利用CPU热插拔控制模块的CPU热插拔控制接口接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号。
[0007]利用CPU热插拔控制模块接收及发送FPGA的外部信号包括请求信号、故障信号、
在位信号。
[0008]一种基于FPGA的CPU热插拔实现系统,在服务器系统内,包括FPGA,B1S,VR ;FPGA上设置I2C通信模块,CPU热插拔控制模块,时序控制模块; CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;
I2C通信模块负责FPGA与B1S的通信,FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ;时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序。
[0009]所述的I2C通信模块设置I2C通信接口,负责FPGA与B1S的通信信号的接收和发送。
[0010]所述的CPU热插拔控制模块包括CPU热插拔控制接口,负责接收FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号。
[0011]本发明的有益之处是:本发明中FPGA设置I2C通信模块,CPU热插拔控制模块,时序控制模块,利用CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ;时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序,以便CPU完成热插拔;利用了 FPGA来实现外围分立元件或电路模块的功能,通过与B1S进行通信完成CPU热插拔的功能。本设计充分利用FPGA的内部资源,增加了设计和维护的灵活性,并降低了设计成本。
【附图说明】
[0012]图1本发明系统结构示意图。
【具体实施方式】
[0013]结合附图对本发明做进一步说明。
[0014]设置一种基于FPGA的CPU热插拔实现系统,在服务器系统内,包括FPGA,B1S ;FPGA上设置I2C通信模块,CPU热插拔控制模块,时序控制模块;
CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;其中CPU热插拔控制模块设置CPU热插拔控制接口,负责接收FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;
I2C通信模块负责FPGA与B1S的通信,FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ;其中I2C通信模块设置I2C通信接口,负责FPGA与B1S的通信信号的接收和发送。
[0015]时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序。时序控制模块可控制利用VR,即可变电阻器来进一步控制CPU在热插入时的上电时序和热拔除的掉电时序。
[0016]利用以上系统一种基于FPGA的CPU热插拔实现方法,其特征是:
利用CPU热插拔控制模块的CPU热插拔控制接口接收及发送FPGA外部信号,包括请求信号、故障信号、在位信号;同时发送FPGA接收到的上位机命令的指示信号;
FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块的I2C通信接口发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ;
时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序,完成CPU的热插拔。
[0017]除本发明所公开的技术外,涉及到的其他技术都为所属领域的技术人员所能获知的现有技术。
【主权项】
1.一种基于FPGA的CPU热插拔实现方法,其特征是: 在服务器系统内包括FPGA,B1S ;FPGA上设置I2C通信模块,CPU热插拔控制模块,时序控制模块;利用CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号; FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ; 时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序,完成CPU的热插拔。
2.根据权利要求1所述的一种基于FPGA的CPU热插拔实现方法,其特征是FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块的I2C通信接口发送到B1S,然后B1S通过I2C通信接口发送相应的控制命令到FPGA。
3.根据权利要求1或2所述的一种基于FPGA的CPU热插拔实现方法,其特征是利用(PU热插拔控制模块的CPU热插拔控制接口接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号。
4.根据权利要求3所述的一种基于FPGA的CPU热插拔实现方法,其特征是利用CPU热插拔控制模块接收及发送FPGA的外部信号包括请求信号、故障信号、在位信号。
5.一种基于FPGA的CPU热插拔实现系统,在服务器系统内,其特征是包括FPGA,B1S,VR ;FPGA上设置I2C通信模块,CPU热插拔控制模块,时序控制模块; CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号; I2C通信模块负责FPGA与B1S的通信,FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到B1S,然后B1S通过I2C通信模块发送相应的控制命令到FPGA ; 时序控制模块解析B1S发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序。
6.根据权利要求5所述的一种基于FPGA的CPU热插拔实现系统,其特征是所述的12C通信模块设置I2C通信接口,负责FPGA与B1S的通信信号的接收和发送。
7.根据权利要求5或6所述的一种基于FPGA的CPU热插拔实现系统,其特征是所述的CPU热插拔控制模块包括CPU热插拔控制接口,负责接收FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号。
【专利摘要】本发明公开一种基于FPGA的CPU热插拔实现方法及系统,属于计算机应用领域,本发明中FPGA设置I2C通信模块,CPU热插拔控制模块,时序控制模块,利用CPU热插拔控制模块接收及发送FPGA外部信号,同时发送FPGA接收到的上位机命令的指示信号;FPGA将CPU热插拔控制模块接收到的信号通过I2C通信模块发送到BIOS,然后BIOS通过I2C通信模块发送相应的控制命令到FPGA;时序控制模块解析BIOS发送的命令,并控制CPU在热插入时的上电时序和热拔除的掉电时序,以便CPU完成热插拔;本设计充分利用FPGA的内部资源,增加了设计和维护的灵活性,并降低了设计成本。
【IPC分类】G06F13-40
【公开号】CN104820655
【申请号】CN201510247519
【发明人】黄小东, 薛广营, 王岩
【申请人】浪潮电子信息产业股份有限公司
【公开日】2015年8月5日
【申请日】2015年5月15日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1