掌桥专利:专业的专利平台
掌桥专利
首页

半导体装置及其制造方法

文献发布时间:2024-04-18 19:58:26


半导体装置及其制造方法

相关申请的交叉引用

于2022年5月30日提交的日本专利申请No.2022-087448的公开内容(包括说明书、附图和摘要)通过引用以其整体并入本文。

技术领域

本公开涉及半导体装置,并且例如可应用于执行锁步操作的半导体装置。

背景技术

下面列出了所公开的技术。

[专利文件1]美国未审专利申请公开No.2008/0244305

作为用于增加半导体装置的可靠性的技术之一,提出了一种锁步(lockstep)技术,其使得两个中央处理单元(CPU)核在相同的周期中运行,并且使得两个CPU核执行相同的处理。例如,专利文件1公开了这样一种延迟锁步模式下的电子装置,该延迟锁步模式使来自一个CPU核的输出被延迟电路延迟,并使另一个CPU核的输入被延迟电路延迟,以由此减轻关键路径的定时约束。

发明内容

然而,专利文件1中所公开的电子装置在构成CPU核的硬件出现故障的情况下不能继续操作,因此不能充分地提高可靠性。

根据本说明书的描述和附图,本公开的其他目的和新颖特征将是明显的。

下面将简要描述本公开的典型实施例的概要。具体地,该半导体装置包括以延迟锁步模式进行操作的主装置、以延迟锁步模式与主装置并行地操作的子装置、使主装置的输出延迟的延迟电路、根据主装置的故障信息来将主装置切换到子装置的切换电路。

根据上述半导体装置,可以增强半导体装置的可靠性。

附图说明

图1是示出了根据第一实施例的故障操作系统的配置的框图。

图2是示出了根据第一实施例的第一示例的半导体装置的配置的框图。

图3是指示了图2所示的半导体装置的操作的时序图。

图4是示出了根据第一实施例的第二示例的半导体装置的配置的框图。

图5是指示了图4所示的半导体装置的操作的时序图。

图6是示出了根据第一实施例的第三示例的半导体装置的配置的框图。

图7是示出了根据第一实施例的第四示例的半导体装置的配置的框图。

图8是示出了根据第二实施例的故障操作系统的配置的框图。

图9是示出了根据第二实施例的第五示例的半导体装置的配置的框图。

图10是指示图9所示的故障操作系统的操作的时序图。

图11是示出了根据比较示例的故障操作系统的配置的框图。

图12是指示了图11所示的故障操作系统的正常操作的时序图。

图13是指示了当在图11所示的故障操作系统的主要块中检测到故障时的操作的时序图。

具体实施方式

在下文中,将参考附图描述实施例和示例。然而,在以下描述中,相同的组件可以由相同的附图标记表示,并且可省略其重复描述。

车载电子控制单元(ECU)已经进行了从故障安全系统到故障操作(在故障情况下的连续操作)系统的转变。当发生故障时,故障安全系统切换到预定的安全状态。故障操作系统在某种程度上确保了执行操作的功能,即使在执行操作的功能出现故障的情况下。

故障操作系统通过热备用系统来实现,该热备用系统例如是用作冗余系统的双工系统之一。在热备用系统中,主要系统执行操作直到诊断功能检测到问题。此时,后备系统与主要系统并行地操作。在检测到问题的情况下,后备系统接管主要系统的角色。

在本实施例中,其中延迟锁步技术被应用于主要系统和后备系统两者的装置(DDDC装置)构建故障操作系统。这里,DDDC是双工延迟比较(Duo Duplex DelayedComparison)的缩写。下面将描述两个实施例。

第一实施例

将参考图1描述根据第一实施例的故障操作系统。图1是示出了根据第一实施例的半导体装置的配置的框图。

根据第一实施例的故障操作系统包括DDDC装置1。DDDC装置1包括主要块(PRM)10、后备块(BCK)20、输入控制电路(INP_CNT)30、输出控制电路(OUT_CNT)40以及延迟电路(DLY)50。

主要块10包括第一模块(MDL1-1)11、第二模块(MDL1-2)12、第一延迟电路(DLY1-1)13、第二延迟电路(DLY1-2)14以及比较器(CMP)15。第二模块12具有与第一模块11等效的性能和功能。第二模块12以由第二延迟电路(DLY1-2)14生成的延迟量比第一模块11更慢地执行与第一模块11所执行的处理相同的处理。第一模块11和第二模块12随着时钟同步操作。第一延迟电路(DLY1-1)13和第二延迟电路(DLY1-2)14中的每一者的延迟量是相同数目的时钟周期。

后备块20具有等效于主要块10的配置,并且如在主要块10中那样进行操作。具体地,后备块20包括第一模块(MDL2-1)21、第二模块(MDL2-2)22、第一延迟电路(DLY2-1)23、第二延迟电路(DLY2-2)24以及比较器(CMP)25。第一模块21具有与主要块10中的第一模块11和第二模块12等效的性能和功能。第二模块22具有与第一模块21等效的性能和功能。第二模块22以在第二延迟电路(DLY2-2)24中生成的延迟量比第一模块21更慢地执行与第一模块21所执行的处理相同的处理。第一模块21和第二模块22随着时钟同步操作。第一延迟电路(DLY2-1)23和第二延迟电路(DLY2-2)24中的每一者的延迟量是相同数目的时钟周期。后备块20中的第一延迟电路(DLY2-1)23和主要块10中的第一延迟电路(DLY1-1)13中的每一者的延迟量是相同数目的时钟周期。

输入信号(INP)通过输入控制电路30输入到主要块10,并且通过输入控制电路30和延迟电路50输入到后备块20。在共同时间,后备块20执行与主要块10的操作等效的操作。在正常时间,输出控制电路40选择来自主要块10中的第一模块11的输出信号(Oa),以输出该信号作为输出信号(OUT)。当比较器15检测到主要块10中的问题时,输出控制电路40选择来自后备块20中的第一模块21的输出信号(Oc),以输出该信号作为输出信号(OUT)。

第二延迟电路14在主要块10中使第二模块12相对于第一模块11而延迟。第一延迟电路13使第一模块11的输出延迟。比较器15将来自第一延迟电路13的输出信号(Oa’)与来自第二模块12的输出信号(Ob)进行比较,并且在输出信号(Oa’)与输出信号(Ob)之间存在失配的情况下,比较器15将失配检测为故障。

输入到后备块20的信号以相对于输入到主要块10的输入信号(INP)而延迟的方式输入,因此后备块20的操作相对于主要块10而延迟。因此,生成主要块10的操作与后备块20的操作之间的时间差,并且在该时间差内,输出控制电路40可以使后备块20接管主要块10的操作。延迟电路(DLY)50的延迟量与等于或大于第一延迟电路13的延迟量的时钟周期数等效。

在使用由主要块10的比较器15获得的比较结果的情况下,输入控制电路30控制到主要块10的输入信号,并且输出控制电路40控制来自主要块10的输出信号。因此,可以防止从DDDC装置1输出错误(false)信息。而且,在从主要块10到后备块20的接管的时间段期间,可以维持与DDDC装置1之外的外部装置的协议。这里,协议意味着使用例如数据信号、有效信号(VLD)和就绪信号(RDY)的总线协议。有效信号(VLD)表示发送器侧呈现对数据信号有效的数据。就绪信号(RDY)表示接收器侧可以接收数据信号的数据。

将延迟锁步技术应用于主要块10和后备块20。因此,可以防止由于对共因故障的抵抗力的降低而导致的故障检测的遗漏,该共因故障归因于相同信号在主要块10和后备块20中的每一者中的分布。这里,作为共因故障的示例,由共同时钟电压降引起的状态反转,由于多个模块的同时操作而由电源电压降引起的状态反转,由宇宙射线(α射线)引起的状态反转,等等。

此外,由于提供了延迟电路50,所以可以防止诸如噪声的共因故障从主要块10传播到后备块20。

示例

在下文中,将提供根据第一实施例的一些典型示例。在以下关于示例的描述中,具有与第一示例相同的配置和功能的组件由与第一示例相同的附图标记表示。此外,只要不存在技术上的不一致,对第一示例的描述可以适当地结合到对具有与第一示例相同的配置和功能的组件的描述中。而且,只要不存在技术上的不一致性,多个示例可以以适当的组合全部或部分地应用。

第一示例

图2是示出了根据第一示例的半导体装置的配置的框图。

