用于微控制器和处理器输入/输出引脚的完整性监测外围设备的制作方法

文档序号:23350251发布日期:2020-12-18 16:55阅读:189来源:国知局
用于微控制器和处理器输入/输出引脚的完整性监测外围设备的制作方法

本公开涉及处理器和微控制器的输入和输出(i/o)的管理,并且更具体地涉及微控制器和处理器输入/输出引脚的完整性监测外围设备。



背景技术:

微控制器、处理器和其他半导体设备由半导体材料的管芯构建而成并且置于其他元件中,使得它们可与电子设备和系统连接并且在电子设备和系统内工作。例如,半导体设备可在引线框架内包括其上搁置有半导体设备的盘片。引线框架可包括芯片封装件内部的金属结构,该金属结构将信号从管芯传送到外部。半导体设备可安装到印刷电路板(pcb)上,该印刷电路板使用导电迹线、焊盘和其他特征部来机械地支撑和电连接电子部件或电气部件。部件通常焊接到pcb上以将它们电连接和机械紧固到pcb。

i/o引脚可将半导体设备连接到外界,诸如连接在pcb上。引脚可被路由到半导体设备的特定部分。路由可以是动态的,使得可以取决于电子设备的即时配置而在不同时间以不同方式使用特定引脚。

处理器、微控制器、微控制器单元(mcu)、中央处理单元(cpu)和其它电子设备可包括内部外围设备。这些外围设备可包括可供mcu的各个部分执行任务的数字或模拟电路。此类内部外围设备可包括例如计数器、定时器、实时时钟、通用异步收发器(uart)接口、串行外围设备接口(spi)或i2c接口。



技术实现要素:

一种半导体管芯可包括:逻辑,该逻辑被配置为生成数据值;和输出引脚,该输出引脚被配置为从半导体管芯输出值。该输出引脚可通信地耦接到逻辑。该半导体管芯可包括:第一反馈路径,该第一反馈路径通信地耦接到输出引脚;和完整性监测电路(imc)。该imc可被配置为接收来自逻辑的数据值和通过第一反馈路径路由的来自输出引脚的第一测量的数据值,将数据值与第一测量的数据值进行比较,并且基于数据值与第一测量的数据值的比较来确定是否已发生错误。结合上述实施方案中的任一实施方案,该比较可以基于xor运算。结合上述实施方案中的任一实施方案,该比较产生已发生错误的指示。结合上述实施方案中的任一实施方案,imc被进一步配置为基于预期响应的定时而忽略已发生错误的指示。结合上述实施方案中的任一实施方案,imc被进一步配置为基于数据值与第一测量的数据值的比较来确定在半导体管芯内于逻辑与输出引脚之间已发生错误。结合上述实施方案中的任一实施方案,半导体管芯还包括第二反馈路径,第二反馈路径通过半导体封装件引脚通信地耦接到输出引脚并通信地耦接到imc。结合上述实施方案中的任一实施方案,imc可被进一步配置为接收通过第二反馈路径路由的来自输出引脚的第二测量的数据值,将该数据值与第二测量的数据值进行比较,并且基于数据值与第二测量的数据值的比较来确定半导体管芯与半导体封装件之间已发生错误。结合上述实施方案中的任一实施方案imc可进一步被配置为基于数据值与第二测量的数据值的比较来确定半导体管芯与半导体封装件之间已发生接合线失效。结合上述实施方案中的任一实施方案,imc被进一步配置为基于数据值与第一测量的数据值的比较来确定在半导体管芯之外已发生错误。结合上述实施方案中的任一实施方案,半导体可包括第三反馈路径,该第三反馈路径通过外部集成电路引脚通信地耦接到输出引脚并通信地耦接到imc。结合上述实施方案中的任一实施方案,imc可被进一步配置为接收通过第三反馈路径路由的来自输出引脚的第三测量的数据值。结合上述实施方案中的任一实施方案,半导体设备可被配置为将值与第三测量的数据值进行比较。结合上述实施方案中的任一实施方案,imc可被配置为基于数据值和第三测量数据值的比较,确定半导体封装件或输出引脚与外部集成电路引脚之间已发生错误。

本公开的实施方案可包括一种集成电路设备。集成电路设备可包括上述半导体管芯中的任一半导体管芯。集成电路设备可被实施为例如微控制器、专用集成电路(asic)、现场可编程门阵列(fpga)、微处理器、片上系统或其他合适的电子设备。结合这些实施方案中的任一实施方案,集成电路可包括半导体封装件,该半导体封装件包括半导体管芯。

本公开的实施方案可包括由上述半导体管芯或集成电路中的任一者执行的方法。

附图说明

图1示出了根据本公开的实施方案的利用完整性监测外围设备的系统。

图2示出了根据本公开的实施方案的完整性监测外围设备的更详细视图。

图3示出了根据本公开的实施方案的完整性监测外围设备的示例性时序图。

具体实施方式

图1是根据本公开的实施方案的利用完整性监测外围设备的系统100的图示。完整性监测外围设备(imp)可由模拟电路、数字电路、用于由处理器执行的指令或它们的任何合适的组合来实施。imp可被配置为确定数据信号在i/o引脚、焊盘或系统100的各种层级的其他物理接口之间的传播是否发生错误。imp可由例如imp110实施。

imp110可在系统100的任何合适的位置中实施。在一个实施方案中,imp110可在数据信号源内实施,imp110被配置为验证该数据信号源。例如,imp110可在半导体设备管芯104内实施,该半导体设备管芯包括被配置为生成数据信号的应用逻辑112,imp110被配置为验证该数据信号。在其他实施方案中,imp110可位于电子设备102的任何合适的部分内,诸如在集成电路或半导体封装件内。包括imp110的集成电路或半导体封装件可为包括应用逻辑112的相同或不同的集成电路或半导体封装件。在其他实施方案中,imp110可位于另一个半导体管芯内,但位于包括应用逻辑112的相同集成电路或封装件内。

系统100可包括一个或多个电子设备,诸如电子设备102。系统100还可包括电子设备102外部的其他集成电路或电子设备,诸如电子设备/集成电路122。系统100可被配置为将信息路由到这些元件和从这些元件路由信息。例如,电子设备102和电子设备/集成电路122可通过相应的端口/引脚120和引脚144彼此来回路由信息。端口/引脚120和引脚144可经由路径142连接。路径142可包括例如迹线、导线、键合、光学连接、无线连接或任何其他合适的互连件。

给定的电子设备102可包括各种集成电路。例如,电子设备102可包括集成电路或半导体封装件106。此外,电子设备102可包括另一个集成电路108。集成电路108可在容纳应用逻辑112的集成电路外部。电子设备102可被配置为将信息路由到此类集成电路以及从此类集成电路路由信息。每个给定的集成电路可被配置为执行各种功能性。此类功能性可由相应的应用逻辑(诸如应用逻辑112)单独地或与模拟电路、数字电路、用于由处理器执行的指令或它们的任何合适组合结合来定义。给定的集成电路可实施例如处理器、微控制器、mcu、cpu、专用集成电路(asic)、现场可编程门阵列或其他设备。电子设备102可被配置为经由路径128在集成电路或半导体封装件106与集成电路108之间路由信号。此外,电子设备102可被配置为经由路径130路由来自集成电路(诸如集成电路或半导体封装件106)和用于电子设备102外部的通信的端口/引脚120的信号。路径128、130可各自包括例如迹线、导线、键合、光学连接、无线连接或任何其他合适的互连件。集成电路或半导体封装件106可包括一个或多个i/o引脚,诸如引脚116。集成电路108可包括一个或多个i/o引脚,诸如引脚118。路径128可连接在引脚116与引脚118之间。

给定的集成电路(诸如集成电路或半导体封装件106)可包括一个或多个半导体设备管芯,诸如半导体设备管芯104。集成电路或半导体封装件106可被配置为在半导体设备管芯104的内容物、集成电路或半导体封装件106内的其他半导体设备管芯与集成电路或半导体封装件106外部的元件之间路由信息。集成电路或半导体封装件106可被配置为经由路径126路由此类信息。路径126可包括下行键合(downbond)、管芯键合或其他合适的互连件。路径126可形成在半导体设备管芯104的焊盘114与引脚116之间。

