JP2024509028A - チップスタック内でのクロックツリールーティング - Google Patents
チップスタック内でのクロックツリールーティング Download PDFInfo
- Publication number
- JP2024509028A JP2024509028A JP2023536994A JP2023536994A JP2024509028A JP 2024509028 A JP2024509028 A JP 2024509028A JP 2023536994 A JP2023536994 A JP 2023536994A JP 2023536994 A JP2023536994 A JP 2023536994A JP 2024509028 A JP2024509028 A JP 2024509028A
- Authority
- JP
- Japan
- Prior art keywords
- chip
- routing
- clock
- intra
- chips
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 229910052751 metal Inorganic materials 0.000 claims description 57
- 239000002184 metal Substances 0.000 claims description 57
- 230000005540 biological transmission Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 21
- 230000001902 propagating effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 abstract description 15
- 239000004744 fabric Substances 0.000 description 148
- 239000000872 buffer Substances 0.000 description 125
- 238000009826 distribution Methods 0.000 description 54
- 235000012431 wafers Nutrition 0.000 description 54
- 230000005571 horizontal transmission Effects 0.000 description 50
- 238000012545 processing Methods 0.000 description 43
- 239000000758 substrate Substances 0.000 description 32
- 239000004065 semiconductor Substances 0.000 description 30
- 230000015654 memory Effects 0.000 description 29
- 238000001465 metallisation Methods 0.000 description 25
- 230000005570 vertical transmission Effects 0.000 description 20
- 230000002457 bidirectional effect Effects 0.000 description 19
- 230000007547 defect Effects 0.000 description 10
- 230000000644 propagated effect Effects 0.000 description 8
- 230000002950 deficient Effects 0.000 description 6
- 241000724291 Tobacco streak virus Species 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000002161 passivation Methods 0.000 description 3
- 230000000149 penetrating effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004381 surface treatment Methods 0.000 description 2
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 239000008393 encapsulating agent Substances 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 229910000679 solder Inorganic materials 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 208000000143 urethritis Diseases 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L24/00—Arrangements for connecting or disconnecting semiconductor or solid-state bodies; Methods or apparatus related thereto
- H01L24/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L24/02—Bonding areas ; Manufacturing methods related thereto
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L25/00—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
- H01L25/03—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
- H01L25/04—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
- H01L25/065—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L25/0657—Stacked arrangements of devices
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L25/00—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
- H01L25/50—Multistep manufacturing processes of assemblies consisting of devices, each device being of a type provided for in group H01L27/00 or H01L29/00
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L2224/02—Bonding areas; Manufacturing methods related thereto
- H01L2224/04—Structure, shape, material or disposition of the bonding areas prior to the connecting process
- H01L2224/0401—Bonding areas specifically adapted for bump connectors, e.g. under bump metallisation [UBM]
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L2224/02—Bonding areas; Manufacturing methods related thereto
- H01L2224/04—Structure, shape, material or disposition of the bonding areas prior to the connecting process
- H01L2224/05—Structure, shape, material or disposition of the bonding areas prior to the connecting process of an individual bonding area
- H01L2224/0554—External layer
- H01L2224/05599—Material
- H01L2224/056—Material with a principal constituent of the material being a metal or a metalloid, e.g. boron [B], silicon [Si], germanium [Ge], arsenic [As], antimony [Sb], tellurium [Te] and polonium [Po], and alloys thereof
- H01L2224/05617—Material with a principal constituent of the material being a metal or a metalloid, e.g. boron [B], silicon [Si], germanium [Ge], arsenic [As], antimony [Sb], tellurium [Te] and polonium [Po], and alloys thereof the principal constituent melting at a temperature of greater than or equal to 400°C and less than 950°C
- H01L2224/05624—Aluminium [Al] as principal constituent
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L2224/02—Bonding areas; Manufacturing methods related thereto
- H01L2224/07—Structure, shape, material or disposition of the bonding areas after the connecting process
- H01L2224/08—Structure, shape, material or disposition of the bonding areas after the connecting process of an individual bonding area
- H01L2224/081—Disposition
- H01L2224/0812—Disposition the bonding area connecting directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding
- H01L2224/08135—Disposition the bonding area connecting directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding the bonding area connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
- H01L2224/08145—Disposition the bonding area connecting directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding the bonding area connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/73—Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
- H01L2224/732—Location after the connecting process
- H01L2224/73251—Location after the connecting process on different surfaces
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/80—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
- H01L2224/80001—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected by connecting a bonding area directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/80—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
- H01L2224/80001—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected by connecting a bonding area directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding
- H01L2224/808—Bonding techniques
- H01L2224/80894—Direct bonding, i.e. joining surfaces by means of intermolecular attracting interactions at their interfaces, e.g. covalent bonds, van der Waals forces
- H01L2224/80895—Direct bonding, i.e. joining surfaces by means of intermolecular attracting interactions at their interfaces, e.g. covalent bonds, van der Waals forces between electrically conductive surfaces, e.g. copper-copper direct bonding, surface activated bonding
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/80—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
- H01L2224/80001—Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected by connecting a bonding area directly to another bonding area, i.e. connectorless bonding, e.g. bumpless bonding
- H01L2224/808—Bonding techniques
- H01L2224/80894—Direct bonding, i.e. joining surfaces by means of intermolecular attracting interactions at their interfaces, e.g. covalent bonds, van der Waals forces
- H01L2224/80896—Direct bonding, i.e. joining surfaces by means of intermolecular attracting interactions at their interfaces, e.g. covalent bonds, van der Waals forces between electrically insulating surfaces, e.g. oxide or nitride layers
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/93—Batch processes
- H01L2224/94—Batch processes at wafer-level, i.e. with connecting carried out on a wafer comprising a plurality of undiced individual devices
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2225/00—Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
- H01L2225/03—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
- H01L2225/04—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
- H01L2225/065—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L2225/06503—Stacked arrangements of devices
- H01L2225/06517—Bump or bump-like direct electrical connections from device to substrate
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2225/00—Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
- H01L2225/03—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
- H01L2225/04—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
- H01L2225/065—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L2225/06503—Stacked arrangements of devices
- H01L2225/06524—Electrical connections formed on device or on substrate, e.g. a deposited or grown layer
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2225/00—Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
- H01L2225/03—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
- H01L2225/04—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
- H01L2225/065—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L2225/06503—Stacked arrangements of devices
- H01L2225/06541—Conductive via connections through the device, e.g. vertical interconnects, through silicon via [TSV]
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2225/00—Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
- H01L2225/03—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
- H01L2225/04—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
- H01L2225/065—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L2225/06503—Stacked arrangements of devices
- H01L2225/06555—Geometry of the stack, e.g. form of the devices, geometry to facilitate stacking
- H01L2225/06565—Geometry of the stack, e.g. form of the devices, geometry to facilitate stacking the devices having the same size and there being no auxiliary carrier between the devices
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
- Manipulation Of Pulses (AREA)
Abstract
本明細書に記載の例は、概して、チップスタック内でのクロックツリールーティングに関する。一例では、マルチチップデバイスはチップスタックを含む。チップスタックは、チップ(102、104、106、108)を含む。チップスタックは、クロックツリー(902、904)を含む。クロックツリーのチップ内ルーティングは、チップスタックの1つの論理チップ内に含まれる。チップスタックは、それぞれのチップ内に配設されたリーフノードを含む。リーフノードの各リーフノードは、それぞれのリーフレベル接続ブリッジ(922、924)を介してクロックツリーに電気的に接続されている。それぞれのリーフレベル接続ブリッジは、複数のチップを通ってチップ外方向に延在する。【選択図】図9
Description
本開示の例は、概して、チップスタック内でのクロックツリールーティングに関する。
複数の集積回路チップを含む、モジュール及び/又はパッケージなどの装置が開発されている。かかる装置の形態は様々である。かかる装置を形成することによって、電子デバイスは、複数のチップを統合してデバイスを形成することができ、各チップは、標準的な半導体処理を使用して製造され、次いで、より大きい多機能デバイスを形成するように組み立てられ、パッケージングされ得る。異なるチップを有することによって、場合によっては、あるチップの部分が別のチップとは異なるプロセスを必要とする場合など、統合することが困難な半導体加工を分離することができる。
別の態様は、異なる機能を備えるチップ(例えば、いくつかはフィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)チップであり、いくつかはメモリチップである)を有するデバイスを、より小さいデバイスサイズ及びより多くの機能及びより低電力を有する同一の装置に構築する能力である。チップの半導体プロセスに更に注力して、チップ性能の向上、コストの削減、及び製造歩留まりの向上などの分野において、より大きな優位性をデバイスにもたらすことができる。かかる装置によって、他の利点を実現することができる。
本明細書に記載の例は、概して、チップスタック内でのクロックツリールーティングに関する。概して、複数のチップを含むチップスタック内でのクロックツリーのチップ内ルーティングは、チップスタックの1つの論理チップ内に含まれる。いくつかの例によると、1つの論理チップ内に含まれるチップ内ルーティングを有することによって、異なるチップ上のリーフノードで受信されたクロック信号のスキューを低減することができる。これは、ウエハ間変動から生じたスキューが、1つの論理チップ内に含まれるチップ内ルーティングを有することによって回避され得るためである。
本明細書に記載の例は、マルチチップデバイスである。マルチチップデバイスは、チップスタックを含む。チップスタックはチップを含む。チップスタックは、クロックツリーを含む。クロックツリーのチップ内ルーティングは、チップスタックの1つの論理チップ内に含まれる。チップスタックは、それぞれのチップ内に配設されたリーフノードを含む。いくつかのリーフノードの各リーフノードは、それぞれのリーフレベル接続ブリッジを介してクロックツリーに電気的に接続されている。それぞれのリーフレベル接続ブリッジは、複数のチップを通ってチップ外方向に延在する。
本明細書に記載の別の例は、マルチチップデバイスである。マルチチップデバイスは、チップスタックを含む。チップスタックはチップを含む。チップスタックは、プログラマブルクロックルーティングネットワークを含む。プログラマブルリーフレベル接続ブリッジは、チップスタック内に配設され、プログラマブルクロックルーティングネットワークに電気的に接続されている。プログラマブルリーフレベル接続ブリッジは、複数のチップを通ってチップ外方向に延在し、複数のチップの各チップ内のそれぞれのリーフノードに電気的に接続されている。
本明細書に記載の別の例は、マルチチップデバイスを動作させる方法である。クロック信号は、チップスタック内のクロックツリーに沿って伝搬される。チップスタックはチップを含む。クロックツリーのチップ内ルーティングは、チップスタックの1つの論理チップ内に含まれる。チップスタックは、それぞれのチップ内に配設されたリーフノードを含む。いくつかのリーフノードの各リーフノードは、それぞれのリーフレベル接続ブリッジを介してクロックツリーに電気的に接続されている。それぞれのリーフレベル接続ブリッジは、複数のチップを通ってチップ外方向に延在する。
これら及び他の態様は、以下の「発明を実施するための形態」を参照して理解され得る。
上記の特徴が詳細に理解され得るように、上記で簡潔に要約されたより具体的な説明が、例示的な実装形態を参照することによって行われ得、それらの実装形態のうちのいくつかが添付の図面に示される。しかしながら、添付の図面は、典型的な例示の実装形態のみを示しており、したがって、その範囲を限定するものと見なされるべきではないことに留意されたい。
本発明のいくつかの例による、チップスタックを有するマルチチップデバイスの構造である。
いくつかの例による、図1のマルチチップデバイスのチップスタックの集積回路を示す回路図のブロック図である。
いくつかの例による、プログラマブル論理(programmable logic、PL)集積回路(integrated circuit、IC)を備えるファブリックチップを示すブロック図である。
いくつかの例による、プログラマブル論理素子及びプログラマブル相互接続素子を示すブロック図である。
いくつかの例による、PL IC内のチップ内プログラマブルクロックルーティングネットワークのティアの態様を示す。
いくつかの例による、クロック信号をチップ外にルーティングするためのチップ外ルーティングの回路図である。
いくつかの例による、クロック領域内のチップ内プログラマブルクロックルーティングネットワークのティアの態様を示す。
いくつかの例による、チップスタック内のプログラマブルクロックルーティングネットワークに電気的に接続されたリーフレベル接続ブリッジの回路図を示す。
いくつかの例による、チップスタック内のクロックツリーを示す。
いくつかの例による、チップスタック内のチップ外ルーティングブリッジの回路図である。
いくつかの例による、チップスタック内のクロックツリーを示す。
いくつかの例による、図1のマルチチップデバイスを形成する方法のフローチャートである。
いくつかの例による、マルチチップデバイスを動作させる方法のフローチャートである。
理解を容易にするために、可能な場合には、図面に共通する同一の要素を示すために同一の参照番号が使用されている。一例の要素は、他の例に有益に組み込まれ得ることが企図される。
本明細書に記載の例は、概して、チップスタック内でのクロックツリールーティングに関する。概して、複数のチップを含むチップスタック内でのクロックツリーのチップ内ルーティングは、チップスタックの1つの論理チップ内に含まれる。概念上、1つの論理チップは、動作可能に電気的に互いに接続されたときに、エンドユーザの観点から1つの物理チップの動作と区別できない方法で動作することができる、1つ以上の物理チップの部分の集合である。例えば、クロックツリーの分岐点(存在する場合)から、クロックツリーの全分岐が、同一物理チップ内のそれぞれの概ね同一のチップ内位置にあるチップ外ルーティング(存在する場合)に対応する当該物理チップ内のチップ内ルーティングを有し、当該チップ外ルーティングから、全分岐の対応するチップ内ルーティングが、別の同一物理チップ内にあり、そのチップ外ルーティングが、それぞれのチップ内位置で何回も生じることができ、リーフレベルに達するまで、以降の全分岐の対応するチップ内ルーティングが同一物理チップ内である場合、クロックツリーからリーフレベルへのチップ内ルーティングは、1つの論理チップ内に含まれる。クロックツリーがリーフレベルに達すると、リーフノードは、チップスタックのチップを通って延在するチップ外リーフレベル接続ブリッジを介してクロックツリーに電気的に接続される。いくつかの例によると、1つの論理チップ内に含まれるチップ内ルーティングを有することによって、異なるチップ上のリーフノードで受信されたクロック信号のスキューを低減することができる。これは、ウエハ間変動から生じたスキューが、1つの論理チップ内に含まれるチップ内ルーティングを有することによって回避され得るためである。
いくつかの例は、ハードワイヤード及び/又は非プログラマブルクロックツリーで実装され得、例えば、特定用途向け集積回路(application specific integrated circuit、ASIC)で実装され得る。以下に記載の例などの例は、プログラマブルクロックルーティングネットワークを使用して実装され得る。当業者は、以下に記載の態様が様々な例にどのように適用可能であるかを容易に理解するであろう。
様々な特徴が、図面を参照して以下に記載される。図面は縮尺どおりに描かれている場合もあるし、描かれていない場合もあり、同様の構造又は機能の要素は図面全体を通して同様の参照番号によって表されていることに留意されたい。図面は、特徴の説明を容易にすることのみを意図していることに留意されたい。それらは、「特許請求の範囲」に記載された発明の網羅的な説明として又は「特許請求の範囲」に記載された発明の範囲を限定するものとして意図されていない。加えて、図示された例は、示された全ての態様又は利点を有する必要はない。特定の例に関連して記載される態様又は利点は、必ずしもその例に限定されず、そのように図示されていなくても、又はそのように明示的に記載されていなくても、任意の他の例において実施され得る。更に、本明細書に記載される方法は、特定の動作順序で記載される場合があるが、他の例による他の方法は、より多くの動作又はより少ない動作によって様々な他の順序(例えば、様々な動作の異なる直列又は並列実行を含む)で実施され得る。構成要素の「第1の」、「第2の」などとして説明される様々な構成要素は、「第1の」、「第2の」などから生じる任意の構造又は位置を暗示する(connote)又は暗示する(imply)ものではない。「第1の」、「第2の」などは、本明細書において、異なる構成要素を容易に指すために使用される。
以下の説明では、様々な信号又はデータが、様々な回路の動作の文脈で記載される場合がある。記載の信号又はデータは、信号又はデータが適用される、又は伝搬される対応するノードを示し、更に、通信可能に連結される、及び/又は電気的に接続されるノードを示す。例えば、第1の回路から出力され、第2の回路に入力される信号又はデータの説明は、(第1の回路から信号又はデータが出力される)第1の回路の出力ノードが、(第2の回路に信号又はデータが入力される)第2の回路の入力ノードに通信可能に連結されている、及び/又は電気的に接続されていることを示す。そのようなノードの明示的な説明は、以下の説明において省略される場合があるが、当業者であれば、ノードの存在を容易に理解するであろう。
図1は、いくつかの例による、マルチチップデバイスの構造である。図1のマルチチップデバイスは、ベースチップ102と、ファブリックチップ104、106、108と、を含むチップスタックを含む。ベースチップ102及びファブリックチップ104~108は、本明細書で例として記載される。異なるチップが、様々な集積回路(IC)又は構成要素(例えば、ファブリック、ベース、プログラマブル論理など)であるか、又はそれらを含むものとして本明細書に記載されているが、本明細書に記載の態様は、概して、任意のタイプのIC又は構成要素を有するマルチチップデバイスのチップに適用可能であり得る。
図1のマルチチップデバイスでは、ファブリックチップ104~108は、アクティブ面、すなわち表面がベースチップ102に向かって下向きに配置され、ベースチップ102は、アクティブ面、すなわち表面がファブリックチップ104~108に向かって上向きに配置される。他のマルチチップデバイスでは、中間ファブリックチップは、アクティブ面、すなわち表面がベースチップ102から離れるように上向きに配置され、遠位ファブリックチップは、アクティブ面、すなわち表面がベースチップ102に向かって下向きに配置され、ベースチップ102は、アクティブ面、すなわち表面がファブリックチップ104~108に向かって上向きに配置される。様々な他のマルチチップデバイスは、異なる構造、異なる数のチップ、追加の構成要素などを有し得る。
概して、チップ102~108は積層され、マルチチップデバイス内でチップスタックを形成する。チップ102~108は積層されて、いくつかの例では、Active die-on-Active die(AoA)デバイスを形成する。チップ102~108のそれぞれは、アクティブICを含み得る。いくつかの例では、チップスタックには、より多くの又はより少ないチップが含まれ得る。例えば、マルチチップデバイスは、ベースチップ及びファブリックチップなど2つのチップ、又は2つのファブリックチップを有し得る。他の例では、マルチチップデバイスは、3つのチップ、4つのチップ、5つのチップなどを有し得る。
チップ102~108のそれぞれは、それぞれの半導体基板112、114、116、118と、それぞれの半導体基板112~118の表面にある、それぞれの表面誘電体層122、124、126、128と、を含む。表面誘電体層122~128は、IC内の様々な構成要素を電気的に接続することができる、その内部に形成されたメタライゼーション(例えば、金属線、及び/又はビア)(図示されているが、特に付番けされていない)を含む。チップ102~106のそれぞれは、それぞれの半導体基板112~116の裏面にある、それぞれの裏面誘電体層132、134、136を含む。裏面誘電体層132~136は、IC内の様々な構成要素を電気的に接続することができる、その内部に形成されたメタライゼーション(例えば、金属線、及び/又はビア)(図示されているが、特に付番けされていない)を含む。ファブリックチップ104、106、108の表面誘電体層124、126、128内のメタライゼーションは、それぞれのアクティブ回路が形成され得るファブリックチップ104、106、108のそれぞれの回路領域に電気的に接続する。
チップ102~108の各半導体基板112~118は、例えば、それぞれの半導体基板112~118の表面上及び/又は表面内に形成されたトランジスタ142、144、146、148を含む。トランジスタ142~148及び任意の他の構成要素は、表面誘電体層122~128内のメタライゼーションに接続され得る。それぞれのチップ102~106の各半導体基板112~116は、各半導体基板を貫通する、裏面基板貫通ビア(TSV)162、164、166を有し、これによって、それぞれのチップ102~106の表面誘電体層122~126内のメタライゼーションを裏面誘電体層132~136内のメタライゼーションに電気的に接続することができる。
表面ボンドパッド152、154、156、158(例えば、金属(例えば、Cu)ボンドパッド)は、それぞれの半導体基板112~118から遠位の外面において、チップ102~108のそれぞれの表面誘電体層122~128内に形成される。表面ボンドパッド152~158は、それぞれのチップ間インタフェースを形成する配置であり得る。表面ボンドパッド152~158は、それぞれの表面誘電体層122~128内のメタライゼーションに接続されている。裏面ボンドパッド174、176(例えば、金属(例えば、Cu)ボンドパッド)は、それぞれの半導体基板114、116から遠位の外面において、ファブリックチップ104、106のそれぞれの裏面誘電体層134、136内に形成される。裏面ボンドパッド174、176は、それぞれのチップ間インタフェースを形成する配置であり得る。裏面ボンドパッド174、176は、それぞれの裏面誘電体層134、136内のメタライゼーションに接続されている。
外部コネクタ裏面パッド172(例えば、金属(例えば、アルミニウム)パッド)は、ベースチップ102の半導体基板112から遠位の外面において、ベースチップ102の裏面誘電体層132内に形成される。外部コネクタ裏面パッド172は、ベースチップ102の裏面誘電体層132内のメタライゼーションに接続されている。パッシベーション層180は、ベースチップ102の半導体基板112から遠位の外面に形成され、外面を貫通するそれぞれの開口部が外部コネクタ裏面パッド172を露出させる。外部コネクタ182(例えば、Controlled Collapse Chip Connection(C4)、ミニバンプなど)は、パッシベーション層180内の開口部を貫通して、それぞれの外部コネクタ裏面パッド172上に形成される。
外部コネクタ182は、パッケージ基板に取り付けることができる。パッケージ基板は更に、例えば、プリント回路基板(printed circuit board、PCB)に取り付けられて、パッケージ基板(したがって、マルチチップデバイス)をPCBに取り付け得る。様々な他の構成要素がマルチチップデバイスに含まれ得る。例えば、インターポーザ、封入材(成形コンパウンド(molding compound、MUF)など)などがマルチチップデバイスに含まれ得る。当業者は、マルチチップデバイスに対して行うことができる様々な修正を容易に想定するであろう。
チップ102~108は、(例えば、金属間接合及び酸化物間接合を使用したハイブリッド接合によって)互いに接合されて、スタックを形成する。ベースチップ102は、ベースチップ102の表面誘電体層122の表面ボンドパッド152及び外面が、ファブリックチップ104の表面誘電体層124の表面ボンドパッド154及び外面に接合されるように、表面同士を合わせてファブリックチップ104に接合される。ファブリックチップ104は、ファブリックチップ104の裏面誘電体層134の裏面ボンドパッド174及び外面が、ファブリックチップ106の表面誘電体層126の表面ボンドパッド156及び外面に接合されるように、裏面と表面とを合わせてファブリックチップ106に接合される。ファブリックチップ106は、ファブリックチップ106の裏面誘電体層136の裏面ボンドパッド176及び外面が、ファブリックチップ108の表面誘電体層128の表面ボンドパッド158及び外面に接合されるように、裏面と表面とを合わせてファブリックチップ108に接合される。
他の接合構成を実装することができる。例えば、ベースチップ102は、ベースチップ102の表面誘電体層122の表面ボンドパッド152及び外面が、ファブリックチップ104の裏面誘電体層134の裏面ボンドパッド174及び外面に接合されるように、表面と裏面とを合わせてファブリックチップ104に接合され得る。ファブリックチップ104は、ファブリックチップ104の表面誘電体層124の表面ボンドパッド154及び外面が、ファブリックチップ106の裏面誘電体層136の裏面ボンドパッド176及び外面に接合されるように、表面と裏面とを合わせてファブリックチップ106に接合され得る。ファブリックチップ106は、ファブリックチップ106の表面誘電体層126の表面ボンドパッド156及び外面が、ファブリックチップ108の表面誘電体層128の表面ボンドパッド158及び外面に接合されるように、表面同士を合わせてファブリックチップ108に接合され得る。
他の例では、チップ102~108は、外部コネクタ(ミニバンプ、はんだなど)を使用して互いに取り付けられ得る。いくつかの例では、チップ102~108のいくつかは、外部コネクタによって互いに取り付けられ得、他のチップは、外部コネクタを使用せずに互いに接合され得る。任意の接合の順列及び外部コネクタの使用を実施することができる。
いくつかの例では、ファブリックチップ104~108のそれぞれは、処理用ICを含む。処理用ICは、概して、任意のデータ及び/又は信号を処理し、当該処理から生じるデータ及び/又は信号を出力するように構成されているか、又はそのように構成可能である、任意の回路を含み得、単なるメモリ及びメモリを補助する任意の回路(例えば、アドレスデコーダメモリコントローラなど)に留まらない。ファブリックチップ104~108の処理用ICは、概ね同一のICである。ファブリックチップ104~108のハードウェアトポロジ、アーキテクチャ、及びレイアウトは、遠位ファブリックチップ108が、裏面TSV、裏面誘電体層、及び/又は裏面誘電体層内のメタライゼーションなど裏面処理によって形成される構成要素を省略し得ることを除いて、いくつかの例において同一であり得る。いくつかの例では、ファブリックチップ104~108の処理用ICは、ファブリックチップ104~108間で同一のハードウェアトポロジ、アーキテクチャ、及びレイアウトを有する1つ以上のプログラマブル論理領域(例えば、FPGAのファブリック)を含む。ファブリックチップ104~108内にZインタフェースを有することにより、同一の表面処理を受けるチップをマルチチップデバイスに統合することが可能になる。
他の例では、チップ102~108はそれぞれ、異なるICであり得るか、若しくは異なるICを含み得る、又は同一のIC及び/若しくは異なるICを含む任意の順列を有し得る。例えば、ファブリックチップ104~108のいずれかは、処理用IC若しくはメモリであり得るか、又は処理用IC若しくはメモリを含み得る。いくつかの例では、チップ108はASICである。任意のチップ102~108を総称してアクティブチップと呼ぶことができる。
図2は、いくつかの例による、図1のマルチチップデバイスのチップスタックのICを示す回路図のブロック図である。図示の例では、マルチチップデバイスはマルチチッププログラマブルデバイスである。回路図は、例えば、ファブリックチップ104、106の向きにかかわらず、図1のマルチチップデバイスで実装され得る。
図示の例では、ベースチップ102は、ベースチップ102上にベースICを含み、これは、SoCであり得る。ファブリックチップ104、106、108は、それぞれのプログラマブル論理(programmable logic、PL)IC224、226、228を含み、これらは、いくつかの例では、同一のICであり、同一のハードウェアレイアウト及びトポロジを有する。これらのICは、例示的な実装として提供される。他のIC(例えば、他のハードIPブロックを有する)をチップ内に実装することができる。ファブリックチップ104、106、108は、それぞれのZインタフェース234、236、238を更に含む。
ベースチップ102上のベースICは、処理システム202と、入出力回路(IO)204と、IPコア回路206と、ネットワークオンチップ(Network-on-Chip、NoC)210と、Zインタフェース232と、を含む。処理システム202は、様々な異なるプロセッサタイプ及びプロセッサコア数のいずれかであり得るか、又はそれらを含み得る。例えば、処理システム202は、個別のプロセッサ、例えば、プログラム命令コードを実行することができるシングルコアとして実装され得る。別の例では、処理システムPS202は、マルチコアプロセッサとして実装され得る。処理システム202は、様々な異なるタイプのアーキテクチャのいずれかを使用して実装され得る。処理システム202の実装に使用され得る例示的なアーキテクチャとしては、ARMプロセッサアーキテクチャ、x86プロセッサアーキテクチャ、グラフィックス処理ユニット(graphics processing unit、GPU)アーキテクチャ、モバイルプロセッサアーキテクチャ、縮小命令セットコンピュータ(reduced instruction set computer、RISC)アーキテクチャ(例えば、RISC-V)、又はコンピュータ可読プログラム命令コードを実行することができる他の好適なアーキテクチャが挙げられ得る。
入力/出力回路204としては、eXtreme Performance Input/Output(XPIO)、マルチギガビットトランシーバ(multi-gigabit transceiver、MGT)、高帯域幅メモリ(high bandwidth memory、HBM)インタフェース、アナログデジタル変換器(Analog-to-Digital Converter、ADC)、デジタルアナログ変換器(Digital-to-Analog Converter、DAC)、又は任意の他の入力/出力ブロックが挙げられ得る。入力/出力回路204は、マルチチップデバイスの外部の回路に対して信号を受信する、及び/又は送信するように構成され得る。IPコア回路206としては、メモリコントローラ(ダブルデータレート(double data rate、DDR)メモリコントローラ、高帯域幅メモリ(HBM)メモリコントローラなど)、Peripheral Component Interconnect Express、PCIe)インタフェース、Cache Coherent Interconnect for Accelerators(CCIX)インタフェース、イーサネットコア(メディアアドレスコントローラ(media address controller、MAC)など)、前方誤り訂正(forward error correction、FEC)ブロック、及び/又は任意の他の硬化回路が挙げられ得る。入力/出力回路204及び/又はIPコア回路206は、いずれもプログラム可能であり得る。
NoC210は、プログラマブルネットワーク212及びNoC周辺相互接続(NoC peripheral interconnect、NPI)214を含む。プログラマブルネットワーク212は、サブシステムと、ベースチップ102上のベースICの任意の他の回路とを互いに通信可能に連結する。プログラマブルネットワーク212は、NoCパケットスイッチと、NoCパケットスイッチを接続する相互接続線と、を含む。各NoCパケットスイッチは、プログラマブルネットワーク212内でNoCパケットのスイッチングを実行する。プログラマブルネットワーク212は、プログラマブルネットワーク212のエッジにインタフェース回路を有する。インタフェース回路は、NoCマスタユニット(NoC master unit、NMU)と、NoCスレーブユニット(NoC slave unit、NSU)と、を含む。各NMUは、マスタ回路をプログラマブルネットワーク212に通信可能に連結する入口回路であり、各NSUは、プログラマブルネットワーク212をスレーブエンドポイント回路に通信可能に連結する出口回路である。NMUは、プログラム可能ネットワーク212のNoCパケットスイッチ及び相互接続線を介してNSUに通信可能に連結されている。NoCパケットスイッチは、プログラマブルネットワーク212内で複数の物理チャネルを実装するために、相互接続線を介して互いに接続され、NMU及びNSUに接続されている。NoCパケットスイッチ、NMU、及びNSUは、それぞれのNoCパケットスイッチ、NMU、又はNSUの動作を決定するレジスタブロックを含む。
NPI214は、NMU、NSU、及びNoCパケットスイッチの機能を決定するレジスタブロックに書き込むための回路を含む。NPI214は、レジスタブロックをプログラムして機能を設定するために、レジスタブロックに連結された周辺相互接続を含む。プログラマブルネットワーク212のNMU、NSU、及びNoCパケットスイッチ内のレジスタブロックは、割込み、サービス品質(quality of service、QoS)、エラー処理及び報告、トランザクション制御、電力管理、並びにアドレスマッピング制御をサポートする。NPI214は、処理システム202上に存在するNPIルートノード(例えば、処理システム202のプラットフォーム管理コントローラ(platform management controller、PMC))と、NPIルートノードに通信可能に連結された、相互接続NPIスイッチと、相互接続NPIスイッチ及び対応するレジスタブロックに接続されたプロトコルブロックと、を含み得る。NPI214は、ベースチップ102上のベースICの任意のプログラム可能回路をプログラムするために使用され得る。例えば、NPI214は、プログラム可能な任意の入力/出力回路204及び/又はIPコア回路206をプログラムするために使用され得る。
Zインタフェース232は、信号を駆動するバッファなど能動回路を含み得る。Zインタフェース232は、メタライゼーション層内の金属線/パッド及びビアなどを介して、処理システム202、入力/出力回路204、IPコア回路206、及びNoC 210のプログラマブルネットワーク212のためのインタフェースを、ベースチップ102の上にあるチップ及び/又はベースチップ102の下にある基板(例えば、パッケージ基板)に提供する。加えて、Zインタフェース232は、ベースチップ102を介してパススルーインタフェースを提供し得る。
ベースチップ102上の様々なサブシステム及びベースICの回路は、通信可能に連結され得る。図示のように、処理システム202、入力/出力回路204、及びIPコア回路206は、NoC210(例えば、プログラマブルネットワーク212)に通信可能に連結されており、したがって、互いに通信可能に連結されている。処理システム202は更に、ベースチップ102上の様々なプログラマブル構成要素に構成データを通信するためにNPI214に通信可能に連結されている。処理システム202は更に、ベースチップ102の上にあるチップに構成データを通信するために、NoC210のプログラマブルネットワーク212に通信可能に連結されている。NoC210のプログラマブルネットワーク212は、トランザクションデータ及び構成データなどデータがZインタフェース232を介して別のチップに通信され得るように、Zインタフェース232に通信可能に連結されている。処理システム202、入力/出力回路204、及びIPコア回路206のそれぞれは、例えば、上にあるファブリックチップ104、106内のPLIC224、226、228内のプログラマブルロジックと通信するために、Zインタフェース232に通信可能に連結されている。様々なサブシステムと回路との間に直接接続など他の通信機構が実装され得る。
ファブリックチップ104~108のそれぞれの上にあるPL IC224~228は、1つ以上のプログラマブルロジック領域を含む。プログラマブル論理領域は、特定の機能を実行するようにプログラムされ得る論理回路機構である。プログラマブル論理領域は、任意の数又は配置のプログラマブルタイルを含み得る。一例として、プログラマブル論理領域は、FPGAのファブリックとして実装され得る。例えば、プログラマブル論理領域は、任意の数の構成可能論理ブロック(configurable logic block、CLB)、ルックアップテーブル(look-up table、LUT)、デジタル信号処理ブロック(digital signal processing block、DSP)、ランダムアクセスメモリブロック(random access memory block、BRAM)などを含み得る。プログラマブルタイル(例えば、CLB、LUT、DSP、BRAMなど)のそれぞれは、1つ以上のプログラマブル相互接続素子を含み得る。様々なそれぞれのタイプのプログラマブルタイルは、行及び/又は列に配置することができ、関連するプログラマブル相互接続素子は、例えば、同一の列及び行内の隣接するプログラマブル論理素子に電気的に接続することができる。プログラマブル相互接続素子は、プログラマブルロジック領域の相互接続ネットワークを形成することができる。プログラマブルロジック領域のプログラマブルタイルのいずれかをプログラムすること、又は構成することにより、任意の論理及び接続がプログラマブルロジック領域によって実装され得る。
各ファブリックチップ104~108上のZインタフェース234~238は、信号を駆動するためのバッファ及び/又は選択回路など能動回路を含み得る。Zインタフェース234~238は、メタライゼーション層内の金属線/パッド及びビアを介するなどのインタフェースを、それぞれのPL IC224~228に提供して、それぞれのファブリックチップ104~108の上及び/又は下にあるチップと通信する。加えて、Zインタフェース234~238は、それぞれのベースチップ104~108を介してパススルーインタフェースを提供し得る。PL IC224~228の構成データは、例えば、Zインタフェース234~238を介して受動的接続によって伝送され得る。
各PL IC224~228はまた、構成フレーム(configuration Frame、CFRAME)ドライバを含む構成相互接続を含み得る。CFRAMEドライバは、プログラマブル論理を構成するために構成データ(ビットストリームなど)を通信する制御論理であり得るか、又はそれを含み得る。各プログラマブル論理領域は、Zインタフェース232、それぞれのファブリックチップ104~108の対応するZインタフェース234~238、及び任意の介在するZインタフェース234、236を介して受信された構成データによって構成可能であるか、又はプログラム可能である。例えば、処理システム202(例えば、処理システム202のPMC)は、NoC210のプログラマブルネットワーク212及びZインタフェース232を介して、それぞれのPL IC224~228に構成データを送信することができる。いくつかの例では、構成相互接続(例えば、CFRAMEドライバなど)は、構成データを適切なプログラマブルタイルに向けることができ、かかるプログラマブルタイルの構成を制御することができる。
クロックツリールーティングの例は、チップスタックのプログラマブルクロックルーティングネットワークの文脈で以下に記載する。前述したように、本明細書に記載のクロックツリールーティングの態様は、ASICを有するチップを含む、及び/若しくはそれらからなる、並びに/又はハードワイヤード及び/又は非プログラマブルであるクロックツリーを有するチップスタックに適用可能である。以下の例では、プログラマブルクロックルーティングネットワークは、チップ内プログラマブルクロックルーティングネットワークの複数のティアを含み、ファブリックチップ104~108のそれぞれは、チップ内プログラマブルクロックルーティングネットワークのティアを含む。プログラマブルクロックルーティングネットワーク内のティアを電気的に接続するために、ティア間にチップ外接続がある。本明細書で便宜上使用されるように、「チップ内」は、概して、図1を参照してX方向及び/又はY方向に沿った方向性を指す。加えて、本明細書で便宜上使用されるように、「チップ外」は、概して、図1を参照してZ方向に沿った方向性を指す。
図3は、いくつかの例による、PL IC302を含むファブリックチップ300を示すブロック図である。ファブリックチップ300は、ファブリックチップ104~108のそれぞれを表し得る。PL IC302は、各PL IC224~228を表し得る。PL IC302は、チップ外クロックルーティング領域304と、クロック領域310-11~310-44(総称して、又は個々に、クロック領域310)と、を含む。チップ外クロックルーティング領域304は、Zインタフェース234~238のそれぞれの一部を表し得る。
図3の例では、PL IC302は、クロック領域310の2次元アレイの形状をなす。各クロック領域310は、指定機能を実行するようにプログラム可能である論理回路の領域(例えば、プログラマブル論理領域)に対応し得、当該論理回路にクロック信号を提供するようにプログラムされ得る。図3は、簡略化のために、4つの整列したチップ内列及び4つの整列したチップ内行に配置されたクロック領域310を示すが、他の数のチップ内列及び/又はチップ内行が実装されてもよい。図3のクロック領域310の参照番号は、参照番号「310-[チップ内列][チップ内行]」によって各クロック領域310の位置を示す。
CLB312、BRAM314、及びDSP316などプログラマブル論理素子の例示的な配置を、クロック領域310の一部に示す。CLB312は、LUTを更に含み得る。図示のアーキテクチャでは、PL IC302は、プログラマブル論理素子のチップ内列を含み、各チップ内列は、単一タイプのプログラマブル論理素子(例えば、CLB312のチップ内列、BRAM314のチップ内列など)を含む。図4に示すように、プログラマブル論理素子は、1つ以上の関連するプログラマブル相互接続素子320を有し得る。例えば、いくつかのアーキテクチャでは、PL IC302は、プログラマブル論理素子の各チップ内列に関連し、隣接するプログラマブル相互接続素子320のチップ内列を含む。かかる例では、各プログラマブル相互接続素子320は、相互接続324によって隣接するチップ内列内の関連するプログラマブル論理素子に電気的に接続されており、相互接続326によって同一チップ内列内の隣接するプログラマブル相互接続素子に電気的に接続され、相互接続328によって隣接するチップ内列に電気的に接続されている。相互接続されたプログラマブル相互接続素子320は、PL IC302内でデータルーティングネットワークを形成し得る。
チップ外クロック配線領域304は、クロック領域310の一対のチップ内列の間をチップ内列方向に延在してそれぞれ配設される。あるチップ外クロックルーティング領域304は、クロック領域310-1xのチップ内列とクロック領域310-2xのチップ内列との間に配設される。別のチップ外クロックルーティング領域304は、クロック領域310-3xのチップ内列とクロック領域310-4xのチップ内列との間に配設される。後に詳述するように、チップ外クロックルーティング領域304のそれぞれは、チップスタックのチップ間でクロック信号をルーティングするように構成されている接続(例えば、金属線、金属ビア、及びTSVを含む金属スタック)を含む。更に、チップ外クロックルーティング領域304のそれぞれは、ファブリックチップ300内でかかる接続からのクロック信号をチップ内方向にルーティングするように構成されている回路を含む。
クロック領域310及びチップ外クロックルーティング領域304の数は、単に例として示されている。本明細書に記載の概念を実装するデバイスは、PL IC内の任意の数のクロック領域(更に、任意の構成で)、及びPL IC内の任意の数のチップ外クロックルーティング領域を実装することができる。
図5は、いくつかの例による、PL IC302内のチップ内プログラマブルクロックルーティングネットワークのティアの態様を示す。ティアは、チップ内水平伝送線路502-1、502-2、502-3、502-4(総称して、又は個々に、チップ内水平伝送線路502)と、チップ内垂直伝送線路504-1、504-2、504-3、504-4(総称して、又は個々に、チップ内垂直伝送線路504)と、を含む。ティアはまた、チップ内水平分配線路(in-chip horizontal distribution track)506-1、506-2、506-3、506-4(総称して、又は個々に、チップ内水平分配線路506)と、チップ内垂直分配線路508-1、508-2、508-3、508-4(総称して、又は個々に、チップ内垂直分配線路508)と、を含む。チップ内伝送線路502、504は、それぞれのファブリックチップ104~108を横切る(例えば、多くのクロック領域310を横切る)長距離用のクロック信号をルーティングするように構成されている。チップ内分配線路506、508は、それぞれのファブリックチップ104~108を横切る(例えば、1つ、又は少数のクロック領域310を横切る)中距離用のクロック信号をルーティングするように構成されている。チップ内水平伝送線路502、チップ内垂直伝送線路504、チップ内水平分配線路506、及びチップ内垂直分配線路508のそれぞれは、16の個別の線路、又は別の数の線路であり得るか、又はそれらを含み得る。
チップ内水平伝送線路502のそれぞれは、クロック領域310のそれぞれのチップ内行の中央でPL IC302を横切ってチップ内を水平に延在する。チップ内水平伝送線路502-1は、クロック領域310-11、310-21、310-31、310-41の中央でPL IC302を横切って延在する。チップ内水平伝送線路502-2は、クロック領域310-12、310-22、310-32、310-42の中央でPL IC302を横切って延在する。チップ内水平伝送線路502-3は、クロック領域310-13、310-23、310-33、310-43の中央でPL IC302を横切って延在する。チップ内水平伝送線路502-4は、クロック領域310-14、310-24、310-34、310-44の中央でPL IC302を横切って延在する。
チップ内垂直伝送線路504のそれぞれは、クロック領域310のそれぞれのチップ内列の中央でPL IC302を横切ってチップ内を垂直に延在する。チップ内垂直伝送線路504-1は、クロック領域310-11、310-12、310-13、310-14の中央でPL IC302を横切って延在する。チップ内垂直伝送線路504-2は、クロック領域310-21、310-22、310-23、310-24の中央でPL IC302を横切って延在する。チップ内垂直伝送線路504-3は、クロック領域310-31、310-32、310-33、310-34の中央でPL IC302を横切って延在する。チップ内垂直伝送線路504-4は、クロック領域310-41、310-42、310-43、310-44の中央でPL IC302を横切って延在する。
チップ内水平分配線路506のそれぞれは、クロック領域310のそれぞれのチップ内行の中央でPL IC302を横切ってチップ内を水平に延在する。チップ内水平分配線路506-1は、クロック領域310-11、310-21、310-31、310-41の中央でPL IC302を横切って延在する。チップ内水平分配線路506-2は、クロック領域310-12、310-22、310-32、310-42の中央でPL IC302を横切って延在する。チップ内水平分配線路506-3は、クロック領域310-13、310-23、310-33、310-43の中央でPL IC302を横切って延在する。チップ内水平分配線路506-4は、クロック領域310-14、310-24、310-34、310-44の中央でPL IC302を横切って延在する。
チップ内垂直分配線路508のそれぞれは、クロック領域310のそれぞれのチップ内列の中央でPL IC302を横切ってチップ内を垂直に延在する。チップ内垂直分配線路508-1は、クロック領域310-11、310-12、310-13、310-14の中央でPL IC302を横切って延在する。チップ内垂直分配線路508-2は、クロック領域310-21、310-22、310-23、310-24の中央でPL IC302を横切って延在する。チップ内垂直分配線路508-3は、クロック領域310-31、310-32、310-33、310-34の中央でPL IC302を横切って延在する。チップ内垂直分配線路508-4は、クロック領域310-41、310-42、310-43、310-44の中央でPL IC302を横切って延在する。
加えて、チップ内水平伝送線路502のそれぞれ及びチップ内水平分配線路506のそれぞれは、チップ外クロックルーティング領域304を横断する。チップ内水平伝送線路502のそれぞれはまた、チップ外ルーティングにプログラム可能に電気的に接続(例えば、垂直接続)されて、ベースチップ102からクロック信号を受信し得る。
図6は、いくつかの例による、クロック信号をチップ外にルーティングするためのチップ外ルーティングの回路図である。図6は、ベースチップ102及びファブリックチップ104~108を示す。ベースチップ102は、クロックソース回路602-1~602-nを含む。ファブリックチップ104~108内のそれぞれのチップ外クロックルーティング領域304の一部も示されている。
金属スタック604-1~604-nは、ファブリックチップ104~108内のPL IC224~228内のそれぞれのチップ外クロックルーティング領域304を通って、チップスタックを横切ってチップ外に延在する。図1に示す向きでは、各金属スタック604は、図6には具体的に示されていないが、表面誘電体層122内の金属線及びビア、表面ボンドパッド152、表面ボンドパッド154、表面誘電体層124内の金属線及びビア、裏面TSV164、裏面誘電体層134内の金属線及びビア、裏面ボンドパッド174、表面ボンドパッド156、表面誘電体層126内の金属線及びビア、裏面TSV166、裏面誘電体層136内の金属線及びビア、裏面ボンドパッド176、表面ボンドパッド158、並びに表面誘電体層128内の金属線及びビアを含む。他の向きは、異なる構成要素及び/又は構成要素の順序を有し得る。構成要素の数は、チップスタック内のチップの数に基づいて更に多様であり得る。所与の金属スタック604内の金属線、ビア、TSV、及びボンドパッドは、チップ外方向に概ね整列している。
各金属スタック604は、対応するクロックソース回路602に電気的に接続されている。対応する金属スタック604及びクロックソース回路602は、チップ外方向に整列していても、整列していなくてもよい。各クロックソース回路602は、例えば、位相ロックループ(phase-locked loop、PLL)回路、ドライバ回路、又は対応する金属スタック604を通してクロック信号を生成する及び/若しくは駆動するための任意の他の回路を含み得る。
各ファブリックチップ104~108は、それぞれのファブリックチップ内に(チップ内水平伝送線路502又はチップ内垂直伝送線路504の)個別のチップ内伝送線路610を含む。それぞれのファブリックチップ104~108内の各個別のチップ内伝送線路610は、それぞれの金属スタック604-1~604-nにプログラム可能に電気的に接続されるように構成される。各個別のチップ内伝送線路610は、第1の個別のチップ内伝送線路セグメント610-L及び第2の個別のチップ内伝送線路セグメント610-Rを含む。ここでは、単に参照を容易にするために、「L」は、例えば、チップ外クロックルーティング領域304の左側のクロック領域310内の左セグメントを指し、「R」は、例えば、チップ外クロックルーティング領域304の右のクロック領域310内の右側セグメントを指す。図6に示す構成要素の参照番号には「-i-j」という表記が付されており、iは、対応するクロックソース回路602-i及び/又は対応するメタルスタック604-iとの関係を示し、jは、対応するファブリックチップ104、106、108を示す。以下の説明は、図6に示す複数の構成要素に対して一般的であり(例えば、添付の表記「-i-j」に言及しない)、当業者は、かかる説明が対応する各構成要素に適用可能であることを容易に理解するであろう。
各個別のチップ内伝送線路610は、双方向ブリッジ612を含む。バッファ614は、金属スタック604と双方向ブリッジ612との間に電気的に接続されている。双方向ブリッジ612は、バッファ622、624、626、628を含む。双方向ブリッジ612は、第1の個別のチップ内伝送線路セグメント610-L及び第2の個別のチップ内伝送線路セグメント610-Rをプログラム可能に電気的に互いに接続する、及び/又は切り離す。バッファ614は、双方向ブリッジ612を金属スタック604にプログラム可能に電気的に接続する。
バッファ614の入力ノードは、金属スタック604に電気的に接続されており、バッファ614の出力ノードは、双方向ブリッジ612のブリッジノードに電気的に接続されている。双方向ブリッジ612のブリッジノードは、バッファ622の出力ノード、バッファ624の入力ノード、バッファ626の入力ノード、及びバッファ628の出力ノードに電気的に接続されている。バッファ622の入力ノード及びバッファ626の出力ノードは、第1の個別のチップ内伝送線路セグメント610-Lに電気的に接続されている。バッファ624の出力ノード及びバッファ628の入力ノードは、第2の個別のチップ内伝送線路セグメント610-Rに電気的に接続されている。
各バッファ614、622、624、626、628は、トライステートバッファであり得るか、又はトライステートバッファを含み得る。バッファ614、622、624、626、628のそれぞれの制御信号は、PL IC302内の構成メモリ(例えば、構成ランダムアクセスメモリ(configuration random access memory、CRAM))に記憶され得、これは、PL IC302のプログラム中にプログラムされ得る。バッファ614、622、624、626、628のうちの様々なバッファをプログラムすることによって、クロック信号は、クロックソースからPL IC302内の様々な負荷及び他のチップ内の様々な負荷にルーティングされ、分配され得る。
いくつかの例として、バッファ614、622、624、626、628のそれぞれは、高インピーダンス出力状態又はパススルー状態にプログラムされ得る。高インピーダンス出力状態では、それぞれのバッファの出力ノードは高インピーダンスであり、これにより、バッファの出力ノードから入力ノードを効果的に切り離す。パススルー状態では、バッファの入力ノードにおいて受信された信号は、バッファの出力ノードに伝搬される。バッファ614は、高インピーダンス出力状態にプログラムされて、金属スタック604を双方向ブリッジ612から切り離し得る。金属スタック604が双方向ブリッジ612から切り離されると、バッファ622、624をパススルー状態にプログラムし、その一方で、バッファ626、628を高インピーダンス出力状態にプログラムすることによって、クロック信号は、第1の個別のチップ内伝送線路セグメント610-Lから第2の個別のチップ内伝送線路セグメント610-Rに伝搬され得、また、バッファ626、628をパススルー状態にプログラムし、その一方で、バッファ622、624を高インピーダンス出力状態にプログラムすることによって、クロック信号は、第2の個別のチップ内伝送線路セグメント610-Rから第1の個別のチップ内伝送線路セグメント610-Lに伝搬され得る。第1の個別のチップ内伝送線路セグメント610-Lから第2の個別のチップ内伝送線路セグメント610-Rまでは、バッファ622~628を高インピーダンス出力状態にプログラムすることによって、互いから切り離され得る。クロック信号は、バッファ614、626をパススルー状態にし、バッファ622を高インピーダンス出力状態にプログラムすることによって、金属スタック604から第1の個別のチップ内伝送線路セグメント610-Lにルーティングされ得、バッファ614、624をパススルー状態にし、バッファ628を高インピーダンス出力状態にプログラムすることによって、金属スタック604から第2の個別のチップ内伝送線路セグメント610-Rにルーティングされ得る。他の組み合わせのバッファのプログラミングを実装して、クロック信号をルーティングすることができる。
図7は、いくつかの例による、クロック領域310内のチップ内プログラマブルクロックルーティングネットワークのティアの態様を示す。チップ外ルーティングブリッジ702は、クロック領域310の境界にあり、隣接するクロック領域310を横切ってチップ内水平伝送線路502を電気的に接続する。チップ外ルーティングブリッジ702は、クロック領域310の境界にあり、隣接するクロック領域310を横切ってチップ内垂直伝送線路504を電気的に接続する。チップ外ルーティングブリッジ702は、クロック領域310の境界にあり、隣接するクロック領域310を横切ってチップ内水平分配線路506を電気的に接続する。チップ外ルーティングブリッジ702は、クロック領域310の境界にあり、隣接するクロック領域310を横切ってチップ内垂直分配線路508を電気的に接続する。チップ外ルーティングブリッジ702は、それぞれのチップのクロック領域310内のチップ内伝送線路502、504及びチップ内分配線路506、508のそれぞれのセグメントを、それぞれのチップ、上にあるチップ、及び/又は下にあるチップの別のクロック領域310内のチップ内伝送線路502、504及びチップ内分配線路506、508のセグメントに対して、プログラム可能に電気的に接続するか、又は切り離すことができる。いくつかの例では、図7のチップ外ルーティングブリッジ702のいずれかは、それぞれのチップのクロック領域310内のチップ内伝送線路502、504及びチップ内分配線路506、508のそれぞれのセグメントを、それぞれのチップの別のクロック領域310内のチップ内伝送線路502、504及びチップ内分配線路506、508のセグメントに対して、電気的に接続するか、又は切り離すことができる双方向バッファで置換され得る。チップ外ルーティングブリッジ702の存在は、例えば、チップスタックに欠陥許容値を実装して欠陥を無視するかどうか、実装される場合には、欠陥許容値の実装方法など、チップスタックのアーキテクチャに基づいて任意選択であり得る。
例示的なチップ外ルーティングブリッジ702は後述する。境界がチップ外クロックルーティング領域304に隣接する場合などのいくつかの例では、図6のチップ外ルーティングは、チップ外ルーティングブリッジ702の代わりに、又はそれに加えて実装され得る。更に、チップ外ルーティングブリッジ702は、他の例では異なって配置され得る。いくつかの例では、チップ外ルーティングブリッジ702は、クロック領域310の境界に、例えば、同一のチップ内水平伝送線路502に沿って配置され得、いくつかのクロック領域310が、隣接するチップ外ルーティングブリッジ702の間に配設されている。チップ外ルーティングブリッジ702が、クロック領域310の境界において、チップ内伝送線路502、504又はチップ内分配線路506、508に沿って配置されない場合は、双方向バッファが、チップ内伝送線路502、504又はチップ内分配線路506、508のために、当該クロック領域310の当該境界に配置され得る。
双方向バッファ710は、チップ内水平伝送線路502とチップ内垂直伝送線路504との間に電気的に接続されている。単方向相互接続バッファ714は、チップ内垂直伝送線路504に電気的に接続された入力ノードと、チップ内垂直分配線路508に電気的に接続された出力ノードと、を有する。単方向相互接続バッファ716は、チップ内垂直分配線路508に電気的に接続された入力ノードと、チップ内水平分配線路506に電気的に接続された出力ノードと、を有する。
第1のリーフクロックバッファ720の入力ノードは、チップ内水平分配線路506に電気的に接続されており、第1のリーフクロックバッファ720のそれぞれの出力ノードは、それぞれのチップ外リーフレベル接続ノード722に電気的に接続されている。各チップ外リーフレベル接続ノード722は、他のチップ内でチップ外方向に概ね整列するリーフノード間のリーフレベルにおいて電気的接続を形成する。チップ外リーフレベル接続ノード722の例は後述する。それぞれのチップ外リーフレベル接続ノード722は、第2のリーフクロックバッファ724のそれぞれの入力ノードに電気的に接続されており、第2のリーフクロックバッファ724のそれぞれの出力ノードは、クロック領域310内のそれぞれのチップ内列に沿ってクロック領域310内のプログラマブル論理素子(例えば、負荷)まで延在するリーフクロック線路726に電気的に接続されている。リーフクロック線路726は、それぞれの負荷ノード(例えば、それぞれのクロック信号を消費する回路素子が、例えば、電気的に直接接続されている負荷ノード)である。
各チップ外ルーティングブリッジ702は、以下に記載のように、1つ以上のトライステートバッファ及び1つ以上のマルチプレクサを含み得る。各バッファ710、714、716、720、724は、トライステートバッファであり得るか、又はトライステートバッファを含み得る。いくつかの例では、リーフクロックバッファ720、724のいずれか及び/又はそれぞれは、マルチプレクサなどの任意の他の選択送信回路であり得る。チップ外ルーティングブリッジ702及びバッファ710、714、716、720、724(又は他の選択送信回路)のそれぞれの制御信号は、PL IC302のプログラム中にプログラムされ得る、PL IC302内の構成メモリ(例えば、CRAM)に記憶され得る。チップ外ルーティングブリッジ702及びバッファ710、714、716、720、724のうちの様々なブリッジ及びバッファをプログラムすることによって、クロック信号は、クロックソースからPL IC302内の様々な負荷及び他のチップ内の様々な負荷にルーティングされ、分配され得る。当業者は、特に図6に関して上述した例を考慮して、クロック信号をルーティングするために様々なバッファがどのようにプログラムされ得るかを容易に理解するであろう。
図8は、いくつかの例による、チップスタック内のプログラマブルクロックルーティングネットワークに電気的に接続されたリーフレベル接続ブリッジの回路図を示す。各ファブリックチップ104~108には、それぞれのクロック領域310の一部が示されている。図8は上記からの命名法に従っており、参照番号には、ファブリックチップ104、106、108にそれぞれ対応する「-4」、「-6」、又は「-8」が付加されている。クロック領域310の各部分は、プログラマブルクロックルーティングネットワークの一部を形成する、当該クロック領域310のチップ内水平分配線路506の個別のチップ内水平分配線路セグメント802を備えて示されている。図7に関して説明したように、第1のリーフクロックバッファ720の入力ノードは、個別のチップ内水平分配線路セグメント802に電気的に接続されており、第1のリーフクロックバッファ720の出力ノードは、チップ外リーフレベル接続ノード722に電気的に接続されている。チップ外リーフレベル接続ノード722は、第2のリーフクロックバッファ724の入力ノードに電気的に接続されており、第2のリーフクロックバッファ724の出力ノードは、リーフクロック線路726に電気的に接続されている。上述したように、リーフクロックバッファ720、724のいずれか及び/又はそれぞれは、マルチプレクサなどの任意の他の選択送信回路であり得る。
図1の例示的な向きの文脈では、チップ外リーフレベル接続ノード722は、図8には具体的に示されていないが、表面誘電体層124内の金属線及びビア、裏面TSV164、裏面誘電体層134内の金属線及びビア、裏面ボンドパッド174、表面ボンドパッド156、表面誘電体層126内の金属線及びビア、裏面TSV166、裏面誘電体層136内の金属線及びビア、裏面ボンドパッド176、表面ボンドパッド158、並びに表面誘電体層128内の金属線及びビアを含む。他の向きは、異なる構成要素及び/又は構成要素の順序を有し得る。構成要素の数は、チップスタック内のチップの数に基づいて更に多様であり得る。所与のチップ外リーフレベル接続ノード722内の金属線、ビア、TSV、及びボンドパッドは、チップ外方向に概ね整列している。
チップ外リーフレベル接続ノード722は、(i)第1のリーフクロックバッファ720-4、720-6、720-8の出力ノードと、(ii)第2のリーフクロックバッファ724-4、724-6、724-8の入力ノードとの間に共通ブリッジノードを形成する。クロック信号が所与の個別のチップ内水平分配線路セグメント802にルーティングされる場合、対応する第1のリーフクロックバッファ720は、当該第1のリーフクロックバッファ720がクロック信号をチップ外リーフレベル接続ノード722に渡す状態にプログラムされ得る。チップ外リーフレベル接続ノード722に電気的に接続された出力ノードを有する他の第1のリーフクロックバッファ720は、それらの第1のリーフクロックバッファ720の入力ノードに電気的に接続された、対応する個別のチップ内水平分配線路セグメント802をチップ外リーフレベル接続ノード722から切り離すために、高インピーダンス出力状態にプログラムされ得る。次いで、第2のリーフクロックバッファ724は、クロック信号をチップ外リーフレベル接続ノード722から対応するリーフクロック線路726に渡すように、又は対応するリーフクロック線路726をチップ外リーフレベル接続ノード722から切り離すために高インピーダンス出力状態を有するようにプログラムされ得る。
図示の例では、チップ外リーフレベル接続ノード722は、共通ノードを形成する。他の例では、チップ外リーフレベル接続ブリッジは、第1のリーフクロックバッファ720の出力ノードを第2のリーフクロックバッファ724の入力ノードのうちの様々な入力ノードに選択的に対して電気的に連結し、切り離すための回路を含み得る。例えば、双方向バッファは、(i)第1のリーフクロックバッファ720-4の出力ノードと第2のリーフクロックバッファ724-4の入力ノードとの間の電気的接続によって形成されるノードと、(ii)第1のリーフクロックバッファ720-6の出力ノードと第2のリーフクロックバッファ724-6の入力ノードとの間の電気的接続によって形成されるノードと、の間に電気的に接続され得、双方向バッファは、(i)第1のリーフクロックバッファ720-6の出力ノードと第2のリーフクロックバッファ724-6の入力ノードとの間の電気的接続によって形成されるノードと、(ii)第1のリーフクロックバッファ720-8の出力ノードと第2のリーフクロックバッファ724-8の入力ノードとの間の電気的接続によって形成されるノードと、の間に電気的に接続され得、双方向バッファは、(i)第1のリーフクロックバッファ720-4の出力ノードと第2のリーフクロックバッファ724-4の入力ノードとの間の電気的接続によって形成されるノードと、(ii)第1のリーフクロックバッファ720-8の出力ノードと第2のリーフクロックバッファ724-8の入力ノードとの間の電気的接続によって形成されるノードと、の間に電気的に接続され得る。かかる例では、双方向バッファは、双方向バッファのそれぞれの制御信号がPL IC302内の構成メモリ(例えば、CRAM)に記憶され得るようにプログラム可能であり得、PL IC 302のプログラム中にプログラムされ得る。他の回路を実装することもできる。
図9は、いくつかの例による、チップスタック内のクロックツリー902、904を概念的に示す。クロックツリー902、904は、上記のPL ICの文脈で説明する。しかしながら、クロックツリー902、904に関して説明する概念は、例えば、非プログラマブルASIC及び/又はプログラマブルASICと非プログラマブルASICとの組み合わせに適用可能であり、クロックツリー902、904は、チップスタック内でハードワイヤード、かつ非プログラマブルのルートであり得るか、又はクロックツリー902、904は、チップスタック内で部分的にプログラマブルであり、他の部分ではハードワイヤード、かつ非プログラマブルであり得る。本明細書に記載の態様を実装するようにプログラムされた構成要素は、それらの態様を同様に実装するようにハードワイヤード、かつ非プログラマブルであり得る。
概して、クロックツリーによって提供される同一のクロック信号上で動作するリーフレベルへのクロックツリーのチップ内ルーティングは、1つの論理チップ内に含まれる(例えば、完全に含まれる)。いくつかの例では、1つの論理チップは1つの物理チップである。例えば、物理チップの一部に欠陥があるなどいくつかの例では、1つの論理チップは2つ以上の物理チップの一部を含み得る。例えば、クロックツリーの分岐点(存在する場合)から、クロックツリーの全分岐が、同一物理チップ内のそれぞれの概ね同一のチップ内位置にあるチップ外ルーティング(存在する場合)に対応する当該物理チップ内のチップ内ルーティングを有し、当該チップ外ルーティングから、全分岐の対応するチップ内ルーティングが、別の同一物理チップ内にあり、そのチップ外ルーティングが、それぞれのチップ内位置で何回も生じることができ、リーフレベルに達するまで、以降の全分岐の対応するチップ内ルーティングが同一物理チップ内である場合、クロックツリーからリーフレベルへのチップ内ルーティングは、1つの論理チップ内に含まれる。
ベースチップ102は、クロックソース回路912、914を含む。クロックソース回路912は、クロックツリー902によってルーティングされるクロック信号を生成するように構成されており、クロックソース回路914は、クロックツリー904によってルーティングされるクロック信号を生成するように構成されている。クロックソース回路912から、クロックツリー902は、ベースチップ102からファブリックチップ104へのチップ外ルーティングを含む。図6の文脈では、これは、金属スタック604に電気的に接続された出力ノードを有するクロックソース回路912によって実装され得る。金属スタック604に電気的に接続された入力ノードを有するファブリックチップ104上のバッファ614-4は、パススルー状態にプログラムされ得、金属スタック604に電気的に接続されたそれぞれの入力ノードを有する他のバッファ614は、高インピーダンス出力状態にプログラムされる。
次いで、クロックツリー902は、ファブリックチップ104内で完全にチップ内ルーティングされる。クロックツリー902は、チップ内ルーティングにおいて複数(例えば、3つ)の分岐を含む。図5~図7の文脈では、クロックツリー902のチップ内ルーティングは、ファブリックチップ104を横切る(例えば、多くのクロック領域310を横切る)長距離用のチップ内水平伝送線路502(例えば、適切な個別のチップ内伝送線路610-4を含む)及びチップ内垂直伝送線路504によって実装され得る。チップ内水平伝送線路502及びチップ内垂直伝送線路504の、又はそれらの間のターン、交差部、分岐などは、それぞれのクロック領域310内の適切な双方向バッファ710を使用して実装され得る。チップ内ルーティングは、例えば、ファブリックチップ104を横切る(例えば、1つ又は少数のクロック領域310を横切る)中距離用のチップ内水平分配線路506及びチップ内垂直分配線路508によって更に実装され得る。チップ内水平分配線路506及びチップ内垂直分配線路508は、チップ内水平伝送線路502及びチップ内垂直伝送線路504のうちの適切な伝送線路に電気的に接続され得、適切なクロック領域310において、バッファ714、716によって様々なターン及び交差部が実装され得る。クロックツリー902のクロック信号を使用して動作するか、又は消費するファブリックチップ104のリーフノードを含む、それぞれのクロック領域310において、クロックツリー902は、適切なチップ内水平分配線路506(例えば、個別のチップ内水平分配線路セグメント802)を含む。
チップ内ルーティングの後、クロックツリー902はリーフレベルに達する。リーフレベルは、クロックツリー902を介して提供されるクロック信号を消費するか、又はそれに基づいて動作するクロック領域310内のそれぞれの1つ以上のリーフノードに電気的に直接接続されたクロック領域310内の線路(例えば、短距離用線路)を含み得る。チップ外リーフレベル接続ブリッジ922は、リーフレベルでクロックツリー902に接続される。図7及び図8の文脈では、ファブリックチップ104上のそれぞれのクロック領域310内の個別のチップ内水平分配線路セグメント802-4は、クロックツリー902のチップ内ルーティングの最終分岐である。(例えば、図8に示されるような)チップ外リーフレベル接続ブリッジ922ごとに、個別のチップ内水平分配線路セグメント802-4に電気的に接続された入力ノードを有する、ファブリックチップ104内の対応する第1のリーフクロックバッファ720-4はパススルー状態にプログラムされ、チップ外リーフレベル接続ノード722に電気的に接続されたそれぞれの出力ノードを有する他のバッファ720は、他のチップ内の個別のチップ内水平分配線路セグメント802からチップ外リーフレベル接続ノード722を切り離すために高インピーダンス出力状態にプログラムされる。次いで、任意のチップ102~108内のバッファ724のうちの適切なバッファが、パススルー状態又は高インピーダンス出力状態にプログラムされて、対応するリーフクロック線路726に対してチップ外リーフレベル接続ノード722を電気的に接続するか、又は切り離す。リーフクロック線路726は、リーフノードに電気的に直接接続される(例えば、更なる線路の分岐なしで)。
クロックツリー904は、チップ内ルーティングがファブリックチップ106内であることを除いて、クロックツリー902と同様である。クロックソース回路914から、クロックツリー904は、ベースチップ102からファブリックチップ106へのチップ外ルーティングを含む。次いで、クロックツリー904は、ファブリックチップ106内で完全にチップ内ルーティングされ、チップ内ルーティングに複数の分岐を含む。チップ内ルーティングの後、クロックツリー904はリーフレベルに達する。チップ外リーフレベル接続ブリッジ924は、リーフレベルでクロックツリー904に接続される。
いくつかの例によると、1つの論理チップ内に含まれるチップ内ルーティングを有することにより、異なるチップ上のリーフノードにおいて受信されるクロック信号のスキューを低減することができる。半導体処理では、プロセス変動は、ウエハ内の変動(例えば、ウエハ内変動)及びウエハ間からの変動(例えば、ウエハ間変動)をもたらし得る。ウエハ間変動は、同一ロットのウエハ間で生じ得るが、ウエハ間変動は、異なるロットのウエハ間でより大きくなり得る。以下で強調するように、チップ102~108は、異なるウエハ上で製造され得、このことは、チップ102~108間にウエハ間変動をもたらし得る。クロックツリーが、異なるチップで並列のチップ内ルーティングを含む場合、ウエハ間変動は、あるチップ上のリーフノードにおいて受信されたクロック信号と、異なるチップ上のリーフノードにおいて受信されたクロック信号との間にスキューを生じさせ得る。いくつかの例によると、チップ内ルーティングが1つの論理チップ内である場合、異なるチップ上のリーフノードにおいて受信されたクロック信号は、クロックソース回路によって生成された信号に対するクロック信号のスキューがそれらのリーフノードに対する共通モードスキューであり、異なるリーフノードにおけるクロック信号間の任意のスキューが、チップ外リーフレベル接続ブリッジ及びリーフクロック線路による比較的短い距離から生じ得るように、大部分が同じ経路上を伝搬され得る。これらの比較的短い距離は、異なるリーフノードにおいて受信されたクロック信号間のスキューを低減することができる。これは、異なるリーフノードに対する経路の相違、及び結果として生じる変動(例えば、ウエハ間変動に起因する)が、比較的小さくなり得るためである。クロックツリーが論理チップ内のチップ内ルーティングに複数の分岐を有する場合であっても、異なる分岐から受信されたクロック信号間のスキューは、当該論理チップ内のウエハ内変動が概ね比較的小さい(例えば、ウエハ間変動に関して)ために比較的小さくなり得る。クロックツリーにかかるチップ内ルーティングを実装することにより、ホールド違反を低減することができ、タイミングマージンを増加させることによって性能を向上させることができる。
図10は、いくつかの例による、チップスタック内のチップ外ルーティングブリッジ1002-4、1002-6、1002-8の回路図である。図10は上記からの命名法に従っており、参照番号には、ファブリックチップ104、106、108にそれぞれ対応する「-4」、「-6」、又は「-8」が付加されている。各チップ外ルーティングブリッジ1002は、それぞれのチップ内のクロック領域310間のそれぞれの境界における、図7のチップ外ルーティングブリッジ702の個別のインスタンスである。各チップ外ルーティングブリッジ1002は、例えば左クロック領域310内のチップ内水平伝送線路502、チップ内垂直伝送線路504、チップ内水平分配線路506、又はチップ内垂直分配線路508の個別のチップ内水平伝送線路セグメント1004-Lと、例えば右クロック領域310内のチップ内水平伝送線路502、チップ内垂直伝送線路504、チップ内水平分配線路506、又はチップ内垂直分配線路508の個別のチップ内水平伝送線路セグメント1004-Rとの間に電気的に接続されている。各チップ外ルーティングブリッジ1002は、マルチプレクサ1010、1020と、バッファ1012、1022と、を含む。
マルチプレクサ1010の第1の入力ノードは、それぞれのチップ内の対応する個別のチップ内水平伝送線路セグメント1004-Lに電気的に接続されている。マルチプレクサ1010の第2の入力ノードは、それぞれのチップの下にあるチップ(存在する場合)内の個別のチップ内水平伝送線路セグメント1004-Lに電気的に接続されている。マルチプレクサ1010の第3の入力ノードは、それぞれのチップの上にあるチップ(存在する場合)内の個別のチップ内水平伝送線路セグメント1004-Lに電気的に接続されている。マルチプレクサ1010の出力ノードは、バッファ1012の入力ノードに電気的に接続されている。バッファ1012の出力ノードは、それぞれのチップ内の対応する個別のチップ内水平伝送線路セグメント1004-Rに電気的に接続されている。
マルチプレクサ1020の第1の入力ノードは、それぞれのチップ内の対応する個別のチップ内水平伝送線路セグメント1004-Rに電気的に接続されている。マルチプレクサ1020の第2の入力ノードは、それぞれのチップの下にあるチップ(存在する場合)内の個別のチップ内水平伝送線路セグメント1004-Rに電気的に接続されている。マルチプレクサ1020の第3の入力ノードは、それぞれのチップの上にあるチップ(存在する場合)内の個別のチップ内水平伝送線路セグメント1004-Rに電気的に接続されている。マルチプレクサ1020の出力ノードは、バッファ1022の入力ノードに電気的に接続されている。バッファ1022の出力ノードは、それぞれのチップ内の対応する個別のチップ内水平伝送線路セグメント1004-Lに電気的に接続されている。
図1の例示的な向きの文脈では、それぞれのチップのマルチプレクサ1010、1020の入力ノードと、それぞれのチップの上にあるチップ内の個別のチップ内水平伝送線路セグメント1004-L、1004-Rとの間の接続は、それぞれのチップの表面誘電体層124、126内の金属線及びビア、それぞれのチップの裏面TSV164、166、それぞれのチップの裏面誘電体層134、136内の金属線及びビア、それぞれのチップの裏面ボンドパッド174、176、上にあるチップの表面ボンドパッド156、158、並びに上にあるチップの表面誘電体層126、128内の金属線及びビアを含み得る。図1の例示的な向きの文脈では、それぞれのチップのマルチプレクサ1010、1020の入力ノードと、それぞれのチップの下にあるチップ内の個別のチップ内水平伝送線路セグメント1004-L、1004-Rとの間の接続は、それぞれのチップの表面誘電体層126、128内の金属線及びビア、それぞれのチップの表面ボンドパッド156、158、下にあるチップの裏面ボンドパッド174、176、下にあるチップの裏面誘電体層134、136内の金属線及びビア、それぞれのチップの裏面TSV164、166、並びに下にあるチップの表面誘電体層124、126内の金属線及びビアを含み得る。他の向きは、異なる構成要素及び/又は構成要素の順序を有し得る。構成要素の数は、チップスタック内のチップの数に基づいて更に多様であり得る。
チップ外ルーティングブリッジ1002は、クロック信号を、下又は上にあるチップにルーティングすることによって、欠陥クロック領域をバイパスすることを可能にする。欠陥なしと見なすと、クロック信号は、ユーザ設計から生成された構成に基づいてルーティングされ得る。かかるシナリオでは、各マルチプレクサ1010は、それぞれのマルチプレクサ1010の同一チップ上に配設された個別のチップ内水平伝送線路セグメント1004-Lに電気的に接続された入力ノードから信号を出力するようにプログラムされ得、各マルチプレクサ1020は、それぞれのマルチプレクサ1020の同一チップ上に配設された個別のチップ内水平伝送線路セグメント1004-Rに電気的に接続された入力ノードから信号を出力するようにプログラムされ得る。バッファ1012、1022は、ユーザ設計に従ってルーティングされる信号の指向性に基づいてプログラムされ得る。クロック信号が、同一チップ内で個別のチップ内水平伝送線路セグメント1004-Lから個別のチップ内水平伝送線路セグメント1004-Rへと(例えば、図の左から右に)ルーティングされる場合、バッファ1012は、クロック信号を渡すためにパススルー状態にプログラムされ得、バッファ1022は、高インピーダンス出力状態を有するようにプログラムされ得る。同様に、クロック信号が、同一チップ内で個別のチップ内水平伝送線路セグメント1004-Rから個別のチップ内水平伝送線路セグメント1004-Lへと(例えば、図の左から右に)ルーティングされる場合、バッファ1022は、クロック信号を渡すためにパススルー状態にプログラムされ得、バッファ1012は、高インピーダンス出力状態を有するようにプログラムされ得る。
欠陥がある場合、マルチプレクサ1010、1020及びバッファ1012、1022のうちの様々なものをプログラムすることによって、欠陥をバイパスすることができる。例えば、クロック信号が、ファブリックチップ106内の個別のチップ内水平伝送線路セグメント1004-L-6上で(例えば、図の左から右に)ルーティングされ、個別のチップ内水平伝送線路セグメント1004-R-6に(例えば、個別のチップ内水平伝送線路セグメント1004-R-6の金属線又は個別のチップ内水平伝送線路セグメント1004-R-6の金属線に電気的に接続された一部の構成要素に)欠陥があると仮定する。バッファ1012-6、1022-6の両方は、高インピーダンス出力状態にプログラムされる。バッファ1012-6は、個別のチップ内水平伝送線路セグメント1004-R-6の欠陥により、高インピーダンス出力状態にプログラムされる。バッファ1022-6は、個別のチップ内水平伝送線路セグメント1004-L-6上のクロック信号を(例えば、左から右に)ルーティングするユーザ設計により、高インピーダンス出力状態にプログラムされる。バッファ1012-6、1022-6が高インピーダンス出力状にプログラムされると、マルチプレクサ1010-6、1020-6は、任意の状態(例えば、「do not care」状態にプログラムされ得る。マルチプレクサ1010-8は、個別のチップ内水平伝送線路セグメント1004-L-6に電気的に接続されている入力ノードからクロック信号を出力するようにプログラムされ得、バッファ1012-8は、マルチプレクサ1010-8から出力されたクロック信号を個別のチップ内水平伝送線路セグメント1004-R-8に出力するようにパススルー状態にプログラムされ得る。次いで、クロック信号は、ファブリックチップ108内の個別のチップ内水平伝送線路セグメント1004-R-8に沿ってルーティングされ得る。当業者が図10を見て容易に理解するように、クロック信号をルーティングするために、いくつかの他の組み合わせを実装することができる。
各マルチプレクサ1010、1020は、選択された入力ノードから信号を出力するために選択される入力ノードを制御するための制御信号を有し得、制御信号はメモリに記憶され得る。いくつかの例では、マルチプレクサ1010、1020の制御信号用のメモリは、電気ヒューズ(electric fuse、eFuse)など不揮発性ワンタイムプログラマブルメモリである。マルチプレクサ1010、1020用にメモリをプログラムすることは、チップスタックの製造及びスタックされたチップの試験後に実行され得る。試験は、チップスタックのチップ内の欠陥を特定することができる。チップスタックが動作可能であるようにチップスタックの十分なリソースに欠陥がないと見なすと、メモリは、チップ間のルーティングを提供して欠陥をバイパスするようにプログラムされ得る。
各バッファ1012、1022は、トライステートバッファであり得るか、又はトライステートバッファを含み得る。いくつかの例では、いずれか及び/又はそれぞれのバッファ1012、1022は、マルチプレクサなどの任意の他の選択送信回路であり得る。それぞれのバッファ1012、1022の制御信号は、(例えば、2ビットメモリに)電気的に接続された、それぞれの入力ノードを有する論理(例えば、ANDゲート、NORゲート、又は他の論理など組み合わせ論理)から生じ得る。1ビットメモリは、試験の結果としてプログラム可能な、eFuseなど不揮発性ワンタイムプログラマブルメモリであり得る。例えば、それぞれのバッファ1012、1022の出力ノードに電気的に接続されている個別のチップ内水平伝送線路セグメント1004に欠陥がある場合、1ビット(例えば、不揮発性ワンタイムプログラマブル)メモリは、それぞれのバッファ1012、1022が高インピーダンス出力状態であるようにプログラムされ得る。それ以外の場合、1ビットメモリは、論理の別の入力ノードに電気的に接続されている構成メモリなど別の1ビットのメモリがそれぞれのバッファ1012、1022の状態を制御するようにプログラムされ得る。他の1ビットメモリは、それぞれのバッファ1012、1022が、ユーザ設計に基づいて応答してパススルー状態又は高インピーダンス出力状態にプログラムされ得る。それぞれのバッファ1012、1022の他の1ビットメモリは、PL IC302のプログラム中にプログラムされ得る。表1は、バッファ1012の出力ノードが接続される個別のチップ内水平伝送線路セグメント1004に欠陥があるか、動作可能であるかに基づいた、また、バッファ1012がパススルー状態又は高インピーダンス出力状態であることを示すユーザ設計に基づいた、バッファ1022(及び対応して、括弧内のバッファ1012)の状態の論理表である。様々な論理がかかる表を実装することができる。
図11は、いくつかの例による、チップスタック内のクロックツリー1102を概念的に示す。クロックツリー1102は、上記のPL ICの文脈で説明する。しかしながら、クロックツリー1102に関して説明する概念は、例えば、非プログラマブルASIC及び/又はプログラマブルASICと非プログラマブルASICとの組み合わせに適用可能であり、クロックツリー1102は、チップスタック内でハードワイヤード、かつ非プログラマブルのルートであり得るか、又はクロックツリー1102は、チップスタック内で部分的にプログラマブルであり、他の部分ではハードワイヤード、かつ非プログラマブルであり得る。本明細書に記載の態様を実装するようにプログラムされた構成要素は、それらの態様を同様に実装するようにハードワイヤード、かつ非プログラマブルであり得る。
図9に関して記載したように、クロックツリーによって提供される同一のクロック信号上で動作するリーフレベルへのクロックツリーのチップ内ルーティングは、1つの論理チップ内に含まれる(例えば、完全に含まれる)。図11は、図示の例では2つの物理チップである1つの論理チップ内に含まれるクロックツリー1102を示す。他の例では、1つの論理チップは、3つ以上の物理チップであり得る。図示のように、クロックツリー1102のリーフレベルへのチップ内ルーティングは、1つの論理チップ内に含まれる。これは、ファブリックチップ104内のクロックツリー1102の分岐点1103から、クロックツリー1102の各分岐が、物理チップ内のそれぞれの概ね同一のチップ内位置(例えば、スライバ1122-1内及びスライバ1122-2内)におけるチップ外ルーティングに対応する同一物理チップ内でのチップ内ルーティング、続いて、チップ外リーフレベル接続ブリッジ1132におけるリーフレベルに達するまで、別の同一物理チップ内の対応するチップ内ルーティングを有するためである。
図11は、クロック領域310のスライバ1120-1、1120-2、1120-3(総称して、又は個々にスライバ1120)と、チップ外ルーティングブリッジ1002のスライバ1122-1、1122-2、1122-3(集合的に、又は個々にスライバ1122)と、を含むファブリックチップ104~108を示す。スライバ1120及びスライバ1122は、図示の例では交互になっている。各ファブリックチップ104~108は、クロック領域310のそれぞれのスライバ1120内に1つ以上のクロック領域310を含む。それぞれのスライバ1120内のファブリックチップ104~108のクロック領域310は、物理的及び/又は論理的に整列し得る。同様に、各ファブリックチップ104~108は、チップ外ルーティングブリッジ1002のそれぞれのスライバ1122内にチップ外ルーティングブリッジ1002を含む。それぞれのスライバ1122内のファブリックチップ104~108のチップ外ルーティングブリッジ1002は、物理的及び/又は論理的に整列し得る。
ベースチップ102は、クロックソース回路1112を含む。クロックソース回路1112は、クロックツリー1102によってルーティングされるクロック信号を生成するように構成されている。クロックソース回路1112から、クロックツリー1102は、ベースチップ102からファブリックチップ104へのチップ外ルーティングを含む。図6の文脈では、これは、金属スタック604に電気的に接続された出力ノードを有するクロックソース回路1112によって実装され得る。金属スタック604に電気的に接続された入力ノードを有するファブリックチップ104上のバッファ614-4は、パススルー状態にプログラムされ得、金属スタック604に電気的に接続されたそれぞれの入力ノードを有する他のバッファ614は、高インピーダンス出力状態にプログラムされる。
次いで、クロックツリー1102は、ファブリックチップ104、106の一部を含む1つの論理チップ内で完全にチップ内ルーティングされる。クロックツリー1102は、チップ内ルーティングにおいて複数(例えば、3つ)の分岐1104a、1104b、1104cを含む。図5~図7の文脈では、クロックツリー1102のチップ内ルーティングは、例えば、ファブリックチップ104、106を横切る(例えば、多くのクロック領域310を横切る)長距離用のチップ内水平伝送線路502(例えば、適切な個別のチップ内伝送線路610-4を含む)及びチップ内垂直伝送線路504によって実装され得る。チップ内水平伝送線路502及びチップ内垂直伝送線路504の、又はそれらの間のターン、交差部、分岐などは、それぞれのクロック領域310内の適切な双方向バッファ710を使用して実装され得る。チップ内ルーティングは、例えば、ファブリックチップ104を横切る(例えば、1つ又は少数のクロック領域310を横切る)中距離用のチップ内水平分配線路506及びチップ内垂直分配線路508によって更に実装され得る。チップ内水平分配線路506及びチップ内垂直分配線路508は、チップ内水平伝送線路502及びチップ内垂直伝送線路504のうちの適切な伝送線路に電気的に接続され得、適切なクロック領域310において、バッファ714、716によって様々なターン及び交差部が実装され得る。クロックツリー1102のクロック信号を使用して動作するか、又は消費するファブリックチップ104のリーフノードを含む、それぞれのクロック領域310において、クロックツリー1102は、適切なチップ内水平分配線路506(例えば、個別のチップ内水平分配線路セグメント802)を含む。
クロックツリー1102は、ファブリックチップ104、106間のチップ外ルーティングを含む。このチップ外ルーティングは、スライバ1122-1及びスライバ1122-2内のファブリックチップ104、106内のチップ外ルーティングブリッジ1002によって実装される。スライバ1122-1の文脈で図10を参照すると、クロックツリー1102の各分岐は、対応する個別のチップ内水平伝送線路セグメント1004-L-4を含み、対応するバッファ1012-4、1022-4、1022-6は、高インピーダンス出力状態にプログラムされる。マルチプレクサ1010-6は、下にあるチップ(例えば、ファブリックチップ104)からの信号を渡すようにプログラムされ、バッファ1012-6は、パススルー状態にプログラムされる。スライバ1122-2の文脈で図10を参照すると、クロックツリー1102の各分岐は、対応する個別のチップ内水平伝送線路セグメント1004-L-6を含み、対応するバッファ1022-6、1022-4は、高インピーダンス出力状態にプログラムされる。マルチプレクサ1010-4は、上にあるチップ(例えば、ファブリックチップ106)からの信号を渡すようにプログラムされ、バッファ1012-4は、パススルー状態にプログラムされる。スライバ1122-1、1122-2の間及び後で、クロックツリー1102は、チップ内ルーティングを継続する。チップ内ルーティングの後、クロックツリー1102は、図9と同様に、リーフレベルでクロックツリー1102に接続されるチップ外リーフレベル接続ブリッジ1132に達する。
クロックツリー1102の分岐点1103から、クロックツリー1102の各分岐1104a、1104b、1104cは、ファブリックチップ104内のスライバ1122-1におけるチップ外ルーティングへの対応するファブリックチップ104内のチップ内ルーティングを有する。各分岐1104a、1104b、1104cは、スライバ1122-1内のチップ外ルーティングによってファブリックチップ106にルーティングされ、次いで、ファブリックチップ106内のスライバ1122-2におけるチップ外ルーティングへのファブリックチップ106内の対応するチップ内ルーティングを有する。次いで、各分岐1104a、1104b、1104cは、スライバ1122-2内のチップ外ルーティングによってファブリックチップ104にルーティングされ、その後、チップ外リーフレベル接続ブリッジ1132を含むリーフレベルへのファブリックチップ104内の対応するチップ内ルーティングを有する。したがって、このルーティングは、1つの論理チップ内に含まれる。チップ外ルーティングは、チップ外ルーティングが分岐1104a、1104b、1104cのそれぞれについて厳密に同一のチップ内位置ではないように、異なる物理構造を使用することによるものであり得るが、分岐1104a、1104b、1104cについてのチップ外ルーティングの対応する例のそれぞれは、チップ外ルーティングのチップ内位置が概ね同一であるように、同一スライバ(例えば、スライバ1122-1又はスライバ1122-2)内で生じる。更に、1つの論理チップ内にルーティングが含まれない例として、分岐1104aが、スライバ1122-1におけるチップ外ルーティングによってファブリックチップ108にルーティングされ、その後、ファブリックチップ108内のチップ内ルーティングによってスライバ1122-2にルーティングされる一方で、分岐1104b、1104cが、上述され、図11に示されるようにルーティングされる場合、チップ内ルーティングは、1つの論理チップ内に含まれないことになる。
チップ外ルーティングブリッジ1002のスライバ1122を実装することにより、クロックツリーのチップ内ルーティングが、領域を通るチップ内ルーティングを妨げる欠陥を有する領域(領域1124など)をバイパスすることが可能になる。いくつかの例では、クロックツリーは、欠陥領域を迂回したチップ内ルーティングであり得、スライバ1122は、ある論理チップ内のチップ内ルーティングを維持しつつ、クロックツリーをチップ外にルーティングするための更なる柔軟性を提供する。クロックツリー1102は、ファブリックチップ104で開始し、終了するチップ内ルーティングを有するように示されており、他の例では、チップ内ルーティングは、別のチップで終了し得、より多くのチップを通るチップ外ルーティングを有し得る。(1つの論理チップ内に含まれつつも、)多数のチップを通るチップ内ルーティングの多くの順列を実装することができる。
図11に示されるルーティングを実装することはまた、クロックツリー上のクロック信号のアクティブデスキューを使用することを含み得る。(1つの論理チップではあるが、)異なる物理チップ内でのクロックツリーのルーティングは、異なる物理チップ上の異なるウエハ内変動を生じさせるクロック信号を生じさせ得、クロックツリー上のクロック信号に異なるスキューを生じさせ得る。アクティブデスキューは、異なる物理チップ内でのルーティングからのこのスキューに対応することができる。分散位相検出器及び遅延線は、異なるクロック領域間の遅延を調整及び/又は等化することができ、したがって、クロックスキューのプロセス変動成分をリーフレベルまで無効にする。
本明細書に記載のアーキテクチャは更に、チップスタックの任意のチップにおけるチップ内及びチップ外でのクロックソース(例えば、クロックソース回路1112)からのクロックツリーのルーティングを可能にする。クロックツリーがASIC実装形態でハードワイヤードであるか、プログラマブル実装形態でプログラムされているかにかかわらず、例えば、ベースチップ102上で発信されたクロック信号は、任意のファブリックチップ104~108に達することができ、チップ102~108のいずれかでルーティングされることができ、依然としてチップ102~108のいずれかで全く同一の負荷に到達することができる。ファブリックチップ104~108上のそれぞれのクロックネットワークは、これらのクロックネットワークがリーフレベルで全て一緒にプログラム可能に短絡されるので、ルーティングに交換可能に使用され得る。
図12は、いくつかの例による、図1のマルチチップデバイスを形成する方法1200のフローチャートである。図12の方法1200の処理が概ね記載されており、当業者は、実行され得る、より具体的な処理を容易に理解するであろう。より具体的な処理は、チップに個片化されるICを基板上で形成するための任意の半導体処理に従い得る。本明細書での説明を容易にするために、1つ以上のベースチップ102が形成されるウエハをベースウエハと呼び、1つ以上のファブリックチップ104、106、108が形成されるウエハをファブリックウエハと呼ぶ。いずれのウエハも、任意の形状及び/又はサイズであり得る。
ブロック1202において、それぞれのウエハ上のチップに対する表面処理が実行される。例えば、各半導体基板112、114、116、118(例えば、ウエハ)の表面処理は、半導体基板112、114、116、118の表面内及び/又は上にデバイス(例えば、トランジスタ142、144、146、148)を形成することと、半導体基板112、114、116、118の表面に、メタライゼーション及び表面ボンドパッド152、154、156、158を備える表面誘電体層122、124、126、128を形成することと、を含み得る。ベースウエハには、複数のベースチップ102が形成され得る。複数のファブリックチップ104、106、又は108は、複数のファブリックウエハのそれぞれに形成され得る。
ブロック1204において、ベースウエハは、第1のファブリックウエハに接合される(図1に示すような表面同士の接合など)。この接合の結果として、図1に示すように、ベースチップ102の表面は、ファブリックチップ104の表面に接合される。この接合は、ベースウエハ上の表面ボンドパッド152を第1のファブリックウエハ上の表面ボンドパッド154に接合し、ベースウエハ上の表面誘電体層122の外面を第1のファブリックウエハ上の表面誘電体層124の外面に接合するなど、ハイブリッド接合であり得る。
ブロック1206において、第1のファブリックウエハの半導体基板は、第1のファブリックウエハの裏面から薄型化される。図1に示すように、ファブリックチップ104の半導体基板114は、裏面から薄型化される。薄型化は、化学機械研磨(chemical mechanical polish、CMP)又は他の適切なプロセスによって行うことができる。ブロック1208において、第1のファブリックウエハ上のファブリックチップの裏面処理が実行される。図1に示すように、裏面処理は、第1のファブリックウエハの半導体基板114を貫通して裏面TSV164を形成することと、第1のファブリックウエハ上の表面誘電体層124内のメタライゼーションに接続することと、を含み得る。裏面処理は、半導体基板114の裏面にメタライゼーション及び裏面ボンドパッド174を備える裏面誘電体層134を形成することを更に含み得る。裏面誘電体層134内のメタライゼーションは、裏面TSV164を介して表面誘電体層124内のメタライゼーションに電気的に接続され得る。
ブロック1210において、第1のファブリックウエハは、図1に示すように裏面と表面との接合など、第2のファブリックウエハに接合される。接合の結果として、図1に示すように、ファブリックチップ104の裏面がファブリックチップ106の表面に接合される。この接合は、第1のファブリックウエハ上の裏面ボンドパッド174を第2のファブリックウエハ上の表面ボンドパッド156に接合し、第1のファブリックウエハ上の裏面誘電体層134の外面を第2のファブリックウエハ上の表面誘電体層126の外面に接合するなど、ハイブリッド接合であり得る。
ブロック1212において、第2のファブリックウエハの半導体基板は、ブロック1206に関して記載したように、第2のファブリックウエハの裏面から薄型化される。図1に示すように、ファブリックチップ106の半導体基板116は、裏面から薄型化される。
ブロック1214において、ブロック1208に関して記載したように、第2のファブリックウエハ上のファブリックチップの裏面処理が実行される。図1に示すように、裏面処理は、第2のファブリックウエハの半導体基板116を貫通して裏面TSV166を形成することと、第2のファブリックウエハ上の表面誘電体層126内のメタライゼーションに接続することと、を含み得る。裏面処理は、半導体基板116の裏面にメタライゼーション及び裏面ボンドパッド176を備える裏面誘電体層136を形成することを更に含み得る。裏面誘電体層136内のメタライゼーションは、裏面TSV166を介して表面誘電体層126内のメタライゼーションに電気的に接続され得る。
ブロック1216において、第2のファブリックウエハは、図1に示すように裏面と表面との接合など、第3のファブリックウエハに接合される。接合の結果として、図1に示すように、ファブリックチップ106の裏面がファブリックチップ108の表面に接合される。この接合は、第2のファブリックウエハ上の裏面ボンドパッド176を第3のファブリックウエハ上の表面ボンドパッド158に接合し、第2のファブリックウエハ上の裏面誘電体層136の外面を第3のファブリックウエハ上の表面誘電体層128の外面に接合するなど、ハイブリッド接合であり得る。
ブロック1218において、ベースウエハの半導体基板は、ブロック1206に関して記載したように、ベースウエハの裏面から薄型化される。図1に示すように、ベースチップ102の半導体基板112は、裏面から薄型化される。
ブロック1220において、ブロック1208に関して記載したように、ベースウエハ上のベースチップの裏面処理が実行される。図1に示すように、裏面処理は、ベースウエハの半導体基板112を貫通して裏面TSV162を形成することと、ベースウエハ上の表面誘電体層122内のメタライゼーションに接続することと、を含み得る。裏面処理は、半導体基板112の裏面にメタライゼーション及び外部コネクタ裏面ボンドパッド172を備える裏面誘電体層132を形成することを更に含み得る。裏面誘電体層132内のメタライゼーションは、裏面TSV162を介して表面誘電体層122内のメタライゼーションに電気的に接続され得る。ベースチップ102の裏面処理は、パッシベーション層180及び外部コネクタ182を形成することを更に含み得る。ブロック1222において、接合されたウエハが(例えば、ソーイングにより)個片化されて、形成された個別のマルチチップデバイスを分離する。マルチチップデバイスのそれぞれは、図1に示されるとおりであり得る。
方法1200のブロックの様々な動作は、繰り返され、及び/又は省略されて、様々なマルチチップデバイスを形成し得る。方法1200は、いくつかのマルチチップデバイスが形成され得る方法の例として提供されている。他の例では、いくつかの動作が並行して実行され得る。例えば、複数の異なるウエハスタックが、(例えば、それぞれのウエハを接合し、処理することによって)並行して形成された後、複数の異なるウエハスタックが互いに接合され、更に処理されてマルチチップデバイスを形成し得る。当業者であれば、上記の方法1200の説明に基づいて、他のマルチチップデバイスの形成方法を容易に理解するであろう。
図13は、いくつかの例による、マルチチップデバイスを動作させる方法1300のフローチャートである。マルチチップデバイスは、例えば、前述の図のいずれかに示されるようなものであり得る。ブロック1302において、任意選択的に、チップスタックは、チップスタックのプログラマブルクロックルーティングネットワーク内でクロックツリーをインスタンス化するようにプログラムされる。前述の例では、プログラマブルクロックルーティングネットワークは、構成の相互接続を使用することなどによって、PL ICをプログラムしてプログラムされ得る。プログラムすることは、バッファ614、622、624、626、628、714、716、720、724、1012、1022、双方向バッファ710、マルチプレクサ1010、1020、及び/又はプログラマブルクロックルーティングネットワークの任意の他のプログラマブル素子をプログラムするように構成メモリをプログラムすることを含み得る。例えば、チップスタックが1つ以上のハードワイヤード及び/又は非プログラマブルクロックツリーを含む場合、ブロック1302を省略することができる。
ブロック1304において、クロック信号は、チップスタック内のクロックツリーに沿って伝搬される。例えば、クロック信号は、クロックソース回路912、914、1112などクロックソース回路内で生成され、クロックツリー902、904、1102を介してリーフレベルに伝搬され得る。クロックツリー902、904、1102は、チップスタックの1つの論理チップ内に含まれるチップ内ルーティングを有する。クロックツリー902、904、1102は、上述したように、チップ外リーフレベル接続ブリッジ922、924、1132に電気的に接続されている。
上記は特定の例を対象とするが、他の例及び更なる例が、その基本的な範囲から逸脱することなく考案され得、その範囲は、以下の「特許請求の範囲」によって決定される。
Claims (15)
- マルチチップデバイスであって、
チップを備えるチップスタックであって、前記チップスタックはクロックツリーを備え、前記クロックツリーのチップ内ルーティングは、前記チップスタックの1つの論理チップ内に含まれ、前記チップスタックは、それぞれのチップ内に配設されたリーフノードを備え、前記リーフノードの各リーフノードは、それぞれのリーフレベル接続ブリッジを介して前記クロックツリーに電気的に接続されており、前記それぞれのリーフレベル接続ブリッジは、複数の前記チップを通ってチップ外方向に延在する、チップスタックを備える、マルチチップデバイス。 - 前記1つの論理チップは、前記チップのうちの1つの物理チップである、請求項1に記載のマルチチップデバイス。
- 前記1つの論理チップは、前記チップのうちの2つ以上のそれぞれの部分を含む、請求項1に記載のマルチチップデバイス。
- 前記クロックツリーは、前記チップのうちの第1のチップの第1のチップ内ルーティングセグメントと前記チップのうちの第2のチップの第2のチップ内ルーティングセグメントとの間に電気的に接続された、チップ外ルーティングブリッジを通るチップ外方向のルーティングを含み、前記第2のチップは前記第1のチップと異なる、請求項1に記載のマルチチップデバイス。
- 前記クロックツリーは、前記1つの論理チップ内に含まれる複数のチップ内ルーティング分岐を含む、請求項1に記載のマルチチップデバイス。
- 前記チップのうちの第1のチップは、前記チップのうちの第2のチップへのチップ外ルーティングに電気的に接続されたクロックソース回路を含み、前記第2のチップは、前記チップ外ルーティングに電気的に接続されている、前記チップ内ルーティングのチップ内ルーティングセグメントを有し、前記クロックソース回路は、前記チップ外ルーティングを介して前記クロックツリーにクロック信号を出力するように構成されている、請求項1に記載のマルチチップデバイス。
- マルチチップデバイスであって
チップを備えるチップスタックであって、前記チップスタックは、プログラマブルクロックルーティングネットワークを備え、プログラマブルリーフレベル接続ブリッジは、前記チップスタック内に配設され、前記プログラマブルクロックルーティングネットワークに電気的に接続されており、前記プログラマブルリーフレベル接続ブリッジは、複数の前記チップを通ってチップ外方向に延在し、前記複数のチップの各チップ内のそれぞれのリーフノードに電気的に接続されている、チップスタックを備える、マルチチップデバイス。 - 前記チップスタックは、前記チップスタックの複数の前記チップのうちの任意のチップ内でのチップ内ルーティングで、前記プログラマブルクロックルーティングネットワーク内にクロックツリーを実装するように構成可能であり、前記クロックツリーの前記チップ内ルーティングは、前記チップスタックの1つの論理チップ内に含まれ、前記チップスタックは更に、前記プログラマブルリーフレベル接続ブリッジを介して、前記チップスタックの異なるチップ上のリーフノードを前記クロックツリーに電気的に接続するように構成可能である、請求項7に記載のマルチチップデバイス。
- 前記チップスタックは、クロックソース回路に電気的に接続された金属スタックを含み、前記金属スタックは、チップ外方向に延在し、前記プログラマブルクロックルーティングネットワークの少なくとも一部が配設される前記チップスタックの各チップは、前記金属スタックにプログラム可能に電気的に接続されている前記プログラマブルクロックルーティングネットワークのチップ内ルーティングセグメントを備える、請求項7に記載のマルチチップデバイス。
- 前記プログラマブルリーフレベル接続ブリッジの各プログラマブルリーフレベル接続ブリッジは、
前記複数のチップを通って前記チップ外方向に延在するリーフレベル接続ノードと、
前記複数のチップのチップごとに、
チップ内ルーティングセグメントに電気的に接続された入力ノードを有し、前記リーフレベル接続ノードに電気的に接続された出力ノードを有する第1の選択送信回路であって、前記チップ内ルーティングセグメントは、前記それぞれのチップ内に配設され、前記プログラマブルクロックルーティングネットワークの一部を形成する、第1の選択送信回路と、
前記リーフレベル接続ノードに電気的に接続された入力ノードを有し、リーフレベル線路に電気的に接続された出力ノードを有する第2の選択送信回路であって、前記リーフレベル線路は、前記それぞれのチップ内に配設されたリーフノードに電気的に接続されている、第2の選択送信回路と、を含む、請求項7に記載のマルチチップデバイス。 - 前記プログラマブルクロックルーティングネットワークは、前記チップスタックのチップ間に電気的に接続されたプログラマブルルーティングブリッジを含む、請求項7に記載のマルチチップデバイス。
- 前記プログラマブルルーティングブリッジの各プログラマブルルーティングブリッジは、前記チップのうちのそれぞれのチップ内に配設された、第1のマルチプレクサと、第1の選択送信回路と、第2のマルチプレクサと、第2の選択送信回路と、を含み
前記プログラマブルクロックルーティングネットワークの第1のチップ内ルーティングセグメントは、前記それぞれのチップ内に配設され、前記第1のチップ内ルーティングセグメントは、前記第1のマルチプレクサの第1の入力ノード及び前記第2の選択送信回路の出力ノードに電気的に接続されており、
前記プログラマブルクロックルーティングネットワークの第2のチップ内ルーティングセグメントは、前記それぞれのチップ内に配設され、前記第2のチップ内ルーティングセグメントは、前記第2のマルチプレクサの第1の入力ノード及び前記第1の選択送信回路の出力ノードに電気的に接続されており、
前記プログラマブルクロックルーティングネットワークの第3のチップ内ルーティングセグメントは、前記それぞれのチップの上又は下にある別のチップ内に配設され、前記第3のチップ内ルーティングセグメントは、前記第1のマルチプレクサの第2の入力ノードに電気的に接続されており、
前記プログラマブルクロックルーティングネットワークの第4のチップ内ルーティングセグメントは、他のチップ内に配設され、前記第4のチップ内ルーティングセグメントは、前記第2のマルチプレクサの第2の入力ノードに電気的に接続されており、
前記第1のマルチプレクサの出力ノードは、前記第1の選択送信回路の入力ノードに電気的に接続されており、
前記第2のマルチプレクサの出力ノードは、前記第2の選択送信回路の入力ノードに電気的に接続されている、請求項11に記載のマルチチップデバイス。 - マルチチップデバイスを動作させる方法であって、前記方法は、
チップスタック内のクロックツリーに沿ってクロック信号を伝搬することを含み、前記チップスタックはチップを備え、前記クロックツリーのチップ内ルーティングは前記チップスタックの1つの論理チップ内に含まれ、前記チップスタックは、それぞれのチップ内に配設されたリーフノードを備え、前記リーフノードの各リーフノードは、それぞれのリーフレベル接続ブリッジを介して前記クロックツリーに電気的に接続されており、前記それぞれのリーフレベル接続ブリッジは、複数の前記チップを通ってチップ外方向に延在する、方法。 - 前記クロックツリーは、前記チップのうちの第1のチップの第1のチップ内ルーティングセグメントと前記チップのうちの第2のチップの第2のチップ内ルーティングセグメントとの間に電気的に接続された、ルーティングブリッジを通るチップ外方向のルーティングを含み、前記第2のチップは前記第1のチップと異なる、請求項13に記載の方法。
- 前記チップスタックのプログラマブルクロックルーティングネットワーク内で前記クロックツリーをインスタンス化するように前記チップスタックをプログラムすることを更に含み、
前記クロックツリーをインスタンス化するように前記チップスタックをプログラムすることは、
(a)金属スタックと前記プログラマブルクロックルーティングネットワークのチップ内ルーティングセグメントとの間のプログラマブル相互接続をプログラムすることであって、前記金属スタックは、前記チップスタック内でチップ外方向に延在する、こと、
(b)前記チップスタックの隣接するチップ間に電気的に接続されたプログラマブルルーティングブリッジをプログラムすることであって、前記プログラマブルクロックルーティングネットワークは、前記プログラマブルルーティングブリッジを含む、こと、又は
(c)前記リーフレベル接続ブリッジをプログラムすることであって、前記プログラマブルクロックルーティングネットワークは、前記リーフレベル接続ブリッジに電気的に接続されている、こと、のうちの少なくとも1つを含む、請求項13に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/127,525 US11868174B2 (en) | 2020-12-18 | 2020-12-18 | Clock tree routing in a chip stack |
US17/127,525 | 2020-12-18 | ||
PCT/US2021/042589 WO2022132232A1 (en) | 2020-12-18 | 2021-07-21 | Clock tree routing in a chip stack |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024509028A true JP2024509028A (ja) | 2024-02-29 |
Family
ID=77448032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023536994A Pending JP2024509028A (ja) | 2020-12-18 | 2021-07-21 | チップスタック内でのクロックツリールーティング |
Country Status (6)
Country | Link |
---|---|
US (2) | US11868174B2 (ja) |
EP (1) | EP4214593A1 (ja) |
JP (1) | JP2024509028A (ja) |
KR (1) | KR20230119110A (ja) |
CN (1) | CN116438654A (ja) |
WO (1) | WO2022132232A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220008093A (ko) * | 2020-07-13 | 2022-01-20 | 삼성전자주식회사 | 반도체 패키지 및 반도체 패키지의 제조 방법 |
US11941336B2 (en) * | 2021-11-10 | 2024-03-26 | Oppstar Technology Sdn Bhd | Three-dimensional FPGA with structure ASIC hardening capability |
TWI800443B (zh) * | 2022-08-15 | 2023-04-21 | 緯穎科技服務股份有限公司 | 快速周邊組件互連裝置的錯誤回報優化方法以及快速周邊組件互連裝置的錯誤回報優化系統 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8525569B2 (en) | 2011-08-25 | 2013-09-03 | International Business Machines Corporation | Synchronizing global clocks in 3D stacks of integrated circuits by shorting the clock network |
US9159716B2 (en) * | 2013-08-30 | 2015-10-13 | Taiwan Semiconductor Manufacturing Company, Ltd. | Stacked chip layout having overlapped active circuit blocks |
US9143122B1 (en) | 2014-05-02 | 2015-09-22 | Xilinx, Inc. | Adaptive low skew clocking architecture |
US10741524B2 (en) | 2018-04-30 | 2020-08-11 | Xilinx, Inc. | Redundancy scheme for a 3D stacked device |
-
2020
- 2020-12-18 US US17/127,525 patent/US11868174B2/en active Active
-
2021
- 2021-07-21 JP JP2023536994A patent/JP2024509028A/ja active Pending
- 2021-07-21 CN CN202180075208.8A patent/CN116438654A/zh active Pending
- 2021-07-21 KR KR1020237015052A patent/KR20230119110A/ko unknown
- 2021-07-21 EP EP21758852.4A patent/EP4214593A1/en active Pending
- 2021-07-21 WO PCT/US2021/042589 patent/WO2022132232A1/en active Application Filing
-
2023
- 2023-11-28 US US18/521,301 patent/US20240103562A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220197329A1 (en) | 2022-06-23 |
US11868174B2 (en) | 2024-01-09 |
EP4214593A1 (en) | 2023-07-26 |
KR20230119110A (ko) | 2023-08-16 |
CN116438654A (zh) | 2023-07-14 |
WO2022132232A1 (en) | 2022-06-23 |
US20240103562A1 (en) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102393946B1 (ko) | 직접-접합된 네이티브 상호접속부 및 능동 베이스 다이 | |
JP6937296B2 (ja) | インターポーザなし積層ダイ相互接続 | |
JP2024509028A (ja) | チップスタック内でのクロックツリールーティング | |
US10825772B2 (en) | Redundancy scheme for multi-chip stacked devices | |
US11127718B2 (en) | Multi-chip stacked devices | |
US11239203B2 (en) | Multi-chip stacked devices | |
US9030253B1 (en) | Integrated circuit package with distributed clock network | |
US11004833B1 (en) | Multi-chip stacked devices | |
US10886921B1 (en) | Multi-chip stacked devices | |
JP2023506243A (ja) | マルチチップデバイス | |
KR20220062022A (ko) | 다중 칩 적층 디바이스를 위한 중복성 방식 |