第一示例的半导体装置例如是微控制器单元(MCU),并且包括DDDC装置1。第一示例中的DDDC装置1包括主装置(M_DCLS)100、子装置(S_DCLS)200、输入控制电路(INP_CNT)300、输出控制电路(OUT_CNT)400、延迟电路510以及选择器(SLCT)310。主装置100对应于第一实施例中的主要块10。子装置200对应于第一实施例中的后备块20。DDDC装置也被称为双DCLS装置。这里,DCLS是双核锁步(Dual Core Lock Step)的缩写。

第一示例中的延迟电路510对应于第一实施例中的延迟电路50的功能。此外,第一示例中的选择器310对应于第一实施例中的输入控制电路30的部分功能。

主装置100包括主CPU(M_CPU)110、检验器CPU(C_CPU)120、第一延迟电路130、第二延迟电路140以及比较器(CMP)150。主CPU 110对应于第一实施例中的第一模块11。检验器CPU 120对应于第一实施例中的第二模块12。第一延迟电路130、第二延迟电路140和比较器150分别对应于第一实施例中的第一延迟电路13、第二延迟电路14和比较器15。主装置100执行延迟锁步操作。

子装置200包括主CPU(M_CPU)210、检验器CPU(C_CPU)220、第一延迟电路230、第二延迟电路240以及比较器(CMP)250。主CPU 210对应于第一实施例中的第一模块21。检验器CPU 220对应于第一实施例中的第二模块22。第一延迟电路230、第二延迟电路240和比较器250分别对应于第一实施例中的第一延迟电路23、第二延迟电路24和比较器25。子装置200执行延迟锁步操作。

在延迟锁步操作中,与由主CPU 110或210处理的命令相同的命令由检验器CPU120或220以延迟若干时钟周期的方式处理。因此,严格地说,在延迟锁步操作中,不在相同的时钟周期中处理相同的命令,而是在不同的CPU中处理相同的命令。这是锁步操作的一个方面。注意,在下文中,主CPU 110或210和检验器CPU 120或220执行延迟锁步操作,其中检验器CPU 120或220以相对于主CPU 110或210延迟两个时钟周期的方式执行锁步操作。然而,主CPU 110或210与检验器CPU120或220之间的时钟周期的差异不限于两个时钟周期。

第一示例中的半导体装置还包括诸如RAM(随机存取存储器)和闪存的共享存储器以及外围电路等(未示出)。共享存储器和外围电路是将由主CPU 110和210以及检验器CPU120和220以共享方式使用的共享资源之一。此外,上述共享存储器仅仅是示例,并且可以仅提供上述存储器中的一些作为共享存储器。而且,可以提供不同于上述存储器的存储器。共享存储器存储例如将由主CPU 110和210以及检验器CPU 120和220执行的程序或数据。注意,共享存储器和外围电路都是共享资源,并且如果提供它们中的至少一个就足够了。共享资源的输出被输入到输入控制电路300,并且输出控制电路400的输出被输入到共享资源。

比较器150将比较结果信号(LE1)输出到输出控制电路400和DDDC装置1之外。比较器250将比较结果信号(LE2)输出到输出控制电路400和DDDC装置2之外。延迟电路130包括两级触发器电路(FF)130a和130b。延迟电路140包括两级触发器电路140a和140b。延迟电路230和240分别具有类似于延迟电路130和140的配置。即,延迟电路130、140、230和240中的每个延迟电路形成两个时钟周期的延迟。延迟电路140的输出被输入到包括两级触发器电路的延迟电路510。

输出控制电路400包括延迟电路410、420和430以及作为切换电路的选择器440。延迟电路410、420和430各自包括两级触发器电路。即,延迟电路410、420和430中的每个延迟电路形成两个时钟周期的延迟。比较器150的比较结果信号(LE1)被输入到延迟电路410,并且延迟电路410的输出被输入到延迟电路420。延迟电路420的输出被输入到延迟电路430的后级触发器电路和选择器310。主装置100中的主CPU 110的输出信号(Oa)和子装置200中的主CPU 210的输出信号(Oc)被输入到选择器440。选择器440由延迟电路410的输出控制。选择器440的输出被输入到延迟电路430。延迟电路430将输出信号(OUT)输出。

