CN111725198B - 通过硅连接层的配置电路实现全可编程的多裸片fpga - Google Patents
通过硅连接层的配置电路实现全可编程的多裸片fpga Download PDFInfo
- Publication number
- CN111725198B CN111725198B CN202010620210.6A CN202010620210A CN111725198B CN 111725198 B CN111725198 B CN 111725198B CN 202010620210 A CN202010620210 A CN 202010620210A CN 111725198 B CN111725198 B CN 111725198B
- Authority
- CN
- China
- Prior art keywords
- connection layer
- configuration
- silicon
- fpga
- silicon connection
- 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/16—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 main groups of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. forming hybrid circuits
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0421—Multiprocessor system
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L23/00—Details of semiconductor or other solid state devices
- H01L23/28—Encapsulations, e.g. encapsulating layers, coatings, e.g. for protection
- H01L23/31—Encapsulations, e.g. encapsulating layers, coatings, e.g. for protection characterised by the arrangement or shape
- H01L23/3107—Encapsulations, e.g. encapsulating layers, coatings, e.g. for protection characterised by the arrangement or shape the device being completely enclosed
- H01L23/3121—Encapsulations, e.g. encapsulating layers, coatings, e.g. for protection characterised by the arrangement or shape the device being completely enclosed a substrate forming part of the encapsulation
- H01L23/3128—Encapsulations, e.g. encapsulating layers, coatings, e.g. for protection characterised by the arrangement or shape the device being completely enclosed a substrate forming part of the encapsulation the substrate having spherical bumps for external connection
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L24/00—Arrangements for connecting or disconnecting semiconductor or solid-state bodies; Methods or apparatus related thereto
- H01L24/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L24/02—Bonding areas ; Manufacturing methods related thereto
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L24/00—Arrangements for connecting or disconnecting semiconductor or solid-state bodies; Methods or apparatus related thereto
- H01L24/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L24/10—Bump connectors ; Manufacturing methods related thereto
- H01L24/12—Structure, shape, material or disposition of the bump connectors prior to the connecting process
- H01L24/13—Structure, shape, material or disposition of the bump connectors prior to the connecting process of an individual bump connector
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L2224/02—Bonding areas; Manufacturing methods related thereto
- H01L2224/023—Redistribution layers [RDL] for bonding areas
- H01L2224/0233—Structure of the redistribution layers
- H01L2224/02333—Structure of the redistribution layers being a bump
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/01—Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
- H01L2224/02—Bonding areas; Manufacturing methods related thereto
- H01L2224/023—Redistribution layers [RDL] for bonding areas
- H01L2224/0237—Disposition of the redistribution layers
- H01L2224/02373—Layout of the redistribution layers
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2224/00—Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
- H01L2224/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/12—Structure, shape, material or disposition of the bump connectors prior to the connecting process
- H01L2224/13—Structure, shape, material or disposition of the bump connectors prior to the connecting process of an individual bump connector
- H01L2224/13001—Core members of the bump connector
- H01L2224/13005—Structure
- H01L2224/13008—Bump connector integrally formed with a redistribution layer on the semiconductor or solid-state body
-
- 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)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Automation & Control Theory (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
本申请公开了一种通过硅连接层的配置电路实现全可编程的多裸片FPGA,涉及FPGA技术领域,该多裸片FPGA中包括层叠设置在同一个硅连接层上的若干个FPGA裸片,裸片之间通过硅连接层内部的跨裸片连线实现互连通信,支持由多个小规模小面积的裸片级联实现大规模大面积的FPGA芯片,减少加工难度,提高芯片生产良率,加快设计速度;有源的硅连接层内设置硅连接层配置电路,每个裸片内部无需专用的配置下载电路,通过硅连接层配置电路可实现对硅连接层可配置逻辑模块以及各个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的配置模式设置端口,硅连接层配置电路通过配置模式设置端口获取模式选择信号并采用模式选择信号对应的配置模式,配置模式为JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种。
其进一步的技术方案为,硅连接层中布设有Flash存储器,Flash存储器中存储有配置码流,硅连接层配置电路连接Flash存储器并从Flash存储器中获取配置码流。
其进一步的技术方案为,Flash存储器支持串行模式;或者,Flash存储器支持并行模式,硅连接层可配置逻辑模块和各个裸片可配置逻辑模块对应的配置码流在Flash存储器中分段存储,硅连接层配置电路对若干个可配置逻辑模块对应的配置码流进行并行下载配置。
其进一步的技术方案为,硅连接层配置电路从Flash存储器中获取压缩后的配置码流,并直接根据压缩后的配置码流进行配置。
其进一步的技术方案为,硅连接层配置电路从Flash存储器中获取加密后的配置码流,对加密后的配置码流解密后进行配置。
其进一步的技术方案为,硅连接层中布设有定时器,硅连接层配置电路连接定时器并根据定时器每隔预定时间间隔进行配置刷新。
其进一步的技术方案为,硅连接层配置电路具有码流监视修正功能,硅连接层配置电路每隔预定时间间隔读取多裸片FPGA内部的配置码流进行校验,并在检测到配置码流出现错误时进行修正并重新写入。
其进一步的技术方案为,硅连接层配置电路内包括ECC电路,ECC电路用于实现码流监视修正功能,ECC电路每隔预定时间间隔依次读取配置码流中的各个数据帧进行校验,并在检测到数据帧出现错误时修正数据帧并重新写入修正后的数据帧。
其进一步的技术方案为,硅连接层配置电路内包括CRC电路,CRC电路用于实现码流监视修正功能,CRC电路每隔预定时间间隔读取可配置逻辑模块对应的配置码流进行校验,并在检测到可配置逻辑模块对应的配置码流出现错误时,对可配置逻辑模块对应的配置码流进行码流重下载。
本发明的有益技术效果是:
本申请的多裸片FPGA支持由多个小规模小面积的FPGA裸片级联实现大规模大面积的FPGA芯片,减少加工难度,提高芯片生产良率,加快设计速度;该多裸片FPGA中在有源的硅连接层内设置硅连接层配置电路,每个FPGA裸片内部无需专用的配置下载电路,通过硅连接层配置电路可实现对硅连接层可配置逻辑模块以及各个FPGA裸片的统一配置下载,结构简单,可以灵活准确的配置有源硅连接层和各个FPGA裸片,有利于提高跨裸片信号传输的灵活性。
另外该多裸片FPGA内部还集成了Flash存储器用于存储配置码流,无需外挂专用的非易失性存储器即可完成对整个多裸片FPGA装置的配置下载工作,有利于提高系统的稳定性。
硅连接层配置电路支持位流加密、定时刷新、部分重配置,可以提高多裸片FPGA装置的可靠性,满足太空环境等领域对FPGA的高可靠性的要求。
附图说明
图1是本申请的多裸片FPGA的结构剖视图。
图2是本申请中多裸片FPGA内部的一种电路结构图。
图3是本申请中多裸片FPGA内部的另一种电路结构图。
图4是本申请中的硅连接层配置电路与Flash存储器的连接示意图。
图5是硅连接层内的硅连接层可配置逻辑模块的一种电路结构示意图。
图6是硅连接层内的硅连接层可配置逻辑模块的另一种电路结构示意图。
图7是图1中部分结构放大图。
图8是多裸片FPGA中每个FPGA裸片中的连接点引出端的示意图。
图9是多裸片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裸片内部分别包括裸片可配置逻辑模块,裸片可配置逻辑模块主要包括若干个DSR(数据位移寄存器)、若干个ASR(地址位移寄存器)以及SRAM(静态随机存取存储器)阵列,DSR和ASR控制SRAM的读取和写入。
如图1所示,硅连接层2内部布设有跨裸片连线3,跨裸片连线3分布在硅连接层2的全部区域或部分区域,且同时硅连接层2覆盖所有的FPGA裸片,因此每个FPGA裸片都可以根据电路需要通过跨裸片连线3连接到任意一个其他的FPGA裸片,FPGA裸片之间的电路互连在空间上几乎不受限。另外,硅连接层2上还开设有硅通孔4,FPGA裸片内的IOB通过硅连接层2上的硅通孔4连接至基板1以最终进行信号引出,本申请首先不对FPGA裸片与硅连接层2之间的连接结构进行具体展开,在本申请的最后会对其实现方式详细说明。
硅连接层2的制造工艺可与FPGA裸片不同,本申请中的硅连接层2为有源硅连接层,其内部除了布设有多层跨裸片连线3之外,还布设有相连的硅连接层配置电路以及硅连接层可配置逻辑模块。硅连接层配置电路还分别连接各个FPGA裸片内部的裸片可配置逻辑模块,也即连接各个FPGA裸片内部的DSR和ASR。
在本申请中,FPGA裸片内部只有配置链而无专用的配置电路,由硅连接层配置电路根据获取到的配置码流实现对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的全可编程。硅连接层配置电路可以采用串行统一配置方式或并行独立配置方式对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行配置:
(1)串行统一配置:如图3所示,硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的地址配置引脚均相连并连接到硅连接层配置电路的ADDR引脚,硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的数据配置引脚均相连并连接到硅连接层配置电路的D_OUT引脚,硅连接层配置电路对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行串行统一配置。
(2)并行独立配置:如图2所示,硅连接层可配置逻辑模块和各个裸片可配置逻辑模块中的每个可配置逻辑模块的地址配置引脚和数据配置引脚分别连接至硅连接层配置电路,硅连接层配置电路对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行并行独立配置。比如图2中,裸片1的地址配置引脚和数据配置引脚分别连接硅连接层配置电路的ADDR0引脚和D_OUT0引脚,硅连接层可配置逻辑模块的地址配置引脚和数据配置引脚分别连接硅连接层配置电路的ADDR1引脚和D_OUT1引脚,裸片2的地址配置引脚和数据配置引脚分别连接硅连接层配置电路的ADDR2引脚和D_OUT2引脚,裸片3的地址配置引脚和数据配置引脚分别连接硅连接层配置电路的ADDR3引脚和D_OUT3引脚。
无论采用串行统一配置还是并行独立配置的方式,硅连接层配置电路都可以对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行全配置或部分配置,本申请的做法是:硅连接层配置电路对硅连接层可配置逻辑模块和各个裸片可配置逻辑模块统一进行配置地址编码,配置地址内部包括片选信号,硅连接层配置电路通过配置地址中的片选信号选择对所有可配置逻辑模块进行配置从而实现全配置,或者,通过配置地址中的片选信号选择对部分可配置逻辑模块进行配置实现部分配置。本申请中硅连接层配置电路输出给各个可配置逻辑模块的地址配置引脚ADDR的地址编码为32位,地址编码的格式如下所示:
其中,地址编码从高到低依次为保留字段(RESERVED)、片选信号字段(CS)、配置信息类型字段(TYPE)、行地址字段(RA)、列地址字段(CA)和帧地址字段(FA)。保留字段占6位。片选信号字段占3位、用于传输片选信号,片选信号用于对各个可配置逻辑模块进行选择配置。配置信息类型字段占3位、用于传输配置信息类型,配置信息类型用于根据需要将互连信息、BRAM初始化信息进行分类。行地址字段占5位、用于传输可配置逻辑模块要配置的行地址。列字段字段占9位、用于传输可配置逻辑模块要配置的列地址,FPGA裸片内的列主要包括IO列、SWB列、CLB列、DSP列、BRAM列和PCIE列等。帧地址字段占7位、用于传输多帧配置码流的数据帧。
本申请中的硅连接层配置电路支持多种配置模式,包括JTAG、主串、从串、主SPI、从SPI和主BPI等。硅连接层配置电路通过硅连接层2连接至多裸片FPGA的配置模式设置端口,如图2和3所示,硅连接层配置电路的MODE引脚连接到多裸片FPGA的配置模式设置端口,用于可以通过配置模式设置端口输入MODE值。请结合图4,硅连接层配置电路内部的配置模式选择电路连接MODE引脚并获取到模式选择信号MODE值,从而采用模式选择信号MODE值对应的配置模式,也即选择采用其支持的JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种配置模式。
硅连接层2布设有Flash存储器,Flash存储器中存储有配置码流,硅连接层配置电路连接Flash存储器并从Flash存储器中获取配置码流。由于使用硅连接层2内部的非易失性Flash存储器来存储配置码流,因此本申请的多裸片FPGA无需外挂专用的Flash芯片,可以提高系统的稳定性。请结合图4所示的硅连接层配置电路与Flash存储器之间的连接示意图。
Flash存储器支持串行模式,则硅连接层配置电路对Flash存储器中的配置码流进行串行下载,然后通过串行统一配置或并行独立配置的方式进行配置,如图3和4以硅连接层配置电路对Flash存储器中的配置码流进行串行下载后通过串行统一配置的方式进行配置的示意图。在图3中,硅连接层配置电路的D_IN引脚连接Flash存储器的DATA引脚并进行配置码流的串行下载。
或者,Flash存储器支持并行模式,硅连接层可配置逻辑模块和各个裸片可配置逻辑模块对应的配置码流在Flash存储器中分段存储,硅连接层配置电路对若干个可配置逻辑模块对应的配置码流进行并行下载,然后通过串行统一配置或并行独立配置的方式进行配置,如图2以硅连接层配置电路对Flash存储器中的配置码流进行并行下载后通过并行统一配置的方式进行配置的示意图。在图2中,硅连接层配置电路的D0_IN引脚连接Flash存储器的DATA0引脚、D1_IN引脚连接Flash存储器的DATA1引脚、D2_IN引脚连接Flash存储器的DATA2引脚、D3_IN引脚连接Flash存储器的DATA3引脚,从而实现配置码流的并行下载。无论是上述串行模式还是并行模式下,如图2-4所示,硅连接层配置电路的CCLK引脚还连接Flash存储器的CLK引脚以进行时钟配置。硅连接层配置电路和Flash存储器均连接外部时钟。硅连接层配置电路的DONE引脚还连接到多裸片FPGA的外部端口用于输出反馈值。
另外,该多裸片FPGA还支持压缩码流下载,也即Flash中存储有压缩后的配置码流,硅连接层配置电路从Flash存储器中获取压缩后的配置码流,无需解压、直接根据压缩后的配置码流进行配置,从而可以加快下载速度,减小码流文件。
该多裸片FPGA还支持位流加密,也即Flash存储器中存储有加密后的配置码流,则硅连接层配置电路还包括用于对加密后的配置码流进行解密的解密电路,硅连接层配置电路从Flash存储器中获取加密后的配置码流,对加密后的配置码流解密后进行配置,从而可以有效防止非法窃取用户设计数据的情况出现,提高安全性。
硅连接层2中还布设有定时器,如图2所示,硅连接层配置电路连接定时器并根据定时器每隔预定时间间隔进行配置刷新,防止配置RAM状态翻转,从而可以解决单粒子翻转导致的错误,提高在太空等复杂环境中的可靠性。在实际实现时,如图2所示,定时器同时连接硅连接层配置电路和Flash存储器,具体的,连接硅连接层配置电路的CE引脚和Flash存储器的CE引脚。当未布设定时器时,如图3所示,硅连接层配置电路的CE引脚和Flash存储器的CE引脚可以相连并连接到多裸片FPGA的外部端口。
硅连接层配置电路还具有码流监视修正功能,硅连接层配置电路每隔预定时间间隔读取多裸片FPGA内部的配置码流进行校验,并在检测到配置码流出现错误时进行修正并重新写入。硅连接层配置电路支持动态部分重配置,可以在不影响系统工作的同时完成对部分功能的修正和更新。码流监视修正功能可以由ECC电路和/或CRC电路实现:
(1)由ECC电路实现码流监视修正功能,则硅连接层配置电路内包括ECC电路,ECC电路每隔预定时间间隔依次读取配置码流中的各个数据帧进行ECC校验,并在回读检测到数据帧出现错误时修正数据帧并重新写入修正后的数据帧,实现配置修正更新。ECC电路以72位为单位,其中64位为数据、8位为数据校验位,支持单比特错误检测修正和双比特错误报告。
(2)由CRC电路实现码流监视修正功能,则硅连接层配置电路内包括CRC电路,CRC电路通过定时器每隔预定时间间隔读取可配置逻辑模块对应的配置码流进行CRC校验,并在检测到可配置逻辑模块对应的配置码流出现错误时,对该可配置逻辑模块对应的配置码流进行码流重下载。
CRC电路在读取可配置逻辑模块对应的配置码流进行CRC校验时,可以读取所有可配置逻辑模块对应的配置码流进行校验或者读取部分有可配置逻辑模块对应的配置码流。CRC电路可以采用CRC16、CRC32以及CRC8中的任意一种结构。
在本申请中,硅连接层2内的硅连接层可配置逻辑模块可以有多种电路结构和含义,硅连接层可配置逻辑模块通常连接FPGA裸片,比如在本申请中:
1、硅连接层2内的硅连接层可配置逻辑模块为有源器件形成的信号延迟调节电路,信号延迟调节电路用于调节任意两个FPGA裸片之间的信号传输路径上的信号延迟,硅连接层配置电路根据对应的配置码流动态调整该信号延迟调节电路的时延,从而调节信号传输路径具有不同的信号延迟。比如:信号延迟调节电路包括若干个并联的不同大小的BUF,BUF的大小(W/L)控制该信号延迟调节电路的时延,如图5示出了信号延迟调节电路中包括三种不同大小的BUF的示意图,BUF从小到大依次对应具有BUF1X时延、BUF2X时延以及BUF3X时延,时延依次降低,则硅连接层配置电路根据对应的配置码流用配置位控制MUX实现BUF大小的选择,可以使该信号延迟调节电路具有相应的时延,相对于采用Metal Option选择的方式来说,这种方式可以多次重配置、根据需要动态调整。
2、硅连接层内的硅连接层可配置逻辑模块为有源器件形成的平衡时钟树,请参考图6,平衡时钟树的时钟输入端口获取时钟信号CLKIN、各个时钟输出端口分别连接各个FPGA裸片的时钟端口,平衡时钟树中的时钟输入端口到各个时钟输出端口的延迟相同,时钟信号进入平衡时钟树并通过平衡时钟树分别推到各个FPGA裸片,使得各个FPGA裸片的时钟同步,平衡时钟树具体可以采用H型时钟树结构、Buffer Tree结构、等长绕线路径结构等等,硅连接层配置电路根据对应的配置码流动态调整平衡时钟树。对平衡时钟树的调整包括:硅连接层配置电路根据对应的配置码流动态调整平衡时钟树的时钟输入端口的时钟信号CLKIN的来源,平衡时钟树的时钟输入端口的时钟信号CLKIN可以来自于多裸片FPGA的外部或任意一个FPGA裸片内部的时钟产生模块,则硅连接层配置电路可以用配置位控制MUX从而选择时钟信号CLKIN的来源。对平衡时钟树的调整还包括:平衡时钟树中的每个分支包括若干个并联的不同大小的BUF,如图6示出了每个分支中包括三种不同大小的BUF的示意图,BUF从小到大依次对应具有BUF1X时延、BUF2X时延以及BUF3X时延,时延依次降低,则硅连接层配置电路根据对应的配置码流用配置位控制MUX从而实现BUF大小的选择,可以使该分支具有相应的时延,与上述信号延迟调节电路原理类似。
为了结构的完整同时便于本领域技术人员理解,本申请接下来对多裸片FPGA内部的不同FPGA裸片之间的连接方式进行介绍如下,请结合图7,图7为图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通常根据堆叠互连需要沿着第一方向和第二方向按行列结构布设,结构示意图可以参考图8所示。另外为了实现更高的连通带宽可以布设多行/多列连接点引出端6,从而实现多行多列的高效二维级联。沿着每个方向布设多行/多列连接点引出端6时,可以是间隔均匀布设,也可以是随机布设。连接点引出端6与硅连接层2的连接方式具体可以是:FPGA裸片上生长有微凸球,连接点引出端6通过微凸球与硅连接层2连接并通过硅连接层2内部的跨裸片连线连接至其他FPGA裸片,图7可以看出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裸片之间的互连结构请参考图9所示的示意图。
以上所述的仅是本申请的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。
Claims (13)
1.一种通过硅连接层的配置电路实现全可编程的多裸片FPGA,其特征在于,所述多裸片FPGA包括基板、层叠设置在所述基板上的硅连接层以及层叠设置在所述硅连接层上的若干个FPGA裸片,所述硅连接层覆盖所有的FPGA裸片;每个FPGA裸片内包括若干个可配置功能模块、环于各个可配置功能模块分布的互连资源模块、以及连接点引出端,所述FPGA裸片内的可配置功能模块至少包括可编程逻辑单元、硅堆叠连接模块和输入输出端口,所述硅堆叠连接模块内包括若干个硅堆叠连接点,所述FPGA裸片内的可编程逻辑单元分别与硅堆叠连接点和输入输出端口通过互连资源模块相连,所述FPGA裸片内的硅堆叠连接点通过重布线层内的顶层金属线与相应的连接点引出端相连;每个FPGA裸片中的连接点引出端通过所述硅连接层内的跨裸片连线与其他FPGA裸片中相应的连接点引出端相连,每个FPGA裸片可通过所述硅连接层内的跨裸片连线与其他任意一个FPGA裸片相连;FPGA裸片内的输入输出端口通过所述硅连接层上的硅通孔连接至所述基板;
所述硅连接层中布设有相连的硅连接层配置电路和硅连接层可配置逻辑模块,所述硅连接层配置电路还分别连接各个FPGA裸片内部的裸片可配置逻辑模块、包括连接各个FPGA裸片内部的数据位移寄存器DSR和地址位移寄存器ASR,所述硅连接层配置电路根据获取到的配置码流实现对所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的全可编程。
2.根据权利要求1所述的多裸片FPGA,其特征在于,
所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的地址配置引脚均相连并连接到所述硅连接层配置电路,所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块的数据配置引脚均相连并连接到所述硅连接层配置电路,所述硅连接层配置电路对所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行串行统一配置。
3.根据权利要求1所述的多裸片FPGA,其特征在于,
所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块中的每个可配置逻辑模块的地址配置引脚和数据配置引脚分别连接至所述硅连接层配置电路,所述硅连接层配置电路对所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块进行并行独立配置。
4.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层配置电路对所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块统一进行配置地址编码,配置地址内部包括片选信号,所述硅连接层配置电路通过配置地址中的片选信号选择对所有可配置逻辑模块进行配置或者对部分可配置逻辑模块进行配置。
5.根据权利要求1所述的多裸片FPGA,其特征在于,所述硅连接层配置电路通过所述硅连接层连接至所述多裸片FPGA的配置模式设置端口,所述硅连接层配置电路通过所述配置模式设置端口获取模式选择信号并采用所述模式选择信号对应的配置模式,所述配置模式为JTAG、主串、从串、主SPI、从SPI和主BPI中的任意一种。
6.根据权利要求1-5任一所述的多裸片FPGA,其特征在于,所述硅连接层中布设有Flash存储器,所述Flash存储器中存储有配置码流,所述硅连接层配置电路连接所述Flash存储器并从所述Flash存储器中获取配置码流。
7.根据权利要求6所述的多裸片FPGA,其特征在于,所述Flash存储器支持串行模式;或者,所述Flash存储器支持并行模式,所述硅连接层可配置逻辑模块和各个裸片可配置逻辑模块对应的配置码流在所述Flash存储器中分段存储,所述硅连接层配置电路对若干个可配置逻辑模块对应的配置码流进行并行下载配置。
8.根据权利要求6所述的多裸片FPGA,其特征在于,所述硅连接层配置电路从所述Flash存储器中获取压缩后的配置码流,并直接根据压缩后的配置码流进行配置。
9.根据权利要求6所述的多裸片FPGA,其特征在于,所述硅连接层配置电路从所述Flash存储器中获取加密后的配置码流,对所述加密后的配置码流解密后进行配置。
10.根据权利要求1-5任一所述的多裸片FPGA,其特征在于,所述硅连接层中布设有定时器,所述硅连接层配置电路连接所述定时器并根据所述定时器每隔预定时间间隔进行配置刷新。
11.根据权利要求1-5任一所述的多裸片FPGA,其特征在于,所述硅连接层配置电路具有码流监视修正功能,所述硅连接层配置电路每隔预定时间间隔读取所述多裸片FPGA内部的配置码流进行校验,并在检测到配置码流出现错误时进行修正并重新写入。
12.根据权利要求11所述的多裸片FPGA,其特征在于,所述硅连接层配置电路内包括ECC电路,所述ECC电路用于实现码流监视修正功能,所述ECC电路每隔预定时间间隔依次读取配置码流中的各个数据帧进行校验,并在检测到数据帧出现错误时修正所述数据帧并重新写入修正后的数据帧。
13.根据权利要求11所述的多裸片FPGA,其特征在于,所述硅连接层配置电路内包括CRC电路,所述CRC电路用于实现码流监视修正功能,所述CRC电路每隔预定时间间隔读取可配置逻辑模块对应的配置码流进行校验,并在检测到可配置逻辑模块对应的配置码流出现错误时,对所述可配置逻辑模块对应的配置码流进行码流重下载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010620210.6A CN111725198B (zh) | 2020-07-01 | 2020-07-01 | 通过硅连接层的配置电路实现全可编程的多裸片fpga |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010620210.6A CN111725198B (zh) | 2020-07-01 | 2020-07-01 | 通过硅连接层的配置电路实现全可编程的多裸片fpga |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111725198A CN111725198A (zh) | 2020-09-29 |
CN111725198B true CN111725198B (zh) | 2022-02-15 |
Family
ID=72570750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010620210.6A Active CN111725198B (zh) | 2020-07-01 | 2020-07-01 | 通过硅连接层的配置电路实现全可编程的多裸片fpga |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111725198B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112835848B (zh) * | 2021-02-05 | 2023-03-10 | 中国电子科技集团公司第五十八研究所 | 互联裸芯的片间互联旁路系统及其通信方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104064556A (zh) * | 2013-03-14 | 2014-09-24 | 阿尔特拉公司 | 可编程中介层电路系统 |
US9607967B1 (en) * | 2015-11-04 | 2017-03-28 | Inotera Memories, Inc. | Multi-chip semiconductor package with via components and method for manufacturing the same |
CN109564914A (zh) * | 2016-08-15 | 2019-04-02 | 赛灵思公司 | 用于堆叠硅互连(ssi)技术集成的独立接口 |
TW201915624A (zh) * | 2017-08-08 | 2019-04-16 | 成真股份有限公司 | 根據標準商業化可編程邏輯半導體ic晶片所構成的邏輯驅動器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104081519B (zh) * | 2011-12-06 | 2017-08-15 | 英特尔公司 | 半导体芯片堆叠组件 |
US9886072B1 (en) * | 2013-06-19 | 2018-02-06 | Altera Corporation | Network processor FPGA (npFPGA): multi-die FPGA chip for scalable multi-gigabit network processing |
US9971733B1 (en) * | 2014-12-04 | 2018-05-15 | Altera Corporation | Scalable 2.5D interface circuitry |
US10630296B2 (en) * | 2017-09-12 | 2020-04-21 | iCometrue Company Ltd. | Logic drive with brain-like elasticity and integrality based on standard commodity FPGA IC chips using non-volatile memory cells |
US10749528B2 (en) * | 2019-08-20 | 2020-08-18 | Intel Corporation | Stacked programmable integrated circuitry with smart memory |
-
2020
- 2020-07-01 CN CN202010620210.6A patent/CN111725198B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104064556A (zh) * | 2013-03-14 | 2014-09-24 | 阿尔特拉公司 | 可编程中介层电路系统 |
US9607967B1 (en) * | 2015-11-04 | 2017-03-28 | Inotera Memories, Inc. | Multi-chip semiconductor package with via components and method for manufacturing the same |
CN109564914A (zh) * | 2016-08-15 | 2019-04-02 | 赛灵思公司 | 用于堆叠硅互连(ssi)技术集成的独立接口 |
TW201915624A (zh) * | 2017-08-08 | 2019-04-16 | 成真股份有限公司 | 根據標準商業化可編程邏輯半導體ic晶片所構成的邏輯驅動器 |
Also Published As
Publication number | Publication date |
---|---|
CN111725198A (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111755436B (zh) | 具有实时监测并修正配置信息功能的多裸片fpga | |
US11693810B2 (en) | Interface bridge between integrated circuit die | |
US11194757B2 (en) | Scalable 2.5D interface circuitry | |
US11714941B2 (en) | Modular periphery tile for integrated circuit device | |
US12009298B2 (en) | Fabric die to fabric die interconnect for modularized integrated circuit devices | |
EP4020214A1 (en) | Modular error correction code circuitry | |
CN101325085B (zh) | 存储器控制器以及优化存储器控制器的接合垫序列的方法 | |
CN111725198B (zh) | 通过硅连接层的配置电路实现全可编程的多裸片fpga | |
CN111725188B (zh) | 一种硅连接层具有可配置电路的多裸片fpga | |
US10108488B2 (en) | Memory module with integrated error correction | |
CN111710663B (zh) | 一种多裸片硅堆叠互连结构fpga | |
KR20210095009A (ko) | 고속 및 저전력으로 데이터를 송수신하는 메모리 장치 | |
CN111725187B (zh) | 基于通用结构硅连接层构成的多裸片fpga |
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 |