CN108304280A - 控制异构混合内存***异常恢复的方法、bmc及装置 - Google Patents
控制异构混合内存***异常恢复的方法、bmc及装置 Download PDFInfo
- Publication number
- CN108304280A CN108304280A CN201810089053.3A CN201810089053A CN108304280A CN 108304280 A CN108304280 A CN 108304280A CN 201810089053 A CN201810089053 A CN 201810089053A CN 108304280 A CN108304280 A CN 108304280A
- Authority
- CN
- China
- Prior art keywords
- computer system
- nvm
- fpga
- memory
- bios
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种控制异构混合内存***异常恢复的方法、BMC及装置,检测到计算机***异常掉电后,在计算机***下次开机时引导BIOS进行QPI启动;生成清空垃圾数据指令,以便于计算机***中的NVM在接收到清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;在BIOS完成QPI启动后控制计算机***中的CPU访问NVM的通道连通,且在NVM清空垃圾数据后,控制计算机***中的DRAM与NVM之间的内存信息交互,并引导BIOS完成剩余启动流程,实现计算机***的异常恢复。本申请实现了在计算机***发生异常掉电时恢复计算机***的正常功能,使异构混合内存所在的计算机***可以正常使用。
Description
技术领域
本发明涉及存储技术领域,特别是涉及一种控制异构混合内存***异常恢复的方法、BMC及装置。
背景技术
随着存储技术的发展,一种新型存储介质NVM(Non-Volatile Memory,非易失性存储器)逐渐被广泛应用。与目前常用的DRAM(Dynamic Random Access Memory,动态随机存取存储器)相比,NVM具有按位存取能力、断电后数据不丢失、存储密度大、静态功耗低、动态功耗高及可扩展性强等优点。但是,NVM的写延迟比DRAM慢一个或几个数量级,其写入次数还受限制,所以,为了满足计算机***的实时性需求,将DRAM和NVM一起连接在***总线上组合成异构混合内存,异构混合内存具备DRAM和NVM二者的优点。
但是,当计算机***发生异常掉电时,若异构混合内存中的数据未被写回进行保护,则会导致该计算机***在下次开机后无法正常使用,所以,异常掉电时需要考虑如何控制异构混合内存所在的计算机***完成异常恢复,实现正常使用。
因此,如何提供一种解决上述技术问题的方案是本领域的技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种控制异构混合内存***异常恢复的方法、BMC及装置,实现了在计算机***发生异常掉电时恢复计算机***的正常功能,使异构混合内存所在的计算机***可以正常使用。
为解决上述技术问题,本发明提供了一种控制异构混合内存***异常恢复的方法,应用于计算机***中的基板管理控制器BMC,包括:
检测到所述计算机***异常掉电后,在所述计算机***下次开机时引导基本输入输出***BIOS进行快速通道互联QPI启动;
生成清空垃圾数据指令,以便于所述计算机***中的非易失性存储器NVM在接收到所述清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
在所述BIOS完成QPI启动后控制所述计算机***中的CPU访问所述NVM的通道连通,且在所述NVM清空垃圾数据后,控制所述计算机***中的动态随机存取存储器DRAM与所述NVM之间的内存信息交互,并引导所述BIOS完成剩余启动流程,实现所述计算机***的异常恢复。
优选地,所述引导基本输入输出***BIOS进行快速通道互联QPI启动的过程具体为:
引导BIOS进行QPI慢速启动;
在接收到所述BIOS在完成QPI慢速启动后生成的重启信号后引导所述BIOS进行QPI快速启动。
优选地,所述控制所述计算机***中的CPU访问所述NVM的通道连通的过程具体为:
分别配置所述计算机***中的第一现场可编程逻辑门阵列FPGA和挂载所述NVM的第二FPGA;
控制所述计算机***中的CPU与第一FPGA之间的访问通道连通,并控制所述第一FPGA与所述第二FPGA之间的访问通道连通,以便于所述CPU依次通过所述第一FPGA和所述第二FPGA访问所述NVM。
优选地,所述分别配置所述计算机***中的第一现场可编程逻辑门阵列FPGA和挂载所述NVM的第二FPGA的过程具体为:
根据所述计算机***中的第一FPGA和挂载所述NVM的第二FPGA两个芯片的芯片说明相应地写入规定数据至两个所述芯片。
优选地,所述内存信息包括内存容量及内存地址。
优选地,所述控制所述计算机***中的动态随机存取存储器DRAM与所述NVM之间的内存信息交互的过程具体为:
从所述CPU中获取该计算机***中DRAM的内存信息,并将所述DRAM的内存信息发送至所述第二FPGA;
从所述第二FPGA中获取所述第二FPGA根据所述DRAM的内存信息及所述DRAM和所述NVM的拼接顺序相应地确定的NVM的内存信息;
将确定的NVM的内存信息发送至所述BIOS,完成所述DRAM与所述NVM之间的内存信息的交互。
优选地,所述第一FPGA具体为Virtex7 2000T型FPGA,所述第二FPGA具体为Virtex7 690T型FPGA。
为解决上述技术问题,本发明还提供了一种控制异构混合内存***异常恢复的BMC,包括:
引导单元,用于检测到计算机***异常掉电后,在所述计算机***下次开机时引导BIOS进行QPI启动;
清空单元,用于生成清空垃圾数据指令,以便于所述计算机***中的NVM在接收到所述清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
恢复单元,用于在所述BIOS完成QPI启动后控制所述计算机***中的CPU访问所述NVM的通道连通,且在所述NVM清空垃圾数据后,控制所述计算机***中的DRAM与所述NVM之间的内存信息交互,并引导所述BIOS完成剩余启动流程,实现所述计算机***的异常恢复。
优选地,所述引导单元具体用于当检测到计算机***异常掉电后,在所述计算机***下次开机时引导BIOS进行QPI慢速启动;在接收到所述BIOS在完成QPI慢速启动后生成的重启信号后引导所述BIOS进行QPI快速启动。
为解决上述技术问题,本发明还提供了一种控制异构混合内存***异常恢复的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种控制异构混合内存***异常恢复的方法的步骤。
本发明提供了一种控制异构混合内存***异常恢复的方法,应用于计算机***中的基板管理控制器BMC。本申请通过计算机***中的BMC检测计算机***是否异常掉电,当检测到计算机***异常掉电后,在计算机***下次开机时执行计算机***的异常恢复操作。
计算机***的异常恢复操作的具体过程包括:BMC引导BIOS进行QPI启动,QPI是计算机***中的CPU和其他芯片之间的快速互联通道。由于计算机***异常掉电,计算机***中的NVM未写回的数据成为垃圾数据,BMC生成清空垃圾数据指令,NVM在接收到清空垃圾数据指令后清空垃圾数据。BMC在BIOS完成QPI启动后控制CPU访问NVM的通道连通,并且在NVM清空垃圾数据后,控制DRAM与NVM之间的内存信息交互。然后,BMC引导BIOS完成剩余启动流程,直至计算机***正常运行至开机的操作界面,完成启动流程,从而实现了在计算机***发生异常掉电时恢复计算机***的正常功能,使异构混合内存所在的计算机***可以正常使用。
本发明还提供了一种控制异构混合内存***异常恢复的BMC及装置,与上述恢复方法具有相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种控制异构混合内存***异常恢复的方法的流程图;
图2为本发明提供的一种控制异构混合内存***异常恢复的BMC的结构示意图。
具体实施方式
本发明的核心是提供一种控制异构混合内存***异常恢复的方法、BMC及装置,实现了在计算机***发生异常掉电时恢复计算机***的正常功能,使异构混合内存所在的计算机***可以正常使用。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1为本发明提供的一种控制异构混合内存***异常恢复的方法的流程图。
该方法应用于计算机***中的BMC(Baseboard Management Controller,基板管理控制器),包括:
步骤S1:检测到计算机***异常掉电后,在计算机***下次开机时引导基本输入输出***BIOS进行快速通道互联QPI启动;
具体地,BMC通常包含在待监控设备的主板或主电路板中,其常被应用于监控和管理服务器的运行状态,如通过带外方式进行开关机、监控服务器的传感器状态、访问BIOS(Basic Input Output System,基本输入输出***)配置或访问操作***控制台信息等。
本申请通过BMC检测计算机***的关机状态,当检测到计算机***异常掉电关机时,则准备在计算机***下次开机时控制计算机***进行异常恢复。
异常恢复的具体过程包括:计算机***在开机运行时,首先会进入BIOS。BIOS是一组固化到计算机***内ROM(Read Only Memory,只读存储器)芯片上的程序,BIOS程序包括基本输入输出的程序、开机后自检的程序及***自启动的程序。
在计算机***开机后,该计算机***中的BMC首先引导BIOS进行QPI(Quick PathInterconnect,快速通道互联)启动,QPI是计算机***中各芯片(比如***中的CPU和其他芯片)之间快速互联的架构,主要用于数据传输,而且,通过QPI完成的数据传输具有较高的数据传输速率。
此外,在计算机***开机时,BMC还可以将异常情况反馈至用户,由用户进行选择操作,以便于进入计算机***异常恢复过程。
步骤S2:生成清空垃圾数据指令,以便于计算机***中的非易失性存储器NVM在接收到清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
具体地,当计算机***异常掉电时,该计算机***中NVM未保存的数据来不及保存,所以未保存的数据会变成垃圾数据。为了计算机***的正常使用,BMC会生成清空垃圾数据指令,并将其发送至NVM。当NVM接收到清空垃圾数据指令后,会清空自身产生的垃圾数据。
步骤S3:在BIOS完成QPI启动后控制计算机***中的CPU访问NVM的通道连通,且在NVM清空垃圾数据后,控制计算机***中的动态随机存取存储器DRAM与NVM之间的内存信息交互,并引导BIOS完成剩余启动流程,实现计算机***的异常恢复。
具体地,在BIOS完成QPI启动后,BMC控制计算机***中的CPU访问该计算机***中的NVM的通道连通,为CPU访问NVM打下基础。
此外,计算机***中的内存采用连接在计算机***总线上的DRAM和NVM组合而成的异构混合内存。DRAM与NVM组合成异构混合内存的前提是DRAM与NVM交互各自的内存信息。比如,若NVM的内存拼接在DRAM之后,在NVM得知DRAM的内存信息的基础上才能确定NVM在内存块中的位置。
所以,为了构建异构混合内存,在NVM清空垃圾数据后,BMC应控制计算机***中的DRAM与NVM之间的内存信息交互,从而确定DRAM和NVM在内存块中的位置,实现将DRAM与NVM组合成异构混合内存。
然后,BMC引导BIOS完成剩余启动流程,剩余启动流程完成的标志是计算机***运行至开机的操作界面,从而完成了计算机***的启动。
本发明提供了一种控制异构混合内存***异常恢复的方法,应用于计算机***中的基板管理控制器BMC。本申请通过计算机***中的BMC检测计算机***是否异常掉电,当检测到计算机***异常掉电后,在计算机***下次开机时执行计算机***的异常恢复操作。
计算机***的异常恢复操作的具体过程包括:BMC引导BIOS进行QPI启动,QPI是计算机***中的CPU和其他芯片之间的快速互联通道。由于计算机***异常掉电,计算机***中的NVM未写回的数据成为垃圾数据,BMC生成清空垃圾数据指令,NVM在接收到清空垃圾数据指令后清空垃圾数据。BMC在BIOS完成QPI启动后控制CPU访问NVM的通道连通,并且在NVM清空垃圾数据后,控制DRAM与NVM之间的内存信息交互。然后,BMC引导BIOS完成剩余启动流程,直至计算机***正常运行至开机的操作界面,完成启动流程,从而实现了在计算机***发生异常掉电时恢复计算机***的正常功能,使异构混合内存所在的计算机***可以正常使用。
在上述实施例的基础上:
作为一种优选地实施例,引导基本输入输出***BIOS进行快速通道互联QPI启动的过程具体为:
引导BIOS进行QPI慢速启动;
在接收到BIOS在完成QPI慢速启动后生成的重启信号后引导BIOS进行QPI快速启动。
进一步地,QPI是计算机***中各芯片之间快速互联的架构,受芯片自身的限制,配置一次QPI不能使之达到较快的传输速度。所以,BMC引导BIOS进行QPI启动包括慢速启动和快速启动。慢速启动是指配置QPI并将其传输速度提升到慢速水平,快速启动是指在慢速启动的基础上再次配置QPI,使其传输速度提升到高速水平。
具体地,BMC引导BIOS进行QPI慢速启动。BIOS在完成QPI慢速启动后生成重启信号,并将重启信号发送至BMC。BMC在接收到重启信号后引导BIOS进行QPI快速启动。
作为一种优选地实施例,控制计算机***中的CPU访问NVM的通道连通的过程具体为:
分别配置计算机***中的第一现场可编程逻辑门阵列FPGA和挂载NVM的第二FPGA;
控制计算机***中的CPU与第一FPGA之间的访问通道连通,并控制第一FPGA与第二FPGA之间的访问通道连通,以便于CPU依次通过第一FPGA和第二FPGA访问NVM。
进一步地,计算机***中包含第一FPGA(Field-Programmable Gate Array,现场可编程逻辑门阵列)和第二FPGA,该计算机***中的NVM挂载在第二FPGA上。该计算机***中的CPU要想访问NVM,需要先经过第一FPGA,再经过第二FPGA。所以,为了建立一条CPU访问NVM的链路,应分别配置第一FPGA与第二FPGA。
本申请由BMC配置计算机***中的第一FPGA,配置第一FPGA的目的是连通CPU与第一FPGA之间的访问通道,使得CPU能够访问到第一FPGA。此外,BMC还配置计算机***中的第二FPGA,配置第二FPGA的目的与配置第一FPGA的目的类似,目的是连通第一FPGA与第二FPGA之间的访问通道,使得CPU能够通过第一FPGA访问到第二FPGA,进而实现CPU访问NVM。
作为一种优选地实施例,分别配置计算机***中的第一现场可编程逻辑门阵列FPGA和挂载NVM的第二FPGA的过程具体为:
根据计算机***中的第一FPGA和挂载NVM的第二FPGA两个芯片的芯片说明相应地写入规定数据至两个芯片。
具体地,BMC配置第一FPGA和第二FPGA的过程就是向寄存器写入数据的过程,写入的数据由第一FPGA和第二FPGA两个芯片的芯片说明决定。比如,第一FPGA的芯片说明中规定,向第一FPGA的0x00地址写入0x01便能连通CPU和第一FPGA,则BMC配置第一FPGA的过程即为向第一FPGA的0x00地址写入0x01。
作为一种优选地实施例,内存信息包括内存容量及内存地址。
具体地,本申请中的内存信息可以包括内存容量及内存地址,内存容量表示内存的存储能力,比如64MB内存的存储能力小于128MB内存的存储能力,越大内存容量的内存越有利于计算机***的运行。
内存地址表示内存在内存块中的位置,内存地址一般是指内存的基地址,也即内存的首地址。所以,已知内存的内存地址和内存容量,便可以确定内存的尾地址。
当然,本申请中的内存信息还可以包括其他信息,本申请在此不做特别的限定,根据实际情况而定。
作为一种优选地实施例,控制计算机***中的动态随机存取存储器DRAM与NVM之间的内存信息交互的过程具体为:
从CPU中获取该计算机***中DRAM的内存信息,并将DRAM的内存信息发送至第二FPGA;
从第二FPGA中获取第二FPGA根据DRAM的内存信息及DRAM和NVM的拼接顺序相应地确定的NVM的内存信息;
将确定的NVM的内存信息发送至BIOS,完成DRAM与NVM之间的内存信息的交互。
进一步地,DRAM就是CPU的内存,所以BMC从CPU中获取DRAM的内存信息,即DRAM的内存地址及内存容量。又由于第二FPGA上挂载有NVM,所以将DRAM的内存地址及内存容量发送至第二FPGA。第二FPGA根据DRAM和NVM的拼接顺序及DRAM的内存地址和内存容量,相应地确定NVM的内存地址及内存容量。
具体地,如果NVM拼接在DRAM的后面,第二FPGA已知DRAM的内存地址和内存容量,便可以确定DRAM的尾地址,DRAM的尾地址即为NVM的首地址,从而确定NVM在内存块中的位置。如果NVM拼接在DRAM的前面,第二FPGA已知DRAM的首地址,DRAM的首地址即为NVM的尾地址,并且,第二FPGA获取NVM的内存容量,从而确定NVM的首地址,即NVM的内存地址。
BMC便可以从第二FPGA中相应地获取确定的NVM的内存信息,并将确定的NVM的内存信息发送至BIOS,从而完成DRAM与NVM之间的内存信息的交互。
作为一种优选地实施例,第一FPGA具体为Virtex7 2000T型FPGA,第二FPGA具体为Virtex7 690T型FPGA。
具体地,本申请中的第一FPGA的型号可以选用但不仅限于Virtex7 2000T,第二FPGA的型号可以选用但不仅限于Virtex7 690T。至于第一FPGA和第二FPGA的具体型号,本申请在此不做特别的限定。
请参照图2,图2为本发明提供的一种控制异构混合内存***异常恢复的BMC的结构示意图,该BMC包括:
引导单元1,用于检测到计算机***异常掉电后,在计算机***下次开机时引导BIOS进行QPI启动;
清空单元2,用于生成清空垃圾数据指令,以便于计算机***中的NVM在接收到清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
恢复单元3,用于在BIOS完成QPI启动后控制计算机***中的CPU访问NVM的通道连通,且在NVM清空垃圾数据后,控制计算机***中的DRAM与NVM之间的内存信息交互,并引导BIOS完成剩余启动流程,实现计算机***的异常恢复。
作为一种优选地实施例,引导单元1具体用于当检测到计算机***异常掉电后,在计算机***下次开机时引导BIOS进行QPI慢速启动;在接收到BIOS在完成QPI慢速启动后生成的重启信号后引导BIOS进行QPI快速启动。
本申请提供的BMC的介绍请参考上述方法实施例,本申请在此不再赘述。
本发明还提供了一种控制异构混合内存***异常恢复的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述任一种控制异构混合内存***异常恢复的方法的步骤。
本申请提供的装置的介绍请参考上述方法实施例,本申请在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种控制异构混合内存***异常恢复的方法,应用于计算机***中的基板管理控制器BMC,其特征在于,包括:
检测到所述计算机***异常掉电后,在所述计算机***下次开机时引导基本输入输出***BIOS进行快速通道互联QPI启动;
生成清空垃圾数据指令,以便于所述计算机***中的非易失性存储器NVM在接收到所述清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
在所述BIOS完成QPI启动后控制所述计算机***中的CPU访问所述NVM的通道连通,且在所述NVM清空垃圾数据后,控制所述计算机***中的动态随机存取存储器DRAM与所述NVM之间的内存信息交互,并引导所述BIOS完成剩余启动流程,实现所述计算机***的异常恢复。
2.如权利要求1所述的控制异构混合内存***异常恢复的方法,其特征在于,所述引导基本输入输出***BIOS进行快速通道互联QPI启动的过程具体为:
引导BIOS进行QPI慢速启动;
在接收到所述BIOS在完成QPI慢速启动后生成的重启信号后引导所述BIOS进行QPI快速启动。
3.如权利要求1所述的控制异构混合内存***异常恢复的方法,其特征在于,所述控制所述计算机***中的CPU访问所述NVM的通道连通的过程具体为:
分别配置所述计算机***中的第一现场可编程逻辑门阵列FPGA和挂载所述NVM的第二FPGA;
控制所述计算机***中的CPU与第一FPGA之间的访问通道连通,并控制所述第一FPGA与所述第二FPGA之间的访问通道连通,以便于所述CPU依次通过所述第一FPGA和所述第二FPGA访问所述NVM。
4.如权利要求3所述的控制异构混合内存***异常恢复的方法,其特征在于,所述分别配置所述计算机***中的第一现场可编程逻辑门阵列FPGA和挂载所述NVM的第二FPGA的过程具体为:
根据所述计算机***中的第一FPGA和挂载所述NVM的第二FPGA两个芯片的芯片说明相应地写入规定数据至两个所述芯片。
5.如权利要求3所述的控制异构混合内存***异常恢复的方法,其特征在于,所述内存信息包括内存容量及内存地址。
6.如权利要求5所述的控制异构混合内存***异常恢复的方法,其特征在于,所述控制所述计算机***中的动态随机存取存储器DRAM与所述NVM之间的内存信息交互的过程具体为:
从所述CPU中获取该计算机***中DRAM的内存信息,并将所述DRAM的内存信息发送至所述第二FPGA;
从所述第二FPGA中获取所述第二FPGA根据所述DRAM的内存信息及所述DRAM和所述NVM的拼接顺序相应地确定的NVM的内存信息;
将确定的NVM的内存信息发送至所述BIOS,完成所述DRAM与所述NVM之间的内存信息的交互。
7.如权利要求6所述的控制异构混合内存***异常恢复的方法,其特征在于,所述第一FPGA具体为Virtex7 2000T型FPGA,所述第二FPGA具体为Virtex7 690T型FPGA。
8.一种控制异构混合内存***异常恢复的BMC,其特征在于,包括:
引导单元,用于检测到计算机***异常掉电后,在所述计算机***下次开机时引导BIOS进行QPI启动;
清空单元,用于生成清空垃圾数据指令,以便于所述计算机***中的NVM在接收到所述清空垃圾数据指令后清空自身由于异常掉电产生的垃圾数据;
恢复单元,用于在所述BIOS完成QPI启动后控制所述计算机***中的CPU访问所述NVM的通道连通,且在所述NVM清空垃圾数据后,控制所述计算机***中的DRAM与所述NVM之间的内存信息交互,并引导所述BIOS完成剩余启动流程,实现所述计算机***的异常恢复。
9.如权利要求8所述的控制异构混合内存***异常恢复的BMC,其特征在于,所述引导单元具体用于当检测到计算机***异常掉电后,在所述计算机***下次开机时引导BIOS进行QPI慢速启动;在接收到所述BIOS在完成QPI慢速启动后生成的重启信号后引导所述BIOS进行QPI快速启动。
10.一种控制异构混合内存***异常恢复的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1-7任一项所述控制异构混合内存***异常恢复的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089053.3A CN108304280A (zh) | 2018-01-30 | 2018-01-30 | 控制异构混合内存***异常恢复的方法、bmc及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810089053.3A CN108304280A (zh) | 2018-01-30 | 2018-01-30 | 控制异构混合内存***异常恢复的方法、bmc及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108304280A true CN108304280A (zh) | 2018-07-20 |
Family
ID=62867343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810089053.3A Pending CN108304280A (zh) | 2018-01-30 | 2018-01-30 | 控制异构混合内存***异常恢复的方法、bmc及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108304280A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112099984A (zh) * | 2020-11-16 | 2020-12-18 | 之江实验室 | 一种拟态工业网关内部异常检测及恢复方法 |
CN112394705A (zh) * | 2019-08-19 | 2021-02-23 | 广东芬尼克兹节能设备有限公司 | 一种控制程序***参数的异常处理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916201A (zh) * | 2010-08-06 | 2010-12-15 | 中兴通讯股份有限公司 | 一种基于Android移动终端冷启动的方法和装置 |
CN102393824A (zh) * | 2011-09-19 | 2012-03-28 | 浪潮电子信息产业股份有限公司 | 一种基于节点异步上电的硬件分区方法 |
CN102890620A (zh) * | 2011-07-18 | 2013-01-23 | 苹果公司 | 非易失性临时数据处理 |
CN103517303A (zh) * | 2012-06-25 | 2014-01-15 | 中兴通讯股份有限公司 | 微波传输设备及其数据处理方法和装置 |
CN103679064A (zh) * | 2012-08-31 | 2014-03-26 | 联想(北京)有限公司 | 设置装置及方法、非易失性存储器和电子设备 |
US20150237139A1 (en) * | 2014-02-14 | 2015-08-20 | Western Digital Technologies, Inc. | Method and apparatus for a network connected storage system |
CN106775490A (zh) * | 2016-12-29 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种基于非易失内存的内核日志存储方法及装置 |
-
2018
- 2018-01-30 CN CN201810089053.3A patent/CN108304280A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916201A (zh) * | 2010-08-06 | 2010-12-15 | 中兴通讯股份有限公司 | 一种基于Android移动终端冷启动的方法和装置 |
CN102890620A (zh) * | 2011-07-18 | 2013-01-23 | 苹果公司 | 非易失性临时数据处理 |
CN102393824A (zh) * | 2011-09-19 | 2012-03-28 | 浪潮电子信息产业股份有限公司 | 一种基于节点异步上电的硬件分区方法 |
CN103517303A (zh) * | 2012-06-25 | 2014-01-15 | 中兴通讯股份有限公司 | 微波传输设备及其数据处理方法和装置 |
CN103679064A (zh) * | 2012-08-31 | 2014-03-26 | 联想(北京)有限公司 | 设置装置及方法、非易失性存储器和电子设备 |
US20150237139A1 (en) * | 2014-02-14 | 2015-08-20 | Western Digital Technologies, Inc. | Method and apparatus for a network connected storage system |
CN106775490A (zh) * | 2016-12-29 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种基于非易失内存的内核日志存储方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112394705A (zh) * | 2019-08-19 | 2021-02-23 | 广东芬尼克兹节能设备有限公司 | 一种控制程序***参数的异常处理方法及装置 |
CN112099984A (zh) * | 2020-11-16 | 2020-12-18 | 之江实验室 | 一种拟态工业网关内部异常检测及恢复方法 |
CN112099984B (zh) * | 2020-11-16 | 2021-02-12 | 之江实验室 | 一种拟态工业网关内部异常检测及恢复方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106339058B (zh) | 动态管理电力供应的方法和*** | |
AU2013263866B2 (en) | Computer system, method for accessing peripheral component interconnect express endpoint device, and apparatus | |
CN103107960B (zh) | 通过开关卡减少交换结构中交换故障的影响的方法和*** | |
CN1770707B (zh) | 计算机簇中基于法定成员数关无响应服务器的装置和方法 | |
CN106844245B (zh) | 数据传输方法及装置 | |
CN102307134B (zh) | 用于运行平台功率状态的方法、设备和*** | |
CN102223394A (zh) | 远程直接存储设备访问 | |
US10346345B2 (en) | Core mapping | |
CN104424122B (zh) | 一种电子设备及内存划分方法 | |
US20090083467A1 (en) | Method and System for Handling Interrupts Within Computer System During Hardware Resource Migration | |
CN105159617B (zh) | 一种池化存储***架构 | |
CN105743808A (zh) | 一种适配QoS的方法和装置 | |
CN105991651A (zh) | 具有远程存储控制的网络接口设备 | |
CN103365717A (zh) | 内存访问方法、装置及*** | |
CN108304280A (zh) | 控制异构混合内存***异常恢复的方法、bmc及装置 | |
US10754783B2 (en) | Techniques to manage cache resource allocations for a processor cache | |
WO2024103829A1 (zh) | 一种端口配置方法、组件及硬盘扩展装置 | |
JP2019175445A (ja) | 格納システム及びそのホスト格納ドライブ並びにデータ格納方法 | |
CN102799248A (zh) | 一种网络唤醒装置、计算机和网络唤醒方法 | |
WO2020256831A1 (en) | Smart contract information redirect to updated version of smart contract | |
CN105677373A (zh) | 一种节点热插拔的方法和numa节点 | |
CN108287670A (zh) | 一种***关机时保护数据的方法及bmc | |
CN108182157A (zh) | 一种实现异构混合内存的方法、bmc、装置及存储介质 | |
CN108334422A (zh) | 一种控制异构混合内存***冷重启的方法及bmc | |
JP6337606B2 (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: 20180720 |