输入信号(INP)作为输入信号(INa)通过输入控制电路300被输入到主装置100,并且作为输入信号(INb)通过延迟电路140、延迟电路510和选择器310被输入到子装置200。因此,子装置200相对于主装置100被延迟四个时钟周期。注意,不是输入控制电路300的输出,而是延迟电路140的输出被输入到延迟电路510。因此,可以减少在延迟电路510中所包括的触发器电路的数目。

在接管到子装置200之后,选择器310将到子装置200的输入信号(INb)从延迟输入信号(INd)切换到无延迟输入信号(INc)。选择器310通过信号(Oe)来控制,该信号(Oe)通过延迟电路410和420使主装置100中的比较器150的比较结果信号(LE1)延迟四个时钟周期而获得。因此,子装置200可以在与主装置100操作时相同的输入时延下操作。

主装置100中的主CPU 110的输出信号(Oa)以输出信号(Oa)被延迟电路430延迟两个时钟周期的方式作为输出信号(OUT)从输出控制电路400输出。延迟电路430的后级触发器电路(输出控制电路400中最后级的触发器电路)由主CPU 110中的比较器150的比较结果信号(LE1)和子装置200中的比较器250的比较结果信号(LE2)控制。

根据主CPU 110中的比较器150的比较结果信号(LE1),延迟电路430的输出被抑制。根据使主CPU 110中的比较器150的比较结果信号(LE1)由延迟电路410和420延迟四个时钟周期而获得的信号(Oe),延迟电路430的输出被恢复。在子装置200中的比较器250的比较结果信号(LE2)与信号(Oe)不匹配的情况下,延迟电路430的输出被抑制。

选择器440选择主装置100中的主CPU 110或子装置200中的主CPU 210的输出。选择器440的切换通过信号(Od)来控制,该信号(Od)通过使主CPU 110中的比较器150的比较结果信号(LE1)被延迟电路410延迟两个时钟周期而获得。选择器440的输出被输入到延迟电路430的前级触发器电路。因此,子装置200可以在与主装置100操作时相同的输出时延下操作。

将参考图3描述在主装置100中检测到错误(error)的情况下的操作。图3是指示了图2所示的半导体装置的操作的时序图。

主CPU 110的输出信号(Oa)、检验器CPU 120的输出信号(Ob)、比较器150的比较结果信号(LE1)、输出信号(OUT)和主CPU 210的输出信号(Oc)是与时钟(CLK)的上升同步的信号。

在主装置正常操作的情况下,主CPU 110的输出信号(Oa)、检验器CPU 120的输出信号(Ob)、输出信号(OUT)和主CPU 210的输出信号(Oc)的内容按照A、B、C、D、E和F的顺序改变。在图3中,示出了主CPU 110发生故障并且主CPU 110的输出信号(Oa)的内容按照A、B、C、D’、E和F的顺序改变的情况。

主装置100中的检验器CPU 120的输出信号(Ob)相对于主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。此外,子装置200中的主CPU 210的输出信号(Oc)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟四个时钟周期(4CLK)。

在主装置100中的主CPU 110的输出信号(Oa)是“D’”并且主装置100中的检验器CPU 120的输出信号(Ob)是“D”的情况下,比较器150检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且例如将比较结果信号(LE1)设置为高电平。

来自主装置100中的比较器150的比较结果信号(LE1)控制DDDC装置1(输入控制电路300和输出控制电路400)的输入/输出。例如,根据比较结果信号(LE1)的高电平,将作为总线接口(IF)的输入信号的就绪信号(RDY)设置为低电平,并且将作为输出信号(OUT)的部分的信号的有效信号(VLD)设置为低电平。因此,CPU 110、120、210和220不执行后续处理,并且例如作为某信号(该信号是输出信号(OUT)的部分)的地址信号、数据信号等变得有效。

根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟两个时钟周期(2CLK)而获得的信号(Od),主装置100中的主CPU 110的输出信号(Oa)被切换到子装置200中的主CPU 210的输出信号(Oc)。

根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟四个时钟周期(4CLK)而获得的信号(Oe),子装置200的输入被切换到无延迟输入信号INc。根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟四个时钟周期(4CLK)而获得的信号(Oe),DDDC装置1的输出(输出控制电路400中的延迟电路430的输出)变为有效。

