使能2.5D器件级静态时序分析的管芯接口的制作方法

文档序号:16973927发布日期:2019-02-26 18:48阅读:202来源:国知局
使能2.5D器件级静态时序分析的管芯接口的制作方法

采用半导体制造工艺来创建集成电路(ic)管芯,所述集成电路管芯可被封装到模块化微电子组件或ic芯片中以便结合到电子系统中。这种模块化方法受对于半导体工业而言典型的大型设计和建立成本以及极小边际成本的驱动,这些相组合以便仅当制造足够大量时才使ic产品商业可行。为了将其市场最大化,被封装的产品配备有使能够在各种情境中操作的接口。

具体地,此方法产生影响使得输入和输出(缩写为i/o或io)触头被设计用于强健的(robust)操作,以便支持次优连接上的信号传送和/或容忍静电放电或其他信号瞬变。因此,针对每个io触头,ic管芯传统上采用“标准io单元(cell)”,所述“标准io单元”包括电路系统,所述电路系统保护精细片上电路系统免受一系列外部现象,同时提供电力以用于将输出信号驱动到加载的信号迹线上和/或用于调节可能被衰减且有噪声的输入信号。随着io触头数量增加,标准io单元的面积和电力需求可以支配片上电路系统的需求,并且在极端情况下可以变成禁止的。

在制造开始之前,优选地使用在公开文献中公开的建模技术中的一种或多种建模技术来验证电路操作。这些建模技术包括全电路仿真,尽管所述全电路仿真对于甚至适度复杂的电路而言变得不可行。静态时序分析(sta)是对数字电路而言较为流行的建模技术,因为所述技术相对快速,在时序约束和传播延迟方面对电路进行分析以确定跃变到达时间从而与时序要求进行比较,使能够计算时序裕度(“弛豫”)并发现可能的时序违例。

出于多个原因中的任何原因,标准io单元(在此情况下,标准数字io单元)传统地被看作用于静态时序分析的外边界,所述原因包括:每个外部迹线的阻抗特性的可允许变化程度;加载不同io触头的期望变化;以及由信号串扰和噪声引起的更大污染可能性。当设计者想要在更大电子组件的情境下对ic管芯的性能进行建模时,这种考虑可能需要使用全电路仿真以进行适当建模,不管上述针对甚至适度复杂电路的不可行性如何。具有多于几个管芯的多芯片模块(mcm)(如使用2.5d(2.5维)技术创建的模块(即,通过将采用“倒装芯片”配置的多个ic管芯安装在提供管芯间连接以及与封装体触头的连接的“内插件”基板上而形成的微电子组件))将通常具有超过此阈值的复杂度。



技术实现要素:

因此,本文中公开了一种适合用于2.5d收发机设备的电路设计验证方法。在一个说明性实施例中,所述方法包括:(a)检索电路的设计,所述电路的设计包括借助内插件连接的多个集成电路管芯,每个管芯具有用于接收或发射由所述内插件的芯片间连接传递的数字信号的至少一个触头,所述电路针对每个这种触头包括io单元;(b)获取所述电路的部件的时序模型,所述时序模型将所述io单元的传播延迟以及所述芯片间连接的传播延迟考虑在内;(c)使用所述时序模型执行对所述设计的静态时序分析,以便确定在所述部件中的每个部件处的数据要求时间(datarequiredtime)和数据到达时间(dataarrivaltime);(d)将所述数据要求时间与所述数据到达时间进行比较以检测时序违例;以及(e)报告所述时序违例。

说明性收发机实施例包括:内插件;接口模块管芯,所述接口模块管芯连接至所述内插件;以及多个串行器-解串行器(serdes)管芯,所述多个serdes管芯连接至所述内插件。所述内插件包括将所述串行器-解串行器管芯耦合至所述接口模块管芯的芯片间连接。所述接口模块管芯和所述多个serdes管芯各自包括耦合至所述芯片间连接的io单元,每个io单元具有用在静态时序分析中的相关联的时序模型。

前述实施例中的每个实施例可以单独或组合地实施,并且可以采用任何合适的组合使用以下特征中的任何一个或多个特征来实施:(1)所述电路设计包括多个串行器-解串行器管芯,所述多个串行器-解串行器管芯借助由所述芯片间连接形成的并行数据总线耦合至接口模块管芯。(2)所述并行数据总线各自包括具有用于确定所述数据要求时间的跃变的总线时钟信号。(3)在所述多个串行器-解串行器管芯上,所述io单元不包括电平偏移器(levelshifter),而在所述接口模块管芯上,所述io单元可以包括电平偏移器。(4)所述io单元包括具有二极管限压器的发射io单元。(5)所述io单元包括具有静电放电保护部件的接收io单元。(6)每个静电放电保护部件包括由固定电阻分开的两个二极管限压器。(7)所述时序模型将所述传播延迟对温度和电源电压的依赖性考虑在内。(8)所述报告标识输入或输出端口,在所述输入或输出端口处时序违例连同相关联的温度和电源电压一起被检测。(9)所述设计包括连接至所述内插件的100个、200个或更多个管芯。

