CN116049249A - 报错信息处理方法、装置、系统、设备和存储介质 - Google Patents

报错信息处理方法、装置、系统、设备和存储介质 Download PDF

Info

Publication number
CN116049249A
CN116049249A CN202111670978.5A CN202111670978A CN116049249A CN 116049249 A CN116049249 A CN 116049249A CN 202111670978 A CN202111670978 A CN 202111670978A CN 116049249 A CN116049249 A CN 116049249A
Authority
CN
China
Prior art keywords
error
target
module
type
instruction
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
CN202111670978.5A
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.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information 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 Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202111670978.5A priority Critical patent/CN116049249A/zh
Publication of CN116049249A publication Critical patent/CN116049249A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • 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

Abstract

本申请提供一种报错信息处理方法、装置、系统、设备和存储介质,该方法包括:在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型,所述报错信息中携带有产生所述报错信息的目标模块标识;根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数;当所述总次数大于所述预设次数时,在数据库中查询出所述指定类型的报错信息在所述目标模块下对应的第一报错处理指令;触发所述第一报错处理指令,所述报错处理指令用于停止所述目标模块的错误运行动作。本申请通过滤除低概率的指定类型错误信息,避免系统频繁中断带来的不良影响,提高芯片系统的稳定性。

Description

报错信息处理方法、装置、系统、设备和存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种报错信息处理方法、装置、系统、设备和存储介质。
背景技术
SOC(System on Chip,系统级芯片),是由多个具有特定功能的集成电路组合在一个芯片上形成的系统或产品,其中包含完整的硬件系统及其承载的嵌入式软件。
随着集成电路技术得快速发展,芯片得设计方案变得越来越复杂。为了满足更复杂的功能需求,SOC芯片集成化程度非常高。随着SOC集成电路的复杂程度和工作频率的提高,集成电路在工作时会有概率性的错误出现。例如SRAM的失效,电源波动带来的总线错误,以及内部跨时钟域引起的概率失效,还有高速接口通道稳定性引起的错误等等。上述错误会造成系统宕机,甚至导致数据传输失败,破坏了系统稳定性。
针对上述问题,常规做法是在发生错误后给出系统中断,或直接复位系统。但是系统复位会让SOC工作阶段性终止,造成数据丢失或应用设备的失效。频繁的中断也会引起CPU的工作效率降低。
发明内容
本申请实施例的目的在于提供一种报错信息处理方法、装置、系统、设备和存储介质,当出现报错时,先基于报错次数进行过滤,滤除低概率的指定类型错误信息,避免系统频繁中断带来的不良影响,提高芯片系统的稳定性。
本申请实施例第一方面提供了一种报错信息处理方法,包括:在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型,所述报错信息中携带有产生所述报错信息的目标模块标识;根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数;当所述总次数大于所述预设次数时,在数据库中查询出所述指定类型的报错信息在所述目标模块下对应的第一报错处理指令;触发所述第一报错处理指令,所述报错处理指令用于停止所述目标模块的错误运行动作。
于一实施例中,所述指定类型为可修复错误类型;所述根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数,包括:判断所述目标错误类型是否为可修复错误类型;当所述目标错误类型是所述可修复错误类型时,判断所述总次数是否大于所述预设次数。
于一实施例中,还包括:当所述目标错误类型是所述可修复错误类型时,发送重试指令至所述目标模块,所述重试指令用于指示所述目标模块重复发生所述报错信息的动作。
于一实施例中,还包括:当所述目标错误类型不是所述可修复错误类型时,在数据库中查询出所述目标错误类型在所述目标模块下对应的第二报错处理指令;触发所述第二报错处理指令,所述第二报错处理指令用于停止所述目标模块的错误运行动作。
于一实施例中,在所述在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型之前,还包括:统计待处理芯片系统的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块时的错误等级,并为每个错误等级配置报错处理指令,生成所述数据库。
于一实施例中,所述错误等级包括:可自动修复等级、不可自动修复等级、非数据丢失等级和数据丢失等级中的一个或多个。
于一实施例中,所述报错处理指令包括:中断指令、门控时钟指令和电源关断指令中的一个或多个。
本申请实施例第二方面提供了一种报错信息处理装置,包括:信息接收模块,用于在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型,所述报错信息中携带有产生所述报错信息的目标模块标识;次数判断模块,用于根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数;指令查询模块,用于当所述总次数大于所述预设次数时,在数据库中查询出所述指定类型的报错信息在所述目标模块下对应的第一报错处理指令;指令触发模块,用于触发所述第一报错处理指令,所述报错处理指令用于停止所述目标模块的错误运行动作。
于一实施例中,所述指定类型为可修复错误类型;所述次数判断模块用于:判断所述目标错误类型是否为可修复错误类型;当所述目标错误类型是所述可修复错误类型时,判断所述总次数是否大于所述预设次数。
于一实施例中,还包括:指令发送模块,用于当所述目标错误类型是所述可修复错误类型时,发送重试指令至所述目标模块,所述重试指令用于指示所述目标模块重复发生所述报错信息的动作。
于一实施例中,所述指令查询模块还用于当所述目标错误类型不是所述可修复错误类型时,在数据库中查询出所述目标错误类型在所述目标模块下对应的第二报错处理指令;所述指令触发模块还用于触发所述第二报错处理指令,所述第二报错处理指令用于停止所述目标模块的错误运行动作。
于一实施例中,还包括:信息配置模块,用于在所述在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型之前,统计待处理芯片系统的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块时的错误等级,并为每个错误等级配置报错处理指令,生成所述数据库。
于一实施例中,所述错误等级包括:可自动修复等级、不可自动修复等级、非数据丢失等级和数据丢失等级中的一个或多个。
于一实施例中,所述报错处理指令包括:中断指令、门控时钟指令和电源关断指令中的一个或多个。
本申请实施例第三方面提供了一种报错信息处理装置,包括:寄存器,用于为芯片系统提供接口,存储有每种错误类型源于不同芯片模块时的错误等级,以及每个错误等级配置的报错处理指令;输入检查接口,连接所述芯片系统,用于接收来自所述芯片系统的报错信号;错误源过滤器,连接所述输入检查接口,用于基于所述寄存器的配置信息,对所述报错信号进行过滤;等级注册模块,用于确定所述错误源过滤器过滤后的报错信号的错误等级,并基于所述寄存器的配置信息,确定所述报错信号对应的报错处理指令;触发器,用于基于所述等级注册模块的确定结果,触发所述报错处理指令,所述报错处理指令用于停止所述报错信号对应的错误运行动作。
本申请实施例第四方面提供了一种芯片系统,包括:多个芯片模块;如权利要求8至14中任一项或权利要求15所述的报错信息处理装置,用于处理所述芯片模块产生的报错信息。
本申请实施例第五方面提供了一种电子设备,包括:存储器,用以存储计算机程序;处理器,用以执行所述计算机程序,以实现本申请实施例第一方面及其任一实施例的方法。
本申请实施例第六方面提供了一种非暂态电子设备可读存储介质,包括:程序,当其藉由电子设备运行时,使得所述电子设备执行本申请实施例第一方面及其任一实施例的方法。
本申请提供的报错信息处理方法、装置、系统、设备和存储介质,通过在接收到芯片模块报错时,先基于错误类型和发生次数进行过滤,滤除低概率的指定类型错误信息,针对发生次数较高的报错信息查找其对应的处理指令,并触发该处理指令,以停止所述目标模块的错误运行动作,避免给系统造成严重损害,如此,通过对错误信息进行过滤,减少了芯片系统的宕机频率,降低系统频繁中断带来的不良影响,提高芯片系统的稳定性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例的电子设备的示意图;
图2A为本申请一实施例的芯片系统的示意图;
图2B为本申请一实施例的报错信息处理装置的示意图;
图3为本申请一实施例的报错信息处理方法的流程示意图;
图4为本申请一实施例的报错信息处理方法的流程示意图;
图5A为本申请一实施例的报错信息处理过程的示意图;
图5B为本申请一实施例的报错信息处理过程的示意图;
图6为本申请一实施例的报错信息处理装置的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了清楚的描述本实施例的方案,现将涉及的名词定义如下:
SOC:System On Chip,片上系统,也叫系统级芯片。
SIC:SOC Integrity Checker,SOC可靠性检查器。
SERR:System Error,系统错误。
NON-Fatal:非致命错误。
CORR:Correctable Error,可修复错误。
SRAM:Static Random-Access Memory,静态随机存取存储器。
CPU:Central Processing Unit,处理器,是计算机系统的运算和控制核心,是软件程序的执行单元。
如图1所示,本实施例提供一种电子设备1,包括:至少一个处理器11和存储器12,图1中以一个处理器为例。处理器11和存储器12通过总线10连接。存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使电子设备1可执行下述的实施例中方法的全部或部分流程,以降低芯片系统因报错产生的宕机频率。
于一实施例中,电子设备1可以是手机、平板电脑、笔记本电脑、台式计算机或者多个计算机组成的大型运算系统。
如图2A所示,为本申请实施例提供的一种芯片系统200,包括:多个芯片模块21和报错信息处理装置22,其中,多个芯片模块21用于完成芯片的各个功能,报错信息处理装置22用于处理芯片模块21产生的报错信息。
此处芯片系统200可以是基于集成电路技术的SOC芯片,随着SOC集成电路的复杂程度和工作频率的提高,集成电路在工作时会有概率性的错误出现。例如SRAM的失效,电源波动带来的总线错误,以及内部跨时钟域引起的概率失效,还有高速接口通道稳定性引起的错误等等。上述错误会造成芯片系统200宕机,甚至导致数据传输失败,破坏了芯片系统200稳定性。
本申请实施例通过报错信息处理装置22对SOC芯片中产生的报错信息进行处理,从而减少芯片系统200宕机的概率,提高芯片系统200的稳定性。
如图2B所示,为本申请实施例提供的一种报错信息处理装置22,包括:寄存器221、输入检查接口222、错误源过滤器223、等级注册模块224和触发器225,其中:
寄存器221,用于为芯片系统200提供接口,存储有每种错误类型源于不同芯片模块21时的错误等级,以及每个错误等级配置的报错处理指令。
寄存器221模块可以通过SOC寄存器221总线连接SOC芯片,可以为SOC系统CPU提供软件控制接口,寄存器221中的内容可以包括各个芯片功能模块实现功能时需要的软件指导信息。
输入检查接口222,连接芯片系统200,用于检测并接收来自芯片系统200的报错信号。比如接接收来自SOC系统内事先约定好的错误信号。错误信号首先输入到这个模块。并根据错误类型进行记录。
错误源过滤器223,连接输入检查接口222,用于基于寄存器221的配置信息,对报错信号进行过滤。比如可以根据寄存器221的配置信息过滤可修复的错误输入。可修复错误在SOC系统中出现概率高,可以根据性能需求设定门发生次数的限值,忽略低概率的可修复错误。
于一实施例中,在错误信息报告给系统之前,先收集多个可修复的错误。软件可以根据错误数量和发生率决定忽略某些低发生率的错误,不让低概率的可修复错误转换成系统硬件错误。
于一实施例中,可以为每个错误源(芯片系统200中产生报错信息的芯片模块21)连接一个门限计数器。阀值由软件配置。收到报错信息后计数器累加,在特定的时间范围内如果计数器超过阀值,则触发硬件错误信号传给等级注册模块224。
等级注册模块224,用于确定错误源过滤器223过滤后的报错信号的错误等级,并基于寄存器221的配置信息,确定报错信号对应的报错处理指令。也就是负责对接收到的报错信息进行错误严重性分级。基于写入寄存器221的配置信息,为约定的多种错误类型的源头分别设定错误严重级别。
触发器225,用于基于等级注册模块224的确定结果,触发报错处理指令,报错处理指令用于停止报错信号对应的错误运行动作。也就是触发动作使能,此模块根据输入的报错信息的严重等级,决定是否产生对SOC系统控制行为的处理指令。
下面结合图例,进一步详细描述本申请实施例的报错信息处理方法。
请参看图3,其为本申请一实施例的报错信息处理方法,该方法可由图1所示的电子设备1来执行,并可以应用于对上述图2A-图2B所示芯片系统200报错处理场景中,以降低芯片系统200因报错产生的宕机频率,提高芯片系统200的稳定性。该方法包括如下步骤:
步骤301:在接收到芯片模块21的报错信息时,确定报错信息的目标错误类型。
在本步骤中,实时检测并接收芯片系统200中各个模块的报错信息,比如,目标模块发生错误后,错误信号产生电平变化,比如信号由低电平变成高电平,每个错误信号连接到一个电平检测电路,即可检测到报错信息。此电路可将电平变化转成一个时钟周期的脉冲信号传递给错误源过滤器223。
在接收到芯片模块21的报错信息时,在报错信息上传到系统之前,首先对报错信息进行归纳分类,确定报错信息的目标错误类型,其中,报错信息中会携带有产生报错信息的目标模块标识,也就是说一个功能模块产生了报错信息,该报错信息中会有特定的标识,因此可以基于这些信息对报错信息进行归纳分类。
步骤302:根据目标模块标识和目标错误类型,判断在预设时间段内目标模块产生指定类型的报错信息的总次数是否大于预设次数。若是进入步骤303,否则,不上报该报错信息。
在本步骤中,指定类型的报错信息可以是对芯片系统200的影响较小的报错,比如一些芯片硬件可以自动修复的报错,这些报错由于可以自动修复,对系统传输数据影响较小,因此当发生频率较低时,可以忽略他们,避免频繁中断芯片系统200的正常运行。
错误源过滤器223可以在错误报告给系统之前,先收集多个指定类型的报错信息。可以根据错误数量和发生率决定忽略某些低发生率的错误,不让低概率的可修复错误转换成系统硬件错误。
于一实施例中,可以为每个错误源连接一个门限计数器。预设次数可以由软件配置,比如指定类型为可修复错误类型,预设次数可以为8次。收到错误后,计数器累加,在特定的时间范围内如果计数器的计数超过预设次数,则进入步骤303,否则可以忽略本次报错信息,然后返回步骤301,继续检测。
步骤303:在数据库中查询出指定类型的报错信息在目标模块下对应的第一报错处理指令。
在本步骤中,数据库中预先配置了多种错误类型,以及每种错误类型针对不同的错误源时对应的严重性等级,而每个严重性等级都对应有具体的报错处理指令。当总次数大于预设次数时,可以触发硬件错误信号传给等级注册模块224,等级注册模块224可以在数据库中查找本次报错信息对应第一报错处理指令。
步骤304:触发第一报错处理指令。
在本步骤中,可以通过触发器225触发动作使能,发出第一报错处理指令,,报错处理指令用于及时停止目标模块的错误运行动作,避免该错误运行动作给芯片系统200带来数据丢失、宕机等问题。
上述报错信息处理方法,通过在接收到芯片模块21报错时,先基于错误类型和发生次数进行过滤,滤除低概率的指定类型错误信息,针对发生次数较高的报错信息查找其对应的处理指令,并触发该处理指令,以停止目标模块的错误运行动作,避免给系统造成严重损害,如此,通过对错误信息进行过滤,减少了芯片系统200的宕机频率,降低系统频繁中断带来的不良影响,提高芯片系统200的稳定性。
请参看图4,其为本申请一实施例的报错信息处理方法,该方法可由图1所示的电子设备1来执行,并可以应用于对上述图2A-图2B所示芯片系统200报错处理场景中,以降低芯片系统200因报错产生的宕机频率,提高芯片系统200的稳定性。该方法包括如下步骤:
步骤401:统计待处理芯片系统200的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块21时的错误等级,并为每个错误等级配置报错处理指令,生成数据库。
在本步骤中,在处理报错信息之前,首先可以基于经验数据对SOC芯片中各个模块常出现的错误信息进行统计分析,并约定好赌赢的错误类型,比如对弈SOC芯片系统200,约定好的错误类型可以如下:
C-SRAM:发生了可修复的SRAM错误,硬件可自动恢复。
UC-SRAM:发生了不可修复的SRAM错误,硬件不可恢复。
C-Func:发生了可修复的功能错误,例如数据CRC校验出错后,重新传输正确,硬件可自动恢复。
UC-Func:发生了不可修复的功能错误,例如实时数据的出错,或者SOC功能状态机进入异常,硬件不可恢复。
Bus-Parity:SOC片内总线出现错误,例如数据奇偶校验出错,读写请求之间出现死锁,硬件可恢复。
每种错误类型都可以进行低概率过滤,也就是只有在预设时间段内发生总次数超过预设次数的报错信息才可以进行上报。也就是说,在初始化寄存器221时,可以分别配置五种错误类型对应的发生次数的门限值,比如配置信息:错误类型UC-SRAM-A-Threshold=8,表示SOC中的功能模块A产生不可修复的SRAM错误超过8次时,才可以上报错误信息。
上述错误类型存储在数据库中,然后分别配置每种错误类型源于不同芯片模块21时的错误等级,错误等级可以包括:可自动修复等级、不可自动修复等级、非数据丢失等级和数据丢失等级中的一个或多个。
比如错误等级分类可以如下:
Correctable error-硬件可自动修复。
Uncorrectable error-硬件不可以自动修复。
Non-Fatal-需要特定软件参与处理的错误类型。后续操作继续,数据不会丢失。
Fatal-致命错误。需要系统软件参与,产生错误的模块不能再继续工作,且数据丢失。
每种错误类型都有多个产生源,由于同一种错误当是不同的芯片模块21产生时,其可能对系统的影响程度是不一样,因此可以分别为每种错误类型在不同错误源下的错误等级。以上述五种错误类型为例,也就是说,每种类型的错误都可以因为产生模块的不同对应四种错误级别,可以初始定义一个二维的比对表,将每种错误类型在不同错误源下的错误等级进行保存。比如,通过初始化寄存器221,配置错误等级信息:UC-SRAM-A=Fatal,表示SOC中的功能模块A产生不可修复的SRAM错误为致命错误等级。
然后给每个等级的错误,配置对应的报错处理指令,报错处理指令包括:中断指令、门控时钟指令和电源关断指令中的一个或多个。
比如,报错处理指令可以如下:
Interrupt:触发中断给CPU。
Clock Gating:触发门控时钟,停止错误时许逻辑继续运行。
Power Gating:触发电源关断,停止错误功能模块的供电,能降低功耗,避免错误导致电流过大引起SOC物理损伤。
比如,对于错误等级为Fatal-致命错误的报错信息,可以配置对应的报错处理指令为Interrupt,即触发中断给CPU。可以通过初始化寄存器221,配置触发信息:UC-SRAM-A=Interrupt,表示SOC中的功能模块A产生Fatal级别的错误时,触发中断信号给CPU。
如此,分别为每个错误等级配置对应的报错处理指令,保存在上述二维表中,得到最终的数据库。
于一实施例中,可以分别配置每种错误类型的报错处理指令的触发方式,触发方式可以高电平触发或者低电平触发。比如,通过初始化寄存器221,配置触发方式信息:UC-SRAM-A=High,表示SOC中的功能模块A产生不可修复的SRAM错误信号高电平时意味着错误发生。
于一实施例中,对于报错信息的检测也可以通过主动触发的方式开启,可以预先配置开启检测的方式,比如配置信息:UC-SRAM-A=Enable,表示启动SOC芯片中功能模块A的UC-SRAM硬件检错。
步骤402:在接收到芯片模块21的报错信息时,确定报错信息的目标错误类型,报错信息中携带有产生报错信息的目标模块标识。详细参见上述实施例中对步骤301的描述。
步骤403:判断目标错误类型是否为可修复错误类型。若是,进入步骤404,否则进入步骤407。
在本步骤中,指定类型可以是上述约定的错误类型C-SRAM、UC-SRAM、C-Func、UC-Func和Bus-Parity中的一种或多种,每种错误类型都可以进行低概率过滤,只有在预设时间段内发生总次数超过预设次数的报错信息才可以进行上报。假设指定类型为可修复错误类型C-SRAM,则在接收到报错信息后,首先判断报错信息所属的目标错误类型是否为可修复错误类型C-SRAM,若是,进入步骤404,否则进入步骤407。
步骤404:判断总次数是否大于预设次数。若是进入步骤405,否则可以忽略本次报错信息,返回步骤402。
在本步骤中,当目标错误类型是可修复错误类型时,继续判断在预设时间段内目标模块产生指定类型的报错信息的总次数是否大于预设次数,详细参见上述实施例中对步骤302的描述。
于一实施例中,当目标错误类型是可修复错误类型时,也可以发送重试指令至目标模块,重试指令用于指示目标模块重复发生报错信息的动作。
如图5A所示,当SOC芯片中的功能模块Module A发出可修复的报错信号Error时,可以根据寄存器221的配置,通过输入检查接口222发送重试指令Retry给功能模块ModuleA,通知功能模块Module A重复出错的动作。既可以保证功能模块Module A成功执行某个动作,又可以减少错误上报,降低对上级软硬件造成不良影响。
步骤405:当总次数大于预设次数时,在数据库中查询出指定类型的报错信息在目标模块下对应的第一报错处理指令。详细参见上述实施例中对步骤30 3的描述。
步骤406:触发第一报错处理指令,报错处理指令用于停止目标模块的错误运行动作。详细参见上述实施例中对步骤304的描述。
于一实施例中,如图5B所示,SOC芯片中的功能模块Module A产生的可恢复的报错信息,在错误源过滤器223被过滤掉,并且计数,将发生的次数(Number)送到寄存器221模块。软件可以通过寄存器221感知到功能模块Module A发生错误的趋势,以及功能模块Module A即将出现更严重的问题。当达到寄存器221配置的次数时,将功能模块Module A产生的可恢复错误送到等级注册模块224,同时记录这个报错信息的错误类型。最终基于配置信息产生中断,以使服务程序参与错误处理。
步骤407:在数据库中查询出目标错误类型在目标模块下对应的第二报错处理指令。
在本步骤中,也可以预先配置某些错误类型的报错信息不需要过滤,比如对于系统影响较大的致命错误,可能会导致芯片系统200损坏或者数据丢失等,这样的报错信息可以不进行过滤,可以及时进行处理,避免给系统造成无法挽回的损伤。因此,当报错信息的目标错误类型不是需要过滤的可修复错误类型时,则可以直接在数据库中找到该报错信息在目标模块下对应的第二报错处理指令。
步骤408:触发第二报错处理指令,第二报错处理指令用于停止目标模块的错误运行动作。
在本步骤中,可以通过触发器225触发动作使能,发出第二报错处理指令,报错处理指令用于及时停止目标模块的错误运行动作,避免该错误运行动作给芯片系统200带来数据丢失、宕机等问题。
上述报错信息处理方法,实现了SOC系统内常见的错误归纳和分级处理,硬件电路根据软件配置的寄存器221,实现错误处理,使得SOC在遇到片内错误后减少或者不宕机,提高了SOC芯片的健壮性,提高了SOC芯片在恶劣场景的工作稳定性。
请参看图6,其为本申请一实施例的报错信息处理装置600,该装置可应用于图1所示的电子设备1,并可以应用于对上述图2A-图2B所示芯片系统200报错处理场景中,以降低芯片系统200因报错产生的宕机频率,提高芯片系统200的稳定性。该装置包括:信息接收模块601、次数判断模块602、指令查询模块603和指令触发模块604,各个模块的原理关系如下:
信息接收模块601,用于在接收到芯片模块21的报错信息时,确定报错信息的目标错误类型,报错信息中携带有产生报错信息的目标模块标识。
次数判断模块602,用于根据目标模块标识和目标错误类型,判断在预设时间段内目标模块产生指定类型的报错信息的总次数是否大于预设次数。
指令查询模块603,用于当总次数大于预设次数时,在数据库中查询出指定类型的报错信息在目标模块下对应的第一报错处理指令。
指令触发模块604,用于触发第一报错处理指令,报错处理指令用于停止目标模块的错误运行动作。
于一实施例中,指定类型为可修复错误类型。次数判断模块602用于:判断目标错误类型是否为可修复错误类型。当目标错误类型是可修复错误类型时,判断总次数是否大于预设次数。
于一实施例中,还包括:指令发送模块605,用于当目标错误类型是可修复错误类型时,发送重试指令至目标模块,重试指令用于指示目标模块重复发生报错信息的动作。
于一实施例中,指令查询模块603还用于当目标错误类型不是可修复错误类型时,在数据库中查询出目标错误类型在目标模块下对应的第二报错处理指令。指令触发模块604还用于触发第二报错处理指令,第二报错处理指令用于停止目标模块的错误运行动作。
于一实施例中,还包括:信息配置模块606,用于在在接收到芯片模块21的报错信息时,确定报错信息的目标错误类型之前,统计待处理芯片系统200的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块21时的错误等级,并为每个错误等级配置报错处理指令,生成数据库。
于一实施例中,错误等级包括:可自动修复等级、不可自动修复等级、非数据丢失等级和数据丢失等级中的一个或多个。
于一实施例中,报错处理指令包括:中断指令、门控时钟指令和电源关断指令中的一个或多个。
上述报错信息处理装置600的详细描述,请参见上述实施例中相关方法步骤的描述。
本发明实施例还提供了一种非暂态电子设备可读存储介质,包括:程序,当其在电子设备上运行时,使得电子设备可执行上述实施例中方法的全部或部分流程。其中,存储介质可为磁盘、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccess Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等。存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (16)

