具有多种速度和密度的位单元的SRAM架构的制作方法

文档序号:15275878发布日期:2018-08-28 22:57阅读:116来源:国知局

传统上,sram(静态随机存储器)是通过将位单元的实例铺设成位单元阵列设计而成。单个位单元可以被优化以实现多种目标。例如,对于一些应用,可以以相对较慢的读写操作为代价,优化位单元来实现高密度。反之,对于另外一些应用,可以以占据更大的芯片面积为代价,优化位单元来实现高速度操作。

附图说明

本文结合附图描述了各种技术的实现方式。然而,需要充分理解的是附图只示出了本文所述的各种实现方式,而不旨在限制本文所述的各种技术的实施例。

图1示出了根据本文所述的实现方式的具有蝶形架构的sram的平面图。

图2示出了根据本文所述的实现方式的针对位单元阵列的自定时路径。

图3示出了根据本文所述的实现方式的针对位单元阵列的自定时路径的信号时序。

图4示出了根据本文所述的实现方式的针对存储器的设计流程。

图5示出了根据本文所述的实现方式的用于实现图4的设计流程的可编程计算平台。

具体实施方式

下文的描述中,术语“某些实施例”的范围并不局限于表述多个实施例,更确切地,其范围可能包括一个实施例或多个实施例,甚至可能包括所有实施例。

本文所述的实施例提供了一种用于在单个sram中使用两种不同的位单元的有效架构和设计方法,具体地,使用高速度位单元和高密度位单元。在一些实施例中,蝶形架构的sram包括:用于高速度位单元阵列的高速度位单元,位于蝶形架构的一侧;以及用于高密度位单元阵列的高密度位单元,位于蝶形架构的另一侧。两个位单元阵列共享多个行解码器、时钟发生器、输入缓存器和锁存器以及行存取电路,其中针对两个位单元阵列分别调准自定时路径。

图1示出了具有蝶形架构的sram100的平面图,其中,高密度位单元阵列102占据蝶形架构的一侧(即,被置于第一半中)且高速度位单元阵列104占据蝶形架构的另一侧(即,被置于另一半中)。处理器106通过总线或互连108来访问sram100。为便于表述,存储器控制器并未在图1中示出,但可以与处理器106集成。处理器106可以表示一个或多个处理器,其中每个处理器具有一个或多个处理器内核。虽然sram100被示出为与处理器106分离的组件,在一些实现方式中,sram100可以与处理器106集成在一起。sram100可以是存储器分级结构中的一部分,例如缓存。

顾名思义,与高速度位单元阵列104相比,高密度位单元阵列102具有更高的单个位单元密度,但是,与高速度位单元阵列104相比以较慢的读写操作为代价。在一些实现方式中,处理器106可以独自地访问高密度位单元阵列102和高速度位单元阵列104。在另一实现方式中,高密度位单元阵列102和高速度位单元阵列104可以共享同一地址空间,其中,当读取或写入字时,高密度位单元阵列102表示该字的一部分,高速度位单元阵列104表示该字的子集。例如,高密度位单元阵列102可表示一个字的高位,高速度位单元阵列表示该字的剩余部分。例如,高密度位单元阵列102可以表示字的较高顺序位,而高速度位单元阵列104可以表示该字的较低顺序位。

高密度位单元阵列102和高速度位单元阵列104可以共享单个接口。如图1的具体示例所示,高密度位单元阵列102和高速度位单元阵列104共享若干功能单元:功能单元110,用于提供输入缓存器和锁存器及时钟发生器的功能;行存取驱动器112;行预解码器114;以及行解码器116。

高密度位单元阵列102有自己专用的字线驱动器118、位线预充电解码器120以及用于提供列存取驱动器和读写控制器的功能的功能单元122。此外,高密度位单元阵列102有自己专用的位线预充电功能单元124、列多路复用器126、读/写功能单元128以及用于提供数据和写使能锁存器及数据(q)驱动器的功能单元130。

高密度位单元阵列102和高速度位单元阵列104共享的功能单元占据sram100的蝶形架构的中心部分。