主装置100中的主CPU 110系统的时钟和检验器CPU 120系统的时钟分别操作。而且,主CPU 210系统的时钟和子装置200中的检验器CPU 220系统的时钟分别操作。因此,可以使由时钟电压降引起的错误操作分离。

这里,除了主CPU 110之外,主CPU 110系统还包括延迟电路130的前级触发器电路130a和延迟电路140的前级触发器电路140a。除检验器CPU 120之外,检验器CPU 120系统还包括延迟电路130的后级触发器电路130b和延迟电路140的后级触发器电路140b。除了主CPU 210之外,主CPU 210系统还包括延迟电路230的前级触发器电路230a和延迟电路240的前级触发器电路240a。除检验器CPU 220之外,检验器CPU 220系统还包括延迟电路230的后级触发器电路230b和延迟电路240的后级触发器电路240b。

根据延迟电路140,检验器CPU 120相对于主CPU 110被延迟两个时钟周期,使得可以避免由于主CPU 110和检验器CPU 120的同时操作而导致的电源电压降。

在分配输入信号之后,输入信号由检验器CPU 120侧的两级触发器电路接收,并且可以防止噪声(例如,由于宇宙射线)传播到检验器CPU 120侧。

第二示例

图4是示出了第二示例的半导体装置的配置的框图。

第一示例中的子装置200相对于主装置100以四个时钟周期的延迟进行操作。相比之下,第二示例中的子装置200相对于主装置100以两个时钟周期的延迟进行操作。

因此,在第二示例中,不是延迟电路140的输出而是输入控制电路300的输出的输入信号(INc)被输入到延迟电路510。具体地,输入信号(INP)通过输入控制电路300作为输入信号(INa)被输入到主装置100,并且通过延迟电路510和选择器310作为输入信号(INb)被输入到子装置200。

此外,第二示例中的输出控制电路400不被设置有第一示例中的延迟电路410,并且比较器150的输出被输入到延迟电路420。第二示例中的DDDC装置1的其他配置(主装置100,子装置200和输入控制电路300)类似于第一示例中的那些。

将参考图5描述在主装置100中检测到错误的情况下的操作。图5是指示了从第二示例到第四示例的DDDC装置的操作的时序图。

主装置100中的检验器CPU 120的输出信号(Ob)相对于主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。此外,子装置200中的主CPU 210的输出信号(Oc)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。

在主装置100中的主CPU 110的输出信号(Oa)是“D’”并且主装置100中的检验器CPU 120的输出信号(Ob)是“D”的情况下,比较器150检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且例如将比较结果信号(LE1)设置为高电平。

根据主装置100中的比较器150的比较结果信号(LE1),主装置100中的主CPU 110的输出信号(Oa)被切换到子装置200中的主CPU 210的输出信号(Oc)。

根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟两个时钟周期(2CLK)而获得的信号(Oe),子装置200的输入被切换到无延迟输入信号INc。根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟两个时钟周期(2CLK)而获得的信号(Oe),DDDC装置1的输出(输出控制电路400的延迟电路430的输出)变为有效。

与第一示例相比,第二示例使得可以进一步减少在输出控制电路400中所包括的触发器电路的数目。

第三示例

图6是示出了根据第三示例的半导体装置的配置的框图。

第三示例中的子装置200相对于第二示例中的主装置100以两个时钟周期的延迟进行操作。然而,注意,第三示例中的输出控制电路400在配置上不同于第二示例中的输出控制电路400。在下文中,将主要描述第三示例与第二示例之间的差异。

第三示例中的输出控制电路400在选择器440的前一级中具有延迟电路450,以代替第二示例中的延迟电路430。延迟电路450包括两级触发器电路。即,延迟电路450形成两个时钟周期的延迟。

主装置100中的主CPU 110的输出信号(Oa)通过延迟电路450被延迟两个时钟周期,并且作为输出信号(OUT)从输出控制电路400输出。延迟电路450的后级触发器电路通过主装置100中的比较器150的比较结果信号(LE1)来控制。

将参考图5描述在主装置100中检测到错误的情况下的操作。

主装置100中的检验器CPU 120的输出信号(Ob)相对于主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。此外,子装置200中的主CPU 210的输出信号(Oc)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。

