KR20190038573A - 적층형 실리콘 상호 연결(ssi) 기술 통합을 위한 독립형 인터페이스 - Google Patents
적층형 실리콘 상호 연결(ssi) 기술 통합을 위한 독립형 인터페이스 Download PDFInfo
- Publication number
- KR20190038573A KR20190038573A KR1020197004856A KR20197004856A KR20190038573A KR 20190038573 A KR20190038573 A KR 20190038573A KR 1020197004856 A KR1020197004856 A KR 1020197004856A KR 20197004856 A KR20197004856 A KR 20197004856A KR 20190038573 A KR20190038573 A KR 20190038573A
- Authority
- KR
- South Korea
- Prior art keywords
- die
- programmable
- region
- ports
- hbm
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L23/00—Details of semiconductor or other solid state devices
- H01L23/52—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames
- H01L23/522—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames including external interconnections consisting of a multilayer structure of conductive and insulating layers inseparably formed on the semiconductor body
- H01L23/525—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames including external interconnections consisting of a multilayer structure of conductive and insulating layers inseparably formed on the semiconductor body with adaptable interconnections
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L23/00—Details of semiconductor or other solid state devices
- H01L23/52—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames
- H01L23/538—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames the interconnection structure between a plurality of semiconductor chips being formed on, or in, insulating substrates
- H01L23/5382—Adaptable interconnections, e.g. for engineering changes
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L23/00—Details of semiconductor or other solid state devices
- H01L23/52—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames
- H01L23/538—Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames the interconnection structure between a plurality of semiconductor chips being formed on, or in, insulating substrates
- H01L23/5383—Multilayer substrates
-
- 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/93—Batch processes
- H01L24/95—Batch processes at chip-level, i.e. with connecting carried out on a plurality of singulated devices, i.e. on diced chips
- H01L24/97—Batch processes at chip-level, i.e. with connecting carried out on a plurality of singulated devices, i.e. on diced chips the devices being connected to a common substrate, e.g. interposer, said common substrate being separable into individual assemblies after connecting
-
- 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/0655—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 the devices being arranged next to each other
-
- 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/10—Bump connectors; Manufacturing methods related thereto
- H01L2224/15—Structure, shape, material or disposition of the bump connectors after the connecting process
- H01L2224/16—Structure, shape, material or disposition of the bump connectors after the connecting process of an individual bump connector
- H01L2224/161—Disposition
- H01L2224/16151—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
- H01L2224/16221—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
- H01L2224/16225—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
-
- 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/10—Bump connectors; Manufacturing methods related thereto
- H01L2224/15—Structure, shape, material or disposition of the bump connectors after the connecting process
- H01L2224/16—Structure, shape, material or disposition of the bump connectors after the connecting process of an individual bump connector
- H01L2224/161—Disposition
- H01L2224/16151—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
- H01L2224/16221—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
- H01L2224/16225—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
- H01L2224/16227—Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation the bump connector connecting to a bond pad of the item
-
- 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/18—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof the devices being of types provided for in two or more different subgroups of the same main group of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2924/00—Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
- H01L2924/0001—Technical content checked by a classifier
- H01L2924/00014—Technical content checked by a classifier the subject-matter covered by the group, the symbol of which is combined with the symbol of this group, being disclosed without further technical details
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2924/00—Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
- H01L2924/10—Details of semiconductor or other solid state devices to be connected
- H01L2924/1015—Shape
- H01L2924/10155—Shape being other than a cuboid
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2924/00—Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
- H01L2924/15—Details of package parts other than the semiconductor or other solid state devices to be connected
- H01L2924/151—Die mounting substrate
- H01L2924/1517—Multilayer substrate
- H01L2924/15192—Resurf arrangement of the internal vias
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
프로그래밍 가능 IC 다이를 변경하지 않고도(예를 들면, 블록을 추가하거나 또는 제거하지 않고도) 현존하는 적합하게 된 적층형 실리콘 상호 연결(SSI) 기술의 프로그래밍 가능 IC 다이(예를 들면, 수퍼 로직 영역(SLR))에 하나 이상의 피처(예를 들면, 고 대역폭 메모리(HBM))를 추가하기 위한 방법 및 장치가 설명된다. 하나의 예시적인 집적 회로(IC) 패키지(200)는 일반적으로, 패키지 기판(202); 패키지 기판(202) 위에 배치되며 복수의 상호 연결 라인(310, 312)을 포함하는 적어도 하나의 인터포저(204); 인터포저(204) 위에 배치되는 프로그래밍 가능 IC 다이(302); 인터포저(204) 위에 배치되는 고정식 피처 다이(304); 및 인터포저(204) 위에 배치되며, 프로그래밍 가능 IC 다이(302)와 인터페이스 다이(306) 사이의, 인터포저(204)를 통해 라우팅되는 제1 세트의 상호 연결 라인(310) 및 인터페이스 다이(306)와 고정식 피처 다이(304) 사이의 인터포저(204)를 통해 라우팅되는 제2 세트의 상호 연결 라인(312)을 사용하여 프로그래밍 가능 IC 다이(302)를 고정식 피처 다이(304)에 커플링하도록 구성되는 인터페이스 다이(306)를 포함한다.
Description
본 개시의 예는 일반적으로 집적 회로에 관한 것으로, 특히, 적층형 실리콘 상호 연결(stacked silicon interconnect; SSI) 기술을 사용하는 집적 회로 패키징에 관한 것이다.
전자 디바이스(예를 들면, 컴퓨터, 랩탑, 태블릿, 복사기, 디지털 카메라, 스마트 폰, 및 등등)는 종종 집적 회로(integrated circuit)(IC, "칩"으로도 또한 알려짐)를 활용한다. 이들 집적 회로는 통상적으로 집적 회로 패키지에 패키징되는 반도체 다이로서 구현된다. 반도체 다이는 메모리, 로직, 및/또는 임의의 다양한 다른 적절한 회로 타입을 포함할 수도 있다.
많은 집적 회로 및 다른 반도체 디바이스는, 패키지를 회로 기판(예를 들면, 인쇄 회로 기판(printed circuit board; PCB))에 표면 실장하기 위한 범프의 배열, 예컨대 볼 그리드 어레이(ball grid array; BGA)를 활용한다. 집적 회로(IC) 다이(또는 다른 패키지 디바이스) 상의 채널과 패키지가 실장되는 회로 기판 사이에서 전기 신호를 도통시키기 위해, 임의의 여러 가지 적절한 패키지 핀 구조체, 예컨대 (적층형 실리콘 상호 연결(SSI) 애플리케이션에서 사용되는 바와 같은) 붕괴 제어식 칩 연결(controlled collapse chip connection; C4) 범프 또는 마이크로범프가 사용될 수도 있다.
본 개시의 하나의 예는 집적 회로(IC) 패키지이다. IC 패키지는 일반적으로, 패키지 기판; 패키지 기판 위에 배치되며 복수의 상호 연결 라인(interconnection line)을 포함하는 적어도 하나의 인터포저(interposer); 인터포저 위에 배치되는 프로그래밍 가능 IC 다이; 인터포저 위에 배치되는 고정식 피처 다이(fixed feature die); 및 인터포저 위에 배치되며, 프로그래밍 가능 IC 다이와 인터페이스 다이 사이의, 인터포저를 통해 라우팅되는 제1 세트의 상호 연결 라인 및 인터페이스 다이와 고정식 피처 다이 사이의, 인터포저를 통해 라우팅되는 제2 세트의 상호 연결 라인을 사용하여 프로그래밍 가능 IC 다이를 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 다이를 포함한다.
옵션 사항으로(optionally), 프로그래밍 가능 IC 다이 및 인터페이스 다이는 동일한 웨이퍼 레벨 기판을 공유할 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 다이 및 인터페이스 다이는 스크라이브 라인(scribe line)에 의해 웨이퍼 레벨 기판 상에서 분리될 수도 있다.
옵션 사항으로, 패키지는, 인터포저를 통해 라우팅되는 상호 연결 라인을 프로그래밍 가능 IC 다이, 인터페이스 다이, 및 고정식 피처 다이 내의 회로와 전기적으로 연결하는 복수의 마이크로범프를 더 포함할 수도 있다.
옵션 사항으로, 인터페이스 다이는 프로그래밍 가능 IC 다이에 대한 제1 세트의 상호 연결 라인 및 마이크로범프의 제1 패턴과 호환 가능할 수도 있고, 또한, 고정식 피처 다이에 대한 제2 세트의 상호 연결 라인 및 마이크로범프의 제2 패턴과 또한 호환 가능할 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 다이는 필드 프로그래밍 가능 게이트 어레이(field programmable gate array; FPGA) 다이를 포함할 수도 있고, 고정식 피처 다이는 고 대역폭 메모리(high bandwidth memory; HBM) 다이를 포함할 수도 있으며, 인터페이스 다이는 HBM 버퍼 다이를 포함할 수도 있다.
옵션 사항으로, 제2 세트의 상호 연결 라인은 HBM JEDEC 표준에 따른 것일 수도 있다.
옵션 사항으로, 고정식 피처 다이는 주문형 반도체(application-specific integrated circuit; ASIC)를 포함할 수도 있다.
옵션 사항으로, 인터포저를 통해 라우팅되는 상호 연결 라인을 통하는 것 이외에는, 프로그래밍 가능 IC 다이와 인터페이스 다이 사이에 어떠한 전기적 연결도 존재하지 않을 수도 있다.
본 개시의 다른 예는 집적 회로 패키지를 제조하는 방법이다. 방법은 일반적으로, 인터페이스 다이와 쌍을 이루는 프로그래밍 가능 IC 다이에 대한 마스크를 제공하는 것 - 인터페이스 다이는 프로그래밍 가능 IC 다이를 고정식 피처 다이에 커플링하기 위한 것임 - ; 마스크를 사용하여, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이를 구비하는 웨이퍼를 생성하는 것; 웨이퍼를 다이싱하여 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이 중 하나를 포함하는 웨이퍼 섹션을 분리하는 것; 및 복수의 상호 연결 라인을 포함하는 인터포저 위에 웨이퍼 섹션을 배치하는 것을 포함하되, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이를 연결하기 위해 제1 세트의 상호 연결 라인이 인터포저를 통해 라우팅되고 인터페이스 다이 및 고정식 피처 다이를 전기적으로 연결하기 위해 제2 세트의 상호 연결 라인이 인터포저를 통해 라우팅된다.
옵션 사항으로, 방법은 인터포저 위에 고정식 피처 다이를 배치하는 것을 더 포함한다.
옵션 사항으로, 방법은, 패키지 기판 위에 인터포저를 배치하는 것 및 고정식 피처 다이, 웨이퍼 섹션, 인터포저, 및 패키지 기판의 적어도 일부분을 캡슐화하여 집적 회로 패키지를 형성하는 것을 더 포함한다.
옵션 사항으로, 방법은 인터포저 위에 복수의 마이크로범프를 배치하는 것을 더 포함하는데, 복수의 마이크로범프는, 인터포저를 통해 라우팅되는 상호 연결 라인을, 프로그래밍 가능 IC 다이, 인터페이스 다이, 및 고정식 피처 다이 내의 회로와 전기적으로 연결한다.
옵션 사항으로, 웨이퍼 섹션 내의 인터페이스 다이는, 프로그래밍 가능 IC 다이에 대한 제1 세트의 상호 연결 라인 및 마이크로범프의 제1 패턴 및 고정식 피처 다이에 대한 제2 세트의 상호 연결 라인 및 마이크로범프의 제2 패턴과 호환 가능할 수도 있다.
옵션 사항으로, 방법은, 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이 각각에서 프로그래밍 가능 IC 다이와 인터페이스 다이 사이에 스크라이브 라인을 형성하는 것을 더 포함한다.
옵션 사항으로, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이는 동일한 웨이퍼 레벨 기판을 공유할 수도 있다.
옵션 사항으로, 고정식 피처 다이는 고 대역폭 메모리(HBM) 다이를 포함할 수도 있고, 인터페이스 다이는 HBM 버퍼 다이를 포함할 수도 있다.
옵션 사항으로, 고정식 피처 다이는 주문형 반도체(ASIC)를 포함할 수도 있다.
본 개시의 여전히 다른 예는 집적 회로 패키지이다. 패키지는 일반적으로, 패키지 기판; 패키지 기판 위에 배치되며 복수의 상호 연결 라인을 포함하는 적어도 하나의 인터포저; 인터포저 위에 배치되는 적어도 하나의 필드 프로그래밍 가능 게이트 어레이(FPGA) 다이; 인터포저 위에 배치되는 하나 이상의 고 대역폭 메모리(HBM) 다이; 및 인터포저 위에 배치되며, FPGA 다이와 HBM 버퍼 다이 사이의, 인터포저를 통해 라우팅되는 제1 세트의 상호 연결 라인 및 HBM 버퍼 다이와 하나 이상의 HBM 다이 사이의, 인터포저를 통해 라우팅되는 제2 세트의 상호 연결 라인을 사용하여, FPGA 다이를 하나 이상의 HBM 다이에 커플링하도록 구성되는 HBM 버퍼 다이를 포함한다. 몇몇 예의 경우, FPGA 다이 및 HBM 버퍼 다이는 동일한 웨이퍼 레벨 기판을 공유한다. 몇몇 예의 경우, FPGA 다이 및 HBM 버퍼 다이는 스크라이브 라인에 의해 웨이퍼 레벨 기판 상에서 분리된다.
본 개시의 여전히 다른 예는 웨이퍼이다. 웨이퍼는 일반적으로 복수의 로직 영역을 포함하는데, 각각의 로직 영역은 인터페이스 다이와 쌍을 이루는 프로그래밍 가능 IC 다이를 포함하고, 인터페이스 다이는 프로그래밍 가능 IC 다이를 고정식 피처 다이에 커플링하기 위한 것이다.
옵션 사항으로, 프로그래밍 가능 IC 다이는 스크라이브 라인에 의해 인터페이스 다이로부터 분리될 수도 있다.
본 개시의 여전히 다른 예는 IC 패키지이다. IC 패키지는 일반적으로, 패키지 기판; 패키지 기판 위에 배치되는 적어도 하나의 인터포저; 인터포저 위에 배치되는 프로그래밍 가능 IC 영역; 인터포저 위에 배치되는 적어도 하나의 고정식 피처 다이; 및 인터포저 위에 배치되며, 인터페이스 영역의 제1의 복수의 포트와 고정식 피처 다이 사이의, 인터포저를 통해 라우팅되는 제1 세트의 상호 연결 라인 및 인터페이스 영역의 제2의 복수의 포트와 프로그래밍 가능 IC 영역 사이에서 라우팅되는 제2 세트의 상호 연결 라인을 통해, 프로그래밍 가능 IC 영역을 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 영역을 포함한다.
옵션 사항으로, 인터페이스 영역은 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서 구성될 수도 있다.
옵션 사항으로, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 임의의 한 포트에 액세스하도록, 제1의 복수의 포트 각각과 제2의 복수의 포트 각각 사이의 전체 어드레스 지정 능력(full addressability)을 제공할 수도 있다.
옵션 사항으로, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 상이한 하나에 액세스하는 바이패스 모드를 제공할 수도 있다.
옵션 사항으로, 스위치 네트워크는 복수의 연결된 풀 크로스바 스위치 네트워크(full crossbar switch network)를 포함하는 계층적 스위치 네트워크로서 구현될 수도 있다.
옵션 사항으로, 스위치 네트워크는 고급 확장 가능 인터페이스(Advanced extensible interface; AXI) 타입 스위치 네트워크로서 구현될 수도 있다.
옵션 사항으로, 스위치 네트워크는 패킷 프로토콜 타입 스위치 네트워크로서 구현될 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 영역 및 인터페이스 영역은 모놀리식 다이(monolithic die)의 일부일 수도 있고, 제2 세트의 상호 연결 라인은 모놀리식 다이의 적어도 하나의 금속배선 층(metallization layer)을 통해 라우팅될 수도 있다.
옵션 사항으로, 제2 세트의 상호 연결 라인 중 어느 것도 인터포저를 통해 라우팅되지 않을 수도 있다.
옵션 사항으로, 제2 세트의 상호 연결 라인의 적어도 일부분은 인터포저를 통해 라우팅될 수도 있고, 프로그래밍 가능 IC 영역 및 인터페이스 영역은 동일한 웨이퍼 레벨 기판을 공유할 수도 있고 스크라이브 라인에 의해 웨이퍼 레벨 기판 상에서 분리될 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 영역은 필드 프로그래밍 가능 게이트 어레이(FPGA) 영역을 포함할 수도 있고, 고정식 피처 다이는 고 대역폭 메모리(HBM) 다이를 포함할 수도 있고, 인터페이스 영역은 HBM 버퍼 영역을 포함할 수도 있고, 제1의 복수의 포트는 HBM 채널을 포함할 수도 있다.
본 개시의 여전히 다른 예는 IC 패키지를 제조하는 방법이다. 방법은 일반적으로, 인터페이스 영역과 쌍을 이루는 프로그래밍 가능 IC 영역에 대한 마스크를 제공하는 것 - 인터페이스 영역은 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하기 위한 것임 - ; 마스크를 사용하여, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역을 구비하는 웨이퍼를 생성하는 것; 웨이퍼를 다이싱하여, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 중 하나를 포함하는 웨이퍼 섹션을 분리하는 것; 및 인터포저 위에 웨이퍼 섹션을 배치하는 것을 포함하되, 인터페이스 영역의 제1의 복수의 포트와 고정식 피처 다이를 전기적으로 커플링하기 위해 제1 세트의 상호 연결 라인이 인터포저를 통해 라우팅되고, 제2 세트의 상호 연결 라인이, 인터페이스 영역의 제2의 복수의 포트를, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 중 프로그래밍 가능 IC 영역에 전기적으로 커플링한다.
옵션 사항으로, 방법은 인터포저 위에 적어도 하나의 고정식 피처 다이를 배치하는 것, 패키지 기판 위에 인터포저를 배치하는 것 및 적어도 하나의 고정식 피처 다이, 웨이퍼 섹션, 인터포저, 및 패키지 기판의 적어도 일부분을 캡슐화하여 집적 회로 패키지를 형성하는 것을 더 포함할 수도 있다.
옵션 사항으로, 인터페이스 영역은 제1의 복수의 포트와 제2의 복수의 포트 사이의 스위치 네트워크로서의 구성이 가능할 수 있을 수도 있다.
옵션 사항으로, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 임의의 한 포트에 액세스하도록, 제1의 복수의 포트 각각과 제2의 복수의 포트 각각 사이의 전체 어드레스 지정 능력을 제공할 수도 있다.
옵션 사항으로, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 상이한 하나에 액세스하는 바이패스 모드를 제공할 수도 있다.
옵션 사항으로, 방법은 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 각각에서 프로그래밍 가능 IC 영역과 인터페이스 영역 사이에 스크라이브 라인을 형성하는 것을 더 포함할 수도 있다.
옵션 사항으로, 고정식 피처 다이는 고 대역폭 메모리(HBM) 다이를 포함할 수도 있고, 인터페이스 영역은 HBM 버퍼 영역을 포함할 수도 있고, 제1의 복수의 포트는 HBM 채널을 포함할 수도 있다.
본 개시의 여전히 다른 예는 웨이퍼이다. 웨이퍼는 일반적으로 복수의 로직 영역을 포함하는데, 각각의 로직 영역은 인터페이스 영역과 쌍을 이루는 프로그래밍 가능 IC 영역을 포함하고, 인터페이스 영역은 프로그래밍 가능 IC 영역을 고정식 피처 다이에 커플링하기 위한 그리고 고정식 피처 다이에 대응하는 제1의 복수의 포트 및 프로그래밍 가능 IC 영역에 대응하는 제2의 복수의 포트를 포함하기 위한 것이다.
옵션 사항으로, 프로그래밍 가능 IC 영역 및 인터페이스 영역은 모놀리식 다이의 일부일 수도 있고, 웨이퍼는 제2의 복수의 포트와 프로그래밍 가능 IC 영역 사이의 모놀리식 다이의 적어도 하나의 금속배선 층을 통해 라우팅되는 복수의 상호 연결 라인을 더 포함할 수도 있다
본 개시의 여전히 다른 예는 장치이다. 장치는 일반적으로, 프로그래밍 가능 IC 영역, 및 적어도 하나의 고정식 피처 다이와 관련되는 제1의 복수의 포트 및 프로그래밍 가능 IC 영역과 관련되는 제2의 복수의 포트를 통해, 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 영역을 포함하되, 인터페이스 영역은 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서 구성되고 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함한다.
옵션 사항으로, 풀 크로스바 스위치 네트워크 각각은, 일 서브세트의 제1의 복수의 포트 및 일 서브세트의 제2의 복수의 포트를 포함한다. 일 서브세트의 제2의 복수의 포트 내의 각각의 포트는, 일 서브세트의 제1의 복수의 포트 내의 임의의 포트에 액세스할 수 있을 수도 있다.
옵션 사항으로, 일 서브세트의 제1의 복수의 포트는 네 개의 포트를 포함할 수도 있고 일 서브세트의 제2의 복수의 포트는 네 개의 포트를 포함할 수도 있다.
옵션 사항으로, 복수의 풀 크로스바 스위치 네트워크의 각각의 인접한 쌍은, 복수의 교차 커플링된 연결을 통해 함께 연결될 수도 있다.
옵션 사항으로, 복수의 교차 커플링된 연결은 적어도 두 개의 외향(outbound) 연결 및 적어도 두 개의 내향(inbound) 연결을 포함할 수도 있다.
옵션 사항으로, 적어도 두 개의 내향 연결 각각은, 일 서브세트의 제1의 복수의 포트 내의 임의의 포트 및 외향 연결 중 적어도 하나에 액세스할 수 있을 수도 있다.
옵션 사항으로, 일 서브세트의 제2의 복수의 포트 내의 각각의 포트는, 일 서브세트의 제1의 복수의 포트 내의 임의의 포트 및 복수의 교차 커플링된 연결 중 적어도 하나에 액세스할 수 있을 수도 있다.
옵션 사항으로, 복수의 풀 크로스바 스위치 네트워크 중 제1의 것은, 일 서브세트의 제1의 복수의 포트 또는 일 서브세트의 제2의 복수의 포트 중 적어도 하나에서, 복수의 풀 크로스바 스위치 네트워크 중 제2의 것과는 상이한 수의 포트를 포함할 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 영역은 복수의 스플리터(splitter)를 구현하도록 구성될 수도 있는데, 복수의 스플리터 각각은, 복수의 풀 크로스바 스위치 네트워크 각각에서 제2의 복수의 포트 중 지정된 포트에 액세스하도록 구성된다.
옵션 사항으로, 복수의 풀 크로스바 스위치 네트워크는 네 개의 풀 크로스바 스위치 네트워크를 포함할 수도 있다. 제2의 복수의 포트는 열여섯 개의 포트를 포함할 수도 있고, 복수의 스플리터는 두 개의 스플리터를 포함할 수도 있고, 그 결과, 두 개의 스플리터 각각은 제2의 복수의 포트 내의 네 개의 지정된 포트에 액세스하도록 구성된다.
옵션 사항으로, 스위치 네트워크는 고급 확장 가능 인터페이스(AXI) 타입 스위치 네트워크 또는 패킷 프로토콜 타입 스위치 네트워크 중 적어도 하나로서 구성될 수도 있다.
본 개시의 여전히 다른 예는 IC 패키지이다. IC 패키지는 일반적으로, 프로그래밍 가능 IC 영역, 및 적어도 하나의 고정식 피처 다이와 관련되는 제1의 복수의 포트 및 프로그래밍 가능 IC 영역과 관련되는 제2의 복수의 포트를 통해, 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 영역을 포함한다. 인터페이스 영역은, 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서 구성되며, 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함할 수도 있다. IC 패키지는, 패키지 기판 및 패키지 기판 위에 배치되는 적어도 하나의 인터포저를 더 포함한다. 적어도 하나의 고정식 피처 다이는 인터포저 위에 배치될 수도 있다. 프로그래밍 가능 IC 영역 및 인터페이스 영역은 인터포저 위에 배치된다. 인터페이스 영역은, 인터페이스 영역의 제1의 복수의 포트와 적어도 하나의 고정식 피처 다이 사이의, 인터포저를 통해 라우팅되는 제1 세트의 상호 연결 라인 및 인터페이스 영역의 제2의 복수의 포트와 프로그래밍 가능 IC 영역 사이에서 라우팅되는 제2 세트의 상호 연결 라인을 통해, 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하도록 구성된다.
옵션 사항으로, 프로그래밍 가능 IC 영역 및 인터페이스 영역은 모놀리식 다이의 일부일 수도 있고, 제2 세트의 상호 연결 라인은 모놀리식 다이의 적어도 하나의 금속배선 층을 통해 라우팅될 수도 있다.
옵션 사항으로, 제2 세트의 상호 연결 라인 중 어느 것도 인터포저를 통해 라우팅되지 않을 수도 있다.
옵션 사항으로, 제2 세트의 상호 연결 라인의 적어도 일부분은 인터포저를 통해 라우팅될 수도 있다. 프로그래밍 가능 IC 영역 및 인터페이스 영역은 동일한 웨이퍼 레벨 기판을 공유할 수도 있고 스크라이브 라인에 의해 웨이퍼 레벨 기판 상에서 분리될 수도 있다.
옵션 사항으로, 프로그래밍 가능 IC 영역은 필드 프로그래밍 가능 게이트 어레이(FPGA) 영역을 포함할 수도 있고, 적어도 하나의 고정식 피처 다이는 적어도 하나의 고 대역폭 메모리(HBM) 다이를 포함할 수도 있고, 인터페이스 영역은 HBM 버퍼 영역을 포함할 수도 있으며, 제1의 복수의 포트는 복수의 HBM 채널과 관련될 수도 있다.
본 개시의 여전히 다른 예는 IC 패키지를 제조하는 방법이다. 방법은 일반적으로, 인터페이스 영역과 쌍을 이루는 프로그래밍 가능 IC 영역에 대한 마스크를 제공하는 것 - 인터페이스 영역은 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하기 위한 것임 - ; 마스크를 사용하여, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역을 구비하는 웨이퍼를 생성하는 것; 웨이퍼를 다이싱하여, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 중 하나를 포함하는 웨이퍼 섹션을 분리하는 것; 및 인터포저 위에 웨이퍼 섹션을 배치하는 것을 포함하되, 인터페이스 영역의 제1의 복수의 포트와 고정식 피처 다이를 전기적으로 커플링하기 위해 제1 세트의 상호 연결 라인이 인터포저를 통해 라우팅되고, 제2 세트의 상호 연결 라인은, 인터페이스 영역의 제2의 복수의 포트를, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 중 프로그래밍 가능 IC 영역에 전기적으로 커플링하고; 인터페이스 영역은, 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서의 구성이 가능할 수 있고; 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함한다.
본 개시의 여전히 다른 예는 웨이퍼이다. 웨이퍼는 일반적으로 복수의 로직 영역을 포함하되, 각각의 로직 영역은 인터페이스 영역과 쌍을 이루는 프로그래밍 가능 IC 영역을 포함하고, 인터페이스 영역은, 프로그래밍 가능 IC 영역을 적어도 하나의 고정식 피처 다이에 커플링하기 위한 그리고 적어도 하나의 고정식 피처 다이에 대응하는 제1의 복수의 포트 및 프로그래밍 가능 IC 영역에 대응하는 제2의 복수의 포트를 포함하기 위한 것이고, 인터페이스 영역은, 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서 구성되고, 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함한다.
본 개시의 여전히 다른 예는, 장치와 고정식 피처 다이 사이에서 신호를 라우팅하기 위한 방법이되, 장치는 프로그래밍 가능 IC 영역 및 프로그래밍 가능 IC 영역을 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 영역을 포함한다. 방법은 일반적으로, 인터페이스 영역의 제1 포트에서 프로그래밍 가능 IC 영역으로부터, 어드레스 부분 및 데이터 부분을 갖는 신호를 수신하는 것 - 제1 포트는 프로그래밍 가능 IC 영역과 관련됨 - ; 어드레스 부분에 기초하여, 신호의 적어도 데이터 부분을, 인터페이스 영역을 통해 인터페이스 영역의 제2 포트 - 제2 포트는 고정식 피처 다이와 관련됨 - 로 라우팅하는 것을 포함하되, 인터페이스 영역은, 제1 포트와 제2 포트 사이에 스위치 네트워크로서 구성되고 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함한다.
옵션 사항으로, 프로그래밍 가능 IC 영역은 필드 프로그래밍 가능 게이트 어레이(FPGA) 영역을 포함할 수도 있고, 고정식 피처 다이는 고 대역폭 메모리(HBM) 다이를 포함할 수도 있고, 인터페이스 영역은 HBM 버퍼 영역을 포함할 수도 있고, 제2 포트는 HBM 채널과 관련될 수도 있다.
옵션 사항으로, 라우팅은 고급 확장 가능 인터페이스(AXI) 프로토콜 또는 패킷 프로토콜 중 적어도 하나를 사용하는 것을 포함할 수도 있다.
옵션 사항으로, 방법은 프로그래밍 가능 IC 영역에서 구현되며 인터페이스 영역의 제1 포트에 액세스하도록 구성되는 스플리터를 통해 신호를 라우팅하는 것을 더 포함할 수도 있다.
이들 및 다른 양태는 다음의 상세한 설명을 참조하여 이해될 수도 있다.
본 개시의 상기 언급된 피처가 상세하게 이해될 수 있는 방식으로, 상기에서 간략하게 요약된 본 개시의 더 많은 특정한 설명이 예를 참조하여 얻어질 수도 있는데, 예 중 일부는 첨부된 도면에서 예시된다. 그러나, 첨부된 도면은 본 개시의 단지 통상적인 예를 예시하며, 따라서, 본 개시가 다른 동등하게 효과가 있는 예를 인정할 수도 있기 때문에, 본 개시의 범위를 제한하는 것으로 간주되지 않아야 한다는 것을 유의해야 한다.
도 1은, 프로그래밍 가능 디바이스에 대한 예시적인 아키텍쳐를 예시하는 블록도이다.
도 2는, 종래 기술에 따른, 적층형 실리콘 상호 연결(SSI) 기술을 활용하는 예시적인 집적 회로(IC) 패키지의 단면도이다.
도 3a 및 도 3b는, 본 개시의 한 예에 따른, 인터페이스 다이를 통해 고정식 피처 다이에 커플링되는 프로그래밍 가능 IC 다이를 포함하는 예시적인 IC 패키지의 일부분의 상면도 및 단면도를 각각 예시한다.
도 4는, 본 개시의 한 예에 따른, 로직 영역의 쌍에 대한 예시적인 마스크를 예시하는데, 각각의 로직 영역은 프로그래밍 가능 IC 다이 및 고 대역폭 메모리(HBM) 버퍼 다이를 포함한다.
도 5a는, 본 개시의 한 예에 따른, HBM 버퍼 다이가 프로그래밍 가능 IC 다이로부터 분리되어 로직 영역을 생성하는 스크라이브 컷을 예시하는, HBM 버퍼 다이와 쌍을 이루는 프로그래밍 가능 IC 다이를 갖는 웨이퍼의 상면도이다.
도 5b는, 본 개시의 한 예에 따른, HBM 버퍼 다이가 프로그래밍 가능 IC 다이와 쌍을 이룬 상태로 남겨두면서 웨이퍼가 다이싱되어 HBM 인터페이스를 갖는 로직 영역을 생성하는 스크라이브 컷을 예시하는, 도 5a의 웨이퍼의 상면도이다.
도 6은, 본 개시의 한 예에 따른, 제1 로직 영역, HBM 인터페이스를 갖는 제2 로직 영역, 및 HBM 다이를 포함하는 SSI 기술을 활용하는 예시적인 IC 패키지의 일부분의 상면도를 예시한다.
도 7은, 본 개시의 한 예에 따른, 예시적인 HBM 버퍼 다이의 블록도이다.
도 8은, 본 개시의 한 예에 따른, IC 패키지를 제조하기 위한 예시적인 동작의 흐름도이다.
도 9는, 본 개시의 한 예에 따른, 각각의 프로그래밍 가능 IC 상호 연결 채널이 하나의 그리고 단지 하나의 HBM 채널에 연결되는 예시적인 HBM 버퍼 영역의 블록도이다.
도 10은, 본 개시의 한 예에 따른, 하나의 프로그래밍 가능 IC 상호 연결 채널이 모든 HBM 채널에 액세스하는 예시적인 HBM 버퍼 영역의 블록도이다.
도 11은, 본 개시의 한 예에 따른, 각각의 그리고 모든 프로그래밍 가능 IC 상호 연결 채널이 모든 HBM 채널에 액세스하는 예시적인 HBM 버퍼 영역의 블록도이다.
도 12는, 본 개시의 한 예에 따른, 프로그래밍 가능 IC 상호 연결 채널과 HBM 채널 사이의 스위치 네트워크의 계층적 구현예를 갖는 예시적인 HBM 버퍼 영역의 블록도이다.
도 13은, 본 개시의 한 예에 따른, HBM 다이에 커플링되는 예시적인 HBM 버퍼 영역의 블록도인데, HBM 버퍼 영역은, HBM 다이 내의 HBM 메모리 컨트롤러에 커플링되는 HBM 채널과 프로그래밍 가능 IC 상호 연결 채널과 사이에 스위치 네트워크를 구비한다.
도 14는, 본 개시의 한 예에 따른, 스위치 네트워크의 예시적인 계층적 구현예를 예시하는, 두 개의 HBM 다이에 커플링되는 도 13의 예시적인 HBM 버퍼 영역의 블록도이다.
도 14a 및 도 14b는, 본 개시의 한 예에 따른, 도 14의 계층적 구현예에서의 상이한 풀 크로스바 스위치 내의 마스터 유닛으로부터 슬레이브 유닛에 액세스하는 예를 예시한다.
도 15a 내지 도 15h는, 본 개시의 한 예에 따른, 도 14의 구현예에서의 예시적인 풀 크로스바 스위치 내의 각각의 마스터 유닛(master unit; MU)의 상이한 액세스 성능을 예시한다.
도 16은, 본 개시의 한 예에 따른, 도 15a 내지 도 15h에서 예시되는 바와 같은 각각의 MU의 상이한 액세스 성능을 정의하는 예시적인 테이블이다.
도 17은, 본 개시의 한 예에 따른, 프로그래밍 가능 IC 상호 연결 채널과 HBM 채널 사이의 스위치 네트워크의 계층적 구현예를 갖는 예시적인 HBM 버퍼 영역과 인터페이싱되는 다수의 스플리터를 예시하는 블록도이다.
도 18은, 본 개시의 한 예에 따른, 라우팅 신호에 대한 예시적인 동작의 흐름도이다.
도 1은, 프로그래밍 가능 디바이스에 대한 예시적인 아키텍쳐를 예시하는 블록도이다.
도 2는, 종래 기술에 따른, 적층형 실리콘 상호 연결(SSI) 기술을 활용하는 예시적인 집적 회로(IC) 패키지의 단면도이다.
도 3a 및 도 3b는, 본 개시의 한 예에 따른, 인터페이스 다이를 통해 고정식 피처 다이에 커플링되는 프로그래밍 가능 IC 다이를 포함하는 예시적인 IC 패키지의 일부분의 상면도 및 단면도를 각각 예시한다.
도 4는, 본 개시의 한 예에 따른, 로직 영역의 쌍에 대한 예시적인 마스크를 예시하는데, 각각의 로직 영역은 프로그래밍 가능 IC 다이 및 고 대역폭 메모리(HBM) 버퍼 다이를 포함한다.
도 5a는, 본 개시의 한 예에 따른, HBM 버퍼 다이가 프로그래밍 가능 IC 다이로부터 분리되어 로직 영역을 생성하는 스크라이브 컷을 예시하는, HBM 버퍼 다이와 쌍을 이루는 프로그래밍 가능 IC 다이를 갖는 웨이퍼의 상면도이다.
도 5b는, 본 개시의 한 예에 따른, HBM 버퍼 다이가 프로그래밍 가능 IC 다이와 쌍을 이룬 상태로 남겨두면서 웨이퍼가 다이싱되어 HBM 인터페이스를 갖는 로직 영역을 생성하는 스크라이브 컷을 예시하는, 도 5a의 웨이퍼의 상면도이다.
도 6은, 본 개시의 한 예에 따른, 제1 로직 영역, HBM 인터페이스를 갖는 제2 로직 영역, 및 HBM 다이를 포함하는 SSI 기술을 활용하는 예시적인 IC 패키지의 일부분의 상면도를 예시한다.
도 7은, 본 개시의 한 예에 따른, 예시적인 HBM 버퍼 다이의 블록도이다.
도 8은, 본 개시의 한 예에 따른, IC 패키지를 제조하기 위한 예시적인 동작의 흐름도이다.
도 9는, 본 개시의 한 예에 따른, 각각의 프로그래밍 가능 IC 상호 연결 채널이 하나의 그리고 단지 하나의 HBM 채널에 연결되는 예시적인 HBM 버퍼 영역의 블록도이다.
도 10은, 본 개시의 한 예에 따른, 하나의 프로그래밍 가능 IC 상호 연결 채널이 모든 HBM 채널에 액세스하는 예시적인 HBM 버퍼 영역의 블록도이다.
도 11은, 본 개시의 한 예에 따른, 각각의 그리고 모든 프로그래밍 가능 IC 상호 연결 채널이 모든 HBM 채널에 액세스하는 예시적인 HBM 버퍼 영역의 블록도이다.
도 12는, 본 개시의 한 예에 따른, 프로그래밍 가능 IC 상호 연결 채널과 HBM 채널 사이의 스위치 네트워크의 계층적 구현예를 갖는 예시적인 HBM 버퍼 영역의 블록도이다.
도 13은, 본 개시의 한 예에 따른, HBM 다이에 커플링되는 예시적인 HBM 버퍼 영역의 블록도인데, HBM 버퍼 영역은, HBM 다이 내의 HBM 메모리 컨트롤러에 커플링되는 HBM 채널과 프로그래밍 가능 IC 상호 연결 채널과 사이에 스위치 네트워크를 구비한다.
도 14는, 본 개시의 한 예에 따른, 스위치 네트워크의 예시적인 계층적 구현예를 예시하는, 두 개의 HBM 다이에 커플링되는 도 13의 예시적인 HBM 버퍼 영역의 블록도이다.
도 14a 및 도 14b는, 본 개시의 한 예에 따른, 도 14의 계층적 구현예에서의 상이한 풀 크로스바 스위치 내의 마스터 유닛으로부터 슬레이브 유닛에 액세스하는 예를 예시한다.
도 15a 내지 도 15h는, 본 개시의 한 예에 따른, 도 14의 구현예에서의 예시적인 풀 크로스바 스위치 내의 각각의 마스터 유닛(master unit; MU)의 상이한 액세스 성능을 예시한다.
도 16은, 본 개시의 한 예에 따른, 도 15a 내지 도 15h에서 예시되는 바와 같은 각각의 MU의 상이한 액세스 성능을 정의하는 예시적인 테이블이다.
도 17은, 본 개시의 한 예에 따른, 프로그래밍 가능 IC 상호 연결 채널과 HBM 채널 사이의 스위치 네트워크의 계층적 구현예를 갖는 예시적인 HBM 버퍼 영역과 인터페이싱되는 다수의 스플리터를 예시하는 블록도이다.
도 18은, 본 개시의 한 예에 따른, 라우팅 신호에 대한 예시적인 동작의 흐름도이다.
본 개시의 예는, 로직 회로를 변경하지 않으면서(예를 들면, 블록을 추가하거나 또는 제거하지 않으면서) 현존하는 적합하게 된(qualified) 적층형 실리콘 상호 연결(SSI) 기술의 로직 회로(예를 들면, 프로그래밍 가능 집적 회로(IC), 예컨대 수퍼 로직 영역(super logic region; SLR))에 하나 이상의 피처(예를 들면, 고 대역폭 메모리(HBM))를 추가하는 기법 및 장치를 제공한다. 로직 회로(예를 들면, HBM 버퍼 및 컨트롤러)에 대한 애플리케이션 인터페이스 및 플러그인 추가는, 로직 회로 다이의 애플리케이션 플러그인 부분 및 인터페이스 다이를 분리하는 표준 스크라이브 라인을 가지고, 마치 이들이 단일의 다이인 것처럼 동일한 마스크 세트 상에서 설계될 수도 있다. 애플리케이션 플러그인과 인터페이스 다이 사이의 연결은, 인터포저 상호 연결(interposer interconnection)을 사용하여 스크라이브를 통해 이루어질 수도 있다.
예제 집적 회로 패키지
집적 회로(IC) 다이는 회로 기판(예를 들면, 인쇄 회로 기판(PCB))과의 전기적 연결을 위해 패키지 내에 통상적으로 배치된다. 이 패키지는 집적 회로 다이를 잠재적인 물리적 손상 및 부식으로 이어질 수도 있는 습기로부터 보호한다.
도 2는 적층형 실리콘 상호 연결(SSI) 기술을 활용하는 예시적인 IC 패키지(200)의 단면도이다. IC 패키지(200)는 패키지 기판(202), 기판(202) 위에 배치되는 인터포저(204), 인터포저(204) 위에 배치되는 복수의 IC 다이(206), 및 캡슐화 재료(encapsulation material)(도시되지 않음)를 포함한다. 캡슐화 재료는, IC 다이(206)를 캡슐화하고 보호하기 위한 여러 가지 적절한 물질 중 임의의 것(예를 들면, 수지)일 수도 있다. IC 다이(206)는, 고도로 제조 가능한 필드 프로그래밍 가능 게이트 어레이(FPGA) 다이 슬라이스를 비롯한, 수퍼 로직 영역(super logic region; SLR)으로 칭해지는 여러 가지 적절한 다이 중 임의의 것을 포함할 수도 있다. 패키지가 네 개보다 더 많은 또는 더 적은 IC 다이를 포함할 수도 있지만, 도 2의 예시적인 IC 패키지(200)에서는 네 개의 IC 다이(206)(IC0 내지 IC3)가 예시된다. SSI 기술은 또한, 상이한 타입 또는 실리콘 프로세스의 다이가 인터포저(204) 상에서 상호 연결되는 것을 허용한다.
인터포저(204)는 IC 다이(206)가 나란히 설정되고 상호 연결되는 상호 연결 수단(interconnect vehicle)으로서 역할을 한다. 인터포저(204)는, 예를 들면, 패시브 실리콘 인터포저(passive silicon interposer)일 수도 있다. 비록 도 2에서는 단지 하나의 인터포저(204)가 예시되지만, IC 패키지(200)는, 몇몇 예의 경우, 인터포저(204) 대신 다수의 인터포저로 구현될 수도 있다. 인터포저(204)는, 인터포저(204)를 통해 높은 대역폭, 낮은 레이턴시 연결을 제공할 수도 있는 복수의 상호 연결 라인(interconnect line)(208)을 포함할 수도 있다. IC 다이(206)의 전기적으로 전도성인 패드를 상호 연결 라인(208)에 연결하기 위해 복수의 마이크로범프(210)가 인터포저(204) 위에 배치될 수도 있다. 인터포저(204)는 또한, 인터포저(204)와 패키지 기판(202) 사이에 배치되는 복수의 공융 범프(eutectic bump)(214)(예를 들면, 붕괴 제어식 칩 연결(C4) 범프)와 IC 다이(206) 사이의 연결을 라우팅하기 위한 복수의 실리콘 관통 비아(through-silicon via; TSV)(212)를 포함할 수도 있다. TSV(212)는, 병렬 및 직렬 I/O, 전원/접지, 클록킹(clocking), 구성 신호, 및 등등을 위해 IC 다이(206)와 기판(202) 사이에서 연결을 제공할 수도 있다. 복수의 공융 범프(214)는 인터포저(204)를 기판(202)에, 특히 기판의 표면 상의 전도성 엘리먼트 및 기판 내의 비아에 전기적으로 연결한다.
IC 패키지(200)는 또한 패키지 기판(202) 아래에 배치되는 복수의 솔더 볼(216)을 구비한다. 솔더 볼(216)은, 예를 들면, 회로 기판(예를 들면, PCB)의 표면 상에 배치되는 전도성 패드의 매칭하는 배열체와 전기적으로 접촉하기 위해, 행 및 열의 어레이로 배열될 수도 있다.
예시적인 프로그래밍 가능 집적 회로
많은 상이한 타입의 집적 회로(IC) 다이(206)가 인터포저(204) 상에 배치되어 IC 패키지(200)로 패키징될 수도 있다. 하나의 적절한 타입의 IC는, 필드 프로그래밍 가능 게이트 어레이(FPGA)와 같은 프로그래밍 가능 IC이다. FPGA는 프로그래밍 가능 타일의 어레이를 통상적으로 포함한다. 이들 프로그래밍 가능 타일은, 예를 들면, 입력/출력 블록(input/output block; IOB), 구성 가능한 로직 블록(configurable logic block; CLB), 전용 랜덤 액세스 메모리 블록(dedicated random access memory block)(BRAM), 승산기(multiplier), 디지털 신호 프로세싱 블록(digital signal processing block; DSP), 프로세서, 클록 매니저, 지연 잠금 루프(DLL), 및 등등을 포함할 수도 있다. 다른 타입의 프로그래밍 가능 IC는 복합 프로그래밍 가능 로직 디바이스(complex programmable logic device), 또는 CPLD이다. CPLD는, 상호 연결 스위치 매트릭스에 의해 함께 연결되며 입력/출력(I/O) 리소스에 연결되는 두 개 이상의 "기능 블록"을 포함한다. CPLD의 각각의 기능 블록은, 프로그래밍 가능 로직 어레이(Programmable Logic Array; PLA) 및 프로그래밍 가능 어레이 로직(Programmable Array Logic; PAL) 디바이스에서 사용되는 것과 유사한 2 레벨 AND/OR 구조체를 포함한다. 다른 프로그래밍 가능 IC는, 디바이스 상의 다양한 엘리먼트를 프로그래밍 가능하게 상호 연결하는 프로세싱 층, 예컨대 금속층을 적용하는 것에 의해 프로그래밍된다. 이들 프로그래밍 가능 IC는 마스크 프로그래밍 가능 디바이스로 알려져 있다. 어구(phrase) "프로그래밍 가능 IC"는, 주문형 반도체(ASIC)와 같은, 부분적으로만 프로그래밍 가능한 디바이스를 또한 포괄할 수도 있다.
도 1은, 도 2의 IC 패키지(200)에서 구현될 수도 있는, 프로그래밍 가능 디바이스에 대한 예시적인 아키텍쳐(100)를 예시하는 블록도이다. 아키텍쳐(100)는, 예를 들면, 필드 프로그래밍 가능 게이트 어레이(FPGA) 내에서 구현될 수도 있다. 도시되는 바와 같이, 아키텍쳐(100)는 몇몇 상이한 타입의 프로그래밍 가능 회로부(circuitry), 예를 들면, 로직 블록을 포함한다. 예를 들면, 아키텍쳐(100)는, 멀티 기가비트 트랜스시버(multi-gigabit transceiver; MGT)(101), 구성 가능한 로직 블록(CLB)(102), 랜덤 액세스 메모리 블록(BRAM)(103), 입력/출력 블록(IOB)(104), 구성 및 클록킹 로직(configuration and clocking logic; CONFIG/CLOCKS)(105), 디지털 신호 프로세싱(DSP) 블록(106), 특수 I/O 블록(107)(예를 들면, 구성 포트 및 클록 포트), 및 기타 프로그래밍 가능 로직(108), 예컨대 디지털 클록 매니저, 아날로그 대 디지털 컨버터(analog-to-digital converter; ADC), 시스템 모니터링 로직, 및 등등을 포함하는 많은 수의 상이한 프로그래밍 가능 타일을 포함할 수도 있다.
몇몇 FPGA에서, 각각의 프로그래밍 가능 타일은, 각각의 인접한 타일 내의 대응하는 프로그래밍 가능 상호 연결 엘리먼트(programmable interconnect element)(INT)(111)로의/로부터의 표준화된 연결을 갖는 INT(111)를 포함한다. 따라서, INT(111)는, 함께 취해져서, 예시된 FPGA에 대한 프로그래밍 가능 상호 연결 구조체를 구현한다. 각각의 INT(111)는 또한, 도 1의 먼 우측에 포함되는 예에 의해 도시되는 바와 같이, 동일한 타일 내의 프로그래밍 가능 로직 엘리먼트로의 그리고 그 프로그래밍 가능 로직 엘리먼트로부터의 연결을 포함한다.
예를 들면, CLB(102)는, 단일의 INT(111)를 더한 유저 로직을 구현하도록 프로그래밍될 수 있는 구성 가능한 로직 엘리먼트(CLE)(112)를 포함할 수도 있다. BRAM(103)은, 하나 이상의 INT(111)에 부가하여, BRAM 로직 엘리먼트(BRAM logic element; BRL)(113)를 포함할 수도 있다. 통상적으로, 타일에 포함되는 INT(111)의 수는 타일의 폭에 의존한다. 도시된 예에서, BRAM 타일은 다섯 개의 CLB와 동일한 폭을 가지지만, 그러나 다른 개수(예를 들면, 네 개)도 또한 사용될 수 있다. DSP 블록(106)은, 적절한 수의 INT(111)에 부가하여, DSP 로직 엘리먼트(DSP logic element; DSPL)(114)를 포함할 수도 있다. IOB(104)는, 예를 들면, INT(111)의 하나의 인스턴스에 부가하여, I/O 로직 엘리먼트(I/O logic element)(IOL)(115)의 두 개의 인스턴스를 포함할 수도 있다. 기술 분야에서의 통상의 지식을 가진 자에게 명백한 바와 같이, 예를 들면, IOL(115)에 연결되는 실제 I/O 패드는 통상적으로 IOL(115)의 영역으로 한정되지 않는다.
도 1에서 묘사되는 예시적인 아키텍쳐(100)에서, 다이의 중앙 부근의 수평 영역(도 1에서 음영으로 도시됨)은, 구성, 클록 및 다른 제어 로직(CONFIG/CLOCKS(105))을 위해 사용된다. 이 중심 영역으로부터 연장되는 다른 수직 영역(109)은, FPGA의 폭에 걸쳐 클록 및 구성 신호를 분배하기 위해 사용될 수도 있다.
도 1에서 예시되는 아키텍쳐(100)를 활용하는 몇몇 FPGA는, FPGA의 큰 부분을 구성하는 보통의 행 구조체(row structure)를 방해하는(disrupt) 추가적인 로직 블록을 포함한다. 추가적인 로직 블록은 프로그래밍 가능 블록 및/또는 전용 회로부일 수도 있다. 예를 들면, PROC(110)로서 묘사되는 프로세서 블록은, CLB(102) 및 BRAM(103)의 몇몇 행에 걸쳐 있다.
PROC(110)는, FPGA의 프로그래밍 가능 회로부를 구현하는 다이의 일부로서 제조되는 하드웨어에 내장된(hard-wired) 프로세서로서 구현될 수도 있다. PROC(110)는, 복잡도에서, 개개의 프로세서(예를 들면, 프로그램 코드를 실행할 수 있는 단일의 코어)로부터 하나 이상의 코어, 모듈, 코프로세서(co-processor), 인터페이스, 또는 등등을 구비하는 전체 프로세싱 시스템까지의 범위에 이르는 다양하고 상이한 프로세서 타입 및/또는 시스템 중 임의의 것을 나타낼 수도 있다.
더욱 복잡한 배열에서, 예를 들면, PROC(110)는 하나 이상의 코어(예를 들면, 중앙 프로세싱 유닛), 캐시 메모리, 메모리 컨트롤러, IC의 I/O 핀(예를 들면, I/O 패드)에 직접적으로 커플링되도록 및/또는 FPGA의 프로그래밍 가능 회로부에 커플링되도록 구성 가능한 양방향 및/또는 단방향 인터페이스를 포함할 수도 있다. 어구 "프로그래밍 가능 회로부"는, IC 내의 프로그래밍 가능 회로 엘리먼트(예를 들면, 본원에서 설명되는 다양한 프로그래밍 가능 또는 구성 가능 회로 블록 또는 타일)뿐만 아니라, FPGA로 로딩되는 구성 데이터에 따라 다양한 회로 블록, 타일, 및/또는 엘리먼트를 선택적으로 커플링하는 상호 연결 회로부를 가리킬 수 있다. 예를 들면, PROC(110)의 외부에 있는 도 1에서 도시되는 부분은, FPGA의 프로그래밍 가능 회로부의 일부, 또는 FPGA의 프로그래밍 가능 회로로 간주될 수도 있다.
도 1은, 프로그래밍 가능 회로부(예를 들면, 프로그래밍 가능 패브릭(programmable fabric)) 및 프로세싱 시스템을 포함하는 FPGA를 구현하기 위해 사용될 수 있는 예시적인 아키텍쳐(100)를 예시하도록 의도된다. 예를 들면, 행에서의 로직 블록의 수, 행의 상대적인 폭, 행의 수 및 순서, 행에 포함되는 로직 블록의 타입, 로직 블록의 상대적인 사이즈, 및 도 1의 우측에서 포함되는 상호 연결/로직 구현예는 예시적인 것이다. 실제 FPGA에서, 예를 들면, 유저 회로 설계의 효율적인 구현을 용이하게 하기 위한 노력으로, CLB가 나타나는 곳마다, CLB(102)의 하나보다 더 많은 인접한 행이 통상적으로 포함된다. 그러나, 인접한 CLB 행의 수는, FPGA의 전체 사이즈에 따라 달라질 수 있다. 또한, FPGA 내의 PROC(110)의 사이즈 및/또는 위치 결정(positioning)은, 예시의 목적을 위한 것에 불과하며, 본 개시의 하나 이상의 예의 제한으로서 의도되지는 않는다.
SSI 기술 통합을 위한 예시적인 독립형 인터페이스
상기에서 설명되는 바와 같이, 적층형 실리콘 상호 연결(SSI) 기술 디바이스는, 종래의 IC 패키지 기술 또는 PCB 기술에서 이용 가능한 것보다 훨씬 더 조밀한 미세 마이크로범프 및 금속 트레이스를 사용하여, 다수의 집적 회로(IC) 다이를 서로 연결하기 위해 인터포저를 사용한다. 추가적인 성능을 갖는 고정식 피처 다이(예를 들면, ASIC)를, PCB를 통해 패키지 핀에 연결되는 종래의 I/O를 사용하여 허용되는 것보다 상당히 더 조밀하고 더 빠른 연결을 갖는 프로그래밍 가능 IC 다이(예를 들면, FPGA SLR)에 연결하는 것에 의해, 소정의 애플리케이션에 대해 SSI 기술을 활용하는 것이 바람직할 수도 있다. 몇몇 예의 경우, 프로그래밍 가능 IC 다이에 추가적인 성능이 추가되어야 하면, 고정식 피처 다이와 일치하는 기능 및 패턴을 갖는 마이크로범프와 인터페이싱하기 위해 고정식 피처 다이에 연결되는 추가적인 회로부(예를 들면, 버퍼)가 프로그래밍 가능 IC 다이에 추가될 필요가 있을 수도 있다. 소정의 애플리케이션의 경우, 새로운 성능을 지원하기 위해 취할 많은 수의 추가적인 연결은, 프로그래밍 가능 IC 아키텍쳐에 대해 아주 방해적일 수도 있고, 로직 및/또는 DSP 블록의 제거 및 클록킹 네트워크에 대한 수정을 수반할 수도 있다. 현존하는, 작동하는 프로그래밍 가능 IC 다이에 대해 이러한 변경이 이루어지면, 전체 다이를 완전히 다시 적합하게 하는(requalify) 것이 바람직할 수도 있는데, 이것은 복잡하고 비용이 많이 든다.
본 개시의 예는, 프로그래밍 가능 IC 아키텍쳐의 이러한 방해 및 재적합화(requalification)를 방지하고, 대신, 프로그래밍 가능 IC 다이를 변경하지 않은 상태로 남겨둔다. 한 면 상에서 프로그래밍 가능 IC 다이(예를 들면 FPGA SLR)의 상호 연결 패턴 및 클록킹 마이크로범프 및 인터포저 상호 연결 데이터와 호환되고, 다른 면 상에서 고정식 피처 다이(들)의 상호 연결 패턴 및 마이크로범프와 호환되는 인터페이스 다이가 설계된다. 인터페이스 다이는, 고정식 피처 프로토콜을, 인터포저 상호 연결 호환 프로토콜(interposer interconnection compatible protocol)로 변환하도록 기능한다. 프로그래밍 가능 IC 다이 및 인터페이스 다이는, 웨이퍼 다이싱 이후, 동일한 웨이퍼 레벨 기판(예를 들면, 반도체 재료의 동일한 단일체(monolith))을 공유할 수도 있지만, 그러나 스크라이브 라인(표준 스크라이브)에 의해 분리될 수도 있다.
도 3a 및 도 3b는, 본 개시의 예에 따른, 인터페이스 다이(306)를 통해 고정식 피처 다이(304)에 커플링되는 프로그래밍 가능 IC 다이(302)를 포함하는 예시적인 IC 패키지의 일부의 상면도 및 단면도를, 각각, (예를 들면, 인터포저 레벨에서) 예시한다. 인터페이스 다이(306)와 쌍을 이루는 프로그래밍 가능 IC 다이(302)의 몇몇 인스턴스를 갖는 웨이퍼를 생성하기 위해, 마스크가 사용될 수도 있다. 다이싱 이후, 도 3b에서 예시되는 바와 같이, 프로그래밍 가능 IC 다이(302) 및 인터페이스 다이(306)는 동일한 웨이퍼 레벨 기판을 공유할 수도 있다. 스크라이브 라인(308)은 프로그래밍 가능 IC 다이(302)로부터 인터페이스 다이(306)를 분리할 수도 있고, 웨이퍼 섹션을 통한 두 개의 다이 사이의 직접적인 전기적 연결은 존재하지 않을 수도 있다. 대신, 프로그래밍 가능 IC 다이(302) 및 인터페이스 다이(306) 내의 회로를 전기적으로 연결하기 위해, 인터포저(204)를 통한 상호 연결 라인(310)의 제1 세트가 사용될 수도 있다. 인터페이스 다이(306)의 한 면은, 마이크로범프(210)의 패턴 및 프로그래밍 가능 IC 다이(302)에 대한 상호 연결 라인(310)의 제1 세트와 호환되도록 설계된다. 고정식 피처 다이(304) 및 인터페이스 다이(306) 내의 회로를 전기적으로 연결하기 위해, 인터포저(204)를 통해 라우팅되는 상호 연결 라인(312)의 제2 세트가 사용될 수도 있다. 인터페이스 다이의 다른 면은, 고정식 피처 다이(304)에 대한 상호 연결 라인(312)의 제2 세트 및 마이크로범프(210)의 패턴과 호환되도록 설계된다. 이러한 방식에서, 인터페이스 다이(306)의 설계 및 인터포저(204)에서의 상호 연결 라인(208)의 사용은, 프로그래밍 가능 IC 다이(302)의 어떠한 변경 없이도, 고정식 피처 다이(304)의 추가적인 성능을, SSI 기술 IC 패키지 안으로 통합하는 것을 허용한다. 따라서, 현존하는, 작동하는 프로그래밍 가능 IC 다이가 다시 적합화될 필요가 없다.
SSI 기술을 활용할 수도 있는 하나의 예시적인 애플리케이션은 고 대역폭 메모리(HBM)를 포함한다. HBM은, 고성능 그래픽 가속기 및 네트워크 디바이스와 같은 여러 가지 적절한 애플리케이션 중 임의의 것에서 사용될 수도 있는, 삼차원(three-dimensional; 3-D) 적층형 동적 랜덤 액세스 메모리(dynamic RAM; DRAM)에 대한 고성능 RAM 인스턴스이다. HBM에서, 최대 여덟 개의 DRAM 다이가 적층될 수도 있는데, 그들은 실리콘 관통 비아(TSV) 및 마이크로범프에 의해 상호 연결될 수도 있다.
HBM 디바이스는, PCB 위의 패키지 핀에 연결되는 종래의 I/O를 사용하여 종래의 DRAM이 허용하는 것보다 여덟 배 내지 열 배(8 내지 10 배) 더 조밀하게 그리고 더 빨리 DRAM을 프로그래밍 가능 IC 다이(예를 들면, FPGA 다이)에 연결하기 위해 SSI 기술을 활용할 수도 있다. HBM이 FPGA에 추가되어야 하면, HBM에 연결되는 FPGA에 버퍼를 추가하는 것이 바람직할 수도 있다. 이들 버퍼는, 인접한 HBM과 일치하는 기능 및 패턴을 갖는 마이크로범프를 구동할 것이다. HBM으로부터 유래하는 데이터는 매우 높은 대역폭(예를 들면, HBM 디바이스당 6 Tbps(terabits per second; 초당 테라비트)를 가질 것이다. 수만 개의 소망되는 연결을 FPGA에 추가하는 것은 FPGA 아키텍쳐에 대해 매우 방해적일 것인데, HBM 버퍼로부터의 연결을 추가하기 위한, FPGA 패브릭의 규칙성으로부터의 로직 및 DSP 블록의 제거를 수반할 것이다. 추가는 또한 FPGA 클록킹 네트워크를 방해할 수도 있다. 새로운 HBM 버퍼를 설계하는 것 외에도, IC 제조사는 또한, HBM 지원을 추가하려는 노력으로, 클록킹, CLE, 및/또는 DSP에 관련되는 새로운 블록을 개발할 수도 있다. 상기에서 설명되는 바와 같이, FPGA(SLR)의 적합화(qualification)는 매우 복잡하다. 더구나, HBM 표준은 통상적인 FPGA 제품의 수명에 걸쳐 변할 것이다는 것이 기대된다. 표준에 대한 변경은, HBM 버퍼와 전체 FPGA(SLR)의 재설계 및 완전한 재적합화를 수반할 수도 있다.
본 개시의 예는, FPGA(SLR)를 변경하지 않고 남겨둔다. 한 면 상에서 FPGA(SLR)의 상호 연결 패턴 및 클록킹 마이크로범프 및 인터포저 상호 연결 데이터와, 그리고 다른 면 상에서 HBM 메모리(또는 메모리)의 상호 연결 패턴 및 마이크로범프와 호환되는 HBM 버퍼 다이가 설계될 수도 있다. HBM 버퍼 다이의 기능은, HBM 프로토콜을, AXI(고급 확장 가능 인터페이스)와 같은 인터포저 상호 연결 호환 프로토콜로 변환하는 것이다. FPGA 및 HBM 버퍼 디바이스는 동일한 웨이퍼 레벨 기판을 공유할 수도 있지만, 그러나, 상기에서 설명되는 바와 같이, 스크라이브 라인에 의해 분리될 수도 있다. 비록 HBM 애플리케이션 및 HBM 버퍼 다이가 본 개시 전반에 걸쳐 예로서 사용되지만, 임의의 적절한 애플리케이션(및 주문형 반도체(ASIC) 다이)이 적절한 인터페이스 다이를 사용하여 SSI 기술 IC 패키지에 통합될 수도 있다는 것이 이해되어야 한다.
도 4는, 본 개시의 한 예에 따른, 로직 영역의 쌍에 대한 예시적인 마스크(400)를 예시한다. 각각의 로직 영역은 프로그래밍 가능 IC 다이(402) 및 HBM 버퍼 다이(404)를 포함한다. 비록 로직 영역의 쌍이 도 4의 예시적인 마스크(400)에서 예시되지만, 마스크는 단지 하나의 로직 영역 또는 두 개보다 더 많은 로직 영역을 가질 수도 있다. 도 4는, 프로그래밍 가능 IC 다이(402) 및 HBM 버퍼 다이(404)를, 동일한 폭(405)을 가지며 스크라이브 라인(406)에 의해 분리되는 것으로 도시한다. 이 스크라이브 라인(406)은 표준 폭을 가질 수도 있다. 다른 예의 경우, HBM 버퍼 다이(404)는 프로그래밍 가능 IC 다이(402)와는 상이한 폭을 가질 수도 있다. HBM 버퍼 다이(404) 및 프로그래밍 가능 IC 다이(402)는, 호환 가능한 인터포저 상호 연결 마이크로범프 패턴을 가질 수도 있다. 도 4의 마스크(400)는 도 5a 및 도 5b에 도시되는 웨이퍼를 제조하기 위해 사용될 수도 있다.
도 5a 및 5b는 하나의 마스크 세트가 두 개의 상이한 로직 영역을 만들기 위해 사용될 수 있는 방법을 예시한다. 도 5a는, 본 개시의 한 예에 따른, HBM 버퍼 다이(504)와 쌍을 이루는 프로그래밍 가능 IC 다이(502)를 포함하는 로직 영역(예를 들면, SLR)을 갖는 웨이퍼(500)의 상면도이다. 점선(dashed line)(506)은, 웨이퍼(500)가 다이싱되고 HBM 버퍼 다이(504)가 프로그래밍 가능 IC(programmable IC; PIC) 다이(502)로부터 분리되는 스크라이브 컷을 나타낸다. 도 5a의 웨이퍼(500)는, 예를 들면, 종래의 SSI 기술 FPGA SLR을 생성하기 위해 사용될 수 있다. 분리된 HBM 버퍼 다이(504)는 폐기될 수도 있다.
도 5b는, 본 개시의 한 예에 따른, HBM 인터페이스를 갖는 웨이퍼(520)의 상면도이다. 웨이퍼(520)는 도 5a의 웨이퍼(500)와 동일한 시작 웨이퍼일 수도 있지만, 그러나 스크라이브 컷은 상이하다. 도 5b의 웨이퍼(520)는, PL 다이(502) 및 HBM 버퍼 다이(504)가 단일의 로직 영역(예를 들면, SLR)으로서 함께 쌍을 이루도록 다이싱된다. HBM 버퍼 및 PL 부분은 스크라이브에 의해 분리될 수도 있고 다이싱된 웨이퍼 섹션에서 어떠한 직접적인 전기적 연결도 가지지 않을 수도 있다. 오히려, 두 부분 사이의 연결은 SSI 인터포저 내의 상호 연결 라인에 의해 이루어질 수도 있다.
인터포저(204) 내의 이들 상호 연결 라인(310)은, 다이 사이에 넓은 고 대역폭 연결을 생성하도록 설계된다. 게다가, 상호 연결 라인(310)은, HBM의 놀라운 대역폭을 흡수하기 위해, 충분한 프로그래밍 가능 로직(예를 들면, FPGA)에 걸쳐 연결의 대역폭을 분배하도록 설계될 수도 있다. 프로그래밍 가능 IC 다이와 HBM 버퍼 다이의 (예를 들면, 스크라이브 라인에 의한) 분리는 또한, 위험을 감소시키도록 그리고 공급 업체(vendor)의 유연성을 증가시키도록 역할을 한다. 이러한 방식에서, HBM 또는 HBM 버퍼 다이의 문제점 또는 HBM 표준에서의 변경은, 프로그래밍 가능 로직의 유용성에 영향을 주지 않을 것이다. 또한, HBM 공급 업체 차이 또는 HBM 표준의 발전으로 인해 HBM 설계가 변경되는 경우, 프로그래밍 가능 로직은 교란될 필요가 없다. 이것은, 특히 인터포저 상호 연결 라인(310)을 통한 HBM 대 PIC 연결이 소프트할 수도 있고 수정을 위한 마스크 변경을 수반하지 않을 수도 있기 때문에, 엄청난 양의 적합화 시간을 절약할 것이다. 상호 연결 라인(310)을 통한 이러한 소프트 연결은 각각의 상호 연결 라인의 단부에서 양방향 드라이버로 구현될 수도 있는데, 이것은 어떤 라인이 연결되는지를 조정하도록 제어될 수 있다.
도 6은, 본 개시의 한 예에 따른, SSI 기술을 활용하는 (예를 들면, 인터포저 레벨에서의) 예시적인 IC 패키지의 일부분의 상면도를 예시한다. IC 패키지의 일부분은 (HBM 버퍼 다이(606)와 쌍을 이루는 제2 프로그래밍 가능 IC 다이(604)를 포함하는) 제2 로직 영역(608)에 커플링되는 제1 로직 영역(602)(제1 프로그래밍 가능 IC 다이를 포함함)을 포함하는데, 여기서 제2 로직 영역은 HBM 인터페이스를 갖는 로직 영역으로 칭해질 수도 있다. HBM 버퍼 다이(606)는 두 개의 HBM 다이(610, 612)에 커플링된다. 비록 프로그래밍 가능 IC 다이(604) 및 HBM 버퍼 다이(606)가 독립적이지만, 이들 다이는 단일의 로직 영역(608)으로서 웨이퍼로부터 다이싱될 수도 있다. 제2 로직 영역(608) 내의 두 개의 다이(604, 606)는, 인터포저(615)를 통해 라우팅되는 상호 연결 라인(614)의 제1 세트를 사용하여 연결될 수도 있다. 프로그래밍 가능 IC 다이(604)와 HBM 버퍼 다이(606) 사이에서 라우팅되는 상호 연결 라인(614)은, 도 2의 IC 다이(206) 사이에서 사용되는 상호 연결 라인(208)과 동일한 타입일 수도 있다. 몇몇 예의 경우, HBM 채널은 디바이스당 8 채널에서 500 Mbps(megabits per second; 초당 메가비트)의 상호 연결 신호를 수반할 수도 있다(1440). 따라서, 로직 영역(602)과 로직 영역(608) 사이에는 1440개의 신호를 갖는 16 개의 프로그래밍 가능 IC 상호 연결 채널이 있을 수도 있다. HBM 버퍼 다이(606)와 HBM 다이(610, 612) 사이의 상호 연결 라인(616)은 인터포저(204)에 대해 HBM JEDEC 표준을 사용할 수도 있다. 몇몇 예의 경우, HBM 디바이스당 8 개의 채널의 2 Gbps(gigabits per second; 초당 기가비트)에서 HBM 채널당 212 개의 상호 연결 라인이 있을 수도 있다.
적절한 프로세스(예를 들면, 65nm 이하)에 대한 인터포저 상호 연결은 HBM 대역폭 및 밀도와 매우 호환될 수도 있다. 도 7은, 본 개시의 한 예에 따른, 예시적인 HBM 버퍼 다이(700)의 상부 레벨(top level) 설계를 도시한다. HBM 버퍼 다이(700)는 도 6의 HBM 버퍼 다이(606)의 하나의 예시적인 구현예일 수도 있다. HBM 다이(610, 612)로부터 유래하는 신호 카운트 및 대역폭은, 프로그래밍 가능 IC(예를 들면, FPGA)에 대한 상호 연결 신호 대역폭에 의해 세밀하게 균형이 맞춰진다. 회로는, HBM 채널(704)과 프로그래밍 가능 IC 상호 연결 채널(706) 사이에 스위치 네트워크(702)(예를 들면, AXI 스위치 네트워크)를 구비할 수도 있다. HBM 설계는 또한, HBM 배치와 프로그래밍 가능 IC 상호 연결 배치가 독립적으로 되는 것을 허용한다.
도 7의 각각의 마스터 유닛(MU)(708)은, 예를 들면, 500 MHz에서 동작하는 512 비트 AXI 버스일 수도 있는데, 이것은 프로그래밍 가능 IC 상호 연결 채널(706)에서 1440 개의 신호의 대부분을 차지할 수도 있다. 각각의 HBM 출력에서의 슬레이브 유닛(SU)(710)은 또한, 예를 들면, 500 MHz에서 동작하는 512 비트 AXI 버스일 수도 있다.
2 Gbps(초당 기가비트)에서의 128 비트의 HBM 애플리케이션은, 500 MHz의 AXI 512 비트 인터페이스로 나타날 수도 있다.
본 개시의 예에서, 로직 회로를 변경하지 않으면서(예를 들면, 블록을 추가하거나 또는 제거하지 않으면서) HBM 메모리 또는 다른 적절한 성능이 현존하는 적합하게 된 SSI 기술 로직 회로에 추가될 수 있다. 로직 회로(예를 들면, HBM 버퍼 및 컨트롤러)에 대한 애플리케이션 인터페이스 및 플러그인 추가는, 로직 회로 다이의 애플리케이션 플러그인 부분 및 인터페이스 다이를 분리하는 표준 스크라이브 라인을 가지고, 마치 이들이 단일의 다이인 것처럼 동일한 마스크 세트 상에서 설계될 수도 있다. 애플리케이션 플러그인과 인터페이스 다이 사이의 연결은, 인터포저 상호 연결(interposer interconnection)을 사용하여 스크라이브를 통해 이루어질 수도 있다.
본 개시의 한 예에 따른, 독립형 인터페이스 접근법에 의해 제공되는 수많은 이점이 있다. 프로그래밍 가능 IC 다이가 다수의 테이프아웃(tapeout)(예를 들면, 엔지니어링 샘플 및 생산)을 가질 수도 있기 때문에, 인터페이스 다이(예를 들면, HBM 버퍼 다이)는 어떠한 추가적인 마스크 비용도 없이 생산을 포함하는 임의의 테이프아웃에 추가될 수 있다. 추가적인 피처(예를 들면, HBM 지원)에 대한 지원을 프로그래밍 가능 IC(예를 들면, FPGA)에 도입하는 것은, 새로운 프로그래밍 가능 IC 설계 및 후속하는 모델링 및 적합화를 수반할 필요가 없다. 인터포저 상호 연결이 이미 지원되고 모델링되어 있기 때문에, 성능(예를 들면, HBM)을 추가하는 것은, IC 패키지 설계자 및/또는 제조자의 다양한 그룹으로부터의 어떠한 추가적인 작업도 수반할 필요가 없다. 설계 지침(예를 들면, HBM 표준) 및 프로그래밍 가능 IC 상에서의 상호 연결 신호에 대한 패턴을 아는 단지 하나의 그룹만이 인터페이스 다이(예를 들면, HBM 버퍼 다이)를 설계하는 것이 가능할 수도 있다. 설계는 또한 외부 공급 업체에게도 매우 이식 가능할 수도 있다. 설계에 대한 미래의 변경(예를 들면, HBM 표준에 대한 개정)은 프로그래밍 가능 IC 설계 또는 적합화에 영향을 줄 필요가 없다. 독립형 인터페이스 설계는 상호 연결 지원을 갖는 임의의 로직 회로에 적용될 수도 있다.
IC 패키지를 제조하기 위한 예시적인 동작
도 8은, 본 개시의 한 예에 따른, IC 패키지를 제조하기 위한 예시적인 동작(800)의 흐름도이다. 동작(800)은, 예를 들면, 반도체 프로세싱 챔버를 포함할 수도 있는, IC 패키지를 제조하기 위한 시스템에 의해 수행될 수도 있다.
동작(800)은, 블록(802)에서, 인터페이스 다이와 쌍을 이루는 프로그래밍 가능 IC 다이에 대한 마스크를 제공하는 것에 의해 시작할 수도 있다. 인터페이스 다이는, 프로그래밍 가능 IC 다이를 적어도 하나의 고정식 피처 다이에 커플링하기 위한 것이다. 블록(804)에서, 마스크는 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이를 구비하는 웨이퍼를 생성하기 위해 사용된다. 블록(806)에서, 웨이퍼는, 복수의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이 중 하나를 포함하는 웨이퍼 섹션을 분리하도록 다이싱될 수도 있다. 블록(808)에서, 웨이퍼 섹션은 복수의 상호 연결 라인을 포함하는 인터포저 위에 배치될 수도 있다. 웨이퍼 섹션에서 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이를 전기적으로 연결하기 위해 제1 세트의 상호 연결 라인이 인터포저를 통해 라우팅될 수도 있다. 인터페이스 다이와 고정식 피처 다이를 전기적으로 연결하기 위해 제2 세트의 상호 연결 라인이 인터포저를 통해 라우팅될 수도 있다.
몇몇 예에 따르면, 동작(800)은 인터포저 위에 고정식 피처 다이를 배치하는 것을 추가로 수반할 수도 있다. 몇몇 예의 경우, 동작은, 패키지 기판 위에 인터포저를 배치하는 것 및/또는 고정식 피처 다이, 웨이퍼 섹션, 인터포저, 및 패키지 기판의 적어도 일부분을 캡슐화하여 집적 회로 패키지를 형성하는 것을 더 수반할 수도 있다. 몇몇 예의 경우, 복수의 마이크로범프가 인터포저 위에 배치될 수도 있다. 이 경우, 복수의 마이크로범프는, 인터포저를 통해 라우팅되는 상호 연결 라인을, 프로그래밍 가능 IC 다이, 인터페이스 다이, 및 고정식 피처 다이 내의 회로와 전기적으로 연결할 수도 있다. 몇몇 예의 경우, 웨이퍼 섹션 내의 인터페이스 다이는, 프로그래밍 가능 IC 다이에 대한 제1 세트의 상호 연결 라인 및 마이크로범프의 제1 패턴과, 그리고 고정식 피처 다이에 대한 제2 세트의 상호 연결 라인 및 마이크로범프의 제2 패턴과 호환된다.
몇몇 예에 따르면, 동작(800)은, 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이 각각 내의 프로그래밍 가능 IC 다이와 인터페이스 다이 사이에서 스크라이브 라인을 형성하는 것을 더 포함할 수도 있다.
몇몇 예에 따르면, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 다이는 동일한 웨이퍼 레벨 기판을 공유한다.
몇몇 예에 따르면, 고정식 피처 다이는 HBM 다이를 포함한다. 이 경우, 인터페이스 다이는 HBM 버퍼 다이를 포함할 수도 있다. 몇몇 예의 경우, 제2 세트의 상호 연결 라인은 HBM JEDEC 표준을 따른다.
몇몇 예에 따르면, 고정식 피처 다이는 주문형 반도체(ASIC)를 포함한다.
몇몇 예에 따르면, 인터포저를 통해 라우팅되는 상호 연결 라인을 통하는 것 이외에는, 웨이퍼 섹션 내의 쌍을 이루는 프로그래밍 가능 IC와 인터페이스 다이 사이에는 어떠한 전기적 연결도 없다.
예시적인 HBM 대역폭 집성 스위치
상기에서 설명되는 바와 같이, HBM은, 고성능 그래픽 가속기 및 네트워크 디바이스와 같은 다양하고 적절한 애플리케이션 중 임의의 것에서 사용될 수도 있는 3-D DRAM용 고성능 RAM 인스턴스이다. HBM에서, 최대 여덟 개의 DRAM 다이가 적층될 수도 있는데, 그들은 실리콘 관통 비아(TSV) 및 마이크로범프에 의해 상호 연결될 수도 있다. HBM 디바이스는, PCB 위의 패키지 핀에 연결되는 종래의 I/O를 사용하여 종래의 DRAM이 허용하는 것보다 여덟 배 내지 열 배(8 내지 10 배) 더 조밀하게 그리고 더 빨리 적층형 DRAM을 프로그래밍 가능 IC 다이에 연결하기 위해 SSI 기술을 활용할 수도 있다. 하나의 HBM 디바이스는, 상당히 높은 대역폭인 1600 Mbps 64 비트 더블 데이터 레이트(double data rate; DDR) 듀얼 인라인 메모리 모듈(dual in-line memory module; DIMM)과 동일한 대역폭을 각각 갖는 16 개의 의사 메모리 채널을 구비할 수 있다.
그러나, HBM 내의 각각의 메모리 채널은 격리된 메모리 어레이로 이어지고, 각각의 HBM 채널은 자신의 파티션 내의 어드레스를 갖는 메모리에만 액세스할 수 있다. HBM 디바이스의 모든 대역폭 및 비트를 완전히 활용하기 위해서, 시스템은, 예를 들면, 각각의 채널에 액세스하는 16 개의 독립적인 에이전트를 구비할 수도 있다. 프로그래밍 가능 IC 내의 시스템이 단지 네 개의 에이전트만을 구비하는 경우, 모든 비트 및 대역폭을 사용하기 위해 각각의 에이전트에 채널의 그룹을 연결하는 것은 매우 어려울 수도 있다. 각각의 에이전트에 대한 HBM 채널의 집성은, 프로그래밍 가능 IC 내에서 실질적인 패브릭 리소스를 활용할 수도 있는데, 이것은 HBM의 대역폭 요건에 의해 더욱 곤란하게 될 수도 있다. HBM 스위치(예를 들면, 스위치 네트워크(702))가 없으면, 각각의 HBM 의사 채널은, 프로그래밍 가능 IC 다이의 경계 상의 입력/출력(I/O)과 패브릭 로직 및 다른 로직 사이의 인터페이스(경계 로직 인터페이스(boundary logic interface; BLI)로 칭해짐)를 통해 프로그래밍 가능 IC 패브릭에 연결될 수도 있다. BLI는, 매우 크고 복잡한 HBM 의사 채널 로직 및 I/O가, 프로그래밍 가능 IC의 패브릭 어레이에서 CLE 또는 DSPL(예를 들면, 도 1의 CLE(112) 또는 DSPL(114))와 같은 훨씬 더 작은 블록으로서 인식되는 것을 허용할 수도 있다.
본 개시의 예는, 프로그래밍 가능 IC 상호 연결 채널(예를 들면, FPGA BLI)과 HBM 의사 채널(pseudo channel; PC) 사이에 스위치(예를 들면, 스위치 네트워크(702))를 활용한다. 몇몇 예의 경우, 스위치는 임의의 프로그래밍 가능 IC 상호 연결 채널이 임의의 HBM 의사 채널(들)에 액세스하는 것을 허용할 수도 있다. 따라서, 어떤 의사 채널로부터 비트가 액세스되든지에 무관하게, 임의의 상호 연결 채널은 HBM 내의 임의의 비트에 액세스할 수 있을 것이다.
현재의 PCB 기반의 설계 환경에서는, 네 개의 64 비트 DDR DIMM을 갖는 것은 패키지 및 PCB 기술의 한계를 압박한다. 몇몇 예의 경우, HBM을 갖는 프로그래밍 가능 IC는, 자신에게 연결되는 열여섯 개에 상당하는 64 비트 DDR DIMM을 허용할 수도 있다. 몇몇 고객 및 애플리케이션은 16 개의 HBM 인터페이스에 대한 용도를 찾을 것이지만, 그러나, 대부분의 애플리케이션은 4 개의 인터페이스를 계속 사용할 것이거나 또는 이것을 8 개로 두 배로 늘릴 수도 있을 가능성이 있다. 따라서, 4 개의 메모리를 소망하는 고객은, 4 개의 HBM 의사 채널의 대역폭 및 비트를 조합하여 가상 메모리를 만들 수도 있다. 4의 네 개의 그룹으로부터 13의 하나의 그룹 및 1의 세 개의 그룹으로의, 등등으로의 많은 조합이 가능하다는 것이 이해되어야 한다. 각각의 HBM 의사 채널(PC)은, 500 MHz에서 실행되는 256 비트 전이중 AXI 버스일 수도 있는 BLI를 통해 프로그래밍 가능 IC의 패브릭 영역에 진입할 수도 있다. 네 개의 HBM 의사 채널 BLI를 조합하는 것은, 프로그래밍 가능 IC의 상당한 리소스를 소비할 수도 있고 매우 어려운 타이밍 클로저(timing closure)를 가질 수도 있다. 프로그래밍 가능 IC 상호 연결 채널(예를 들면, FPGA BLI)과 HBM PC 사이에 스위치를 보강하는 것은, 패브릭 리소스를 절약할 수도 있고 타이밍 클로저 문제를 제거할 수도 있다.
이상적인 스위치 네트워크가 가져야 하는 두 가지 주요 특성이 있다. 첫째, 한가로운 경우, 스위치 네트워크에 대한 모든 BLI 마스터 입력은, 임의의 그리고 모든 HBM 의사 채널 슬레이브 포트에 액세스한다. 둘째, 각각의 BLI가 하나의 그리고 단지 하나의 HBM PC에 직접적으로 연결되는 경우("어피니티 케이스(affinity case)"로 또한 칭해짐), 스위치 네트워크를 통한 레이턴시는 최소화되어야 한다.
도 9는, 본 개시의 한 예에 따른, 어피니티 케이스에 대한 예시적인 HBM 버퍼 영역(900)의 블록도이다. 회로는, HBM 채널(704)(예를 들면, HBM PC)과 프로그래밍 가능 IC 상호 연결 채널(906)(예를 들면, BLI 포트) 사이에 스위치 네트워크(902)를 구비할 수도 있다. 스위치 네트워크(902)에서, 각각의 프로그래밍 가능 IC 상호 연결 채널(906)은 하나의 그리고 단지 하나의 HBM 채널(704)에 직접적으로 연결된다.
도 9의 어피니티 케이스는, HBM 디바이스(들)로부터 이용 가능한 최대 대역폭을 사용하는 애플리케이션이다. 어피니티 케이스를 사용하는 애플리케이션은 가능한 최소 레이턴시를 기대할 수도 있다. 하기에 설명되는 다른 HBM 버퍼 영역의 경우, 도 9에서 예시되는 어피니티 케이스에서 동작하도록 스위치 네트워크(902)를 구성하는 것에 의해, 최소 레이턴시를 위해 스위치를 효과적으로 바이패스하는 것은 한 옵션일 수도 있다.
상기에서 설명되는 다른 예와 유사하게, 본원에서 설명되는 HBM 버퍼 영역(HBM 버퍼 영역(900)을 포함함)은, 한 면 상에서 프로그래밍 가능 IC의 상호 연결 패턴 및 클록킹 마이크로범프 및 인터포저 상호 연결 데이터와 그리고 다른 면 상에서 HBM 메모리(또는 메모리들)의 상호 연결 패턴 및 마이크로범프와 호환될 수도 있다. HBM 버퍼 영역의 기능은, HBM 프로토콜을, AXI(고급 확장 가능 인터페이스)와 같은 인터포저 상호 연결 호환 프로토콜로 변환하는 것이다. 몇몇 예의 경우, 프로그래밍 가능 IC 및 HBM 버퍼 영역(900)은 동일한 웨이퍼 레벨 기판을 공유할 수도 있지만, 그러나, 상기에서 설명되는 바와 같이, 스크라이브 라인에 의해 분리되고 그들 사이의 연결을 위해 인터포저에 의존할 수도 있다. 이 경우, HBM 버퍼 영역(900)은 별개의 HBM 버퍼 다이일 수도 있다. 다른 예의 경우, HBM 버퍼 영역(900)은 단일의 모놀리식 다이에서 프로그래밍 가능 IC와 통합될 수도 있다. 이 경우, 프로그래밍 가능 IC 및 HBM 버퍼는, 그들 사이의 연결을 위해 인터포저에 의존할 필요가 없고, 몇몇 예의 경우, 프로그래밍 가능 IC와 HBM 버퍼를 연결하기 위한 인터포저를 통해 라우팅되는 어떠한 전기적 연결도 존재하지 않을 수도 있다. 대신, HBM 버퍼 회로부를 프로그래밍 가능 IC 회로부와 연결하기 위해, IC 금속배선이 사용될 수도 있다. IC 금속배선은 하나 이상의 금속배선 층을 활용할 수도 있다. 다른 예의 경우, 프로그래밍 가능 IC 회로부를 HBM 버퍼 회로부와 연결하기 위해, IC 금속배선 및 인터포저 상호 연결 라인의 조합이 활용될 수도 있다.
스위치 네트워크(902)는, 예를 들면, AXI 타입 스위치 네트워크 또는 패킷 프로토콜 타입 스위치 네트워크일 수도 있다. AXI 타입 스위치 네트워크에서, 신호는 각각의 마스터 유닛(708)으로부터 구동될 수도 있고 중재기(arbiter)에 의해 제어되는 멀티플렉서(MUX)에 의해 공통 어드레스/데이터/제어 버스 상으로 멀티플렉싱될 수도 있다. 멀티플렉서의 출력은, 슬레이브 유닛(710)으로 팬아웃될(fanned-out) 수도 있다. 버스는, 데이터, 어드레스 및 제어 신호를 MUX 구조체를 통해 개별적으로 전송한다. 중재 시스템과 함께 어드레스 및 제어는 데이터 버스를 일련의 MUX 및 버퍼를 통해 마스터 유닛(708)으로부터 슬레이브 유닛(710)으로 지향시킨다. 패킷 프로토콜 타입 스위치 네트워크에서, 데이터, 어드레스, 및 제어는 패킷에서 흐름 제어 숫자("플릿"으로도 또한 칭해짐)의 세트와 결합될 수도 있다. 패킷은, 예를 들면, 플릿에 기초하여 마스터 유닛(708)으로부터 슬레이브 유닛(710)으로 전송될 수도 있다.
도 10은, 본 개시의 한 예에 따른, 하나의 프로그래밍 가능 IC 상호 연결 채널(906A)이 모든 HBM 채널(704)에 액세스하도록 스위치 네트워크(902)가 구성되는 예시적인 HBM 버퍼 영역(1000)을 묘사한다. 이러한 방식에서, 이 특정한 채널(906A)은 전체 어드레스 지정 능력을 갖는다. 그러나, 이 경우, 대역폭은 HBM PC에 의해서가 아니라 BLI 포트에 의해 제한될 수도 있다. 특정한 프로그래밍 가능 IC 상호 연결 채널은, 다른 예에서, 상호 연결 채널(906) 중 임의의 하나일 수 있다는 것이 이해되어야 한다.
도 11은, 본 개시의 한 예에 따른, 각각의 그리고 모든 프로그래밍 가능 IC 상호 연결 채널(906)이 모든 HBM 채널(704)에 액세스하도록 스위치 네트워크(902)가 구성되는 예시적인 HBM 버퍼 영역(1100)을 묘사한다. "풀 크로스바 스위치"로 칭해지는, 이 타입의 스위치는, 도 9와 10에서 예시되는 경우 둘 모두 및 그 사이의 모든 조합을 구현할 수 있다. 비록 풀 크로스바 스위치가 매우 유연하지만, 그것은 두 가지 단점을 갖는다. 첫째, 풀 크로스바 스위치는, 심지어 하드 블록으로 구현되는 경우에도, 액세스 경로의 다양한 조합을 실현하기 위해 매우 큰 구현예를 가질 것이다. 둘째, 어피니티 케이스를 포함하는 모든 경로의 레이턴시가 상대적으로 높을(즉, 느린 경로) 것이기 때문에, 그 결과, 풀 크로스바 스위치는 상당한 레이턴시를 가질 것이다.
풀 크로스바 스위치에 대한 하나의 대안예는 계층적 스위치이다. 도 12는, 본 개시의 한 예에 따른, 스위치 네트워크(902)가 프로그래밍 가능 IC 상호 연결 채널(906)과 HBM 채널(704) 사이에서 계층적 스위치를 구현하도록 구성되는 예시적인 HBM 버퍼 영역(1200)을 예시한다. 이 예시적인 구현예에서, 계층적 스위치는, 인접한 풀 크로스바 스위치 사이에 교차 커플링된 연결(1214)을 갖는, 두 개의 5:5 풀 크로스바 스위치(1210) 및 두 개의 6:6 풀 크로스바 스위치(1212)를 포함한다. 배열체는 여전히 도 9의 어피니티 케이스 및 도 11의 전체 어드레스 지정 능력 경우를 제공한다. 비록 두 개의 5:5 풀 크로스바 스위치(1210) 및 두 개의 6:6 풀 크로스바 스위치(1212)가 도 12에서 예시되지만, 여러 가지 적절한 풀 크로스바 구성 중 임의의 것이 대안예(예를 들면, 두 개의 9: 9 풀 크로스바 스위치, 또는 두 개의 3: 3 풀 크로스바 스위치와 여섯 개의 4: 4 풀 크로스바 스위치)에서 계층적 스위치를 구현하기 위해 사용될 수도 있다는 것이 이해되어야 한다. 계층적 스위치에 대한 전체 어드레스 지정 능력 경우 레이턴시는, 프로그래밍 가능 IC 상호 연결 채널(906)과 HBM 채널(704) 사이에서 종속 접속되는(cascaded) 스위치의 수의 함수이다. 6:6 풀 크로스바 스위치가 16:16 풀 크로스바 스위치(도 11에서 예시됨)보다 상당히 적은 레이턴시를 가지기 때문에, 계층적 스위치를 갖는 어피니티 케이스는 상당히 적은 레이턴시를 갖는다.
도 11의 유연한 구현예에서, 풀 크로스바 스위치는 모든 마스터 유닛(708)과 슬레이브 유닛(710) 사이에 "전용" 경로를 제공한다. 따라서, 어떠한 차단(blocking)도 없다. 대조적으로 도 12의 계층적 스위치는 몇몇 차단을 갖는다. 차단의 하나의 예는, 가장 좌측의 5:5 풀 크로스바 스위치(1210) 내의 마스터 유닛(708) 중 두 개가, 가장 좌측의 6:6 풀 크로스바 스위치(1212) 내의 두 개의 슬레이브 유닛(710)에 액세스하기를 원하는 경우이다. 이 경우, 스위치 네트워크(702)를 통하는 경로 둘 모두는, 가장 좌측의 5:5 풀 크로스바 스위치(1210)와 가장 좌측의 6:6 풀 크로스바 스위치(1212) 사이의 교차 커플링된 연결(1214) 중 하나를 공유할 것이다. 두 개의 마스터 유닛(708)이 동일한 리소스를 동시에 사용할 수 없기 때문에, 경로 중 하나는, 가장 좌측의 6:6 풀 크로스바 스위치(1212) 내의 슬레이브 유닛(710)에 대한 다른 경로의 액세스를 "차단"한다고 말해진다.
차단을 방지하기 위해, 다수의 전략이 활용될 수도 있다. 하나의 전략은, 마스터 유닛(708)을 시퀀스화하는 양호한 스케줄러를 갖는 것을 수반하는데, 그 결과, 하나의 마스터 유닛은 다른 것을 차단하지 않는다. 다른 전략은, 혼잡 지점에서(예를 들면, 교차 커플링된 연결(1214)에서)에서 버퍼를 사용하는 것을 수반한다. 버퍼에서, 스위치에 의해 수신되는 후속하는 데이터 세트는, 스위치 리소스가 빌(free) 때까지(예를 들면, 스위치에 의해 수신된 이전 데이터 세트가 소거됨) 버퍼링될 수 있다.
상기에서 제시되는 예에 기초하여, 본 개시의 예는, 최소 차단 및 레이턴시 특성을 갖는 임의의 채널로부터의 전체 어드레스 지정 능력 및 양호한 어피니티 레이턴시를 갖는 무수한 스위치 구현예를 제공한다. 더구나, 몇몇 예시적인 스위치 구현예는 어피니티 바이패스 모드(affinity bypass mode)를 제공할 수도 있다. 어피니티 바이패스 모드는, 스위치 아키텍쳐와는 독립적으로, 가장 낮은 가능한 레이턴시를 갖는 어피니티 케이스를 제공할 수도 있다.
도 8을 다시 참조하면, 상기에서 설명되는 바와 같이 블록(808)에서 인터포저 위에 웨이퍼 섹션을 배치하는 대신, 동작(800)은, 대안적으로, 인터포저 위에 웨이퍼 섹션을 배치하는 것을 수반할 수도 있는데, 인터페이스 영역의 제1의 복수의 포트 및 고정식 피처 다이를 전기적으로 연결하기 위해 제1 세트의 상호 연결 라인이 인터포저를 통해 라우팅되고, 제2 세트의 상호 연결 라인이, 인터페이스 영역의 제2의 복수의 포트를, 웨이퍼 섹션 내의 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 중 프로그래밍 가능 IC 영역에 전기적으로 커플링한다.
몇몇 예에 따르면, 제2 세트의 상호 연결 라인의 적어도 일부분은 인터포저를 통해 라우팅된다.
몇몇 예에 따르면, 프로그래밍 가능 IC 영역 및 인터페이스 영역은 모놀리식 다이의 일부이다. 이 경우, 제2 세트의 상호 연결 라인은, 모놀리식 다이의 적어도 하나의 금속배선 층을 통해 라우팅될 수도 있다. 몇몇 예의 경우, 제2 세트의 상호 연결 라인 중 어느 것도 인터포저를 통해 라우팅되지 않는다.
몇몇 예에 따르면, 동작(800)은 인터포저 위에 적어도 하나의 고정식 피처 다이를 배치하는 것을 추가로 수반할 수도 있다. 이 경우, 동작(800)은, 패키지 기판 위에 인터포저를 배치하는 것 및 적어도 하나의 고정식 피처 다이, 웨이퍼 섹션, 인터포저, 및 패키지 기판의 적어도 일부분을 캡슐화하여 집적 회로 패키지를 형성하는 것을 추가로 수반할 수도 있다.
몇몇 예에 따르면, 인터페이스 영역은 제1의 복수의 포트와 제2의 복수의 포트 사이에 스위치 네트워크로서의 구성이 가능하다. 몇몇 예의 경우, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 임의의 한 포트에 액세스하도록, 제1의 복수의 포트 각각과 제2의 복수의 포트 각각 사이의 전체 어드레스 지정 능력을 제공한다. 몇몇 예의 경우, 스위치 네트워크는, 제2의 복수의 포트 각각이 제1의 복수의 포트 중 상이한 하나에 액세스하는 바이패스 모드를 제공한다. 몇몇 예의 경우, 스위치 네트워크는, 복수의 연결된 풀 크로스바 스위치 네트워크로 구성될 수도 있는 계층적 스위치 네트워크로서 구현된다. 몇몇 예의 경우, 스위치 네트워크는 AXI 타입 스위치 네트워크로서 구현된다. 다른 예의 경우, 스위치 네트워크는 패킷 프로토콜 타입 스위치 네트워크로서 구현된다.
몇몇 예에 따르면, 동작(800)은, 쌍을 이룬 프로그래밍 가능 IC 및 인터페이스 영역 각각에서 프로그래밍 가능 IC 영역과 인터페이스 영역 사이에 스크라이브 라인을 형성하는 것을 더 포함한다.
몇몇 예에 따르면, 고정식 피처 다이는 HBM 다이이다. 이 경우, 인터페이스 영역은 HBM 버퍼 영역일 수도 있고, 제1의 복수의 포트는 HBM 채널(예를 들면, HBM PC)을 포함할 수도 있다. 제2의 복수의 포트는, 프로그래밍 가능 IC 상호 연결 채널을 포함할 수도 있다.
예시적인 계층적 스위치 구현예
상기에서 설명되는 바와 같이, HBM 디바이스(예를 들면, HBM 디바이스의 제2 세대의 경우, "HBM 디바이스" 또는 "HBM Gen2"로 칭해짐) 각각은, 16 비트의 독립 채널로 분할되는 1024 비트 데이터 버스를 지원할 수도 있다. 이들 HBM 의사 채널 각각은, HBM 디바이스 어드레스 공간의 1/16만을 액세스할 수도 있다. 따라서, HBM 버퍼 영역은, 단일의 "커널"(예를 들면, 프로그래밍 가능 IC의 유저 소프트 로직에서의 상호 연결 채널)이 (예를 들면, 도 10에서 예시되는 바와 같은 1×16 크로스바 스위치를 사용하여) HBM 디바이스의 임의의 부분에 액세스할 수 있게 되는 것을 허용하는 스위치 네트워크를 포함할 수도 있다. 프로그래밍 가능 IC가 n 개의 HBM 디바이스를 지원하면, 이 스위치 네트워크는 1×16n 크로스바 스위치(예를 들면, 두 개의 HBM 디바이스를 지원하기 위한 1×32 크로스바 스위치)로 확장될 수도 있다. (2Gbps에서 실행하는) HBM Gen2의 경우, 각각의 HBM 의사 채널은 (예를 들면, HBM 데이터 레이트의 1/4 주파수에서 실행하는) 256 비트 데이터 버스이다.
32 개의 커널이 두 개의 HBM 디바이스에 액세스할 수도 있다는 것을 가정하면, (예를 들면, 도 11에서 예시되는 바와 같은) 풀 크로스바 스위치 구현예는, 256 비트 데이터 버스를 갖는 32×32 풀 크로스바 스위치를 수반할 수도 있다. 이러한 풀 크로스바 스위치는, 면적 및 전력 측면에서 구현하기에 비용이 매우 많이 들 수도 있다. 여러 가지 프로그래밍 가능 IC/HBM 사용 사례는, HBM 어드레스 공간에 대한 통합 액세스를 암시할 수도 있지만, 그러나, 모든 사용 사례가 통합된 어드레스 지정(unified addressing)으로 전체 대역폭을 지정하는 것은 아니다. 더구나, HBM 스위치 상호 연결 모두를 프로그래밍 가능 IC의 소프트 로직에서 갖는 것도 또한 비용이 매우 많이 들 수도 있고 성능 병목을 생성할 수도 있다.
상기에서 설명되는 바와 같이, 풀 크로스바 스위치에 대한 하나의 대안예는 (예를 들면, 도 12에서 예시되는 바와 같은) 계층적 스위치이다. 본 개시의 예는 이러한 계층적 스위치에 대한 여러 가지 적절한 구현예를 제공한다.
각각의 HBM 메모리 스택은, 여덟 개의 128 비트 폭의 독립적인 메모리 파티션으로 분할될 수도 있다. 이들 독립적인 메모리 파티션 각각은, 독립적인 클록 및 타이밍, 독립적인 커맨드, 및 독립적인 메모리 어레이를 구비할 수도 있다. 다시 말하면, 하나의 메모리 파티션에서 발생하는 것은 다른 메모리 파티션에 영향을 미치지 않을 수도 있다. 이들 여덟 개의 파티션 각각은 두 개의 64 비트 폭의 독립적인 파티션으로 추가로 세분될 수도 있는데, 이것은 인터페이스(예를 들면, AXI 인터페이스), 예컨대 본원에서 설명되는 바와 같은 스위치 네트워크를 통해 호스트(예를 들면, 프로그래밍 가능 IC의 패브릭)와 연결될 수도 있다. 이들 세분(subdivision) 각각은 HBM 의사 채널(예를 들면, HBM 채널(704))로 칭해진다.
도 13은, 본 개시의 한 예에 따른, 예시적인 HBM 다이(1304)에 커플링되는 예시적인 HBM 버퍼 영역(1302)의 블록도이다. HBM 버퍼 영역(1302)은, (예를 들면, 프로그래밍 가능 IC의 패브릭으로부터의) 16 개의 프로그래밍 가능 IC 상호 연결 채널(906)과 16 개의 HBM 채널(704) 사이에 스위치 네트워크를 가지고 구현될 수도 있다. HBM 다이(1304)는, 복수의 메모리 컨트롤러(1306)(여덟 개가 도시되며, MC0 내지 MC7로 라벨링됨), 메모리 컨트롤러(1306)에 커플링되는 물리적 레이어(PHY)(1308), PHY(1308)에 커플링되는 입력/출력 레이어(IO)(1310)를 포함한다.
상기의 설명에서, 각각의 메모리 스택은 16 개의 AXI 슬레이브를 포함할 수도 있다. (예를 들면, 도 11의 풀 크로스바 스위치 또는 도 12의 계층적 스위치에서 예시되는 바와 같은) AXI 포트의 16 마스터 16 슬레이브 크로스바(16-master-by-16-slave crossbar)가, 각각의 마스터 포트(예를 들면, 각각의 마스터 유닛(708))로부터의 전체 메모리 공간 액세스를 갖는 전체 의사 채널당 제어(full per-pseudo-channel control)를 제공할 것이다. 다수의 HBM 메모리 스택의 경우, 이 크로스바 스위치가 확장될 수도 있다. 예를 들면, 두 개의 HBM 메모리 스택에서, 크로스바 스위치는, 도 14에서 예시되는 바와 같이, 32×32 AXI 포트로 확장될 수도 있다.
도 14는, 본 개시의 한 예에 따른, 복제되어 두 개의 HBM 다이(1304)에 커플링되는 도 13의 예시적인 HBM 버퍼 영역(1302) 및 스위치 네트워크의 블록도(1400)를 제공한다. 스위치 네트워크는, 그들 사이의 상호 연결을 위해, 파이프라인(1402)을 통해 함께 커플링될 수도 있다. 이 경우, 32 개의 프로그래밍 가능 IC 상호 연결 채널(906)이 존재할 수도 있는데, 각각은 32 개의 HBM 채널(704) 중 임의의 것에 액세스할 수 있다.
도 14의 블록도(1450)는 복제된 스위치 네트워크의 예시적인 계층적 구현예를 예시한다. 각각의 스위치 네트워크는, 네 개의 풀 크로스바 스위치(1452)를 가지고 구현된다. 각각의 풀 크로스바 스위치(1452)는 (대응하는 프로그래밍 가능 IC 상호 연결 채널(906)에 커플링될 수도 있는) 네 개의 마스터 포트(예를 들면, MU(708))에 그리고 (대응하는 HBM 채널(704)에 커플링될 수도 있는) 네 개의 대응하는 슬레이브 포트(예를 들면, SU(710))에 커플링될 수도 있다. 32 개의 프로그래밍 가능 IC 상호 연결 채널(906) 및 32 개의 HBM 채널에서, 여덟 개의 풀 크로스바 스위치(1452)는, 묘사되는 바와 같이, 32 개의 마스터 포트(M0 내지 M31로 라벨링됨) 및 32 개의 슬레이브 포트(S0 내지 S31로 라벨링됨)에 커플링될 수도 있다.
인접한 풀 크로스바 스위치(1452)의 각각의 쌍은, 교차 커플링된 연결(1453)을 통해 연결될 수도 있다. 예를 들면, 인접한 풀 크로스바 스위치(1452) 사이의 교차 커플링된 연결(1453)은 네 개의 연결을 포함할 수도 있다: 좌측에서 우측으로 두 개의 연결 및 우측에서 좌측으로 두 개의 연결. 이들 각각은, 각각의 풀 크로스바 스위치(1452)의 관점에 따라, 외향 연결 또는 내향 연결로 간주될 수도 있다. 두 개의 스위치 네트워크는 파이프라인(1454)을 통해 상호 연결될 수도 있는데, 파이프라인(1454)은 교차 커플링된 연결(1453)과 유사한 연결을 가지고 구현될 수도 있다. 블록도(1450)에서 단부 상의 풀 크로스바 스위치(1452)는 상이한 풀 크로스바 스위치에 커플링되지 않는다. 따라서, 몇몇 예의 경우, 단부 상의 풀 크로스바 스위치(1452)는, 어떠한 인접한 풀 크로스바 스위치와도 관련되지 않은 측 상에서 자신에게 커플링되는 교차 커플링된 연결(1453)을 가지지 않을 수도 있다. 다시 말하면, 단부 상의 풀 크로스바 스위치(1452)는 하나의 인접한 풀 크로스바 스위치에 교차 커플링될 수도 있고, 반면 스위치 네트워크의 중간에 있는 풀 크로스바 스위치는, 도 14에서 예시되는 바와 같이, 두 개의 인접한 풀 크로스바 스위치에 교차 커플링될 수도 있다. 다른 예에서, 단부 상의 풀 크로스바 스위치(1452)는, 어떠한 인접한 풀 크로스바 스위치와도 관련되지 않는 측 상에서 교차 커플링된 연결(1453)을 가질 수도 있지만, 그러나 이들 교차 커플링된 연결은 그 밖의 다른 것에는 커플링되지 않는다.
도 15a 내지 도 15h는, 본 개시의 한 예에 따른, 도 14의 구현예의 예시적인 풀 크로스바 스위치(1452) 내의 각각의 마스터 포트(예를 들면, MU(708)) 및 마스터 교차 커플링 연결 포트(master cross-coupled connection port)의 상이한 액세스 성능을 예시한다. 도 16은, 본 개시의 한 예에 따른, 도 15a 내지 도 15h에서 예시되는 바와 같이, 각각의 마스터 포트 및 마스터 교차 커플링 연결 포트의 상이한 액세스 성능을 정의하는 예시적인 테이블(1600)이다. 테이블(1600)에서, 행과 열의 교차점에 있는 "1"은, 그 행 내 마스터 포트 또는 마스터 교차 커플링 연결 포트가, 교차점에 대응하는 그 열 내의 슬레이브 포트 또는 슬레이브 교차 커플링 연결 포트(slave cross-coupled connection port)에 액세스할 수 있다는 것을 나타낸다. 교차점에 있는 "0"은, 액세스 성능이 없음을 나타낸다. 몇몇 예의 경우, 이들 액세스 성능은 (예를 들면, 각각의 풀 크로스바 스위치(1452)에서의) 할당된 하드웨어 연결에 따라 강제될 수도 있다; 다시 말하면, 액세스 성능이 없는 소정의 포트 사이에서 이용 가능한 어떠한 하드웨어 연결도 존재하지 않을 수도 있다.
비록 도 15a 내지 도 15h 중 임의의 것이, 도 14의 블록도(1450) 내의 풀 크로스바 스위치(1452) 중 임의의 하나를 나타낼 수도 있지만, 도 15a 내지 도 15h 각각은 네 개의 마스터 포트(M0 내지 M3으로 라벨링됨) 및 네 개의 슬레이브 포트(S0 내지 S3으로 라벨링됨)를 예시한다. 풀 크로스바 스위치(1452)의 좌측 상의 교차 커플링된 연결(1453)은, 이 특정한 스위치의 관점에서, 두 개의 내향 포트(예를 들면, 좌측의 마스터 교차 커플링 연결 포트, LM_0 및 LM_1로 라벨링됨) 및 두 개의 외향 포트(예를 들면, 좌측의 슬레이브 교차 커플링 연결 포트, LS_0 및 LS_1로 라벨링됨)를 포함한다. 풀 크로스바 스위치(1452)의 우측 상의 교차 커플링된 연결(1453)은, 두 개의 내향 포트(예를 들면, 우측의 마스터 교차 커플링 연결 포트, RM_0 및 RM_1로 라벨링됨) 및 두 개의 외향 포트(예를 들면, 우측의 슬레이브 교차 커플링 연결 포트, RS_0 및 RS_1로 라벨링됨)를 포함한다.
마스터 포트(예를 들면, 상단 입력(top input)) 각각은, 여섯 개의 포트 각각(예를 들면, 네 개의 하단 출력(bottom output), 하나의 좌측 출력, 및 하나의 우측 출력)에 액세스할 수 있을 수도 있다. 예를 들면, 도 15a에서의 마스터 포트 0(M0)은 슬레이브 포트(S0 내지 S3), LS_0, 또는 RS_0 중 임의의 것에 액세스할 수 있다. 도 15b에서의 마스터 포트 1(M1) 라우팅은, 도 16의 테이블(1600)과 일치하여, 도 15a와 유사하다. 다른 예로서, 도 15c의 마스터 포트 2(M2)는, S0 내지 S3, LS_1, 또는 RS_1 중 임의의 것에 액세스할 수 있다. 도 15d의 마스터 포트 3(M3) 라우팅은 도 15c와 유사하다.
마스터 교차 커플링된 연결 포트(예를 들면, 측면 입력) 각각은, 다섯 개의 포트 각각(예를 들면, 네 개의 하단 출력 및 풀 크로스바 스위치(1452)의 반대 편 상에 있는 하나의 측면 출력)에 액세스할 수 있을 수도 있다. 풀 크로스바 스위치(1452)의 반대 편 상에 있는 측면 출력은, 마스터 교차 커플링 연결 포트에 대응하는 슬레이브 교차 커플링 포트일 수도 있다. 예를 들면, 도 15e의 LM_1은, S0 내지 S3 또는 RS_1 중 임의의 것에 액세스할 수 있고, 도 15f의 LM_0은, S0 내지 S3 또는 RS_0 중 임의의 것에 액세스할 수 있고, 도 15g의 RM_0은, S0 내지 S3 또는 LS_0 중 임의의 것에 액세스할 수 있고, 도 15h의 RM_1은 S0 내지 S3 또는 LS_1 중 임의의 것에 액세스할 수 있다.
도 14에서 네 개의 4×4 풀 크로스바 스위치(1452)로서 구현되고 있는 각각의 스위치 네트워크는 단지 예로서 제공된다. 스위치 네트워크를 구현하기 위해, (예를 들면, 네 개 이외의) 상이한 수의 크로스바 스위치가 사용될 수도 있다. 더구나, 풀 크로스바 스위치 중 하나, 다수, 또는 모두는, 자신과 관련되는 (예를 들면, 네 개 이외의) 상이한 수의 마스터 포트 및/또는 슬레이브 포트를 구비할 수도 있다. 예를 들면, 16×16 스위치 네트워크는, 두 개의 3×3 풀 크로스바 스위치와 두 개의 5×5 풀 크로스바 스위치를 가지고 구현될 수도 있다. 더구나, 도 15a 내지 도 15h 및 도 16의 테이블(1600)에서 예시되는 상이한 액세스 성능도 또한 단지 예로서 제공된다. 예시되는 다양한 마스터 포트 및 마스터 교차 커플링 연결 포트 각각은, 특히 풀 크로스바 스위치가 상이한 수의 마스터 포트, 상이한 수의 마스터 교차 커플링 연결 포트, 상이한 수의 슬레이브 포트, 및/또는 상이한 수의 슬레이브 교차 커플링 연결 포트를 가지고 구현되는 경우, 상이한 액세스 성능을 가질 수도 있다.
상기에서 설명되는 바와 같이, 스위치 네트워크는 AXI 타입 스위치 네트워크로서 또는 패킷 프로토콜 타입 스위치 네트워크로서 구현될 수도 있다. 프로그래밍 가능 IC 소프트 로직(예를 들면, 커널 마스터)은 각각의 인스턴스(예를 들면, 각각의 패킷)에 대한 어드레스 및 데이터 비트를 가질 수도 있는데, 각각의 인스턴스는, 어드레스에 기초하여 적절한 프로그래밍 가능 IC 상호 연결 채널 및 관련된 마스터 포트로 라우팅된다. 이 동일한 어드레스에 기초하여, 스위치 네트워크는, AXI 또는 패킷 프로토콜을 사용하여, 인스턴스를 적절한 슬레이브 포트(및 관련된 HBM 채널)로 라우팅할 수도 있다.
도 14의 블록도(1450)에서 예시되는 계층적 스위치 네트워크의 구현예의 경우, 마스터 어드레스 및 AXI ID는, 프로그래밍 가능 IC 패브릭으로부터의 모든 가능한 마스터에 걸쳐 균일한 연속적인 어드레스 지정을 제공하도록 수정될 수도 있다. AXI 스위치 어드레스 디코딩은 N 비트만큼 확장될 수도 있는데, 여기서 N = log2(슬레이브의 수)이다. 따라서, 두 개의 HBM 스택에 걸친 32 개의 슬레이브의 경우, 슬레이브 타겟을 선택하기 위해 N = 5 확장 어드레스 비트가 사용될 수도 있다.
보강된 스위치를 간단히 하기 위해, 32 비트의 고정된 바이트 어드레스가 HBM 의사 채널마다 할당될 수도 있고, 따라서, 스위치 풀 어드레스 공간은 N + 32 비트이다.
주어진 HBM 메모리 스택에서의 실제 채널당 및 총 어드레스 공간은, 스위치에서 제공되는 32 비트보다 더 작은 또는 동일한 어드레스 지정을 수반할 수도 있다. 단지 P(여기서, P < 32) 어드레스 비트만을 활용하는 스위치에서, 32-P 개의 "0" 비트가 호스트에 의해 삽입되어 슬레이브 어드레스를 총 32 비트로 확장시킬 수도 있다. 예를 들면, 슬레이브당 단지 29 비트의 어드레스 지정만을 활용하는 HBM 구성은 호스트 어드레스 {N 비트, 29 비트}를 생성할 수도 있다. 그 다음, 이 어드레스는 스위치에 대한 연결 이전에, {N 비트, b000, 29 비트}로 확장될 수도 있다.
보강된 스위치 내에서, 어드레스는 균일한 어드레스 지정을 제공하도록 추가로 매핑될 수도 있다. 예를 들면, 마스터 포트 번호 M은, 슬레이브 선택 어드레스 S로부터 감산되어 부호가 있는 재매핑 슬레이브 선택(signed remapped slave select)을 형성할 수도 있다. 이 재매핑된 값 S' = S - M은, N + 1 비트의 부호가 있는 번호이다. 음의(negative) S'는 현재의 마스터 번호보다 더 작은 슬레이브 번호를 어드레스 지정하고, 반면 양의 S'는 현재 마스터 번호보다 더 큰 슬레이브 번호를 어드레스 지정한다. 예를 들면, -4의 S'은 현재 마스터 연결보다 4 위치 더 낮은 슬레이브 포트를 어드레스 지정한다.
N 개의 슬레이브를 포괄하는 마스터 어드레스 확장 외에도, 마스터 AXI ID는 또한 N 비트만큼 확장되어 슬레이브로부터 다시 마스터로의 응답 및 리턴 데이터를 매핑할 수도 있다. 이 확장은, 각각의 마스터(예를 들면, {N, AXI ID})의 입력에서 확장된 ID에 의해 달성될 수도 있다. 이 AXI ID 확장은, 임의의 마스터에 대한 슬레이브 경로로의 고정된 라우팅과 함께, AXI 커맨드를 적절하게 라우팅할 임의의 추가적인 스위치 AXI ID 태그를 불필요하게 만들 수도 있다.
도 14의 32×32 계층적 크로스바 스위치 구현예로 돌아가면, 임의의 마스터 포트는 임의의 슬레이브 포트에 액세스할 수 있고, 그러므로, 임의의 HBM 의사 채널에 액세스할 수 있다. 예를 들면, 도 14a는 상이한 풀 크로스바 스위치(1452)에서 슬레이브 포트 11(S11)에 액세스하는 마스터 포트 1(M1)을 예시한다. 이 예에서, M1로부터의 라우팅은 도 15b의 라우팅과 매치하고, S11이 우측의 상이한 풀 크로스바 스위치(1452)에 있기 때문에, M1은 출력 포트(RS_0)로 라우팅된다. 마스터 포트 4 내지 7(M4 내지 M7)을 갖는 풀 크로스바 스위치(1452)에서, (교차 커플링된 연결(1453)을 통해 M1을 갖는 풀 크로스바 스위치의 출력 포트(RS_0)에 연결되는) 입력 포트(LM_0)는 도 15f에서의 라우팅에 따라 출력 포트(RS_0)로 라우팅된다. 마스터 포트 8 내지 11(M8 내지 M11)을 갖는 풀 크로스바 스위치(1452)에서, (M4 내지 M7을 갖는 풀 크로스바 스위치의 출력 포트(RS_0)에 연결되는) 입력 포트(LM_0)는 도 15f의 라우팅에 따라 S11로 라우팅된다(이 경우, S3은 S11에 대응할 것임).
다른 예로서, 도 14b는, 파이프라인(1454)을 통해, 상이한 풀 크로스바 스위치(1452) 내의 슬레이브 포트 6(S6)에 액세스하는 그리고 상이한 HBM 다이(1304)와 관련되는 마스터 포트 23(M23)를 예시한다. 이 예에서, M23은 M3에 대응할 것이고, 따라서, M23으로부터의 라우팅은 도 15d의 라우팅과 매치한다. S6이 좌측의 상이한 풀 크로스바 스위치(1452)에 있기 때문에, M23은 도 15d에서의 라우팅에 따라 출력 포트(LS_1)로 라우팅된다. 마스터 포트 16 내지 19(M16 내지 M19)를 갖는 풀 크로스바 스위치(1452)에서, (교차 커플링된 연결(1453)을 통해 M23을 갖는 풀 크로스바 스위치의 출력 포트(LS_1)에 연결되는) 입력 포트(RM_1)는 도 15h에서의 라우팅에 따라 출력 포트(LS_1)로 라우팅된다. 마찬가지로, 마스터 포트 12 내지 15(M12 내지 M15) 및 마스터 포트 8 내지 11(M8 내지 M11)을 갖는 풀 크로스바 스위치(1452)에서, (M16 내지 M19 및 M12 내지 M15를 각각 갖는 풀 크로스바 스위치의 출력 포트(LS_1)에 연결되는) 입력 포트(RM_1)는 도 15h에서의 라우팅에 따라 출력 포트(LS_1)로 라우팅된다. M4 내지 M7을 갖는 풀 크로스바 스위치(1452)에서, (M8 내지 M11을 갖는 풀 크로스바 스위치의 출력 포트(LS_1)에 연결되는) 입력 포트(RM_1)는 도 15h에서의 라우팅에 따라 S6으로 라우팅된다(이 경우 S2는 S6에 대응할 것임).
비록 임의의 마스터 포트가 상기에서 설명되는 바와 같이 임의의 슬레이브 포트에 액세스할 수 있지만, 단면 대역폭은 이 구현예에 충당되는 채널 수에 의해 제한될 수도 있다. FPGA와 같은 프로그래밍 가능 IC에서, HBM에 액세스하는 마스터 유닛의 관점에서, 더 많은 대역폭이 소망될 수도 있다. 몇몇 예에 따르면, 처리량을 증가시키기 위해, "채널 편성(channel ganging)"으로 칭해지는 기법이 사용될 수도 있다.
도 17은, 본 개시의 한 예에 따른, 도 14의 두 개의 스위치 네트워크 중 하나에 대한 채널 편성(channel ganging)의 개념을 예시하는 블록도(1700)이다. 이 예에서, 프로그래밍 가능 IC는, HBM 의사 채널을 액세스하고자 하는 프로그래밍 가능 IC 내의 마스터인 다수의 커널 마스터(1702)를 포함할 수도 있다. 각각의 커널 마스터(1702)는 스플리터/라우터(1704)에 커플링될 수도 있고, 커널 마스터 및 스플리터/라우터 둘 모두는 소프트 로직으로 구현될 수도 있다. 도 17의 예에서, 네 개의 의사 채널(예를 들면, S0 내지 S3과 관련되는 채널)이 함께 편성되어 하나의 4 채널 폭의 채널(quad-width channel)로 취급되도록, 16 개의 HBM 의사 채널(슬레이브 포트 S0 내지 S15에 커플링됨)이 그룹화된다. 따라서, 채널 편성을 갖는 커널 마스터(1702)는, 채널 편성이 없는 커널 마스터와 비교하여, 1/4의 수의 HBM 채널을 유효하게 보게 된다. 따라서, 풀 크로스바 스위치(1452) 중 네 개로 구현되는 16×16 계층적 스위치 네트워크 대신, 채널 편성은 전체 액세스 및 증가된 대역폭을 갖는 이중 4×4 스위치 네트워크를 제공한다. 하나의 4×4 스위치 네트워크는 최하위 비트least significant bit; (LSB), 및 등등에 대해 사용될 수도 있다.
채널 편성 및 스플리터/라우터(1704)을 통해, 요청은 스플리터/라우터로부터 특정한 사분면(예를 들면, 네 개의 풀 크로스바 스위치(1452) 중 하나)으로 라우팅될 것이지만, 그러나 이 사분면의 좌측 또는 우측으로는 라우팅되지 않을 것이다. 상기에서 설명되는 바와 같이, 각각의 사분면은 위에서부터 4×4 연결된다. 이 문제에서 스플리터/라우터(1704)를 활용하는 것에 의해, 좌측 및/또는 우측 대역폭은 불필요하지만, 그러나 16×16 스위치 네트워크의 동등한 액세스가 여전히 달성된다. 스플리터/라우터(1704) 각각은, 풀 크로스바 스위치(1452) 각각 내의 지정된 마스터 포트에 액세스하도록 구성될 수도 있다. 예를 들면, 하나의 스플리터/라우터(1704)는, 도 17에서 묘사되는 바와 같이, M0, M4, M8 및 M12(각각의 풀 크로스바 스위치(1452)의 상단 입력의 가장 좌측)에 액세스하도록 구성될 수도 있다. 다른 스플리터/라우터(1704)는 도시되는 바와 같이 M1, M5, M9 및 M13에 액세스하도록 구성될 수도 있다.
프로그래밍 가능 IC의 패브릭 기반의 소프트 로직 내에서, 임의의 수의 AXI 마스터가, 예를 들면, AXI 브리지 중재를 통해, 각각의 AXI 스위치 마스터 포트에 커플링될 수도 있다. 이러한 유연성은, 스위치 포트마다 다수의 AXI ID를 지원하는 것 및 각각의 마스터 포트와 내부 글로벌 스위치 클록 사이에 동기화를 제공하는 것에 의해 용이하게 될 수도 있다. 다수의 AXI ID에 대한 지원은, 다수의 독립적인 프로세싱 커널의 더 용이한 집중을 제공할 수도 있다.
본 개시의 몇몇 예는, (i) 임의의 유저 커널에 대한 모든 HBM 어드레스 공간으로의 통합된 액세스, (ii) 그룹화된 채널(예를 들면, 편성된 4 채널의 채널) 내의 전체 대역폭, 및 (iii) 통합된 어드레스 지정 가능 HBM을 전반에 걸쳐 보강하기 위한 프로그래밍 가능 IC 패브릭으로의 스위치 상호 연결 확장을, 부분적으로 채워진 8×8 크로스바(또는 256 비트 데이터 버스)에 기초한 스위치 네트워크에게 제공한다.
신호를 라우팅하기 위한 예시적인 동작
도 18은, 본 개시의 한 예에 따른, 장치와 고정식 피처 다이 사이에서 신호를 라우팅하기 위한 예시적인 동작(1800)의 흐름도이다. 동작(1800)은, 예를 들면, 상기에서 설명되는 바와 같은, 프로그래밍 가능 IC 영역, 및 프로그래밍 가능 IC 영역을 고정식 피처 다이에 커플링하도록 구성되는 인터페이스 영역을 포함하는 장치에 의해 수행될 수도 있다.
동작(1800)은, 블록(1802)에서, 인터페이스 영역의 제1 포트가, 프로그래밍 가능 IC 영역으로부터, 어드레스 부분 및 데이터 부분을 갖는 신호를 수신하는 것으로 시작될 수도 있다. 제1 포트는 프로그래밍 가능 IC 영역과 관련될 수도 있다. 블록(1804)에서, 신호의 적어도 데이터 부분은, 어드레스 부분에 기초하여, 인터페이스 영역을 통해 인터페이스 영역의 제2 포트로 라우팅될 수도 있다. 제2 포트는 고정식 피처 다이와 관련될 수도 있다. 인터페이스 영역은 제1 포트와 제2 포트 사이에 스위치 네트워크로서 구성될 수도 있고, 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크를 포함할 수도 있다.
몇몇 예에 따르면, 프로그래밍 가능 IC 영역은 FPGA 영역을 포함하고, 고정식 피처 다이는 HBM 다이를 포함한다. 이 경우, 인터페이스 영역은 HBM 버퍼 영역을 포함할 수도 있고, 제2 포트는 HBM 채널과 관련될 수도 있다.
몇몇 예에 따르면, 블록(1804)에서의 라우팅은 AXI 프로토콜 또는 패킷 프로토콜 중 적어도 하나를 사용하는 것을 수반한다.
몇몇 예에 따르면, 동작(1800)은 프로그래밍 가능 IC 영역에서 구현되는 스플리터를 통해 신호를 라우팅하는 것을 추가로 수반한다. 스플리터는 인터페이스 영역의 제1 포트에 액세스하도록 구성될 수도 있다.
본원(후속하는 청구범위를 포함함)에서 사용될 때, 아이템의 리스트"의 적어도 하나"를 가리키는 어구는, 단일의 멤버를 비롯한, 그들 아이템의 임의의 조합을 가리킨다. 한 예로서, "x, y 또는 z: 중 적어도 하나"는, x, y, z, x-y, x-z, y-z, x-y-z, 및 그들의 임의의 조합(예를 들면, x-y-y 및 x-x-y-z)을 포괄하도록 의도된다.
전술한 내용이 본 개시의 예를 대상으로 하지만, 본 개시의 다른 그리고 추가적인 예가, 본 개시의 기본 범위로부터 벗어나지 않으면서 고안될 수도 있고, 본 개시의 범위는 후속하는 청구범위에 의해 결정된다.
Claims (15)
- 집적 회로(integrated circuit; IC) 패키지에 있어서,
패키지 기판;
상기 패키지 기판 위에 배치되는 적어도 하나의 인터포저(interposer);
상기 인터포저 위에 배치되는 프로그래밍 가능 IC 영역(programmable IC region);
상기 인터포저 위에 배치되는 고정식 피처 다이(fixed feature die); 및
상기 인터포저 위에 배치되는 인터페이스 영역으로서, 상기 프로그래밍 가능 IC 영역과 상기 인터페이스 영역 사이의, 상기 인터포저를 통해 라우팅되는 제1 세트의 상호 연결 라인(interconnection line)들 및 상기 인터페이스 영역과 상기 고정식 피처 다이 사이의, 상기 인터포저를 통해 라우팅되는 제2 세트의 상호 연결 라인들을 통해, 상기 프로그래밍 가능 IC 영역을 상기 고정식 피처 다이에 커플링하도록 구성되는 상기 인터페이스 영역
을 포함하는, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 프로그래밍 가능 IC 영역 및 상기 인터페이스 영역은 동일한 웨이퍼 레벨 기판을 공유하고, 스크라이브 라인(scribe line)에 의해 상기 웨이퍼 레벨 기판 상에서 분리되는 것인, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 인터포저를 통해 라우팅되는 상기 제1 세트의 상호 연결 라인들 및 상기 제2 세트의 상호 연결 라인들을, 상기 프로그래밍 가능 IC 영역, 상기 인터페이스 영역, 및 상기 고정식 피처 다이 내의 회로들과 전기적으로 연결하는 복수의 마이크로범프들을 더 포함하고, 상기 인터페이스 영역은 상기 프로그래밍 가능 IC 영역에 대한 상기 제1 세트의 상호 연결 라인들 및 상기 마이크로범프들의 제1 패턴과 호환되고, 상기 고정식 피처 다이에 대한 상기 제2 세트의 상호 연결 라인들 및 상기 마이크로범프들의 제2 패턴과 호환되는 것인, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 프로그래밍 가능 IC 영역은 필드 프로그래밍 가능 게이트 어레이(field programmable gate array; FPGA) 영역을 포함하고, 상기 고정식 피처 다이는 고 대역폭 메모리(high bandwidth memory; HBM) 다이를 포함하며, 상기 인터페이스 영역은 HBM 버퍼 영역을 포함하는 것인, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 인터포저를 통해 라우팅되는 상기 제1 세트의 상호 연결 라인들을 통하는 것 이외에는, 상기 프로그래밍 가능 IC 영역과 상기 인터페이스 영역 사이에 어떠한 전기적 연결도 존재하지 않는 것인, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 프로그래밍 가능 IC 영역 및 상기 인터페이스 영역은 모놀리식 다이(monolithic die)의 일부이고;
상기 제1 세트의 상호 연결 라인들은 상기 모놀리식 다이의 적어도 하나의 금속배선 층(metallization layer)을 통해 라우팅되며;
상기 제1 세트의 상호 연결 라인들 중 어느 것도 상기 인터포저를 통해 라우팅되지 않는 것인, 집적 회로(IC) 패키지. - 제1항에 있어서,
상기 제1 세트의 상호 연결 라인들은, 상기 인터페이스 영역의 제1의 복수의 포트들과 상기 프로그래밍 가능 IC 영역 사이에서 라우팅되고;
상기 제2 세트의 상호 연결 라인들은, 상기 인터페이스 영역의 제2의 복수의 포트들과 상기 고정식 피처 다이 사이의 인터포저를 통해 라우팅되며;
상기 인터페이스 영역은 상기 제1의 복수의 포트들과 상기 제2의 복수의 포트들 사이에 스위치 네트워크로서 구성되는 것인, 집적 회로(IC) 패키지. - 제7항에 있어서,
상기 스위치 네트워크는, 상기 제1의 복수의 포트들 각각이 제2의 복수의 포트들 중 임의의 한 포트에 액세스하도록, 상기 제1의 복수의 포트들 각각과 상기 제2의 복수의 포트들 각각 사이의 전체 어드레스 지정 능력(full addressability)을 제공하는 것인, 집적 회로(IC) 패키지. - 제8항에 있어서,
상기 스위치 네트워크는 복수의 풀 크로스바 스위치 네트워크(full crossbar switch network)들을 포함하는 계층적 스위치 네트워크(hierarchical switch network)로서 구현되는 것인, 집적 회로(IC) 패키지. - 제9항에 있어서,
상기 풀 크로스바 스위치 네트워크들 각각은 일 서브세트의 상기 제1의 복수의 포트들 및 일 서브세트의 상기 제2의 복수의 포트들을 포함하고;
상기 일 서트세트의 제1의 복수의 포트들 내의 각각의 포트는, 상기 일 서브세트의 제2의 복수의 포트들 내의 임의의 포트에 액세스할 수 있는 것인, 집적 회로(IC) 패키지. - 제10항에 있어서,
상기 복수의 풀 크로스바 스위치 네트워크들의 각각의 인접한 쌍은, 복수의 교차 커플링된 연결(cross-coupled connection)들을 통해 함께 연결되는 것인, 집적 회로(IC) 패키지. - 제11항에 있어서,
상기 일 서브세트의 제1의 복수의 포트들 내의 각각의 포트는, 상기 일 서브세트의 제2의 복수의 포트들 내의 임의의 포트 및 상기 복수의 교차 커플링된 연결들 중 적어도 하나에 액세스할 수 있는 것인, 집적 회로(IC) 패키지. - 제9항에 있어서,
상기 프로그래밍 가능 IC 영역은 복수의 스플리터(splitter)들을 구현하도록 구성되고, 상기 복수의 스플리터들 각각은, 상기 복수의 풀 크로스바 스위치 네트워크들 각각에서 상기 제1의 복수의 포트들 중 지정된 포트에 액세스하도록 구성되는 것인, 집적 회로(IC) 패키지. - 제8항에 있어서,
상기 스위치 네트워크는, 상기 제1의 복수의 포트들 각각이 상기 제2의 복수의 포트들 중 상이한 한 포트에 액세스하는 바이패스 모드를 제공하는 것인, 집적 회로(IC) 패키지. - 제7항에 있어서,
상기 스위치 네트워크는, 고급 확장 가능 인터페이스(Advanced eXtensible Interface; AXI) 타입 스위치 네트워크 또는 패킷 프로토콜 타입 스위치 네트워크로서 구현되는 것인, 집적 회로(IC) 패키지.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/237,384 | 2016-08-15 | ||
US15/237,384 US10784121B2 (en) | 2016-08-15 | 2016-08-15 | Standalone interface for stacked silicon interconnect (SSI) technology integration |
US15/346,512 US9911465B1 (en) | 2016-11-08 | 2016-11-08 | High bandwidth memory (HBM) bandwidth aggregation switch |
US15/346,512 | 2016-11-08 | ||
US15/616,004 | 2017-06-07 | ||
US15/616,004 US10916516B2 (en) | 2017-06-07 | 2017-06-07 | High bandwidth memory (HBM) bandwidth aggregation switch |
PCT/US2017/043096 WO2018034787A1 (en) | 2016-08-15 | 2017-07-20 | Standalone interface for stacked silicon interconnect (ssi) technology integration |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190038573A true KR20190038573A (ko) | 2019-04-08 |
KR102381158B1 KR102381158B1 (ko) | 2022-03-30 |
Family
ID=59506368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197004856A KR102381158B1 (ko) | 2016-08-15 | 2017-07-20 | 적층형 실리콘 상호 연결(ssi) 기술 통합을 위한 독립형 인터페이스 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP3497722B1 (ko) |
JP (1) | JP7084377B2 (ko) |
KR (1) | KR102381158B1 (ko) |
CN (1) | CN109564914B (ko) |
WO (1) | WO2018034787A1 (ko) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10763862B1 (en) | 2019-02-26 | 2020-09-01 | Xilinx, Inc. | Boundary logic interface |
CN111725187B (zh) * | 2020-07-01 | 2022-05-31 | 无锡中微亿芯有限公司 | 基于通用结构硅连接层构成的多裸片fpga |
CN111710663B (zh) * | 2020-07-01 | 2021-12-07 | 无锡中微亿芯有限公司 | 一种多裸片硅堆叠互连结构fpga |
CN111710662B (zh) * | 2020-07-01 | 2022-03-22 | 无锡中微亿芯有限公司 | 一种通用多裸片硅堆叠互连结构 |
CN111755437B (zh) * | 2020-07-01 | 2022-05-31 | 无锡中微亿芯有限公司 | 利用硅连接层形成片上网络的fpga装置 |
CN111722089B (zh) * | 2020-07-01 | 2022-03-22 | 无锡中微亿芯有限公司 | 基于层次化测试向量的高效测试方法 |
CN111722096B (zh) * | 2020-07-01 | 2022-02-18 | 无锡中微亿芯有限公司 | 一种具有内建测试电路的通用结构的硅连接层 |
CN111725188B (zh) * | 2020-07-01 | 2021-12-07 | 无锡中微亿芯有限公司 | 一种硅连接层具有可配置电路的多裸片fpga |
CN111753478B (zh) | 2020-07-01 | 2022-02-18 | 无锡中微亿芯有限公司 | 利用有源硅连接层实现内置模拟电路的多裸片fpga |
CN111710661B (zh) * | 2020-07-01 | 2021-12-07 | 无锡中微亿芯有限公司 | 基于信号延迟平衡技术设计的多裸片fpga |
CN111725198B (zh) * | 2020-07-01 | 2022-02-15 | 无锡中微亿芯有限公司 | 通过硅连接层的配置电路实现全可编程的多裸片fpga |
CN111863780A (zh) * | 2020-07-17 | 2020-10-30 | 北京灵汐科技有限公司 | 封装结构及电子设备 |
US11488944B2 (en) * | 2021-01-25 | 2022-11-01 | Google Llc | Integrated circuit package for high bandwidth memory |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140111716A (ko) * | 2012-02-08 | 2014-09-19 | 자일링크스 인코포레이티드 | 다수의 인터포저를 갖는 적층형 다이 조립체 |
KR20150126400A (ko) * | 2013-03-07 | 2015-11-11 | 자일링크스 인코포레이티드 | 메모리를 구비한 집적 회로 디바이스 및 집적 회로 디바이스에서 메모리를 구현하는 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4752369B2 (ja) * | 2004-08-24 | 2011-08-17 | ソニー株式会社 | 半導体装置および基板 |
US8124429B2 (en) * | 2006-12-15 | 2012-02-28 | Richard Norman | Reprogrammable circuit board with alignment-insensitive support for multiple component contact types |
US8866301B2 (en) * | 2010-05-18 | 2014-10-21 | Taiwan Semiconductor Manufacturing Company, Ltd. | Package systems having interposers with interconnection structures |
US8417867B2 (en) * | 2010-11-17 | 2013-04-09 | Xilinx, Inc. | Multichip module for communications |
US9064715B2 (en) * | 2010-12-09 | 2015-06-23 | Taiwan Semiconductor Manufacturing Company, Ltd. | Networking packages based on interposers |
US8704384B2 (en) * | 2012-02-17 | 2014-04-22 | Xilinx, Inc. | Stacked die assembly |
US9065722B2 (en) * | 2012-12-23 | 2015-06-23 | Advanced Micro Devices, Inc. | Die-stacked device with partitioned multi-hop network |
US9213866B1 (en) * | 2014-04-01 | 2015-12-15 | Xilinx, Inc. | Circuits for and methods of preventing unauthorized access in an integrated circuit |
EP3910798A1 (en) * | 2014-10-02 | 2021-11-17 | Altera Corporation | Integrated circuit device with embedded programmable logic |
-
2017
- 2017-07-20 WO PCT/US2017/043096 patent/WO2018034787A1/en unknown
- 2017-07-20 EP EP17746595.2A patent/EP3497722B1/en active Active
- 2017-07-20 CN CN201780050182.5A patent/CN109564914B/zh active Active
- 2017-07-20 KR KR1020197004856A patent/KR102381158B1/ko active IP Right Grant
- 2017-07-20 JP JP2019508260A patent/JP7084377B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140111716A (ko) * | 2012-02-08 | 2014-09-19 | 자일링크스 인코포레이티드 | 다수의 인터포저를 갖는 적층형 다이 조립체 |
KR20150126400A (ko) * | 2013-03-07 | 2015-11-11 | 자일링크스 인코포레이티드 | 메모리를 구비한 집적 회로 디바이스 및 집적 회로 디바이스에서 메모리를 구현하는 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN109564914B (zh) | 2020-06-30 |
KR102381158B1 (ko) | 2022-03-30 |
EP3497722B1 (en) | 2021-02-24 |
CN109564914A (zh) | 2019-04-02 |
EP3497722A1 (en) | 2019-06-19 |
WO2018034787A1 (en) | 2018-02-22 |
JP7084377B2 (ja) | 2022-06-14 |
JP2019525490A (ja) | 2019-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102381158B1 (ko) | 적층형 실리콘 상호 연결(ssi) 기술 통합을 위한 독립형 인터페이스 | |
US10916516B2 (en) | High bandwidth memory (HBM) bandwidth aggregation switch | |
US9911465B1 (en) | High bandwidth memory (HBM) bandwidth aggregation switch | |
US10784121B2 (en) | Standalone interface for stacked silicon interconnect (SSI) technology integration | |
US11194757B2 (en) | Scalable 2.5D interface circuitry | |
US11239203B2 (en) | Multi-chip stacked devices | |
US11693808B2 (en) | Multi-die integrated circuit with data processing engine array | |
US11062070B2 (en) | Die to die interconnect structure for modularized integrated circuit devices | |
US20230306173A1 (en) | Modular periphery tile for integrated circuit device | |
TWI836054B (zh) | 包含在具有可程式積體電路的晶粒上所堆疊的記憶體晶粒的多晶片結構 | |
US20210111116A1 (en) | Fabric Die to Fabric Die Interconnect for Modularized Integrated Circuit Devices | |
EP3824392A1 (en) | Configurable network-on-chip for a programmable device | |
US11189338B1 (en) | Multi-rank high bandwidth memory (HBM) memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |