一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

具有锁存器的静态随机存取存储器读路径的制作方法

2022-07-10 20:37:59 来源:中国专利 TAG:

具有锁存器的静态随机存取存储器读路径


背景技术:

1.相关技术
2.许多电子装置包括用于存储数据副本(即,操作结果、操作数、指令、控制值和/或其他信息)的集成电路存储器。例如,一些电子装置包括高速缓存存储器,该高速缓存存储器用于在本地存储数据副本以使得在诸如处理器核心之类的实体的操作期间能够快速检索数据。这些存储器中的一些存储器包括静态随机存取存储器(sram)。sram是集成电路存储器的一种形式,其中使用场效应晶体管实现的单独的单元(或“位单元”)用于存储单独数据位。例如,在一种普通形式的sram中,每个单元使用六个晶体管实现,所述晶体管被配置为用于存储数据的两个背靠背反相器和用于存取存储数据的两个存取晶体管。在一些sram存储器中,经由包括感测放大器和锁存器的读路径来读取存储在单元中的数据。在给定读路径中,感测放大器基于从单元获取的存储数据值来生成读取数据输出,并且锁存器从感测放大器捕获并存储该读取数据输出并且将该读取数据输出提供给下游电路元件。
3.在一些电子装置中,sram存储器是位于关键时序路径上的电路的一部分。例如,sram高速缓存存储器可以用于将操作数供应给高速处理器核心,并且可以属于与依赖于操作数的运算操作相关联的时序路径中的最长时延元件。另外,在一些电子装置中,sram存储器必须能够在不同的控制时钟频率的范围内正确地进行操作。例如,可以要求sram存储器支持具有大范围的控制时钟频率的不同的操作状态、电力模式等。在一些电子装置中,可将控制时钟频率设置得足够低以使短路在读路径运行时发生,这导致不理想的低效漏电流,并且可能导致功能故障。设计人员花了大量精力优化sram存储器读路径,以实现提高sram存储器读路径的运行速度同时也避免在低控制时钟频率下sram存储器读路径中可能发生的低效率和功能故障的双重目标。例如,设计人员已经建议使用sram存储器读路径中的在图1中所示的锁存器电路。图1的锁存器电路包括nor门设置-重置锁存器和逻辑门,所述逻辑门使用感测放大器启用信号的补码(saenx)来在读路径的低频操作期间避免短路电流和功能故障(即,保持故障)。再如,设计人员已经建议使用sram存储器读路径中的在图2中所示的锁存器电路。图2中的锁存器电路包括与或非锁存器,其使用saenx信号选通以在读路径的低频操作期间避免短路电流和功能故障。虽然使用诸如图1至图2中示出的那些锁存器电路可以得到读路径的更高速操作同时避免低频下的漏电流,但是锁存器电路包括值得读路径上的延迟的三个门,具有不同的上升时间和下降时间并且还有其他缺点。因此期望更好的sram存储器的读路径。
附图说明
4.图1呈现了示出用于sram存储器的读路径的nor锁存器的框图。
5.图2呈现了示出用于sram存储器的读路径的与或非(aoi)锁存器的框图。
6.图3呈现了示出根据一些实施方案的电子装置的框图。
7.图4呈现了示出根据一些实施方案的sram存储器的框图。
8.图5呈现了示出根据一些实施方案的用于sram存储器的控制信号的框图。
9.图6呈现了示出根据一些实施方案的sram存储器的读路径中的感测放大器和锁存器的框图。
10.图7呈现了示出根据一些实施方案的sram单元的读路径中的共享锁存器的框图。
11.图8呈现了示出根据一些实施方案的用于执行sram存储器的读取的过程的流程图。
12.在整个附图和描述中,相似的附图标记指代相同的附图元件。
具体实施方式
13.呈现以下描述以使得本领域任何技术人员能够制造和使用所描述的实施方案,并且在特定应用及其要求的背景下提供以下描述。对所描述的实施方案的各种修改对于本领域技术人员来说将显而易见,并且本文定义的一般原理可应用于其他实施方案和应用。因此,所描述的实施方案不限于所示的实施方案,而是要被赋予与本文中公开的原理和特征一致的最宽范围。
14.术语
15.在以下描述中,使用各种术语来描述实施方案。以下是这些术语中的一些的简化且一般描述。应注意,这些术语可能具有重要的附加方面,为了清楚和简洁起见,本文没有列举所述附加方面,且因此该描述并不旨在限制这些术语。
16.功能块:功能块是指一个或多个互相关联的电路元件(诸如集成电路元件、分立电路元件等)的组、集合和/或集。电路元件是“互相关联的”,因为电路元件共享至少一种性质。例如,互相关联的电路元件可被包括在特定的集成电路芯片或其部分中、制造在特定的集成电路芯片或其部分上或以其他方式耦合到特定的集成电路芯片或其部分,可参与执行给定的功能(计算或处理功能、存储器功能等),可由共同控制元件和/或共同块来控制等。功能块可包括任何数量的电路元件,从单个电路元件(例如,单个集成电路逻辑门)至数百万或数十亿的电路元件(例如,集成电路存储器)。
17.补码:应用于信号的补码表示给定信号是另一个信号的逻辑反转。例如,“位线补码”信号是“位线”信号的逻辑反转,因此,如果位线是逻辑高值(例如,近似vdd),则在稳定状态下,位线补码将是逻辑低值(例如,近似vss)。信号及其补码可以在某些反相电路元件的相对侧找到,诸如反相器、sram存储器中的单元等。在本说明书中,可以使用附加在信号标签末端的x来指示信号的补码,因此标记为“signalx”的信号是标记为“signal”的信号的补码。
18.信号:信号是指要由一个或多个接收电路元件接收的提供电路元件驱动、提供或以其他方式可用的电气路径、路线、指南和/或其他互连的电压、电流或其他特性的值。例如,缓冲电路元件可以将具有逻辑高电压值(例如,近似vdd)的信号驱动到金属迹线上,其中该信号由诸如锁存器或触发器电路元件的存储电路元件接收。基于提供电路元件的输入刺激的变化,提供电路元件可以在电压、电流或其他特性的允许范围内随时间改变信号。例如,反相器电路元件最初可以输出逻辑高电压值,但可以基于反相器输入的对应变化,转换为输出逻辑低电压值(例如,近似vss)或vdd与vss之间的中间电压值。在某些情况下,信号是恒定的,诸如以逻辑高值(例如,近似vss)或逻辑低值(例如,近似vdd)稳定驱动的信号。
19.门延迟:门延迟是比较不同集成电路性能的近似和相对测量。一般来说,门延迟表
示信号在集成电路路径上遍历的晶体管(通常在反相电路元件中)的数量。因此,门延迟是信号通过路径的飞行时间的粗略测量。以使用金属氧化物硅场效应晶体管(“晶体管”)实现的反相器为例,门延迟大约是连接到反相器的输入(从而连接到组成晶体管的栅极引线)的信号的转换与反相器的输出的对应转换之间的时间。
20.概述
21.在所述实施方案中,电子装置包括存储数据(例如,计算操作的操作数、操作结果、指令、配置值、标记信息和/或其他信息)的集成电路存储器。例如,在一些实施方案中,存储器包括在或不包括在高速缓存存储器、高速缓存存储器中的标记阵列、主存储器和/或另一存储器中。存储器包括静态随机存取存储器(sram)电路,其中数据位存储在使用场效应晶体管(或,更简单地,“晶体管”)实现的单元中。例如,在一些实施方案中,每个单元使用六个晶体管实现,其中四个晶体管被配置为用于存储数据位的背靠背反相器,两个晶体管被配置为用于启用(或禁用)对存储数据的存取(即,读取和写入)的存取晶体管。在所述实施方案中,经由对应“读路径”中的电路元件从存储器中的每个单元来读取数据。每个读路径包括电路元件,即,感测放大器(“感测amp”)和锁存器,用于从一个或多个单元获取数据并且将该数据提供给接收电路元件。一般来说,在所述实施方案中,选择和布置读路径中的电路元件,以便:(1)感测放大器的输出与读路径的数据输出之间只有两个门延迟;(2)避免了读路径的与短路电流和功能故障(例如,锁存器的保持故障)关联的低频操作;(3)均衡了感测放大器上的电容负载;并且(4)锁存器的上升/下降时间更对称(即,相比于现有的读路径锁存器设计)。
22.在所述实施方案中,存储器的读路径中的锁存器使用电路元件的布置实现,所述电路元件只包括感测放大器的输出与读路径的数据输出之间的读路径中的两个门延迟。在这种布置中,每个锁存器中的读路径中的第一门(因此是第一门延迟)是三态反相器。用于该读路径的感测放大器启用信号(saen)及其补码(saenx)用于控制三态反相器何时在耦接到锁存器的中间节点的三态反相器的输出上发信号通知从用于该读路径的感测放大器的感测放大器(sat)输出接收的输入信号的反相版本。每个锁存器中的读路径中的第二门是输出驱动器(例如,输出反相器、nand门、三态反相器等)。输出驱动器从锁存器的中间节点接收信号作为输入,并且输出来自中间节点的信号的反相版本作为该读路径的数据输出。除了这两个门,每个锁存器还包括耦接到该锁存器的中间节点的存储器元件,该存储器元件维持该锁存器的中间节点上的值(因此是“存储”该锁存器中的数据的电路元件)。存储器元件包括一对背靠背的反相器和三态反相器,该三态反相器是使用saenx信号和saen信号控制的。
23.由于感测放大器和锁存器中的电路元件的布置,在没有某种形式的保护的情况下,由于在某些控制信号在时间上重叠时(尤其是在低控制时钟频率下)形成的短路路径,读路径中可以发生短路电流。例如,在只有感测放大器预充电(sapc)信号用于触发预充电(即,以使感测放大器中的预充电电路对sat节点和感测放大器补码(sac)节点进行预充电)的设计中,当sapc信号在saen信号生效的同时生效时,感测放大器本身中可以发生短路路径。再如,当sapc信号在启用(经由saen信号)锁存器的同时生效时,短路路径可以经由感测放大器和锁存器发生,并且由于存储在锁存器中的数据的损坏,可以导致功能故障。所述实施方案包括预充电控制电路,其控制预充电电路何时对感测放大器进行预充电从而避免短
路电流。在所述实施方案中,预充电控制电路接收sapc信号和saenx信号作为输入,并且基于sapc信号和saenx信号的值输出感测放大器预充电补码(sapcx)信号,该sapcx信号使感测放大器中的预充电电路对感测放大器进行预充电。通过使用saenx信号控制何时对感测放大器进行预充电,感测放大器的预充电以及感测放大器和锁存器的启用不应该重叠,这为相关联的短路电流提供了保护。
24.在所述实施方案中,每个读路径中的感测放大器上的电容负载使用负载均衡电路进行均衡。该负载均衡电路连接到感测放大器的感测放大器补码(sac)节点并且提供sac节点上的电容负载。在一些实施方案中,负载均衡电路包括三态反相器,其中该三态反相器的四个晶体管中的两个晶体管(即,一个nmos晶体管和一个pmos晶体管)的栅极引线连接到sac节点,并且另外两个晶体管的栅极引线连接到禁用信号,所述禁用信号将三态反相器保持在关闭/禁用/非导通状态。因此,三态反相器向sac节点提供电容负载,类似于锁存器中的上述三态反相器提供给sat节点的电容负载。负载均衡电路确保感测放大器在sat节点和sac节点上提供了相等的负载,这延长了感测放大器中的晶体管的寿命,并且确保了sat节点和sac节点的上升时间和下降时间更加相等。在一些实施方案中,除了提供电容负载,负载均衡电路不涉及读路径中的其他操作。
25.在一些实施方案中,sram存储器中的至少两个存储体共享单个读路径的一部分,因此使用相同的单个读取数据输出选择性地输出数据。在这些实施方案中,锁存器中的上述输出驱动器、中间节点和存储电路元件是读路径的在两个存储体之间共享的一部分。因此,每个存储体包括其自身的单独感测放大器和锁存器输入三态反相器,并且包括其自身的负载均衡电路和预充电控制电路。在这些实施方案中,经由两个存储体中的读路径使用的单独的saen信号和saenx信号的组合来控制/启用读路径的共享部分中的三态反相器。
26.通过使用sram存储器的读路径中的上述电路元件(即,锁存器、预充电控制电路和负载均衡电路),所述实施方案提高了读路径的速度,同时也确保在低控制时钟频率下避免短路电流和功能故障并且改进电路元件的整体操作。这转而实现了sram存储器和包括sram存储器的电子装置的更高性能,获得了对sram存储器和电子装置的更高用户满意度。
27.电子装置
28.图3呈现了示出根据一些实施方案的电子装置300的框图。电子装置300包括处理器302和存储器304。处理器302是在电子装置300中执行计算、存储器存取和其他操作的功能块。处理器302包括处理子系统306和高速缓存存储器308。处理子系统306包括执行通用计算、控制和/或其他操作的一个或多个功能块,诸如中央处理单元(cpu)核心、图形处理单元(gpu)核心、嵌入式处理器和/或专用集成电路(asic)。
29.高速缓存存储器308是执行用于存储数据(例如,用于运算操作的操作数、运算结果、指令、配置值和/或其他信息)的副本以供处理子系统306和电子装置300中的可能其他实体存取(例如,读取、写入等)的操作的功能块。高速缓存存储器308是较高速存储器,其中存储有数据的副本以便实现比存取存储器304中的数据更快地存取数据。在一些实施方案中,高速缓存存储器308位于处理子系统306中的存取高速缓存存储器308中的数据的副本的处理电路附近,并且经由高速接口连接到处理电路,从而实现对存储数据的快速存取。
30.存储器304是执行电子装置300中的存储器(例如,主存储器)的操作的功能块。存储器304包括用于存储数据(例如,用于运算操作的操作数、运算结果、指令、配置值和/或其
他信息)以供电子装置300中的功能块以及用于处理对存储器电路中的数据的存取(例如,读取、写入等)的控制电路使用的易失性存储器电路。存储器304中的存储器电路包括易失性存储器电路,诸如第四代双倍数据速率同步动态随机存取存储器(ddr4 sdram)、静态随机存取存储器(sram)和/或其他类型的存储器电路。在一些实施方案中,从存储器304获取数据的副本,并将其存储在高速缓存存储器308中,以实现对数据的副本的更快存取。
31.电子装置300被示为包括特定数量和布置的元件(例如,功能块和装置诸如处理器302、存储器304等)。然而,出于说明性目的,简化了电子装置300。在一些实施方案中,电子装置300中存在不同数量或布置的元件。例如,电子装置300可以包括电源子系统、人机界面系统等。再如,在一些实施方案中,电子装置300包括大容量存储装置,诸如磁盘驱动器或更高容量的集成电路存储器,其用作电子装置300中的数据的非易失性存储装置,并且从其获取数据的副本以存储在存储器304和/或高速缓存存储器308中。一般地,电子装置300包括足够的元件以执行本文描述的操作。
32.虽然示出的电子装置300仅具有单个高速缓存存储器,即处理器302中的高速缓存存储器308,但是电子装置300还可以包括更多的和/或以不同方式布置的高速缓存存储器。例如,在一些实施方案中,电子装置300包括高速缓存存储器的层次结构,其中一个或多个高速缓存存储器位于处理器302中,并且一个或多个高速缓存存储器位于处理器302之外,即,经由一个或多个通信总线等连接到处理器302。在这些实施方案中,高速缓存存储器中的一些或全部高速缓存存储器包括sram存储器。另外,在一些实施方案中,与执行高速缓存存储器(诸如标记阵列)中的操作相关联的和/或用于执行高速缓存存储器中的操作的电路包括sram存储器。
33.电子装置300可以是执行存储器存取和/或其他操作的任何电子装置或可被包括在执行存储器存取和/或其他操作的任何电子装置中。例如,电子装置300可以是电子装置或可被包括在电子装置中,诸如台式计算机、膝上型计算机、可穿戴电子装置、平板计算机、智能电话、服务器、人工智能设备、虚拟或增强现实装备、网络器械、玩具、视听装备、家用电器、控制器、车辆等和/或其组合。
34.sram存储器
35.在所述实施方案中,sram电路用于将数据存储在电子装置300中的存储器中,诸如高速缓存存储器308和/或高速缓存存储器308中的标记阵列。图4呈现了示出根据一些实施方案的使用sram电路(或“sram存储器”)实现的存储器400的框图。在一些实施方案中,电子装置300中的sram存储器中的一些或全部sram存储器与图4中所示类似地布置,但这不是必需的。
36.如图4所示,存储器400包括存储器阵列402,其是包括成行和成列排列的sram单元(或“位单元”)阵列的功能块。存储器阵列402的左上角示出了几个示例单元,其中所述单元之一被标记为单元404(为了清楚起见,剩余单元未在图4中示出和/或标记)。如图4顶部的单元404的展开图所示,单元404包括(存储器阵列402中的每个单元也是如此)用于存储数据位并存取所存储的数据位的一组晶体管。更具体地,单元404包括六个晶体管,其中四个晶体管(本文称为“存储”晶体管)被配置为用于将数据位存储在单元中的背靠背反相器,两个晶体管(本文称为“存取”晶体管)被配置用于存取所存储的数据位。单元404中的两个存取晶体管之一连接到位线(blt)406,另一存取晶体管连接到位线补码(blc)408,所述位线
和位线补码是用于存取单元404中的数据(即,用于从单元404读取数据并向其写入数据)的信号线。由于单元中的背靠背反相器和存取晶体管连接到的节点的反转布置,位线406存取存储在单元404中的数据的值,而位线补码408存取存储在单元404中的数据的值的补码/逻辑反转。
37.单元404中的存取晶体管的栅极引线连接到字线410,在其上驱动用于启用或禁用存取晶体管并因此选择性地提供对存储晶体管的存取的信号。在一些实施方案中,存储器阵列402中的成行的n个单元(其中n是16、32或另一数量)的群组连接到字线412中的同一字线并且作为一个群组被启用(或禁用)。使用字线412中的字线,数据可以因此作为群组而在单元群组中被存取。另外,成列的m个单元(其中m是16、32或另一数量)的群组连接到位线414中的同一位线和位线补码,并且可以使用字线412并经由对应的位线和位线补码一次选择性地存取一列中单个单元中的数据。
38.多路复用器416是包括许多多路复用器电路元件的功能块,所述多路复用器电路元件包括读取多路复用器和写入多路复用器。例如,在一些实施方案中,多路复用器416包括根据数据流的方向执行读取多路复用器和写入多路复用器的多路复用-解复用功能的电路元件,以便当数据从单元404流动以用于读取时,所述电路元件用作多路复用器,并且当数据流向单元404以用于写入时,所述电路元件用作解复用器。读取多路复用器和写入多路复用器用于从存储器阵列402中的列中选择分别从其读取数据或向其写入数据的列。在一些实施方案中,存储器阵列402包括k列单元(例如,32、64或另一数量),但是一次只存取k/2列或列的另一部分。换句话说,在k列中,对于每个写入或读取操作,只读取或写入列的一部分(一半、四分之一等)。因此,多路复用器416中的多路复用器用于选择要被读取或写入的列。
39.感测放大器和写入驱动器418是包括感测放大器电路元件和写入驱动器电路元件的功能块。感测放大器是差分感测放大器,其在读取操作期间用于基于通过多路复用器416中的读取多路复用器的位值和位补码值来检测存储器阵列402中的单元中的数据值(例如,0或1),因此多路复用器416中的每个读取多路复用器都有单独的感测放大器。写入驱动器在写入操作期间用于通过多路复用器416中的写入多路复用器将数据值驱动到位线414中的位线和位补码线上,从而驱动到经由字线412中的字线选择的存储器阵列402的列中的对应单元。
40.输入/输出元件420是包括用于从存储器400外部的实体接收数据并向其提供数据的电路元件的功能块。输入/输出元件420包括接收器电路元件(诸如缓冲器、中继器、锁存器等),其用于从实体接收要被写入存储器阵列402的写入数据442并且将接收到的数据传送/转发到感测放大器和写入驱动器418中的写入驱动器。输入/输出元件420包括驱动器电路元件(诸如缓冲器、中继器、锁存器等),其用于从感测放大器和写入驱动器418中的感测放大器接收从存储器阵列402读取的数据并将接收到的读取数据442发送到实体。
41.行解码器422和列解码器(cdec)424是执行与选择要在存储器阵列402中的单元中存取的数据相关联的操作的功能块。行解码器422从外部实体(例如,存取数据的外部实体)接收行地址428,处理/解码所述行地址428以从存储器阵列402中的单元行中确定要存取的特定单元行,并且使字线412中的对应字线上的信号生效以启用特定行中的单元。列解码器424从外部实体接收列地址430,处理/解码所述列地址430以从存储器阵列402中的单元列
中确定要存取的特定列,并且使从列选择(csel)432中选择的列上的信号生效,以使多路复用器416中的多路复用器存取特定列。例如,当读取该存取时,列选择使读取多路复用器将数据(即,位和位补码对)从特定列传送到对应的感测放大器。
42.控件426是执行用于控制何时存取存储器阵列402中的数据的操作的功能块。控件426从外部实体(包括读取启用(rden)434、写入启用(wren)436和时钟(clk)438)接收各种信号作为输入,并且至少部分地基于所述信号生成控制信号(ctrl)440中的控制信号。例如,在一些实施方案中,控件426生成信号作为控制信号440的一部分,所述信号用于同步/触发存储器400中的行解码器422、列解码器424和其他功能块中的操作。再如,在一些实施方案中,控件426生成信号作为控制信号440的一部分,所述信号用于预充电或设置感测放大器和/或写入驱动器并且启用所述感测放大器和/或写入驱动器。
43.在一些实施方案中,时钟438可以在多个不同的频率下操作,这影响了由时钟438控制的操作的时序。例如,在低功率操作模式中,时钟438可以在指定低频(例如,400mhz、1ghz或另一频率)下操作,而在高功率操作模式中,时钟438可以在指定高频(例如,1.6ghz、2ghz或另一频率)下操作。在所述实施方案中,通过使用指定控制信号生成感测放大器504中的预充电电路的预充电信号,在低时钟438频率下避免了通过感测放大器504(参见图5)的某些短路路径,如在下文更详细描述的。
44.虽然存储器400被示为包括功能块和元件的特定数量和布置,但是出于说明的目的简化了存储器400。在一些实施方案中,存储器400包括不同的和/或以不同方式布置的功能块和/或元件。例如,在一些实施方案中,存储器400包括在执行读取操作前对位线414进行预充电的预充电功能块。通常,在所述实施方案中,存储器400包括足够的功能块和元件以执行本文所述的操作。
45.图5呈现了示出根据一些实施方案的用于存储器400的控制信号的框图。对于图5,上面在图4的描述中描述了几个功能块,即,编号为400的功能块,诸如存储器阵列402、行解码器422和列解码器424。然而,图5包括图4的描述中未描述的许多功能块和/或电路元件。这些功能块和电路元件包括读取多路复用器500、写入多路复用器502、感测放大器(amp)504、写入驱动器(drv)506和锁存器508。另外,在图5中分别示出了各种控制信号,这些控制信号通常在上文中被描述为字线412、列选择432或控制信号440的一部分,并且在下文中进行了更详细的描述。
46.为清楚起见,在图5所示的示例中,两行单元404和两列单元404中的每一行和每一列中只有两个单元404。然而,在一些实施方案中,存储器阵列402包括更多(并且通常是多得多的)行单元404,并且所述行包括更多单元404,如使用图5中的椭圆所示。另外,在一些实施方案中,存储器阵列402包括更多(并且通常是多得多的)列单元404,如使用图5中的椭圆所示。在这些实施方案中,图5中的其他功能块和电路元件的数量相应地增加。例如,存储器可能能够一次从具有128个、256个或另一数量的行的64个、128个或另一数量的单元404列中读出32个、64个或另一数量的位,因此有32个、64个或另一数量的读取多路复用器500、感测放大器504、锁存器508等。一般来说,在所述实施方案中,存储器400包括足够数量的功能块和电路元件以执行本文所述的操作。
47.字线510-512是字线412中的连接到存储器阵列402中的单元404行中的存取晶体管的单独字线。当生效(例如,设置为高逻辑值)时,字线510-512中的每个字线启用对存储
器阵列402中的对应单元404行中的单元404的存取。更具体地,当在读取操作期间启用时,连接到单元404的存取晶体管的栅极引线的字线510-512激活存取晶体管,以便在每个单元404所连接的位线上(即,在位线和位线补码上具有逻辑上相反的值)提供存储在对应行中的单元404中的存储晶体管中的数据值。另一方面,当在写入操作期间启用时,字线510-512激活存取晶体管,以便可以通过存取晶体管将位线上的值驱动到存储晶体管,以存储在对应单元404中。
48.读取多路复用器500是在多个单独的输入上从一对位线(显示为位线(blt)和位线补码(blc))接收信号的功能块,该对位线连接到存储器阵列402中的两个单独单元404列的存取晶体管,并将值从选定的一对位线传送到连接到感测放大器504的输出。在读取操作期间,列解码器424在读取列选择(rd col sel)514(例如,逻辑高值或逻辑低值)上发送信号,该信号使读取多路复用器500将位线值从两个单元404列中的期望的一列传送到感测放大器504。在一些实施方案中,读取多路复用器500包括每个位线上的单个晶体管或传输门,其由读取列选择514激活或停用,以便将对应位线上的值传送到感测放大器504,或阻断对应位线上的值。
49.写入多路复用器502实际上是功能上的解复用器,它是一个功能块,在一对输入上接收来自连接到写入驱动器506的一对信号线的信号,并经由连接到对应位线(该位线连接到存储器阵列402中两个单元404列的存取晶体管)的一组输出将接收到的值传送到选定单元404列的一对位线。在写入操作期间,列解码器424在写入列选择(wr col sel)516(例如,逻辑高值或逻辑低值)上发送信号,该信号使写入多路复用器502将从写入驱动器506接收的值及其补码转发到单元404列中的期望的一列的位线上。例如,在一些实施方案中,写入多路复用器502包括每个位线上的单个晶体管或传输门,其由写入列选择516激活或停用,以便将从写入驱动器506接收的值传送到对应位线上,或阻断对应位线上的值。
50.感测放大器504是从读取多路复用器500接收来自位线及其补码的值并且基于所述值将具有对应值的输出信号驱动到锁存器508的功能块。对于读取操作,在预充电阶段期间,控件426发送感测放大器预充电(sapc)518线上的信号,以使感测放大器504对其输出节点(即,感测放大器504的sat节点和sac节点,如下所述)进行预充电。在评估阶段期间,控件426还发送感测放大器启用补码(saenx)520线上的信号,以使感测放大器504评估输出节点(即,sat节点和sac节点)上的值并且将对应值(即,值及其补码)驱动到输出节点上。锁存器508接收在感测放大器504的sat节点上驱动的值作为输入。应注意,如果允许感测放大器预充电518线和感测放大器启用补码520线上的信号同时处于逻辑低状态(例如,近似vdd),则通过感测放大器504发生短路路径。在所述实施方案中,控制感测放大器预充电518线和感测放大器启用补码520线上的信号,以避免这些信号同时处于逻辑低状态。
51.写入驱动器506是从输入上的外部实体接收写入数据524(即要写入存储器阵列402中的单元404的数据)并且将写入数据524及其补码驱动到写入多路复用器502的功能块,其中写入数据524及其补码被从所述写入多路复用器传送到存储器阵列402中的选定单元404列。在写入操作期间,控件426发送写入驱动器启用补码(wdenx)522线上的信号,以使写入驱动器506将写入数据524驱动到写入多路复用器502。
52.锁存器508是从感测放大器504的输出节点(即,sat节点)接收值并存储所述值的功能块。锁存器508还将所述值作为读取数据526提供给外部实体。在读取操作期间,控件
426发送感测放大器启用补码520线上的信号,以使锁存器508在感测放大器504的输出节点上捕获/存储数据并将所述数据提供给外部实体。
53.虽然图5中未示出,但在一些实施方案中,位线(blt和blc)连接到在读取操作之前对位线进行预充电的预充电电路元件。在这些实施方案中,位线预充电(blpc)信号线连接到位线中的每个位线。
54.感测放大器和锁存器
55.在所述实施方案中,读路径是用于从存储器阵列中的sram单元(例如,存储器阵列402中的单元404)读取数据的一组电路,包括感测放大器和锁存器。图6呈现了示出根据一些实施方案的读路径600中的感测放大器504和锁存器508的框图。
56.对于图6中的示例,读路径600包括对现有sram单元读路径的许多改进。第一,锁存器508在感测放大器504的sat输出与锁存器508的读取数据526输出之间仅具有两个门延迟,比现有设计少了一个门延迟。第二,感测放大器预充电补码(sapcx)信号(经由其对感测放大器504进行预充电)基于感测放大器预充电(sapc)信号和感测放大器启用补码(saenx)信号生成。使用saenx信号生成sapcx信号帮助避免涉及读路径600中的预充电电路602的短路路径。第三,读路径600包括连接到感测放大器504的sac输出的负载均衡电路608。鉴于连接到感测放大器504的sat输出的锁存器508中的三态反相器的电容负载,负载均衡电路608均衡感测放大器504上的电容负载,并帮助确保感测放大器504输出具有大致相同的上升时间和下降时间的信号。
57.对于图6中的示例,各种pmos晶体管(p沟道金属氧化物硅场效应晶体管)和nmos晶体管(n沟道金属氧化物硅场效应晶体管)的栅极、源极和漏极引线连接到相应信号,或者连接到其他pmos晶体管和nmos晶体管的源极引线或漏极引线。例如,锁存器508中的输入三态反相器具有四个晶体管:两个pmos晶体管和两个nmos晶体管。第一pmos晶体管具有连接到vdd的源极引线、连接到第二pmos晶体管的源极引线的漏极引线和连接到感测放大器504的sat节点的栅极引线。第二pmos晶体管具有连接到第一pmos晶体管的漏极引线的源极引线、连接到锁存器508中的中间节点614的漏极引线和连接到来自控件426的saenx信号的栅极引线。换句话说,锁存器508中的输入三态反相器的第一和第二pmos晶体管耦接在vdd与中间节点614之间。第一nmos晶体管具有连接到第二pmos晶体管的漏极引线的源极引线、连接到中间节点614的漏极引线和连接到saen信号(即,saenx信号的补码)的栅极引线。第二nmos晶体管具有连接到vss的源极引线、连接到第一pmos晶体管的源极引线的漏极引线和连接到感测放大器504的sat节点的栅极引线。换句话说,锁存器508中的输入三态反相器的第一和第二nmos晶体管耦接在中间节点614与vss之间。为了简洁起见,参考图6以获取读路径600中的nmos晶体管和pmos晶体管的剩余栅极、源极和漏极引线的图示。
58.对于图6中的示例,多个不同的信号连接到一个或多个晶体管的栅极引线。在这些信号中有感测放大器启用(saen)信号及其补码
‑‑
感测放大器启用补码(saenx)信号。saenx信号由控件426生成。saen信号经由反相器生成,诸如图6的右上角中所示的示例(或另一反相逻辑门)。同样,在这些信号中有感测放大器预充电(sapc)信号,其由控件426生成。另外,在这些信号中有禁用(dsbl)信号和禁用补码(dsblx)信号,它们要么由控件426生成,要么是固定的,诸如通过将所示晶体管的栅极引线分别连接到vdd和vss。
59.如图6所示,感测放大器504包括预充电(prechg)电路602和评估(eval)电路604。
在感测放大器504的预充电阶段期间,预充电电路602将感测放大器504的sat节点和sac节点预充电到近似vdd。在预充电阶段之后的评估阶段期间,控件426使感测放大器启用(saen)信号生效以激活连接到评估电路604中的页脚节点610的下拉晶体管。当被激活时,下拉晶体管启用感测放大器504以基于从读取多路复用器500供应给感测放大器504的位线(blt)信号线和位线补码(blc)信号线的值来评估来自sat节点和sac节点中的一者的放大器,从而降低电压。
60.预充电电路602由sapcx信号控制,所述sapcx信号由预充电(prechg)控制电路606基于sapc信号和saenx信号生成。在运行中,当sapc信号或saenx信号具有逻辑低值(例如,近似vss)时,sapcx具有逻辑高值(例如,近似vdd),并且禁用预充电电路602中的全部pmos栅极(由此禁用预充电电路602)。除了saenx信号被设置为逻辑高值从而经由其补码(即saen信号)禁用评估电路时,这始终会发生,并且sapc被设置为逻辑高值以在预充电阶段期间启用预充电电路602。当sapc信号在预充电阶段期间被设置为逻辑高值,并且saen信号在评估阶段之外被设置为逻辑低值时,sapcx信号被驱动为低,从而激活预充电电路602中的pmos门,从而激活预充电电路602。如上所述,当被激活时,预充电电路602将sat节点和sac节点预充电到近似vdd。通过以此方式运行,连接到评估电路604中的页脚节点610并且由saen控制的下拉晶体管在预充电开始前被禁用。这可以帮助避免形成通过预充电电路602和评估电路604的短路路径。另外,通过以此方式运行,避免了在sapcx与saen/saenx之间的潜在重叠期间,涉及预充电电路602对锁存器508中的存储元件进行竞争的功能竞争。
61.在一些实施方案中,预充电控制电路606包括图6中所示的nand逻辑门。然而,这不是必需的。一般来说,如上所述基于sapc和saenx生成sapcx的任何逻辑门和/或电路元件都可以用在所述实施方案中。
62.锁存器508包括输入三态反相器,其连接在感测放大器504的sat节点与锁存器508的中间节点614之间。启用输入三态反相器,因此基于saen/saenx信号的值将反相值传送到锁存器508的中间节点614。当saen信号被设置为逻辑高值(因此,感测放大器504处于评估阶段)时,saenx信号被设置为逻辑低值,且输入三态反相器处于活动状态,并将反相值从感测放大器504的sat节点传送到锁存器508的中间节点614。相反,当saen信号被设置为逻辑低值时,saenx信号被设置为逻辑高值,输入三态反相器处于停用状态,并且不会将值从感测放大器504的sat节点传送到锁存器508的中间节点614。通过如上所述运行,输入三态反相器阻止值从感测放大器504的sat节点传播到锁存器508的中间节点614,感测放大器504的评估阶段期间除外。应注意,通过使用saen信号和saenx信号控制输入三态反相器,所述实施方案避免了当sat节点和/或sac节点为控制时钟的低工作频率缓慢放电时发生的通过三态反相器的短路电流。如果使用缺乏这些控件的电路元件(如反相器)代替输入三态反相器,则可能会发生这些短路,并导致锁存器出现功能问题。
63.锁存器508还包括存储电路元件,其具有:(1)连接在中间节点614与锁存器节点612之间的锁存反相器;和(2)连接在锁存器节点612与中间节点614之间的锁存三态反相器。换句话说,存储电路元件的锁存反相器和锁存三态反相器形成背对背的反相器对,用于将数据值存储在锁存器508中(更一般地,存储在读路径600中)。在运行中,当saen被设置为逻辑高值且saenx被设置为逻辑低值,因此感测放大器504中的评估电路604被启用,并且输入三态反相器正在将值从sat节点传播到中间节点614时,锁存三态反相器被禁用。这防止
锁存三态反相器在中间节点614上的值方面与输入三态反相器竞争。相反,当saen被设置为逻辑低值且saenx被设置为逻辑高值,因此输入三态反相器被禁用并且没有将值驱动到中间节点614上时,锁存三态反相器被启用,并且与锁存反相器一起维持中间节点614上的值。锁存器508还包括连接在中间节点614与读取数据526输出之间的输出反相器。输出反相器将值从中间节点614驱动到读取数据526输出,并且因此驱动到外部实体。应注意,在一些实施方案中,输出反相器被另一类型的输出驱动器代替,诸如三态反相器,其具有用作控件、nand门等的输出启用及其补码。
64.读路径600另外包括负载均衡电路608。负载均衡电路608包括负载均衡三态反相器,其具有四个晶体管,即两个pmos晶体管和两个nmos晶体管。三态反相器的两个晶体管(示为外部pmos晶体管和nmos晶体管)的栅极引线连接到感测放大器504的sac节点,以提供sac节点上的电容负载,其近似地均衡锁存器508的输入三态反相器的sat节点上的电容负载。在图6中的示例中,三态反相器的另外两个晶体管(示为内部pmos晶体管和nmos晶体管)的栅极引线被连接到禁用信号和禁用补码信号,所述禁用信号和禁用补码信号是保持内部pmos晶体管和nmos晶体管处于关闭状态(即禁用、不导通等)的恒定信号。然而,在一些实施方案中,禁用信号和禁用补码信号被saen和saenx代替,这可以帮助负载均衡电路608向锁存器508中的输入三态反相器提供更相似的电容负载。
65.在多存储体存储器的读路径中共享锁存器
66.在一些实施方案中,在两个或更多个存储体中的sram单元的读路径中共享锁存器的电路元件中的至少一些电路元件。图7呈现了示出根据一些实施方案的sram单元的读路径中的共享锁存器的框图。应注意,尽管某些功能块和电路元件在图7中以特定布置示出,但为了清楚起见,简化了图7。在一些实施方案中,每个存储体包括存储器阵列和其他此类功能块以及电路元件,诸如图4至图6中所示的那些。一般来说,在所述实施方案中,锁存器可以在多个读路径中共享,但是在布置和功能上与锁存器508相似。
67.在图7中,存储体700和702中的每个存储体中的读路径的单独部分包括感测放大器和对应的负载均衡电路。划分存储体700和702的读路径中的锁存器,以便每个存储体包括其自身的单独锁存器输入三态反相器。每个存储体中的单独锁存器输入三态反相器连接到用于该存储体的启用信号,即,用于存储体700的saen0/saenx0和用于存储体702的saen1/saenx1。在存储体700和702之间共享用于锁存器的存储电路元件(即锁存反相器和锁存三态反相器)和用于锁存器的输出反相器。锁存器的这些部分在图7中示为共享锁存器704。锁存器的这些部分由存储体700和702选择性地使用,并且可以一次存储和输出用于存储体700和702中的一者的数据值。
68.在图7中,在这些元件的上方示出了用于存储体700和702中的每个存储体中的读路径以及共享锁存器704中的锁存器的共享部分的控制信号。如图7所示,用于每个存储体的控制信号包括感测放大器预充电(sapcx0/1)和感测放大器启用(saen0/1),其生成方式与图4至图6中的那些信号的生成方式类似。用于锁存器的共享部分的控制信号基于用于存储体的控制信号生成。更具体地,用于锁存器的共享部分的slen信号被生成为saenx0/1信号的逻辑(例如,nand)组合,并且用于锁存器的共享部分的slenx信号被生成为saen0/1信号的逻辑(例如,nor)组合。在一些实施方案中,禁用(d)信号和禁用补码(dx)信号由用于每个存储体的相应感测放大器启用(saen0/1)信号和感测放大器启用补码(saenx0/1)信号代
替。
69.用于从存储器阵列中的单元读取数据的过程
70.在所述实施方案中,使用读路径(例如,读路径600)上的各个电路元件从存储器阵列(例如,存储器阵列402)中的sram单元读取数据。图8呈现了示出根据一些实施方案的用于执行sram存储器的读取的过程的流程图。应注意,图8示出的操作被呈现为由一些实施方案执行的操作的一般示例。由其他实施方案执行的操作包括不同的操作、以不同的次序执行的操作和/或由不同的实体或功能块执行的操作。
71.对于图8中的操作,假设已经从存储器阵列中的一列单元中的单元(例如,单元404)中读取了数据。换句话说,连接到单元的位线和位线补码已经被预充电(例如,到近似vdd),因此感测放大器不再处于预充电阶段,行解码器(例如,行解码器422)已经使期望的字线生效以启用单元的存取晶体管,由此使单元中的存储晶体管能够将单元中存储的数据位及其逻辑补码的值分别驱动到对应的位线和位线补码上。另外,列解码器(例如,列解码器424)已经启用对应的读取多路复用器(例如,读取多路复用器500)以将值从位线和位线补码传送到感测放大器(例如,感测放大器504)。
72.对于图8中的操作,仅读取存储器阵列的单个单元。然而,在一些实施方案中,在给定读取操作期间经由单独读路径同时并行读取多个单元(例如,32个、64个或另一数量)。用于读取每个单独单元的操作与图8中描述的那些操作类似。
73.当预充电电路(例如,预充电电路602)对感测放大器的sat节点和sac节点进行预充电时,图8中的操作开始(步骤802)。对于该操作,基于sapc信号和saenx信号的值的预充电控制电路(例如,预充电控制电路606)将sapcx信号驱动到逻辑低电平,以启用预充电电路中的pmos晶体管以对感测放大器中的sat节点和sac节点进行预充电。
74.然后,感测放大器从读取多路复用器接收sat节点和sac节点上的位线值和位线补码值(步骤802),并基于位线值和位线补码值驱动sat节点和sac节点上的信号(步骤804)。在该操作期间,基于由位线值和/或位线补码值(即电压)引起的sat节点和sac节点的电压差,感测放大器驱动/输出sat节点和sac节点上的信号,即“感测”差异,并相应地输出sat节点和sac节点上的值。感测放大器由saen信号启用,所述saen信号是saenx信号的逻辑补码,以便sapcx信号转换为高逻辑电平,以在感测放大器启用时禁用预充电,由此避免感测放大器中的潜在短路路径。
75.连接到感测放大器的sat节点的锁存器(例如,锁存器508)存储来自sat节点的值(步骤806)。对于该操作,锁存器的输入三态反相器由saen信号启用,因此输入三态反相器将值的反转版本从sat节点驱动到锁存器的中间节点(例如,中间节点614)。所述值从锁存器的中间节点(经由输出驱动器)传送到输出作为读取数据(步骤808)。应注意,当感测放大器启用时(即saen处于高逻辑电平时),锁存器的存储电路元件中的锁存三态反相器被禁用,但当saen转换到低逻辑电平时,锁存三态反相器变为启用,由此使锁存器能够存储来自sat节点的值。
76.在一些实施方案中,至少一个电子装置(例如,电子装置300)使用存储在非暂时性计算机可读存储介质上的代码和/或数据来执行本文描述的操作中的一些或全部。更具体地,当执行所描述的操作时,至少一个电子装置从计算机可读存储介质读取代码和/或数据并且执行该代码和/或使用该数据。计算机可读存储介质可以是存储代码和/或数据以供电
子装置使用的任何装置、介质或它们的组合。例如,计算机可读存储介质可包括但不限于易失性和/或非易失性存储器,包括快闪存储器、随机存取存储器(例如,edram、ram、sram、dram、ddr4 sdram等)、非易失性ram(例如,相变存储器、铁电随机存取存储器、自旋转移矩随机存取存储器、磁阻随机存取存储器等)、只读存储器(rom)和/或磁性或光学存储介质(例如,磁盘驱动器、磁带、cd、dvd等)。
77.在一些实施方案中,一个或多个硬件模块执行本文描述的操作。例如,硬件模块可包括但不限于一个或多个处理器/核心/中央处理单元(cpu)、专用集成电路(asic)芯片、神经网络处理器或加速器、现场可编程门阵列(fpga)、压缩和/或编码子系统、计算单元、嵌入式处理器、图形处理器(gpu)/图形核心、加速处理单元(apu)、功能块、控制器、加速器和/或其他可编程逻辑装置。当激活这种硬件模块中的电路(例如,集成电路元件、分立电路元件等)时,电路执行操作中的一些或全部。在一些实施方案中,硬件模块包括通用电路诸如执行流水线、计算或处理单元等,其在执行指令(程序代码、固件等)时执行操作。在一些实施方案中,硬件模块包括被配置为执行操作的特定用途的或专用的电路,可能包括在不执行指令的情况下执行操作中的一些或全部操作的电路。
78.在一些实施方案中,表示本文描述的功能块和电路元件(例如,电子装置300或其某部分)中的一些或全部的数据结构存储在非暂时性计算机可读存储介质上,所述非暂时性计算机可读存储介质包括可由电子装置读取并直接或间接地用于制造包括功能块和电路元件的硬件的数据库或其他数据结构。例如,数据结构可以是用诸如verilog或vhdl的高级设计语言(hdl)对硬件功能的行为级描述或寄存器传输级(rtl)描述。所述描述可以由综合工具读取,该综合工具可根据表示包括上述功能块和电路元件的硬件功能的综合库来综合所述描述以生成包括晶体管/电路元件列表的网表。然后,可以放置网表并路由所述网表以生成描述要应用于掩模的几何形状的数据集。然后,可以在各种半导体制造步骤中使用掩模以产生与上述功能块和电路元件相对应的一个或多个半导体电路(例如,集成电路)。可替代地,计算机可存取的存储介质上的数据库可以是网表(具有或没有综合库)或数据集(根据需要),或图形数据系统(gds)ii数据。
79.在本说明书中,变量或未指定的值(即,在没有值的特定实例的情况下对值的一般描述)由字母(诸如n、m和x)表示。如本文所使用,尽管在本说明书中的不同位置可能使用类似的字母,但是在每种情况下的变量和未指定的值不一定相同,即,一般的变量和未指定的值中的一些或全部可能预期有不同的可变量和值。换句话说,在本说明书中,用于表示变量和未指定的值的n和任何其他字母彼此不一定相关。
80.如本文所使用的表达“等”旨在呈现一者和/或案例,即,列表中与等相关联的要素中的“至少一者”的等同物。例如,在语句“电子装置执行第一操作、第二操作等”中,电子装置执行第一操作、第二操作和其他操作中的至少一者。此外,与等等相关联的列表中的元素仅仅是示例集中的示例-且示例中的至少一些可能不会出现在一些实施方案中。
81.仅出于说明和描述的目的呈现了对实施方案的前述描述。所述先前描述不意图是详尽的或将实施方案限于公开的形式。相应地,许多修改和变化对本领域技术人员来说将显而易见。另外地,以上公开内容不旨在限制实施方案。实施方案的范围由所附权利要求限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献