一种高速缓存异常的处理方法及装置制造方法及图纸

技术编号:15690754 阅读:148 留言:0更新日期:2017-06-24 03:24
本发明专利技术实施例提供了一种高速缓存异常的处理方法及装置,该方法包括:检测到高速缓存异常,读取一级高速缓存的寄存器和二级高速缓存的寄存器;根据读取的一级高速缓存的寄存器和二级高速缓存的寄存器,识别产生高速缓存异常的异常高速缓存行;确定异常高速缓存行所属的高速缓存路位于一级高速缓存,根据记录一级高速缓存的高速缓存路状态的寄存器,判断一级高速缓存是否还有可用的高速缓存路;如果是,在记录一级高速缓存的高速缓存路状态的寄存器中,记录异常高速缓存行所属的高速缓存路不可用,关闭异常高速缓存行所属的高速缓存路;如果否,执行重启。应用本发明专利技术实施例,提高了通信设备的稳定性,降低了对业务的影响。

Method and device for processing cache exception

The embodiment of the invention provides a cache processing method and device of anomalies, the method includes: detecting abnormal cache, read the first level cache and level two cache register register; according to read the first level cache registers and two level cache registers, resulting in abnormal high speed identification a cache line cache cache to determine the abnormal; abnormal road cache line is located in a cache, the cache according to the road state records the first level cache register, a judgment level cache is not available cache; if it is in the cache, a high-speed recording condition cache registers, cache road record abnormal cache line is not available, turn off the cache cache line is abnormal road; such as If not, restart execution. By adopting the embodiment of the invention, the stability of the communication equipment is improved, and the influence on the service is reduced.

【技术实现步骤摘要】
一种高速缓存异常的处理方法及装置
本专利技术涉及计算机
,特别是涉及一种高速缓存Cache异常的处理方法及装置。
技术介绍
目前,中央处理器(CPU,CentralProcessingUnit)的访问速度越来越高,而内存的访问速度的改进缓慢,这导致CPU从内存获取指令或读写内存中的数据成为了CPU访问速度的瓶颈。基于该情况,Cache(高速缓存)应运而生。Cache为一种特殊的存储器子系统,其位于CPU和内存之间。一般地,Cache分为一级(L1,level1)Cache和二级(L2,level2)Cache。L1Cache集成在CPU内部,包括多个Cacheway(高速缓存路),每个Cacheway包括多个Cacheline(高速缓存行)。L2Cache集成在主板上,包括多个Bank(存储单元);其中每个Bank包括多个Cacheway,每个Cacheway包括多个Cacheline。L1Cache和L2Cache的存储容量都很小,但访问速度很快,CPU可以快速地从L1Cache和L2Cache中获取指令或读写数据,极大地提高了CPU的访问速度。但Cache的成本较高,并且存储容量很小,这使得对Cache异常的处理显得尤为重要。现有技术中,通信设备检测到Cache异常时,读取L1Cache的寄存器和L2Cache的寄存器,记录L1Cache的异常信息和/或L2Cache的Cache异常信息,通信设备执行重启。但这种Cache异常的处理方式所导致的问题在于,通信设备的Cache异常是偶然性异常,无法确定通信设备什么时候会再次因为Cache异常重启,给通信设备运行的通信产生不稳定的影响,导致网络数据中断,影响业务的处理。
技术实现思路
本专利技术实施例的目的在于提供一种高速缓存异常的处理方法及装置,以提高通信设备的稳定性,降低对业务的影响。具体技术方案如下:一方面,本专利技术实施例公开了一种高速缓存异常的处理方法,所述方法包括:检测到高速缓存异常,读取一级高速缓存的寄存器和二级高速缓存的寄存器;根据读取的所述一级高速缓存的寄存器和所述二级高速缓存的寄存器,识别产生所述高速缓存异常的异常高速缓存行;确定所述异常高速缓存行所属的高速缓存路位于所述一级高速缓存,根据记录所述一级高速缓存的高速缓存路状态的寄存器,判断所述一级高速缓存是否还有可用的高速缓存路;如果是,在所述记录一级高速缓存的高速缓存路状态的寄存器中,记录所述异常高速缓存行所属的高速缓存路不可用,关闭所述异常高速缓存行所属的高速缓存路;如果否,执行重启。另一方面,本专利技术实施例公开了一种高速缓存异常的处理装置,所述装置包括:检测模块,用于检测高速缓存异常;读取模块,用于当检测到高速缓存异常时,读取一级高速缓存的寄存器和二级高速缓存的寄存器;识别模块,用于根据读取的所述一级高速缓存的寄存器和所述二级高速缓存的寄存器,识别产生所述高速缓存异常的异常高速缓存行;控制模块,用于确定所述异常高速缓存行所属的高速缓存路位于所述一级高速缓存,根据记录所述一级高速缓存的高速缓存路状态的寄存器,判断所述一级高速缓存是否还有可用的高速缓存路;如果是,在所述记录一级高速缓存的高速缓存路状态的寄存器中,记录所述异常高速缓存行所属的高速缓存路不可用,关闭所述异常高速缓存行所属的高速缓存路;如果否,执行重启。本专利技术实施例中,通信设备检测到Cache异常,在L1Cache或者L2Cache的Bank还有可用Cacheway时,先记录发生Cache异常的Cacheway,再关闭发生Cache异常的Cacheway,继续使用在L1Cache或者L2Cache的Bank中可用的Cacheway,减少了通信设备由于Cache异常的重启的次数,提高了通信设备的稳定性,降低了对报文转发业务的影响。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种Cache异常的处理方法的流程示意图;图2为本专利技术实施例中记录L1Cache的Cacheway状态的寄存器的示意图;图3为图2中记录L1Cache的Cacheway状态的寄存器记录不可用Cacheway的示意图;图4为图2和图3中记录L1Cache的Cacheway状态的寄存器记录不可用Cacheway的示意图;图5为本专利技术实施例中记录两个线程共享的L1Cache的Cacheway状态的寄存器的示意图;图6为图5中记录两个线程共享的L1Cache的Cacheway状态的寄存器记录不可用Cacheway的示意图;图7为本专利技术实施例中记录L2Cache的Cacheway状态的寄存器的示意图;图8为图7中记录L2Cache的Cacheway状态的寄存器记录不可用Cacheway的示意图;图9为图7和图8中记录L2Cache的Cacheway状态的寄存器记录不可用Cacheway的示意图;图10为本专利技术实施例提供的一种Cache异常的处理装置的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。下面通过具体实施例,对本专利技术进行详细说明。参考图1,图1为本专利技术实施例提供的一种Cache异常的处理方法的流程示意图。一般的,Cache分为L1Cache和L2Cache。LCache包括多个Cacheway,每个Cacheway包括多个Cacheline;L2Cache包括多个Bank,每个Bank包括多个Cacheway,每个Cacheway包括多个Cacheline。具体地,该方法包括:步骤101,检测到高速缓存异常,读取一级高速缓存的寄存器和二级高速缓存的寄存器;步骤102,根据读取的一级高速缓存的寄存器和二级高速缓存的寄存器,识别产生高速缓存异常的异常高速缓存行;步骤103,确定异常高速缓存行所属的高速缓存路位于一级高速缓存;步骤104,根据记录一级高速缓存的高速缓存路状态的寄存器,判断一级高速缓存是否还有可用的高速缓存路;如果是,执行步骤105;如果否,执行步骤107;步骤105,在记录一级高速缓存的高速缓存路状态的寄存器中,记录异常高速缓存行所属的高速缓存路不可用;步骤106,关闭异常高速缓存行所属的高速缓存路;步骤107,执行重启。具体地,通信设备的CPU可以采用ECC(ErrorCorrectingCode,错误检查与纠正)技术中的SECDED(SingleErrorCorrectionandDoubleErrorDetection,单错误校正、多错误发现)技术,检测L1Cache和L2Cache的各个Cacheway包括的各个Cacheline中是否存在错误的Bit(比特),若存在一个错误的Bit,则进行检查并纠正;若存在多个错误的Bit,则确定Cacheline发生Cache异本文档来自技高网
...
一种高速缓存异常的处理方法及装置

