技术新讯 > 计算推算,计数设备的制造及其应用技术 > 处理器、处理器故障的检测方法、装置及电子设备与流程  >  正文

处理器、处理器故障的检测方法、装置及电子设备与流程

  • 国知局
  • 2025-01-10 13:32:31

本技术涉及处理器领域,具体而言,涉及一种处理器、处理器故障的检测方法、装置及电子设备。

背景技术:

1、随着芯片应用领域(如:车联网、车载以太网、雷达、自动驾驶/辅助驾驶等)的不断扩增,对芯片的可靠性以及容错能力的需求也随之增长。例如,在自动驾驶汽车领域,诸如防抱死制动、车辆稳定性和线控技术等安全关键应用,对安全性有很高的要求。

2、1980年代提出的双核锁步(dual-core lockstep,dcls)是较广泛使用的系统级加固方法之一。双核锁步是指在一个处理器芯片中,例化两份处理器核心,两个核心运行相同的应用程序,并产生相同的结果。如果两个核心的结果不同,系统可以采取进一步的措施,例如重试指令或重启系统,以此提高芯片可靠性和容错能力。目前,相关技术在实现双核锁步功能的处理器架构中通常设置结构相同的主核和冗余核,从而导致处理器功耗和面积较高。

3、针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

1、本技术实施例提供了一种处理器、处理器故障的检测方法、装置及电子设备,以至少解决相关技术在实现双核锁步功能的处理器架构中设置相同的主核和冗余核,导致处理器功耗高的技术问题。

2、根据本技术实施例的一个方面,提供了一种处理器,处理器基于risc-v架构实现,包括:主核,用于执行指令处理操作;冗余核,用于与主核并行操作以执行主核所执行的指令处理操作,其中,冗余核中的功能模块与主核中的第一功能模块相同,主核中的第二功能模块由主核和冗余核共享,第二功能模块为主核中除第一功能模块以外的功能模块;故障检测单元,用于根据主核和冗余核各自在执行指令处理操作的过程中的对外输出信号检测处理器是否存在故障。

3、进一步地,第二功能模块为以下至少之一:存储模块、分支预测模块,存储模块包括以下至少之一:指令缓存、数据缓存、用于记录虚拟地址与物理地址之间映射关系的快表,分支预测模块包括分支预测器和用于记录历史分支指令的执行结果的分支历史表。

4、进一步地,第二功能模块用于接收主核发送至第二功能模块的访问信号,并基于访问信号向主核和冗余核反馈数据,以实现在主核和冗余核之间共享第二功能模块。

5、根据本技术实施例的另一方面,还提供了一种处理器故障的检测方法,应用于上述的处理器,包括:获取主核在执行指令处理操作的过程中的对外输出信号,得到第一对外输出信号;获取冗余核在执行指令处理操作的过程中的对外输出信号,得到第二对外输出信号;根据第一对外输出信号和第二对外输出信号检测处理器是否存在故障。

6、进一步地,根据第一对外输出信号和第二对外输出信号检测处理器是否存在故障包括:获取主核针对主核中的第二功能模块的访问信号,得到第一访问信号,其中,主核的访问信号在处理器正常工作的情况下发送至第二功能模块,第二功能模块基于主核的访问信号向主核和冗余核反馈数据;获取冗余核针对第二功能模块的访问信号,得到第二访问信号,其中,冗余核的访问信号在处理器正常工作的情况下不发送至第二功能模块;根据第一对外输出信号和第二对外输出信号、第一访问信号和第二访问信号检测处理器是否存在故障。

7、进一步地,在第二功能模块包括存储模块,存储模块包括指令缓存、数据缓存、用于记录虚拟地址与物理地址之间映射关系的快表的情况下,获取主核针对主核中的第二功能模块的访问信号,得到第一访问信号包括:在处理器流水线的指令获取阶段中,获取主核中的指令获取模块针对指令缓存的访问信号,得到第一访问子信号;在处理器流水线的指令执行阶段中,获取主核中的目标指令执行模块针对数据缓存的访问信号,得到第二访问子信号,并获取主核中的内存管理模块针对快表的访问信号,得到第三访问子信号;依据第一访问子信号、第二访问子信号以及第三访问子信号得到第一访问信号。

8、进一步地,在第二功能模块包括分支预测模块的情况下,获取主核针对主核中的第二功能模块的访问信号,得到第一访问信号包括:在处理器流水线的分支预测阶段中,获取主核中的指令获取模块针对分支预测模块的访问信号,得到第四访问子信号;依据第四访问子信号得到第一访问信号。

9、进一步地,获取主核在执行指令处理操作的过程中的对外输出信号,得到第一对外输出信号包括:在主核执行指令处理操作的过程中,若主核输出对外输出信号,则对主核输出的对外输出信号延迟第一时钟周期,得到第一对外输出信号;获取冗余核在执行指令处理操作的过程中的对外输出信号,得到第二对外输出信号包括:在存在针对冗余核的外部输入信号时,对针对冗余核的外部输入信号延迟第二时钟周期;在冗余核基于延迟处理后的外部输入信号执行指令处理操作的过程中,若冗余核输出对外输出信号,则对冗余核输出的对外输出信号延迟第三时钟周期,得到第二对外输出信号,其中,第二时钟周期与第三时钟周期二者之和与第一时钟周期相同。

10、进一步地,获取主核针对主核中的第二功能模块的访问信号,得到第一访问信号包括:在主核输出针对第二功能模块的访问信号的情况下,对主核输出的访问信号延迟第一时钟周期,得到第一访问信号;获取冗余核针对第二功能模块的访问信号,得到第二访问信号包括:在冗余核输出针对第二功能模块的访问信号的情况下,对冗余核输出的访问信号延迟第三时钟周期,得到第二访问信号。

