CN111725188B - 一种硅连接层具有可配置电路的多裸片fpga - Google Patents
一种硅连接层具有可配置电路的多裸片fpga Download PDFInfo
- Publication number
- CN111725188B CN111725188B CN202010622778.1A CN202010622778A CN111725188B CN 111725188 B CN111725188 B CN 111725188B CN 202010622778 A CN202010622778 A CN 202010622778A CN 111725188 B CN111725188 B CN 111725188B
- Authority
- CN
- China
- Prior art keywords
- configuration
- fpga
- die
- silicon
- connection layer
- 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.)
- Active
Links
Images
Classifications
-
- 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
- H01L23/00—Details of semiconductor or other solid state devices
- H01L23/48—Arrangements for conducting electric current to or from the solid state body in operation, e.g. leads, terminal arrangements ; Selection of materials therefor
- H01L23/482—Arrangements for conducting electric current to or from the solid state body in operation, e.g. leads, terminal arrangements ; Selection of materials therefor consisting of lead-in layers inseparably applied to the semiconductor body
- H01L23/4824—Pads with extended contours, e.g. grid structure, branch structure, finger structure
-
- 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/5386—Geometry or layout of the interconnection structure
-
- 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
- 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
- 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
-
- 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/153—Connection portion
- H01L2924/1531—Connection portion the connection portion being formed only on the surface of the substrate opposite to the die mounting surface
- H01L2924/15311—Connection portion the connection portion being formed only on the surface of the substrate opposite to the die mounting surface being a ball array, e.g. BGA
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- Power Engineering (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
本申请公开了一种硅连接层具有可配置电路的多裸片FPGA,涉及FPGA技术领域,该多裸片FPGA中包括层叠设置在同一个硅连接层上的若干个FPGA裸片,裸片之间通过硅连接层内部的跨裸片连线实现互连通信;硅连接层和各个裸片内分别包括依次相连的配置端口、配置电路以及可配置逻辑模块,从而可以实现对硅连接层以及FPGA裸片的配置编程;同时,至少在硅连接层内还设置有CRC电路用于在多裸片FPGA的码流配置过程中对所有配置码流进行监视,确保下载的配置码流的正确性,该结构可以灵活准确的配置有源硅连接层和各个FPGA裸片,有利于提高跨裸片信号传输的灵活性。
Description
技术领域
本发明涉及FPGA技术领域,尤其是一种硅连接层具有可配置电路的多裸片FPGA。
背景技术
FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)是一种硬件可编程的逻辑器件,除了应用于移动通信、数据中心等领域,还广泛应用于集成电路设计中的原型验证,能够有效验证电路功能的正确性,同时加快电路设计速度。原型验证需要利用FPGA内部的可编程逻辑资源实现电路设计,随着集成电路规模的不断增大及复杂功能的实现,对FPGA的可编程逻辑资源的数量的需求不断提高,后续技术发展和需求的不断增加,FPGA可编程资源数量会成为更大的瓶颈,给该行业发展提出更大的挑战。FPGA规模的增加代表芯片面积不断增大,这样会导致芯片加工难度的提高以及芯片生产良率的降低。
发明内容
本发明人针对上述问题及技术需求,提出了一种硅连接层具有可配置电路的多裸片FPGA,本发明的技术方案如下:
一种硅连接层具有可配置电路的多裸片FPGA,该多裸片FPGA包括基板、层叠设置在基板上的硅连接层以及层叠设置在硅连接层上的若干个FPGA裸片,硅连接层覆盖所有的FPGA裸片;每个FPGA裸片内包括若干个可配置功能模块、环于各个可配置功能模块分布的互连资源模块、以及连接点引出端,FPGA裸片内的可配置功能模块至少包括可编程逻辑单元、硅堆叠连接模块和输入输出端口,硅堆叠连接模块内包括若干个硅堆叠连接点,FPGA裸片内的可编程逻辑单元分别与硅堆叠连接点和输入输出端口通过互连资源模块相连,FPGA裸片内的硅堆叠连接点通过重布线层内的顶层金属线与相应的连接点引出端相连;每个FPGA裸片中的连接点引出端通过硅连接层内的跨裸片连线与其他FPGA裸片中相应的连接点引出端相连,每个FPGA裸片可通过硅连接层内的跨裸片连线与其他任意一个FPGA裸片相连;FPGA裸片内的输入输出端口通过硅连接层上的硅通孔连接至基板;
硅连接层内包括依次相连的硅连接层配置端口、硅连接层配置电路以及硅连接层可配置逻辑模块,硅连接层通过硅连接层配置端口获取对应的配置码流,并由硅连接层配置电路对硅连接层可配置逻辑模块进行配置;
各个FPGA裸片内部包括依次相连的裸片配置端口、裸片配置电路和裸片可配置逻辑模块,FPGA裸片通过裸片配置端口获取对应的配置码流,并由裸片配置电路对裸片可配置逻辑模块进行配置;
多裸片FPGA内至少在硅连接层内还设置有CRC电路,CRC电路在多裸片FPGA的码流配置过程中对多裸片FPGA内部所有的配置码流进行监视。
其进一步的技术方案为,硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路通过硅连接层形成串行菊花链结构的配置链,配置链中的码流文件包括硅连接层对应的配置码流以及各个FPGA裸片对应的配置码流;则CRC电路设置在硅连接层内并监视配置链中的码流文件中的所有配置码流。
其进一步的技术方案为,硅连接层配置端口和硅连接层配置电路形成第一配置链,第一配置链中的第一码流文件包括硅连接层对应的配置码流;各个FPGA裸片的裸片配置端口和裸片配置电路通过硅连接层形成串行菊花链结构的第二配置链,第二配置链中的第二码流文件包括各个FPGA裸片对应的配置码流;则CRC电路包括第一CRC电路和第二CRC电路,第一CRC电路设置在硅连接层内并监视第一配置链中的第一码流文件中的配置码流,第二CRC电路设置在任意一个FPGA裸片内部并监视第二配置链中的第二码流文件中的配置码流。
其进一步的技术方案为,CRC电路采用CRC16、CRC32以及CRC8中的任意一种结构。
其进一步的技术方案为,硅连接层配置端口以及各个FPGA裸片的裸片配置端口的时钟信号输入管脚均相连并连接外部端口的时钟信号输入管脚,硅连接层配置端口以及各个FPGA裸片的裸片配置端口的控制信号输入管脚均相连并连接外部端口的控制信号输入管脚,硅连接层配置端口的数据输入管脚连接外部端口的数据输入管脚,第1个FPGA裸片的裸片配置端口的数据输入管脚连接硅连接层配置电路的数据输出端,第i个FPGA裸片的裸片配置电路的数据输出端连接到第i+1个FPGA裸片的裸片配置端口的数据输入管脚,硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路由此形成串行菊花链结构的配置链,其中i为参数且i的起始值为1;在多裸片FPGA的码流配置过程中,码流文件通过外部端口进入配置链。
其进一步的技术方案为,在同一个配置链中的所有FPGA裸片都根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置;或者,在同一个配置链中的部分FPGA裸片根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置,其余FPGA裸片直接让码流文件通过并传输至下一个FPGA裸片、不进行配置。
其进一步的技术方案为,FPGA裸片内部的裸片可配置逻辑模块包括若干个配置组,则FPGA裸片在根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置时,根据配置码流对所有配置组进行配置或者对部分配置组进行配置。
其进一步的技术方案为,各个FPGA裸片中的裸片配置端口及其相应的裸片配置电路采用的配置模式,以及硅连接层配置端口及其相应的硅连接层配置电路采用的配置模式相同或不同,采用的配置模式包括JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种配置模式。
其进一步的技术方案为,硅连接层内的硅连接层可配置逻辑模块为有源器件形成的信号延迟调节电路,信号延迟调节电路用于调节任意两个FPGA裸片之间的信号传输路径上的信号延迟;硅连接层配置电路根据对应的配置码流动态调整信号延迟调节电路的时延。
其进一步的技术方案为,硅连接层内的硅连接层可配置逻辑模块为有源器件形成的平衡时钟树,平衡时钟树的时钟输入端口获取时钟信号、各个时钟输出端口分别连接各个FPGA裸片的时钟端口,平衡时钟树中的时钟输入端口到各个时钟输出端口的延迟相同,时钟信号进入平衡时钟树并通过平衡时钟树分别推到各个FPGA裸片,使得各个FPGA裸片的时钟同步;硅连接层配置电路根据对应的配置码流动态调整平衡时钟树。
本发明的有益技术效果是:
在本申请的多裸片FPGA中,FPGA裸片内以及硅连接层内设置有类似的配置端口和配置端口,可以实现对硅连接层以及FPGA裸片的配置编程,同时该多裸片FPGA内部设置CRC电路对所有配置码流进行监视,可以确保多裸片FPGA下载配置码流的正确性。有源硅连接层与FPGA裸片可以通过两个独立的配置链分别配置,也可以采用同一个配置链串行配置,该结构可以灵活准确的配置有源硅连接层和各个FPGA裸片,有利于提高跨裸片信号传输的灵活性。
附图说明
图1是本申请的多裸片FPGA的结构剖视图。
图2是本申请中多裸片FPGA内部的各个FPGA裸片的布设示意图。
图3是本申请中多裸片FPGA内部的各个FPGA裸片的另一种布设示意图。
图4是本申请中多裸片FPGA内部的一种电路结构图。
图5是本申请中多裸片FPGA内部的另一种电路结构图。
图6是CRC电路采用CRC16结构时的电路结构图。
图7是硅连接层内的硅连接层可配置逻辑模块的一种电路结构示意图。
图8是硅连接层内的硅连接层可配置逻辑模块的另一种电路结构示意图。
图9是图1中部分结构放大图。
图10是多裸片FPGA中每个FPGA裸片中的连接点引出端的示意图。
图11是多裸片FPGA中FPGA裸片之间的互连结构示意图。
具体实施方式
下面结合附图对本发明的具体实施方式做进一步说明。
本申请提供了一种硅连接层具有可配置电路的多裸片FPGA,请参考图1,该多裸片FPGA包括从下至少依次层叠设置的基板1、硅连接层2和若干个FPGA裸片,分别以裸片1、裸片2等表示,依次类推。在实际实现时,该FPGA还包括封装在基板1、硅连接层2和FPGA裸片外部的用于保护各个组件的封装外壳,以及还包括与基板相连的用于信号引出的管脚等,图1中未详细示出这些常规结构。
本申请的FPGA并不是采用单一FPGA裸片结构,而是包含多个FPGA裸片,这多个FPGA裸片均层叠设置在同一个硅连接层2上。这多个FPGA裸片可以在硅连接层2上沿着一维方向排布,如图2所示的俯视图。也可以在硅连接层2上按照二维堆叠方式排布,也即在水平面上沿着横、纵两个方向排布,如图3所示,这多个FPGA裸片在硅连接层2可以合理布局,根据各个FPGA裸片的形状和面积紧凑排布在硅连接层2上使得整个FPGA的整体面积较小且裸片之间的互连性能较好。
各个FPGA裸片内部包括依次相连的裸片配置端口、裸片配置电路和裸片可配置逻辑模块,FPGA裸片通过裸片配置端口获取对应的配置码流,并由裸片配置电路对裸片可配置逻辑模块进行配置。裸片可配置逻辑模块主要包括若干个DSR(数据位移寄存器)、若干个ASR(地址位移寄存器)以及SRAM(静态随机存取存储器)阵列,DSR和ASR控制SRAM的读取和写入,则裸片配置电路连接DSR和ASR。
如图1所示,硅连接层2内部布设有跨裸片连线3,跨裸片连线3分布在硅连接层2的全部区域或部分区域,且同时硅连接层2覆盖所有的FPGA裸片,因此每个FPGA裸片都可以根据电路需要通过跨裸片连线3连接到任意一个其他的FPGA裸片,FPGA裸片之间的电路互连在空间上几乎不受限。另外,硅连接层2上还开设有硅通孔4,FPGA裸片内的IOB通过硅连接层2上的硅通孔4连接至基板1以最终进行信号引出。本申请重点在于解决这多个FPGA裸片的跨裸片时钟信号的平衡问题,因此本申请首先不对FPGA裸片与硅连接层2之间的连接结构进行具体展开,在本申请的最后会对其实现方式详细说明。
硅连接层2的制造工艺可与FPGA裸片不同,本申请中的硅连接层2为有源硅连接层,其内部除了布设有多层跨裸片连线3之外,还布设有依次相连的硅连接层配置端口、硅连接层配置电路以及硅连接层可配置逻辑模块,如图1和2所示,硅连接层通过硅连接层配置端口获取对应的配置码流,并由硅连接层配置电路对硅连接层可配置逻辑模块进行配置。
在本申请中,各个FPGA裸片中的裸片配置端口及其相应的裸片配置电路采用的配置模式,以及硅连接层配置端口及其相应的硅连接层配置电路采用的配置模式相同或不同,采用的配置模式包括JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种配置模式。
除了在FPGA裸片和硅连接层2中设置配置端口和配置电路之外,多裸片FPGA内至少在硅连接层2上还设置有CRC电路用于对FPGA裸片内的配置码流进行监视。FPGA裸片内部的具体结构主要有如下两种:
1、硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路通过硅连接层2形成串行菊花链结构的配置链。也即如图4所示,硅连接层配置端口以及各个FPGA裸片的裸片配置端口的时钟信号输入管脚CLK_CFG均相连并连接外部端口的时钟信号输入管脚CLK。硅连接层配置端口以及各个FPGA裸片的裸片配置端口的控制信号输入管脚CTRL_CFG均相连并连接外部端口的控制信号输入管脚CTRL。硅连接层配置端口的数据输入管脚DATA_CFG连接外部端口的数据输入管脚DATA。第1个FPGA裸片的裸片配置端口的数据输入管脚DATA_CFG连接硅连接层配置电路的数据输出端,第i个FPGA裸片的裸片配置电路的数据输出端连接到第i+1个FPGA裸片的裸片配置端口的数据输入管脚。硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路由此形成串行菊花链结构的配置链,其中i为参数且i的起始值为1。
在这种情况中,多裸片FPGA内部包含一个配置链,在多裸片FPGA的码流配置过程中,码流文件通过外部端口进入该配置链,则该配置链中的码流文件包括硅连接层2对应的配置码流以及各个FPGA裸片对应的配置码流,也即硅连接层对应的配置码流以及各个FPGA裸片对应的配置码流来自于同一个码流文件。该配置链中所有的配置电路都根据该码流文件中相应的配置码流对内部的可配置逻辑模块进行配置,或者部分配置电路都根据该码流文件中相应的配置码流对内部的可配置逻辑模块进行配置、其余配置电路直接让码流文件通过。也即硅连接层配置电路根据该码流文件中相应的配置码流对硅连接层可配置逻辑模块进行配置,或者直接让码流文件通过并传输至第1个FPGA裸片。而该配置链中所有FPGA裸片都根据该码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置。或者,在同一个配置链中的部分FPGA裸片根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置,其余FPGA裸片直接让码流文件通过并传输至下一个FPGA裸片、不进行配置。
而进一步的,对于每个FPGA裸片,FPGA裸片内部的裸片可配置逻辑模块包括若干个配置组(bank),则FPGA裸片在根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置时,根据配置码流对所有配置组进行配置或者对部分配置组进行配置。
则此时,多裸片FPGA内部只需设置一个CRC电路,且该CRC电路设置在硅连接层2内,通常可以将其设置在硅连接层配置电路内,该CRC电路可以监视该配置链中的码流文件中的所有配置码流。
2、硅连接层配置端口和硅连接层配置电路形成第一配置链,第一配置链中的码流文件包括硅连接层对应的配置码流。各个FPGA裸片的裸片配置端口和裸片配置电路通过硅连接层形成串行菊花链结构的第二配置链,第二配置链中的码流文件包括各个FPGA裸片对应的配置码流。
也即如图5所示,硅连接层配置端口的时钟信号输入管脚CLK_CFG连接第一外部端口的时钟信号输入管脚CLK1,硅连接层配置端口的控制信号输入管脚CTRL_CFG连接第一外部端口的控制信号输入管脚CTRL1,硅连接层配置端口的数据输入管脚DATA_CFG连接第一外部端口的数据输入管脚DATA1,硅连接层配置端口和硅连接层配置电路由此形成第一配置链。
各个FPGA裸片的裸片配置端口的时钟信号输入管脚CLK_CFG均相连并连接第二外部端口的时钟信号输入管脚CLK2,各个FPGA裸片的裸片配置端口的控制信号输入管脚CTRL_CFG均相连并连接第二外部端口的控制信号输入管脚CTRL2,第1个FPGA裸片的裸片配置端口的数据输入管脚DATA_CFG连接第二外部端口的数据输入管脚DATA2,第i个FPGA裸片的裸片配置电路的数据输出端连接到第i+1个FPGA裸片的裸片配置端口的数据输入管脚。各个FPGA裸片的裸片配置端口和裸片配置电路由此形成串行菊花链结构的第二配置链,其中i为参数且i的起始值为1。
在这种情况中,多裸片FPGA内部包含两个不同的配置链,在多裸片FPGA的码流配置过程中,第一码流文件通过第一外部端口进入第一配置链,第一配置链中的码流文件包括硅连接层2对应的配置码流。第二码流文件通过第二外部端口进入第二配置链,第二配置链中的码流文件包括各个FPGA裸片对应的配置码流。也即硅连接层对应的配置码流以及各个FPGA裸片对应的配置码流来自于两个不同的码流文件。第一配置链中的硅连接层配置电路根据第一码流文件中的配置码流对硅连接层可配置逻辑模块进行配置。第二配置链中的所有FPGA裸片都根据第二码流文件中相应的配置码流对裸片可配置逻辑模块进行配置,或者,部分FPGA裸片根据第二码流文件中相应的配置码流对裸片可配置逻辑模块进行配置、其余FPGA裸片直接让第二码流文件通过,且每个FPGA裸片对内部所有配置组进行配置或对部分配置组进行配置,与上述第一种情况类似,本申请不再详细赘述。
则在这种情况中,多裸片FPGA内部需要设置多个CRC电路,除了设置在硅连接层2内的第一CRC电路之外(通常将其设置在硅连接层配置电路内),多裸片FPGA内部还包括设置在任意一个FPGA裸片内部的第二CRC电路(通常设置在任意一个FPGA裸片内的裸片配置电路内)。第一CRC电路监视第一配置链中的第一码流文件中的配置码流,第二CRC电路监视第二配置链中的第二码流文件中的配置码流,从而实现对多裸片FPGA内部所有配置码流的监视。
在上述两种情况中,该多裸片FPGA可以通过外部的FPGA、CPU、非易失性存储器实现码流文件的下载,且该多裸片FPGA无论采用上述哪一种结构,其内部的CRC电路在多裸片FPGA的码流配置过程中都可以对多裸片FPGA内部所有的配置码流(包括硅连接层对应的配置码流以及各个FPGA裸片对应的配置码流)进行监视。在码流配置过程结束后检查CRC电路,可以确保整个多裸片FGPA下载码流的正确性。其中,CRC电路可以采用CRC16、CRC32以及CRC8中的任意一种结构,比如CRC16的结构如图6所示。
在本申请中,硅连接层2内的硅连接层可配置逻辑模块可以有多种电路结构和含义,硅连接层可配置逻辑模块通常连接FPGA裸片,比如在本申请中:
1、硅连接层内的硅连接层可配置逻辑模块包括配置位阵列和有源器件形成的信号延迟调节电路,信号延迟调节电路用于调节任意两个FPGA裸片之间的信号传输路径上的信号延迟,硅连接层配置电路将配置码流写入配置位阵列中,配置位阵列的值用于调整该信号延迟调节电路的时延,从而调节信号传输路径具有不同的信号延迟。其中,配置位阵列可以由SRAM、锁存器(Latch)、移位寄存器(shift register)以及flash等实现。
比如:信号延迟调节电路包括若干个通过多路选择器MUX并联的不同大小的BUF,BUF的大小(W/L)控制该信号延迟调节电路的时延,如图7示出了信号延迟调节电路中包括三种不同大小的BUF的示意图,BUF从小到大依次对应具有BUF1X时延、BUF2X时延以及BUF3X时延,时延依次降低。则硅连接层配置电路将配置码流写入配置位阵列,配置位阵列连接MUX并通过配置位阵列的值控制MUX内部路径通断从而选择相应大小的BUF所在的路径形成通路,使得相应大小的BUF连接在裸片1和裸片2之间,可以使该信号延迟调节电路具有相应的时延。相对于采用Metal Option选择的方式来说,这种方式可以多次重配置、根据需要动态调整。
2、硅连接层内的硅连接层可配置逻辑模块为有源器件形成的平衡时钟树,请参考图8,平衡时钟树的时钟输入端口获取时钟信号CLKIN、各个时钟输出端口分别连接各个FPGA裸片的时钟端口,平衡时钟树中的时钟输入端口到各个时钟输出端口的延迟相同,时钟信号进入平衡时钟树并通过平衡时钟树分别推到各个FPGA裸片,使得各个FPGA裸片的时钟同步,平衡时钟树具体可以采用H型时钟树结构、Buffer Tree结构、等长绕线路径结构等等,硅连接层配置电路根据对应的配置码流动态调整平衡时钟树。对平衡时钟树的调整包括:硅连接层配置电路根据对应的配置码流动态调整平衡时钟树的时钟输入端口的时钟信号CLKIN的来源,平衡时钟树的时钟输入端口的时钟信号CLKIN可以来自于多裸片FPGA的外部或任意一个FPGA裸片内部的时钟产生模块,则硅连接层配置电路可以用配置位控制时钟信号CLKIN的来源。对平衡时钟树的调整还包括:平衡时钟树中的每个分支包括若干个并联的不同大小的BUF,如图8示出了每个分支中包括三种不同大小的BUF的示意图,BUF从小到大依次对应具有BUF1X时延、BUF2X时延以及BUF3X时延,时延依次降低,则硅连接层配置电路根据对应的配置码流用配置位实现BUF大小的选择,可以使该分支具有相应的时延,与上述信号延迟调节电路原理类似。
为了结构的完整同时便于本领域技术人员理解,本申请接下来对多裸片FPGA内部的不同FPGA裸片之间的连接方式进行介绍如下,请结合图9,图9为图1部分结构放大图:
为了实现FPGA裸片与硅连接层2的连接,从而实现FPGA裸片之间的互连,本申请中的FPGA裸片内部除了包含CLB、IOB和其他功能模块这些常规可配置功能模块之外,还包括根据裸片间信号互连需求专门在裸片内部设计的硅堆叠连接模块,每个硅堆叠连接模块内包括若干个硅堆叠连接点5,硅堆叠连接模块是一种新增的专用于裸片信号引出的可配置功能模块,本申请中的FPGA裸片是将常规FPGA裸片中的某些常规可配置功能模块替换设置成了硅堆叠连接模块。且根据信号互连需求可以对任意位置的常规可配置功能模块进行替换,比如以现有常规的Column-Based的FPGA架构为例,其中每个column都是相同的模块,如CLB column是以CLB模块由上到下排列占满一个芯片column。每个模块设计时高度与INT对齐,CLB的高度和INT高度相等,其他功能模块的高度则可能等于多个INT高度,这种结构使得整个FPGA看起来是一个以INT形成的二维阵列,此阵列内模块的高度一致,同一个column的宽度一样,但不同column的宽度则可能不同。则基于这种二维阵列架构,既可以将硅堆叠连接模块设置在可编程逻辑单元所在的行列结构中,也可以将硅堆叠连接模块设置在其他功能模块所在的行列结构中以得到本申请中的FPGA裸片。硅堆叠连接模块的模块尺寸较小,其高度与CLB和INT的高度相等、宽度略小于CLB,而诸如DSP和BRAM之类的其他功能模块的高度和宽度都大于CLB,因此在将硅堆叠连接模块放在尺寸较大的其他功能模块(DSP、BRAM)处时会形成留空区域,而留空区域处可以设置电容、测试电路、降噪电路和监控电路中的至少一种常规电路结构以提高电路性能、丰富功能。
每个硅堆叠连接模块也具有一个环于该硅堆叠连接模块分布的互连资源模块,因此本申请中的FPGA裸片的绕线结构可以与常规FPGA裸片保持一致,无需做改变。硅堆叠连接模块与其他各个可配置功能模块之间的水平或垂直连线皆经由INT模块相连,硅堆叠连接模块LNK直接与其对应的互连资源模块INT中的互连开关相连,是互连线的一部分,硅堆叠连接模块LNK与互连开关之间根据连通度需要可以是全互连或部分互连。
本申请中的FPGA裸片还包括与内部硅堆叠连接点5对应的连接点引出端6,FPGA裸片内的硅堆叠连接点5通过重布线层(RDL层)内的顶层金属线7与相应的连接点引出端6相连。连接点引出端6通常根据堆叠互连需要沿着第一方向和第二方向按行列结构布设,结构示意图可以参考图10所示。另外为了实现更高的连通带宽可以布设多行/多列连接点引出端6,从而实现多行多列的高效二维级联。沿着每个方向布设多行/多列连接点引出端6时,可以是间隔均匀布设,也可以是随机布设。连接点引出端6与硅连接层2的连接方式具体可以是:FPGA裸片上生长有微凸球,连接点引出端6通过微凸球与硅连接层2连接并通过硅连接层2内部的跨裸片连线连接至其他FPGA裸片,图9可以看出FPGA裸片底部的微凸球结构,本申请不再详细标示。
由此结构,FPGA裸片的裸片信号已经由硅堆叠连接点5连接到了连接点引出端6。连接点引出端6再通过硅连接层2内的跨裸片连线3即可连接到其他FPGA裸片中相应的连接点引出端6,从而实现FPGA裸片之间的互连。
而当每个FPGA裸片的连接点引出端6与其他FPGA裸片的连接点引出端6相连时,两个FPGA裸片可以相邻,或者间隔若干个其他裸片,比如在图2中,裸片1与裸片2和裸片3之间均可以通过跨裸片连线3相连。跨裸片连线3在硅连接层2内分层交叉布置,使得跨裸片连线3之间互不影响。
另外,硅连接层2的内部布设的跨裸片连线3还可以沿着第一方向和第二方向交叉布置,第一方向和第二方向在水平方向上相互垂直,实际即为与裸片排布结构相匹配的横、纵两个方向。因此每个FPGA裸片可以通过两个方向上的跨裸片连线3同时与第一方向和第二方向上的其他FPGA裸片,从而使得多个FPGA裸片之间构成了二维互连结构,如图3中,裸片4可以通过第一方向的跨裸片连线3与裸片5互连、也可以通过第二方向的跨裸片连线3与裸片6互连,其余裸片同样如此。而在每一个方向上,每个FPGA裸片不仅可以通过跨裸片连线3与其相邻的其他FPGA裸片互连,也可以通过跨裸片连线3与间隔的其他FPGA裸片相连,和上述一维情况类似,本申请不再距离。另外,FPGA裸片还可以同时通过两个方向上的跨裸片连线3与不同行列的FPGA裸片相连,比如在图3中,裸片4还可以通过跨裸片连线3与裸片7相连。FPGA裸片之间的互连结构请参考图11所示的示意图。
以上的仅是本申请的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。
Claims (10)
1.一种硅连接层具有可配置电路的多裸片FPGA,其特征在于,所述多裸片FPGA包括基板、层叠设置在所述基板上的硅连接层以及层叠设置在所述硅连接层上的若干个FPGA裸片,所述硅连接层覆盖所有的FPGA裸片;每个FPGA裸片内包括若干个可配置功能模块、环于各个可配置功能模块分布的互连资源模块、以及连接点引出端,所述FPGA裸片内的可配置功能模块至少包括可编程逻辑单元、硅堆叠连接模块和输入输出端口,所述硅堆叠连接模块内包括若干个硅堆叠连接点,所述FPGA裸片内的可编程逻辑单元分别与硅堆叠连接点和输入输出端口通过互连资源模块相连,所述FPGA裸片内的硅堆叠连接点通过重布线层内的顶层金属线与相应的连接点引出端相连;每个FPGA裸片中的连接点引出端通过所述硅连接层内的跨裸片连线与其他FPGA裸片中相应的连接点引出端相连,每个FPGA裸片可通过所述硅连接层内的跨裸片连线与其他任意一个FPGA裸片相连;FPGA裸片内的输入输出端口通过所述硅连接层上的硅通孔连接至所述基板;
所述硅连接层内包括依次相连的硅连接层配置端口、硅连接层配置电路以及硅连接层可配置逻辑模块,所述硅连接层通过所述硅连接层配置端口获取对应的配置码流,并由所述硅连接层配置电路对所述硅连接层可配置逻辑模块进行配置;
各个所述FPGA裸片内部包括依次相连的裸片配置端口、裸片配置电路和裸片可配置逻辑模块,FPGA裸片通过裸片配置端口获取对应的配置码流,并由所述裸片配置电路对所述裸片可配置逻辑模块进行配置;
所述多裸片FPGA内至少在所述硅连接层内还设置有CRC电路,所述CRC电路在所述多裸片FPGA的码流配置过程中对所述多裸片FPGA内部所有的配置码流进行监视。
2.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路通过所述硅连接层形成串行菊花链结构的配置链,所述配置链中的码流文件包括所述硅连接层对应的配置码流以及各个FPGA裸片对应的配置码流;则所述CRC电路设置在所述硅连接层内并监视所述配置链中的码流文件中的所有配置码流。
3.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层配置端口和硅连接层配置电路形成第一配置链,所述第一配置链中的第一码流文件包括所述硅连接层对应的配置码流;各个FPGA裸片的裸片配置端口和裸片配置电路通过所述硅连接层形成串行菊花链结构的第二配置链,所述第二配置链中的第二码流文件包括各个FPGA裸片对应的配置码流;则所述CRC电路包括第一CRC电路和第二CRC电路,所述第一CRC电路设置在所述硅连接层内并监视所述第一配置链中的第一码流文件中的配置码流,所述第二CRC电路设置在任意一个FPGA裸片内部并监视所述第二配置链中的第二码流文件中的配置码流。
4.根据权利要求1-3任一所述的多裸片FPGA,其特征在于,所述CRC电路采用CRC16、CRC32以及CRC8中的任意一种结构。
5.根据权利要求2所述的多裸片FPGA,其特征在于,所述硅连接层配置端口以及各个FPGA裸片的裸片配置端口的时钟信号输入管脚均相连并连接外部端口的时钟信号输入管脚,所述硅连接层配置端口以及各个FPGA裸片的裸片配置端口的控制信号输入管脚均相连并连接所述外部端口的控制信号输入管脚,所述硅连接层配置端口的数据输入管脚连接所述外部端口的数据输入管脚,第1个FPGA裸片的裸片配置端口的数据输入管脚连接所述硅连接层配置电路的数据输出端,第i个FPGA裸片的裸片配置电路的数据输出端连接到第i+1个FPGA裸片的裸片配置端口的数据输入管脚,所述硅连接层配置端口、硅连接层配置电路与各个FPGA裸片的裸片配置端口和裸片配置电路由此形成串行菊花链结构的配置链,其中i为参数且i的起始值为1;在所述多裸片FPGA的码流配置过程中,码流文件通过所述外部端口进入所述配置链。
6.根据权利要求2或3所述的多裸片FPGA,其特征在于,在同一个配置链中的所有FPGA裸片都根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置;或者,在同一个配置链中的部分FPGA裸片根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置,其余FPGA裸片直接让码流文件通过并传输至下一个FPGA裸片、不进行配置。
7.根据权利要求6所述的多裸片FPGA,其特征在于,FPGA裸片内部的裸片可配置逻辑模块包括若干个配置组,则FPGA裸片在根据码流文件中相应的配置码流对内部的裸片可配置逻辑模块进行配置时,根据所述配置码流对所有配置组进行配置或者对部分配置组进行配置。
8.根据权利要求1所述的多裸片FPGA,其特征在于,各个FPGA裸片中的裸片配置端口及其相应的裸片配置电路采用的配置模式,以及所述硅连接层配置端口及其相应的所述硅连接层配置电路采用的配置模式相同或不同,采用的配置模式包括JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种配置模式。
9.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层内的硅连接层可配置逻辑模块为有源器件形成的信号延迟调节电路,所述信号延迟调节电路用于调节任意两个FPGA裸片之间的信号传输路径上的信号延迟;所述硅连接层配置电路根据对应的配置码流动态调整所述信号延迟调节电路的时延。
10.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层内的硅连接层可配置逻辑模块为有源器件形成的平衡时钟树,所述平衡时钟树的时钟输入端口获取时钟信号、各个时钟输出端口分别连接各个FPGA裸片的时钟端口,所述平衡时钟树中的时钟输入端口到各个时钟输出端口的延迟相同,所述时钟信号进入所述平衡时钟树并通过所述平衡时钟树分别推到各个FPGA裸片,使得各个FPGA裸片的时钟同步;所述硅连接层配置电路根据对应的配置码流动态调整所述平衡时钟树。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010622778.1A CN111725188B (zh) | 2020-07-01 | 2020-07-01 | 一种硅连接层具有可配置电路的多裸片fpga |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010622778.1A CN111725188B (zh) | 2020-07-01 | 2020-07-01 | 一种硅连接层具有可配置电路的多裸片fpga |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111725188A CN111725188A (zh) | 2020-09-29 |
CN111725188B true CN111725188B (zh) | 2021-12-07 |
Family
ID=72570986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010622778.1A Active CN111725188B (zh) | 2020-07-01 | 2020-07-01 | 一种硅连接层具有可配置电路的多裸片fpga |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111725188B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656344B (zh) * | 2021-08-19 | 2023-08-15 | 无锡中微亿芯有限公司 | 利用配置移位链实现多码流功能的fpga |
US11736107B2 (en) | 2021-08-19 | 2023-08-22 | Wuxi Esiontech Co., Ltd. | Field-programmable gate array (FPGA) for using configuration shift chain to implement multi-bitstream function |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885212A (zh) * | 2012-12-23 | 2015-09-02 | 先进微装置公司 | 利用分区多跳网络的裸片堆叠装置 |
CN106844246A (zh) * | 2015-09-28 | 2017-06-13 | 阿尔特拉公司 | 用于通过硅桥的封装上芯片到芯片互连的多电平信令 |
CN109564914A (zh) * | 2016-08-15 | 2019-04-02 | 赛灵思公司 | 用于堆叠硅互连(ssi)技术集成的独立接口 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9064715B2 (en) * | 2010-12-09 | 2015-06-23 | Taiwan Semiconductor Manufacturing Company, Ltd. | Networking packages based on interposers |
-
2020
- 2020-07-01 CN CN202010622778.1A patent/CN111725188B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885212A (zh) * | 2012-12-23 | 2015-09-02 | 先进微装置公司 | 利用分区多跳网络的裸片堆叠装置 |
CN106844246A (zh) * | 2015-09-28 | 2017-06-13 | 阿尔特拉公司 | 用于通过硅桥的封装上芯片到芯片互连的多电平信令 |
CN109564914A (zh) * | 2016-08-15 | 2019-04-02 | 赛灵思公司 | 用于堆叠硅互连(ssi)技术集成的独立接口 |
Also Published As
Publication number | Publication date |
---|---|
CN111725188A (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111755436B (zh) | 具有实时监测并修正配置信息功能的多裸片fpga | |
CN110085570B (zh) | 可编程中介层电路系统 | |
CN109564914B (zh) | 用于堆叠硅互连(ssi)技术集成的独立接口 | |
US10916516B2 (en) | High bandwidth memory (HBM) bandwidth aggregation switch | |
EP2641270B1 (en) | Multichip module for communications | |
US7701251B1 (en) | Methods and apparatus for implementing a stacked memory programmable integrated circuit system in package | |
EP3618280A1 (en) | Interface bridge between integrated circuit die | |
US11062070B2 (en) | Die to die interconnect structure for modularized integrated circuit devices | |
US11714941B2 (en) | Modular periphery tile for integrated circuit device | |
CN111725188B (zh) | 一种硅连接层具有可配置电路的多裸片fpga | |
US12009298B2 (en) | Fabric die to fabric die interconnect for modularized integrated circuit devices | |
CN111710663B (zh) | 一种多裸片硅堆叠互连结构fpga | |
EP4020214A1 (en) | Modular error correction code circuitry | |
CN111753480B (zh) | 利用有源硅连接层实现时钟树的多裸片fpga | |
CN111786894B (zh) | 实现片上网络传输带宽扩充功能的fpga装置 | |
CN111725198B (zh) | 通过硅连接层的配置电路实现全可编程的多裸片fpga | |
CN111753481B (zh) | 利用有源硅连接层平衡延迟的多裸片fpga | |
US10262973B1 (en) | Modular chip with redundant interfaces | |
CN111710661B (zh) | 基于信号延迟平衡技术设计的多裸片fpga | |
US20190319627A1 (en) | Distributed I/O Interfaces in Modularized Integrated Circuit Devices | |
CN111725187B (zh) | 基于通用结构硅连接层构成的多裸片fpga | |
CN111722097A (zh) | 一种具有互连测试功能的多裸片fpga | |
CN111753479B (zh) | 利用硅连接层集成多裸片的片上网络的多裸片fpga | |
US20240162189A1 (en) | Active Interposers For Migration Of Packages | |
JP2013521585A (ja) | 少なくとも2つの異なる接続を介してマスターデバイスに結合される相互接続 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |