CN112650616A - 一种中断检测方法、装置和系统 - Google Patents

一种中断检测方法、装置和系统 Download PDF

Info

Publication number
CN112650616A
CN112650616A CN202110007786.XA CN202110007786A CN112650616A CN 112650616 A CN112650616 A CN 112650616A CN 202110007786 A CN202110007786 A CN 202110007786A CN 112650616 A CN112650616 A CN 112650616A
Authority
CN
China
Prior art keywords
interrupt
time
information
processor
interruption
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.)
Granted
Application number
CN202110007786.XA
Other languages
English (en)
Other versions
CN112650616B (zh
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.)
Shanghai Qingkun Information Technology Co Ltd
Original Assignee
Shanghai Qingkun 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 Shanghai Qingkun Information Technology Co Ltd filed Critical Shanghai Qingkun Information Technology Co Ltd
Priority to CN202110007786.XA priority Critical patent/CN112650616B/zh
Publication of CN112650616A publication Critical patent/CN112650616A/zh
Application granted granted Critical
Publication of CN112650616B publication Critical patent/CN112650616B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • 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/0766Error or fault reporting or storing
    • G06F11/0781Error 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
    • 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/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements

Landscapes

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

Abstract

本发明属于芯片领域,本发明提供一种中断检测方法、装置和系统,其方法包括:当处理器处于运行时,获取处理器中至少一个中断的中断时间信息;基于存储地址和存储方式,对中断时间信息进行存储,用以分析所述中断时间信息生成中断检测结果。通过对芯片系统的分析,在芯片互连结构中增加中断检测IP,记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到数据缓存器,可以精确检测记录系统的中断响应特性。进而,基于上述信息,直接或通过调试主机上的工具对系统的中断响应情况进行准确的分析,并准确确定系统的实时特性是否满足设计需求,同时为进一步优化系统的中断响应特性,提供依据。

Description

一种中断检测方法、装置和系统
技术领域
本发明涉及芯片领域,尤指一种中断检测方法、装置和系统。
背景技术
芯片系统中,多种外设IP会通过向处理器发送中断请求信号,获取CPU的响应。在实时性要求高的芯片系统内,外设IP还会要求CPU能及时响应中断请求。随着芯片内集成的外设越来越多,芯片系统内开始使用中断控制器对多个中断进行管理,协调CPU的合理响应。
然而,现有的中断控制器不记录原始中断有效的时间,也不记录CPU对中断的响应和处理时间。而且,中断信号位于芯片系统内,通常又不会把每个外设的中断信号引出到芯片的管脚上,无法通过硬件测试记录原始中断产生的时间。同时,CPU内的软件只能记录中断开始响应和中断处理完成的时间,而无法记录原始中断产生的时间。
其次,无法通过现有方法获取每个中断产生和CPU响应及处理的完整时间信息,也就无法在实际应用中得到系统对中断响应的确切信息。现有中断控制器及软件无法获得中断丢失与覆盖的确切情况。
发明内容
本发明提供一种中断检测方法、装置和系统,通过本发明使得可以实时记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到内部或外部的Buffer,精确检测记录系统的中断响应特性。
本发明提供的技术方案如下:
一种中断检测方法,包括步骤:
当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息;
基于存储地址和存储方式,对所述中断时间信息进行存储,用以分析所述中断时间信息生成中断检测结果。
进一步优选地,所述当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息,包括步骤:
记录所述中断的中断信息,并实时记录每一阶段的中断时间信息;
其中,所述中断信息包括中断类型和中断ID;所述中断时间信息包括所述中断有效时间、所述中断确认时间、所述中断完成时间、所述中断丢失信息以及所述中断覆盖信息。
进一步优选地,所述实时记录每一阶段的中断时间信息,包括步骤:
当接收的所述中断发送的中断信号有效时,记录中断有效时间;
当中断确认寄存器被读取时,记录中断确认时间;
当中断完成寄存器被读取时,记录所述中断完成时间。
进一步优选地,所述实时记录每一阶段的中断时间信息,包括步骤:
当所述中断信号有效后,所述中断确认寄存器未被读取,获取所述中断丢失信息;
当所述中断类型为沿触发中断且持续接收中断信号时,获取所述中断覆盖信息。
进一步优选地,在所述当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息之前,包括步骤:
配置中断数量和对应的中断类型;
根据所述中断数量和对应的中断类型,进行中断检测。
一种中断检测方法,包括:
获取存储地址中的处理器的中断时间信息;
基于所述中断时间信息计算中断延时信息;
根据所述中断延时信息,生成中断检测结果。
进一步优选地,所述基于所述中断时间信息计算中断延时信息,包括步骤:
基于所述中断时间信息中的中断确认时间和中断有效时间,计算所述中断延时信息中的中断确认延时信息;
基于所述中断时间信息中的中断完成时间和中断有效时间,计算所述中断延时信息中的中断完成延时信息;
基于所述中断时间信息中的中断完成时间和中断确认时间,计算所述中断延时信息中的中断处理时间。
进一步优选地,所述根据所述中断延时信息,生成中断检测结果,包括:
跟据解析出的所述中断延时信息,判断所述中断延时信息是否符合预设中断延时和/或调整中断优先级和/或生成中断延时图。
一种中断检测装置,包括:
获取模块,用于当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息;
存储模块,用于基于存储地址和存储方式,对所述中断时间信息进行存储,以供调试主机对所述处理器进行调试。
一种中断检测系统,包括所述中断检测装置、处理器、中断控制器和外设IP;
所述外设IP用于在初始化设置所述中断检测装置的存储地址、存储方式及待检测中断后,通过所述外设IP使能中断以发送中断信号。
所述中断检测装置用于当所述中断信号有效时,记录中断信号有效时间。
所述中断控制器用于将所述中断信号发送到所述处理器,所述处理器用于响应所述中断信号并读取所述中断检测装置中的中断确认寄存器,所述中断检测装置还用于记录中断确认时间,所述中断确认时间为所述处理器确认所述中断的时间。
所述处理器还用于完成所述中断的处理,并在完成所述中断的处理后,读取所述中断检测装置中的中断完成寄存器,所述中断检测装置还用于记录中断完成时间,所述中断完成时间为所述处理器完成所述待检测中断的时间。
所述中断检测装置还用于在所述处理器确认所述中断或完成所述中断之前,所述中断持续发出中断信号时,确定所述中断的丢失、覆盖。
本发明提供的一种中断检测方法、装置和系统,至少具有以下有益效果:
1)通过对芯片系统的分析,提出一种在芯片互连结构中增加的一个中断检测IP,记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到内部或外部的Buffer,可以精确检测记录系统的中断响应特性。
2)在本发明中,基于中断检测IP保存至存储地址中的中断信息和所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,读出这些信息直接或通过调试主机上的工具对系统的中断响应情况进行准确的分析,并准确确定系统的实时特性是否满足设计需求,同时为进一步优化系统的中断响应特性,提供依据。
3)本发明通过芯片系统内软件分析中断时间信息,计算中断延时信息,以调整中断优先级等设置,并通过芯片外软件解析出的中断延时信息,绘制中断延时状况图,直观的了解系统的中断响应特性。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细说明:
图1是本发明中一种中断检测方法的一个实施例的流程示意图;
图2是本发明中一种中断检测方法的另一个实施例的流程示意图;
图3是本发明中一种中断检测方法的又一个实施例的流程示意图;
图4是本发明中一种中断检测装置的一个实施例的示意图;
图5是本发明的中断检测IP的结构示意图;
图6是本发明中一种中断检测系统的结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本文中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
实施例一
本发明提供一种中断检测方法的一个实施例,如图1所示,包括步骤:
S101当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息。
S102基于存储地址和存储方式,对所述中断时间信息进行存储,用以分析所述中断时间信息生成中断检测结果。
具体的,本实施主要用于系统软件运行时,检测芯片系统内各个IP中断发生的时间、CPU确认中断的时间、CPU处理完成中断的时间、以及中断的丢失与覆盖,并将这些信息记录在内部或外部Buffer中,这些记录的信息可以供芯片内运行的系统软件分析使用,也可以提供给芯片外(如调试主机)的软件进行分析使用。
其中,CPU:运行软件的处理器,包括但不限于ARM。中断:芯片内各个IP模块向CPU发送的信号,用于请求CPU的处理。中断控制器:芯片内用于管理多个IP模块中断信号的模块。
具体的,当外设IP通过中断控制器发送中断信号给处理器时,通过中断检测IP获取处理器CPU接收到的至少一个中断对应的中断信号,并在处理器对中断进行反应时的中断信息进行存储,比如,各个IP中断发生的时间,处理器确认该中断的时间、处理器处理完成该中断的时间、以及中断的丢失与覆盖,选择性的将这些中断信息记录在内部或外部数据缓存器中,以供后续的软件获取这些软件并进行分析,以生成中断检测结果。
示例性的,中断检测IP位于芯片互连接结构中,该IP支持使能和禁止模式,在使能模式时,该IP记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到内部或外部的Buffer,读出这些信息就可以直接或通过调试主机上的工具对系统的中断响应情况进行准确的分析。比如,用于芯片内运行的系统软件从内部数据缓存器中获取并分析中断信息,比如,集成此IP的SOC芯片系统上运行的软件通过记录的信息可以自动调整中断优先级。
其次,还可以通过芯片外的软件从外部数据缓存器中获取中断信息,分析中断信息,并显示SOC系统的中断响应特性,比如,调试主机;运行在调试主机的解析工具,可以分析通过记录的信息,得到并显示SOC系统的中断响应特性。
在本实施中,通过对芯片系统的分析,提出一种在芯片互连结构中增加的一个中断检测IP,记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到内部或外部的Buffer,可以精确检测记录系统的中断响应特性。
实施例二
基于上述实施例,在本实施例中与上述实施例相同的部分就不一一赘述了,如图2所示,优选地,在步骤S101所述当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息之前,包括步骤:
S001配置中断数量和对应的中断类型,根据所述中断数量和对应的中断类型,进行中断检测。
具体的,当中断数量为单个中断时,进行使能进行单个中断检测,检测中断信号变化及CPU确认和处理完成时,并记录中断IP及时间信息并保存至数据缓存器中。
优选地,S101当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息,包括步骤:
记录所述中断的中断信息,并实时记录每一阶段的中断时间信息;
其中,所述中断信息包括中断类型和中断ID;所述中断时间信息包括所述中断有效时间、所述中断确认时间、所述中断完成时间、所述中断丢失信息以及所述中断覆盖信息。
其中,所述实时记录每一阶段的中断时间信息,具体包括步骤:
当接收的所述中断发送的中断信号有效时,记录中断有效时间;当中断确认寄存器被读取时,记录中断确认时间;当中断完成寄存器被读取时,记录所述中断完成时间。
优选地,所述实时记录每一阶段的中断时间信息,包括步骤:
当所述中断信号有效后,所述中断确认寄存器未被读取,获取所述中断丢失信息;当所述中断类型为沿触发中断且持续接收中断信号时,获取所述中断覆盖信息。
S102基于存储地址和存储方式,对所述中断时间信息进行存储,用以分析所述中断时间信息生成中断检测结果。
其中,通过中断检测IP进行实时检测,中断检测IP包含:总线接口、中断输入及检测、内部计时、使能控制、存储Buffer;中断信息解析方法则需要芯片系统内软件,或芯片外软件配合完成。
中断检测IP包括总线接口:包括Slave接口,类型及宽度可使用参数配置,支持AXI/AHB/APB,提供IP内部的寄存器访问接口。
内部计时:在使能模式时,开始进行基于输入时钟的累加计数,计数器Timer的宽度可使用参数配置。
中断输入及检测:为每个中断输入提供一个输入端,支持的输入端数目可以由参数进行配置;支持每个中断输入端的上升沿时间,下降沿时间检测记录;支持CPU确认每个中断的时间记录;支持CPU处理中断完成的时间记录;支持CPU处理中断完成的时间记录;支持检测中断丢失与覆盖:在中断信号有效后,CPU一直没有确认该中断,则为中断丢失;如果为沿触发中断,则又有新的沿中断信号时,则为中断覆盖。
使能控制:支持整个中断检测IP的使能/禁止模式;支持对每个中断输入端检测的使能/禁止;支持配置Buffer满时的行为:停止记录或回环记录;
使能模式时:使能内部计时,Timer开始计数;支持内置或外部的数据缓存Buffer,可通过参数进行选择;使用内置Buffer时,不需要总线Master接口;使用外置Buffer时,可通过寄存器配置Buffer地址。
使能单个中断检测时:检测中断信号变化及CPU确认和处理完成时,记录中断ID及时间信息并保存到Buffer。
禁止模式时:中断检测IP时钟被关闭,也不记录信息;缺省为禁止调试。
示例性的,在实际场景中,具体使用方法可以包括:
1、设置参数,生成该中断检测IP RTL代码。
2、将该中断检测IP集成到SOC芯片内。
3、芯片启动后,通过软件或硬件进行初始化设置:Buffer地址及方式;配置需要检测的中断类型;使能需要检测的中断。
4、在中断信号有效时,中断检测IP记录中断信号有效时间。
5、在中断控制器将中断信号发送到CPU后,CPU响应中断时,读取中断检测IP中的中断确认寄存器,中断检测IP记录CPU确认中断的时间。
6、CPU处理中断完成后,读取中断检测IP中的中断完成寄存器,中断IP记录CPU完成中断的时间。
7、如果在CPU确认中断,或完成中断之前,同一个中断信号又发送有效信号,则软件通过解析记录事件,就可以知道发生了中断丢失和覆盖。
8、芯片内软件定时读取Buffer内的信息,解析中断处理延时,调整中断优先级等设置。
9、芯片外软件读取Buffer内的信息,解析中断处理延时,绘制更直观的中断延时状况图。
在本实施例中通过在芯片内部增加检测中断信息的IP,配合CPU软件,精确记录中断产生、CPU对中断响应和处理的时间信息,以及中断丢失和覆盖的信息,为测试和分析系统的中断响应特性提供可靠准确的依据。
实施例三
本发明提供一种中断检测方法,如图3所示,包括:
S201获取存储地址中的处理器的中断时间信息。
具体的,当中断检测IP实时检测处理器接收到的中断信号,以及对于中断信号的反应,中断检测IP记录的中断时间信息后,分析软件从数据缓存器中获取中断时间信息。
S202基于所述中断时间信息计算中断延时信息。
具体的,分析软件根据中断信息中的中断类型和中断IP确定所述中断具体为哪个中断,并基于中断时间信息计算中断延时信息。优选地,所述基于所述中断时间信息计算中断延时信息,包括步骤:
基于所述中断时间信息中的中断确认时间和中断有效时间,计算所述中断延时信息中的中断确认延时信息;基于所述中断时间信息中的中断完成时间和中断有效时间,计算所述中断延时信息中的中断完成延时信息;基于所述中断时间信息中的中断完成时间和中断确认时间,计算所述中断延时信息中的中断处理时间。
示例性的,中断延时计算方法具体包括对于每个中断,都存在以下计算公式:
中断确认延时=CPU确认中断的时间-中断信号有效时间。
中断完成延时=CPU完成中断的时间-中断信号有效时间。
中断处理时间=CPU完成中断的时间-CPU确认中断的时间。
S203根据所述中断延时信息,生成中断检测结果。优选地,所述根据所述中断延时信息,生成中断检测结果,包括:跟据解析出的所述中断延时信息,判断所述中断延时信息是否符合预设中断延时和/或调整中断优先级和/或生成中断延时图。
具体的,包括以下两种:
芯片系统内软件解析:芯片系统内软件可定时读取Buffer内的记录信息,解析出中断处理延时是否满足需求;芯片系统内软件可根据解析出的中断延时信息,调整中断优先级等设置。
芯片外软件解析:芯片外软件,例如安装在调试机上的解析软件,解析出中断处理延时是否满足需求;芯片外软件根据解析出的中断延时信息,绘制更直观的中断延时状况图。
在本实施例中,通过芯片系统内软件分析中断时间信息,计算中断延时信息,以调整中断优先级等设置,并通过芯片外软件解析出的中断延时信息,绘制中断延时状况图,直观得了解系统的中断响应特性。
实施例四
本发明提供一种中断检测方法,此中断检测方法,主要用于系统软件运行时,检测芯片系统内各个IP中断发生的时间、CPU确认中断的时间、CPU处理完成中断的时间,以及中断的丢失与覆盖,并将这些信息记录在内部或外部Buffer中。这些记录的信息可以供芯片内运行的系统软件分析使用,也可以提供给芯片外(如调试主机)的软件进行分析使用。
步骤一、中断实时检测
通过中断检测IP进行实时检测,中断检测IP包含:总线接口、中断输入及检测、内部计时、使能控制、存储Buffer;中断信息解析方法则需要芯片系统内软件,或芯片外软件配合完成。
中断检测IP包括总线接口:包括Slave接口,类型及宽度可使用参数配置,支持AXI/AHB/APB,提供IP内部的寄存器访问接口。
内部计时:在使能模式时,开始进行基于输入时钟的累加计数,计数器Timer的宽度可使用参数配置。
中断输入及检测:为每个中断输入提供一个输入端,支持的输入端数目可以由参数进行配置;支持每个中断输入端的上升沿时间,下降沿时间检测记录;支持CPU确认每个中断的时间记录;支持CPU处理中断完成的时间记录;支持CPU处理中断完成的时间记录;支持检测中断丢失与覆盖:在中断信号有效后,CPU一直没有确认该中断,则为中断丢失;如果为沿触发中断,则又有新的沿中断信号时,则为中断覆盖。
使能控制:支持整个中断检测IP的使能/禁止模式;支持对每个中断输入端检测的使能/禁止;支持配置Buffer满时的行为:停止记录或回环记录;
使能模式时:使能内部计时,Timer开始计数;支持内置或外部的数据缓存Buffer,可通过参数进行选择;使用内置Buffer时,不需要总线Master接口;使用外置Buffer时,可通过寄存器配置Buffer地址。
使能单个中断检测时:检测中断信号变化及CPU确认和处理完成时,记录中断ID及时间信息并保存到Buffer。
禁止模式时:中断检测IP时钟被关闭,也不记录信息;缺省为禁止调试。
步骤二、中断信息解析
1、芯片系统内软件解析:
芯片系统内软件可定时读取Buffer内的记录信息,解析出中断处理延时是否满足需求;芯片系统内软件可根据解析出的中断延时信息,调整中断优先级等设置。
2、芯片外软件解析:芯片外软件,例如安装在调试机上的解析软件,解析出中断处理延时是否满足需求;芯片外软件根据解析出的中断延时信息,绘制更直观的中断延时状况图。
3、中断延时计算方法,对于每个中断,都存在以下计算公式:
中断确认延时=CPU确认中断的时间-中断信号有效时间。
中断完成延时=CPU完成中断的时间-中断信号有效时间。
中断处理时间=CPU完成中断的时间-CPU确认中断的时间。
在本实施例中,基于中断检测IP保存至存储地址中的中断信息和所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,读出这些信息直接或通过调试主机上的工具对系统的中断响应情况进行准确的分析,并准确确定系统的实时特性是否满足设计需求,同时为进一步优化系统的中断响应特性,提供依据。
实施例五
本发明提供一种中断检测装置,如图4所示,包括:
获取模块401,用于当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息。
存储模块402,用于基于存储地址和存储方式,对所述中断时间信息进行存储,以供调试主机对所述处理器进行调试。
具体的,所述中断检测装置可以包括设置于芯片互连结构中的中断检测IP。此中断检测IP及方法,主要用于系统软件运行时,检测芯片系统内各个IP中断发生的时间、CPU确认中断的时间、CPU处理完成中断的时间,以及中断的丢失与覆盖,并将这些信息记录在内部或外部Buffer中。这些记录的信息可以供芯片内运行的系统软件分析使用,也可以提供给芯片外(如调试主机)的软件进行分析使用。
示例性的,如图5所示,中断检测IP包含:总线接口、中断输入及检测、内部计时、使能控制、存储Buffer;中断信息解析方法则需要芯片系统内软件,或芯片外软件配合完成。
其中,中断检测IP包括:总线接口:包括Slave接口,类型及宽度可使用参数配置,支持AXI/AHB/APB,提供IP内部的寄存器访问接口。
内部计时:在使能模式时,开始进行基于输入时钟的累加计数,计数器Timer的宽度可使用参数配置。
中断输入及检测:
为每个中断输入提供一个输入端,支持的输入端数目可以由参数进行配置;支持每个中断输入端的上升沿时间,下降沿时间检测记录;支持CPU确认每个中断的时间记录;支持CPU处理中断完成的时间记录;支持CPU处理中断完成的时间记录;支持检测中断丢失与覆盖:在中断信号有效后,CPU一直没有确认该中断,则为中断丢失;如果为沿触发中断,则又有新的沿中断信号时,则为中断覆盖;
使能控制:支持整个中断检测IP的使能/禁止模式;支持对每个中断输入端检测的使能/禁止;支持配置Buffer满时的行为:停止记录或回环记录;
使能模式时:使能内部计时,Timer开始计数;支持内置或外部的数据缓存Buffer,可通过参数进行选择;使用内置Buffer时,不需要总线Master接口;使用外置Buffer时,可通过寄存器配置Buffer地址。
使能单个中断检测时:检测中断信号变化及CPU确认和处理完成时,记录中断ID及时间信息并保存到Buffer。
禁止模式时:中断检测IP时钟被关闭,也不记录信息;缺省为禁止调试。
在本实施例中,通过中断检测IP设置于芯片互连结构中,记录所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,并将这些信息缓存到内部或外部的Buffer,可以精确检测记录系统的中断响应特性。
实施例六
本发明提供一种中断检测系统,如图6所示,包括所述中断检测装置、处理器、中断控制器和外设IP;
所述外设IP用于在初始化设置所述中断检测装置的存储地址、存储方式及待检测中断后,通过所述外设IP使能中断以发送中断信号。
所述中断检测装置用于当所述中断信号有效时,记录中断信号有效时间。
所述中断控制器用于将所述中断信号发送到所述处理器,所述处理器用于响应所述中断信号并读取所述中断检测装置中的中断确认寄存器,所述中断检测装置还用于记录中断确认时间,所述中断确认时间为所述处理器确认所述中断的时间。
所述处理器还用于完成所述中断的处理,并在完成所述中断的处理后,读取所述中断检测装置中的中断完成寄存器,所述中断检测装置还用于记录中断完成时间,所述中断完成时间为所述处理器完成所述待检测中断的时间。
所述中断检测装置还用于在所述处理器确认所述中断或完成所述中断之前,所述中断持续发出中断信号时,确定所述中断的丢失、覆盖。
在本实施例中,基于中断检测IP保存至存储地址中的中断信息和所连接的中断信号发生改变的时间信息、以及CPU响应中断和完成中断处理的时间信息,读出这些信息直接或通过调试主机上的工具对系统的中断响应情况进行准确的分析,并准确确定系统的实时特性是否满足设计需求,同时为进一步优化系统的中断响应特性,提供依据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的设备和方法,可以通过其他的方式实现。示例性的,以上所描述的系统实施例仅仅是示意性的,示例性的,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,示例性的,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性、机械或其他的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可能集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种中断检测方法,其特征在于,包括步骤:
当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息;
基于存储地址和存储方式,对所述中断时间信息进行存储,用以分析所述中断时间信息生成中断检测结果。
2.根据权利要求1所述中断检测方法,其特征在于,所述当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息,包括步骤:
记录所述中断的中断信息,并实时记录每一阶段的中断时间信息;
其中,所述中断信息包括中断类型和中断ID;所述中断时间信息包括所述中断有效时间、所述中断确认时间、所述中断完成时间、所述中断丢失信息以及所述中断覆盖信息。
3.根据权利要求2所述中断检测方法,其特征在于,所述实时记录每一阶段的中断时间信息,包括步骤:
当接收的所述中断发送的中断信号有效时,记录中断有效时间;
当中断确认寄存器被读取时,记录中断确认时间;
当中断完成寄存器被读取时,记录所述中断完成时间。
4.根据权利要求2所述中断检测方法,其特征在于,所述实时记录每一阶段的中断时间信息,包括步骤:
当所述中断信号有效后,所述中断确认寄存器未被读取,获取所述中断丢失信息;
当所述中断类型为沿触发中断且持续接收中断信号时,获取所述中断覆盖信息。
5.根据权利要求1~4中任一项所述中断检测方法,其特征在于,在所述当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息之前,包括步骤:
配置中断数量和对应的中断类型;
根据所述中断数量和对应的中断类型,进行中断检测。
6.一种中断检测方法,其特征在于,包括:
获取存储地址中的处理器的中断时间信息;
基于所述中断时间信息计算中断延时信息;
根据所述中断延时信息,生成中断检测结果。
7.根据权利要求6所述中断检测方法,其特征在于,所述基于所述中断时间信息计算中断延时信息,包括步骤:
基于所述中断时间信息中的中断确认时间和中断有效时间,计算所述中断延时信息中的中断确认延时信息;
基于所述中断时间信息中的中断完成时间和中断有效时间,计算所述中断延时信息中的中断完成延时信息;
基于所述中断时间信息中的中断完成时间和中断确认时间,计算所述中断延时信息中的中断处理时间。
8.根据权利要求6~7中任一项所述中断检测方法,其特征在于,所述根据所述中断延时信息,生成中断检测结果,包括:
跟据解析出的所述中断延时信息,判断所述中断延时信息是否符合预设中断延时和/或调整中断优先级和/或生成中断延时图。
9.一种中断检测装置,其特征在于,包括:
获取模块,用于当处理器处于运行时,获取所述处理器中至少一个中断的中断时间信息;
存储模块,用于基于存储地址和存储方式,对所述中断时间信息进行存储,以供调试主机对所述处理器进行调试。
10.一种中断检测系统,其特征在于,包括如权利要求9所述中断检测装置、处理器、中断控制器和外设IP;
所述外设IP用于在初始化设置所述中断检测装置的存储地址、存储方式及待检测中断后,通过所述外设IP使能中断以发送中断信号。
所述中断检测装置用于当所述中断信号有效时,记录中断信号有效时间。
所述中断控制器用于将所述中断信号发送到所述处理器,所述处理器用于响应所述中断信号并读取所述中断检测装置中的中断确认寄存器,所述中断检测装置还用于记录中断确认时间,所述中断确认时间为所述处理器确认所述中断的时间。
所述处理器还用于完成所述中断的处理,并在完成所述中断的处理后,读取所述中断检测装置中的中断完成寄存器,所述中断检测装置还用于记录中断完成时间,所述中断完成时间为所述处理器完成所述待检测中断的时间。
所述中断检测装置还用于在所述处理器确认所述中断或完成所述中断之前,所述中断持续发出中断信号时,确定所述中断的丢失、覆盖。
CN202110007786.XA 2021-01-05 2021-01-05 一种中断检测方法、装置和系统 Active CN112650616B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110007786.XA CN112650616B (zh) 2021-01-05 2021-01-05 一种中断检测方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110007786.XA CN112650616B (zh) 2021-01-05 2021-01-05 一种中断检测方法、装置和系统

Publications (2)

Publication Number Publication Date
CN112650616A true CN112650616A (zh) 2021-04-13
CN112650616B CN112650616B (zh) 2024-07-05

Family

ID=75367316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110007786.XA Active CN112650616B (zh) 2021-01-05 2021-01-05 一种中断检测方法、装置和系统

Country Status (1)

Country Link
CN (1) CN112650616B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988488A (zh) * 2021-04-20 2021-06-18 深圳市优优绿能电气有限公司 中断时间的测试系统及方法
CN117573308A (zh) * 2023-11-15 2024-02-20 中国三峡建工(集团)有限公司 一种任务中断仲裁方法、系统、芯片以及存储介质
CN117591451A (zh) * 2024-01-18 2024-02-23 天津七一二通信广播股份有限公司 一种cpu与fpga间循环缓冲通信方法及系统

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005100017A (ja) * 2003-09-24 2005-04-14 Seiko Epson Corp プロセッサシミュレータおよび割込遅延カウントプログラム、並びにプロセッサのシミュレート方法
CN1860427A (zh) * 2003-08-07 2006-11-08 英特尔公司 事件时间标记
CN101299206A (zh) * 2008-06-24 2008-11-05 中兴通讯股份有限公司 一种实现中断采集的方法及装置
CN101699417A (zh) * 2009-10-16 2010-04-28 华亚微电子(上海)有限公司 中断方法
CN202771418U (zh) * 2012-07-24 2013-03-06 福建亿榕信息技术有限公司 高精度网卡接收时间的记录装置
US20140115198A1 (en) * 2012-10-23 2014-04-24 Advanced Micro Devices, Inc. Interrupt latency performance counters
CN105378668A (zh) * 2013-06-13 2016-03-02 微软技术许可有限责任公司 多处理器系统中的操作系统管理的中断引导
CN106201802A (zh) * 2016-07-20 2016-12-07 中国航空工业集团公司航空动力控制系统研究所 基于逻辑分析仪的cpu内部中断响应时间和恢复时间的测量方法
CN107133192A (zh) * 2017-05-11 2017-09-05 北方电子研究院安徽有限公司 一种SoC系统中的高速输入器和脉冲计数器电路
CN107423206A (zh) * 2017-07-31 2017-12-01 郑州云海信息技术有限公司 一种衡量系统管理中断时间的方法及装置
CN107526622A (zh) * 2017-08-16 2017-12-29 北方工业大学 Linux的快速异常处理方法及装置
CN110515822A (zh) * 2019-08-30 2019-11-29 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 中断响应时间测试方法、装置、设备和存储介质
CN111008100A (zh) * 2019-10-16 2020-04-14 珠海格力电器股份有限公司 linux实时操作系统中断响应时间测试系统及方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1860427A (zh) * 2003-08-07 2006-11-08 英特尔公司 事件时间标记
JP2005100017A (ja) * 2003-09-24 2005-04-14 Seiko Epson Corp プロセッサシミュレータおよび割込遅延カウントプログラム、並びにプロセッサのシミュレート方法
CN101299206A (zh) * 2008-06-24 2008-11-05 中兴通讯股份有限公司 一种实现中断采集的方法及装置
CN101699417A (zh) * 2009-10-16 2010-04-28 华亚微电子(上海)有限公司 中断方法
CN202771418U (zh) * 2012-07-24 2013-03-06 福建亿榕信息技术有限公司 高精度网卡接收时间的记录装置
US20140115198A1 (en) * 2012-10-23 2014-04-24 Advanced Micro Devices, Inc. Interrupt latency performance counters
CN105378668A (zh) * 2013-06-13 2016-03-02 微软技术许可有限责任公司 多处理器系统中的操作系统管理的中断引导
CN106201802A (zh) * 2016-07-20 2016-12-07 中国航空工业集团公司航空动力控制系统研究所 基于逻辑分析仪的cpu内部中断响应时间和恢复时间的测量方法
CN107133192A (zh) * 2017-05-11 2017-09-05 北方电子研究院安徽有限公司 一种SoC系统中的高速输入器和脉冲计数器电路
CN107423206A (zh) * 2017-07-31 2017-12-01 郑州云海信息技术有限公司 一种衡量系统管理中断时间的方法及装置
CN107526622A (zh) * 2017-08-16 2017-12-29 北方工业大学 Linux的快速异常处理方法及装置
CN110515822A (zh) * 2019-08-30 2019-11-29 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 中断响应时间测试方法、装置、设备和存储介质
CN111008100A (zh) * 2019-10-16 2020-04-14 珠海格力电器股份有限公司 linux实时操作系统中断响应时间测试系统及方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988488A (zh) * 2021-04-20 2021-06-18 深圳市优优绿能电气有限公司 中断时间的测试系统及方法
CN117573308A (zh) * 2023-11-15 2024-02-20 中国三峡建工(集团)有限公司 一种任务中断仲裁方法、系统、芯片以及存储介质
CN117591451A (zh) * 2024-01-18 2024-02-23 天津七一二通信广播股份有限公司 一种cpu与fpga间循环缓冲通信方法及系统
CN117591451B (zh) * 2024-01-18 2024-05-14 天津七一二通信广播股份有限公司 一种cpu与fpga间循环缓冲通信方法及系统

