CN114741225A - 用于处理硬件错误的装置及方法 - Google Patents

用于处理硬件错误的装置及方法 Download PDF

Info

Publication number
CN114741225A
CN114741225A CN202210399086.4A CN202210399086A CN114741225A CN 114741225 A CN114741225 A CN 114741225A CN 202210399086 A CN202210399086 A CN 202210399086A CN 114741225 A CN114741225 A CN 114741225A
Authority
CN
China
Prior art keywords
interrupt
hardware
error
hardware error
label
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
CN202210399086.4A
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.)
Beijing Eswin Computing Technology Co Ltd
Original Assignee
Beijing Eswin Computing 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 Beijing Eswin Computing Technology Co Ltd filed Critical Beijing Eswin Computing Technology Co Ltd
Priority to CN202210399086.4A priority Critical patent/CN114741225A/zh
Publication of CN114741225A publication Critical patent/CN114741225A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例提供了一种用于处理硬件错误的装置、方法及存储介质,涉及计算机技术领域。该装置包括:中断控制器,其用于接收来自硬件的中断信号,并将中断信号对应的中断标号发送给中央处理器核;中央处理器核,其用于接收中断控制器发送的中断标号,根据中断标号确定发生的硬件错误,并对硬件错误进行相应的中断处理;硬件,其用于在检测到发生硬件错误时,产生中断信号,并将中断信号传输到中断控制器。本申请实施例提供的装置,基于中断上报的方式来处理硬件错误,使得硬件错误的处理和中央处理器CPU内部逻辑高度解耦,可以大大简化CPU的硬件设计,有效地降低CPU电路设计的复杂度。

Description