1.一种报错信息处理方法,其特征在于,包括:
在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型,所述报错信息中携带有产生所述报错信息的目标模块标识;
根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数;
当所述总次数大于所述预设次数时,在数据库中查询出所述指定类型的报错信息在所述目标模块下对应的第一报错处理指令;
触发所述第一报错处理指令,所述报错处理指令用于停止所述目标模块的错误运行动作。
2.根据权利要求1所述的报错信息处理方法,其特征在于,所述指定类型为可修复错误类型;所述根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数,包括:
判断所述目标错误类型是否为可修复错误类型;
当所述目标错误类型是所述可修复错误类型时,判断所述总次数是否大于所述预设次数。
3.根据权利要求2所述的报错信息处理方法,其特征在于,还包括:
当所述目标错误类型是所述可修复错误类型时,发送重试指令至所述目标模块,所述重试指令用于指示所述目标模块重复发生所述报错信息的动作。
4.根据权利要求2所述的报错信息处理方法,其特征在于,还包括:
当所述目标错误类型不是所述可修复错误类型时,在数据库中查询出所述目标错误类型在所述目标模块下对应的第二报错处理指令;
触发所述第二报错处理指令,所述第二报错处理指令用于停止所述目标模块的错误运行动作。
5.根据权利要求1所述的报错信息处理方法,其特征在于,在所述在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型之前,还包括:
统计待处理芯片系统的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块时的错误等级,并为每个错误等级配置报错处理指令,生成所述数据库。
6.根据权利要求5所述的报错信息处理方法,其特征在于,所述错误等级包括:可自动修复等级、不可自动修复等级、非数据丢失等级和数据丢失等级中的一个或多个。
7.根据权利要求5所述的报错信息处理方法,其特征在于,所述报错处理指令包括:中断指令、门控时钟指令和电源关断指令中的一个或多个。
8.一种报错信息处理装置,其特征在于,包括:
信息接收模块,用于在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型,所述报错信息中携带有产生所述报错信息的目标模块标识;
次数判断模块,用于根据所述目标模块标识和所述目标错误类型,判断在预设时间段内所述目标模块产生指定类型的报错信息的总次数是否大于预设次数;
指令查询模块,用于当所述总次数大于所述预设次数时,在数据库中查询出所述指定类型的报错信息在所述目标模块下对应的第一报错处理指令;
指令触发模块,用于触发所述第一报错处理指令,所述报错处理指令用于停止所述目标模块的错误运行动作。
9.根据权利要求8所述的报错信息处理装置,其特征在于,所述指定类型为可修复错误类型;所述次数判断模块用于:
判断所述目标错误类型是否为可修复错误类型;
当所述目标错误类型是所述可修复错误类型时,判断所述总次数是否大于所述预设次数。
10.根据权利要求9所述的报错信息处理装置,其特征在于,还包括:
指令发送模块,用于当所述目标错误类型是所述可修复错误类型时,发送重试指令至所述目标模块,所述重试指令用于指示所述目标模块重复发生所述报错信息的动作。
11.根据权利要求9所述的报错信息处理装置,其特征在于,所述指令查询模块还用于当所述目标错误类型不是所述可修复错误类型时,在数据库中查询出所述目标错误类型在所述目标模块下对应的第二报错处理指令;
所述指令触发模块还用于触发所述第二报错处理指令,所述第二报错处理指令用于停止所述目标模块的错误运行动作。
12.根据权利要求8所述的报错信息处理装置,其特征在于,还包括:
信息配置模块,用于在所述在接收到芯片模块的报错信息时,确定所述报错信息的目标错误类型之前,统计待处理芯片系统的报错信息的多个错误类型,并分别配置每种错误类型源于不同芯片模块时的错误等级,并为每个错误等级配置报错处理指令,生成所述数据库。
13.一种报错信息处理装置,其特征在于,包括:
寄存器,用于为芯片系统提供接口,存储有每种错误类型源于不同芯片模块时的错误等级,以及每个错误等级配置的报错处理指令;
输入检查接口,连接所述芯片系统,用于接收来自所述芯片系统的报错信号;
错误源过滤器,连接所述输入检查接口,用于基于所述寄存器的配置信息,对所述报错信号进行过滤;
等级注册模块,用于确定所述错误源过滤器过滤后的报错信号的错误等级,并基于所述寄存器的配置信息,确定所述报错信号对应的报错处理指令;
触发器,用于基于所述等级注册模块的确定结果,触发所述报错处理指令,所述报错处理指令用于停止所述报错信号对应的错误运行动作。
14.一种芯片系统,其特征在于,包括:
多个芯片模块;
如权利要求8至12中任一项或权利要求13所述的报错信息处理装置,用于处理所述芯片模块产生的报错信息。
15.一种电子设备,其特征在于,包括:
存储器,用以存储计算机程序;
处理器,用以执行所述计算机程序,以实现如权利要求1至7中任一项所述的方法。
16.一种非暂态电子设备可读存储介质,其特征在于,包括:程序,当其藉由电子设备运行时,使得所述电子设备执行权利要求1至7中任一项所述的方法。
CN202111670978.5A 2021-12-31 2021-12-31 报错信息处理方法、装置、系统、设备和存储介质 Pending CN116049249A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111670978.5A CN116049249A (zh) 2021-12-31 2021-12-31 报错信息处理方法、装置、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111670978.5A CN116049249A (zh) 2021-12-31 2021-12-31 报错信息处理方法、装置、系统、设备和存储介质