附图说明

在附图中:

图1示出了说明性通信网络。

图2是说明性收发机的功能框图。

图3是说明性微电子组件的部分横截面。

图4是通过内插件迹线连接的说明性io单元的示意图。

图5是具有时序模型特性的说明性电路部件。

图6是说明性时序图。

图7是如应用于2.5d器件的说明性静态时序分析方法的流程图。

然而,应理解的是,附图和详细说明中所给出的特定实施例不限制本公开。相反,它们为普通技术人员提供用于辨别包含在所附权利要求书的范围内的替代形式、等效形式和修改方案的基础。

术语

集成电路(“ic”)管芯是ic晶片被切割的单元。(在本文中,“管芯(dice)”将被用作管芯(die)的复数。)单个ic管芯的封装形式(具有准备好用于焊接或其他电连接结合到大型电气电路或系统中的节点、引脚、柱、焊盘、端子、引线、凸块、球状体或其他电气触头(本文中统称为“触头”))可以被称作ic芯片。当多个ic管芯被封装在一起(例如作为多芯片模块或系统级封装)时,封装的单元在本文中被称作“微电子组件”。多个ic管芯可以直接附接至封装体基板,所述封装体基板可以采用层压电路板或者陶瓷、玻璃或半导体基板的形式,并且通常具有显著(数量级)大于ic管芯上的迹线的印刷或蚀刻迹线。由于这种大小差异可以不利地影响ic管芯之间的通信性能,因此至少一些微电子组件采用所谓2.5d或3d技术。在3d技术中,ic管芯堆叠在彼此顶上以便提供相邻管芯之间的直接电气连接。然而,这种堆叠可能使封装体难以提供充足的散热。在2.5d技术中,ic管芯中的至少一部分附接至“内插件”,所述“内插件”进而可以附接至封装体基板。内插件可以是采用硅穿孔(tsv)来在其上表面(针对ic管芯)及其下表面(针对封装体基板)两者上提供触头的硅基板。针对管芯之间改进的通信性能,内插件上的迹线可以更紧密地匹配ic管芯上的迹线的大小,并且可以结合意向的电感和电容元件以便提供与封装体基板上的触头和迹线更好的阻抗匹配。术语“基板”当不受限制时可以指封装体基板、内插件、ic管芯或提供触头以用于将管芯的集成电路元件连接至微电子组件的其他元件或外部触头的任何其他形式的平台。

具体实施方式

参考说明性上下文来最佳理解所公开的装置和方法。相应地,图1示出了说明性通信网络100,所述说明性通信网络具有将在终端节点110至122(所述终端节点可以表示移动设备、便携式计算机、工作站、服务器、网络附接存储系统以及其他这种通信源和目的地)之间引导和转播通信信号的节点102、104、106(表示交换机、路由器、基站、网关以及其他形式的通信设备)互连的通信链路108。通信网络100可以是或包括例如互联网、广域网或局域网。

通信链路108可以是有线或无线通信信道。作为一个示例,通信链路可以是具有电导体或光纤束的电缆,其中每个导体或光纤在相应信道上承载多个已调信号。随着信息信号的这种密集堆积(这还可以在其他形式的无线或有线通信链路中发现),对与通信设备高效对接而言,高度集成通信收发机是有利的。期望将针对多个发射机模块和多个接收机模块的集成电路结合到单个封装单元(如微电子组件)中。

图2示出了耦合至终端节点203中的说明性收发机202的一个这种电缆200。电缆连接器204将电缆200的电导体耦合至信号引线206。定向耦合器或混合器208将信号引线206上的输入信号与每个信道上的输出信号隔离开。(一些设想实施例将每个信道实施为两个单独单向的接收通道和发射通道,消除对混合器208的任何需要。)输入信号耦合至串行器-解串行器(“serdes”)单元210a至210d组中的接收机。接收机对输入信号进行操作以便提取相应的数字数据流。接口模块212根据标准i/o总线协议缓冲数字数据流并将其转换成适当格式以便在终端节点的内部总线214上进行通信。在一些实施例中,由接口模块212执行的转换包括通道同步、纠错和有效载荷提取。

