本申请为分案申请,其原申请是于2015年5月27日(国际申请日为2012年12月27日)向中国专利局提交的专利申请,申请号为201280077340.3,发明名称为“用于降低动态功率和峰值电流的sram位线和写入辅助装置与方法及双输入电平移位器”。
背景技术:
超大规模集成(vlsi)电路的低功率运行对于当前和将来的处理器中的省电成为必不可少的。而且,功率效率已经成为对于计算机、处理器、移动电话、平板电脑、微型服务器和上网本市场中的片上系统(soc)设计的一个主要竞争性度量。然而,由于较高的固有器件变化(例如,晶体管的有效沟道长度le和阈值电压vt中的变化)和在低电压下对于导致故障的缺陷的敏感性,对于基于纳米级工艺技术的处理器(例如,亚22-nm),降低动态功耗变得越来越具有挑战性。
在蜂窝电话、平板电脑、微型服务器和上网本市场空间中,soc设计变得越来越令人期望且具有竞争性。然而,由于soc设计上的多个功能单元的复杂性以及功率相对于性能的挑战性的折衷,全局电源(vcc)soc轨电压在不同soc设计之间变化极大。vcc中的此变化对于例如静态随机存取存储器(sram)及其它存储器设计的电路造成了几个难题。
附图说明
依据以下给出的具体实施方式并依据本公开内容的多个实施例的附图,会更充分地理解本公开内容的实施例,然而,这不应认为是将本公开内容局限于具体实施例,而仅是用于解释和理解。
图1是具有用于改进写入操作的至少两个电源的6tsram单元。
图2是用于在sram阵列的写入操作期间生成用于写入辅助的sramvcc的电路。
图3是传统sram阵列的布局。
图4是根据本公开内容的一个实施例的使用了用于降低动态功率和峰值电流的分段的sram阵列的布局。
图5是根据本公开内容的一个实施例的用于图4的分段sram阵列的读取/写入列选择和位线预充电电路。
图6是根据本公开内容的一个实施例的用于降低动态功率和峰值电流的sram阵列的布局分段的方法。
图7是根据本公开内容的一个实施例的具有示出了与图3的传统sram阵列相比由于对sram阵列进行分段引起的功率节省的波形的曲线图。
图8是具有6tsram单元和工作在与sram阵列不同的电源上的感测放大器数据输出驱动器的存储器阵列架构。
图9是感测放大器数据输出驱动器和锁存器。
图10是根据本公开内容的一个实施例的具有用以代替图9的感测放大器数据输出驱动器和锁存器的集成锁存器的双输入电平移位器。
图11a-b是根据本公开内容的一个实施例的与图10的具有集成锁存器的双输入电平移位器相关联的时序图。
图12是根据本公开内容的一个实施例的用于减小动态功率和峰值电流的双轨写入辅助电路。
图13是根据本公开内容的一个实施例的示出了与图2的写入辅助电路相比使用图12的双轨写入辅助电路的峰值电流的减小的曲线图。
图14是根据本公开内容的一个实施例的具有分段sram阵列布局、具有集成锁存器的双输入电平移位器、和/或双轨写入辅助电路的智能器件或计算机系统或soc。
具体实施方式
实施例描述了一种装置,包括成组耦合在一起的多个存储器阵列、本地写入辅助逻辑单元、和读取/写入本地列复用器,以使得由组中的本地写入辅助逻辑单元和读取/写入本地列复用器占用的面积小于在使用全局写入辅助逻辑单元和读取/写入全局列复用器时所占用的面积。与传统多个存储器阵列相比,实施例在器件变化的情况下以较小面积影响、在较低功率下实现了对于多个存储器阵列的读取和写入操作。
实施例还描述了一种电平移位器,包括:第一电源,所述第一电源用以为电平移位器的多个晶体管供电;第一输入节点,所述第一输入节点用以接收由在工作第二电源上的电路生成的第一信号,第二电源与第一电源不同;第一n型晶体管,所述第一n型晶体管用以接收第一信号;第二输入节点,所述第二输入节点用以接收第二信号,第二信号是第一信号的反相,第二信号由电路生成;以及第二n型晶体管,所述第二n型晶体管接收第二信号,第一n型晶体管和第二n型晶体管具有交叉耦合到多个晶体管中的一些晶体管的漏极端子。
实施例还描述了一种装置,包括:写入辅助脉冲发生器,所述写入辅助脉冲发生器工作在第一电源上;一个或多个上拉器件,所述一个或多个上拉器件耦合到写入辅助脉冲发生器,一个或多个上拉器件工作在第二电源上,第二电源与第一电源不同;以及输出节点,输出节点用以向存储器单元提供电源。
在以下实施例中:vcc与vccsram相同(其可以是特定sramvcc电源轨);sramvcc是来自写入辅助电路块的本地vcc;以及vnn是soc电源轨(即,在芯片和/或处理器的其余部分上使用的电源轨)。通常在vnn上生成用于sram的输入/输出信号。在一个实施例中,将vnn上的信号电平移位到vccsram,以及将vccsram上的信号电平移位到vnn。
在以下说明中,讨论了多个细节,以提供对本公开内容的实施例的更透彻的理解。然而,对于本领域技术人员显而易见的是,本公开内容的实施例可以在没有这些具体细节的情况下得以实施。在其它实例中,以框图形式而非详细地示出了公知的方法和器件,以便避免使本公开内容的实施例模糊不清。
注意,在实施例的相对应的附图中,以线来表示信号。一些线可以较粗,以指示更多的组成信号路径,和/或一些线在一端或多端具有箭头,以指示主要信息流动方向。这种指示并非旨在是限制性的。相反,结合一个或多个示范性实施例来使用所述线,以便促进对电路或逻辑单元的更容易的理解。如由设计需要或偏好所指示的任何表示的信号实际上可以包括一个或多个信号,所述一个或多个信号可以在任何方向上行进,并且可以以任何适合类型的信号方案来实现。
遍及说明书和在权利要求书中,术语“连接的”意指在连接的事物之间的直接电连接,而没有任何中间器件。术语“耦合的”意指在连接的事物之间的直接电连接,或者通过一个或多个无源或有源中间器件的间接连接。术语“电路”意指被布置为彼此协作以提供所期望的功能的一个或多个无源和/或有源部件。术语“信号”意指至少一个电流信号、电压信号或数据/时钟信号。“一”“一个”和“所述”的含义包括复数形式的引用。“在……中”的含义包括“在……中”和“在……上”。
术语“按比例缩放”通常指代将设计(示意图和布局)从一个工艺技术转换为另一个工艺技术。术语“按比例缩放”通常还指代在相同技术节点内减小布局和器件的尺寸。术语“基本上”、“接近”、“大约”、“附近”、“约”通常指代在目标值的+/-20%内。
除非另有指明,描述共同对象的序数词“第一”、“第二”和“第三”等的使用仅仅指示提及了相似对象的不同实例,而并非旨在暗示如此描述的对象必须在时间、空间、排序上或者以任何其它方式处于给定的顺序中。
对实施例来说,晶体管是金属氧化物半导体(mos)晶体管,其包括漏极端子、源极端子、栅极端子和体端子。晶体管还可以包括三栅极晶体管和finfet晶体管。源极端子和漏极端子可以是相同的端子,并且在本文中可互换地使用。本领域技术人员会意识到,在不脱离本公开内容的范围的情况下,可以使用其它晶体管,例如双极结型晶体管-bjtpnp/npn、bicmos、cmos、efet等。术语“mn”表示n型晶体管(例如,nmos、npnbjt等),以及术语“mp”表示p型晶体管(例如,pmos、pnpbjt等)。
图1是用于改进写入操作的具有至少两个电源的6tsram单元100。sram单元100包括用于读取/写入操作的两个存取n型器件mpass0和mpass1。两个存取n型器件mpass0和mpass1可由字线(wl)信号来控制。sram单元100还包括两个交叉耦合的反相器,其保持存储器单元状态(或数据)。两个交叉耦合的反相器的第一反相器由p型mpu0和n型mdn0器件形成,而交叉耦合的反相器的第二反相器由p型mpu1和n型mdn1器件形成。第一反相器的输出节点n0耦合到存取器件mpass0并且耦合到第二反相器的输入。第二反相器的输出节点n1耦合到存取器件mpass1和第一反相器的输入。存取器件mpass1和mpass0还耦合到位线信号bl和bl_b(bl的反相)。在一个实施例中,(第一反相器和第二反相器的)p型器件mpu0和mpu1的本体或体端子耦合到与vccsram不同的sramvcc。
尽管图1示出了两个电源vccsram和sramvcc,但典型的sram单元工作在单一电源vccsram上(即,sramvcc节点短接到vcc)。在sram单元100的典型应用中,分别通过位线信号bl和bl_b(bl的反相)驱动写入数据和数据_b(其是数据的反相)。在写入操作期间,借助字线wl将数据驱动到sram单元100中,字线wl设定为vcc电平(逻辑高电平)。由于n型存取器件mpass0和mpass1不传送强high(即,逻辑高电平),典型的sram单元100在降低vcc时艰难地写入“1”。此效果在较低vcc下更为显著,由于存取n型器件mpass0和mpass1的vt没有随着电源vcc而按比例缩放。当结合较低的vcc操作来考虑器件变化(例如,le和vt中的变化)时,典型的sram单元100变得易受写入故障(即,典型的sram单元100不能翻转内部节点n0/n1)的影响。这种故障在较低的vcc电平下促成了相当大的收益损失。
通过为p型器件mpu0和mpu1的本体/体提供单独的电源(例如,vcc),同时为交叉耦合的反相器的逻辑操作提供不同的电源(例如,sramvcc)来克服上述问题(及其它问题)。在写入操作期间降低sramvcc,以减小mpu0和mpu1器件的强度。由例如图2的特殊电路生成sramvcc。
图2是用于在sram阵列的写入操作期间生成用于写入辅助的sramvcc的电路200。参考图1来描述图2。写入辅助电路200包括写入辅助脉冲偏置电路201,其在具有sram单元100的sram阵列的写入与读取操作期间调整sramvcc的电平。通过借助由包括反相器inv和nand门nanda的组合逻辑生成的write_assist_pulse信号激活mcollapse(n型器件)来降低sramvcc。sramvcc电平跌落(或减小)的速度与水平可以由mpbias0、mpbias1和mpbias2器件来编程,mpbias0、mpbias1和mpbias2器件可由数字信号bias_b<2:0>(即,bias_b信号中的三位)来控制。sramvccwake信号通过控制misleep和mwake(经由nand门nandb)器件来确定sram睡眠(低功率)或唤醒(正常操作)模式。如果在睡眠模式中,将sramvcc连接到低于正常操作sramvcc的特定睡眠电压。sleepvcc是用于misleep的电源。locolvccpulse信号由sram控制/定时器(未示出)生成,并且确定mcollapse写入辅助下拉的长度持续时间。colen容许写入字节和写入位功能(例如,对于位设计,colen容许仅写入到64位中的8位)。
以sram单元的阵列来布局sram单元100。如上所述,随着工艺技术收缩(或按比例缩小),sram单元的阵列在典型电源(vcc)操作电压下不再具有足够的读取与写入容限,除非将特殊电路(例如,图2的写入辅助电路200)用于辅助读取与写入操作。用于对写入与读取操作提供辅助的特殊电路(例如,图2的写入辅助电路200)的添加增大了6tsram阵列设计的功率和面积。用于sram阵列的功率和面积的增大为制造低功率移动处理器和soc提出了问题。功率的增大由mpbias0、mpbias1、mpbias2和mcollapse器件引起。
图3是传统sram阵列的布局300。布局300包括在大块(例如256x4)301a和301b中的sram单元的阵列,大块301a和301b分别需要相对应的大尺寸写入辅助电路(例如,图2的写入辅助电路200)302a和302b,以及相对应的读取/写入(rd/wr)列复用器303a和303b。布局300还包括感测放大器与锁存器电路304和写入驱动器305,它们经由306a、306b、307a和307b(也被称为全局rd/wr列复用器,因为它们对于sram的阵列是全局的)耦合到读取/写入(rd/wr)列复用器303a和303b。由于sram单元的大阵列(例如,256x4)301a和301b,将sramvcc线路设计成为sram单元的大阵列301a和301b承载足够的电源。
由于图2的器件导致的sram写入动态功率增大不利地影响总的soc设计复杂性和成本。例如,在基于相同轨的子阵列设计解决方案上显著增大了对于sram阵列的功率传送的要求,因为现在将sramvcc和vccsram提供给sram阵列中的sram单元。对于sram电压调节器的电流传送要求随着为了性能增强而将更多sram添加到sram阵列301a和301b而增大。电流传送要求的增大不利地影响平台成本。提供两个单独的电源还增大了sram电压轨sramvcc308a和308b的峰值电流的大小。
例如,sram电压轨sramvcc308a和308b的峰值电流在基于单一电源的sram架构上可以增大3x-4x(其中,“x”指代倍数的数量)。峰值电流大小的增大导致对于sram轨的昂贵的封装解决方案(例如,多管芯侧电容器)和管芯上电容器的放置。提供两个单独的电源还增大了vccsram和sramvcc节点上的电压跌落(droop)的大小。以上问题及其它问题由图4的实施例来解决。
图4是根据本公开内容的一个实施例的使用了用于降低动态功率和峰值电流的分段的sram阵列的布局400。应指出,图4中的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
布局400包括被分段为401a、401b、401c和401d子阵列的sram阵列单元。例如,将256x4阵列301a分段为包括阵列401a和401b的四个64x4子阵列,其中,四个64x4子阵列中的每一个(例如,401a和401b)在尺寸(即,面积)上小于256x4阵列301a。类似地,在此例子中,将256x4阵列301b分段为包括401c和401d的四个64x4子阵列,其中,四个64x4子阵列中的每一个(例如,401c和401d)在尺寸(即,面积)上小于256x4阵列301b。尽管实施例示出了将256x4阵列分段为四个子阵列,但可以以设计任意数量的子分段来实现所述的技术结果。例如,64x4、32x4、16x4等的阵列粒度可以用于对较大的阵列(例如,256x4的阵列)进行分段。
布局400还包括写入辅助电路402a、402b、402c和402d,它们是写入辅助电路302a和302b的分段版本。例如,将写入辅助电路302a分段为两个写入辅助电路402a、402b,其中,每一个写入辅助电路402a和402b在尺寸(面积)上小于写入辅助电路302a。在另一个例子中,将写入辅助电路302b分段为两个写入辅助电路402c和402d,其中,每一个写入辅助电路402c和402d在尺寸(面积)上小于写入辅助电路302b。在其它实施例中,可以将写入辅助电路302a和302b分段为多于两个写入辅助电路。
由于写入辅助电路402a、402b、402c和402d(也被称为本地写入辅助电路,因为它们对于sram的分段阵列是本地的)相对于写入辅助电路302a和302b尺寸减小,在将rd/wr列复用器303a和303b分段时,布局400的rd/wr本地列复用器403a、403b、403c和403d相对于rd/wr列复用器303a和303b尺寸减小。根据一个实施例,通过对阵列301a和写入辅助电路302a进行分段,每一个sramvcc408a和408b的线路长度比sramvcc308a的线路长度更短。根据一个实施例,通过对阵列301b和写入辅助电路302b进行分段,每一个sramvcc408c和408d的线路长度比sramvcc308b的线路长度更短。
在一个实施例中,分别往来于rd/wr本地列复用器403a、403b、403c、403d(也被称为rd/wr本地列复用器,因为它们对于sram的分段阵列是本地的)的读取数据和写入数据(及其反相信号)406a、406b和407a、407b按路线发送(route)到感测放大器与锁存器404。在这种实施例中,传输门耦合到406a、406b和407a、407b的布线,以将读取数据和写入数据(及其反相信号)耦合到各自的rd/wr本地列复用器403a、403b、403c和403d。在一个实施例中,感测放大器与锁存器404的尺寸和感测放大器与锁存器304的尺度基本上相同。在其它实施例中,感测放大器与锁存器404的尺寸相对于感测放大器与锁存器304较小。在一个实施例中,写入驱动器405的尺寸与写入驱动器305基本上相同。在其它实施例中,写入驱动器405的尺寸相对于写入驱动器305较小。
图4的实施例通过将位单元阵列元件分段为较小的子阵列的组(例如64x4(每“4”列64个位单元))解决了图3的写入辅助高功率问题。为了解释实施例,描述了被分段为64x4子阵列的256x4阵列的例子。然而,在不改变实施例的本质的情况下,可以使用针对分段的其它尺寸。
在这个例子中,图3的布局300的分段导致sramvcc、bl和bl_b(图1、图2)信号也每隔64个位单元被分段。将图3的写入辅助电路的大小划分(size)支持256x4位单元阵列。在一个实施例中,通过将阵列分段减小到64x4,可以减小写入辅助电路的尺寸(即,可以减小有效面积和/或覆盖区(footprint))。例如,写入辅助电路的尺寸减小可以高达70%,以实现与以前写入辅助电路的性能相同的性能。图3使用连接到大的256x4阵列的大(按照有效面积)写入辅助电路(与图4的写入辅助电路相比)。因此,sramvcc301a、bl和bl_b跨256个位单元是连续的。图4的实施例示出了阵列读取和写入方案的框级图示。图4的实施例使用耦合到较小的64x4阵列的较小写入辅助电路(与图3的写入辅助电路相比)。因此,sramvcc(408a-d)、bl和bl_b是本地的,并且仅跨64个位单元是连续的。
布局400通过将图3的布局300分段为具有较小写入辅助电路(图2的较小版本)和读取/写入列选择电路的较小部分而减小了峰值电流和平均电流(例如,在写入处理期间所需的)。用于将图3的布局300分段为图4的布局400的一个技术效果是实现了动态写入功率节省,例如大于50%的功率节省。还可以通过图4的实施例减小其它成本(诸如大电压调节器的成本)、sramvcc上的封装电容器的数量与尺寸。图4的实施例还容许将较小的位单元集成到存储器单元中。在存在器件变化的情况下,与传统多个存储器阵列相比,实施例以较小的面积影响、在较低功率下实现了对多个存储器阵列的读取与写入操作。
图4的实施例将新的分段布局拓扑结构(topology)与修改的写入辅助和读取/写入列选择电路相结合。图4的实施例展现了许多技术效果。一些非限制性技术效果是:图4的实施例与图3的实施例相比,通过减小写入辅助电路的选择部件(例如,部件201)的尺寸减小了动态写入功率。在一个实施例中,由于位单元阵列的分段,使写入辅助电路的选择部件的尺寸减小是可能的。
图4的实施例的另一个技术效果是:与图3的实施例相比,其减小了动态读取和写入功率。这通过对来自耦合到感测放大器与锁存器404的全局读取和写入线路的本地位线进行分段来完成。这继而降低了在读取和写入操作期间进行开关的全局读取和写入线路上的总电容。实施例的另一个技术效果是:布局400通过减小位线预充电和写入辅助部件(例如,部件201及其相对应的驱动器)的尺寸而减小了峰值电流。布局400的实施例还通过获得每条位线的位单元的最小固定数量(例如,64)而使位线失配最小化。布局400的实施例还实现了高达例如每组1024x4个位单元。以前的设计仅支持高达例如每组512x4个位单元。
图5是根据本公开内容的一个实施例的用于图4的分段sram阵列的读取/写入列选择和位线预充电电路500。应指出,图5的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
读取/写入列选择和位线预充电电路500(例如,403a-d)包括分别对应于407a-b与406a-b的本地位线501bl和bl_b(bl的反相)与全局读取/写入数据线502-wrdata、wrdata_b、rddata和rddata_b。在一个实施例中,本地位线501由包括晶体管mblpa、mblpb、mblpc、mcpl、mcplb的电路和包括mnwrb、mprdb、mprd和mnwr的传输门503生成。blpch_b是本地bl(本地位线)预充电信号,其在任何读取/写入操作前将本地bl线(本地位线)501预充电到vccsram。在读取操作期间,rdysel信号充当读取列复用器选择信号,其容许本地bl线501的值传播到全局读取数据线(rddata&rddata_b)。在写入操作期间,wrysel信号充当写入列复用器选择信号,其容许全局写入数据线(wrdata&wrdata_b)上的写入数据传送到本地bl线501。
参考图4的示范性实施例,每64x4位单元的段(4019a-d)耦合到本地读取/写入选择电路500(例如,403a-d)。在一个实施例中,在读取和写入操作期间,通过传输门503—mnwr、mnwrb、mprd和mprdb—读取或写入本地选择的bl和bl_b。在一个实施例中,交叉耦合的器件mcpl和mcplb消除了对互补传输门的需要,因为在写入操作期间,机构会以“1”上拉位线。在此实施例中,全局读取/写入数据线502上较低的电容(代替256x4个存储器单元的64x4个存储器单元)导致在读取和写入操作期间平均电流和峰值电流的减小。
图6是根据本公开内容的一个实施例的用于降低动态功率和峰值电流的sram阵列的布局分段的方法600。应指出,图6的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。尽管以特定顺序示出了参考图6的流程图中的块,但是动作的顺序可以修改。因而,可以按照不同的顺序执行所示的实施例,并且一些动作/块可以并行执行。参考图4-5的实施例示出了图6的流程图。根据某些实施例,图6中列出的块和/或动作中的一些是可选的。呈现的块的编号是为了清楚,而并非旨在规定其中必须出现多个块的操作的顺序。另外,可以以各种组合来利用来自不同流程的操作。
在块601,存储器单元的阵列(例如,301a-b)分段为多个存储器单元的分段阵列(例如,401a-d)。在块602,减小用于存储器单元的分段阵列的全局写入辅助逻辑单元(例如,302a-b)的面积,以生成多个本地写入辅助逻辑单元(例如,402a-d),其中,多个本地写入辅助逻辑单元(例如,402a-d)中的本地写入辅助逻辑单元中的每一个耦合到多个存储器单元的分段阵列(例如,401a-d)中的存储器单元的分段阵列的每一个。
在块603,减小用于存储器单元的分段阵列(例如,401a-d)的全局读取/写入列复用器(例如,303a-b)的面积,以生成多个读取/写入本地列复用器(例如,403a-d)。在一个实施例中,读取/写入本地列复用器中的每一个读取/写入本地列复用器耦合到多个存储器单元的分段阵列中的存储器单元的分段阵列中的每一个。在一个实施例中,减小全局写入辅助逻辑单元(例如,302a-b)的面积包括减小全局写入辅助逻辑单元的上拉p型晶体管(例如,mpbias0、mpbias1和mpbias2)的尺寸,以生成用于本地写入辅助逻辑单元(例如,402a-d)的本地上拉p型晶体管。
图7是根据本公开内容的一个实施例的具有示出了与图3的传统sram阵列相比由于对sram阵列进行分段引起的功率节省的波形的曲线图700。x轴是时间(以纳秒为单位),而y轴是电流(以ma为单位)。在此示范性曲线图中,波形701(实曲线)是图3的实施例的峰值电流,而波形702(虚曲线)是图4的实施例的峰值电流。对于相同的工艺技术,由于在图3实施例与图4的实施例之间的峰值电流减小,实施例中所述的分段导致相当大的功率节省。
实施例降低了sram阵列的动态功率,这对于具有存储器阵列的处理器和soc是有价值的。随着器件几何尺寸收缩(或按比例缩放),晶体管中的le和vt变化预计会变差,并且使用争用(contention)电路的传统设计在写入功率方面会令人无法满意的高,并且相对于以前的技术节点会耗费更多的面积。实施例对sramvcc和bl(位线或bl)进行分段,其提供了动态功率节省。相比传统sram设计,实施例将峰值电流减小了一多半。
对于具有同时切换的许多sram的soc应用,高峰值电流在电源轨上的电压跌落方面是成问题的。实施例减小了在sramvcc电源轨上的电压跌落,其具有的电容比主socvnn轨的电容小得多。实施例相当大地改进了bl失配,因为在bl上总是存在固定数量的(例如,64)位单元,而与例如从2kbyte到64kbyte变动的阵列尺寸无关。实施例提供了模块化的设计,模块化的设计适合于sram编译器,sram编译器可以易于生成例如从256到8192深度乘以4byte数据带宽sram。
图8是具有工作在与sram阵列不同的电源上的感测放大器数据输出驱动器的sram阵列架构800。应指出,图8的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
架构800包括sram位单元阵列801(例如,301a-b和/或401a-d)、具有位线预充电单元的列复用器802(例如,303a-b和/或403a-d)、感测放大器803(例如,304和/或404)以及感测放大器输出数据锁存器804(例如,304和404的部分)。sram位单元阵列801(例如,301a-b和/或401a-d)、具有位线预充电单元的列复用器802(例如,303a-b和/或403a-d)、感测放大器803(例如,304和/或404)工作在vccsram805电压域上,而感测放大器输出数据锁存器804(例如,304和404的部分)工作在与vccsram电源电压域不同的vnn(例如,vccsoc)电源806电压域上。
在蜂窝电话、平板电脑、微型服务器和上网本市场空间中,soc设计变得越来越令人期望且具有竞争性。然而,由于芯片上的多个功能单元的复杂性以及功率相对于性能的挑战性的折衷,全局vccsoc电源轨(也被称为vnn)电压在不同soc设计之间变化极大。而且,vnn806电压目标可以在生产寿命周期中继续改变。soc的sram可以具有专用电源轨(vccsram),以确保满足可靠性和vccmin要求。术语“vccmin”通常指代sram保持其数据的最小操作电压。因为vnn轨电压典型地过低(由于soc低功率要求)而不能满足sramvccmin要求,所以使用了专用轨vccsram。术语“vccsram”和“vcc”可互换地使用,并且表示相同的电压,除非另有指明。
图1中示出了soc设计中使用的6tsram的例子。传统的感测放大器输出数据锁存器804工作在低于vccsram轨805的vnn806上。在sram读取操作期间,输出数据向下电平移位到处理器的其余部分使用的vnn域806。sram架构800示出了读取过程,其中,位线被选择用于读取,多路复用到rddata线,其中,感测放大器803随后在saout上将1或0状态输出到感测放大器输出数据锁存器804。数据随后电平移位到dout上的vnn域。
图9是具有感测放大器数据输出驱动器和锁存器的电路900。电路900包括耦合到输出驱动器902的锁存器901,其中,锁存器901工作在vccsram805上,而输出驱动器902工作在vnn806上。锁存器901包括反相器、传输门903和保持器(keeper)904。电路900中的信号saout_b用于将适当的数据承载到驱动器902,驱动器902包括在vnn域806上的nand门和输出反相器。输出驱动器902生成sram数据输出dout。电路900使用saclk_b(输出锁存时钟)信号在saclk_b的上升沿锁存saout_b。电路900在传输门903的输出还使用保持器904来在锁存时钟关闭时保持保留的锁存值。输出可以被防火墙保护(由fwen信号),以防止当在电源门控(低功率)操作期间vccsram崩溃(即,减小)但vnn仍开启且在相同的电平时,在电压域(806和805)之间的短路电流。在一个实施例中,防火墙用于电源关闭和电源门控模式,并且可以与写入辅助不相关。
因为当vnn大于vccsram电压时读取操作失败,所以902的nand逻辑门和反相器可能不是鲁棒的电平移位器设计。例如,当具有sram阵列(和架构)的处理器工作在突发模式(或加速模式)上时,vnn会高于vccsram很多。然而,当vnn上升到vccsram以上时,因为输出驱动器902会不能适当地工作,所以电路900会不能适当地工作。例如,在vccsram上的ir电压跌落(例如,vccsram可以从1.05v下降到0.94v)和vnn上的尖峰(例如,vnn可以上升到1.25v)的期间,由于输出驱动器902,在电路900中会出现功能故障。
图10是根据本公开内容的一个实施例的具有用以代替图9的感测放大器数据输出驱动器和锁存器900的集成锁存器的双输入电平移位器1000。应指出,图10的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。图10的实施例提供对sram数据输出dout的解决方案,使得其在宽范围的socvnn电压目标上是可靠的。
在一个实施例中,具有集成锁存器的双输入电平移位器1000包括双输入端口saout_b和saout、电源vnn、可选的防火墙使能信号端口fwen、输出端口dout、p型器件msaopb、msaop、mfw1、mkp0和mkp2、n型器件mkpl、mkp3、mfw0、mfw2、msaonb和msaon,驱动n0作为dout的反相器或缓冲器。在一个实施例中,具有集成锁存器的双输入电平移位器1000包括:第一电源(vnn),第一电源(vnn)用以为电平移位器的多个晶体管供电,包括p型器件msaopb、msaop、mfw1、mkp0和mkp2;n型器件mkpl、mkp3、mfw0、mfw2、msaonb和msaon;以及驱动n0作为dout的反相器或缓冲器。
在一个实施例中,具有集成锁存器的双输入电平移位器1000包括第一输入节点,所述第一输入节点用以接收由工作在第二电源(vccsram)上的电路生成的第一信号(saout_b),第二电源与第一电源(vnn)不同。在一个实施例中,具有集成锁存器的双输入电平移位器1000包括用以接收第一信号(saout_b)的第一n型晶体管(msaonb)。在一个实施例中,具有集成锁存器的双输入电平移位器1000包括用以接收第二信号(saout)的第二输入节点,其是第一信号(saout_b)的反相,第二信号由电路(其工作在sramvcc上)生成。在一个实施例中,具有集成锁存器的双输入电平移位器1000包括用以接收第二信号(saout)的第二n型晶体管(msaon),第一n型晶体管和第二n型晶体管具有交叉耦合到多个晶体管中的一些晶体管的漏极端子。
例如,msaonb(第一n型晶体管)的漏极端子耦合到mfw0、mkp1、mkp0、mkp2、mkp3和生成dout_b的输出反相器。msaon(第二n型晶体管)的漏极端子耦合到mfw1、mkp2、mkp3、mkp1和mkp0器件。在一个实施例中,具有集成锁存器的双输入电平移位器1000包括用以根据第一信号和第二信号(saout_b和saout)生成输出dout信号的输出节点dout。与电路900不同,具有集成锁存器的双输入电平移位器1000是异步的。在一个实施例中,具有集成锁存器的双输入电平移位器1000独立于时钟信号。
在一个实施例中,具有集成锁存器的双输入电平移位器1000还包括耦合到多个晶体管中的一些晶体管(例如,mfw1、mfw2和用以生成fwen_b的反相器)的第三输入节点(fwen)。在一个实施例中,第三输入节点接收第三信号(fwen信号),以生成确定性输出。例如,当fwen信号为逻辑高时,mfw2导通,以将虚地提供给msaon源极端子,fwen_b是逻辑低,其截止mfw0,并且mfw1也是截止的。当fwen_b为逻辑低时,mfw1导通,以将节点n1拉高(即,vnn电平),其导通mkpl,使得节点n0转低,这导通mkp2。逻辑低n0使得输出缓冲器生成逻辑低dout信号。
在一个实施例中,具有集成锁存器的双输入电平移位器1000包括用以根据第一信号(saout_b)和第二(saout)信号或第三(fwen)信号生成输出信号(dout信号)的输出节点(dout)。在一个实施例中,双输入电平移位器1000的多个晶体管中的一些晶体管起锁存器的作用。在一个实施例中,当第二电源(sramvcc)高于或低于第一电源(vnn)时,具有集成锁存器的双输入电平移位器1000适当地操作。
在一个实施例中,具有集成锁存器的双输入电平移位器1000代替电路900并且支持双轨设计(即,vccsram和vnn)。在此实施例中,saout和saout_b输入在来自感测放大器电路(例如,图8的803)的vccsram电压域上。在一个实施例中,具有集成锁存器的双输入电平移位器1000的剩余部分在vnn域上。在一个实施例中,msaon、msaonb、msaop和msaopb器件设定节点n1和n0上的状态。在一个实施例中,mkp0-mkp3器件充当用于n0和n1节点的保持器。在一个实施例中,通过使用mfw0、mfwl和mfw2器件来实现防火墙模式操作(当fwen=0时)。在一个实施例中,防火墙模式操作确保了当fwen=0时,dout为“0”(即,dout上的确定性输出)。
图10的实施例具有集成锁存器,并且因而不再需要锁存器902及其相关联的时钟,因为saout和saout_b信号已经由在前的感测放大器电路自身中的感测放大器使能时钟证明合格,。在一个实施例中,因为saout和saout_b已经是感测放大器电路自身中的感测放大器使能时钟的函数,并且在读取操作之前都预充电到低,所以具有集成锁存器的双输入电平移位器1000就无需saclk_b(例如:参见图9的901)。
图10的实施例中存在许多非穷举性(非限制性)技术效果。图10的实施例是鲁棒的方案,该鲁棒的方案用于在soc电源轨的挑战性范围上输出针对sram(以及其它存储器设计)的读取数据。例如,soc电源轨可以典型地在0.5v-1.3v变化,并且vccsram轨在0.7v-1.3v的范围变动。图10的实施例提供了输出数据的鲁棒的电平移位操作。例如,双轨电平移位器100可以将数据从vccsram电平移位到soc电源域vnn的宽范围。图10的实施例减小了电路900的复杂性。例如,无需输出锁存时钟来以双轨电平移位器100安全地锁存输出读取数据。在一个实施例中,双轨电平移位器1000利用预充电的两个感测放大器输出(saout_b和saout)来锁存输出数据自身。双轨电平移位器1000在面积上是高效的,因为其以最小的晶体管数量在自身中包括电平移位器、防火墙逻辑和锁存器。
尽管图10的实施例示出为用在存储器架构中,以代替图9的实施例,但是具有集成锁存器的双输入电平移位器1000可以用在需要将信号从一个电源域电平移位到另一个电源域的任何电路中。例如,双输入电平移位器可以用在输入-输出(i/o)缓冲器、时钟架构等中。
图11a-b是根据本公开内容的一个实施例的与图10的具有集成锁存器的双输入电平移位器相关联的时序图1100和1120。应指出,图11a-b的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
图11a示出了当saout具有脉冲且saout_b为逻辑低时的情况,而图11b示出了当saout_b具有脉冲且saout为逻辑低时的情况。示出了节点n1、n0和dout上的信号转变。在sram设计的典型的读取操作期间,字线被确定为高,并且典型地由sram参考时钟(高或低)来触发。感测放大器随后感测在用于使能的行的位线之间的差别,并且随后感测放大器输出saout或saout_b高以触发适当的dout状态。
图12是根据本公开内容的一个实施例的用于减小动态功率和峰值电流的双轨写入辅助电路1200。应指出,图12的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
如参考图1所述的,为了克服在存在器件变化的情况下的写入操作故障,当前用于辅助写入操作的方法是在写入操作期间降低存储器单元sramvcc。进行降低sramvcc,以减小存储器单元100内部的mdn0和mdnl器件的战斗力(fightingstrength)。图2中示出了写入辅助电路(wra)的例子。通过激活mcollapsen型器件来降低sramvcc轨。可以通过激活mpbias0-mpbias2器件来编程sramvcc的崩溃(或减小)的速度和水平。图2的写入辅助电路消耗了额外的功率。额外的功率主要由通过mpbias0-mpbias2器件和mcollapse器件的暂时短路而引起。
尽管用于如l2(2级高速缓冲)的高速缓冲的较高动态功率由于较低的活动和较少的并行存取(例如,8/64得到存取)是可接受的,但这不是用于诸如平板电脑和智能设备(例如,智能电话)的手持产品的soc而设计的情况。在这种soc设计中,同时对存储器的40-50个子阵列进行存取是非常常见的。例如,在高使用率状况、视频回放模式期间,几个sram块可以具有大量的并行sram存取。这种并行sram存取的一个含义是显著增大了sramvcc轨的平均功率和峰值功率,主要是由于一直将位单元写入到此较高电压轨。
sram写入动态功率的增大可暗示总体soc设计复杂性和成本。例如,针对sram的功率传送的需要在基于单轨的子阵列设计解决方案上增大。针对sram电压调节器的电流/功率传送需要由于出于性能而过度使用管芯上sram而不断增大,并且直接影响了平台成本。soc设计复杂性和成本还可以由于sram电压轨的峰值电流的大小增大了3x-4x而增大,需要用于sram轨的昂贵的封装解决方案(即,多管芯侧帽(die-sidecap))和管芯上帽解决方案—这两个解决方案增加了集成复杂性,并且促成晶圆和封装级成本。因为sramvcc轨(从写入辅助)上的电压跌落的大小会相当大,并且可迫使在用于特定位单元的技术的有效vccmin以下的sram存取,soc设计复杂性和成本也会增大。结果,会需要较大的sram位单元,并且固定轨的益处受到让步。
图12的实施例通过减小在写入处理期间所需的峰值电流和平均电流来解决以上的sram功率传送难题。图12的实施例类似于图2的实施例,除了写入辅助脉冲偏置部分1202工作在vnn电源上而生成write_assist_pulse的逻辑1201工作在与vnn不同的vccsram上,以及其它区别。
双轨写入辅助电路1200的实施例通过利用可以使用工作在与vccsram轨相比较低电压下的soc“vnn”轨的可用性解决了由于高写入功率引起的socsram功率传送挑战。在一个实施例中,借助双轨写入辅助电路1200,位单元、感测放大器和预充电电路可以放置在较高vccsram电压轨(例如,1.0v-1.05v)上,并且接口逻辑可以放置在可变soc轨(vnn)上,其可以工作在产品最小工作电压(例如0.7v)下。
根据一个实施例,通过将写入辅助电路分别分割为vccsram(例如,1.05v)和vnn(例如,0.7v)电压域部分1201和1202来解决高功耗的写入辅助问题。在一个实施例中,1202的mpben和mcollapse器件用于实现初始写入辅助sramvcc下降。在一个实施例中,1202的mpbias0-mpbias2器件在vnn轨上,并且确定sramvcc轨下降到什么电压电平。
在一个实施例中,在初始sramvcc下降后,mpben和mcollapse器件关闭,激活mwake,并且将sramvcc上拉到vccsram(例如,1.05v)。在一个实施例中,反相器inv2防止仅mcollapse器件活动的情况,这会使得sramvcc轨在小延迟窗口上下降过快。在一个实施例中,sramvccwake信号确定sram睡眠(低功率)或唤醒(正常操作)模式。如果在睡眠模式中,则sramvcc连接到低于正常可操作电压sramvcc的特定睡眠电压。在一个实施例中,locolvccpulse信号由sram控制/定时器(未示出)生成,并且确定mcollapse写入辅助下拉的长度持续时间。在一个实施例中,colen信号容许写入字节和写入位功能(例如,对于位设计,colen信号容许仅写入到64位中的8位)。
图13是根据本公开内容的一个实施例的示出了与图2的写入辅助电路相比使用图12的双轨写入辅助电路的峰值电流的减小的曲线图1300。曲线图1300示出了四个波形,其中,x轴是时间(以ns为单位),以及y轴是电流(以ma为单位)。
曲线图1300示出了与图2的写入辅助电路200相比的使用了图12的双轨写入辅助电路1200的益处。波形1301是图2的vccsram电源的峰值电流。波形1302是图12的vccsram电源的峰值电流。波形1304是图2的vnn电源的峰值电流。在一个例子中,vnn电源的电流高于现有技术的vnn电源的电流电平。波形1303是图12的vnn电源的峰值电流。波形示出了双轨写入辅助电路1200消耗的功率远小于图2的写入辅助电路200消耗的功率。
在写入操作期间,见到峰值电流与动态功率都减小,其中,例如益处是功率减小约40%。曲线图1300示出了如何将写入辅助操作的电流/功率负担从vccsram轨转移到vnn轨。在一个实施例中,通过如图12所示的对两个电源域的分割—vccsram1201域和vnn1202域,减小了vccsram电源轨上的电压跌落。
在这种实施例中,由于对电压域的分割,vccsram具有的电容比主socvnn轨小得多。如图12所示的对电压域进行分割的一个技术效果是解决了与用于sram轨的sram电压调节器相关联的成本(封装-帽、较大的调节器等)。图12的实施例还容许较小位单元的集成,因为电压跌落被限制为满足sram位单元的有效vccmin。
图14是根据本公开内容的一个实施例的具有(图4和图5的)分段sram阵列布局400、500、(图10的)具有集成锁存器的双输入电平移位器1000、和/或(图12的)双轨写入辅助电路1200的智能设备1600或计算机系统或soc。应指出,图14的具有与任何其它附图的元件相同的附图标记(或名称)的那些元件可以以与所述方式类似的任何方式来操作或运行,但不限于此。
图14示出了移动设备的实施例的框图,其中,可以使用平面接口连接器。在一个实施例中,计算设备1600表示移动技术设备,诸如计算平板电脑、移动电话或智能电话、具有无线功能的电子阅读器或者其它无线移动设备。应当理解的是,大体示出了某些部件,并且在计算设备1600中没有示出这种设备的全部部件。
根据本文所述的实施例,在一个实施例中,计算设备1600包括:第一处理器1610,处理器1610具有包含图4的分段布局400的存储器;和第二处理器1690,第二处理器1690具有包含图4的分段布局400的存储器。具有i/o驱动器的计算设备的其它块也可以包括具有图4的分段布局400的存储器。本公开内容的不同实施例还可以包括1670内的网络接口(诸如,无线接口),以使得系统实施例可以包含到例如蜂窝电话或个人数字助理的无线设备中。
在一个实施例中,第一处理器1610包括(图10的)具有集成锁存器的双输入电平移位器1000。在一个实施例中,第二处理器1690包括(图10的)具有集成锁存器的双输入电平移位器1000。具有i/o驱动器的计算设备的其它块也可以包括(图10的)具有集成锁存器的双输入电平移位器1000。
在一个实施例中,第一处理器1610包括(图12的)双轨写入辅助电路1200。在一个实施例中,第二处理器1690包括(图12的)双轨写入辅助电路1200。具有i/o驱动器的计算设备的其它块也可以包括(图12的)双轨写入辅助电路1200。
在一个实施例中,处理器1610可以包括一个或多个物理器件,诸如微处理器、应用处理器、微控制器、可编程逻辑器件或其它处理构件。由处理器1610执行的处理操作包括在其上执行应用和/或设备功能的操作平台或操作系统的执行。处理操作包括与和用户的或和其它设备的i/o(输入/输出)相关的操作、与电源管理相关的操作、和/或与将计算设备1600连接到另一个设备相关的操作。处理操作还可以包括与音频i/o和/或显示i/o相关的操作。
在一个实施例中,计算设备1600包括音频子系统1620,其表示与向计算设备提供音频功能相关联的硬件(例如,音频硬件和音频电路)部件和软件(例如,驱动器、编码解码器)部件。音频功能可以包括扬声器和/或耳机输出,以及麦克风输入。用于这种功能的设备可以集成到计算设备1600中,或者连接到计算设备1600。在一个实施例中,用户通过提供由处理器1610接收并处理的音频命令来与计算设备1600进行交互。
显示子系统1630表示硬件(例如,显示设备)部件和软件(例如,驱动器)部件,其提供视觉和/或触觉显示,以用于用户与计算设备1600进行交互。显示子系统1630包括显示接口1632,其包括用于向用户提供显示的特定屏幕或硬件设备。在一个实施例中,显示接口1632包括与处理器1610分离的逻辑,处理器1610用以执行与显示有关的至少一些处理。在一个实施例中,显示子系统1630包括向用户提供输出和输入的触摸屏(或触控板)设备。
i/o控制器1640表示与和用户的交互有关的硬件设备和软件部件。i/o控制器1640可操作用于管理是音频子系统1620和/或显示子系统1630的部分的硬件。另外,i/o控制器1640示出了用于另外的设备连接到计算设备1600的连接点,用户可以通过其与系统交互。例如,可以附接到计算设备1600的设备可以包括麦克风设备、扬声器或立体声系统、视频系统或其它显示设备、键盘或小键盘设备、或者用于与诸如读卡器或其它设备的特定应用一起使用的其它i/o设备。
如上所述,i/o控制器1640可以与音频子系统1620和/或显示子系统1630进行交互。例如,通过麦克风或其它音频设备的输入可以提供输入或命令,所述输入或命令用于计算设备1600的一个或多个应用或功能。另外,代替或除了显示输出,可以提供音频输出。在另一个例子中,如果显示子系统1630包括触摸屏,显示设备还充当输入设备,其可以至少部分地由i/o控制器1640来管理。计算设备1600上也可以有另外的按钮或开关,以提供由i/o控制器1640管理的i/o功能。
在一个实施例中,i/o控制器1640管理设备,诸如加速度计、相机、光传感器或其它环境传感器、或者可以包括在计算设备1600中的其它硬件。输入可以是直接用户交互中的部分,以及向系统提供环境输入以影响其操作(诸如,滤除噪声、针对亮度检测调整显示、为相机应用闪光灯、或其它特征)。
在一个实施例中,计算设备1600包括电源管理1650,电源管理1650管理电池电力使用、电池的充电、和与省电操作有关的特征。存储器子系统1660包括用于在计算设备1600中存储信息的存储器设备。存储器可以包括非易失性(如果中断到存储器设备的电力,则状态不改变)和/或易失性(如果中断到存储器设备的电力,则状态不确定)存储器设备。存储器子系统1660可以存储应用数据、用户数据、音乐、照片、文档、或其它数据、以及与计算设备1600的应用和功能的执行有关的系统数据(不管是长期的还是暂时的)。
实施例的单元也可以被提供为用于存储计算机可执行指令(例如,用以实现本文所述的任何其它处理的指令)的机器可读介质(例如,存储器1660)。机器可读介质(例如,存储器1660)可以包括但不限于闪存、光盘、cd-rom、dvdrom、ram、eprom、eeprom、磁卡或光卡、相变存储器(pcm)或者适合于存储电子或计算机可执行指令的其它类型的机器可读介质。例如,本公开内容的实施例可以被下载为计算机程序(例如,bios),其可以经由进行通信链路(例如,调制解调器或网络连接)通过数据信号的方式从远程计算机(例如,服务器)传送到请求计算机(例如,客户端)。
连接1670包括硬件设备(例如,无线和/或有线连接器和通信硬件)和软件部件(例如,驱动器、协议栈),以使得计算设备1600能够与外部设备进行通信。设备1600可以是分离的设备,诸如其它计算设备、无线接入点或基站,以及外设,例如耳机、打印机或其它设备。
连接1670可以包括多个不同类型的连接。概括地说,将计算设备1600示出为具有蜂窝连接1672和无线连接1674。蜂窝连接1672通常指代由无线载波提供的蜂窝网络连接,诸如经由gsm(全球移动通信系统)或变型或派生物、cdma(码分多址)或变型或派生物、tdm(时分复用)或变型或派生物、或者其它蜂窝服务标准提供的。无线连接(或无线接口)1674指代不是蜂窝的无线连接,并且可以包括个域网(诸如,蓝牙、近场等)、局域网(诸如,wi-fi)和/或广域网(诸如,wimax)或其它无线通信。
外设连接1680包括硬件接口和连接器,以及软件部件(例如,驱动器、协议栈),以获得外设连接。应当理解的是,计算设备1600可以是到其它计算设备的外围设备(“至”1682),以及具有连接到它的外围设备(“自”1684)。计算设备1600通常具有“坞”连接器,用以连接到其它计算设备,以用于诸如管理(例如,下载和/或上载、改变、同步)设备1600上的内容的目的。另外,坞连接器可以容许设备1600连接到特定外设,其容许计算设备1600控制例如到视听或其它系统的内容输出。
除了专有的坞连接器或其它专有连接硬件,计算设备1600可以经由常用或基于标准的连接器来获得外设连接1680。常用类型可以包括通用串行总线(usb)连接器(其可以包括若干不同硬件接口的任意一个)、包括minidisplayport(mdp)的displayport、高清晰度多媒体接口(hdmi)、火线或其它类型。
说明书中对“实施例”、“一个实施例”、“一些实施例”或“其它实施例”的提及意指结合实施例描述的特定特征、结构或特性包括在至少一些实施例中,但不一定是所有实施例。“实施例”、“一个实施例”或“一些实施例”的多次出现不一定全都指代相同的实施例。如果说明书表述“可以”、“或许”或“能够”包括部件、特征、结构或特性,那么不需要包括该特定部件、特征、结构或特性。如果说明书或权利要求书提及“一”或“一个”元件,那并不意指仅存在一个元件。如果说明书或权利要求书提及“另外的”元件,那并不排除存在多于一个另外的元件。
而且,特定特征、结构、功能或特性可以以任何适合的方式组合到一个或多个实施例中。例如,第一实施例可以与第二实施例相结合,只要与这两个实施例相关联的特定特征、结构、功能或特性不相互排斥。
尽管结合其具体实施例描述了本公开内容,但鉴于前述描述,这种实施例的许多替代、修改和变化对于本领域技术人员而言是显而易见的。例如,动态ram(dram)的其它存储器架构可以使用所述的实施例。尽管实施例示出了6tsram架构,但也可以使用其它sram架构。例如,可以结合实施例使用4t、5t、8t、16tsram架构。本公开内容的实施例旨在包含落入所附权利要求书的宽泛范围内的所有这种替代、修改和变化。
另外,为了简化图示和论述,在所呈现的附图内可以或可以不示出到集成电路(ic)芯片或其它部件的公知的电力/接地连接,以避免使得本公开内容模糊不清。此外,可以以框图形式示出布置,以避免使本公开内容模糊不清,并且同样鉴于以下事实:相对于这种框图布置的实现方式的细节高度依赖于要在其中实现本公开内容的平台(即,这种细节应完全在本领域技术人员的权限范围内)。在阐述了特定细节(例如,电路)以便描述本公开内容的示例性实施例的情况下,对于本领域技术人员显而易见的是,可以无需这些具体细节或者借助这些具体细节的变化来实施本公开内容。本说明因而应视为示例性而非限制性的。
以下例子属于进一步的实施例。例子中的细节可以用在一个或多个实施例中的任何地方。也可以相对于方法或过程实现本文所述装置的所有可选的特征。
例如,在一个实施例中,装置包括:成组耦合在一起的多个存储器阵列、本地写入辅助逻辑单元、和读取/写入本地列复用器,以使得由组中的本地写入辅助逻辑单元和读取/写入本地列复用器占用的面积小于在使用全局写入辅助逻辑单元和读取/写入全局列复用器时所占用的面积。
在一个实施例中,全局写入辅助逻辑单元和读取/写入全局列复用器耦合到存储器单元的未分段阵列。在一个实施例中,存储器单元的未分段阵列在面积上大于多个存储器阵列中的每一个存储器阵列。在一个实施例中,存储器单元的未分段阵列在面积上大于组合的多个存储器阵列、本地写入辅助逻辑单元、和读取/写入本地列复用器中的每一个。
在一个实施例中,所述装置还包括用于向组中的多个存储器阵列提供电力的电源金属线。在一个实施例中,本地写入辅助逻辑单元包括用以调整到电源金属线的电力的写入辅助p型上拉晶体管,并且其中,p型晶体管在尺寸上小于全局写入辅助逻辑单元的p型上拉晶体管。在一个实施例中,读取/写入本地列复用器包括传输门,所述传输门用以提供全局读取和写入数据线的电耦合,以生成本地读取和写入信号。
在另一个例子中,一种用于对存储器进行布局的方法,包括:将存储器单元的阵列分段为多个存储器单元的分段阵列;以及减小用于存储器单元的分段阵列的全局写入辅助逻辑单元的面积,以生成多个本地写入辅助逻辑单元,其中,多个本地写入辅助逻辑单元中的本地写入辅助逻辑单元中的每一个耦合到多个存储器单元的分段阵列中的存储器单元的分段阵列中的每一个。
在一个实施例中,所述方法还包括减小用于存储器单元的分段阵列的全局读取/写入列复用器的面积,以生成多个本地读取/写入列复用器,其中,本地读取/写入列复用器中的每一个本地读取/写入列复用器耦合到多个存储器单元的分段阵列中的存储器单元的分段阵列中的每一个。在一个实施例中,减小用于存储器单元的分段阵列的全局写入辅助逻辑单元的面积以生成多个本地写入辅助逻辑单元包括:减小全局写入辅助逻辑单元的上拉p型晶体管的尺寸,以生成用于本地写入辅助逻辑单元的本地上拉p型晶体管。
在另一个例子中,一种系统,包括:存储器单元;以及处理器,所述处理器耦合到存储器单元,所述处理器包括高速缓冲存储器,所述高速缓冲存储器包括:成组耦合在一起的多个存储器阵列、本地写入辅助逻辑单元、和读取/写入本地列复用器,以使得由组中的本地写入辅助逻辑单元和读取/写入本地列复用器占用的面积小于在使用全局写入辅助逻辑单元和读取/写入全局列复用器时所占用的面积。
在一个实施例中,所述系统还包括:显示单元;以及无线接口,所述无线接口用以容许处理器以无线方式与其它设备进行通信。在一个实施例中,存储器单元是dram。在一个实施例中,全局写入辅助逻辑单元和读取/写入全局列复用器耦合到存储器单元的未分段阵列。在一个实施例中,存储器单元的未分段阵列在面积上大于多个存储器阵列中的每一个存储器阵列。在一个实施例中,存储器单元的未分段阵列在面积上大于组合的多个存储器阵列、本地写入辅助逻辑单元、和读取/写入本地列复用器中的每一个。
在一个实施例中,所述处理器还包括用于向组中的多个存储器阵列提供电力的电源金属线。在一个实施例中,本地写入辅助逻辑单元包括用以调整到电源金属线的电力的写入辅助p型上拉晶体管,并且其中,p型上拉晶体管在尺寸上小于全局写入辅助逻辑单元的p型上拉晶体管。在一个实施例中,读取/写入本地列复用器包括传输门,所述传输门用以提供全局读取和写入数据线的电耦合,以生成本地读取和写入信号。
在另一个例子中,在一个实施例中,提供了一种计算机可读储存介质,所述计算机可读储存介质具有计算机可读指令,所述计算机可读指令在被执行时使得机器执行方法,所述方法包括:将存储器单元的阵列分段为多个存储器单元的分段阵列;以及减小用于存储器单元的分段阵列的全局写入辅助逻辑单元的面积,以生成多个本地写入辅助逻辑单元,其中,多个本地写入辅助逻辑单元中的本地写入辅助逻辑单元中的每一个耦合到多个存储器单元的分段阵列中的存储器单元的分段阵列中的每一个。
在一个实施例中,所述计算机可读储存介质还具有计算机可读指令,所述计算机可读指令在被执行时使得机器执行进一步的方法,所述进一步的方法包括减小用于存储器单元的分段阵列的全局读取/写入列复用器的面积,以生成多个本地读取/写入列复用器,其中,本地读取/写入列复用器中的每一个本地读取/写入列复用器耦合到多个存储器单元的分段阵列中的存储器单元的分段阵列中的每一个。在一个实施例中,减小用于存储器单元的分段阵列的全局写入辅助逻辑单元的面积以生成多个本地写入辅助逻辑单元包括:减小全局写入辅助逻辑单元的上拉p型晶体管的尺寸,以生成用于本地写入辅助逻辑单元的本地上拉p型晶体管。
在另一个例子中,在一个实施例中,一种电平移位器,包括:第一电源,所述第一电源用以为电平移位器的多个晶体管供电;第一输入节点,所述第一输入节点用以接收由工作在第二电源上的电路生成的第一信号,第二电源与第一电源不同;第一n型晶体管,所述第一n型晶体管用以接收第一信号;第二输入节点,所述第二输入节点用以接收第二信号,第二信号是第一信号的反相,第二信号由电路生成;以及第二n型晶体管,所述第二n型晶体管用以接收第二信号,第一n型晶体管和第二n型晶体管具有交叉耦合到多个晶体管中的一些晶体管的漏极端子。
在一个实施例中,电平移位器还包括输出节点,所述输出节点用以根据第一信号和第二信号生成输出信号。在一个实施例中,电平移位器是异步的。在一个实施例中,电平移位器不依赖于时钟信号。在一个实施例中,电平移位器还包括耦合到多个晶体管中的一些晶体管的第三输入节点,第三输入节点用以接收第三信号以生成确定性输出。在一个实施例中,电平移位器还包括输出节点,所述输出节点用以根据第一信号和第二信号或者第三信号生成输出信号。
在一个实施例中,多个晶体管中的一些晶体管起锁存器的作用。在一个实施例中,第二电源高于第一电源。在一个实施例中,第一电源高于第二电源。
在另一个例子中,一种存储器单元,包括:存储器单元的阵列;列复用器,所述列复用器耦合到存储器单元的阵列;感测放大器,所述感测放大器耦合到列复用器;以及具有集成的电平移位器的输出数据锁存器,包括:第一电源,所述第一电源用以为电平移位器的多个晶体管供电;第一输入节点,所述第一输入节点用以接收由工作在第二电源上的电路生成的第一信号,第二电源与第一电源不同;第一n型晶体管,所述第一n型晶体管用以接收第一信号;第二输入节点,所述第二输入节点用以接收第二信号,第二信号是第一信号的反相,第二信号由电路生成;以及第二n型晶体管,所述第二n型晶体管用以接收第二信号,第一n型晶体管和第二n型晶体管具有交叉耦合到多个晶体管中的一些晶体管的漏极端子。
在一个实施例中,存储器单元的阵列是sram单元的阵列。在一个实施例中,存储器单元还包括预充电耦合到列复用器的位线。在一个实施例中,存储器单元还包括输出节点,所述输出节点用以根据第一信号和第二信号生成输出信号。在一个实施例中,具有集成的电平移位器的输出数据锁存器是异步的。在一个实施例中,具有集成的电平移位器的输出数据锁存器不依赖于时钟信号。
在一个实施例中,存储器单元还包括第三输入节点,所述第三输入节点耦合到多个晶体管中的一些晶体管,所述第三输入节点用以接收第三信号以生成确定性输出。在一个实施例中,存储器单元还包括输出节点,所述输出节点用以根据第一信号和第二信号或者第三信号生成输出信号。在一个实施例中,多个晶体管中的一些晶体管起锁存器的作用。在一个实施例中,第二电源高于第一电源。在一个实施例中,第一电源高于第二电源。
在另一个例子中,在一个实施例中,一种系统,包括:存储器单元;以及处理器,所述处理器耦合到存储器单元,所述处理器包括高速缓冲单元,所述高速缓冲单元具有根据实施例中所述的电平移位器的电平移位器。
在另一个例子中,一种装置,包括:写入辅助脉冲发生器,所述写入辅助脉冲发生器工作在第一电源上;一个或多个上拉器件,所述一个或多个上拉器件耦合到写入辅助脉冲发生器,所述一个或多个上拉器件工作在与第一电源不同的第二电源上;以及输出节点,所述输出节点用以向存储器单元提供电源。
在一个实施例中,存储器单元是sram单元。在一个实施例中,写入辅助脉冲发生器可操作用于生成写入辅助脉冲,以使得一个或多个上拉器件将第二电源耦合到输出节点。在一个实施例中,写入辅助脉冲发生器可操作用于生成写入辅助脉冲,以使得电源相对于另一个电源进行调整。在一个实施例中,输出节点耦合到写入辅助脉冲发生器。
在一个实施例中,输出节点响应于唤醒信号而耦合到第一电源。在一个实施例中,输出节点响应于睡眠信号而耦合到第三电源。在一个实施例中,第三电源是睡眠电源。
在另一个例子中,在一个实施例中,一种系统,包括:存储器单元;以及处理器,所述处理器耦合到存储器单元,所述处理器具有高速缓冲存储器单元,所述高速缓冲存储器单元包括:存储器单元的阵列,所述存储器单元的阵列工作在第一电源上;以及写入辅助电路,所述写入辅助电路耦合到存储器单元的阵列,所述写入辅助电路用以在向存储器单元的阵列的写入操作期间降低第一电源,所述写入辅助电路根据实施例中所述的写入辅助电路。在一个实施例中,系统还包括显示单元;以及无线接口,所述无线接口用以容许处理器以无线方式与其它设备进行通信。在一个实施例中,存储器单元是dram。
提供了摘要,其将容许读者确定本技术公开内容的本质和要旨。本摘要的提交应理解为它不用于限制权利要求书的范围或含义。以下权利要求书由此包含在具体实施方式中,其中每一项权利要求自身作为单独的实施例。