类似地,高速度位单元阵列104有自己的专用字线驱动器132、位线预充电解码器134以及用于提供列存取驱动器和读写控制器的功能的功能单元136。此外,高速度位单元阵列104有自己专用的位线预充电功能单元138、列多路复用器140、读/写功能单元142以及用于提供数据和写使能锁存器及数据(q)驱动器的功能单元144。

图1所示的多种功能分组仅为了描述方便,并不表示功能单元的特定布局。例如,功能单元110被示出为具有输入缓存器和锁存器以及时钟发生器的功能。这些功能可以表示为单独的功能单元,也可以表示为一个功能单元,这是可在实施例中任意选择的。类似的注释适用于图1所示的其他功能单元。

高密度位单元146和高速度位单元148示出了高密度位单元阵列102相较于高速度位单元阵列104的单个位单元的相对维度。这些位单元中的每个位单元具有相同的高度,如在图1中用变量“y”表示。即,两种不同类型的位单元阵列中的每个位单元在与位线方向平行的方向(相对于图1的绘图,垂直方向)上具有相同大小的维度。然而,高密度位单元102的位单元146在与位线方向垂直的方向上(水平方向)的维度(图1中表示为“xhd”)小于高速度位单元148在该方向上的维度(图1中表示为“xhs”)。每个位单元在与位线(与字线正交)平行的方向上具有相同维度有利于高密度位单元阵列102和高速度位单元阵列104在sram100中的高效布局。

自定时路径150与高密度位单元阵列102相关联,且自定时路径152与高速度位单元阵列104相关联。自定时路径150包括:字线路径154,表示沿虚设字线的信号传输,用来对高密度位单元阵列102进行列追踪;虚设单元156的路径,用来对高密度位单元阵列102中的位单元进行行追踪。类似地,自定时路径152包括:字线路径158,用于表示沿虚设字线的信号传输,用来对高速度位单元阵列104进行列追踪;虚设单元160的路径,用来对高速度位单元阵列104中的位单元进行行追踪。自定时路径150和152针对各自的位单元阵列进行调准,以提供追踪pvt(工艺电压温度)的变化的定时,并为各自位单元阵列中最慢的位单元提供充足的时间裕度。图2更加详细地描述了自定时路径150和152。

图2示出了高密度位单元阵列102或高速度位单元阵列104中的任一个的自定时路径,其中,位单元阵列202表示高密度位单元阵列102或高速度位单元阵列104二者之一。图3示出了图2的自定时路径中示出的多个信号的时序。

参考图2,将时钟信号206提供给控制器208。例如,功能单元110的时钟发生器功能可以提供时钟信号206,其中当时钟信号206置为高电平时开始读或写操作。该信号被示出为图3中标记为“时钟”的信号。响应于时钟信号206被置为高电平时,控制器208将内部时钟信号210置为高电平,如图2和图3中的信号gtp所示。内部时钟信号gtp被提供给多个功能单元,用来开始读或写操作,诸如对位线预充电并使能多个列存取驱动器和读/写控制器,如图2中的功能单元212所示出。

响应于控制器208使内部时钟信号gtp有效(assertthegtpinternalclocksignal),字线驱动器214使能以使字线信号(wl)216有效。使之有效的特定字线取决于要读取/写入的字的存储地址,其中为了方便描述,仅示出了一个字线信号。此外,虚设字线驱动器218使能以使虚设字线信号(dwl)220有效。这些信号分别在图3中示出并被标记为wl和dwl。

延时元件222和224表示dwl信号220的传输延时,其中,由延时元件222和224表示的传输延时经过调准(设计),使得dwl信号220跟随沿位单元阵列202内的字线的传输延时(列跟随)。dwl信号220充当多个虚设单元的字线信号,其中为了方便描述,图2示出了两个虚设单元并将其标记为226和228。延时元件230表示虚设字线信号220沿虚设位单元的信号传输,延时元件232表示虚设位线(dbl)信号234沿虚设位单元的信号传输。对由延时元件230和232表示的信号传输进行调准(或设计),使得虚设位线(dbl)信号234跟随位单元阵列202中的不同行位单元之间的信号传输延迟。

每个虚设单元(如虚设单元226和228)被配置为固定状态,使得基于此特定惯例,dbl信号234在每个读/写周期都被上拉或下拉。例如,虚设单元可以被配置为下拉dbl信号234,其中可以添加dbl下拉单元236来调准下拉,使得虚设单元正确地执行对位单元阵列202的行跟随。在某些情况下,sram100可被配置为针对每个位单元具有互补位线,使得dbl信号234和dbl234的逻辑互补信号均是可用的。在这种情况下,可以使用dbl上拉来进行行跟随,但是为了方便说明,未示出dbl信号234的逻辑互补信号和dbl下拉单元236。图3中,在dwl信号有效之后经过一些延时,将dbl信号234(标记为“dbl”的信号)示出为被下拉至低电平。

响应于感测到dbl信号234被拉至低电平,控制器208解除复位信号236有效,使各信号恢复到它们的静息状态。例如,如图3所示,响应于复位信号236(标记为“复位”)被拉至低电平,gtp内部时钟信号被解除有效,紧接着wl和dwl信号被解除有效。此外,响应于复位信号236被拉至低电平,控制器208将感测放大器使能(sae)信号238(图3中标记为“sae”)置于有效,以使能适合功能单元中的多个感测放大器和电路,用来对位单元阵列202进行数据读出或写入。在图2中,功能单元240表示被sae信号238使能的多种电路。对于读操作,经过一定时间延迟(clk2q),从sram100提供有效数据,如在图3中标记为“q”的信号所示。

需要理解的是,在本实施例的描述中无论信号被置高或置低,都是为达到所需功能的设计性选择。例如,在如图3所示的上述具体实施例中,复位信号被拉低(被解除有效)意味着多个其他信号要进入各自的静息状态。这种惯例的优点在于:如果电源被中断,则复位信号236自动变为低电平。尽管如此,应了解的是图3所示的多个信号仅仅是本公开的具体实施方案的示例,且可以根据所需功能依照多种惯例将信号拉高或拉低。

可以通过利用蝶形架构设计方法对sram100进行设计,使得在sram两侧(即,高密度位单元阵列102和高速度位单元阵列104)共享多种功能,如功能单元110提供的时钟发生器以及行解码器116提供的行存取功能。这种设计容许将两种类型的存储器合并到单个sram100中,从而允许芯片应用时有效分配存储器资源。这样,如有需要,处理器106可以相对快速地读或写字的某些位,而存储器中其它一些对延时有较高容忍度的字位则可以以高密度存储。图4示出了这种设计方法。

参考图4,在步骤402中,生成针对高密度位单元阵列的布局,在步骤404中,生成针对高速度位单元阵列的布局。生成针对位单元阵列的布局包括:形成位单元的多个实例,并将多个位单元实例铺设到一起。每个位单元阵列的布局都与其自定时路径相关联,在步骤406中,与高密度位单元阵列相关联的自定时路径被调准,使得存在正确的列跟随和行跟随,如图2中的实施例所述。类似地,在步骤408中,与高速度位单元阵列相关联的自定时路径被调准,使得存在正确的列跟随和行跟随。在步骤410中,生成(设计)由高密度位单元阵列和高速度位单元阵列共享的多种功能单元。例如,在步骤410中,可以生成针对行解码器和行存取驱动器的布局。执行多个步骤以生成适合用于掩模制作的文件,然而图4所示的过程仅仅特别地示出了其中几个步骤。步骤412描述了部分过程,在这些过程中,生成用于根据任意数量个熟知格式进行掩模制作的多个文件,其中在步骤414中,制作一个或多个掩模,用来制造包括sram100的集成芯片。

图4所示的流程图中的步骤无需按照图示的顺序来进行。例如,步骤406可紧随在步骤404之前执行的步骤402。此外,在设计过程中,可以反复迭代多个步骤。