接口模块212还从接口总线214处接受数字数据以用于传输。在至少一些实施例中,接口模块212使用适当的报头和帧结束标记来将数据包格式化,可选地添加纠错代码和/或校验和层。接口模块212向serdes单元210a到210d中的发射机提供所产生的发射数据流。发射机将数字发射数据流转换成模拟电驱动信号,混合器208发送所述模拟电驱动信号作为信号引线206上的输出信号。

说明性收发机202支持四个信道(即,四个接收通道和四个发射通道),但这并不是限制。至少一些设想实施例支持16个信道。其他实施例支持64、128或256个信道。在任何情况下,收发机202优选地被提供作为单个集成封装体(例如,多芯片模块)。根据2.5d技术,多达256个(或更多)serdes通道管芯和接口模块管芯可以采用倒装芯片配置安装在内插件上,以便创建单个封装的微电子组件模块。在serdes单元与接口模块之间传递的数字信号可以借助形成具有伴随总线时钟信号的并行总线的内插件迹线传递。

图3是具有多个ic管芯302a、302b等的说明性微电子组件的部分横截面,采用倒装芯片配置(即,管芯基板翻转以便将图案化区域和触头定位成与安装表面相邻)的集成电路304通过微型凸块308附接至内插件306的上触头。内插件306的下触头通过c4(“受控塌陷芯片连接”)凸块312附接至封装体基板310的内部(上)触头。当微电子组件结合到更大型系统中时,封装体基板310的外部(下)触头314通过焊接凸块320附接至电路板318(或其他系统基板)上的焊接触头316。电路板318上的印刷电路迹线322以及封装体基板310的上表面和下表面上的过孔328和印刷电路迹线324、326将c4凸块312电连接至电路板318上的其他部件。

尽管附图未按比例绘制,但是典型微型凸块直径将为大约30微米。ic管芯302a、302b和内插件306的厚度可以变化低至大约0.2mm或略少,尽管更多典型值将为此最小厚度的大约两倍。当然,内插件306具有足以容纳期望的ic管芯中的所有ic管芯的长度和宽度尺寸,并且封装体基板反过来具有足够的尺寸来容纳内插件。典型c4凸块直径为大约100微米,间距为大约160微米。根据已建立的半导体器件制造技术,集成电路304由被沉积并被图案化在扩散的掺杂区域上的介电层、多晶硅层和/或金属层形成。

serdes管芯可以各自提供大约150个触头(有时称为“引脚”)以便在管芯与内插件之间传递数字信号。如果微电子组件中包括256个这种管芯,则存在接近40,000个触头,各自由io单元支撑。如果使用标准io单元,则空间和电力需求将是禁止的,特别是在设想的频率处(在ghz范围内)。此外,出于之前所讨论的原因,标准io单元将使对传统封装/pcb级模拟电路仿真的使用成为必要,然而这种仿真将是禁止的。幸运地,当内插件迹线用于在管芯(又称作“芯片间连接”)之间传递数字信号时,芯片外rc加载大幅度减少并遭受显著更大的可预见性。换言之,2.5d器件中的管芯的io单元可以被显著地简化,以便减少面积和电力需求,并且进一步使能够使用静态时序分析来进行封装级电路验证。

由于管芯间内插件迹线远远小于或短于常规传统基板或电路板迹线,因此标准io单元的前驱动结构和后驱动结构所需要的大面积(例如,28nm工艺中0.002mm2)是过度的。此外,后驱动电路需要额外的高压电源(因此需要管芯上的附加触头),并且消耗大量电力以便以1ghz到2ghz频率切换。在这种切换期间汲取的冲击电流引起动态电源电压降,增加串扰和毛刺的可能性。进一步地,针对与内插件迹线相关联的风险,将标准io单元的典型静电放电(esd)保护元件过工程化(overengineer)。

因此,被设计用于安装在内插件上的ic管芯可以采用更高效的流线型io单元以便连接至内插件迹线。图4示出了用于在2.5d微电子组件中的ic管芯之间传递数字信号的说明性cmosio单元(发射io单元401和接收io单元411)。发射io单元401从内部(“片上”)逻辑处接收数字输出信号。一个或多个并行cmos缓冲器402a到402b构成的组接收数字输出信号。cmos缓冲器可以是铸造厂提供的标准缓冲器单元,基于内插件迹线424的长度、加载电容之类的选择并行提供的数量。因为cmos缓冲器是设计成用于片上使用的缓冲器,所以其面积和电力需求最小。