在主装置100中的主CPU 110的输出信号(Oa)是“D’”并且主装置100中的检验器CPU 120的输出信号(Ob)是“D”的情况下,比较器150检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且例如将比较结果信号(LE1)设置为高电平。

根据主装置100中的比较器150的比较结果信号(LE1),主装置100中的主CPU 110的输出信号(Oa)被切换到子装置200中的主CPU 210的输出信号(Oc)。

根据通过使主装置100中的比较器150的比较结果信号(LE1)延迟两个时钟周期(2CLK)而获得的信号(Oe),子装置200的输入被切换到无延迟输入信号INc。

与第二示例相比,第三示例使得可以进一步减少要分布在输出控制电路400中和到输出控制电路400的导线的数目。

第四示例

图7是示出了根据第四示例的半导体装置的配置的框图。

如在第三示例中,第四示例中的子装置200相对于主装置100以两个时钟周期的延迟进行操作。然而,注意,第四示例中的半导体装置不具有在第三示例中所包括的选择器310。输入信号(INP)通过输入控制电路300作为输入信号(INa)被输入到主装置100,并且通过延迟电路510作为输入信号(INd)被输入到子装置200。延迟电路510使要作为输入信号(INd)输出的输入信号(INc)延迟。此外,第四示例中的输出控制电路400不具有在第三示例中所包括的延迟电路420。

将参考图5描述在主装置100中检测到错误的情况下的操作。

主装置100中的检验器CPU 120的输出信号(Ob)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。此外,子装置200中的主CPU 210的输出信号(Oc)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。

在主装置100中的主CPU 110的输出信号(Oa)是“D’”并且主装置100中的检验器CPU 120的输出信号(Ob)是“D”的情况下,比较器150检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且例如将比较结果信号(LE1)设置为高电平。

根据主装置100中的比较器150的比较结果信号(LE1),主装置100中的主CPU 110的输出信号(Oa)被切换到子装置200中的主CPU 210的输出信号(Oc)。

与第三示例相比,第四示例使得可以进一步减少输出控制电路400中的触发器电路的数目,并且消除选择器。

第二实施例

将参考图8描述根据第二实施例的故障操作系统。图8是示出了根据第二实施例的故障操作系统的配置的框图。

根据第二实施例的故障操作系统包括DDDC装置1。DDDC装置1包括主要块(PRM)10、后备块(BCK)20、输入控制电路(INP_CNT)30、输出控制电路(OUT_CNT)40、延迟电路(DLY)52以及延迟电路(DLY)53。

根据第二实施例的主要块10、后备块20和输入控制电路30各自具有与根据第一实施例的主要块10、后备块20和输入控制电路30相同的配置,并且以与其类似的方式操作。

输入信号(INP)通过输入控制电路30被输入到主要块10和后备块20。在共同时间,后备块20执行与主要块10类似的操作。

延迟电路52使主要块10中的第一模块11的输出信号(Oa)延迟,并且将经延迟的信号输出到输出控制电路40。延迟电路53使后备块20中的第一模块21的输出信号(Oc)延迟,并且将经延迟的信号输出到输出控制电路40。延迟电路52的延迟量是等于或大于延迟电路13和14中的延迟量之和的时钟周期数。类似地,延迟电路53的延迟量是等于或大于延迟电路23和24中的延迟量之和的时钟周期数。因此,可以消除第一模块11的输出信号(Oa)与比较器15的比较结果信号(LE1)之间的定时差。类似地,可以消除第一模块21的输出信号(Oc)与比较器25的比较结果信号(LE2)之间的定时差。

输出控制电路40根据比较结果信号(LE1)输出通过使延迟电路52延迟第一模块11的输出信号(Oa)而获得的信号。类似地,输出控制电路40根据比较结果信号(LE2)输出通过使延迟电路53延迟第一模块21的输出信号(Oc)而获得的信号。因此,主要块10中的操作可以被切换到后备块20的操作。

具体地,在主要块10正常的情况下,输出控制电路40选择通过使主要块10中的第一模块11的输出信号(Oa)被延迟电路52延迟而获得的信号,并且输出所选择的信号作为输出信号(OUT)。在主要块10中检测到问题并且后备块20正常的情况下,输出控制电路40选择通过使后备块20中的第一模块21的输出信号(Oc)被延迟电路52延迟而获得的信号,并且输出所选择的信号作为输出信号(OUT)。