可以由诸如图5所示的可编程计算平台来执行图4的过程所示的多个步骤。图5示出了处理器502通过互连或总线504和诸如网络接口506、用户接口508、图形处理器510及系统存储器512的多个其它功能单元耦接。处理器502表示一个或多个处理器,其中每个处理器可以包括一个或多个处理器内核。系统存储器512可以是存储器分级体系中的一部分,存储器分级体系中的一些组件可以嵌入到与处理器502相同的芯片中。模块514示出了在存储器512中存储的指令,当由处理器502执行时,所述指令引起图5的可编程计算平台执行电路布局生成,如参考图4的过程所述地。

上文已在sram100的上下文中描述了多种实施方案,但一般来说,实施例不限于sram,而是需要被限定为一种特殊的端口结构,如单端口存储器或双端口存储器。可以在图1所示的具有蝶形架构的存储器中使用除了sram位单元及其关联电路的电路结构。例如,其它实施例中的存储器类型可以包括rom(只读存储器),以及rom和sram的双端口变形或伪双端口变形。

本文所述的多种技术实现方式可以运行于多种通用或专用计算系统、环境或配置中。所述可以适合于结合本文所述多种技术使用的计算系统、环境或配置的示例包括但并不限于以下:个人计算机、计算机服务器、手持或便携式设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子设备、网络pc、迷你计算机、大型计算机、智能手机、平板电脑、可穿戴计算机、云计算系统、虚拟计算机、船舶电子设备等。

可以在由计算机执行的计算机可执行指令(如程式模块)的背景下实现本文所述的多种技术。所述程式模块包括:例程、程序、对象、数据结构等,其执行具体任务或实现具体抽象数据类型。此外,每个程式模块可以有自己的实现方式,所有程式模块不需要用同样的方式实现。尽管程式模块可以在单个计算系统内执行,然而应了解的是在一些实施方案中程式模块可以在适于相互通信的分离的计算系统或设备上实现。程式模块还可以是硬件和软件的结合,其中,程式模块执行的特定任务可由硬件、软件或二者的组合来完成。

本文所述的多种技术可以在分布式计算环境中实现,在分布式计算环境中,由经由通信网络链接的远程处理设备来执行任务,所述通信网络包括硬连线链路、无线链路或二者的各种组合。在分布式计算环境中,程式模块可以位于本地或远程计算机存储介质二者中,所述远程计算机存储介质包括存储器存储设备或其他类似设备。

此外,本文提供的讨论可以被视为针对某些特定的实现方式。需要充分理解的是本文提供的讨论是为了让本领域技术人员能够使用和利用由权利要求内容的主题事物所限定的任何主题事物。需要注意的是,权利要求的主题事物不限于本文所述的实现方式和附图,还包括这些实现方式的修改形式,所述修改形式包括根据权利要求所述的部分实现方式以及与不同实现方式的元素的组合。需要充分理解的是,和其它工程项目和设计项目一样,在任何这种实现方式的研究中,需要作出大量的与特定实现相关的决策,以达成设计者的特定目标,如:遵从系统相关及业务相关的限制,且不同方案需遵从不同的限制。此外,需要充分理解的是这种研究努力可能是复杂的且耗时的,但对于通晓本公开的技术人员而言,依然是一项常规的设计、制作和制造方案。

本文描述了包括存储器的集成电路的多种实现方式,其中,存储器包括:第一位单元阵列,具有第一密度和第一存取速度;第二位单元阵列,具有第二密度和第二存取速度,其中所述第二密度大于所述第一密度,所述第二存取速度小于所述第一存取速度;第一组字线驱动器,耦合到所述第一位单元阵列;第二组字线驱动器,耦合到所述第二位单元阵列;以及行解码器,耦合到第一位单元阵列和第二位单元阵列二者。

