光学接口堆叠存储器及相关方法和系统
文献发布时间:2023-06-19 09:57:26
相关申请
本申请要求于2018年5月17日提交的名称为“OPTICALLY INTERFACED STACKEDMEMORIES AND RELATED METHODS AND SYSTEMS”的美国临时专利申请No.62/673,046根据35U.S.C.§119(e)的权益,该美国临时专利申请通过引用整体地并入本文,并且要求于2018年6月4日提交的名称为“OPTICALLY INTERFACED STACKED MEMORIES AND RELATEDSYSTEMS AND METHODS”的美国临时专利申请No.62/680,195根据35U.S.C.§119(e)的权益,该美国临时专利申请通过引用整体地并入本文。
背景技术
计算机系统包括用于存储数据和机器代码的随机存取存储器(RAM)。RAM通常是易失性存储器,使得所存储的信息在断电时丢失。在现代实现中,RAM采取集成电路的形式。每个集成电路包括多个RAM单元。
动态随机存取存储器(DRAM)是一种特殊类型的RAM,其以电荷的形式在集成电路的电容器内存储数据位。例如,经放电的电容器可表示0并且经充电的电容器可表示1。与其他类型的RAM相比,DRAM的优势在于每个单元都使用单个晶体管和一个电容器来实现,而静态随机存取存储器(SRAM)中有四个或六个晶体管。缺点是电容器的电荷随着时间的推移而泄漏。因此,DRAM需要用于周期性地刷新其电容器的状态的电路。
为了能够访问存储的数据和机器代码,RAM被安置为与处理器进行电通信。通常,这些电通信被实现为形成在设置有RAM和处理器的基板上的金属迹线。
发明内容
一些实施例涉及一种存储器设备,该存储器设备包括多个堆叠的存储器层以及光学晶片(die),所述多个堆叠的存储器层中的每一个存储器层包括多个存储器单元,所述光学晶片接合到所述多个堆叠的存储器层并且通过一个或多个互连件与所述多个堆叠的存储器层中的至少一个存储器层电通信。所述光学晶片包括光学收发器和存储器控制器,所述存储器控制器被配置为控制所述多个堆叠的存储器层中的所述至少一个存储器层的读取操作和/或写入操作。
所述一个或多个互连件可以包括一个或多个穿硅通孔(TSV)。
所述光学晶片还可以包括与所述一个或多个TSV电通信的一个或多个焊盘。
所述存储器控制器可以包括至少一个逻辑元件。
所述多个存储器单元可以包括多个固态存储器单元。
所述光学晶片可以位于所述多个堆叠的存储器层的一端。
所述光学晶片还可以包括被布置为将光纤边缘耦接到所述光学收发器的光学耦合器。
所述光学耦合器可以包括V形槽或光栅耦合器。
所述光学收发器可以被配置为执行波分复用(WDM)。
所述多个堆叠的存储器层可以以三维(3D)配置彼此堆叠。
所述光学收发器可以包括至少一个光检测器和至少一个光调制器。
所述光学晶片可以3D接合到所述多个堆叠的存储器层。
所述光学晶片可以由绝缘体上硅(SOI)基板形成。
所述光学晶片可具有限定平面的表面,并且所述光学晶片还可以包括被配置为耦接到平面外光模的光栅耦合器。
一些实施例涉及一种用于访问存储器设备的方法,所述方法包括:利用设置在与存储器控制器相同的晶片上的光学收发器,接收光信号并将所述光信号转换为电信号;以及利用所述存储器控制器,基于所述电信号生成多个控制信号,并且将所述多个控制信号发送到接合到所述晶片的多个堆叠的存储器层。
所述方法还可以包括:利用所述多个堆叠的存储器层中的至少一个,响应于接收到所述多个控制信号而执行至少一个写入和/或读取操作。
所述方法还可以包括:利用通过光纤光学地耦接到所述晶片的逻辑单元,将所述光信号发送到所述光学收发器。
所述方法还可以包括:利用所述存储器控制器,从所述多个堆叠的存储器层中的至少一个接收一个或多个位;以及利用所述光学收发器,利用所述一个或多个位对光学传输信号进行编码。
一些实施例涉及一种计算系统,该计算系统包括具有光学输入/输出(I/O)接口的逻辑单元、光学地耦接到所述逻辑单元的所述I/O接口的光学通道以及存储器设备。所述存储器设备包括多个堆叠的存储器层和光学晶片,所述多个堆叠的存储器层中的每一个存储器层包括多个存储器单元,所述光学晶片接合到所述多个堆叠的存储器层并且通过一个或多个互连件与所述多个堆叠的存储器层中的至少一个存储器层电通信。所述光学晶片包括光学收发器和存储器控制器,所述光学收发器光学地耦接到所述光学通道,所述存储器控制器被配置为控制所述多个堆叠的存储器层中的所述至少一个存储器层的读取操作和/或写入操作。
所述一个或多个互连件可以包括一个或多个穿硅通孔(TSV)。
所述存储器控制器可以包括至少一个逻辑元件。
所述多个堆叠的存储器层可以以三维(3D)配置彼此堆叠。
所述光学晶片可以3D接合到所述多个堆叠的存储器层。
所述光学通道可以包括光纤,该光纤具有耦接到I/O接口的第一端部和耦接到所述光学晶片的第二端部。
所述光学通道可以包括自由空间光学通道。
所述存储器设备可以位于所述逻辑单元的表面上,所述逻辑单元的所述表面限定了平面。所述存储器设备可以包括第一平面外耦合器,并且所述逻辑单元包括第二平面外耦合器,所述第一平面外耦合器通过所述光学通道光学地耦接到所述第二平面外耦合器。
所述第一平面外耦合器和所述第二平面外耦合器之间的至少一个可以包括光栅耦合器。
所述逻辑单元可以包括用于对光域中的数据进行处理的光学电路。
所述逻辑单元和所述存储器设备可以设置在公共印刷电路板(PCB)上。所述计算系统可以在所述PCB和所述存储器设备之间没有中介层(interposer)。
一些实施例涉及一种包括多个计算节点的计算系统,所述多个计算节点至少包括第一计算节点、第二计算节点和第三计算节点。所述多个计算节点中的每一个计算节点包括逻辑单元和光学地耦接到所述逻辑单元的存储器设备。所述存储器设备可以包括多个堆叠的存储器层。所述第一计算节点光学地耦接到所述第二计算节点和所述第三计算节点。
所述第一计算节点的逻辑单元可以光学地耦接到所述第二计算节点的存储器设备和所述第三计算节点的存储器设备。
所述多个计算节点可以形成全对全架构(all-to-all architecture)、点对多点架构或环形架构。
所述第一计算节点可以通过长于10cm的光纤光学地耦接到所述第二计算节点。
所述第一计算节点可以通过长于1m的光纤光学地耦接到所述第二计算节点。
一些实施例涉及一种用于制造存储器的方法。该方法包括:
制造多个存储器层并且将所述多个存储器层彼此堆叠,制造包括存储器控制器和光学收发器的光学晶片,以及将所述光学晶片接合到堆叠的存储器层以使得所述存储器控制器与至少一个所述存储器层电通信。
所述方法还可以包括将光纤连接到所述光学晶片。
将所述光纤连接到所述光学晶片可以包括将所述光纤安置成与所述光学收发器进行光通信。
将所述光纤连接到所述光学晶片可以包括将所述光纤的一部分定位在v形槽中。
所述方法还可以包括将所述光学晶片安装到印刷电路板。
制造所述多个存储器层可以包括利用第一制造节点来制造所述多个存储器层,并且制造所述光学晶片可以包括利用小于所述第一制造节点的第二制造节点来制造所述光学晶片。
附图说明
将参考以下附图描述本申请的各个方面和实施例。应当理解,附图不一定是按比例绘制的。在多个图中出现的术语在它们出现在的所有图中由相同的附图标记指示。
图1是包括微处理器和多个存储器单元的传统系统的示意图。
图2是根据一些非限制性实施例的包括逻辑单元和多个光学接口堆叠存储器(OISM)单元的系统的示意图。
图3是根据一些非限制性实施例的代表性OISM的侧视图。
图4是根据一些非限制性实施例的可结合图3的OISM使用的光学晶片的示意图。
图5A是根据一些非限制性实施例的包括在同一硅层中制造的波导和晶体管的硅晶片的示意图。
图5B是根据一些非限制性实施例的可以在图4的光学晶片中使用的代表性晶体管的示意图。
图6是根据一些非限制性实施例的包括将光学晶片耦接到多个动态随机存取存储器(DRAM)层的多个互连件的代表性OISM的侧视图。
图7是根据一些非限制性实施例的具有波分复用(WDM)能力的光学晶片的示意图。
图8是根据一些非限制性实施例的可以与图2的系统一起使用的代表性逻辑单元的示意图。
图9是根据一些非限制性实施例的包括v形槽的光学晶片的侧视图。
图10A是根据一些非限制性实施例的系统的侧视图,在该系统中OISM直接接合到逻辑单元。
图10B示出了根据一些非限制性实施例以附加细节示出图10A的系统的一部分。
图11A是包括通过环形总线彼此连接的多个微处理器的常规系统架构的示意图。
图11B是根据一些非限制性实施例的系统架构的示意图,在该系统架构中多个逻辑单元和多个OISM彼此连接。
图12是示出根据一些非限制性实施例的用于制造光学接口堆叠存储器的方法的示例的流程图。
具体实施方式
I.
发明人已经认识并意识到,限制数据密集型计算的扩展的主要瓶颈之一是不能在存储器带宽和总存储器容量方面扩展现代计算系统。数据密集型计算不仅需要访问大量数据,而且需要大带宽。存储器带宽是处理器可以从半导体存储器读取数据或将数据存储到半导体存储器中的速率。当前的计算系统依赖于图形处理单元(GPU)来相对于基于通用处理器的实现增加存储器带宽。例如,一些NVIDIA GPU具有以高达256GB/s的带宽从存储器传送数据的能力。虽然这种存储器带宽对于大多数基于图形的应用可能是足够的,但对于某些数据密集型应用(包括例如深度神经网络和其他类型的机器学习网络,以及为高频交易而设计的计算系统)来说还远远不够。
例如,深度神经网络依赖于大量的数据,诸如权重和激活参数。例如,具有2600万个权重参数的典型的50层网络在向前传输中可以计算多达1600万个激活。如果使用32位浮点值来存储权重和激活,则总存储要求为168MB。另外,如果数据以密集向量的形式排列,则存储器需求可能会增加到数千兆字节。在训练期间,训练数据集的局部性因为访问这些大型数据集的频率而是重要的。这些数据量太大而无法存储在GPU的内部存储器中,因此需要使用外部DRAM。另一示例是DDR(DRAM)带宽受限的存储器密集型数据中心工作负荷。这些工作负荷可能包括服务提供商应用,诸如视频流传输和网络缓存。
图1是示出包括与多个外部DRAM单元通信的微处理器(诸如GPU)的传统架构的示意图。在操作期间,微处理器可以访问一个或多个DRAM单元以执行各种操作,包括读取数据、写入数据、缓存、缓冲等。如图所示,微处理器104和DRAM单元106位于中介层102上,中介层102又位于印刷电路板(PCB)100上。每个DRAM单元通过形成在中介层上的多条导电迹线(通常是数百条迹线)与微处理器通信,用于来回传输数据。应该注意的是,微处理器和DRAM单元设置在中介层上,而不是直接设置在PCB上,因为中介层更适合托管微处理器/DRAM通信所需的大量导电迹线。事实上,中介层102类型的中介层通常使用微制造技术来生产,诸如用于集成电路的相同的微制造技术,因此允许导电迹线密度相对于PCB的密度大得多。
每条导电迹线不可避免地在微处理器和相应DRAM单元之间的电路径中引入非零阻抗(例如,非零电阻和非零电容)。由于各种原因,大的阻抗值是不期望的,包括因为1)大的阻抗值限制了能够以可忽略的误码率通过迹线传输的最大数据速率,以及2)大的阻抗值导致通过迹线传输数据所消耗的大量功率。为此,每条迹线可被视为RC电路,其中电带宽与1/RC成比例,并且功耗与CV
在其他参数中,阻抗的值取决于迹线的长度。特别地,迹线越长,阻抗的值越大。因此,DRAM单元离微处理器越近,迹线所能支持的数据速率就越高,并且总功耗就越低。结果,DRAM单元全部位于微处理器的周边附近。不幸的是,由于其有限的尺寸,只有那么多的DRAM单元可以定位在微处理器的周边附近。例如,图1的系统使得仅八个DRAM单元106可物理地定位于微处理器的周边的一定距离内(应了解,该示例仅出于说明目的而提供并且不旨在是现实的)。由于缺乏微处理器附近的空间,附加DRAM单元将不得不定位得比DRAM单元106更远。结果是,微处理器和附加DRAM单元之间的迹线的长度将明显大于图1所示的迹线的长度。因此,额外的存储器容量将以功耗的显著增加为代价。据估计,在一个典型的基于GPU的系统中,由于迹线的长度,当在处理器的1cm处添加10s的DRAM单元时,所消耗的额外功率为10s瓦的量级。不幸的是,额外的功耗是不可接受的,尤其是在需要大量存储器来支持数据密集型应用时。因此,很明显,简单地将存储器容量添加到当前基于GPU的系统中并不是一个可扩展的解决方案。
还有一个进一步的瓶颈,使当前的计算系统无法充分扩展,这是由于使用了中介层。如以上所解释的,图1的系统依赖于使用中介层在DRAM单元和微处理器之间路由数据,因为与PCB相比,中介层可以容纳更高密度的导电迹线。然而,使用微制造技术形成需要这些中介层具有小的占用空间,从而限制了可以容纳在它们上的DRAM单元的数量。典型的中介层的面积为500mm
II.
认识到传统架构的上述限制,发明人已经开发了这样的系统,在该系统中,存储器带宽和总存储器容量可以被缩放,而不会显著影响系统的总功耗。本公开的一些实施例涉及光学接口堆叠存储器,其中多层存储器单元彼此堆叠在一起,因此增加了每单位面积的存储器密度,并且其中使用光载波在存储器单元与微处理器之间路由数据流。与导电迹线不同,即使通道的长度增加,光学通道(例如,光纤或自由空间光学器件)也不会在存储器和微处理器之间的路径中引入阻抗。因此,传送数据所消耗的功率和可以通过具有可忽略的误码率的光学通道来传送的最大数据速率不受光学通道长度的影响。结果,不需要如在基于GPU的系统中那样将存储器单元定位在微处理器的周边附近。这又使得计算系统的整体架构具有更大的灵活性。
较长的光学通道的影响之一是增加了衰减损耗。衰减损耗可能会对光学链路的总功率预算产生影响,因为光检测器需要最小量的光功率才能以无误差的方式工作。然而,衰减损耗是可忽略的。例如,在C波段工作的一些单模光纤引入的衰减损耗低至0.2dB/Km。
根据一些非限制性实施例,图2中描绘了包括光学接口堆叠存储器的系统的一个示例。图2的系统包括多个光学接口堆叠存储器(OISM)单元206(为了清楚起见,在图2中仅标记了一个OISM)和逻辑单元204。在该示例中,每个OISM经由光纤208与逻辑单元204通信(同样,为了清楚起见,图2中仅示出了一个光纤),但是也可以另选地或另外地使用其他类型的光学通道。例如,将每个OISM连接到逻辑单元204的光学通道可以包括波导和/或自由空间光学通道。另外,一个或多个OISM可以直接连接到一个或多个其他OISM,用于这些OISM之间的直接数据通信。
与图1的系统不同,在这种情况下,存储器单元可以直接设置在印刷电路板(PCB)200上,而不必依赖于中介层(尽管在一些情况下可以使用中介层)。不必使用中介层的一个优点是显著降低了系统的成本和复杂性,因为中介层是昂贵的,需要复杂且耗时的制造技术(例如,光刻),并且具有用于容纳电子器件的有限区域。事实上,至少在一些实施例中,使用光学通道在存储器和逻辑单元之间传送数据可以消除对导电迹线的需要。在没有中介层的情况下,可以用来容纳额外OISM的空间实际上是无限的。在OISM定位在同一PCB上的实施例中,可用于容纳额外OISM的空间仅受PCB的面积限制,在一些实施例中,PCB的面积可为500cm
PCB 200可包括导电触头210,导电触头210可布置成插入主板的相应插座中。任何合适类型的协议可用于PCB/主板接口,包括但不限于PCI Express。
应当注意,OISM 206可以根据需要(例如,大于10cm、大于1m、大于10m)远离逻辑单元204安置,因为光纤的长度实际上对系统的总功耗或带宽没有影响。因此,可以在同一PCB200或图2中未示出的其他PCB上包括附加OISM,从而增加了系统的总存储器带宽和容量。在图2的系统中,仅示出了围绕逻辑单元204的两行OISM。然而,应当理解,在其他实施例中可以采用任何其他合适数量的OISM和/或任何其他合适的拓扑布置。
每个OISM可以配备有用于向逻辑单元204或其他OISM发送光信号和从逻辑单元204或其他OISM接收光信号的电路。类似地,逻辑单元204可以配备有用于向OISM发送光信号和从OISM接收光信号的电路。在一些实施例中,每个OISM可以通过专用光纤光学地耦接到逻辑单元204。在其他实施例中,例如通过利用波分复用(WDM)、时分复用(TDM)或其他类型的复用技术,可以在多个OISM之间共享光纤。虽然在该示例中仅示出了一个逻辑单元,但是在一些实施例中,可以在多个逻辑单元之间共享OISM。
逻辑单元204可包括用于处理数据的任何合适类型的电路。例如,逻辑单元204可以包括通用微处理器、图形处理单元(GPU)、专用集成电路(ASIC)和/或现场可编程门阵列(FPGA)等。在一些实施例中,如下文将进一步描述的,逻辑单元204可包括用于对光域中的数据进行处理的光学电路。
使用本文描述的技术,可以实现超过1TB/s的存储器带宽,而不由于增加容量而显著增加功耗(例如,对于存储器带宽的每一额外500GB/s小于1W)。
III.
根据一些非限制性实施例,图3中示出了OISM的一个示例。在该示例中,OISM206包括彼此堆叠的多个DRAM层1、2、...、N。每个DRAM层可以由硅晶片形成,并且可以包括用于在其中存储位的多个DRAM单元。DRAM单元不限于任何特定实现。DRAM层1、2、...、N可以使用任何合适的接合技术彼此接合,包括但不限于倒装芯片接合或其他三维(3D)集成技术。如下文进一步描述的,存储器层1、2、...、N可使用穿硅通孔(TSV)彼此电联接。如本文所描述的使多个DRAM层彼此堆叠可允许PCB上每单位面积的存储器密度的实质增加。
OISM 206还包括光学晶片304,其可以用作存储器单元和其他组件之间的光学接口。例如,光纤208可以具有附接到光学晶片304的端部,但是可以使用除了光纤之外的其他类型的光学通道。光纤208的相对端部可以连接到另一组件,诸如逻辑单元204或另一OISM。虽然光学晶片304被示出为设置在存储器堆叠的一端处,但并非所有实施例都在此方面受到限制。例如,在其他实现中,光学晶片304可以定位在一个存储器层和另一个存储器层之间。如上所述,OISM可以直接设置在PCB 200上,因此消除了对复杂且昂贵的中介层的需要。
虽然已经结合图3描述了DRAM层,但是应当注意,本公开不限于任何特定类型的存储器。在其他实施例中,例如,NAND存储器、SRAM(静态RAM)、存储器或闪速存储器的层可以被堆叠并且可以以本文描述的方式光学地接口连接到其他组件。
光学晶片304可以包括电子电路和光学电路。根据一些非限制性实施例,图4中示出了光学晶片的一个示例。在这种情况下,光学晶片304包括存储器控制器404、光学收发器406和导电焊盘408以及其他可能的组件。如将在下面进一步描述的,焊盘408可用于将电信号分配给在光学晶片304上方(在z方向上)垂直地布置的DRAM层1、2、...、N以及分配来自所述DRAM层1、2、...、N的电信号。
存储器控制器404可以被布置为管理去往和来自存储器层1、2、...、N的数据流,包括执行读取/写入操作。例如,存储器控制器404可以将要存储的数据传送到存储器层1、2、...、N,可以发送针对来自存储器层的数据的请求,可以确定哪些层和哪些特定DRAM单元可以被重写,可以从存储器层的某些DRAM单元中擦除位,等等。存储器控制器404可以经由焊盘408和连接到焊盘的互连件(图4中未示出)与DRAM层通信。
光学收发器406可以将通过光纤208接收到的光信号转换到电域中,反之亦然。例如,光学收发器406可以包括用于将位流编码到光载波中的一个或多个调制器。可以使用任何合适的调制格式,包括例如开关键控(OOK)或者更复杂的多级方案(诸如二进制相移键控(BPSK)、4-PSK、8-PSK、16-PSK等)。不同类型的调制器可用于此目的,包括但不限于Mach-Zehnder调制器、电吸收光调制器和/或谐振调制器。光学收发器406还可以包括用于从所接收的光信号中提取数据的一个或多个光检测器。可使用任何合适类型的光检测器,包括基于锗的光电二极管。在一些实施例中,WDM技术可用于在多个OISM之间共享公共光纤。
在图4的实施例中,存储器控制器404和光学收发器406设置在同一晶片上(但是在其他实施例中存储器控制器404和光学收发器406可以设置在单独的晶片上)。因此,存储器控制器404和光学收发器406使用相同的微制造工艺来共同制造,并且至少在一些实施例中可以使用公共的光掩模来制造。例如,图5A的光学晶片示出了光波导420和晶体管422可以在同一硅基板414上共同制造的情况。如图所示,通过对同一硅层418进行图案化来制造光波导420和晶体管422,硅层418可以嵌入在电介质层416中。光波导420可以是光学收发器406的一部分,并且晶体管422可以是存储器控制器404的一部分。当然,光学收发器406可包括在硅层418中图案化的额外光波导和其他光学器件,并且存储器控制器404可包括在同一层中图案化的额外晶体管。应注意,体硅基板或绝缘体上硅(SOI)基板等可用于光学晶片304。
由存储器控制器404和光学收发器406共同制造在同一晶片上的事实引起的一个挑战是可能需要设计权衡。一个这样的权衡是由于在大多数半导体铸造厂中,在小型制造节点(例如,小于45nm、小于32nm或小于22nm)处制造光学器件的工艺缺乏可用性。在同一基板上进行图案化意味着为了限制成本,应该使用同一制造节点来形成存储器控制器和光学收发器。结果是,对于存储器控制器,不能使用小的制造节点(制造成本没有显著增加)。这种限制是不期望的,因为小的制造节点导致更好的性能,包括增加的数据速率和降低的功耗。例如,使用22nm或更小的制造节点来制造传统DRAM中的存储器控制器。因此,如本文中所描述一样在公共的硅晶片上共同制造光学收发器和存储器控制器可能是以利用大于理想的制造节点来制造存储器控制器为代价的。图5B中的晶体管例如已经用45nm的制造节点来制造。因此,源极阱432和漏极阱434之间的间隔L(即,晶体管的沟道的长度)不大于45nm。应当理解,除了45nm以外的制造节点也可以用于制造硅晶片304,包括250nm、130nm、65nm、32nm、22nm、14nm、10nm、7nm以及这些值之间的任何其他值。
图6示出了至少在一些实施例中,DRAM层1、2、...、N和光学晶片304可以如何彼此电连接。如图所示,互连件510(例如,穿硅通孔或穿氧化物通孔)可以穿过DRAM层1、2、...、N,并且可以连接到焊盘408。可在焊盘408上形成微凸块或其他类型的凸块,以确保DRAM层与硅晶片304之间的适当的电连接。
如上所述,在一些实施例中,WDM技术可用于在单个光纤中传输多个数据流。WDM技术可以在本文描述的类型的计算系统的设计中引入额外的灵活性,因为可能需要更少数量的光纤。复用器和解复用器可以用于支持WDM架构。复用器和解复用器可以被集成在光学收发器406和逻辑单元204中,或者可以被部署为逻辑单元和OISM外部的分立组件。根据一些非限制性实施例,图7中示出了被布置为支持WDM通信的硅晶片304的一个示例。在该示例中,光学收发器406包括一堆调制器(mod)702、复用器(mux)704、解复用器(demux)706和一堆光检测器(pd)708。激光器402可被配置为发射多个波长(例如,在光学C波段或O波段中),可使用适当的光学组件(未在图7中示出)将所述多个波长中的每一个路由到对应的调制器702。可以利用由存储器控制器404提供的数据流来对与这些波长相关联的载波进行调制。可以使用mux 704将数据流组合在一起,并且可以将数据流传输到光纤208的另一端。虽然该示例示出了用于数据的发送和接收的单个光纤,但是在其他实施例中可以使用单独的光纤。不同波长的数据流可以通过光纤208接收,并且可以使用demux 706在空间上分离。可使用光检测器708将每个对应波长的载波转换到电域。可以使用直接检测方案和/或相干检测方案。以这种方式从载波提取的数据可以被提供给存储器控制器404,存储器控制器404可以例如在DRAM层1、2、...、N中执行写入操作。
在本文未示出的其他实施例中,可以使用分立的外部WDM组件(例如,复用器和解复用器)来将来自不同OISM的数据流组合到公共光纤中。例如,每个OISM可以唯一地指派给特定波长。
类似地,逻辑单元204可以包括用于通过光载波发送和接收数据的光学电路。根据一些非限制性实施例,图8中示出了这种逻辑单元的一个示例。在这种情况下,逻辑单元204包括耦接到光纤208的光学输入-输出(I/O)单元802(在该示例中仅示出一个光纤,但是多个光纤可通过光学I/O单元802进行接口连接)。光学I/O单元802可包括与光学收发器406的光学器件类似的光学器件,包括例如激光器、调制器、光检测器、复用器和解复用器。光学I/O单元802可耦接到逻辑单元204的核心——电/光核心804。核心804可包括用于在电域中处理数据的电路和/或用于在光域中处理数据的电路。核心804可以用指令编程,这些指令在被执行时可以运行不同的操作,包括例如深度学习算法。
光纤208可以以任何合适的方式(包括例如经由通过芯片的侧边缘的边缘耦接,或者另选地,经由通过芯片的顶表面或底表面的表面耦接)耦接到芯片(例如,OISM206或逻辑单元204)。在其中使用边缘耦接的一些实施例中,可以采用v形槽将光纤物理地耦接到芯片。根据一些非限制性实施例,图9中示出了可结合光学晶片304使用的v形槽的示例。在图9中的示出了光学晶片304的侧边缘的示例中,在基板902上形成有v形槽。例如,可以通过沿着基板的晶体方向蚀刻基板来获得v形槽。v形槽的尺寸可以被设置成使得当光纤(例如,SMF-28)定位在其中时,光纤的核心209与形成在光学晶片中的对应波导906对准。这样,波导906和核心209可以以低插入损耗彼此光学耦接。
在其他实施例中,光栅耦合器可用于实现波导与光纤之间的表面耦接。光栅耦合器可被布置为将平面外模耦接到波导的模。在这些实施例中,光纤可附接到光学晶片的顶(或底)表面,使得光纤的端部大致垂直于晶片的表面。
在还有其他实施例中,不同的晶片可以彼此光学耦接,而不必使用光纤。根据一些非限制性实施例,图10A中示出了一个这样的示例。如图所示,一个或多个OISM可以直接附接到逻辑单元204。在该示例中,一对OISM附接到逻辑单元204的顶表面,并且一对OISM附接到逻辑单元204的底表面。图10A的结构可以设置在PCB(未在图10A中示出)上。在其他实施例中,OISM可以仅耦接到逻辑单元204的一个表面。任何合适数量的OISM可以附接到如图10A所示的逻辑单元204,诸如多于5个、多于10个、多于20个、多于30个、多于50个或多于100个。
OISM可以经由自由空间光学器件与逻辑单元通信。即,光模作为自由空间光束在OISM和逻辑单元之间传播。在一个示例中,光栅耦合器用于在芯片的平面外部耦接光模。一个光栅耦合器可设置在光学晶片304中,并且另一个光栅耦合器可设置在光学I/O单元802中。在这种情况下,逻辑单元204包括针对该逻辑单元204耦接到的每个光学晶片的至少一个光学I/O单元802。图10B中示出了代表性的光学晶片/光学I/O单元对。在该示例中,光学晶片304包括光栅耦合器1002,并且光学I/O单元802包括光栅耦合器1004。光栅耦合器可以光学地耦接到相应的波导,用于在芯片内路由光信号。光栅耦合器可在它们形成在的相应平面外彼此光学耦接。在这种情况下,光信号经由相应的波导被提供给光栅耦合器1002。作为响应,光栅耦合器1002在光学晶片304的平面外部并朝向光栅耦合器1004发射光束。光栅耦合器1004可以通过收集光束的至少一部分来接收光信号。然后可以将信号提供给相应的波导。可使用除了光栅耦合器之外或替代光栅耦合器的其他手段,包括垂直腔表面发射激光器(VCSEL)。可以使用另一平面外耦合器或直接使用光检测器来收集由VCSEL发射的光。
IV.
一些传统的计算机体系结构被布置成使得公共总线能够在网络的不同点之间进行通信。例如,在计算机系统中经常使用环形总线以使得多个处理器能够彼此通信。图11A中示出了传统的基于环的架构的示例,其中环使多个微处理器彼此通信。可以沿着环形路径使用多个DRAM以实现数据缓冲。
传统上已经使用环形架构,这是因为它们可以通过相对短的互连来实现。如图11A所示,每个DRAM仅连接到与其相邻的DRAM。因此,这种架构可以通过将DRAM物理地定位成彼此非常靠近来实现,从而避免了当使用长的导电迹线时出现的缺点。这种架构的限制是其是不可扩展的。DRAM必须彼此靠近地定位的事实限制了其他DRAM的添加,因为最终在托管DRAM的中介层上将没有更多的空间。
通过增大DRAM可相对于彼此安置的距离同时仍提供高的数据速率和较低的功耗,本文中所描述的类型的光学接口堆叠存储器实现任意网络拓扑。光学通道的使用消除了互连瓶颈,并为设计具有几乎无限访问存储器的计算机系统提供了机会。根据一些非限制性实施例,图11B中示出了利用光学接口堆叠存储器的任意计算系统的示例。如图所示,该系统包括本文所描述的类型的多个OISM和多个逻辑单元。每个OISM可以(经由光纤或自由空间光学器件)光学地耦接到任何其他OISM和/或任何逻辑单元。相互光学耦接的OISM之间的间隔可以如所期望的那样大或小。每个逻辑单元/OIMS对在本文中被称为“计算节点”。例如,两个相互光学耦接的OISM可以分开达1cm或更多、10cm或更多、50cm或更多、1m或更多、2m或更多、5m或更多、10m或更多、50m或更多、或者100m或更多。OISM不需要被定位在公共PCB上,尽管在一些实施例中OISM可以被定位在公共PCB上。
可以基于在网络上运行的应用的需要来动态地配置网络拓扑。如果需要,例如,可以实现全对全架构、点对多点架构或者甚至环形架构。在一些实施例中,WDM技术可用于减少系统中的光纤的数量。
V.
一些实施例涉及用于制造本文所描述的类型的光学接口堆叠存储器的方法。图12示出了根据一些非限制性实施例的这种方法的示例。方法1200开始于动作1202,在动作1202中,制造多个存储器层。每一层可形成在单独的硅晶片上。可以在动作1202处制造的存储器层的类型包括DRAM、SRAMS、NAND、闪速存储器等,结合图3描述了一个示例。可以使用任何合适的制造节点(诸如小于或等于45nm、小于或等于32nm、或者小于或等于22nm、小于或等于14nm、小于或等于10nm、小于或等于7nm或者小于或等于5nm)来制造存储器层。可以使用任何合适的技术(包括例如3D堆叠技术和倒装芯片接合)将存储器层堆叠在一起。一旦堆叠,就可使用诸如穿硅通孔和/或穿氧化物通孔这样的互连件将存储器层安置成相互通信。
在动作1204处,可以将光学晶片制造为包括光学收发器和存储器控制器。结合图4描述了可以在动作1204处制造的光学晶片的示例。光学晶片可在与动作1202的存储器层相同的铸造厂中或在单独的铸造厂中制造。在一些实施例中,使用比用于存储器层的制造节点小的制造节点来制造光学晶片(尽管在其他实施例中可以使用相同的制造节点)。例如,在一些实施例中可以使用45nm制造节点。在一些实施例中,光学晶片可被制造为包括用于实现光纤的光学对准的结构,该结构包括例如结合图9所描述的类型的v形槽。
在动作1206处,动作1202的存储器层可以被接合到动作1204的光学晶片。在一些实施例中,光学晶片在存储器层彼此接合的同一生产设施中接合到存储器层。在其他实施例中,这些步骤发生在不同的生产设施中。可使用各种接合技术中的任何一种,包括倒装芯片接合或其他三维(3D)集成技术。穿硅通孔、穿氧化物通孔或其他类型的互连件可实现存储器控制器与存储器层之间的通信。在一些实施例中,光学接口堆叠存储器可被封装在壳体内。封装可包括冷却设备和系统,诸如散热片、散热器、热管、热电冷却器、风扇、热导材料等。
在动作1208处,一个或多个光纤可以连接到光学晶片,使得光纤与光学收发器进行光通信。在一些实施例中,光纤设置在v形槽内,用于改善光学对准。在动作1210处,光学接口堆叠存储器可安装在印刷电路板或其他基板上。
应当理解,动作1202至动作1210可以以任何合适的顺序执行,包括但不限于图12所示的顺序。
VI.
本申请的各方面可以提供一个或多个益处,这些益处中的一些先前已经描述过。现在描述这些益处的一些非限制性示例。应当理解,并非所有的方面和实施例都必须提供现在描述的所有益处。此外,应当理解,本申请的各方面可以为现在描述的那些方面提供额外的益处。
本申请的各方面提供了光学接口堆叠存储器,相对于传统存储器单元,所述光学接口堆叠存储器在可用于计算机系统中的存储器带宽和总存储器容量方面提供了更大程度的可扩展性。实际上,本文所描述的类型的光学接口堆叠存储器可以在不显著增加功耗的情况下提供额外的存储器带宽。
结果,本文描述的光学接口堆叠存储器在计算机体系结构的设计中提供了更大的灵活性,因为存储器单元可被定位得如所期望的那样远,甚至是数公里远。
在三维堆叠的情况下,本文所描述的类型的存储器相对于传统存储器在每单位面积的存储器密度的量方面提供了实质的增加。
已经如此描述了本申请的技术的数个方面和实施例,应当理解,本领域普通技术人员将容易想到各种更改、修改和改进。这些更改、修改和改进旨在在本申请中描述的技术的精神和范围内。因此,应当理解,前述实施例仅以示例的方式呈现,并且在所附的权利要求及其等同物的范围内,可以以不同于具体描述的方式来实践本发明的实施例。另外,本文描述的两个或更多个特征、系统、制品、材料和/或方法的任何组合(如果这些特征、系统、制品、材料和/或方法不相互不一致的话)包括在本公开的范围内。
另外,如所描述的,一些方面可以被体现为一种或多种方法。作为方法的一部分执行的动作可以以任何合适的方式排序。因此,可以构建其中以与所示出的顺序不同的顺序执行动作的实施例,该顺序可包括同时执行一些动作,即使在说明性实施例中被示出为顺序动作。
如本文中定义和使用的,所有定义都应被理解为控制词典定义、通过引用并入的文献中的定义和/或所定义的术语的普通含义。
除非有相反的明确指示,否则如在说明书和权利要求中使用的,不定冠词“一”和“一个”应理解为意指“至少一个”。
如在说明书和权利要求中使用的,短语“和/或”应该被理解为意指这样结合的元件中的“一个或两个”,即,在一些情况下联合存在而在其他情况下分离存在的元件。
如在说明书和权利要求中所使用的,短语“至少一个”,参考一个或多个元件的列表,应该被理解为意指从元件列表中的任何一个或多个元件中选择的至少一个元件,但不必包括在元件列表中具体列出的各个元件中的至少一个,并且不排除元件列表中的元件的任何组合。该定义还允许除了短语“至少一个”所指代的元件的列表中所具体标识的元件之外的元件可以可选地存在,而不管是与那些具体标识的元件相关还是不相关。
术语“约”和“大约”可用于在一些实施例中意指在目标值的±20%内,在一些实施例中意指在目标值的±10%内,在一些实施例中意指在目标值的±5%内,并且还在一些实施例中意指在目标值的±2%内。术语“约”和“大约”可以包括目标值。
- 光学接口堆叠存储器及相关方法和系统
- 光学邻近校正检验方法、设计堆叠存储器件的布局的方法及堆叠存储器件制造方法