首页 / 专利库 / 分销网络和设备 / 发电厂 / 核能电厂 / 核反应堆 / 堆芯 / 基于印录存储阵列的可编程计算阵列封装

基于印录存储阵列的可编程计算阵列封装

阅读:1013发布:2020-07-24

专利汇可以提供基于印录存储阵列的可编程计算阵列封装专利检索,专利查询,专利分析的服务。并且本 发明 提出一种新型可编程 门 阵列——可编程计算阵列封装。它含有至少一可编程计算芯片和一可编程逻辑芯片。可编程计算芯片含有多个可编程计算单元,每个可编程计算单元含有多个印录存储阵列,每个印录存储阵列存储一基本函数库的查找表(LUT)。可编程计算芯片和可编程逻辑芯片垂直堆叠,并通过芯片间连接电耦合。,下面是基于印录存储阵列的可编程计算阵列封装专利的具体信息内容。

1.一种可编程计算阵列封裝(400),其特征在于含有:
一含有多个可编程计算单元(100, 100AA-100AD)的可编程计算芯片(100W),该可编程计算单元(100)含有:第一和第二三维印录存储器(3D-P)阵列(110, 120),该第一3D-P阵列(110)存储一第一基本函数的至少部分查找表(LUT A),该第二3D-P阵列(120)存储一第二基本函数的至少部分查找表(LUT B);至少一与该第一和第二3D-P阵列耦合的计算单元内可编程连接(150或160),基于该计算单元内可编程连接的设置信号(125),该可编程计算单元(100)选择性地实现该第一或第二基本函数;
一含有多个可编程逻辑单元(200, 200AA-200AD)的可编程逻辑芯片(200W),该可编程逻辑单元(200)从一逻辑运算库中选择性地实现一种逻辑运算;
所述可编程计算芯片(100W)和所述可编程逻辑芯片(200W)分别形成在不同衬底上,并通过多个芯片间连接(180)电耦合。
2.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于含有:多个将该可编程计算单元(100AA-100AD)和该可编程逻辑单元(200AA-200AD)选择性耦合的可编程连接(300)。
3.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:通过对该可编程计算单元(100AA-100AD)、该可编程逻辑单元(200AA-200AD)和该可编程连接(300)进行编程以实现一函数,该函数是所述第一和第二基本函数的一种组合。
4.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:该第一和第二3D-P阵列(110, 120)并排排列。
5.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:该第二3D-P阵列堆叠(120)在该第一3D-P阵列(110)上。
6.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:存储在该3D-P中的数据是在生产过程中通过一印刷方法录入的。
7.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:至少部分所述可编程连接(300)位于所述可编程计算芯片(100W)中。
8.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:至少部分所述可编程连接(300)位于所述可编程逻辑芯片(200W)中。
9.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于:该可编程计算芯片(100W)和该可编程逻辑芯片(200W)垂直堆叠。
10.根据权利要求1所述的可编程计算阵列封装(400),其特征还在于含有:至少两个可编程计算芯片(100W、100W`),所述可编程计算芯片(100W、100W`)和所述可编程逻辑芯片(200W)通过芯片间连接(180)电耦合。

说明书全文

基于印录存储阵列的可编程计算阵列封装

技术领域

[0001] 本发明涉及集成电路领域,更确切地说,涉及可编程阵列。

背景技术

[0002] 可编程门阵列属于半定制集成电路,即通过后端工艺或现场编程,实现对逻辑电路的定制化。美国专利4,870,302披露了一种可编程门阵列。它含有多个可编程逻辑单元(configurable logic element,或configurable logic block)和可编程连接(configurable interconnect,或programmable interconnect)。其中,可编程逻辑单元在设置信号控制下可以选择性地实现移位、逻辑非、AND(逻辑与)、OR(逻辑和)、NOR(和非)、NAND(与非)、XOR(异或)、+(算术加)、-(算术减)等功能;可编程连接在设置信号控制下可以选择性地实现两条互连线之间的连接、断开等功能。
[0003] 目前,很多应用均涉及复杂数学函数的计算。复杂数学函数的例子包括超越函数,如指数(exp)、对数(log)、三函数(sina、cos)以及它们的组合等。为了保证执行速度,高性能应用要求用硬件来实现复杂数学函数。在现有的可编程门阵列中,复杂数学函数均通过来固化计算单元来实现。这些固化计算单元为硬核(hard block)的一部分,其电路已经固化、不能对其进行再配置。很明显,固化计算单元将限制可编程门阵列的进一步应用。为了克服这个困难,本发明将可编程门电路的概念推广,使固化计算单元可编程化。具体说来,可编程门电路除了含有可编程逻辑单元以外,还含有可编程计算单元。该可编程计算单元可以选择性地实现多种基本函数中的一种。