本文描述了方法的多种实现方式,其中所述方法包括:针对具有第一密度和第一存取速度的第一位单元阵列生成第一布局;针对具有第二密度和第二存取速度的第二位单元阵列生成第二布局,其中所述第二密度大于所述第一密度,且所述第二存取速度小于所述第一存取速度;针对耦合到第一位单元阵列的第一组字线驱动器生成第三布局;针对耦合到第二位单元阵列的第二组字线驱动器生成第四布局;针对耦合到第一位单元阵列和第二位单元阵列二者的行解码器生成第五布局;根据第一布局、第二布局、第三布局、第四布局和第五布局制造一个或多个掩模。

本文描述了具有蝶形架构的存储器的多种实现方式。所述存储器包括:第一位单元阵列,位于所述存储器的蝶形架构的第一半,其中所述第一位单元阵列包括第一组多个位单元,其中所述第一组多个位单元中的每个位单元具有第一维度和第二维度。所述存储器还包括第二位单元阵列,位于所述存储器的蝶形架构的第二半,其中所述第二位单元阵列包括第二组多个位单元,其中所述第二组多个位单元中的每个位单元具有第一维度和第二维度。第一组多个位单元中的每个位单元的第一维度在数值上大于第二组多个位单元中的每个位单元的第一维度,且第一组多个位单元中的每个位单元的第二维度与第二组多个位单元中的每个位单元的第二维度在数值上大体相等。所述存储器还包括第一组字线驱动器,耦合到第一位单元阵列;第二组字线驱动器,耦合到第二位单元阵列;以及行解码器,耦合到第一位单元阵列和第二位单元阵列二者。

详细参考了各种实现方式,其中附图中使出了所述各种实现方式的示例。阐述了大量具体细节以提供对本文所提供的公开的透彻理解。然而,即使没有这些特定细节,本文所提供的公开也可得以实施。在一些其它情况下,并未在文中详细描述公知的方法、程序、组件、电路及网络,以免为本公开提供不必要的模糊信息。

如果使用一个或多个电路来实现实施例的一些或全部实例,可以将电路或电路单元的节点或端子引述作为输入端口或输出端口。对于端口是双端子结构的电路而言(如:集中参数系统的电路模型),上述节点或端子构成双端子结构中的一个端子,需要充分理解的是地线(或基底)可作为双端子结构的另一端子。

还需了解的是,尽管本文使用诸如第一、第二之类的术语来描述各种元件,但这些元件并不受这些术语的限制。这些术语仅用于将一个元件与另一元件区分。例如,第一元件可被称为第二元件,类似地,第二元件也可被称为第一元件。第一元件和第二元件都分别表示元件,但它们不能视作同一元件。

本文中用到的术语皆用来描述本公开的特定实施例,但并不试图限制本文所提供的公开。如本文所提供的公开的及下述权利要求的描述所述,除非另有描述,否则单数形式“一”、“一个”以及“该”也包括其复数形式。文中所用术语“和/或”表示并包括相关列出项目中的一个或多个的任意组合和所有可能组合。在说明书中使用的术语“包括”、“包括了”、“包含”和/或“包含了”表示存在所陈述的特征、整数、步骤、操作、元件和/或组件,但是不排除包括其它特征、整数、步骤、操作、元件、组件和/或其组合。

本文用到的术语“如果”可根据语境解释为:“当……时”或“在……时”或“响应于确定”或“响应于检测”。类似地,短语“如果确定”或“如果检测到(所述条件或事件)”可根据语境解释为:“在确定”或“响应于确定”或“在检测到(所述条件或事件)”或“响应于检测到(所述条件或事件)”。术语“上”、“下”;“上面的”、“下面的”;“向上地”、“向下地”;“在…下面”、“在…上面”及其它类似术语表示在给定点或元件之上或之下的相对位置,可结合本文所提供的多种技术的某些实现方式使用。

虽然上述内容在于本文描述的多种技术的实现方式,然而也可以根据本公开进一步设计出其它实现方式,其中本公开是由后续权利要求限定的。

尽管已经用对结构特征和/或方法动作特定的语言描述了主题事物,但是应当理解,在所附权利要求中限定的主题事物不一定限于以上描述的具体特征或动作。相反,本文描述的具体特征和动作被公开作为实施权利要求的示例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1