为了实施集成电路或半导体封装件106的一些或所有功能性,可在半导体设备管芯104中铸造应用逻辑112。应用逻辑112可由模拟或数字电路的任何合适的组合来实施。应用逻辑112可以通过基于半导体的路径124连接到焊盘114。路径124可包括半导体设备管芯104内部的任何合适的互连件,诸如物理互连件、电互连件或电磁互连件。由应用逻辑112生成的数据或被递送到应用逻辑的数据可通过任何合适数量和种类的物理接口来路由,该物理接口诸如位于半导体设备管芯104的边缘处的焊盘114、位于集成电路或半导体封装件106上的引脚116、位于集成电路108的边缘处的引脚118、位于电子设备102的边缘处的端口/引脚120和电子设备/集成电路122的引脚144。此外,此类数据可通过路径124、126、128、130、142路由。虽然在附图中示出了特定数量和种类的互连件,但可使用任何合适数量和种类的互连件。

系统100可包括用于将信号信息路由到imp110的反馈路径。系统100可包括用于将信号信息路由到imp110的任何合适数量和种类的反馈路径。系统100中的反馈路径可包括路径132、134、136、138、140。路径132、134、136、138、140的特定实施方式可取决于在系统100内实施imp110的位置。例如,路径132、134、136、138、140可能需要附加的引脚、焊盘、端口或其他互连件(未示出)。从应用逻辑112发送到系统100的其他部分的数据可通过端口132、134、136、138、140单独地路由回imp110。应用逻辑112可生成数据并在路径124上将该数据发送到焊盘114。最初生成的数据也可通过路径132发送到imp110。到达焊盘114的数据可通过路径134被发送到imo110。被提供给焊盘114的数据可通过路径126被提供给引脚116。到达引脚116的数据也可通过路径136被发送到imp110。被提供给引脚116的数据可被提供给引脚118。到达引脚118的数据也可通过路径138被发送到imp110。数据也可被发送到端口/引脚120和引脚144上。到达引脚144的数据也可通过路径140被发送到imp110。也可存在其他反馈路径,诸如端口/引脚120与amp110之间的路径(未示出)。

在一个实施方案中,imp110可被配置为相对于实际在互连件处接收的数据检查要被提供给此类互连件的数据。被提供给互连件的数据可由在路径132上从应用逻辑112接收的数据来确定。imp110可被配置为检查来自一个或多个此类互连件或它们的任何合适组合的数据。如果实际在此类互连件处接收到并通过路径132、134、136、138、140重新路由到imp110的数据与预期的数据(即,原始数据或被发送到此类互连件的数据)不匹配,则imp110可生成中断、陷阱、复位或以其他方式提供表明已发生错误的消息。imp110可被配置为确定在哪些互连件处或在哪些互连件之间发生错误。该错误可由信号中断、机械故障、短接、短路、开路、故障信号调节、外部篡改或其他错误引起。虽然路径在图1中直接被示出为连接元件,但路径可穿过中间电路、集成电路或芯片。然而,该路径表示即使横跨此类中间元件也应当保持一致的数据。例如,到达引脚118或从引脚118横跨回的信号可能已沿途穿过一个或多个外部集成电路和电路元件。然而,如果没有发生错误,则此类信号应当是源自应用逻辑112和焊盘114的相同信号。

因此,imp110可被配置为识别印刷电路板(pcb)上可能导致应用中的信号完整性丢失或控制丢失的机械故障。错误的示例可包括pcb迹线破裂、短路或与ic引脚的焊料连接断开。随着功能安全要求的提高,系统100的集成电路或电子设备可用于汽车、电器或控制马达、燃烧器和其他外部设备的其他应用中,如果控制不当,则该外部设备可能会造成伤害。imp110可被配置为提供在其中实施该imp的任何元件(诸如微控制器)、控制信号已可靠地到达其目的地或此类控制信号已失效的直接和即时反馈。通过在系统100内进行监测,imp110可比其他检测方法(诸如监测外部电压和电流)更快地起作用。