Also Published As

Publication number Publication date
CN112650616B (zh) 2024-07-05

Similar Documents

Publication Publication Date Title
CN112650616B (zh) 一种中断检测方法、装置和系统
US6944796B2 (en) Method and system to implement a system event log for system manageability
US9952963B2 (en) System on chip and corresponding monitoring method
US20070112984A1 (en) Sideband bus setting system and method thereof
CN111078492B (zh) 一种SoC内部总线的状态监控系统及方法
US7596719B2 (en) Microcontroller information extraction system and method
CN102708218A (zh) 一种集成u盘和数据采集模块的usb复合设备
CN106326171A (zh) 硬盘背板的硬盘类型识别方法和装置
CN112559267B (zh) 集成电路间总线i2c从机以及i2c控制器测试方法
CN105988905A (zh) 异常处理方法及装置
CN111913656B (zh) 分布式共享储存系统中的计算机储存节点及方法
CN110175146B (zh) 硬盘信息获取方法和获取硬盘信息的装置
CN104239174A (zh) Bmc远程调试系统及方法
US11789739B2 (en) Control system for process data and method for controlling process data
CN105528300B (zh) 一种ddr内存控制器及其访问监控方法
WO2018227475A1 (zh) 指纹芯片检测方法、装置及系统
CN112685212A (zh) 一种处理器异常的调试追踪方法、装置和系统
CN112685278A (zh) 一种芯片驱动追踪调试方法和装置
CN115240752A (zh) 对芯片内闪存信号进行分析的装置、方法和电子设备
CN105677474A (zh) 一种基于fpga的中断聚合装置和方法
CN115617411A (zh) 电子设备数据处理方法、装置、电子设备和存储介质
CN102073570A (zh) 服务器系统
US8468394B2 (en) Method of tracing selected activities within a data processing system by tagging selected items and tracing the tagged items
CN115934435A (zh) 设备存储性能的检测方法、装置、电子设备及存储介质
US10872030B2 (en) Control system and method of to perform an operation

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
GR01 Patent grant
GR01 Patent grant