CN117521570B - 总线的超时检测电路、方法、芯片及电子设备 - Google Patents
总线的超时检测电路、方法、芯片及电子设备 Download PDFInfo
- Publication number
- CN117521570B CN117521570B CN202410015533.0A CN202410015533A CN117521570B CN 117521570 B CN117521570 B CN 117521570B CN 202410015533 A CN202410015533 A CN 202410015533A CN 117521570 B CN117521570 B CN 117521570B
- Authority
- CN
- China
- Prior art keywords
- timeout
- storage unit
- current
- sequence number
- overtime
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims description 10
- 230000008859 change Effects 0.000 claims abstract description 19
- 230000004044 response Effects 0.000 claims description 40
- 230000003993 interaction Effects 0.000 claims description 19
- 230000002452 interceptive effect Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明提供了总线的超时检测电路、方法、芯片及电子设备,当目标总线上出现操作请求时,将状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将其状态标志修改为有效,将其序号作为当前序号;将当前ID写入当前序号的ID存储单元;从时间计数器读取当前的计数值,写入当前序号的计数存储单元;从ID存储区统计当前ID出现的总次数,将总次数写入当前序号的顺序存储单元;从时间计数器读取检测时刻的计数值,从顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将计数变化量大于计数阈值的目标序号对应的操作请求判定为超时。
Description
技术领域
本发明涉及电路领域,具体涉及总线的超时检测电路、方法、芯片及电子设备。
背景技术
总线是SOC芯片中的重要组成部分,其是CPU与其他设备(器件)的交互通道。当从设备的配置或连接出现永久或短暂失效时,从设备可能无法及时对主设备发出的读写传输进行响应,进而导致传输丢失或总线挂死,这种情况下即总线超时。
为了检测总线超时,现有技术提出了不少解决方案,但是现有的检测方案存在不足。
发明内容
基于上述现状,本发明的主要目的在于提供总线的超时检测电路、方法、芯片及电子设备,以相对简单的电路实现对复杂目标总线的超时检测。
为实现上述目的,本发明采用的技术方案如下:
一种总线的超时检测电路,包括记录存储器和超时检测器,还包括时间计数器;所述记录存储器包括具有相同序号的状态存储区、ID存储区、计数存储区和顺序存储区;所述状态存储区、ID存储区、计数存储区和顺序存储区包括K个具有各自序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元;其中,K为大于1的整数;所述时间计数器在时钟驱动下持续产生计数值;当目标总线上出现操作请求时,执行如下操作:将所述状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将所述当前状态存储单元的状态标志修改为有效,将所述当前状态存储单元的序号作为当前序号;从所述操作请求中获取当前ID,将所述当前ID写入所述当前序号的ID存储单元;从所述时间计数器读取当前的计数值,写入所述当前序号的计数存储单元;从所述ID存储区统计所述当前ID出现的总次数,将所述总次数写入所述当前序号的顺序存储单元;所述超时检测器按照设定频率执行如下操作:从所述时间计数器读取检测时刻的计数值,从所述顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算所述目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将所述计数变化量大于计数阈值的目标序号对应的操作请求判定为超时。
优选的,所述记录存储器还包括与状态存储区具有相同序号的超时存储区,所述超时存储区包括K个具有各自序号的超时存储单元;所述超时检测器还将所述计数变化量小于所述计数阈值的目标序号对应的操作请求判定为未超时,将未超时对应的所述目标序号的超时存储单元的超时标志置为未超时;所述超时检测器将超时对应的所述目标序号的超时存储单元的超时标志置为超时,并将超时对应的所述目标序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零。
优选的,所述的超时检测电路还包括从设备响应检查器,当目标总线上出现操作请求响应时,所述从设备响应检查器执行如下操作:从所述操作请求响应中获取响应ID,从所述ID存储区中查找与所述响应ID相同的ID所对应的序号作为可能序号,在所述可能序号的顺序存储单元中查找次数值为1所对应的序号作为响应序号,将所述响应序号对应的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,在所述可能序号的顺序存储单元中,将次数值大于1的次数值减1,作为更新的次数值。
优选的,所述记录存储器还包括与状态存储区具有相同序号的地址存储区,所述地址存储区包括K个具有各自序号的地址存储单元;当目标总线上出现操作请求时,所述记录存储器还执行如下操作:从所述操作请求中获取当前地址,将所述当前地址写入所述当前序号的地址存储单元;所述超时检测器还按照设定频率执行如下操作:当所述目标序号的超时存储单元的超时标志置为超时,将所述目标序号的地址存储单元中的地址锁存。
优选的,所述超时检测器在超时的超时标志的触发下,将寄存器模块中的超时中断标志置为有效;CPU根据所述寄存器模块中有效的超时中断标志执行预设操作后,将所述超时中断标志置为无效。
优选的,所述超时检测器在将寄存器模块中的超时中断标志置为有效后的设定数量个时钟周期到来时,将超时的超时标志置为未超时。
优选的,所述的超时检测电路还包括地址译码器,所述地址译码器从所述状态存储区中查找状态标志为无效的状态存储单元的序号输出至所述记录存储器。
优选的,所述的超时检测电路还包括ID计数器,所述ID计数器用于从所述ID存储区统计所述当前ID出现的总次数,写入所述当前序号的顺序存储单元。
优选的,所述CPU根据所述从交互总线向所述超时检测器写入所述计数阈值。
本发明还提供了一种总线的超时检测电路的超时检测方法,所述总线的超时检测电路包括记录存储器,所述记录存储器包括具有相同序号的状态存储区、ID存储区、计数存储区和顺序存储区;所述状态存储区、ID存储区、计数存储区和顺序存储区包括K个具有各自序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元;其中,K为大于1的整数;所述超时检测方法包括如下步骤:在时钟驱动下持续产生计数值;当目标总线上出现操作请求时,执行如下操作:将所述状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将所述当前状态存储单元的状态标志修改为有效,将所述当前状态存储单元的序号作为当前序号;从所述操作请求中获取当前ID,将所述当前ID写入所述当前序号的ID存储单元;从所述时间计数器读取当前的计数值,写入所述当前序号的计数存储单元;从所述ID存储区统计所述当前ID出现的总次数,将所述总次数写入所述当前序号的顺序存储单元;按照设定频率执行如下操作:从所述时间计数器读取检测时刻的计数值,从所述顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算所述目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将所述计数变化量大于计数阈值的目标序号对应的操作请求判定为超时。
优选的,所述记录存储器还包括与状态存储区具有相同序号的超时存储区,所述超时存储区包括K个具有各自序号的超时存储单元;所述超时检测方法还包括如下步骤:将所述计数变化量小于所述计数阈值的目标序号对应的操作请求判定为未超时,将未超时对应的所述目标序号的超时存储单元的超时标志置为未超时;将超时对应的所述目标序号的超时存储单元的超时标志置为超时,并将超时对应的所述目标序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零。
优选的,当目标总线上出现操作请求响应时,执行如下操作:从所述操作请求响应中获取响应ID,从所述ID存储区中查找与所述响应ID相同的ID所对应的序号作为可能序号,在所述可能序号的顺序存储单元中查找次数值为1所对应的序号作为响应序号,将所述响应序号对应的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,在所述可能序号的顺序存储单元中,将次数值大于1的次数值减1,作为更新的次数值。
优选的,所述记录存储器还包括与状态存储区具有相同序号的地址存储区,所述地址存储区包括K个具有各自序号的地址存储单元;所述的超时检测方法还包括如下步骤:当目标总线上出现操作请求时,还执行如下操作:从所述操作请求中获取当前地址,将所述当前地址写入所述当前序号的地址存储单元;还按照设定频率执行如下操作:当所述目标序号的超时存储单元的超时标志置为超时,将所述目标序号的地址存储单元中的地址锁存。
优选的,在超时的超时标志的触发下,将寄存器模块中的超时中断标志置为有效;CPU根据所述寄存器模块中有效的超时中断标志执行预设操作后,将所述超时中断标志置为无效。
本发明还提供了一种芯片,包括任一所述的超时检测电路。
本发明还提供了一种电子设备,包括所述的芯片。
在上述方案中,具有各自序号的状态存储单元中的状态标志表示对应序号下的相关存储区的存储单元是否有效存储了某个操作请求的相关内容,ID存储单元存储对应序号下的操作请求的ID,计数存储单元对应序号下的操作请求被检测到时时间计数器的计数值,顺序存储单元存储对应序号下操作请求中的ID截至当前出现的次数值,通过判断次数值1的操作请求是否超时,即可以判断该ID最早的操作请求是否超时,因而,本超时检测电路能够以相对简单的电路实现对复杂目标总线的超时检测,尤其适合于高速的目标总线,以及对总线数据丢失及其看重的处理芯片,例如车载SOC。
本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解所述技术特征和技术方案带来的有益技术效果。
附图说明
以下将参照附图对本发明的优选实施方式进行描述。图中:
图1为根据本发明的一种优选实施方式的总线的超时检测系统;
图2为根据本发明的另一种优选实施方式的总线的超时检测系统。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分,为了避免混淆本发明的实质,公知的方法、过程、流程、元件并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
为了实现检测目标总线中任一操作请求(例如读操作请求、写操作请求等)是否超时这一主要目的,本发明提供了一种总线的超时检测系统,其如图1所示,其包括超时检测电路和寄存器模块,超时检测电路包括记录存储器、超时检测器、时间计数器。在本实施例的超时检测电路特别适合速度较快、具有支持不同通道并行传输以及乱序传输特点的目标总线(例如AXI4总线)。该超时检测电路、目标总线和CPU(中央处理器)通常集成在芯片(例如SOC芯片)内部,另外,该芯片还可以进一步集成另外的总线(例如APB总线),为了与目标总线相区分,在本实施例中可以将该另外的总线称为交互总线,超时检测电路分别与目标总线和交互总线连接,该交互总线的工作频率小于目标总线的工作频率,CPU可以通过该交互总线对超时检测电路进行操作(例如,参数配置、清除操作等),超时检测电路产生的相关参数(例如,超时中断标志等)也可以经由该交互总线上报给CPU。上述芯片可以应用在各种电子设备中,例如智能汽车中的相关设备中。
记录存储器包括状态存储区、ID存储区、计数存储区和顺序存储区;状态存储区包括K(其中,K为大于1的整数)个具有各自序号的状态存储单元,用于存储状态标志,以表示对应序号下的相关存储区的存储单元是否有效存储了某个操作请求的相关内容,其中,状态标志有效和状态标志无效可以分别用1和0表示(例如,在AXI4总线中,当awvalid和awready均为有效1时表示写操作请求有效,否则表示写操作请求无效;当arvalid和arready均为有效1时表示读操作请求有效,否则表示读操作请求无效);ID存储区包括K个具有各自序号的ID存储单元,用于存储对应序号下的操作请求的ID,该ID可以是发起该操作请求的主设备的ID;计数存储区包括K个具有各自序号的计数存储单元,用于存储对应序号下的操作请求被检测到时时间计数器的计数值;顺序存储区包括K个具有各自序号的顺序存储单元,用于存储对应序号下操作请求中的ID截至当前出现的次数值(即总次数);可以理解,如果某个ID的操作请求多次出现,则该ID操作请求首次出现时对应的顺序存储单元记录的次数值为1,第二次出现时对应的顺序存储单元记录的次数值为2,以此类推;可见,某个ID下次数值为1对应的操作请求是该某个ID下最早出现的操作请求,因此,通过判断次数值1的操作请求是否超时,即可以判断该ID最早的操作请求是否超时。作为一个例子,状态存储区具有64个存储单元,这些存储单元的序号分别是0至63,其他每个存储区同样具有64个存储单元,其存储单元的序号也分别是0至63。在超时检测电路刚开始工作时,所有存储区中的存储单元中存储的内容最好应被初始化,例如被置为无效。
时间计数器在时钟驱动下持续产生计数值,该时钟可以采用目标总线的时钟,时间计数器具有一最大计数值(例如28-1),一旦计数值达到该最大计数值,则时间计数器溢出,其计数值从0开始进入下一周期的计数。为了能够有效检测超时检测电路中的操作请求是否超时,该最大计数值应大于用于判断是否超时的超时阈值(亦可称为计数阈值)。
当目标总线上出现操作请求时,该操作请求可以被检测(例如,目标总线上相关的标志被置位有效,从而可以被检测到),一旦检测到操作请求,执行如下操作:将状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将当前状态存储单元的状态标志修改为有效,将当前状态存储单元的序号作为当前序号;从操作请求中获取当前ID,将当前ID写入当前序号的ID存储单元;从时间计数器读取当前的计数值,写入当前序号的计数存储单元;从ID存储区统计当前ID出现的总次数,将总次数写入当前序号的顺序存储单元。例如,一旦检测到当前的操作请求后,开始查找状态存储区中状态标志为无效的状态存储单元,在一个实施例中,查找到序号为3的状态存储单元中的状态标志为无效,则将序号3的状态存储单元的状态标志修改为有效,并将序号3作为当前序号;另外,基于从当前操作请求中获取的当前ID如ID1,将ID1写入当前序号3的ID存储单元;另外,从时间计数器读取当前的计数值130,写入当前序号3的计数存储单元;另外,从ID存储区统计ID1当前出现的总次数2,将总次数写入当前序号3的顺序存储单元。
在一些实施例中,超时检测电路还包括地址译码器,地址译码器从状态存储区中查找状态标志为无效的状态存储单元的序号输出至记录存储器,例如,查找状态存储区中最低位为无效(例如0)所在的序号,该地址译码器可以采用优先编码器。
在一些实施例中,超时检测电路还包括ID计数器,ID计数器用于从ID存储区统计当前ID出现的总次数,写入当前序号的顺序存储单元。
超时检测器依据记录存储器存储的相关信息,按照设定频率进行相关操作,以检测任一操作请求是否超时。其中,该设定频率可以是目标总线的工作频率,也可以比该工作频率小。具体而言,超时检测器按照设定频率执行如下操作:从时间计数器读取检测时刻的计数值,从顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将计数变化量大于计数阈值的目标序号对应的操作请求判定为超时,将计数变化量小于计数阈值的目标序号对应的操作请求判定为未超时。例如,计数阈值为200,在超时检测器的某次检测时,从时间计数器读取到的检测时刻的计数值为230;另外,从顺序存储区读取次数值为1所对应的所有序号为1、4,并将序号1、4作为目标序号,并计算目标序号1的计数存储单元中的计数值20与检测时刻的计数值230之间的计数变化量为230-20,即210,计算目标序号4的计数存储单元中的计数值130与检测时刻的计数值230之间的计数变化量为230-130,即100,由于目标序号1对应的计数变化量210大于计数阈值200,将目标序号1对应的操作请求判定为超时,而目标序号4对应的计数变化量100小于计数阈值200,将目标序号4对应的操作请求判定为未超时。若经过一段时间,检测时刻的计数值变化为30,目标序号4的计数存储单元中的计数值130与检测时刻的计数值30之间的计数变化量为:最大计数值255-130+30=155。
本实施例中,具有各自序号的状态存储单元中的状态标志表示对应序号下的相关存储区的存储单元是否有效存储了某个操作请求的相关内容,ID存储单元存储对应序号下的操作请求的ID,计数存储单元对应序号下的操作请求被检测到时时间计数器的计数值,顺序存储单元存储对应序号下操作请求中的ID截至当前出现的次数值,通过判断次数值1的操作请求是否超时,即可以判断该ID最早的操作请求是否超时,因而,本超时检测电路能够以相对简单的电路实现对复杂目标总线的超时检测,尤其适合于高速的目标总线,以及对总线数据丢失极其看重的处理芯片,例如车载SOC。
在一些实施例中,记录存储器还包括与状态存储区具有相同序号的超时存储区,超时存储区包括K个具有各自序号的超时存储单元。作为一个例子,超时存储区具有64个存储单元,这些存储单元的序号分别是0至63。超时检测器将未超时对应的目标序号的超时存储单元的超时标志置为未超时(例如,0代表未超时);另外,超时检测器将超时对应的目标序号的超时存储单元的超时标志置为超时(例如,1代表超时),并将超时对应的目标序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,例如,目标序号4对应的计数变化量大于计数阈值后,目标序号4的状态存储单元、ID存储单元、计数存储单元和顺序存储单元均被清零。
在一些实施例中,记录存储器还包括与状态存储区具有相同序号的地址存储区,地址存储区包括K个具有各自序号的地址存储单元。作为一个例子,地址存储区具有64个存储单元,这些存储单元的序号分别是0至63。当目标总线上出现操作请求时,记录存储器还执行如下操作:从操作请求中获取当前地址(例如是读操作请求的目的地址,或者写操作请求的目的地址),将当前地址写入当前序号的地址存储单元。超时检测器还按照设定频率执行如下操作:当目标序号超时存储单元的超时标志置为超时,将目标序号的地址存储单元中的地址锁存,例如存储至寄存器模块中的状态寄存器,以便CPU经由交互总线从该寄存器模块读取被锁存的地址,这样,CPU可以通过工作频率较低的交互总线实现对工作频率较高的目标总线的超时信息的读取。
当目标序号的超时存储单元的超时标志置为超时,还可以将目标序号的ID存储单元中的ID号等信息锁存,同样,这些信息可以存储至寄存器模块中中的状态寄存器,以便CPU经由交互总线从该寄存器模块读取被锁存的这些信息,这样,CPU可以通过工作频率较低的交互总线实现对工作频率较高的目标总线的超时信息的读取。
在一些实施例中,如前所述,寄存器模块包括状态寄存器,超时检测器在超时的超时标志的触发下,将寄存器模块中状态寄存器相关的超时中断标志置为有效;CPU根据寄存器模块中有效的超时中断标志后,执行预设中断操作,在执行完预设中断操作后,CPU将超时中断标志置为无效。例如,超时检测器可以对所有超时存储单元的超时标志进行或操作,将得到的结果tmo_stat写入寄存器模块中的超时中断标志tmo_stat_o,因此,只要有一个超时存储单元的超时标志为超时,则或操作的结果为超时,进而写入寄存器模块中的超时中断标志为有效;该超时中断标志tmo_stat_o通过中断电路送入CPU,CPU根据该超时中断标志tmo_stat_o执行预设中断操作。
在一些实施例中,超时检测器在将寄存器模块中的超时中断标志置为有效后的设定数量个时钟周期到来时,将超时的超时标志置为未超时。例如,某个序号的超时存储单元在某个时钟周期上升沿超时标志被置为超时,在该时钟周期中触发寄存器模块中的超时中断标志置为有效,之后,下一个时钟周期的上升沿到来时,该某个序号的超时存储单元的超时标志被置为未超时。
在一些实施例中,寄存器模块中还包括配置寄存器,CPU根据从交互总线向超时检测器写入配置参数,例如计数阈值,或者控制超时检测电路是否启动的参数等。
在一些实施例中,超时检测电路还包括从设备响应检查器,当目标总线上出现操作请求响应时,从设备响应检查器执行如下操作:从操作请求响应中获取响应ID(与操作请求类似,可以与操作请求响应所指向的主设备的ID作为该响应ID,例如,在AXI4总线中,当bvalid和bready均为有效1时表示写操作请求响应有效,否则表示写操作请求响应无效;当rvalid和rlast均为有效1时表示读操作请求响应有效,否则表示读操作请求响应无效),从ID存储区中查找与响应ID相同的ID所对应的序号作为可能序号,在可能序号的顺序存储单元中查找次数值为1所对应的序号作为响应序号,将响应序号对应的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,在可能序号的顺序存储单元中,将次数值大于1的次数值减1,作为更新的次数值。例如,从操作请求响应中获取得到响应ID1,从ID存储区中查找具有该ID1的序号为1、2和4,其中,序号1、2和4的次数值分别为1、2和3,因此,将序号1的状态存储单元、ID存储单元、计数存储单元和顺序存储单元均清零,另外,对于序号2和4的顺序存储单元中存储的次数值分别减1作为新的次数值,即1和2,写入序号2和4的顺序存储单元中。
为了增强整个超时检测系统抵抗偶发错误的能力,本发明还提供了另一种总线的超时检测系统,如图2所示,其包括主超时检测电路、主寄存器模块、锁步超时检测电路、锁步寄存器模块、目标总线输入延迟单元、交互总线输入延迟单元、交互总线输出延迟单元和交互总线冗余锁步检查单元;主超时检测电路与目标总线(例如AXI4总线)连接,从超时检测电路经由目标总线输入延迟单元与目标总线连接;主寄存器模块与交互总线(例如APB总线)连接,锁步寄存器模块经由交互总线输入延迟单元与交互总线连接;主寄存器模块的输出端输出的超时中断标志tmo_stat_o、读取标志信号(CPU经由交互总线从主寄存器模块读取相关锁存的信息后产生的反馈信号)经由交互总线输出延迟单元输入至交互总线冗余锁步检查单元;锁步寄存器模块的输出端输出的超时中断标志tmo_stat_o、读取标志信号(CPU经由交互总线从主寄存器模块读取相关锁存的信息后产生的反馈信号)也输入至交互总线冗余锁步检查单元;其中,目标总线输入延迟单元对输入至锁步超时检测电路的信号作出延时、交互总线输入延迟单元对输入至锁步寄存器模块的信号作出延时、交互总线输出延迟单元对主寄存器模块的输出端输出的信号作出的延时是相同的。交互总线冗余锁步检查单元对输入的两路信号进行比较,如果发现两路信号不同,则发出锁步告警信号至CPU。这样,整个超时检测系统抵抗偶发错误的能力会变强。
本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。
应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。
Claims (16)
1.一种总线的超时检测电路,包括记录存储器和超时检测器,其特征在于,还包括时间计数器;所述记录存储器包括具有相同序号的状态存储区、ID存储区、计数存储区和顺序存储区;所述状态存储区、ID存储区、计数存储区和顺序存储区包括K个具有各自序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元;其中,K为大于1的整数;
所述时间计数器在时钟驱动下持续产生计数值;
当目标总线上出现操作请求时,执行如下操作:将所述状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将所述当前状态存储单元的状态标志修改为有效,将所述当前状态存储单元的序号作为当前序号;从所述操作请求中获取当前ID,将所述当前ID写入所述当前序号的ID存储单元;从所述时间计数器读取当前的计数值,写入所述当前序号的计数存储单元;从所述ID存储区统计所述当前ID出现的总次数,将所述总次数写入所述当前序号的顺序存储单元;
所述超时检测器按照设定频率执行如下操作:从所述时间计数器读取检测时刻的计数值,从所述顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算所述目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将所述计数变化量大于计数阈值的目标序号对应的操作请求判定为超时。
2.根据权利要求1所述的总线的超时检测电路,其特征在于,
所述记录存储器还包括与状态存储区具有相同序号的超时存储区,所述超时存储区包括K个具有各自序号的超时存储单元;
所述超时检测器还将所述计数变化量小于所述计数阈值的目标序号对应的操作请求判定为未超时,将未超时对应的所述目标序号的超时存储单元的超时标志置为未超时;
所述超时检测器将超时对应的所述目标序号的超时存储单元的超时标志置为超时,并将超时对应的所述目标序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零。
3.根据权利要求1所述的总线的超时检测电路,其特征在于,
还包括从设备响应检查器,
当目标总线上出现操作请求响应时,所述从设备响应检查器执行如下操作:
从所述操作请求响应中获取响应ID,从所述ID存储区中查找与所述响应ID相同的ID所对应的序号作为可能序号,在所述可能序号的顺序存储单元中查找次数值为1所对应的序号作为响应序号,将所述响应序号对应的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,在所述可能序号的顺序存储单元中,将次数值大于1的次数值减1,作为更新的次数值。
4.根据权利要求2所述的总线的超时检测电路,其特征在于,
所述记录存储器还包括与状态存储区具有相同序号的地址存储区,所述地址存储区包括K个具有各自序号的地址存储单元;
当目标总线上出现操作请求时,所述记录存储器还执行如下操作:从所述操作请求中获取当前地址,将所述当前地址写入所述当前序号的地址存储单元;
所述超时检测器还按照设定频率执行如下操作:当所述目标序号的超时存储单元的超时标志置为超时,将所述目标序号的地址存储单元中的地址锁存。
5.根据权利要求2所述的总线的超时检测电路,其特征在于,
所述超时检测器在超时的超时标志的触发下,将寄存器模块中的超时中断标志置为有效;CPU根据所述寄存器模块中有效的超时中断标志执行预设操作后,将所述超时中断标志置为无效。
6.根据权利要求5所述的总线的超时检测电路,其特征在于,
所述超时检测器在将寄存器模块中的超时中断标志置为有效后的设定数量个时钟周期到来时,将超时的超时标志置为未超时。
7.根据权利要求2所述的总线的超时检测电路,其特征在于,还包括地址译码器,
所述地址译码器从所述状态存储区中查找状态标志为无效的状态存储单元的序号输出至所述记录存储器。
8.根据权利要求2所述的总线的超时检测电路,其特征在于,还包括ID计数器,所述ID计数器用于从所述ID存储区统计所述当前ID出现的总次数,写入所述当前序号的顺序存储单元。
9.根据权利要求5所述的总线的超时检测电路,其特征在于,
还包括交互总线,所述CPU根据所述交互总线向所述超时检测器写入所述计数阈值,所述交互总线的工作频率小于所述目标总线的工作频率。
10.一种总线的超时检测电路的检测方法,所述超时检测电路包括记录存储器,其特征在于,所述记录存储器包括具有相同序号的状态存储区、ID存储区、计数存储区和顺序存储区;所述状态存储区、ID存储区、计数存储区和顺序存储区包括K个具有各自序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元;其中,K为大于1的整数;所述检测方法包括如下步骤:
在时钟驱动下持续产生计数值;
当目标总线上出现操作请求时,执行如下操作:将所述状态存储区中状态标志为无效的状态存储单元作为当前状态存储单元,将所述当前状态存储单元的状态标志修改为有效,将所述当前状态存储单元的序号作为当前序号;从所述操作请求中获取当前ID,将所述当前ID写入所述当前序号的ID存储单元;从时间计数器读取当前的计数值,写入所述当前序号的计数存储单元;从所述ID存储区统计所述当前ID出现的总次数,将所述总次数写入所述当前序号的顺序存储单元;
按照设定频率执行如下操作:从所述时间计数器读取检测时刻的计数值,从所述顺序存储区读取次数值为1所对应的所有序号作为目标序号,并计算所述目标序号的计数存储单元中的计数值与检测时刻的计数值之间的计数变化量,将所述计数变化量大于计数阈值的目标序号对应的操作请求判定为超时。
11.根据权利要求10所述的检测方法,其特征在于,
所述记录存储器还包括与状态存储区具有相同序号的超时存储区,所述超时存储区包括K个具有各自序号的超时存储单元;
所述检测方法还包括如下步骤:
将所述计数变化量小于所述计数阈值的目标序号对应的操作请求判定为未超时,将未超时对应的所述目标序号的超时存储单元的超时标志置为未超时;
将超时对应的所述目标序号的超时存储单元的超时标志置为超时,并将超时对应的所述目标序号的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零。
12.根据权利要求10所述的检测方法,其特征在于,
当目标总线上出现操作请求响应时,执行如下操作:
从所述操作请求响应中获取响应ID,从所述ID存储区中查找与所述响应ID相同的ID所对应的序号作为可能序号,在所述可能序号的顺序存储单元中查找次数值为1所对应的序号作为响应序号,将所述响应序号对应的状态存储单元、ID存储单元、计数存储单元和顺序存储单元清零,在所述可能序号的顺序存储单元中,将次数值大于1的次数值减1,作为更新的次数值。
13.根据权利要求11所述的检测方法,其特征在于,
所述记录存储器还包括与状态存储区具有相同序号的地址存储区,所述地址存储区包括K个具有各自序号的地址存储单元;
所述的检测方法还包括如下步骤:
当目标总线上出现操作请求时,还执行如下操作:从所述操作请求中获取当前地址,将所述当前地址写入所述当前序号的地址存储单元;
还按照设定频率执行如下操作:当所述目标序号的超时存储单元的超时标志置为超时,将所述目标序号的地址存储单元中的地址锁存。
14.根据权利要求11所述的检测方法,其特征在于,
在超时的超时标志的触发下,将寄存器模块中的超时中断标志置为有效;CPU根据所述寄存器模块中有效的超时中断标志执行预设操作后,将所述超时中断标志置为无效。
15.一种芯片,其特征在于,包括如权利要求1-9任一所述的总线的超时检测电路。
16.一种电子设备,其特征在于,包括如权利要求15所述的芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410015533.0A CN117521570B (zh) | 2024-01-05 | 2024-01-05 | 总线的超时检测电路、方法、芯片及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410015533.0A CN117521570B (zh) | 2024-01-05 | 2024-01-05 | 总线的超时检测电路、方法、芯片及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117521570A CN117521570A (zh) | 2024-02-06 |
CN117521570B true CN117521570B (zh) | 2024-04-02 |
Family
ID=89751702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410015533.0A Active CN117521570B (zh) | 2024-01-05 | 2024-01-05 | 总线的超时检测电路、方法、芯片及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117521570B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101529383A (zh) * | 2006-08-24 | 2009-09-09 | 内特可力亚斯系统股份有限公司 | 任务处理装置 |
CN101989242A (zh) * | 2010-11-12 | 2011-03-23 | 深圳国微技术有限公司 | 一种提高soc系统安全的总线监视器及其实现方法 |
CN103034599A (zh) * | 2012-12-12 | 2013-04-10 | 深圳国微技术有限公司 | 安全dma控制器、soc系统及其数据搬运方法 |
CN103477331A (zh) * | 2012-02-20 | 2013-12-25 | 松下电器产业株式会社 | 启动装置、目标装置、通信系统、超时检测方法以及超时检测程序 |
CN212112457U (zh) * | 2020-06-23 | 2020-12-08 | 唐山行世科技有限公司 | 一种总线控制器 |
CN113722069A (zh) * | 2021-09-06 | 2021-11-30 | 北京左江科技股份有限公司 | 一种基于fpga的新型总线轮询调度方法及系统 |
-
2024
- 2024-01-05 CN CN202410015533.0A patent/CN117521570B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101529383A (zh) * | 2006-08-24 | 2009-09-09 | 内特可力亚斯系统股份有限公司 | 任务处理装置 |
CN101989242A (zh) * | 2010-11-12 | 2011-03-23 | 深圳国微技术有限公司 | 一种提高soc系统安全的总线监视器及其实现方法 |
CN103477331A (zh) * | 2012-02-20 | 2013-12-25 | 松下电器产业株式会社 | 启动装置、目标装置、通信系统、超时检测方法以及超时检测程序 |
CN103034599A (zh) * | 2012-12-12 | 2013-04-10 | 深圳国微技术有限公司 | 安全dma控制器、soc系统及其数据搬运方法 |
CN212112457U (zh) * | 2020-06-23 | 2020-12-08 | 唐山行世科技有限公司 | 一种总线控制器 |
CN113722069A (zh) * | 2021-09-06 | 2021-11-30 | 北京左江科技股份有限公司 | 一种基于fpga的新型总线轮询调度方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于FPGA的1553B总线控制器接口芯片设计;武恒州 等;仪器仪表用户;20100608;第17卷(第03期);45-46 * |
Also Published As
Publication number | Publication date |
---|---|
CN117521570A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5608866A (en) | System for measuring and analyzing operation of information processor | |
RU2421782C2 (ru) | Схема управления сигналами шины и схема обработки сигналов, имеющая схему управления сигналами шины | |
US10592376B2 (en) | Real-time hierarchical protocol decoding | |
CN110389846B (zh) | 记录事件的电子装置及其方法 | |
US20080005537A1 (en) | Quantifying core reliability in a multi-core system | |
US6473841B1 (en) | Signal processing apparatus with memory access history storage | |
EP2348415A2 (en) | Error controlling system, processor and error injection method | |
US20100321051A1 (en) | Semiconductor integrated circuit, debug/trace circuit and semiconductor integrated circuit operation observing method | |
CN100429626C (zh) | 信息处理设备和错误检测方法 | |
CN117521570B (zh) | 总线的超时检测电路、方法、芯片及电子设备 | |
US6728906B1 (en) | Trace buffer for a configurable system-on-chip | |
CN100585611C (zh) | 读卡机控制芯片及其检测干扰的方法 | |
US8051350B2 (en) | Serial interface device built-in self test | |
US7606941B2 (en) | FIFO device | |
CN112613254B (zh) | 一种处理器内部镜像控制模块注错验证系统及方法 | |
US6742073B1 (en) | Bus controller technique to control N buses | |
US7444549B1 (en) | Method and apparatus for facilitating debugging of an integrated circuit | |
US20050128834A1 (en) | Data transfer circuit having collision detection circuit | |
CN116107795B (zh) | 报错电路及芯片设备 | |
JP4787624B2 (ja) | デバッグ回路 | |
JPH06331698A (ja) | 論理回路解析システム | |
US20050289425A1 (en) | Test pattern generating method, test pattern generating apparatus and storing medium stored with test pattern generating program being readable by computer | |
US20170351565A1 (en) | Apparatus and method to provide a mounted electronic part with information related to a failure occurrence therein | |
CN117350245A (zh) | 内建验证功能的芯片以及芯片内建验证方法 | |
US20020120892A1 (en) | Error detecting circuit for detecting the location of error |
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 |