imp110可以任何合适的方式来实施以确定输出引脚或焊盘是否包括与预期的输入数据匹配的值。在一个实施方案中,imp110可被配置为应用xor运算来检测失配。此外,在由应用逻辑112生成的期望值可用的时间与值从引脚或焊盘到达imp110处的时间之间可能发生延迟。因此,对于引脚或焊盘的给定位置,可在进行比较之前由imp110应用特定的可配置延迟。该延迟可以是消隐延迟。如果imp110要评估多个引脚或焊盘,则imp110可包括多路复用器以选择在给定时刻评估的特定引脚或焊盘。此外,考虑到评估多个引脚或焊盘的能力,imp110可被配置为评估可配置数量的这些信道。imp110可被配置为通过例如指令或寄存器值来评估特定信道。

imp110可被实施为核心独立外围设备(cip)。在系统(诸如微控制器或处理器)中,作为cip的imp可以独立于微控制器或处理器的正在进行的方式起作用。虽然在微控制器或处理器上执行的软件可将数据读取或写入imp110可访问的寄存器,并且imp110可对在微控制器或处理器上执行的软件生成中断,但imp110不依赖于此类软件的执行状态即可执行本公开中描述的监测任务。在确定错误时,imp110可对此类软件生成中断,或者设定由此类软件读取的标志或寄存器值。imp110可通过由此类软件设定的寄存器值来启用。然而,一旦运行,imp110就可能不需要执行任何给定软件即可继续监测。此外,imp110可设定标志、寄存器值或者生成中断,但不需要在软件中同步处理此类值即可继续操作。此外,imp110可监测如在配置寄存器或其他设置中所识别的来自焊盘114、引脚116、引脚118、引脚144的特定引脚的特定反馈路径。系统100可包括许多此类引脚,并且可在此类配置寄存器中指定待监测的特定引脚。

因为imp110以独立于处理器内核的方式操作,所以imp110可在较大微控制器或处理器处于睡眠、空闲或其他暂停模式时操作。由imp110生成的中断的优先级可为可配置的。如果由imp110生成的中断具有适当的优先级(即,足够高的优先级),则中断可使得处理器内核唤醒。

imp110可在任何合适的时间执行其监测。imp110可被配置为连续地、在一段时间内连续地、周期性地或按需地执行此类监测。

图2示出了根据本公开的实施方案的完整性监测外围设备200的更详细视图。imp200可完全或部分地实施图1的imp110。

imp200可包括用于时钟信号204和数据输入202的输入。数据输入202可由应用逻辑112或系统100的其中驻留有imp200的部分的其他部分而生成。数据输入202可存储在端口或输出寄存器206中。imp200可包括一个或多个多路复用器226,该一个或多个多路复用器被配置为选择要将哪些数据反馈线220、222、224与所存储的数据进行比较。imp200可包括消隐定时器228,该消隐定时器被配置为延迟存储的数据与数据反馈线220、222、224中所选择的一条数据反馈线的比较或者以其他方式适当地对该比较进行定时。imp200可包括针对延迟进行调整的任何合适的比较电路230,该比较电路被配置为将数据反馈线220、222、224中所选择的一条数据反馈线与从输入数据202接收的预期数据进行比较。例如,imp200可包括逐位或逐字节xor逻辑函数。如果xor为真,则实际数据与预期数据之间的值可不同,并且可生成中断232。在相对于从输入数据202接收的预期数据检查数据反馈线220、222、224中所选择的一条数据反馈线之后,可比较数据反馈数据线220、222、224中所选择的下一条数据反馈数据线。imp200可并行地将该比较应用于许多不同信道。可根据需要存储数据。

可从任何合适的源接收输入数据202。在一个实施方案中,可从应用逻辑124接收输入数据202,该应用逻辑可在实施imp200的同一半导体管芯内实施。在另一个实施方案中,可从实施imp200的半导体管芯外部的元件接收输入数据202。例如,可从其他集成电路、电子设备或半导体管芯上的元件接收输入数据202。

在输入数据202存储在端口寄存器206中并经由输出驱动器208输出之后,该输入数据可到达系统100的其他部分。图2示出了imp100对被提供给焊盘114、引脚116和引脚118并从其中路由回的数据的示例性应用。附加的元件(未示出)可包括在各种实施方式中,以例如将imp100应用于端口/引脚120、引脚144和路径142。