11、进一步地,根据第一对外输出信号和第二对外输出信号、第一访问信号和第二访问信号检测处理器是否存在故障包括:在第一对外输出信号与第二对外输出信号相同,且第一访问信号与第二访问信号相同的情况下,确定处理器不存在故障;在第一对外输出信号与第二对外输出信号不同,或者第一访问信号与第二访问信号不同的情况下,确定处理器存在故障。

12、根据本技术实施例的另一方面,还提供了一种处理器故障的检测装置,应用于上述的处理器,包括:第一获取单元,用于获取主核在执行指令处理操作的过程中的对外输出信号,得到第一对外输出信号;第二获取单元,用于获取冗余核在执行指令处理操作的过程中的对外输出信号,得到第二对外输出信号;检测单元,用于根据第一对外输出信号和第二对外输出信号检测处理器是否存在故障。

13、进一步地,检测单元包括:第一获取子单元,用于获取主核针对主核中的第二功能模块的访问信号,得到第一访问信号,其中,主核的访问信号在处理器正常工作的情况下发送至第二功能模块,第二功能模块基于主核的访问信号向主核和冗余核反馈数据;第二获取子单元,用于获取冗余核针对第二功能模块的访问信号,得到第二访问信号,其中,冗余核的访问信号在处理器正常工作的情况下不发送至第二功能模块;检测子单元,用于根据第一对外输出信号和第二对外输出信号、第一访问信号和第二访问信号检测处理器是否存在故障。

14、进一步地,在第二功能模块包括存储模块,存储模块包括指令缓存、数据缓存、用于记录虚拟地址与物理地址之间映射关系的快表的情况下,第一获取子单元包括:第一获取模块,用于在处理器流水线的指令获取阶段中,获取主核中的指令获取模块针对指令缓存的访问信号,得到第一访问子信号;第二获取模块,用于在处理器流水线的指令执行阶段中,获取主核中的目标指令执行模块针对数据缓存的访问信号,得到第二访问子信号,并获取主核中的内存管理模块针对快表的访问信号,得到第三访问子信号;第一处理模块,用于依据第一访问子信号、第二访问子信号以及第三访问子信号得到第一访问信号。

15、进一步地,在第二功能模块包括分支预测模块的情况下,第一获取子单元包括:第三获取模块,用于在处理器流水线的分支预测阶段中,获取主核中的指令获取模块针对分支预测模块的访问信号,得到第四访问子信号;第二处理模块,用于依据第四访问子信号得到第一访问信号。

16、进一步地,第一获取单元包括:第一处理子单元,用于在主核执行指令处理操作的过程中,若主核输出对外输出信号,则对主核输出的对外输出信号延迟第一时钟周期,得到第一对外输出信号;第二获取单元包括:第二处理子单元,用于在存在针对冗余核的外部输入信号时,对针对冗余核的外部输入信号延迟第二时钟周期;第三处理子单元,用于在冗余核基于延迟处理后的外部输入信号执行指令处理操作的过程中,若冗余核输出对外输出信号,则对冗余核输出的对外输出信号延迟第三时钟周期,得到第二对外输出信号,其中,第二时钟周期与第三时钟周期二者之和与第一时钟周期相同。

17、进一步地,第一获取子单元包括:第三处理模块,用于在主核输出针对第二功能模块的访问信号的情况下,对主核输出的访问信号延迟第一时钟周期,得到第一访问信号;第二获取子单元包括:第四处理模块,用于在冗余核输出针对第二功能模块的访问信号的情况下,对冗余核输出的访问信号延迟第三时钟周期,得到第二访问信号。

18、进一步地,检测子单元包括:第一确定模块,用于在第一对外输出信号与第二对外输出信号相同,且第一访问信号与第二访问信号相同的情况下,确定处理器不存在故障;第二确定模块,用于在第一对外输出信号与第二对外输出信号不同,或者第一访问信号与第二访问信号不同的情况下,确定处理器存在故障。

19、根据本发明实施例的另一方面,还提供了一种电子设备,包括:存储器,存储有可执行程序;处理器,用于运行程序,其中,程序运行时执行上述任意一项的处理器故障的检测方法。

20、根据本发明实施例的另一方面,还提供了一种计算机程序产品,包括计算机程序或指令,计算机程序或指令在被处理器执行时实现上述任意一项的处理器故障的检测方法。

21、在本技术实施例中,通过设置处理器基于risc-v架构实现,包括主核,用于执行指令处理操作;冗余核,用于与主核并行操作以执行主核所执行的指令处理操作,其中,冗余核中的功能模块与主核中的第一功能模块相同,主核中的第二功能模块由主核和冗余核共享,第二功能模块为主核中除第一功能模块以外的功能模块;故障检测单元,用于根据主核和冗余核各自在执行指令处理操作的过程中的对外输出信号检测处理器是否存在故障的方式,主核执行指令处理操作,冗余核与主核并行操作以执行主核所执行的指令处理操作,故障检测单元根据主核和冗余核各自在执行指令处理操作的过程中的对外输出信号检测处理器是否存在故障,实现了在处理器中实现双核锁步功能,通过设置冗余核中的功能模块与主核中的第一功能模块相同,主核中的第二功能模块由主核和冗余核共享,有效减少了冗余核中所使用的功能模块的数量,从而可以有效降低处理器功耗,并减少冗余核的占用面积。从而达到了在处理器中精简冗余核的目的,实现了降低处理器功耗的技术效果,进而解决了相关技术在实现双核锁步功能的处理器架构中设置相同的主核和冗余核,导致处理器功耗高的技术问题。

本文地址:https://www.jishuxx.com/zhuanli/20250110/353807.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。