CN115934389A - 用于错误报告和处理的系统和方法 - Google Patents
用于错误报告和处理的系统和方法 Download PDFInfo
- Publication number
- CN115934389A CN115934389A CN202210931865.4A CN202210931865A CN115934389A CN 115934389 A CN115934389 A CN 115934389A CN 202210931865 A CN202210931865 A CN 202210931865A CN 115934389 A CN115934389 A CN 115934389A
- Authority
- CN
- China
- Prior art keywords
- error
- errors
- message
- error message
- handler
- 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
Images
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/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- 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/0703—Error 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/0706—Error 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
-
- 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/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0781—Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
-
- 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/0703—Error 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/0793—Remedial or corrective actions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
提供了一种用于错误报告和处理的系统和方法。该系统包括存储错误处理器的存储器、被配置为执行错误处理器的处理器以及缓冲器。错误处理器被配置为从片上系统(SOC)平台接收错误消息。错误消息指示SOC平台中已经发生了多个错误,并且缓冲器存储错误消息。此外,错误处理器被配置为使用单个中断来报告错误消息。此外,错误处理器被配置为使用单个中断来处理错误消息中的错误。
Description
相关申请的交叉引用
该专利申请要求于2021年8月4日在印度专利局提交的印度临时申请No.202141035134的优先权,其公开内容通过引用整体结合到本文中。
技术领域
本文公开的实施例涉及一种错误处理方法和系统,尤其涉及一种用于错误报告和处理的方法和系统。
背景技术
片上系统(SOC)是集成了计算机或其它电子系统的所有或大部数据包件的集成电路。这些组件通常包括中央处理单元(CPU)、存储器装置、存储器接口、片上输入/输出(I/O)装置和I/0接口。
由于诸如设计错误、定时问题和存储器错误的各种原因,在包括SOC的系统中可能发生致命错误。当致命错误发生时,系统立即停机。致命错误的可靠检测对于在系统中部署的要求非常高可靠性的存储器装置(例如,固态驱动器(SSD)等)是非常重要的。在复杂SOC中,可能存在数百个需要检测和报告的这种错误。一种检测致命错误的方法使用中断和相关上下文,其指定了关于错误的更多细节。然而,对于固件单元和硬件架构两者来说,针对每个错误维持一个中断位并针对每个错误提供附加状态寄存器是艰巨的任务。这增加了管理中断服务例程(ISR)以对每个错误进行解码的逻辑、设计复杂性以及固件代码。
图1示出了用于处理致命错误的现有方案。在现有方案中,一个中断位专用于每个错误,并且针对每个错误维护错误上下文。然而,该方案需要数百个中断位和数千个错误上下文寄存器。因此,固件单元将变得极其复杂以处理如此多的中断。
发明内容
本公开的示例实施例提供了一种用于错误报告和处理的系统。该系统包括存储错误处理器的存储器、被配置为执行错误处理器的处理器和缓冲器。错误处理器被配置用于从片上系统(SOC)平台接收错误消息。错误消息指示SOC平台中已经发生了多个错误,并且缓冲器存储错误消息。错误处理器被配置为使用单个中断来报告错误消息。此外,错误处理器被配置为使用单个中断来处理错误消息中的错误。
本公开的示例实施例提供了一种用于错误报告和处理的方法。该方法包括:由系统从SOC平台接收错误消息,其中该错误消息指示SOC平台中已经发生多个错误,并且该系统包括用于存储错误消息的缓冲器。该方法还包括:由系统使用单个中断报告错误消息,以及由系统使用单个中断处理错误消息中的多个错误。
在实施例中,该处理包括:检测在SoC平台中已经发生错误,引发与错误对应的中断,使用固件单元基于中断来处理错误消息,基于处理的错误消息来执行至少一个动作,清除中断,以及执行i)发送针对处理的错误消息的确认消息和ii)等待另一中断以进行处理中的至少一者。
在实施例中,使用固件单元处理错误消息包括:确定错误消息包括两个错误,确定两个错误中的优先级,以及基于优先级处理两个错误中的一个。
在实施例中,错误处理器以一次一个的方式顺序地处理两个错误中的每一个。
在实施例中,该系统包括至少一个设计块,用于保持错误处理器的设计状态,直到所有错误都被固件单元处理。
在实施例中,错误消息包括设计块标识符(ID)、每个错误的操作码和每个错误的上下文信息中的至少一个。
在实施例中,错误中的一个是致命错误,其中该致命错误包括静态随机存取存储器(SRAM)读取错误、SRAM写入错误、高级可扩展接口(AXI)总线访问错误、AXI总线奇偶校验错误、计数器下溢错误、计数器上溢错误、先进先出(FIFO)上溢、FIFO下溢、数据包字段损坏错误、访问未初始化位置和不支持的配置中的至少一个。
根据本公开的示例实施例,一种用于错误处理的系统包括存储错误处理器的存储器、被配置为执行错误处理器的处理器以及缓冲器。错误处理器被配置为从片上系统的多个硬件块中的每一个接收多个错误请求,其中每个错误请求指示由于对应的硬件块而在SoC中已经发生错误,并且缓冲器存储包括关于错误的信息的错误消息。错误处理器使用单个中断来处理错误消息的错误。
在实施例中,每个错误请求包括标识对应硬件块的标识符和标识对应错误的类型的操作码。在实施例中,在处理与硬件块之一相关联的错误请求之后,错误处理器向该一个硬件块发送确认消息。确认消息可以包括标识符和操作码。在实施例中,每个错误请求还包括解释相应错误的上下文信息。
附图说明
在附图中示出了本文所公开的实施例,在所有附图中,相同的附图标记表示各个附图中的对应部分。参考附图,从以下描述中将更好地理解本文中的实施例,在附图中:
图1示出了用于处理致命错误的现有方案;
图2示出了根据本公开的示例实施例的用于错误报告和处理的系统的各种硬件组件;
图3是示出根据本公开的示例实施例的用于错误报告和处理的方法的流程图;
图4示出了根据本公开的示例实施例的用于处理致命错误的方案;以及
图5示出了根据本公开的示例实施例的示出处理致命错误的序列图。
具体实施方式
本公开的至少一个实施例提供了用于错误报告和处理的方法和系统。
本公开的至少一个实施例能够使用单个中断和单个窗口来报告SOC系统或平台中的所有致命错误事件,以报告错误的上下文。例如,在第一时间段期间发生的所有致命错误事件可以在发生于第一时间段之后的第二时间段期间使用单个中断一起报告。这可节省许多中断位(例如,多达800个中断位)和存储错误上下文信息的若干特殊功能寄存器(SFR)(例如,2000个或更多个SFR)。
参考在附图中示出并在以下描述中详细描述的非限制性实施例,更全面地解释本文的实施例及其各种特征和细节。本文所使用的示例仅旨在促进对可以实践本文的实施例的方式的理解,并且进一步使得本领域技术人员能够实践本文的实施例。因此,这些示例不应被解释为限制本文的实施例的范围。
本文描述的至少一个实施例实现了一种用于错误报告和处理的系统。该系统可以包括错误处理器(error handler)、存储器和缓冲器。错误处理器被配置为从SOC或包括SOC的系统(例如,SOC平台)接收错误消息。错误消息指示SOC平台中已经发生一个或多个错误,并且缓冲器存储错误消息。此外,错误处理器被配置为使用单个中断和单个窗口来报告错误消息,以报告错误消息的上下文。此外,错误处理器被配置为使用单个中断来处理错误消息中的多个错误。
所提出的方法可以利用单个中断来报告错误的上下文,从而可以一起报告SOC平台中的所有致命错误事件,以便节省更多的中断位(例如,多达800个中断位)和更多的存储错误上下文的功能寄存器(例如,2000个或更多个特殊功能寄存器)。错误的上下文可以提供关于每个错误的信息。
基于所提出的方法,节省了用于存储与错误相关的附加上下文的特殊功能寄存器(SFR)空间。错误处理器在一个地方获得与错误消息有关的所有必要上下文。此外,中断位的数量可以显著减少。在实施例中的固件单元仅有一个中断要处理。由于独特错误的数量很少,因此消息格式可以保持相似错误的标准,使得错误解析更简单。
该方法可以使设计块能够保持设计状态,直到由固件单元(例如,固件)处理错误。通过保持设计状态,所提出的方法是指保持各个有限状态机(FSM)的状态和在相同状态中的接口,直到由固件单元处理错误。这保证了固件单元可以在其改变前生成该设计和静态随机存取存储器(SRAM)上下文的准确的快照。一直发生这种保持,直到由“设计块”报告的特定错误被处理。在所提出的方法中,设计块之一保持设计状态和错误报告,直到上一个设计块已经完成其报告。术语“设计块”和“硬件块”在本公开中可互换地使用。设计块可指在系统中执行特定功能的硬件电路(例如,中断控制器、调度器、仲裁器等)。该方法可用于对各种错误施加优先级。该方法可用于对类似的错误消息施加共同的结构,而不管变化的字段大小。该方法可用于对多个致命错误排序并按一次一个的方式报告这些致命错误。该方法可以用于以较少的逻辑复杂度和时间进行错误报告和处理。该方法可以用于减少高速非易失性存储器(NVMe)控制器中的逻辑门。
图2示出了根据本公开的示例实施例的系统(100)。系统(100)可以是例如但不限于数据中心、服务器、膝上型计算机、台式计算机、笔记本、装置到装置(D2D)装置、交通工具到万物(V2X)装置、智能电话、可折叠电话、智能TV、平板电脑、沉浸式装置和物联网(IoT)装置。
该系统(100)包括处理器(110)、通信器(120)、存储器(130)、错误处理器(140)、缓冲器(150)、SOC平台(160)和固件单元(170)。处理器(110)与通信器(120)、存储器(130)、错误处理器(140)、缓冲器(150)、SOC平台(160)和固件单元(170)耦合。通信器120可以是收发器或调制解调器,以使得能够跨计算机网络进行通信。
本文描述的系统和方法涉及错误处理和报告基础设施。错误处理和报告基础设施可用于跨整个SoC平台(160)检测错误,跨作为电子装置/系统(100)的部分的多个SoC平台(160)检测错误,或在SoC平台(160)中的任何粒度水平下检测错误。
错误处理器(140)可以与两个或更多个硬件块接口,以从硬件块捕获错误或其他状态消息,并在适当时对它们进行操作。硬件块可以是设计块。错误处理器(140)可以执行诊断例程,所述诊断例程执行各种功能,例如重置硬件块、重新配置硬件块或禁用硬件块。错误处理器(140)可以由逻辑电路实现,或者可以是存储在存储器130上以供处理器110执行的计算机程序。在某些情况下,可以使用日志记录和其它报告特征来警告用户、系统管理员或者出现故障或失灵的其它硬件块。
错误处理器(140)从SOC平台(160)接收错误消息。错误消息指示SOC平台(160)中已经发生一个或多个错误,并且缓冲器(150)存储错误消息。错误可以包括一个或多个致命错误,其中致命错误可以是例如但不限于SRAM读取错误、SRAM写入错误、AXI总线访问错误、AXI总线奇偶校验错误、计数器下溢错误、计数器上溢错误、FIFO上溢、FIFO下溢、数据包字段损坏错误、访问未初始化位置以及不支持的配置。SRAM RD/WR错误的上下文(例如,上下文信息)的示例可为SRAM地址、SRAM数据和ECC签名。
在示例实施例中,错误消息包括设计块标识符(ID)、用于至少一个错误的操作码、所述至少一个错误的上下文以及关于所述至少一个错误的细节。下面是如表1中所示的错误消息的格式,例如:
表1
例如,错误消息(ERRMSG)可以利用设计块ID来识别设计块中的哪一个导致了一个或多个错误,利用操作码和解释每个错误的上下文信息来识别这些错误的类型。
下面是如表2中所示的错误消息确认的格式,例如:
块ID | 错误操作 | RSVD |
设计块ID | 用于特定错误的操作码 |
表2
设计块可以向错误处理器140发送错误消息,并且错误处理器140可以用确认其已经接收到错误消息的错误消息确认(ERRMSGACK)来响应设计块。
消息格式可以对于每个独特错误保持通用。错误消息中的嵌入字段将指示独特错误类型。这为每个错误节省了大量的解析器代码。表3指示例如SRAM错误的结构。
表3
表4示出了AXI错误的结构。
表4
此外,错误处理器(140)使用单个中断Error_Intr和单个窗口报告错误消息的上下文。此外,错误处理器(140)使用单个中断和单个窗口处理错误消息中的多个错误。单个窗口报告错误消息的上下文。例如,该窗口可以是用于向用户呈现数据的图形用户界面的窗口。例如,错误处理器(140)不是对错误消息中的每个错误引发单个中断,而是对错误消息中的所有错误引发单个中断。
在实施例中,错误处理器(140)检测出在SoC平台(160)中已经发生一个或多个错误。此外,错误处理器(140)引发与错误相对应的中断,并使用固件单元(170)基于该中断来处理错误消息。在实施例中,通过确定错误消息包括至少两个错误、确定所述至少两个错误中的优先级、以及基于优先级处理错误消息来处理错误消息。在示例中,当SRAM错误和计数器溢出错误一起发生时,所提出的方法将优先首先处理计数器溢出错误,因为那指向设计问题并且SRAM错误仅仅是与处理相关的错误。另一示例是优先处理来自关键设计块的错误。例如,期望关键设计块随着较高优先级而具有高可靠性。
此外,错误处理器(140)基于处理的错误消息执行动作。该动作可以是例如但不限于生成电子装置的状态的快照、重置电子装置等。此外,错误处理器(140)清除与包括一个或多个错误的错误消息相对应的经处理的中断。此外,错误处理器(140)发送针对经处理的错误消息的确认消息。例如,错误处理器(140)可以向从其接收到错误消息的设计块发送确认消息。可替代地,错误处理器(140)等待另一个中断来处理。此外,错误处理器(140)在一个实例中处理所述至少两个错误中的单个错误。例如,错误处理器(140)可以一次一个的方式顺序地处理所述至少两个错误中的每一个。
在实施例中,系统(100)包括至少一个设计块,以保持错误处理器(140)的设计状态,直到由固件单元(170)处理错误。当错误发生时使用将要存储在缓冲器(150)中的消息来报告错误,而不是每错误一个中断地报告。对于所有错误仅提供一个缓冲器(150)。消息结构将传达关于错误的所有必要信息。当发生错误时,相应的错误消息被存储在缓冲器(150)中,并且在发生多个错误之后引发中断。固件单元(170)处理错误消息并采取行动。
错误处理器(140)可以由模拟或数字电路物理地实现,例如逻辑门、集成电路、微处理器、微控制器、存储器电路、无源电子组件、有源电子组件、光学组件、硬连线电路等,并且可以可选地由固件驱动。
此外,处理器(110)被配置为执行存储在存储器(130)中的指令并且执行各种处理。通信器(120)被配置为在内部硬件组件之间内部通信,并且经由一个或多个网络与外部装置进行通信。存储器(130)还存储将要由处理器(110)执行的指令。存储器(130)可以包括非易失性存储元件。这种非易失性存储元件的示例可以包括磁性硬盘、光盘、软盘、闪速存储器、或者电可编程存储器(EPROM)或电可擦除可编程(EEPROM)存储器的形式。另外,在一些示例中,存储器(130)可以被认为是非暂时性存储介质。术语“非暂时性”可以指示存储介质不被体现在载波或传播信号中。然而,术语“非暂时性”不应被解释为存储器(130)是不可移动的。在某些示例中,非瞬态存储介质可存储可以随时间变化的数据(例如,在随机存取存储器(RAM)或高速缓存中)。
尽管图2示出了系统(100)的各种硬件组件,但是应当理解,其它实施例不限于此。在其它实施例中,系统(100)可以包括比图2所示的更少或更多的组件,此外,组件的标签或名称仅用于说明目的,而不限制本发明的范围。一个或多个组件可以组合在一起以执行系统(100)中的相同或基本相似的功能。
图3是示出根据本公开的示例实施例的用于错误报告和处理的方法的流程图(300)。在步骤302,该方法包括从SOC平台(160)接收错误消息。例如,错误处理器140可以从SOC平台(160)的设计块之一接收错误消息。错误消息可以包括关于多个错误的信息。在步骤304,该方法包括使用单个中断和单个窗口报告错误消息以报告错误消息的上下文。在步骤306,该方法包括使用单个中断和单个窗口来处理错误消息中的错误。
所提出的方法可以使用单个中断和单个窗口报告多个错误的上下文来报告SOC平台(160)中的所有致命错误事件,以节省更多的中断位(例如,多达800个中断位)和存储错误上下文的更多的特殊功能寄存器(例如,2000个或更多个特殊功能寄存器)。
基于所提出的方法,节省了用于存储与多个错误相关的附加上下文的特殊功能寄存器(SFR)空间。错误处理器(140)在一个地方得到与错误消息有关的所有必要上下文。可以显著地减少中断位的数量。固件单元(170)仅有一个中断要处理。由于独特错误的数量很少,因此消息格式可以保持相似错误的标准,使得错误解析更简单。
该方法使得每个设计块能够保持设计状态,直到固件单元(170)处理了错误。在所提出的方法中,设计块之一保持设计状态和错误报告,直到上一个设计块完成其报告。该方法可用于对各种错误施加优先级。该方法可用于对类似的错误消息施加共同的结构,而不管变化的字段大小。该方法可用于对多个致命错误排序并按一次一个的方式报告这些错误。该方法可以用于以低逻辑复杂度和较少时间进行错误报告和处理。该方法可用于减少NVMe控制器(未示出)中的逻辑门。
图4示出了所提出的根据本公开的示例实施例的用于处理致命错误的方案(400)。参照图4,使用存储在缓冲器(150)中的错误消息来报告多个错误,而不是通过每错误1个中断来报告。对于所有错误仅提供一个缓冲器(150)。消息结构将传达关于错误的所有必要信息。当发生多个错误时,在缓冲器(150)中存储错误消息,并且引发中断。换言之,缓冲器(150)一次仅存储一个错误消息。在*(如图5中所示的)流程图中,示出了一次仅接受一个错误消息并将其存储在缓冲器(150)中。只有在这个错误消息由固件单元(170)处理之后,才接受下一个错误消息用于处理。固件单元(170)处理错误消息并采取行动。
流程图(300)中的各种动作、块、步骤等可以以所呈现的顺序执行、以不同的顺序执行或者同时执行。此外,在一些实施例中,在不脱离本发明的范围的情况下,动作、块、步骤等中的一些可以省略、添加、修改、跳过等。
图5示出了根据本公开的示例实施例的图示处理致命错误的序列图(500)。参考图5,在1a处,第一设计块向错误处理器(140)发送第一错误消息请求。第一错误消息请求可以指示第一设计块已经在SOC平台(160)中引起一个或多个第一错误,并且识别一个或多个第一错误的类型。在1b处,第二设计块向错误处理器(140)发送第二错误消息请求。第二错误消息请求包括第一错误消息,其指示第二设计块已经在SOC平台(160)中引起一个或多个第二错误,并识别一个或多个第二错误的类型。错误处理器(140)分别从第一设计块和第二设计块接收第一错误消息请求和第二错误消息请求。在2处,错误处理器(140)将从第一设计块接收的第一错误消息请求发送到缓冲器(150)。例如,错误处理器(140)可以使用网络接口卡(NIC)向缓冲器(150)发送第一错误消息请求。在3处,缓冲器(150)响应于接收到第一错误消息请求而存储第一错误消息。在4处,错误处理器(140)引发中断。在5处,固件单元(170)检查全局特殊函数寄存器(GSFR)以确定是否发生致命错误。如果没有发生致命错误,则固件单元(170)执行动作。如果发生了致命错误,则固件单元(170)通过从缓冲器(150)读取错误消息来执行动作。在6处,固件单元(170)清除错误中断并等待更多中断或使系统停机。在7处,缓冲器(150)向错误处理器(140)发送错误确认(ERRACK)。在8处,错误处理器(140)向第一设计块发送错误消息确认。在清除第一错误消息请求之后,在9处,错误处理器(140)将从第二设计块接收的第二错误消息请求发送到缓冲器(150)。
本文公开的实施例可以通过在至少一个硬件装置上运行且执行网络管理功能以控制元件的至少一个软件程序来实现。所述元件可以是硬件装置中的至少一个,或者硬件装置和软件模块的组合。
尽管已经参照其实施例具体示出和描述了本发明构思,但是将理解,在不脱离所附权利要求的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。
Claims (20)
1.一种用于错误报告和处理的系统,包括:
存储器,其存储错误处理器;
处理器,其被配置为执行所述错误处理器;以及
缓冲器,
其中,所述错误处理器被配置为:
从片上系统平台接收错误消息,其中,所述错误消息指示所述片上系统平台中已经发生了多个错误,并且所述缓冲器存储所述错误消息;
使用单个中断报告所述错误消息;以及
使用所述单个中断来处理所述错误消息中的所述多个错误。
2.根据权利要求1所述的系统,其中对所述多个错误的处理包括:
检测在所述片上系统平台中已经发生了所述多个错误;
引发与所述多个错误相对应的中断;
使用固件单元基于所述中断来处理所述错误消息;
基于经处理的所述错误消息执行至少一个动作;
清除所述中断;以及
执行
i)发送针对所述经处理的错误消息的确认消息,和
ii)等待另一中断以处理中的至少一者。
3.根据权利要求2所述的系统,其中,使用所述固件单元处理所述错误消息包括:
确定所述错误消息包括两个错误;
确定所述两个错误中的优先级;以及
基于所述优先级来处理所述错误消息。
4.根据权利要求2所述的系统,其中,所述错误处理器以一次一个的方式顺序地处理所述两个错误中的每一个。
5.根据权利要求2所述的系统,其中,所述系统包括至少一个设计块,以保持所述错误处理器的设计状态,直到所有错误被所述固件单元处理。
6.根据权利要求1所述的系统,其中,所述错误消息包括设计块标识符、针对所述多个错误中的每一个的操作码以及针对所述多个错误中的每一个的上下文信息中的至少一个。
7.根据权利要求1所述的系统,其中所述多个错误之一是致命错误,其中,所述致命错误包括静态随机存取存储器读取错误、静态随机存取存储器写入错误、高级可扩展接口总线访问错误、高级可扩展接口总线奇偶校验错误、计数器下溢错误、计数器上溢错误、先进先出上溢、先进先出下溢、数据包字段损坏错误、访问未初始化位置和不支持的配置中的至少一个。
8.一种用于错误报告和处理的方法,包括:
由系统从片上系统平台接收错误消息,其中,所述错误消息指示在所述片上系统平台中已经发生了多个错误,并且所述系统包括用于存储所述错误消息的缓冲器;
由所述系统使用单个中断来报告所述错误消息;以及
由所述系统使用所述单个中断来处理所述错误消息中的所述多个错误。
9.根据权利要求8所述的方法,其中,所述处理包括:
检测所述片上系统平台中已经发生了所述多个错误;
引发与所述多个错误相对应的中断;
使用固件单元基于所述中断来处理所述错误消息;
基于经处理的所述错误消息执行至少一个动作;
清除中断;以及
执行
i)发送针对所述经处理的错误消息的确认消息,和
ii)等待另一中断以处理中的至少一者。
10.根据权利要求9所述的方法,其中,使用所述固件单元处理所述错误消息包括:
确定所述错误消息包括两个错误;
确定所述两个错误中的优先级;以及
基于所述优先级来处理所述两个错误中的一个错误。
11.根据权利要求9所述的方法,其中,所述错误处理器以一次一个的方式顺序地处理所述两个错误中的每一个。
12.根据权利要求9所述的方法,其中,所述系统包括至少一个设计块,以保持所述错误处理器的设计状态,直到所有错误被所述固件单元处理。
13.根据权利要求8所述的方法,其中,所述错误消息包括设计块标识符、针对所述多个错误中的每一个的操作码以及针对所述多个错误中的每一个的上下文信息中的至少一个。
14.根据权利要求8所述的方法,其中,所述多个错误之一是致命错误,其中,所述致命错误包括静态随机存取存储器读取错误、静态随机存取存储器写入错误、高级可扩展接口总线访问错误、高级可扩展接口总线奇偶校验错误、计数器下溢错误、计数器上溢错误、先进先出上溢、先进先出下溢、数据包字段损坏错误、访问未初始化位置和不支持的配置中的至少一个。
15.一种用于错误处理的系统,包括:
存储器,其存储错误处理器;
处理器,其被配置为执行所述错误处理器;以及
缓冲器,
其中,所述错误处理器被配置为:
从片上系统的多个硬件块中的每一个接收多个错误请求,其中,每个错误请求指示由于对应的硬件块而在片上系统中已经发生错误,并且所述缓冲器存储包括关于所述错误的信息的错误消息;以及
使用单个中断来处理所述错误消息的错误。
16.根据权利要求15所述的系统,其中,每个错误请求包括标识所述对应的硬件块的标识符以及标识对应的错误的类型的操作码。
17.根据权利要求15所述的系统,其中,所述错误处理器在处理与所述多个硬件块中的一个硬件块相关联的错误请求之后,向所述一个硬件块发送确认消息。
18.根据权利要求17所述的系统,其中,所述确认消息包括所述标识符和所述操作码。
19.根据权利要求17所述的系统,其中,每个错误请求还包括解释对应的错误的上下文信息。
20.根据权利要求15所述的系统,其中,所述错误是静态随机存取存储器读取错误、静态随机存取存储器写入错误、高级可扩展接口总线存取错误、高级可扩展接口总线奇偶校验错误、计数器下溢错误、计数器上溢错误、先进先出上溢、先进先出下溢、数据包字段破坏错误、访问未初始化位置和不支持的配置中的一个。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN202141035134 | 2021-08-04 | ||
IN202141035134 | 2021-08-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115934389A true CN115934389A (zh) | 2023-04-07 |
Family
ID=85229270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210931865.4A Pending CN115934389A (zh) | 2021-08-04 | 2022-08-04 | 用于错误报告和处理的系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11960350B2 (zh) |
CN (1) | CN115934389A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116909801A (zh) * | 2023-09-14 | 2023-10-20 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN116932272A (zh) * | 2023-09-14 | 2023-10-24 | 飞腾信息技术有限公司 | 一种错误上报方法及微处理器 |
CN117009129A (zh) * | 2023-09-14 | 2023-11-07 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN117009128A (zh) * | 2023-09-14 | 2023-11-07 | 飞腾信息技术有限公司 | 一种错误上报方法及计算机系统 |
CN117076183A (zh) * | 2023-09-28 | 2023-11-17 | 飞腾信息技术有限公司 | 一种错误上报方法、片上系统、计算机设备及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20250217219A1 (en) * | 2023-12-28 | 2025-07-03 | Advanced Micro Devices, Inc. | Transactional timeouts for managing critical domains |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7594144B2 (en) | 2006-08-14 | 2009-09-22 | International Business Machines Corporation | Handling fatal computer hardware errors |
US9442793B2 (en) * | 2013-07-23 | 2016-09-13 | Qualcomm Incorporated | Robust hardware/software error recovery system |
US10678623B2 (en) | 2017-11-20 | 2020-06-09 | Intel Corporation | Error reporting and handling using a common error handler |
US10802903B2 (en) | 2017-12-18 | 2020-10-13 | Intel Corporation | Logging errors in error handling devices in a system |
US20190052277A1 (en) * | 2018-06-25 | 2019-02-14 | Intel Corporation | Functional safety clocking framework for real time systems |
US11036543B1 (en) * | 2019-06-14 | 2021-06-15 | Amazon Technologies, Inc. | Integrated reliability, availability, and serviceability state machine for central processing units |
-
2022
- 2022-08-04 US US17/817,476 patent/US11960350B2/en active Active
- 2022-08-04 CN CN202210931865.4A patent/CN115934389A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116909801A (zh) * | 2023-09-14 | 2023-10-20 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN116932272A (zh) * | 2023-09-14 | 2023-10-24 | 飞腾信息技术有限公司 | 一种错误上报方法及微处理器 |
CN117009129A (zh) * | 2023-09-14 | 2023-11-07 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN117009128A (zh) * | 2023-09-14 | 2023-11-07 | 飞腾信息技术有限公司 | 一种错误上报方法及计算机系统 |
CN116932272B (zh) * | 2023-09-14 | 2023-11-21 | 飞腾信息技术有限公司 | 一种错误上报方法及微处理器 |
CN116909801B (zh) * | 2023-09-14 | 2023-12-12 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN117009128B (zh) * | 2023-09-14 | 2023-12-22 | 飞腾信息技术有限公司 | 一种错误上报方法及计算机系统 |
CN117009129B (zh) * | 2023-09-14 | 2024-01-02 | 飞腾信息技术有限公司 | 一种错误上报方法、微处理器及计算机设备 |
CN117076183A (zh) * | 2023-09-28 | 2023-11-17 | 飞腾信息技术有限公司 | 一种错误上报方法、片上系统、计算机设备及存储介质 |
CN117076183B (zh) * | 2023-09-28 | 2024-02-02 | 飞腾信息技术有限公司 | 一种错误上报方法、片上系统、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230053582A1 (en) | 2023-02-23 |
US11960350B2 (en) | 2024-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115934389A (zh) | 用于错误报告和处理的系统和方法 | |
CN107113084B (zh) | 用于处理数据错误的装置和方法 | |
US8656228B2 (en) | Memory error isolation and recovery in a multiprocessor computer system | |
US9495233B2 (en) | Error framework for a microprocesor and system | |
CN100440157C (zh) | 用于将可恢复的错误记入日志的系统和方法 | |
US8490113B2 (en) | Messaging in a parallel computer using remote direct memory access (‘RDMA’) | |
US8918673B1 (en) | Systems and methods for proactively evaluating failover nodes prior to the occurrence of failover events | |
US8726102B2 (en) | System and method for handling system failure | |
US20080126651A1 (en) | Early Notification of Error Via Software Interrupt and Shared Memory Write | |
US10078543B2 (en) | Correctable error filtering for input/output subsystem | |
CN109491958B (zh) | 错误处理系统和错误处理方法 | |
CN105589762A (zh) | 存储器装置、存储器模块和用于纠错的方法 | |
US7962782B2 (en) | Modifying connection records | |
CN101126995A (zh) | 处理严重硬件错误的方法及设备 | |
CN105373345B (zh) | 存储器设备和模块 | |
US11422828B2 (en) | Interleaved host reset and next re-initialization operations | |
WO2016127600A1 (zh) | 异常处理方法及装置 | |
US8402320B2 (en) | Input/output device including a mechanism for error handling in multiple processor and multi-function systems | |
US8880957B2 (en) | Facilitating processing in a communications environment using stop signaling | |
US8589722B2 (en) | Methods and structure for storing errors for error recovery in a hardware controller | |
WO2023206963A1 (zh) | 一种数据处理方法、系统及相关组件 | |
CN108874578B (zh) | 用于监管和初始化端口的设备 | |
CN111949431A (zh) | 片上系统产品的致命错误提供方法与致命错误识别方法 | |
CN100426273C (zh) | 存储器存取装置及其方法 | |
US7568121B2 (en) | Recovery from failure in data storage systems |
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 |