在输入数据202存储在端口寄存器206中并经由输出驱动器208输出之后,其可到达焊盘210。焊盘210可实施焊盘114。焊盘210可位于半导体管芯(诸如半导体设备管芯104)的边缘处。为了在半导体封装的近边缘处的引脚214上进行连接,可使用接合线212。引脚214可实施引脚116。引脚214可为例如微控制器单元功能引脚。接合线212可实施路径126。半导体封装可实施集成电路或半导体封装件106。引脚214可实施用于集成电路的外部引脚。数据可通过pcb迹线和电路路由到另一个引脚218。引脚218可实施集成电路108的引脚118,该引脚可在托管应用逻辑112或imp200的集成电路或封装外部。pcb迹线和电路可实施路径128。

任何合适数量的反馈线可沿这个描述的路径路由回imp200。在一个实施方案中,反馈线224可从焊盘210路由回imp200,如图2中的(1)所示。反馈线224可实施路径134。该反馈可提供关于数据是否已正确到达半导体管芯的边缘的信息。在另一个实施方案中,反馈线222可从引脚214路由回imp200,如图2中的(2)所示。反馈线222可实施路径136。该反馈可提供关于数据是否已跨接合线212正确到达集成电路或半导体封装件的引脚的信息。在图2的示例中,该反馈可跨引脚244路由回焊盘238。另一条接合线240可用于进行此类连接。反馈可在引脚214、244之间的半导体封装中进行内部路由,或者在引脚214、244之间进行外部路由。在另一个实施方案中,反馈线220可从引脚218路由回imp200,如图2中的(3)所示。反馈线220可实施路径138。该反馈可提供关于将数据跨引脚242路由回焊盘234时该数据是否已跨pcb板或集成电路与引脚218之间的其他连接正确地到达的信息。另一条接合线236可用于进行此类连接。

因此,在214处而不是在210处报告的错误可指示焊盘210与引脚214之间、可能在接合线212中具体发生的错误。此外,在218处而不是在214处报告的错误可指示引脚218与引脚214之间、可能在pcb迹线和电路216中具体发生的错误。

此外,可评估特定的错误模式。例如,代替通过xor比较发现的简单错误,可评估xor结果的值或长度的特定循环。这可通过检测消隐来执行。此外,检测消隐可考虑当输入数据到达各个测量点并返回imp200时的传播延迟。传播延迟还可取决于焊盘驱动强度、旋转速率、焊盘负载以及外部信号调节和缓冲器。

图3是根据本公开的实施方案的imp200的时序图的示例性图示。

输出焊盘数据可反映被发送到图2中的示例(1)、(2)或(3)中的焊盘或引脚中的任一者的数据。在这些示例中,反馈焊盘可反映从焊盘或引脚返回的数据。由于各种条件,诸如滤波、负载、噪声或其他条件,反馈焊盘可表现出不理想的上升时间和下降时间。

xor曲线图可示出使用xor运算但没有应用任何延迟的比较的示例性结果。如果未应用消隐延迟,则可能以其他方式生成正误识错误。xor曲线图示出监测反馈与被发送的数据的比较的xor周期性地生成高信号。然而,这可使用消隐延迟来抑制。

在图3的下半部,可示出imp200的时域。在接收到正的xor结果时,可抑制或消隐该结果达指定数量的循环。指定的循环数量可根据经验确定,并且可取决于被评估的特定焊盘或引脚,因为一些此类焊盘或引脚可具有不同的旋转速率、噪声、负载或影响反馈焊盘形状的其他因素。例如,消隐延迟可以是三个时钟周期。因此,在遇到实际短路、在预期连续的“1”值时反馈焊盘值意外地下降到零之前不会生成错误事件。在这三个循环之后,可生成错误事件。在消隐延迟期间,可以简单地忽略xor运算的结果。

已根据一个或多个实施方案描述了本公开,并且应当理解,除了明确陈述的那些之外,许多等同物、替代物、变型和修改是可能的并且在本公开的范围内。虽然本公开易受各种修改形式和替代形式的影响,但是其具体示例性实施方案已经在附图中示出并且在本文中详细描述。然而,应当理解,本文对具体示例性实施方案的描述并非旨在将本公开限于本文所公开的特定形式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1