发明内容

[0004] 本发明的主要目的是推广可编程门电路在复杂数学计算领域的应用。
[0005] 本发明的另一目的是提供一种可编程计算电路,不仅其逻辑功能可以被定制,其计算功能也可以被定制。
[0006] 本发明的另一目的是提供一种计算能更灵活、更强大的可编程门阵列。
[0007] 为了实现这些以及别的目的,本发明提出一种新型可编程门阵列——可编程计算阵列封装。它含有至少一可编程计算芯片和一可编程逻辑芯片。可编程计算芯片含有多个可编程计算单元,每个可编程计算单元含有多个印录存储阵列,每个印录存储阵列存储一基本函数库的查找表(LUT)。可编程计算芯片和可编程逻辑芯片垂直堆叠,并通过芯片间连接电耦合。
[0008] 对于高性能可编程计算单元来说,三维印录存储器(three-dimensional printed memory,简称为3D-P,参见中国专利201280042212.5)尤其适合存储LUT。3D-P是三维存储器(three-dimensional memory,简称为3D-M,参见中国专利98119572.5)的一种,其存储的信息是在工厂生产过程中采用采用印刷方式录入的(印录法,如光刻、纳米压印等手段)录入的。这些信息永久固定,出厂后不能改变。由于3D-P存储元不需要实现电编程,它可以比三维可写存储器(three-dimensional writable memory,简称为3D-W)承受更大的读电压和读电流。因此,3D-P的读速度远快于3D-W。
[0009] 除了可编程计算单元,可编程计算阵列封装还含有多个可编程逻辑单元和可编程连接。复杂数学函数是基本函数(包括log、exp、sin、cos、sqrt、cbrt、tan、atan等)的一种组合。在其实现过程中,复杂数学函数首先被分解为多个基本函数。然后针对每个基本函数设置对应的可编程计算单元,使其实现相应的基本函数。最后,通过设置可编程逻辑单元和可编程连接,实现所需的复杂数学函数。
[0010] 采用3D-P来实现可编程计算单元有诸多优势:首先,3D-P比3D-W的读速度快,可实现高性能计算单元;其次,不同基本函数所需的3D-P阵列大小均相同或相差整数倍。代表不同基本函数的3D-P阵列可放置在不同存储层中,并通过三维堆叠集成到同一3D-M模中。这能极大地减少可编程计算单元所占的衬底面积。最后,由于3D-P阵列基本不占衬底面积,计算单元内可编程连接可以集成在3D-P阵列下方,这样可以进一步减少可编程计算单元所占的衬底面积。
[0011] 相应地,本发明提出一种可编程计算阵列封裝(400),其特征在于含有:一含有多个可编程计算单元(100, 100AA-100AD)的可编程计算芯片(100W),该可编程计算单元(100)含有:第一和第二三维印录存储器(3D-P)阵列(110, 120),该第一3D-P阵列(110)存储一第一基本函数的至少部分查找表(LUT A),该第二3D-P阵列(120)存储一第二基本函数的至少部分查找表(LUT B);至少一与该第一和第二3D-P阵列耦合的计算单元内可编程连接(150或160),基于该计算单元内可编程连接的设置信号(125),该可编程计算单元(100)选择性地实现该第一或第二基本函数;一含有多个可编程逻辑单元(200, 200AA-200AD)的可编程逻辑芯片(200W),该可编程逻辑单元(200)从一逻辑运算库中选择性地实现一种逻辑运算;所述可编程计算芯片(100W)和所述可编程逻辑芯片(200W)分别形成在不同衬底上,并通过多个芯片间连接(180)电耦合。附图说明
[0012] 图1是一种可编程计算单元的符号。
[0013] 图2是一种可编程计算单元的电路框图,该图同时披露了该可编程计算单元实现的基本函数库。
[0014] 图3是该可编程计算单元的第一种实现方式,该图为其电路图。
[0015] 图4A-图4B是该可编程计算单元的第二种实现方式,图4A为其截面图;图4B为其衬底电路布局图。
[0016] 图5是一种可编程计算阵列封装的电路图。
[0017] 图6A披露一种可编程连接实现的连接库;图6B披露一种可编程逻辑单元实现的逻辑运算库。
[0018] 图7是一种可编程计算阵列封装具体实现的电路图。
[0019] 图8是一种可编程计算阵列封装的透视图。
[0020] 图9A-9C是三种可编程计算阵列封装的截面图。
[0021] 注意到,这些附图仅是概要图,它们不按比例绘图。为了显眼和方便起见,图中的部分尺寸和结构可能做了放大或缩小。在不同实施例中,相同的符号一般表示对应或类似的结构。