如在第一实施例中,在使用主要块10中的比较器15的比较结果的情况下,输入控制电路30控制到主要块10的输入信号,并且输出控制电路40控制来自主要块10的输出信号。因此,可以防止从DDDC装置1输出错误信息。而且,在从主要块10到后备块20的接管的时间段期间,可以维持与DDDC装置1之外的外部装置的协议。

如在第一实施例中,延迟锁步技术被应用于主要块10和后备块20。因此,可以防止由于对共因故障的抵抗力的降低而导致的故障检测的遗漏,该共因故障归因于相同信号在主要块10和备用块20的每一者中的分布。

在下文中,将提供根据第二实施例的一些典型的示例。在以下关于示例的描述中,具有与第一实施例的示例相同的配置和功能的组件由与第一实施例的示例相同的附图标记表示。此外,只要不存在技术上的不一致,对第一实施例的示例的描述可以适当地结合到对具有与第一实施例的示例相同的配置和功能的组件的描述中。此外,只要不存在技术上的不一致,多个示例可以以适当的组合全部或部分地应用。

第五示例

图9是示出了根据第五示例的半导体装置的配置的框图。

根据第五示例的半导体装置包括DDDC装置1。根据第五示例的DDDC装置1包括主装置100、子装置200、输入控制电路300、输出控制电路400、延迟电路520以及延迟电路530。主装置100对应于第二实施例中的主要块10。子装置200对应于第二实施例中的后备块20。输入控制电路300对应于第二实施例中的输入控制电路30。输出控制电路400对应于第二实施例中的输出控制电路40。延迟电路520和530分别对应于延迟电路52和53的功能。

第五示例中的主装置100和子装置200具有与第一示例中的主装置100和子装置200类似的配置,并且分别与其类似地操作。然而,注意,输入信号(INP)作为输入信号(INa)通过输入控制电路300被输入到主装置100,并且作为输入信号(INb)被输入到子装置200。输入信号(INb)是与输入信号(INa)具有相同相位的信号。

延迟电路520和530中的每个延迟电路具有两级触发器电路。具体地,延迟电路520和530中的每个延迟电路形成两个时钟周期的延迟。

输出控制电路400包括选择器440。通过延迟电路520将主装置100中的主CPU 110的输出信号(Oa)延迟而获得的信号和通过延迟电路530将子装置200中的主CPU 210的输出信号(Oc)延迟而获得的信号被输入到选择器440。选择器440通过比较器150的比较结果信号(LE1)和比较器250的比较结果信号(LE2)来控制。选择器440将输出信号(OUT)输出到DDDC装置1之外。

比较器150将比较结果信号(LE1)输出到输出控制电路400并输出到DDDC装置1之外。比较器250将比较结果信号(LE2)输出到输出控制电路400并输出到DDDC装置1之外。

将参考图10描述在主装置100中检测到错误的操作。图10是指示了图9所示的半导体装置的操作的时序图。

主装置100中的检验器CPU 120的输出信号(Ob)相对于主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。此外,子装置200中的主CPU 210的输出信号(Oc)相对于主装置100中的主CPU 110的输出信号(Oa)被延迟两个时钟周期(2CLK)。在主装置100的正常操作时,通过将主CPU 110的输出信号(Oa)延迟两个时钟周期(2CLK)而获得的信号作为输出信号(OUT)被输出。

在主装置100中的主CPU 110的输出信号(Oa)是“D’”并且主装置100中的检验器CPU 120的输出信号(Ob)是“D”的情况下,比较器150检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且例如将比较结果信号(LE1)设置为高电平。

根据主装置100中的比较器150的比较结果信号(LE1),主装置100中的主CPU 110的输出信号(Oa)被切换到子装置200中的主CPU 210的输出信号(Oc)。在主装置100中发生故障时,通过将主CPU 210的输出信号(Oc)延迟两个时钟周期(2CLK)而获得的信号作为输出信号(OUT)被输出。

主装置100中的比较器150的比较结果信号(LE1)掩蔽了到主装置100的输入信号(INP)的输入。主装置100和子装置200分别将比较结果信号(LE1)和比较结果信号(LE2)输出到DDDC装置1之外。

