具有可重定路径管芯间通信的多芯片模块的制作方法

文档序号:6740185阅读:96来源:国知局
专利名称:具有可重定路径管芯间通信的多芯片模块的制作方法
具有可重定路径管芯间通信的多芯片模块
背景技术
在集成电路制造中,可以经济地制造的管芯(或切割的半导体晶片)的尺寸受到缺陷的限制。制造工艺固有地在每个单元面积产生某一平均数目的缺陷,从而使得面积较大的管芯易于不起作用。因此,对于面积较大的管芯而言,每个管芯的成本明显增加。对于诸如存储器或逻辑阵列之类包括规则结构的管芯而言,管芯内的冗余可以用于避免缺陷结构。这显著减小了大管芯的成本。然而,这种方法对于不规则结构或耦合到特定输入/输出(I/o)连接点的结构并不能起作用。解决该固有问题的一种方法是利用多芯片模块(MCM)来以较低的成本实现大且复杂的系统的制造。使用该方法,单个封装内的系统被分割成基板上的、具有较快管芯间I/O连接或线路的很多管芯。与不同封装中管芯之间的连接相比,单个封装内的管芯之间的这种I/o连接可以更短且由更加精细的导线构建。这种封装配置不仅实现更多的连接,而且实现更快的连接,不过连接仍将慢于单个管芯内的连接。在制造过程中,MCM中的各个管芯可以被测试,以使得仅已知的可接受(例如无缺陷)管芯被键合到单个基板上。再者,产量增强不依赖于MCM内逻辑的任意规则性;也就是说,在MCM中可以存在任意数目的任意结构。然而,MCM的管芯间I/O连接也经受着缺陷的困扰。因此,最终的产品产量可能不像希望得那么高。

发明内容
一般而言,下面描述的示例实施例涉及MCM上管芯之间的冗余I/O连接。S卩,使用的管芯间I/o连接的数目大于通常用于在管芯之间提供连接性的连接的数目。缺陷的管芯间I/o连接通过在MCM组装之后的测试被发现和避免,信号通过可接受(即非缺陷)的冗余连接而重定路径(re route)。在一个实施例中,测试可以在组装时间完成,且结果存储在非易失性存储器中。备选地,测试例如可以在通电时动态地完成,且结果可以用于配置管芯间I/O连接。结合附图,从下面的详细描述将显见其他方面和优点,其中附图通过举例示出了实施例的原理。