具体实施方式

[0022] 图1是一种可编程计算单元100的符号。其输入端IN包括输入数据115,输出端OUT包括输出数据135,设置端CFG包括设置信号125。在设置信号125的控制下,该可编程计算单元100从一基本函数库中选择所需的基本函数。
[0023] 图2是一种可编程计算单元100的电路框图,该图同时披露了该可编程计算单元100能实现的基本函数库。它含有第一和第二计算单元内可编程连接150、160、以及存储一基本函数库的LUT A-D。在本实施例中,第一计算单元内可编程连接150是一1到4的demux,第二计算单元内可编程连接160是一4到1的mux,该基本函数库包括对数log()、指数exp()、对数正弦log[sin()]和对数余弦log[cos()]。LUT A存储对数表log()、LUT B存储指数表exp()、LUT C存储对数正弦表log[sin()]、LUT D存储对数余弦表log[cos()]。比如说,为了实现函数exp(),第一计算单元内可编程连接150将输入数据115送到相应的LUT B作为地址。基于这个地址进行查表,即读出LUT B中的值(exp())。然后第二计算单元内可编程连接160将从该值送到输出作为输出数据135。对于熟悉本领域的专业人士来说,基本函数库可以含有更多的基本函数。比较说,它可以含有八种基本函数,包括log()、exp()、sin()、cos()、sqrt()、cbrt()、tan()、atan()。当然,其它多种组合也是可行的。
[0024] 图3表示可编程计算单元100的第一种实现方式,这是其电路图。在该实施例中,每个LUT存储在一印录存储阵列中:LUT A存储在印录存储阵列110中,LUT B存储在印录存储阵列120中,LUT C存储在印录存储阵列130中,LUT D存储在印录存储阵列140中。这些印录存储阵列110-140并肩排列。该电路还包括计算单元内可编程连接150、160以及各个印录存储阵列110-140的周边电路:如印录存储阵列110的X解码器15A和Y解码器(包括读出电路)17A等。
[0025] 为了减少可编程计算单元100所占的衬底面积,本发明充分三维存储器(3D-M,参见中国专利98119572.5)三维堆叠的特性,将存储不同基本函数的三维印录存储器(3D-P,参见中国专利201280042212.5)阵列堆叠在一起。图4A-图4B表示可编程计算单元100的第二种实现方式。在图4A的截面图中,存储函数log()之LUT A的3D-P阵列 110堆叠在衬底电路0K上方(+z方向),存储函数exp()之LUT B的3D-P阵列120堆叠在3D-P阵列110上方(+z方向),存储函数log[sin()]之LUT C的3D-P阵列130堆叠在3D-P阵列 120上方(+z方向),存储函数log[cos ()]之LUT D的3D-P阵列140堆叠在3D-P阵列130上方(+z方向)。从图4B的衬底电路布局图可以看得更清楚,该实施例中的存储LUT A的3D-P阵列 110、存储LUT B的3D-P阵列 120、存储LUT C的3D-P阵列 130、存储LUT D的3D-P阵列 140在衬底0上的投影是重叠的,它们所占的衬底总面积只是图3中实施例的1/4。同时,Z解码器19起计算单元内可编程连接150、160的作用。
[0026] 对于3D-P来说,由于存储的数据在工艺过程中录入,并且之后不能改变,3D-P不需要支持电编程。与之比较,三维可写存储器(3D-W)需要支持电编程。由于读电压/读电流不能超过编程电压/编程电流,3D-W所能承受的读电压/读电流均小于 3D-P。 由于3D-W的读速度远低于3D-P,3D-P更适合高性能计算。
[0027] 图5表示一种可编程计算阵列封装400。它含有规则排列的可编程模块400A和可编程模块400B等。每个可编程模块(如400A)含有多个可编程计算单元(如100AA-100AD)和可编程逻辑单元(如200AA-200AD)。在可编程计算单元(如100AA-100AD)和可编程逻辑单元(如200AA-200AD)之间含有可编程信道320、340;在可编程模块400A和可编程模块400B之间,也含有可编程信道310、330、350。可编程信道310-350含有多个可编程连接300。对于熟悉本领域的专业人士来说,除了可编程信道以外,还可以采用门海(sea-of-gates)等设计。
[0028] 图6A披露一种可编程连接300能实现的连接库。该可编程连接300与美国专利4,870,302中披露的可编程连接类似。它采用下述连接库的一种连接方式:a)互连线302/304相连,互连线306/308相连, 但302/304与306/308不相连;b)互连线302/304/306/308均相连;c)互连线306/308相连,互连线302、304不相连,也不与306/308相连;d)互连线302/304相连,互连线306、306不相连,也不与302/304相连;e)互连线302、304、306、306均不相连。在本说明书中,两条互连线之间的符号“/”表示该两条互连线相连,两条互连线之间的符号“、”表示该两条互连线不相连。
[0029] 图6B披露一种可编程逻辑单元200能实现的逻辑运算库。其输入A和B为输入数据210、220,输出C为输出数据230。该可编程逻辑单元200与美国专利4,870,302中披露的可编程逻辑单元类似。它可以实现下述逻辑运算库中的至少一种:C=A、A逻辑非、A移位、AND(A,B)、OR(A,B)、NAND(A,B)、NOR(A,B)、XOR(A,B)、算术加A+B、算术减A-B等。可编程逻辑单元
200还可以含有寄存器、触发器等时序电路元件,以实习流线(pipeline)等操作。
[0030] 图7是一种可编程计算阵列封装400的具体实现,它用于实现一复杂数学函数:e=a.sin(b)+c.cos(d)。在可编程信道310-350中可编程连接300采用图6A中的表示方式:交叉点有圆点的可编程连接表示交叉线相连,交叉点无圆点的可编程连接表示交叉线不相连,断开的可编程连接表示断开的互连线被分为两个互不相连的互连线段。在该实施例中,可编程计算单元100AA被设置为log(),其计算结果log(a)被送到可编程逻辑单元200AA的第一输入。可编程计算单元100AB被设置为log[sin()],其计算结果log[sin(b)]被送到可编程逻辑单元200AA的第二输入。可编程逻辑单元200AA被设置为“算术加”,其计算结果log(a)+log[sin(b)]被送到可编程计算单元100BA。可编程计算单元100BA被设置为exp(),其计算结果exp{log(a)+log[sin(b)]}=a.sin(b)被送到可编程逻辑单元200BA的第一输入。类似地,通过适当的设置,可编程计算单元100AC、100AD、可编程逻辑单元200AC、可编程计算单元100BC的结果c.cos(d)被送到可编程逻辑单元200BA的第二输入。可编程逻辑单元
200BA被设置为“算术加”,a.sin(b)和c.cos(d)在此相加,最终结果送到输出e。很明显,通过改变设置,可编程计算阵列封装400还可以实现其它复杂数学函数。
[0031] 图8是一种可编程计算阵列封装400的透视图。它含有一可编程计算芯片100W和一可编程逻辑芯片200W。可编程计算芯片100W形成在计算芯片衬底100S中,它含有多个可编程计算单元100AA-100BB。每个可编程计算单元100含有一可写存储阵列110,它用于存储一基本函数的查找表(LUT)。可编程逻辑芯片200W形成在逻辑芯片衬底200S中,它含有多个可编程逻辑单元200AA-200BB,每个可编程逻辑单元200从一逻辑运算库中选择性地实现一种逻辑运算。可编程计算芯片100W通过多个芯片间连接180与可编程逻辑芯片200W电耦合。芯片间连接180可以是微焊点(micro-bump)或穿透片通道(TSV)。可编程计算阵列封装400还含有多个可编程连接,一部分可编程连接位于可编程计算芯片100W中,另一部分可编程连接位于可编程逻辑芯片200W中。
[0032] 图9A-图9C是三种可编程计算阵列封装400的截面图,它们均为一种多芯片封装(multi-chip package,简称为MCP)。其中,图9A中的可编程计算阵列封装400含有两个分离芯片:可编程计算芯片100W和可编程逻辑芯片200W。芯片100W、200W堆叠在封装衬底110上并位于同一封装壳130中。微焊点(micro-bump)116为它们提供电耦合,起到芯片间连接180的作用。在本实施例中,可编程计算芯片100W堆叠在可编程逻辑芯片200W上;同时,可编程计算芯片100W被翻转,并与可编程逻辑芯片200W面对面地堆叠在一起。在其它实施例中,可编程计算芯片100W可不被翻转;或,可编程逻辑芯片200W堆叠在可编程计算芯片100W上。
[0033] 图9B中的可编程计算阵列封装400含有可编程计算芯片100W、可编程逻辑芯片200W和硅插板(interposer)120。硅插板120含有多个穿透硅片通道(TSV)118,它使可编程计算芯片100W和可编程逻辑芯片200W之间的电耦合更为容易,设计时有更多自由度,同时散热更为良好。此实施例还含有多个微焊点116,它与TSV 118构成芯片间连接180。
[0034] 图9C中的可编程计算阵列封装400含有一可编程逻辑芯片200W和至少两个可编程计算芯片100W、100W`。这些芯片200W、100W和100W`是分离的,并位于同一封装壳130中。其中,芯片100W`堆叠在芯片100W之上,而芯片100W又堆叠在芯片200W之上。芯片200W、100W和100W`之间通过TSV 118和微焊点116耦合。很明显,图9C比图9A具有更大的存储容量。类似地,在此实施例中,TSV 118和微焊点116构成芯片间连接180。
[0035] 可编程计算阵列封装400对制造工艺角度有益。由于可编程计算芯片100W和可编程逻辑芯片200W为不同芯片,构成可编程计算芯片100W的存储晶体管和构成可编程逻辑芯片200W的逻辑晶体管分别形成在不同衬底(100S、200S)上,它们的制造工艺可分别优化。可编程计算芯片100W可以采用任何形式的可写存储器作为LUT的载体,如SRAM、DRAM、MRAM、FRAM、OTP、NOR闪存、NAND闪存等;可编程逻辑芯片200W可以含有任何形式的可编程逻辑电路。由于可编程计算芯片100W中的可写存储阵列形成在单晶半导体衬底100S上,其速度很快。此外,由于微焊点(或穿透硅片通道)180数量众多且长度较短,可编程计算芯片100W和可编程逻辑芯片200W之间的带宽较高。
[0036] 本说明书均以现场编程门阵列(FPGA)为例。在FPGA中,晶圆将完成所有工序(包括所有可编程计算单元、可编程逻辑单元和可编程连接)。在编程现场,可通过设置可编程连接来定义FPGA的功能。上述FPGA的例子可以很容易地推广到传统的可编程门阵列。在传统可编程门阵列中,晶圆仅半完工,即晶圆生产仅完成可编程计算单元和可编程逻辑单元,但未完成可编程连接。当芯片的功能确定后,可编程信道310-350通过后端工艺来定制。
[0037] 应该了解,在不远离本发明的精神和范围的前提下,可以对本发明的形式和细节进行改动,这并不妨碍它们应用本发明的精神。因此,除了根据附加的权利要求书的精神,本发明不应受到任何限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