【技术实现步骤摘要】
本专利技术涉及计算机
,特别是涉及一种计算机、PCIE设备以及PCIE设备的心跳检测方法。
技术介绍
随着PCIE(PeripheralComponentInterfaceExpress,高速外围元件接口)设备(如PCIESSD盘)在全闪存阵列中的广泛应用,对PCIE设备的暴力热插拔的支持是一种必然趋势。而按照PCIE协议规定的PCIE热插拔操作是预先通知模式的,而在实际的应用场景中,可能出现误操作、无意识的外力、特殊应用场景等情况出现PCIE设备在未通知系统热插拔驱动的情况下,直接发生与计算机的北桥芯片的PCIE连接链路断开。如果这个时候计算机中的PCIE设备驱动程序正在通过计算机的处理器下发命令访问该PCIE设备的寄存器等,就可能导致计算机的处理器出现MCE(MachineCheckException,机器检测异常)错误,从而导致计算机系统复位。PCIE设备的热拔出流程必须是先将热插拔事件通知到计算机的热插拔驱动程序,在热插拔驱动程序通知计算机系统中所有可能访问该设备的驱动程序停止访问该PCIE设备、并且将需要进行热插拔设备的资源卸载掉之后,再对PCIE设备下电,然后才能对PCIE设备进行热拔出。PCIE设备的热插拔流程必须得先停止对PCIE设备的访问之后才能将PCIE设备从计算机中拔出(断开与计算机的北桥芯片的连接),其根本原因在于当计算机的处理器发起对一个PCIE设备寄存器的读/写请求时,若这个PCIE设备此时被突然拔出计算机的PCIE插槽,这时处理器发起的读/写请求得不到响应,处理器就会认为系统异常,报出MCE错误让整个计 ...
【技术保护点】
一种PCIE设备的心跳检测方法,其特征在于,所述方法应用于计算机,所述计算机设置有PCIE插槽,所述PCIE设备可插拔设置于所述PCIE插槽,且在插入所述PCIE插槽时与所述计算机建立PCIE链路连接,所述方法包括:所述计算机检测所述PCIE设备是否插置于所述PCIE插槽中,如果是,在所述计算机的内存选择内存地址;所述计算机通过所述PCIE链路发送所述内存地址和预设频率至所述PCIE设备,以使得所述PCIE设备通过所述PCIE链路以所述预设频率周期地将心跳信息写入所述内存地址;所述计算机以所述预设频率周期地读取所述内存地址的内容,并判断所述内容是否是所述心跳信息,如果是,确认所述PCIE设备心跳正常,如果否,确认所述PCIE设备心跳异常。
【技术特征摘要】
1.一种PCIE设备的心跳检测方法,其特征在于,所述方法应用于计算机,所述计算机设置有PCIE插槽,所述PCIE设备可插拔设置于所述PCIE插槽,且在插入所述PCIE插槽时与所述计算机建立PCIE链路连接,所述方法包括:所述计算机检测所述PCIE设备是否插置于所述PCIE插槽中,如果是,在所述计算机的内存选择内存地址;所述计算机通过所述PCIE链路发送所述内存地址和预设频率至所述PCIE设备,以使得所述PCIE设备通过所述PCIE链路以所述预设频率周期地将心跳信息写入所述内存地址;所述计算机以所述预设频率周期地读取所述内存地址的内容,并判断所述内容是否是所述心跳信息,如果是,确认所述PCIE设备心跳正常,如果否,确认所述PCIE设备心跳异常。2.根据权利要求1所述的方法,其特征在于,所述计算机确认所述PCIE设备心跳异常之后,所述方法还包括:所述计算机再次检测所述PCIE设备是否插置于所述PCIE插槽中,如果否,则清空所述内存地址的内容,并进行热插拔处理。3.根据权利要求2所述的方法,其特征在于,在检测到所述PCIE设备插置于所述PCIE插槽中时,所述方法还包括:所述计算机进一步检测所述PCIE链路是否出现故障,如果是,则进行PCIE链路故障处理。4.根据权利要求2所述的方法,其特征在于,在检测到所述PCIE设备插置于所述PCIE插槽中时,所述方法还包括:所述计算机进一步检测所述PCIE设备内部是否出现故障,如果是,则进行PCIE设备故障处理。5.根据权利要求1-4任一项所述的方法,其特征在于,所述心跳信息包括依次递增的0至N,其中N为正整数,所述计算机判断所述内容是否是所述心跳信息具体包括:所述计算机判断所述内容是否为所述依次递增的0至N,如果是,则判断到所述内容是所述心跳信息,其中所述依次递增的0至N包括从N变为0的最大值反转状态。6.根据权利要求1-4任一项所述的方法,其特征在于,所述心跳信息包括依次递减的N至0,其中N为正整数,所述计算机对所述内容进行判断具体包括:所述计算机判断所述内容是否为所述依次递减的N至0,如果是,则判断到所述内容是所述心跳信息,其中所述依次递减的N至0包括从0变为N的最小值反转状态。7.一种PCIE设备的心跳检测方法,其特征在于,所述方法应用于PCIE设备,所述PCIE设备可插拔设置于计算机的PCIE插槽,且在插入所述PCIE插槽时与所述计算机建立PCIE链路连接,所述方法包括:所述PCIE设备通过所述PCIE链路接收所述计算机发送的内存地址和预设频率,其中所述内存地址是所述计算机在检测到所述PCIE设备插置于所述PCIE插槽时,在所述计算机的内存中选择获得;所述PCIE设备通过所述PCIE链路以所述预设频率周期地将心跳信息写入所述内存地址,以使得所述计算机以所述预设频率周期地读取所述内存地址的内容,并判断所述内容是否是所述心跳信息,如果是,确认所述PCIE设备心跳正常,如果否,确认所述PCIE设备心跳异常。8.根据权利要求7所述的方法,其特征在于,所述PCIE设备通过所述PCIE链路以所述预设频率周期地将心跳信息写入所述内存地址包括:所述PCIE设备将所述心跳信息设置在存储内存写请求类型的TLP包中,并将所述TLP包在所述PCIE链路中的虚拟通道/流量级别设置为最高优先级。9.根据权利要求7或8所述的方法,其特征在于,所述心跳信息包括依次递增的0至N,其中N为正整数。10.根据权利要求7或8所述的方法,其特征在于,所述心跳信息包括依次递减的N至0,其中N为正整数。11.一种计算机,其特征在于,所述计算机包括PCIE插槽和内存,PCIE设备可插拔设置于所述P...
【专利技术属性】
技术研发人员:陈高让,张羽,
申请(专利权)人:杭州华为数字技术有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。