用于处理硬件错误的装置及方法
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种用于处理硬件错误的装置及方法。
背景技术
在中央处理器(central processing unit,简称CPU)和片上系统(System onChip,简称SoC)的设计中,通常会涉及硬件错误的处理。现有方案是通过总线信号的方式让CPU直接感知到硬件错误,进而让CPU进入异常处理,强行执行异常服务程序来处理硬件错误。该方案将导致CPU内部逻辑与硬件错误场景深度耦合,进而加大了电路设计的复杂度,加大了设计和验证的工作量。
发明内容
本申请实施例提供了一种用于处理硬件错误的装置及方法,旨在解决现有技术中的至少一个技术问题。
根据本申请实施例的第一方面,提供了一种用于处理硬件错误的装置,该装置包括:中断控制器,其用于接收来自硬件的中断信号,并将所述中断信号对应的中断标号发送给中央处理器核,其中,所述中断标号表示发生的不同的硬件错误;中央处理器核,其用于接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,并对所述硬件错误进行相应的中断处理;硬件,其用于在检测到发生硬件错误时,产生中断信号,并将所述中断信号传输到所述中断控制器。
在一个可能的实现方式中,所述装置还包括:状态寄存器,其用于存储每个中断信号对应的硬件错误信息。
在另一个可能的实现方式中,所述中断控制器,其具体用于在接收到多个中断信号时,将所述多个中断信号对应的硬件错误信息存储在所述状态寄存器中,并将所述多个中断信号汇聚后对应的一个中断标号发送给中央处理器核。
在另一个可能的实现方式中,所述中央处理器核,其具体用于根据接收到的所述中断标号查询所述状态寄存器,以确定发生的硬件错误。
在另一个可能的实现方式中,所述硬件包括多级高速缓存器和与外部设备连接的总线;所述中断信号对应的硬件错误包括:各级高速缓存器对内存进行的校验错误和外部设备触发的总线错误。
根据本申请实施例的第二方面,提供了一种硬件错误的处理方法,该方法包括:中断控制器接收来自硬件的中断信号,并将接收到的中断信号所对应的中断标号上报给中央处理器核,其中,所述中断信号是由硬件在检测到发生硬件错误时产生的,所述中断标号表示发生的不同的硬件错误;中央处理器核接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,并对所述硬件错误进行相应的中断处理。
在一个可能的实现方式中,所述中断控制器接收来自硬件的中断信号,并将接收到的中断信号所对应的中断标号上报给中央处理器核,包括:中断控制器在接收到多个中断信号时,将所述多个中断信号对应的硬件错误信息存储在状态寄存器中,并将所述多个中断信号汇聚后对应的一个中断标号发送给中央处理器核;所述中央处理器核接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,包括:中央处理器核根据接收到的所述中断标号查询所述状态寄存器,以确定发生的硬件错误。
在另一个可能的实现方式中,所述硬件包括多级高速缓存器和与外部设备连接的总线;所述中断信号对应的硬件错误包括:各级高速缓存器对内存进行的校验错误和外部设备触发的总线错误。
根据本申请实施例的第三方面,提供了一种计算机设备,包括:包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述任一项实施例所示的硬件错误的处理方法。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现上述第二方面所示的硬件错误的处理方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:
基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,可以大大简化CPU的硬件设计,有效地降低CPU电路设计的复杂度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种用于处理硬件错误的装置的结构示意图;
图2为本申请另一实施例提供的一种用于处理硬件错误的装置的结构示意图;
图3为本申请实施例提供的一种硬件错误的处理方法的流程示意图;
图4为应用本申请实施例提供的硬件错误的处理方法的系统示例的结构示意图;
图5为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
对于可靠性要求较高的电路设计,一般都会对内存做奇偶(parity)校验错误或错误检查和纠正(error correcting code,ecc)校验错误;外部设备的异常状态,非法地址的访问通常会以系统总线错误的形式反馈给CPU。所以,在CPU和SoC设计中,通常会涉及硬件错误的处理,例如:奇偶校验错误(parity check error),ecc错误(ecc error),总线错误(bus error)。
对于这些硬件错误的处理,通常是通过总线信号的方式让CPU直接感知到这些硬件错误,进而让CPU进入异常,强行执行异常服务程序来处理这些硬件错误。这样做的缺点是CPU内部逻辑与硬件错误场景深度耦合,加大了电路设计的复杂度,加大了设计和验证的工作量。
有鉴于此,本申请提出了一种用于处理硬件错误的装置,基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,CPU内部逻辑的设计几乎不需要考虑错误出现的场景,大大简化了CPU的硬件设计,有效地降低了CPU电路设计的复杂度。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1为本申请实施例提供的一种用于处理硬件错误的装置的结构示意图。如图1所示的装置10包括:中断控制器101、中央处理器CPU核102和硬件103,其中,
中断控制器101,其用于接收来自硬件103的中断信号,并将中断信号对应的中断标号发送给中央处理器核102,其中,中断标号表示发生的不同的硬件错误;
中央处理器核102,其用于接收中断控制器101发送的中断标号,根据中断标号确定发生的硬件错误,并对硬件错误进行相应的中断处理;
硬件103,其用于检测到发生硬件错误时,产生中断信号,并将中断信号传输到中断控制器101。
在该实施例中,当硬件103检测到发生硬件错误时,产生中断信号,并将中断信号传输到中断控制器101,中断控制器101可以将中断信号对应的中断标号上报给CPU核102,由于中断标号表示发生的不同的硬件错误,因此,CPU核102能够基于该中断标号确定发生的硬件错误,从而可以对硬件错误进行相应的中断处理。这种基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,可以大大简化CPU的硬件设计,有效地降低CPU电路设计的复杂度。
需要说明的是,在本申请实施例中,中断控制器101可以是处理器、内存控制器或者还可以是DMA(DirectMemory Access,直接存储器访问)控制器,其中,若采用内存控制器,其可以集成到处理器中,比如内存控制器作为处理器的一部分而与处理器中的处理核心连接,或者也可以是一个独立的芯片。
还需要说明的是,在本申请实施例中,硬件103可以包括位于CPU和主存储器之间的存储器,以及与外部设备连接的总线等。
图2为本申请另一实施例提供的一种用于处理硬件错误的装置的结构示意图。该图中与图1具有相同或类似功能的模块采用相同的标号表示,且不再赘述。如图2所示的装置包括:中断控制器101、CPU核102和硬件103,以及状态存储器104,其中,状态寄存器104,其用于存储每个中断信号对应的硬件错误信息。
在该实施例中,当硬件103检测到发生硬件错误时,产生中断信号,并将中断信号传输到中断控制器101,中断控制器101可以将中断信号对应的硬件错误信息存储在状态寄存器104中,同时将中断信号对应的中断标号上报给CPU核102,由于中断标号表示发生的不同的硬件错误,因此,CPU核102能够基于该中断标号在状态寄存器104中查询,以确定发生的硬件错误,从而可以对硬件错误进行处理。
本申请实施例中提供了一种可能的实现方式,中断控制器101,其具体用于在接收到多个中断信号时,将多个中断信号对应的硬件错误信息存储在状态寄存器104中,并将多个中断信号汇聚后对应的一个中断标号发送给中央处理器核102。
也就是说,中断控制器101在接收到多个中断信号时,可以将多个中断信号汇聚后所对应的一个中断标号上报给CPU核102,同时,将各个中断信号对应的硬件错误信息记录在状态寄存器104中,以便CPU核102基于接收到的中断标号查看状态寄存器104中记录的硬件错误信息,以确定发生的硬件错误,从而对不同的硬件错误进行相应的中断处理。
本申请实施例中还提供了另一种可能的实现方式,中央处理器核102,其具体用于根据接收到的中断标号查询状态寄存器104,以确定发生的硬件错误。
在该实施例中,CPU核102在接收到来自中断控制器101的中断标号后,由于该中断标号表示发生的不同的硬件错误,因此,CPU核102可以基于该中断标号查看状态寄存器中记录的硬件错误信息,以确定发生的硬件错误,从而对发生的硬件错误进行处理。
在该实施例中,若CPU核102接收到的是多个中断信号汇聚后所对应的一个中断标号,则可以基于接收到的中断标号进入不同的中断服务程序查看状态寄存器104中记录的硬件错误信息,确定发生的硬件错误,从而对不同的硬件错误进行相应的中断处理。
图3为本申请实施例提供的一种硬件错误的处理方法的流程示意图。如图3所示的方法包括:
S301、中断控制器接收来自硬件的中断信号,并将接收到的中断信号所对应的中断标号上报给中央处理器核。
其中,中断信号是由硬件在检测到发生硬件错误时产生的,中断标号表示发生的不同的硬件错误。
S302、中央处理器核接收中断控制器发送的中断标号,根据中断标号确定发生的硬件错误,并对硬件错误进行相应的中断处理。
在该实施例中,当硬件检测到发送硬件错误时产生中断信号,并将中断信号传输给中断控制器,中断控制器将该中断信号对应的中断标号上报给CPU核,CPU核根据接收到的中断标号确定发生的硬件错误,并对硬件错误进行相应的中断处理。
由于中断标号表示发生的不同的硬件错误,因此,CPU核能够根据中断标号确定发生的硬件错误。本申请实施例提供的方法,基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,可以大大简化CPU的硬件设计,有效地降低CPU电路设计的复杂度。
本申请实施例中还提供了另一种可能的实现方式,S301具体可以包括:中断控制器在接收到多个中断信号时,将多个中断信号对应的硬件错误信息存储在状态寄存器中,并将多个中断信号汇聚后对应的一个中断标号发送给中央处理器核。
S302具体可以包括:中央处理器核根据接收到的中断标号查询状态寄存器,以确定发生的硬件错误。
在该实施例中,中断控制器在接收到多个中断信号时,可以将多个中断信号进行汇聚后所对应的一个中断标号上报给CPU核,同时,将各个中断信号对应的硬件错误信息记录在状态寄存器中,CPU核则可以基于接收到的中断标号查看状态寄存器中记录的硬件错误信息,由此可以确定发生的硬件错误,进而对不同的硬件错误进行相应的中断处理。
也就是说,本申请实施例提供的硬件错误的处理方法,基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,相比于现有技术中通过总线信号的方式让CPU直接感知到硬件错误,进而让CPU进入异常处理,强行执行异常服务程序来处理硬件错误的方式,大大简化了CPU的硬件设计,有效地降低了CPU电路设计的复杂度。
应理解,在上述各个实施例中,硬件包括多级高速缓存器和与外部设备连接的总线。中断信号对应的硬件错误包括:各级高速缓存器对内存进行的校验错误和外部设备触发的总线错误。
高速缓存cache存储器是位于CPU和主存储器DRAM(Dynamic Random AccessMemory,动态随机存取存储器)之间的存储器,其规模较小,但速度很高,通常由SRAM(Static Random Access Memory静态存储器)组成。cache的功能是提高CPU数据输入输出的速率。CPU的速度远高于内存,当CPU直接从内存中存取数据时要等待一定时间周期,而Cache则可以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从cache中直接调用,这样就避免了重复存取数据,减少了CPU的等待时间,因而提高了系统的效率。
多级cache包括L1cache(一级高速缓存)和L2cache(二级高速缓存),以及L3cache(三级高速缓存),其中,L1cache主要是集成在CPU内部,L2cache集成在主板上或是CPU上。L1Cache包括L1I cache(一级指令高速缓存)和L1D cache(一级数据高速缓存),其中,L1I cache负责存储指令,L1D cache负责存储数据。两者的区别是L1D cache中的数据可以写回,L1I cache中的数据是只读的。
在本申请实施例中,中断信号对应的硬件错误可以包括:L1 I/D cache对内存进行的校验错误、L2 cache对内存进行的校验错误、L3 cache对内存进行的校验错误,以及外部设备触发的总线错误。
图4为应用本申请实施例提供的硬件错误的处理方法的系统示例的结构示意图。下面结合图4,对本申请实施例提供的一种硬件错误的处理方法的技术方案进行详细的描述。如图4所示的系统,包括:处理装置和外部设备,其中,处理装置包括:中断控制器401、CPU核402和硬件403。硬件403可以包括:一级指令高速缓存器L1 I cache、一级数据高速缓存器L1D cache、二级高速缓存器L2 cache、总线BUS中的一个或多个。
下面,以ecc error和bus error这两类硬件错误为例,对本申请的技术方案进行详细的阐述。
若硬件403为L1 I/D cache,L1 I/D cache对L1 I/D cache的内存(memory)进行ecc校验。如果某次读/写操作引发了ecc error,L1 I/D cache则产生一个中断信号L1_ecc_int给到中断控制器(interrupt controller)401。本次读/写操作不受任何影响,即:读/写操作忽略该ecc error。
若硬件403为L2 cache,L2 cache对L2 cache memory进行ecc校验的过程,与L1I/D cache对L1 I/D cache memory进行ecc校验的过程类似,为了描述的简洁,在此不再赘述。
CPU IP访问外部设备时,如果外部设备(device)返回外部设备出错响应(bus_err_resp),CPU IP内的总线BUS模块产生一个中断信号bus_err_int给到中断控制器401。BUS模块的其他逻辑忽略bus error信号,逻辑行为不受bus error影响。
中断控制器401汇聚中断信号,并将中断信号对应的中断标号上报给CPU核(CPUcore)402,CPU核进入中断服务程序,根据中断标号来对不同的硬件错误进行相应的中断处理。
需要说明的是,中断标号是中断控制器401输出给CPU核402的信号,用于表示发生的不同的硬件错误。CPU核402根据中断标号进入不同的中断服务程序,以对不同的硬件错误进行相应的中断处理。
第一种情况:中断控制器401可以不将多个中断信号进行汇聚,将各自对应的中断标号上报给CPU核402。
例如:如果某次读/写操作引发了ecc error,L1 I cache则产生一个中断信号L1_ecc_int给到中断控制器401,中断控制器401将该中断信号L1_ecc_int对应的中断标号“0”上报给CPU核402。
如果某次读/写操作引发了ecc error,L1 D cache则产生一个中断信号L1_ecc_int给到中断控制器401,中断控制器401将该中断信号L1_ecc_int对应的中断标号“1”上报给CPU核402。
如果某次读/写操作引发了ecc error,L2 cache则产生一个中断信号L2_ecc_int给到中断控制器401,中断控制器401将该中断信号L2_ecc_int对应的中断标号“2”上报给CPU核402。
CPU IP访问外部设备时,如果外部设备返回外部设备出错响应(bus_err_resp),CPU IP内的总线BUS模块产生一个中断信号bus_err_int给到中断控制器401,中断控制器401将该中断信号bus_err_int对应的中断标号“3”上报给CPU核402。
第二种情况:多个中断信号汇聚后可以只占用一个中断标号,中断控制器401将多个中断信号汇聚后的中断信号对应的一个中断标号上报给CPU核402。
例如:中断控制器401将多个中断信号L1_ecc_int、L2_ecc_int、bus_err_int可以利用一个“或门”汇聚成一个中断信号err_int,并将该中断信号err_int对应的中断标号“4”上报给CPU核402。
同时,通过状态寄存器来记录各个中断信号对应的硬件错误,例如:中断信号L1_ecc_int对应的硬件错误为L1 I/D cache在某次读/写操作引发的ecc error;中断信号L2_ecc_int对应的硬件错误为L2 cache在某次读/写操作引发的ecc error;中断信号bus_err_int对应的硬件错误为CPU IP访问外部设备时触发的bus error。
CPU核402根据接收到的中断标号(例如:中断标号“0”,或者,中断标号“1”,或者,中断标号“2”,或者,中断标号“3”,或者,中断标号“4”)进入中断服务程序查看状态寄存器中记录的硬件错误,从而可以确定发生的硬件错误。
与现有技术相比,本申请实施例提供的方法,基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,CPU内部逻辑的设计几乎不需要考虑错误出现的场景,大大简化了CPU的硬件设计,有效地降低了CPU电路设计的复杂度。
需要说明的是,在本申请的上述各实施例中,CPU核对硬件错误的具体处理过程,可以采用现有相关技术实现,为了描述的简洁,在此不再赘述。
还需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现本申请实施例提供的硬件错误的处理方法的步骤,与现有技术相比可实现:基于中断上报的方式来处理硬件错误,使得硬件错误的处理和CPU内部逻辑高度解耦,CPU内部逻辑的设计几乎不需要考虑错误出现的场景,大大简化了CPU的硬件设计,有效地降低了CPU电路设计的复杂度。
在一个可选实施例中提供了一种计算机设备,如图5所示,图5所示的计算机设备50包括:处理器501和存储器503。其中,处理器501和存储器503相连,如通过总线502相连。
处理器501可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器501也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线502可包括一通路,在上述组件之间传送信息。总线502可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线502可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器503可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器503用于存储执行本申请实施例的计算机程序,并由处理器501来控制执行。处理器501用于执行存储器503中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。