cmos缓冲器402a到402b的组合输出被耦合用于提供到管芯的io触头421的数字发射。(可选地,如以下进一步讨论的可以包括电平偏移器404。)二极管限压器406可以被提供用于将接触电压限制在接地与正电源电压之间的范围内。

io触头421借助电气连接(例如,焊接球422)耦合至内插件迹线424,所述内插件迹线将发射信号传递至另一个管芯的io触头427。电气连接(例如,焊接球426)将迹线424耦合至io触头427。为了当考虑传播、衰减以及由于通过迹线424传递发射信号而对所述发射信号产生影响的其他现象时避免混淆,触头427处的信号在本文中被称为接收信号。

esd部件412可以包括在接收io单元411中,以便保护免受超过预定极限的接收信号电压和电流的偏移。因为阻抗元件的每一端维持在接地与电源电压之间,所以通过阻抗元件的电流无法超过电源电压与阻抗之比。因为与内插件迹线424相关联的esd危害相对于用于将微电子组件连接至外部电路系统的封装体引脚的危害大幅度降低,所以所展示的esd部件412可以比传统esd部件小很多。

可选地,电平偏移器414可以对esd部件412下游的接收信号的电压进行转换。cmos缓冲器416接受接收信号并将其转发至接收管芯的内部逻辑。如前,cmos缓冲器可以是由铸造厂提供用于片上使用的具有最小面积和电力需求的标准缓冲器单元。如果迹线424的长度不超过3mm,则期望所展示的二极管限压器406、触头421、迹线424、触头427以及esd部件412(包括焊接连接422、426)的总电容小于700毫微微法。在这种情况下,期望io单元401、411很容易操作到高达2ghz,每对消耗少于0.2微瓦特。

在替代性实施例中,使用cmos反相器代替cmos缓冲器402、416。由于第二反相器将反转第一反相,因此可以实现具有可能降低的复杂度的等效操作。

如果管芯具有由同一电源电压操作的发射io单元401和接收io单元411,则不需要电平偏移器(404,414)。如果它们由不同电源电压操作,则针对管芯之间的每条通信链路将采用至少一个电平偏移器(404或414)。如在serdes单元210和接口模块212的管芯之间,将电平偏移器定位在接口模块212的io单元中将向接口模块212添加单个电源域(即,单个附加电源电压),这可能远不如为serdes单元210中的每一个提供附加电源域繁冗。

使用图4的io单元设计,针对与二极管限压器406、触头421、迹线424、触头427以及esd部件412(包括焊接连接422、426)相关联的电容,可以在缓冲器延迟(cmos缓冲器402、416,以及优选地一电平偏移器延迟404、414)以及rc传播延迟方面表征2.5d器件中的管芯之间的信号通信。电子设计自动化(eda)工具可以执行后布局spice仿真来针对每条迹线生成rc时序库,同时将电源/温度/工艺角组合考虑在内。(其他合适的模拟仿真工具包括来自cadence公司的ultrasim以及来自ansys公司的hfss。)如果尚不可用,则可以针对标准库单元以及2.5d器件的管芯中的其他部件(例如,serdes单元和接口模块)类似地确定时序库。可以基于设备的规格构造2.5d器件的外部io接口的时序库。

这些库连同电路设计的文件表示(hdl文件)然后可以被提供给静态时序分析(sta)工具(如可从synopsys(primetime)以及cadence(tempus)处商购的工具)。sta工具然后可以分析设计(包括管芯之间的通信路径)以便检测和报告任何时序违例。实施sta的工具获取电路设计中的每个元件(包括电路部件以及所述部件之间的信号通信路径)的定时模型。

图5示出了具有时序弧502到506的说明性元件500,所述时序弧建立元件的输入端口与输出端口之间的时序关系。输出0与输入0具有非时控的关系,并且因此时序弧502示出了作为传播延迟的关系。相比而言,输出1与输入1具有时控关系,并且因此时序弧504利用传播延迟将输出1与时钟输入关联,并且时序弧506利用时序约束将输入1与时钟输入关联以用于设置(在时钟跃变之前必须接收最小时间数据)和保持(在时钟跃变之后最小时间数据必须维持稳定)。对每个延迟和约束值而言,时序模型可以进一步指定值的不确定范围,并且可以提供值对温度、电源电压以及其他变量的依赖性。在许多情况下,所述依赖性可以是非线性的,并且所述模型可以采用来自查找表的插值以确定适当的值和不确定范围。