Publications (1)

Publication Number Publication Date
CN116049249A true CN116049249A (zh) 2023-05-02

Family

ID=86120533

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111670978.5A Pending CN116049249A (zh) 2021-12-31 2021-12-31 报错信息处理方法、装置、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN116049249A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116757858A (zh) * 2023-08-23 2023-09-15 保大坊科技有限公司 保险信息处理方法、终端设备和存储介质
CN116932272A (zh) * 2023-09-14 2023-10-24 飞腾信息技术有限公司 一种错误上报方法及微处理器
CN117009129A (zh) * 2023-09-14 2023-11-07 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116757858A (zh) * 2023-08-23 2023-09-15 保大坊科技有限公司 保险信息处理方法、终端设备和存储介质
CN116932272A (zh) * 2023-09-14 2023-10-24 飞腾信息技术有限公司 一种错误上报方法及微处理器
CN117009129A (zh) * 2023-09-14 2023-11-07 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备
CN116932272B (zh) * 2023-09-14 2023-11-21 飞腾信息技术有限公司 一种错误上报方法及微处理器
CN117009129B (zh) * 2023-09-14 2024-01-02 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备

Similar Documents

Publication Publication Date Title
CN116049249A (zh) 报错信息处理方法、装置、系统、设备和存储介质
EP3660681B1 (en) Memory fault detection method and device, and server
US6829729B2 (en) Method and system for fault isolation methodology for I/O unrecoverable, uncorrectable error
WO2021169260A1 (zh) 一种系统板卡电源检测方法、装置、设备及存储介质
CN104572517A (zh) 提供被请求数据的方法、控制器以及计算机系统
US6845469B2 (en) Method for managing an uncorrectable, unrecoverable data error (UE) as the UE passes through a plurality of devices in a central electronics complex
WO2018233170A1 (zh) 日志记录方法、装置、计算机设备及存储介质
CN117389790B (zh) 可恢复故障的固件检测系统、方法、存储介质及服务器
Du et al. Predicting uncorrectable memory errors for proactive replacement: An empirical study on large-scale field data
CN115981898A (zh) 一种内存可纠错误处理方法、装置、设备及可读存储介质
CN114741225A (zh) 用于处理硬件错误的装置及方法
CN114003416B (zh) 内存错误动态处理方法、系统、终端及存储介质
CN104020963A (zh) 一种防止误判硬盘读写错误的方法和装置
CN115509786A (zh) 一种报告故障的方法、装置、设备及介质
CN115562918A (zh) 计算机系统故障的测试方法、装置、电子设备及可读介质
CN110781042B (zh) 一种基于bmc检测ubm背板的方法、设备及介质
CN111190781A (zh) 服务器系统的测试自检方法
CN111124729A (zh) 一种故障盘判定方法、装置、设备及计算机可读存储介质
CN112256467B (zh) 错误类型判断系统及其方法
Dattatraya Dixit et al. Optimizing interrupt handling performance for memory failures in large scale data centers
CN117407207B (zh) 一种内存故障处理方法、装置、电子设备及存储介质
CN117076183B (zh) 一种错误上报方法、片上系统、计算机设备及存储介质
CN114003477B (zh) 慢盘诊断信息收集方法、系统、终端及存储介质
CN117076182B (zh) 一种错误上报方法、片上系统、计算机设备及存储介质
CN115543683B (zh) 单粒子翻转纠错方法、装置、电子设备以及可读存储介质

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