Claims (10)

1.一种用于处理硬件错误的装置,其特征在于,所述装置包括:
中断控制器,其用于接收来自硬件的中断信号,并将所述中断信号对应的中断标号发送给中央处理器核,其中,所述中断标号表示发生的不同的硬件错误;
中央处理器核,其用于接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,并对所述硬件错误进行相应的中断处理;
硬件,其用于在检测到发生硬件错误时,产生中断信号,并将所述中断信号传输到所述中断控制器。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:状态寄存器,其用于存储每个中断信号对应的硬件错误信息。
3.根据权利要求2所述的装置,其特征在于,所述中断控制器,其具体用于在接收到多个中断信号时,将所述多个中断信号对应的硬件错误信息存储在所述状态寄存器中,并将所述多个中断信号汇聚后对应的一个中断标号发送给中央处理器核。
4.根据权利要求2所述的装置,其特征在于,所述中央处理器核,其具体用于根据接收到的所述中断标号查询所述状态寄存器,以确定发生的硬件错误。
5.根据权利要求1-4中任一项所述的装置,其特征在于,所述硬件包括多级高速缓存器和与外部设备连接的总线;所述中断信号对应的硬件错误包括:各级高速缓存器对内存进行的校验错误和外部设备触发的总线错误。
6.一种硬件错误的处理方法,其特征在于,所述方法包括:
中断控制器接收来自硬件的中断信号,并将接收到的中断信号所对应的中断标号上报给中央处理器核,其中,所述中断信号是由硬件在检测到发生硬件错误时产生的,所述中断标号表示发生的不同的硬件错误;
中央处理器核接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,并对所述硬件错误进行相应的中断处理。
7.根据权利要求6所述的方法,其特征在于,所述中断控制器接收来自硬件的中断信号,并将接收到的中断信号所对应的中断标号上报给中央处理器核,包括:
中断控制器在接收到多个中断信号时,将所述多个中断信号对应的硬件错误信息存储在状态寄存器中,并将所述多个中断信号汇聚后对应的一个中断标号发送给中央处理器核;
所述中央处理器核接收所述中断控制器发送的中断标号,根据所述中断标号确定发生的硬件错误,包括:
中央处理器核根据接收到的所述中断标号查询所述状态寄存器,以确定发生的硬件错误。
8.根据权利要求6或7所述的方法,其特征在于,所述硬件包括多级高速缓存器和与外部设备连接的总线;所述中断信号对应的硬件错误包括:各级高速缓存器对内存进行的校验错误和外部设备触发的总线错误。
9.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行所述计算机程序以实现权利要求6-8中任一项所述的硬件错误的处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求6-8中任一项所述的硬件错误的处理方法的步骤。
CN202210399086.4A 2022-04-15 2022-04-15 用于处理硬件错误的装置及方法 Pending CN114741225A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210399086.4A CN114741225A (zh) 2022-04-15 2022-04-15 用于处理硬件错误的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210399086.4A CN114741225A (zh) 2022-04-15 2022-04-15 用于处理硬件错误的装置及方法