比较示例

为了进一步阐明本公开,将参考图11至图13描述本披露者在本公开之前已经研究的技术(比较示例)。图11是示出了根据比较示例的故障操作系统的配置的框图。图12是指示了图11所示的故障操作系统中的正常操作的时序图。图13是指示了在图11所示的故障操作系统的主要块中检测到故障的情况下的操作的时序图。

如图11所示,比较例中的DDDC装置1包括主要块(PRM)10、后备块(BCK)20以及仲裁逻辑(ARB)60。输入信号(INP)直接输入到主要块10和后备块20。根据比较示例的主要块10和后备块20中的配置和操作类似于上述实施例中的配置和操作。根据比较例的DDDC装置1不包括第一实施例中的延迟电路50或第二实施例中的延迟电路52和53。根据比较示例的DDDC装置1不包括第一实施例或第二实施例中的输入控制电路30和输出控制电路40。

如图12所示,在正常操作的情况下,第一模块11的输出信号(Oa)、第二模块12的输出信号(Ob)、输出信号(OUT)和第一模块21的输出信号(Oc)的内容按照A、B、C、D、E和F的顺序改变。注意,在图13中,由于第一模块11中的故障,第一模块11的输出信号(Oa)的内容以A、B、C、D’、E和F的顺序改变。

主要块10中的第二模块12的输出信号(Ob)相对于第一模块11的输出信号(Oa)被延迟两个时钟周期(2CLK)。而且,后备块20中的第一模块21的输出信号(Oc)在与主要块10中的第一模块11的输出信号(Oa)相同的定时下输出。

如图13所示,例如,在主要块10中的第一模块11的输出信号(Oa)是“D’”并且主要块10中的第二模块12的输出信号(Ob)是“D”的情况下,比较器15检测到在输出信号(Oa)与输出信号(Ob)之间存在失配,并且将比较结果信号(LE1)设置为高电平。

然而,由于比较器15的比较结果信号(LE1)相对于第一模块11的输出信号(Oa)被延迟,所以不能在使用比较器15的比较结果信号(LE1)的情况下防止仲裁逻辑60的输出信号(OUT)的错误信息输出(D’)。此外,由于比较器15的比较结果信号(LE1)相对于后备块20中的第一模块21的输出信号(Oc)被延迟,所以不可能在使用第一模块21的输出信号(Oc)的情况下切换到后备块20来继续操作。

在上述实施例(示例)中,DDDC装置1的输出相对于第一模块11(主CPU 110)的输出信号(Oa)被延迟电路430、延迟电路450或延迟电路520延迟。这可以防止作为比较器15(比较器150)的输出的比较结果信号(LE1)相对于第一模块11(主CPU 110)的输出信号(Oa)而延迟,并且DDDC装置1(输出控制电路40)可以防止错误信息的输出。另外,可以将主要块10(主装置100)的操作切换到后备块20(子装置200)。

如上所述,已经根据实施例和示例具体地描述了本披露者做出的公开。然而,不必说,本公开不限于上述实施例和示例,并且可以以各种方式进行修改。

在上述示例中,例如,已经描述了第一模块11和21以及第二模块12和22是CPU的情况,它们可以是诸如DSP(数字信号处理器)的其他处理器。此外,第一模块11和21以及第二模块12和22可以各自包括诸如直接存储器存取控制器(DMAC)的另一总线主控器。

相关技术
  • 半导体装置、半导体装置的制造方法以及半导体封装的制造方法
  • 金属互连,制造金属互连的方法,半导体装置和制造半导体装置的方法
  • 等离子体处理装置、半导体制造装置及半导体装置的制造方法
  • 树脂组合物、树脂膜、半导体层叠体、半导体层叠体的制造方法及半导体装置的制造方法
  • 树脂组合物、树脂膜、半导体层叠体、半导体层叠体的制造方法及半导体装置的制造方法
  • 半导体光发射装置的制造方法、半导体光发射装置、半导体装置的制造方法、半导体装置、一种装置的制造方法、以及一种装置
  • 氮化物半导体层叠物、半导体装置、氮化物半导体层叠物的制造方法、氮化物半导体自支撑基板的制造方法以及半导体装置的制造方法
技术分类

06120116491138