【技术保护点】
一种高速缓存异常的处理方法,其特征在于,所述方法包括:检测到高速缓存异常,读取一级高速缓存的寄存器和二级高速缓存的寄存器;根据读取的所述一级高速缓存的寄存器和所述二级高速缓存的寄存器,识别产生所述高速缓存异常的异常高速缓存行;确定所述异常高速缓存行所属的高速缓存路位于所述一级高速缓存,根据记录所述一级高速缓存的高速缓存路状态的寄存器,判断所述一级高速缓存是否还有可用的高速缓存路;如果是,在所述记录一级高速缓存的高速缓存路状态的寄存器中,记录所述异常高速缓存行所属的高速缓存路不可用,关闭所述异常高速缓存行所属的高速缓存路;如果否,执行重启。

【技术特征摘要】
1.一种高速缓存异常的处理方法,其特征在于,所述方法包括:检测到高速缓存异常,读取一级高速缓存的寄存器和二级高速缓存的寄存器;根据读取的所述一级高速缓存的寄存器和所述二级高速缓存的寄存器,识别产生所述高速缓存异常的异常高速缓存行;确定所述异常高速缓存行所属的高速缓存路位于所述一级高速缓存,根据记录所述一级高速缓存的高速缓存路状态的寄存器,判断所述一级高速缓存是否还有可用的高速缓存路;如果是,在所述记录一级高速缓存的高速缓存路状态的寄存器中,记录所述异常高速缓存行所属的高速缓存路不可用,关闭所述异常高速缓存行所属的高速缓存路;如果否,执行重启。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定所述异常高速缓存行所属的高速缓存路位于所述一级高速缓存且被多个线程共享,根据记录所述多个线程共享的所述一级高速缓存的高速缓存路状态的寄存器,判断所述一级高速缓存是否还有可用的高速缓存路;如果是,在所述记录多个线程共享的一级高速缓存的高速缓存路状态的寄存器中,将每个线程使用的所述异常高速缓存行所属的高速缓存路记录为不可用;关闭被所述多个线程共享的所述异常高速缓存行所属的高速缓存路;如果否,执行重启。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:确定所述异常高速缓存行所属的高速缓存路位于所述二级高速缓存的其中一个存储单元,根据记录所述二级高速缓存的每个存储单元的高速缓存路状态的寄存器,判断所述异常高速缓存行所属的高速缓存路位于的存储单元是否还有可用的高速缓存路;如果是,在所述记录二级高速缓存的每个存储单元的高速缓存路状态的寄存器中,记录所述异常高速缓存行所属的高速缓存路不可用;关闭所述异常高速缓存行所属的高速缓存路;如果否,执行重启。4.根据权利要求1所述的方法,其特征在于,在识别产生所述高速缓存异常的异常高速缓存行之后,所述方法还包括:将所述一级高速缓存和所述二级高速缓存中存储的数据和指令记录于内存。5.一种高速缓存异常的处理...

【专利技术属性】
技术研发人员:迟君涛肖冰海秀云赵云鹏赵瑞哲
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1