Publications (1)

Publication Number Publication Date
CN114741225A true CN114741225A (zh) 2022-07-12

Family

ID=82282329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210399086.4A Pending CN114741225A (zh) 2022-04-15 2022-04-15 用于处理硬件错误的装置及方法

Country Status (1)

Country Link
CN (1) CN114741225A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117009129A (zh) * 2023-09-14 2023-11-07 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备
CN117076183A (zh) * 2023-09-28 2023-11-17 飞腾信息技术有限公司 一种错误上报方法、片上系统、计算机设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117009129A (zh) * 2023-09-14 2023-11-07 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备
CN117009129B (zh) * 2023-09-14 2024-01-02 飞腾信息技术有限公司 一种错误上报方法、微处理器及计算机设备
CN117076183A (zh) * 2023-09-28 2023-11-17 飞腾信息技术有限公司 一种错误上报方法、片上系统、计算机设备及存储介质
CN117076183B (zh) * 2023-09-28 2024-02-02 飞腾信息技术有限公司 一种错误上报方法、片上系统、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN105589762B (zh) 存储器装置、存储器模块和用于纠错的方法
CN114741225A (zh) 用于处理硬件错误的装置及方法
EP0032957B1 (en) Information processing system for error processing, and error processing method
CN104572517A (zh) 提供被请求数据的方法、控制器以及计算机系统
CN103164523A (zh) 数据一致性检查方法、装置及系统
CN102135925B (zh) 用于检测错误检查和纠正内存的方法和装置
CN105373345B (zh) 存储器设备和模块
CN116049249A (zh) 报错信息处理方法、装置、系统、设备和存储介质
US8738989B2 (en) Method and apparatus for detecting free page and a method and apparatus for decoding error correction code using the method and apparatus for detecting free page
CN115509609A (zh) 数据处理装置和方法
CN114741250A (zh) 用于验证多级高速缓存器的系统及方法
CN100501686C (zh) 在差错处理程序执行期间处理差错的方法、处理器及系统
CN111221775B (zh) 处理器、缓存处理方法及电子设备
US20230325276A1 (en) Error correction method and apparatus
US9612891B2 (en) Memory controller, information processing apparatus, and method of controlling information processing apparatus
CN111221681A (zh) 一种存储器的修复方法及装置
CN116126581A (zh) 内存故障处理方法、装置、系统、设备及存储介质
CN116125853A (zh) 集成电路的安全控制方法、装置、存储介质及电子设备
US8589722B2 (en) Methods and structure for storing errors for error recovery in a hardware controller
CN111625199B (zh) 提升固态硬盘数据通路可靠性的方法、装置、计算机设备及存储介质
CN114415970A (zh) 分布式存储系统的磁盘故障处理方法、装置及服务器
CN117076183B (zh) 一种错误上报方法、片上系统、计算机设备及存储介质
CN117076182B (zh) 一种错误上报方法、片上系统、计算机设备及存储介质
JP2015121944A (ja) メモリアクセス制御装置、メモリアクセス制御システム、メモリアクセス制御方法、及び、メモリアクセス制御プログラム
CN111404715B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100176 Room 101, 1f, building 3, yard 18, Kechuang 10th Street, Beijing Economic and Technological Development Zone, Beijing

Applicant after: Beijing yisiwei Computing Technology Co.,Ltd.

Address before: 100176 Room 101, 1f, building 3, yard 18, Kechuang 10th Street, Beijing Economic and Technological Development Zone, Beijing

Applicant before: Beijing yisiwei Computing Technology Co.,Ltd.