为了进一步展示sta的约束方面,图6示出了具有正跃变604的时钟信号602。最小设置时间606和最小保持时间608设置输入数据信号610的时序约束,即,要求数据出现在输入端处的最早时间和最晚时间。将数据到达时间612与最早要求的时间进行比较以便测量弛豫616。将随后数据到达启动时间614与最晚要求的的时间进行比较以便测量弛豫618。如果任一弛豫测量结果为负(即,数据在最早要求的时间之后到达或者在最晚要求的时间之前变化),则时序违例已发生并且将被报告以便判定是否需要对设计进行调整。可以定义虚拟时钟来对非时控的元件的输入和输出施加时序约束。

图7是特别适合应用于多芯片模块(如具有借助内插件上的芯片间连接耦合至接口模块管芯的多个serdes管芯的2.5d收发机)的说明性电路设计验证方法的流程图。如当芯片间连接在管芯之间形成宽并行总线时可以预期的,在serdes管芯数量超过100、200或更多的情况下,如果每个管芯上的引脚数量超过100或更多,则静态时序分析可能是唯一可行的验证方法。所述方法在框702中从sta工具检索多芯片模块的电路设计文件开始。这种文件可以采用hdl(硬件描述语言)文件的形式,所述hdl文件可以进一步指代针对ic管芯的部件的标准单元库。

在框704中,sta工具获取电路设计中的每个部件(包括单独管芯的io单元以及形成管芯之间的连接的内插件迹线)的时序模型。在许多情况下,时序库可用作可从选择用于制造管芯的铸造厂处获得的标准单元库一部分。当不是这种情况时,时序模型可以借助仿真确定、根据关于更低级部件的时序信息构造或者基于设计规格而被限定。对互连而言,rc模型可以用于估计传播时序特性。

在框706中,sta工具将电路设计分解成建立各种电路部件的输入与输出之间的时序关系的时序路径。尽管可用sta工具的操作可以不同,但是时序路径可以基于分析条件落入不同类别中,如:端口到寄存器数据路径、寄存器到寄存器数据路径、寄存器到端口数据路径、异步数据路径以及时钟树路径。在框708中,sta工具计算时钟树路径的每个分段的传播延迟,并且对其进行累积以便确定每个部件处的时钟跃变到达时间,根据所述时钟跃变到达时间可以确定最早和最晚数据要求时间。类似地,可以针对异步数据路径确定传播延迟和到达时间。

在框710中,sta工具确定剩余数据路径的每个分段的传播延迟,并对其进行累积以便确定数据到达时间(包括对用于保持分析的随后到达时间的启动)。在框712中,sta工具将到达时间与最早和最晚数据要求时间进行比较,以便验证设置和保持要求被满足。比较可以采用时序弛豫计算的形式。负的时序弛豫指示时序违例。在框714中,向用户报告任何这种时序违例,包括在时序违例发生的情况下对端口或部件的标识以及相关联的情况(例如,温度、电源电压)。由于传播时间受变量(如温度和电源电压)的影响,因此计算和比较在这种条件范围内被重复以便提供完全的验证。

一旦将所述违例报告给用户,用户就可以调整电路设计来解决所述违例。可以几乎总是通过引入附加寄存器或触发器来修改相对于时钟跃变的数据到达时间而实现解决,但是其他可能适合的调整包括用于延迟数据到达时间或时钟跃变到达时间的缓冲器。

sta工具可以被实施为在通用计算机系统或网络上运行的可商购的软件包。可以在非易失性大型存储系统(如磁盘驱动器、光盘驱动器、闪存等等)上提供长期信息存储(包括用于电路设计的应用软件、标准单元库、时序模型库以及hdl文件的存储)。用于从长期存储的文件中检索并缓存数据和软件指令的快速信息存储可以提供在易失性存储器系统(如静态或动态随机存取存储器(sram或dram)等等)上。一个或多个存储器核可以访问本地存储器和信息存储设备以便访问并执行使它们执行本文中所描述的方法的软件包。输入/输出外围设备(如键盘、触摸屏、定位设备、显示器、扬声器、打印机、网络接口卡等等)使用户能够接收来自系统的信息,并且进一步使用户能够配置并启动对软件的操作以便实施期望的操作。关于获取并使用软件的进一步信息(包括对基本原理的教育)可从synopsys和cadence在线以及在公开文献中获得。

至少一些sta工具提供附加验证操作,包括rcc提取(电阻、电容以及耦合模型值)、信号完整性(串扰能量)分析以及静态和动态电源(ir降)分析。使用所公开的io单元,这些附加验证操作还可以应用于2.5d器件。

对本领域技术人员来说,一旦完全了解以上公开内容,则众多其替代形式、等效物和修改方案将变得显而易见。旨在将权利要求书解释为涵盖包含在所附权利要求书的范围内的所有这些替代形式、等效物和修改方案。

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