图1A和IB不出根据不例实施例的多芯片模块的剖面图。图2示出根据示例实施例可以结合到多芯片模块的示例性管芯。图3A和3B示出根据示例实施例的多芯片模块的两个内核之间的示例性I/O连接。图4A和4B示出根据示例实施例的冗余I/O连接的使用。图5示出根据示例实施例的冗余处理器和缺陷存储器。图6示出根据示例实施例的一对测试处理器。
图7示出根据示例实施例使用存储在非易失性存储器中的来自缺陷测试的结果的方法。图8示出根据示例实施例在通电之后对I/O连接进行缺陷检测的方法。图9示出根据示例实施例通过MCM进行自测试的方法。
具体实施例方式在下面的说明中,提出了各种特定细节,以提供对示例性实施例的透彻理解。然而,对于本领域技术人员而言,很明显的是示例实施例可以不使用这些特定细节中的一些来实现。在其他实例中,并未详细描述处理操作和实施细节(如果已知)。图1A和IB示出根据示例实施例的多芯片模块(MCM)的剖面图。如图1A所示,MCMIOOa包括两个管芯(着色为灰色),其中之一是管芯102a。在示例实施例中,管芯102a连接到配线层103a,该配线层103a进而通过焊接凸点104a(例如,倒装芯片焊接凸点)连接到基板IOla中的管芯间I/O连接105a。如前所述,管芯间I/O连接105a慢于管芯上连接,但是快于且多于常规管芯外连接。在示例实施例中,管芯间连接105a可以针对每层被布线为多个连接。图1B示出备选示 例实施例。如该图所示,MCM IOOb也包括两个管芯(着色为灰色),其中之一是管芯102b。在示例实施例中,管芯102b连接到配线层103b,该配线层103b进而通过焊接凸点104b连接到基板IOlb中的管芯间I/O连接105b。在该示例实施例中,焊接凸点104b还连接到横跨基板IOlb且连接到焊球107b的贯穿硅通孔106b。图2示出根据示例实施例用于多芯片模块的管芯。如该图所示,在示例实施例中,管芯可以是包括逻辑区域215和I/O元件210的可编程逻辑器件(PLD) 200。I/O元件210可以支持各种存储器接口。诸如用于时钟产生和计时的锁相环(PLL) 225之类的其他辅助电路可以布置在内核逻辑区域215外部,例如,布置在可编程逻辑器件200的角落处且与I/O元件210相邻。逻辑区域215可以填充以逻辑单元,该逻辑单元在最基本级包括“逻辑元件”(LE)或在更复杂级包括可编程知识产权(IP)块。应当意识到实施常用功能的可编程逻辑块通常被称为“IP内核”。还应当意识到,LE可以包括基于查找表的逻辑区域,且可以被分组成“逻辑阵列块(LAB)”。LE或LAB可以配置成执行用户希望的逻辑功能。图3A和3B示出根据示例实施例的多芯片模块的两个内核之间的I/O连接。如图3A所示,MCM 300包括两个管芯,其中之一是具有内核301 (例如IP内核,其可以是基于某些配置比特流而被编程的逻辑元件)的管芯,该内核301由连接到三态缓冲器302a的逻辑电路组成,该三态缓冲器302a进而连接到连接两个管芯的管芯间I/O连接303。在图3A中,管芯间I/O连接303是双向的,也就是说,用于其三态缓冲器(例如三态缓冲器302a)的信号仍未被选择为建立单个方向。对照地,在图3B中,管芯间连接303是单向的,且其使用常规逻辑缓冲器在管芯之间通信。因此,每条导线仅可以在一个方向中传输信号。MCM还可以包括多于两个管芯。在下面的描述中,“正常连接”是通常对于管芯上的逻辑可见的管芯间I/O连接(例如,可用于连接两个管芯之间的逻辑的连接)。如下面更详细讨论,示例实施例利用MCM上(例如,在正常连接上或其上方)的额外管芯间I/O连接和管芯上的相应缓冲器以及开关(或重定路径)电路,来在正常连接其中一个或更多个有缺陷的情况中使用额外管芯间I/O连接。这些额外管芯间I/O连接被称为“冗余连接”。图4A和4B示出根据示例实施例的冗余I/O连接的使用。如图4A所示,示例实施例包括4个正常连接401和两个冗余连接402。4个正常连接中的每一个连接到接收器(例如复用器),该接收器可以选择与正常连接相关的信号或两个冗余连接402其中任一个的信号。同样,冗余连接中的每一个从可以选择与4个正常连接之一相关的信号的驱动器(例如复用器)连接。因而,如果正常连接有缺陷,则冗余连接其中之一(例如本身没有缺陷的一个)可以用于从冗余连接驱动器向缺陷连接的接收器传输信号。这种重定路径在图4B中示意。在该图中,如交叉影线所示,正常连接405是有缺陷的。然而,用于冗余连接406 (良好)的驱动器403选择与正常连接405相关的信号且将它驱动到接收器404。对于与也被示为缺陷的正常连接407相关的信号,示出了良好冗余连接408上的类似重定路径。应当意识到,图4A和4B示出正常连接和冗余连接之间的“完全交叉(crossbar) ”。本领域中还公知,任意组信号可以在“完好交叉”上行进,这需要稍微较少的复用器输入,且也可以用在本应用中。应当意识到,管芯间I/O连接的制造是困难的,且由于缺陷容易产生产量损失。一极端示例帮助说明这点。假设在每个管芯之间存在10,000个连接,且每个连接具有0.1%的缺陷率(或99.9 %的为良好的概率)。期望平均地0.001*10000 = 10个正常连接将是有缺陷的。然而,实际存在一个概率范围,使得一些MCM具有的缺陷连接可能少于10个,且一些MCM具有的缺陷连接可能大于10个。所有连接均良好的概率是0.0000452或大约是
0.005%;换句话说,所有MCM中的99.995%并不如期望得那样工作。很明显,非缺陷MCM的制造并非是经济可行的。然而,如果假设任意冗余连接可以代替10,000个正常连接中的任意一个,则25个冗余连接将允许99.998%的产量;也就是说,小于0.002%的MCM将具有大于25个缺陷连接。实际上,在用于MCM的切换(或重定路径)逻辑中提供这种数量的灵活性可能是相对昂贵的,因为每个冗余连接将需要选择10,000个正常连接中的任意一个。此外,由于在大物理跨度上对信号重定路径,这种MCM(下面被称为“非分组的示例实施例”)可能招致相对大的延迟。为了减小切换逻辑的成本和相关延迟的大小,示例实施例可以使用更多的冗余连接但是将其使用限制为正常连接的子集。在这种示例实施例(下面称为“分组的示例实施例”)中,10,000个连接可以分割成40个正常连接的250个组。对于40个正常连接的每个组,可以以这种方式实施4个冗余连接:该方式使得4个冗余连接中的每一个可以代替该组中40个连接中的任意一个。在这种示例实施例中,在总记44个连接中具有大于4个缺陷连接的概率大约是I X 10_9,且250个组中的一个或更多个将具有多于4个缺陷连接的概率大约是3X10'因而总产量是99.99997%。尽管在250个组上冗余连接的总数限制是每组4个,总共1000个,切换(或重定路径)电路的复杂性明显减小,从而减小了成本和延迟两者。在聚焦于成本的另一示例实施例中,可以执行考虑冗余连接的相对成本和切换逻辑成本的成本分析,以发现关于冗余连接的数目和组的大小方面的低成本解决方案,从而实现每个好产品的相对最小总成本。而且, 在分组的示例实施例中,冗余连接中的每一个可以使用40:1多路复用器(复用器)来在驱动器处选择与正常连接相关的信号,且使用5:1复用器在接收器处选择与正常连接相关的信号或与冗余连接之一相关的信号。这些复用器将通常使用6 (26 > 40)位和3(23>5)位来分别用于其控制输入。应当意识到,用于切换电路的控制位的实际值(例如O或I)依赖于特定MCM中缺陷连接的设置。还应当意识到,非分组的示例实施例可以使用25个冗余连接,每个从与正常连接相关的10,000个信号中进行选择,总扇入为250,000。对照地,分组的示例实施例可以使用250*4 = 1000个冗余连接,但是每个连接仅从与正常连接相关的40个信号进行选择,总扇入为 40,000。再者,较小选择范围意味着分组的示例实施例将相对较快,因为10,000个信号很可能跨越管芯的边缘且花费相当的时间来沿着管芯的一边的长度传输信号。因为存在250个组,每个组包括具有6个控制位(b)的4个驱动器以及具有3b控制位的10,000个接收器,总共250*4+10,000*3 = 36,OOOb可以用于配置分组的示例实施例中的所有复用器。在一个示例实施例中,用于切换(或重定路径)逻辑的控制位可以存储在可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其他非易失性存储器(NVM)中。在备选示例实施例中,数据可以存储在易失性存储器中,例如,在现场可编程逻辑门阵列(FPGA)的情况中,该易失性存储器可以配置为(a)设备初始化或(b)编程或配置的一部分。这种数据将专用于特定MCM中的特定缺陷。可以以更复杂的控制解码为代价,减小需要的存储器的数量。另外,在分组的示例实施例中,可以规定:在所有10,000个总连接上仅最大25个缺陷将要重定路径,因为该重定路径数量给出99.998%的相对较好的产量。在该实例中,可以使用14b(214> 10,000)对每个缺陷连接的位置进行编码。总共350b (25个编码,每个是14b)可以存储在 闪存(或其他非易失性存储器)中的MCM上。此后,例如,在通电时,控制逻辑可以读取350b的缺陷信息,且产生36,OOOb (30,OOOb用于接收器且6,000用于驱动器)以用于控制在重定路径中涉及的复用器。在示例实施例中,这36,OOOb可以存储在与复用器相关的RAM(或其他易失性)存储器中。图5示出冗余处理器501 (例如控制逻辑),该冗余处理器501从缺陷存储器502读取数据(例如控制位)且产生针对驱动复用器503和接收复用器504a和504b控制信号,以绕过缺陷连接进行重定路径。如上所述,如果在制造时间针对缺陷管芯间连接对MCM进行了测试,则存储缺陷信息的缺陷存储器502可以是NVM。应当意识到,该NVM可以位于MCM上,或者它可以位于芯片外,例如在备选示例实施例中位于计算机的硬驱动上。在示例实施例中,该缺陷信息可以包括缺陷位置和/或冗余控制信息,用以配置执行缺陷的正常连接和良好(例如非缺陷)冗余连接之间的重定路径的复用器。备选地,缺陷存储器502可以是易失性存储器,在MCM上的管芯通过顺序测试管芯间连接中的每一个而执行自测试操作之后,将缺陷信息存储于其中。同样,此处,这种易失性存储器可以位于MCM上或它可以位于芯片外,例如,在备选示例实施例中,位于计算机的硬驱动上。在示例实施例中,可以在MCM通电时执行这种测试。图6示出根据示例实施例的一对测试处理器。如该图所示,MCM601包括两个内核603a和603b,每个内核分别具有测试处理器604a和604b。两个测试处理器通过连接进行通信,这些连接可以是诸如连接602这样专用于测试的连接,或者是诸如连接606这样可用于内核之间的测试和正常通信二者的连接。每个测试处理器包括信号路径,以向连接注入测试信号以及从连接接收测试信号。在示例实施例中,连接可以使用多路复用器来在测试信号和正常信号之间进行选择。如该图所示,测试处理器604a使用信号路径605a且测试处理器604b使用信号路径605b。在示例实施例中,测试处理器可以在一定时间周期上测试连接,以产生控制信息(例如控制位)从而配置冗余切换电路(例如驱动复用器和接收复用器)。图7示出根据示例实施例使用源自存储在非易失性存储器中的缺陷测试结果的方法。该方法是从控制逻辑的角度撰写的,该控制逻辑可以是专用的(例如电路)或软性的(例如可配置或可编程的)。在该方法的第一操作中,在步骤701,控制逻辑缺陷测试两个MCM内核(例如FPGA)之间的I/O连接,该两个MCM内核具有冗余I/O连接以及用于在正常I/O连接和冗余I/O连接之间对信号重定路径的电路。然后,在步骤702,控制逻辑在非易失性存储器上(例如在MCM上或硬盘上)存储由缺陷测试所得到的数据。如上所述,该缺陷数据可以包括用于配置执行缺陷的正常连接和良好冗余连接之间的重定路径的复用器的缺陷位置和/或冗余控制信息。在步骤703,控制逻辑基于由缺陷测试所得到的数据将信号从缺陷的正常I/O连接重定路径到良好冗余I/O连接。图8示出根据示例实施例在通电之后对I/O连接进行缺陷检测的方法。同样,该方法是从控制逻辑的角度撰写的。在步骤801,当通电时,控制逻辑缺陷测试两个MCM内核(例如FPGA)之间的I/O连接,该两个MCM内核具有冗余I/O连接和用于在正常I/O连接和冗余I/O连接之间对信号重定路径的电路。然后,在步骤802,控制逻辑基于由缺陷测试得到的数据,将信号从缺陷正常I/O连接重定路径到良好冗余I/O连接。在示例实施例中,该方法可以不在NVM中存储由缺陷测试得到的数据,例如,该方法可以利用易失性存储器。在备选示例实施例中,该方法例如可以在第二操作之前或之后在NVM中存储由缺陷测试得到的数据。图9示出根据示例实施例通过MCM进行自测试的方法。该方法是从配置或编程为执行缺陷测试的MCM的视角撰写的。在方法的第一操作中,在步骤901,MCM对两个MCM内核(例如FPGA)之间的I/O连接进行缺陷测试,该两个MCM内核具有冗余I/O连接以及用于在正常I/O连接和冗余I/O连接之间对信号重定路径的电路。该操作可以在每次MCM通电时发生,或者例如在MCM通电预定次数之后或在经过特定时间周期之后周期性地发生。然后,在步骤902,MCM在非易失性存储器中(例如在MCM上或硬盘上)存储由缺陷测试得到的数据。在该方法的第三操作中,在步骤903,MCM过渡到操作模式。并且在该方法的第四操作中,在步骤904,MCM基于由缺陷测试得到的数据,将信号从缺陷的正常I/O连接重定路径到良好的冗余I/O连接。应当意识到,在示例实施例中,第四操作可以在第三操作之前执行。在另一示例实施例中,第四操作可以在第三操作之后执行。此处描述的装置和方法可以结合到任意合适的电路。例如,方法和装置可以结合到诸如可编程逻辑器件或微处理器之类的各种类型的设备中。示例可编程逻辑器件包括可编程阵列逻辑(PAL)、可编程逻辑阵列(PLA)、现场可编程逻辑阵列(FPLA)、电可编程逻辑器件(EPLD)、电可擦除可编程逻辑器件(EEPLD)、逻辑单元阵列(LCA)经、现场可编程门阵列(FPGA)、 专用标准产品(ASSP),此处仅举几例。
另外,这种可编程逻辑器件可以是数据处理系统的部件,该数据处理系统包括以下组件其中一个或多个:处理器;存储器;1/0电路;以及外围设备。数据处理系统可以用在各种应用中,诸如计算机网络、数据网络、仪器、视频处理、数字信号处理或其中希望使用可编程或可重复编程逻辑的优点的任意合适其他应用。可编程逻辑器件可以用于执行各种不同逻辑功能。例如,可编程逻辑器件可以配置成与系统处理器协作工作的处理器或控制器。可编程逻辑器件还可以用作用于任意访问数据处理系统中的共享资源的仲裁器。在又一示例中,可编程逻辑器件可以配置成处理器与系统中其他组件之一之间的接口。在一个实施例中,可编程逻辑器件可以是受让人所拥有的设备系列其中之一。尽管以特定顺序描述了方法操作,应当理解,可以在所述操作之间执行其他操作,可以修改所述操作使得它们在稍微不同的时间发生,或者所述操作可以分布在系统中,该系统允许以与处理相关的各种间隔发生处理操作,只要以所需方式执行交叠操作的处理即可。此外,上述方法操作可以以任意合适的方式模块化和/或分布化。尽管出于理解清晰目的,较为详细地描述了上述发明,但是很明显,可以在所附权利要求书的范围内实践某些变化和修改。因此,示例实施例被认为是说明性而非限制性的,且本发明并不限于此处给出的细节,而是可以在所附权利要求书的范围和等价范围内进行修改 。
权利要求
1.一种模块,包括: 基板; 耦合到所述基板的至少两个内核; 位于所述至少两个内核之间的多个输入/输出(I/o)连接,其中所述多个I/O连接包括冗余I/o连接;以及 电路,可操作为基于所述多个I/o连接中的I/O连接有缺陷的确定而将信号从所述I/O连接重定路径到所述多个I/O连接的冗余I/O连接。
2.根据权利要求1所述的模块,其中在所述模块的制造过程中执行所述确定。
3.根据权利要求2所述的模块,还包括用于存储由所述确定得到的数据的非易失性存储器。
4.根据权利要求3所述的模块,其中由所述确定得到的数据被存储在外部非易失性存储器中。
5.根据权利要求1所述的模块,其中在所述模块通电时执行所述确定。
6.根据权利要求1所述的模块,还包括用于控制所述电路的逻辑。
7.根据权利要求6所述的模块,其中所述逻辑是专用逻辑。
8.根据权利要求6所述的模块,其中所述逻辑是软逻辑。
9.根据权利要求1所述的模块,还包括用于执行所述确定的软逻辑。
10.一种方法,包括: 测试耦合到基板的模块的两个内核之间的多个输入/输出(I/o)连接,其中所述多个I/o连接包括冗余I/O连接;以及 基于所述多个I/o连接中的一个I/O连接有缺陷的确定,将至少一个信号从所述一个I/o连接重定路径到所述冗余I/O连接中的冗余I/O连接。
11.根据权利要求10所述的方法,其中在所述模块的制造过程中执行所述确定。
12.根据权利要求10所述的方法,其中在所述模块通电时执行所述确定。
13.根据权利要求10所述的方法,还包括:存储由所述确定得到的数据。
14.根据权利要求13所述的方法,其中由所述确定得到的数据被存储在非易失性存储器中,所述非易失性存储器是所述模块的组件。
15.根据权利要求13所述的方法,其中由所述确定得到的数据被存储在外部非易失性存储器中。
16.根据权利要求10所述的方法,其中所述模块具有用于控制所述电路的逻辑。
17.—种方法,包括以下操作: 测试模块的两个内核之间的多个输入/输出(I/O)连接以识别缺陷I/O连接,其中所述模块包括冗余I/o连接,并且还包括用于将信号从所述缺陷I/O连接重定路径的电路; 在非易失性存储器中存储由所述测试得到的数据; 使得所述模块转换到操作模式;以及 基于由所述测试得到的所述数据,将至少一个信号从所述缺陷I/o连接的一个缺陷I/O连接重定路径到所述冗余I/O连接的一个冗余I/O。
18.根据权利要求17所述的方法,其中所述模块具有用于控制所述电路的软逻辑。
19.根据权利要求17所述的方法,其中所述模块具有用于控制所述电路的专用逻辑。
20.根据权利要求17 所述的方法,其中在所述模块通电时,执行所述确定。
全文摘要
本发明涉及具有可重定路径管芯间通信的多芯片模块(MCM)。该多芯片模块具有位于其管芯之间的冗余I/O连接。即,使用的管芯间I/O连接的数目大于通常用于提供管芯之间的连接性的连接的数目。缺陷连接通过在MCM组装之后进行测试而被发现,且通过使信号通过良好(即非缺陷)冗余连接被重定路径而被避免。测试可以在组装时间完成且结果存储在非易失性存储中。备选地,MCM例如可以在通电时本身动态地执行测试,且使用测试结果来配置管芯间I/O连接。
文档编号G11C16/06GK103219308SQ201210595229
公开日2013年7月24日 申请日期2012年12月27日 优先权日2011年12月28日
发明者D·刘易斯 申请人:阿尔特拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1