掌桥专利:专业的专利平台
掌桥专利
首页

具有部分组刷新的存储器

文献发布时间:2023-06-19 11:05:16


具有部分组刷新的存储器

技术领域

本公开涉及存储器系统、装置以及相关联的方法。具体地,本公开涉及具有部分存储器组刷新的存储器装置。

背景技术

存储器装置广泛地用于存储与如计算机、无线通信装置、相机、数字显示器等各种电子装置有关的信息。存储器装置通常以计算机或其它电子装置中的内部半导体集成电路和/或外部可移动装置的形式提供。存在许多不同类型的存储器,包含易失性存储器和非易失性存储器。包含静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)和同步动态随机存取存储器(SDRAM)等的易失性存储器可能需要施加电力的电源以维护其数据。相比之下,非易失性存储器即使在没有外部供电的情况下也可以保留其存储的数据。非易失性存储器可用于多种技术,包含闪速存储器(例如,与非(NAND)和或非(NOR))、相变存储器(PCM)、铁电随机存取存储器(FeRAM)、电阻式随机存取存储器(RRAM)和磁性随机存取存储器(MRAM)等。改进存储器装置通常可以包含增加存储器单元密度、增加读取/写入速度或以其它方式降低操作等待时间、增加可靠性、增加数据保留、降低功耗或降低制造成本以及其它度量。

发明内容

本公开的一方面提供了一种存储器装置,其中所述存储器装置包括:存储器阵列,所述存储器阵列包含具有布置在存储器行中的多个存储器单元的存储器组;以及电路系统,所述电路系统被配置成在所述存储器组的刷新操作期间禁止所述存储器组的至少一个存储器行接收刷新命令,使得所述至少一个存储器行的存储器单元不被刷新。

本公开的另一方面提供了一种方法,其中所述方法包括:至少部分地基于对存储器阵列中的存储器组的写入操作来启用所述存储器组的至少一个存储器行;接收用于对所述存储器组进行刷新操作的命令;以及响应于所述刷新命令,刷新所述至少一个存储器行并且避免刷新所述存储器组的一或多个其它存储器行。

本公开的另一方面提供了一种存储器系统,其中所述存储器系统包括:存储器控制器;存储器装置,所述存储器装置耦接到所述存储器控制器,其中所述存储器装置包含具有存储器组的存储器阵列,其中所述存储器组包含布置在多个存储器行中的多个存储器单元,并且其中所述存储器控制器被配置成跟踪包含所利用的存储器单元的存储器行;以及电路系统,所述电路系统被配置成在所述存储器组的刷新操作期间禁止所述存储器组的至少一个存储器行接收刷新命令,使得所述至少一个存储器行的存储器单元不被刷新。

附图说明

参考以下附图,可以更好地理解本公开的许多方面。附图中的组件不一定是按比例的。而是将重点放在清楚地展示本公开的原理。不应将附图用于将本公开限制于所描绘的具体实施例,而仅是用于解释和理解。

图1是示意性地展示了根据本发明技术的各种实施例配置的存储器系统的框图。

图2是示意性地展示了图1所展示的存储器装置的存储器阵列中的存储器组区域的框图。

图3A和3B是展示了根据本发明技术的各种实施例配置的存储器装置和/或存储器系统的各种例程的流程图。

图4是根据本发明技术的各种实施例配置的包含存储器装置的系统的示意图。

具体实施方式

如DRAM等存储器装置可以利用刷新操作来防止数据因例如电荷泄漏或其它可能随时间而使数据降级的影响而损坏。刷新操作会消耗大量功率,这对功率限制很重要的系统(如移动装置等)提出了挑战。常规地,刷新操作以循环方式指向存储器装置的每个部分,使得存储器装置的每个部分在某一预定时间内(例如,以规范驱动的刷新速率)被刷新。然而,由于存储器装置通常未充分填充有有效数据,因此这意指不存在数据降级风险(例如,由于不存在任何有效数据)的存储器部分不必要地进行了耗电的刷新操作,从而构成了功率浪费。

因此,如下文更详细地讨论的,本文所公开的技术涉及具有对存储器阵列中的存储器区域的部分存储器组刷新控制的存储器系统和装置,以及相关联的方法。在一些实施例中,本文所公开的存储器系统和装置被配置成跟踪存储器组的所利用的存储器行(例如,用非陈旧数据编程和/或存储非陈旧数据的存储器行)。在这些和其它实施例中,存储器系统和装置被配置成仅刷新存储器组中的所利用的存储器行。例如,存储器系统和装置可以在刷新操作期间减少存储器行压缩,以减少在刷新操作的每个刷新泵送期间激活的行数。作为另一个实例,存储器系统和装置(例如,每个存储器组的禁止电路系统)可以掩蔽未利用的存储器行以使其不接收刷新操作。另外或可替代地,存储器系统和装置可以减少发出的刷新命令的数量和/或可以减少在刷新操作期间激活存储器行的刷新泵送的数量。

因此,与常规的刷新方案相比,本文所公开的技术提供更大的粒度和灵活性。例如,部分阵列自刷新(PASR)是常规的刷新操作,其中不跨整个存储器阵列执行刷新操作。相反,仅刷新存储器阵列的需要数据保留的具体存储器组。然而,与本发明技术的实施例相比,PASR不提供刷新存储器组内的具体存储器行(例如,存储器行的单独选择的子阵列,等等)的粒度或灵活性。此外,与本发明技术的实施例相比,PASR不合并逻辑上或物理上邻近的存储器行中的有效的非陈旧数据,PASR也不跟踪存储器组内的哪些存储器行含有有效的非陈旧数据。因此,PASR刷新操作构成了功率浪费,因为刷新了在刷新的存储器组内的未使用的存储器行或存储陈旧数据的存储器行。另外,PASR是自刷新方案。也就是说,PASR不适用于以循环方式刷新整个存储器阵列的自动或标准刷新方案。相比之下,本发明技术的实施例适用于自刷新和自动/标准刷新方案。如此,与包含PASR的常规刷新方案相比,本发明技术可以减少功耗(例如,通过不刷新含有陈旧数据的存储器行)和消耗的处理时间或其它资源量(例如,通过减少发出的刷新命令的数量)。

本领域的技术人员应理解的是,本发明技术可以具有另外的实施例,并且可以在没有下文参考图1-4所描述的实施例的细节中的若干细节的情况下实施本发明技术。在下面展示的实施例中,主要在结合了DRAM存储媒体的装置的上下文中描述存储器装置和系统。然而,根据本发明技术的其它实施例配置的存储器装置可以包含结合了其它类型的存储媒体的其它类型的存储器装置和系统,所述存储媒体包含PCM、SRAM、FRAM、RRAM、MRAM、只读存储器(ROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEROM)、铁电存储媒体、磁阻存储媒体和其它存储媒体,包含非易失性闪速(例如,与非和/或或非)存储媒体。

如本文所使用的,术语“刷新”是指可以对根据本发明技术的各种实施例配置的存储器装置的一或多个存储器单元执行的各种维护操作。在一些实施例中,术语“刷新”可以是指对一或多个存储器单元执行以维护其数据的维护操作。例如,在DRAM和其它存储器装置的上下文中,术语“刷新”可以是指从一或多个存储器单元读取数据并且将数据重写入一或多个存储器单元以增加存储在一或多个存储器单元上的电荷以改善电荷泄漏并且防止数据丢失。在这些和其它实施例中,术语“刷新”可以是指从一或多个存储器单元读取数据并且将数据以反转或其它数据状态(例如,从高到低或从低到高)重写到一或多个存储器单元,以改善滞后移位、材料去极化、压印和/或磨损效应等。在这些和仍其它实施例中,术语“刷新”可以是指其它维护操作,如从一或多个存储器单元读取数据并且将数据重写到另一个/一或多个其它存储器位置处的一或多个存储器单元。

存储器装置的存储器阵列中的存储器单元可以被周期性地刷新以防止数据丢失。例如,易失性存储器装置(如DRAM装置)可以(例如,通过恢复在存储器单元上编程的电荷电平)周期性地刷新存储器单元,以防止由于电荷泄漏导致的数据丢失。如上文所讨论的,然而,刷新存储器单元经常消耗存储器装置的大量的输入/输出(IO)带宽和功率,这可以随着存储器装置中的存储器单元的数量和/或存储器单元的刷新速率的增加而进一步增加。因此,在存储器装置的存储器阵列中少于所有存储器单元被充分利用(例如,用非陈旧数据编程和/或存储非陈旧数据)的情况下,刷新存储器阵列中的存储器单元中的每个存储器单元以刷新所利用的存储器单元会导致刷新存储在未利用的存储器单元上的垃圾数据并且浪费功率。

为了解决这些问题,本发明技术的若干个实施例涉及存储器装置、包含存储器装置的系统以及操作存储器装置的方法,其中存储器装置的存储器阵列中的存储器单元(例如,存储器组的存储器行)根据编程序列进行编程以保持数据合并。在一些实施例中,存储器装置和/或可操作地连接到存储器装置的主机装置的存储器控制器可以跟踪哪些存储器区域(例如,存储器行、存储器列、存储器组子阵列、存储器组、逻辑存储器排或管芯等)包含所利用的存储器单元。在这些和其它实施例中,刷新操作仅刷新含有所利用的存储器单元的存储器区域,从而相对于常规刷新操作节省了功率,在常规刷新操作期间,所有存储器区域和/或存储器组的所有存储器区域都被刷新。以此方式,根据本发明技术的各种实施例配置的存储器装置(以及相关联的系统和方法)可以仅刷新当前利用的存储器区域,从而与常规刷新方案相比节省了功率和IO带宽。

图1是示意性地展示了根据本发明技术的实施例配置的存储器系统190的框图。存储器系统190可以包含存储器装置100,所述存储器装置可以连接到多个能够将存储器用于临时或永久地存储信息的电子装置中的任何一个电子装置或其组件。例如,存储器装置100可以可操作地连接到主机装置108和/或存储器控制器101。可操作地连接到存储器装置100的主机装置108可以是计算装置,如台式计算机或便携式计算机、服务器、手持装置(例如,移动电话、平板计算机、数字阅读器、数字媒体播放器)或其某个组件(例如,中央处理单元、协处理器、专用存储器控制器等)。主机装置108可以是联网装置(例如,交换机、路由器等)或数字图像、音频和/或视频的记录器、车辆、电器、玩具或多种其它产品中的任何一种产品。在一个实施例中,主机装置108可以直接连接到存储器装置100,但是在其它实施例中,主机装置108可以间接连接到存储器装置100(例如,通过联网连接或通过中间装置,如通过存储器控制器101)。

存储器装置100可以采用多个外部端子,所述多个外部端子包含耦接到命令总线和地址总线以分别接收命令信号CMD和地址信号ADDR的命令端子和地址端子。存储器装置可以进一步包含用于接收芯片选择信号CS的芯片选择端子、用于接收时钟信号CK和CKF的时钟端子、用于接收数据时钟信号WCK和WCKF的数据时钟端子、数据端子DQ、RDQS、DBI和DMI以及电源端子VDD、VSS和VDDQ。

可以向存储器装置100的电源端子供应电源电位VDD和VSS。这些电源电位VDD和VSS可以供应给内部电压发生器电路170。内部电压发生器电路170可以基于电源电位VDD和VSS生成各种内部电位VPP、VOD、VARY、VPERI等。内部电位VPP可以在行解码器140中使用,内部电位VOD和VARY可以在包含在存储器装置100的存储器阵列150中的读出放大器中使用,并且内部电位VPERI可以在许多其它电路块中使用。

还可以向电源端子供应电源电位VDDQ。电源电位VDDQ可以与电源电位VSS一起供应给输入/输出(IO)电路160。在本发明技术的实施例中,电源电位VDDQ的电位可以与电源电位VDD的电位相同。在本发明技术的另一个实施例中,电源电位VDDQ的电位可以与电源电位VDD的电位不同。然而,可以将专用电源电位VDDQ用于IO电路160,使得由IO电路160生成的电源噪声不会传播到其它电路块。

可以向时钟端子和数据时钟端子供应外部时钟信号和互补外部时钟信号。外部时钟信号CK、CKF、WCK、WCKF可以供应给时钟输入电路120。CK信号和CKF信号可以是互补的,并且WCK信号和WCKF信号也可以是互补的。互补时钟信号可以具有相反的时钟电平并且在同一时间在相反的时钟电平之间转变。例如,当时钟信号处于低时钟电平时,互补时钟信号处于高电平,并且当时钟信号处于高时钟电平时,互补时钟信号处于低时钟电平。此外,当时钟信号从低时钟电平转变为高时钟电平时,互补时钟信号从高时钟电平转变为低时钟电平,并且当时钟信号从高时钟电平转变为低时钟电平时,互补时钟信号从低时钟电平转变为高时钟电平。

包含在时钟输入电路120中的输入缓冲器可以接收外部时钟信号。例如,当由来自命令解码器115的CKE信号启用时,输入缓冲器可以接收CK信号和CKF信号以及WCK信号和WCKF信号。时钟输入电路120可以接收外部时钟信号以生成内部时钟信号ICLK。内部时钟信号ICLK可以供应给内部时钟电路130。内部时钟电路130可以基于接收到的内部时钟信号ICLK和来自命令解码器115的时钟启用信号CKE提供各种相位和频率控制的内部时钟信号。例如,内部时钟电路130可以包含时钟路径(图1中未示出),所述时钟路径接收内部时钟信号ICLK并且向命令解码器115提供各种时钟信号(未示出)。内部时钟电路130可以进一步提供输入/输出(IO)时钟信号。IO时钟信号可以供应给IO电路160并且可以用作用于确定读取数据的输出定时和写入数据的输入定时的定时信号。IO时钟信号可以以多个时钟频率提供,使得数据可以以不同的数据速率从存储器装置100输出和输入到所述存储器装置中。当期望高存储器速度时,较高的时钟频率可能是令人期望的。当期望较低功耗时,较低的时钟频率可能是令人期望的。内部时钟信号ICLK还可以供应给定时发生器135,并且因此可以生成可以由命令解码器115、列解码器145和/或存储器装置100的其它组件使用的各种内部时钟信号。

存储器装置100可以包含存储器单元的阵列,如存储器阵列150。存储器阵列150的存储器单元可以布置在多个存储器区域中,并且每个存储器区域可以包含多条字线(WL)、多条位线(BL)以及布置在字线与位线的交叉点处的多个存储器单元。在一些实施例中,存储器区域可以是一或多个存储器组或存储器单元的另一种布置(例如,半存储器组、存储器组中的子阵列等)。在这些和其它实施例中,存储器阵列150的存储器区域可以被布置成一或多个群组(例如,一或多个由存储器组构成的群组、一或多个逻辑存储器排或管芯等)。存储器阵列150中的存储器单元可以包含多种不同存储器媒体类型中的任一种存储器媒体类型,包含电容式、磁阻式、铁电、相变等。对字线WL的选择可以由行解码器140执行,并且对位线BL的选择可以由列解码器145执行。可以为对应的位线BL提供读出放大器(SAMP)并且可以将其连接到至少一个相应的本地I/O线对(LIOT/B),所述本地I/O线对进而可以通过可以充当开关的传输门(TG)耦接到至少一个相应的主I/O线对(MIOT/B)。存储器阵列150还可以包含板线和用于管理所述板线的操作的对应电路系统。

可以从存储器装置100外部向命令端子和地址端子供应地址信号和组地址信号。向地址端子供应的地址信号和组地址信号可以通过命令/地址输入电路105传输到地址解码器110。地址解码器110可以接收地址信号,并且向行解码器140供应经解码行地址信号(XADD)并且向列解码器145供应经解码列地址信号(YADD)。地址解码器110还可以提取组地址信号(BADD),并且将其供应给行解码器140和列解码器145两者。

可以(例如,从存储器控制器101和/或主机装置108)向命令端子和地址端子供应命令信号CMD、地址信号ADDR和芯片选择信号CS。命令信号可以表示各种存储器命令(例如,包含存取命令,所述存取命令可以包含读取命令和写入命令)。选择信号CS可以用于选择存储器装置100以对提供给命令端子和地址端子的命令和地址进行响应。当向存储器装置100提供激活CS信号时,可以解码命令和地址并且可以执行存储器操作。命令信号CMD可以通过命令/地址输入电路105以内部命令信号ICMD的形式提供给命令解码器115。命令解码器115可以包含用于对内部命令信号ICMD进行解码以生成用于执行存储器操作的各种内部信号和命令的电路,所述内部命令信号例如用于选择字线的行命令信号和用于选择位线的列命令信号。内部命令信号还可以包含输出激活命令和输入激活命令,如到命令解码器115的计时命令CMDCK(未示出)。命令解码器115可以进一步包含一或多个寄存器118,所述一或多个寄存器用于跟踪各种计数或值(例如,由存储器装置100接收到的刷新命令或由存储器装置100执行的自刷新操作的计数;针对刷新操作启用的存储器区域;最后被编程和/或下一个将要被编程的存储器单元、存储器行、存储器列、存储器组、逻辑存储器排或管芯和/或其它存储器区域;等等)。

当发出读取命令并且随着读取命令及时供应列地址时,可以从存储器阵列150中的由这些行地址和列地址指定的存储器单元读取读取数据。读取命令可以由命令解码器115接收,所述命令解码器可以向IO电路160提供内部命令,使得读取数据可以根据RDQS时钟信号通过读取/写入(RW)放大器155和IO电路160从数据端子DQ、RDQS、DBI和DMI输出。读取数据可以在由可以编程在存储器装置100中,例如在模式寄存器(图1中未示出)中,的读取等待时间信息RL所限定的时间提供。读取等待时间信息RL可以根据CK时钟信号的时钟周期来限定。例如,当提供了相关联读取数据时,读取等待时间信息RL可以是CK信号的在由存储器装置100接收到读取命令之后的多个时钟周期。

当发出写入命令并且随着所述命令及时供应列地址时,可以根据WCK和WCKF时钟信号将写入数据供应给数据端子DQ、DBI和DMI。写入命令可以由命令解码器115接收,所述命令解码器可以向IO电路160提供内部命令,使得写入数据可以由IO电路160中的数据接收器接收,并且通过IO电路160以及RW放大器155供应到存储器阵列150。写入数据可以写入在由行地址和列地址指定的存储器单元中。写入数据可以在由写入等待时间WL信息限定的时间提供给数据端子。写入等待时间WL信息可以编程在存储器装置100中,例如在模式寄存器(图1中未示出)中。写入等待时间WL信息可以根据CK时钟信号的时钟周期来限定。例如,当接收到相关联写入数据时,写入等待时间信息WL可以是CK信号的在由存储器装置100接收到写入命令之后的多个时钟周期。

如下文更详细地描述的,当发出写入命令时,随着写入命令供应的列地址和激活的行可以对应于编程序列,所述编程序列限定了存储器装置100被配置成向其写入新数据的存储器区域和/或位置(例如,存储器组中的存储器行)的序列。以此方式,存储在存储器装置100上的数据在被写入存储器阵列150的存储器单元时被合并在存储器装置100上并且在每个存储器区域内。例如,存储器系统190可以从第一存储器行中的存储器单元开始将数据依次写入存储器阵列150的存储器组。在利用第一存储器行中的存储器单元(例如,阈值数量的所述存储器单元或所述存储器单元中的任何一个存储器单元)之后,存储器系统190可以继续将数据写入编程序列中的下一个存储器行(例如,存储器组中的下一个存储器行、与上一个存储器行相同的或下一个刷新泵送中的下一个存储器行等)。在一些实施例中,编程序列可以对应于在刷新操作期间刷新存储器区域(例如,存储器组)的存储器行的顺序。

当数据被写入到存储器阵列150的存储器单元时,存储器系统190可以跟踪最后被编程或下一个将要被编程的存储器区域和/或位置(例如,最后被编程或下一个将要被编程的存储器单元、存储器行、存储器列、存储器组、逻辑存储器排或管芯等),使得将与后续写入命令相对应的数据写入到下一个将要被编程的存储器区域和/或位置,并且合并存储在存储器阵列150上的数据。在一些实施例中,存储器系统190可以使用主机装置108、存储器控制器101和/或存储器装置100上的如一或多个计数器(例如,CBR计数器)、寄存器(例如,寄存器118)、缓冲器、锁存器、嵌入式存储器等对应的电路系统来跟踪最后被编程和/或下一个将要被编程的存储器区域和/或位置。在这些和其它实施例中,在掉电(例如,存储器装置100断电)的情况下,可以重置对应的电路系统,使得存储器系统190被配置成当存储器系统190随后上电时,从编程序列中的第一存储器区域和/或位置开始将数据写入存储器单元。在一些实施例中,编程序列可以存储在主机装置108上、存储器控制器101上和/或存储器装置100上。在这些和其它实施例中,编程序列可以被加载到主机装置108、存储器控制器101和/或存储器装置100中(例如,当存储器系统190上电时)。

如本文所描述的,可以刷新或维护存储器阵列150以防止由于电荷泄漏或压印效应而导致的数据丢失。如本文所描述的,刷新操作可以由存储器系统190(例如,主机装置108、存储器控制器101和/或存储器装置100)发起,并且可以包含访问一或多行(例如,WL)并且将所访问的行的单元放电到对应的SAMP。当行被打开时(例如,当所访问的WL通电时),SAMP可以将由经过放电的单元产生的电压与参考进行比较。然后,SAMP可以将逻辑值写回(例如,对单元充电)给定逻辑状态的标称值。在一些情况下,这种写回过程可以增加单元的电荷,以改善上文所讨论的放电问题。在其它情况下,写回过程可以反转单元的数据状态(例如,从高到低或从低到高),以改善滞后移位、材料去极化等。还可以采用其它刷新方案或方法。

在一种方法中,存储器装置100可以被配置成同时刷新存储器阵列150的每个存储器组中的同一行存储器单元。在另一种方法中,存储器装置100可以被配置成顺序地刷新存储器阵列150的每个存储器组中的同一行存储器单元。在仍另一种方法中,存储器装置100可以进一步包含被配置成跟踪行(例如,字线)地址的电路系统(例如,一或多个寄存器、锁存器、嵌入式存储器、计数器等),每个行地址对应于存储器阵列150中的存储器组之一。在此方法中,在刷新存储器组之一中的另一个行之前,存储器装置100不限于刷新存储器阵列150的每个存储器组中的同一行。

不管刷新方法如何,存储器装置100可以被配置成在被称为tREF的给定的刷新速率或时间窗口(例如,32毫秒、28毫秒、25毫秒、23毫秒、21毫秒、18毫秒、16毫秒、8毫秒等)内刷新存储器阵列150中的存储器单元。在这些实施例中,存储器系统190可以被配置成根据指定的最小节奏(cadence)tREFI将刷新命令供应给存储器装置100。例如,存储器系统190可以被配置成至少每7.8微秒向存储器装置100供应一或多个刷新命令,使得在32毫秒的时间窗口内向存储器装置100供应大约最少的4000个刷新命令。

响应于每个刷新命令,存储器装置100可以通过将存储器行地址压缩到单个刷新泵送中来并行地激活多于一个存储器行。另外或可替代地,存储器装置100可以响应于从主机装置或存储器控制器接收到的每个刷新命令而触发多于一个刷新泵送。在一个实施例中,CBR计数器通过存储器阵列150和/或存储器阵列150的存储器组中的存储器行的地址而增加计数、压缩和/或泵送所述地址。

如上文所解释的,刷新存储器阵列150中的存储器单元可以消耗大量的IO带宽和功率,尤其是随着存储器单元的数量和/或刷新速率的增加和/或指定的最小节奏tREFI的减小。另外,不太可能在任何给定时间存储器阵列150和/或存储器组中的每个存储器单元都被利用(例如,用非陈旧数据编程和/或存储非陈旧数据)。因此,在每个刷新操作期间(如在常规刷新操作期间执行的)刷新存储器阵列150和/或存储器组中的每个存储器单元会导致刷新未被利用和/或含有垃圾数据的存储器单元,这构成了IO带宽和/或功率的浪费。

图2是示意性地展示了存储器阵列150中的存储器组群组251的图示。如图所示,存储器组群组251包含四个存储器组255-258,每个存储器组具有多个存储器行(例如,字线)WL0-WL95和多个存储器列(例如,位线)BL0-BL15。存储器组255-258中的每个存储器组分别在相应的存储器行WL0-WL95和存储器列BL0-BL15的交叉点处进一步包含存储器单元265-268。

图2所展示的存储器组群组251的存储器组255-258进一步包含禁止电路系统275-278,所述禁止电路系统各自可操作地连接到相应的存储器组255-258。尽管组群组251中的每个存储器组255-258被展示为具有禁止电路系统,但是在其它实施例中的存储器组群组可以包含定位于存储器系统190上的其它位置处(如存储器装置100上的其它位置处,例如,存储器阵列150的内部或外部,存储器阵列150的除了存储器组255-258之外的或代替其的一或多个存储器组上和/或跨所述一或多个存储器组分布)、存储器控制器101上和/或主机装置108上的禁止电路系统。在一些实施例中,存储器系统190可以包含由两个或两个以上存储器组和/或存储器组群组共享的禁止电路系统。例如,存储器组群组可以包含在存储器组群组的所有存储器组或存储器组群组的存储器组的子集之间共享的禁止电路系统。禁止电路系统275-278可以包含各种硬件和/或软件组件,如锁存器、寄存器、计数器、控制门和/或组合逻辑(例如,用于跟踪所利用的存储器单元)。

在一些实施例中,禁止电路系统(例如,禁止电路系统275)可以由存储器系统190使用以启用和/或禁止(例如,默认情况下或直到存储器组255和/或存储器行注册激活)存储器组(例如,存储器组255)的一或多个存储器行接收刷新命令。例如,禁止电路系统(例如,存储器组255的禁止电路系统275)可以通过在存储器装置100的刷新操作期间掩蔽存储器组255的未利用的存储器行来禁止存储器组255的存储器行被刷新。在这些实施例中,禁止电路系统275可以掩蔽单独的存储器行(例如,通过掩蔽一或多个存储器行的低阶行地址),和/或禁止电路系统275可以掩蔽由存储器行构成的群组(例如,通过掩蔽高阶行地址以掩蔽存储器组和/或存储器组群组内的存储器行的子阵列)。当禁用存储器行时,禁止电路系统275可以响应于从存储器系统190接收到刷新命令而阻止存储器组255刷新存储器行的存储器单元。以此方式,节省了以其它方式将由存储器装置100消耗以刷新未利用的存储器行和/或存储器单元的功率。

在这些和其它实施例中,禁止电路系统275可以通过减少行压缩和/或通过减少响应于每个刷新命令而触发的刷新泵送的数量来禁止存储器组255的存储器行被刷新。作为具体实例,考虑具有256,000个存储器行的存储器组。为了使用常规刷新方法维持32毫秒的刷新速率,必须每7.8微秒发出刷新命令,并且每次刷新操作必须激活和刷新存储器组的64个存储器行。为了在常规方法下刷新64个存储器行,存储器装置通过压缩行地址项来并行激活和刷新16个存储器行而触发四个刷新泵送。例如,存储器行地址位17:14被压缩,使得在触发的泵送期间针对这些地址位的每种状态(例如,“0”和“1”)激活和刷新存储器行。因此,在此实例中,响应于存储器行地址位13和12的每种状态改变而触发刷新泵送(例如,当RA[13:12]=00时,第一泵送被触发;当RA[13:12]=01时,第二泵送被触发;当RA[13:12]=10时,第三泵送被触发;并且当RA[13:12]=11时,第四泵送被触发)。

当利用少于存储器组的所有256,000个存储器行时,刷新未利用的存储器行构成了功率的浪费。因此,根据本发明技术的实施例配置的存储器装置100(例如,存储器组或存储器组群组的禁止电路系统)可以减少行压缩以减少在刷新操作的每个刷新泵送期间激活的存储器行的数量。使用上文的实例,存储器装置可以将行压缩减少到行地址位17:15,而不是行地址位17:14,从而将每个刷新泵送并行激活和刷新的存储器行的数量从16个存储器行减少到8个存储器行。进一步减少行压缩对应于进一步减少每个刷新泵送并行激活和刷新的存储器行的数量(例如,进一步减少行压缩到行地址位17:16进一步将每个刷新泵送并行激活和刷新的存储器行的数量减少到4个存储器行)。

根据本发明技术的实施例配置的存储器装置100(例如,存储器组或存储器组群组的禁止电路系统)可以另外或可替代地减少每个刷新命令所触发的刷新泵送的数量。例如,代替响应于存储器行地址位13和12的每种状态改变而触发刷新泵送,本发明技术的存储器装置100可以仅响应于存储器行地址位13(或另一个行地址位)的每种状态改变而触发刷新泵送。在此实例中,存储器装置100将响应于存储器行地址位13的第一状态改变(例如,从状态“0”到状态“1”的改变)而触发第一刷新泵送,并且响应于存储器行地址位13的第二状态改变(例如,从状态“1”到状态“0”的改变)而触发第二刷新泵送。在这些和其它实施例中,存储器装置100可以响应于其它事件(如在一个方向上而不是在另一个方向上的存储器行地址位的状态改变)而触发刷新泵送。作为实例,存储器装置100可以(i)在存储器行地址位13从状态“0”改变为状态“1”时触发刷新泵送,并且(ii)在存储器行地址位13从状态“1”改变为状态“0”时不触发刷新泵送。以此方式,存储器装置100可以每个刷新命令实施奇数数量的刷新泵送。

在这些和仍其它实施例中,存储器装置100可以在刷新期间维持相同的行压缩,同时减少刷新存储器阵列150(例如,每个存储器组、存储器组群组等的存储器阵列)的所利用的存储器行所需的刷新命令的数量。例如,存储器装置100可以增加指定的最小刷新节奏tREFI(例如,从而发出更少的刷新命令),同时仍满足存储器阵列150的所利用的存储器行的给定刷新速率或时间窗口tREFI。返回到上文的实例,如果仅利用了存储器组的256,000个存储器行中的一半,则可以将指定的最小节奏tREFI从7.8微秒增加到15.6微秒(其对应于发出刷新命令数量的一半),以维持32毫秒的刷新速率。进而,存储器装置100可以提供增加的带宽并且处理更多数据,因为存储器装置100发出更少的刷新命令,从而释放存储器装置100用于其它操作。

在一些实施例中,当存储器组255的存储器单元265被编程或以其它方式被利用(例如,用于存储非陈旧数据)时,存储器系统190可以使用禁止电路系统278来启用与所利用的存储器单元265相对应的存储器组255的存储器行(例如,在存储器行和/或存储器组255注册激活之后)以接收刷新操作。当启用存储器行时,存储器组255可以响应于从存储器系统190接收到刷新命令而刷新存储器行的存储器单元265。在这些和其它实施例中,当不再利用存储器行的存储器单元265(例如,存储器单元265被擦除、不再被编程和/或用陈旧数据编程)时,存储器系统190可以在刷新操作期间使用禁止电路系统278来禁止存储器行被刷新。

在一些实施例中,当存储器组的存储器单元被编程或以其它方式被利用时,存储器系统190可以跟踪存储在存储器单元上的数据是否是有效或非陈旧的。例如,存储器装置100可以包含一或多个定时器(例如,每个存储器行、每个由存储器行构成的群组等的定时器),所述一或多个定时器被配置成跟踪数据已存储在存储器行的存储器单元上的持续时间和/或自上次存取或以其它方式操纵数据以来的持续时间。在这些实施例中,当跟踪的一或多个持续时间达到阈值持续时间时,存储器装置100可以将数据指定为是陈旧的。然后,存储器装置100可以继续禁止存储器行接收刷新操作;在含有所述存储器行的存储器区域中重新合并有效的非陈旧数据;和/或使用有效的非陈旧数据覆写陈旧数据。另外或可替代地,存储器系统190的存储器控制器101和/或主机装置108可以跟踪存储在存储器单元上的数据是否是有效或非陈旧的。在这些实施例中,存储器控制器101和/或主机装置108可以与存储器装置100通信,以在数据有效/非陈旧和/或数据无效/陈旧时通知存储器装置。

如上文所讨论的,数据可以根据编程序列被编程到(例如,存储器组的)存储器阵列150的存储器行。在一些实施例中,编程序列可以对应于存储器装置100的行压缩和/或刷新泵送,使得存储器装置100刷新存储经编程的非陈旧数据的所利用的存储器行,并且不刷新存储器阵列150和/或存储器组中未利用的存储器行的全部或子集。以此方式,随着存储器组中更多的存储器行被利用(例如,被编程),存储器装置100可以去除刷新掩码、可以扩大行压缩、可以增加每个刷新命令的刷新泵送的数量和/或可以减小指定的最小刷新节奏tREFI。另外或可替代地,当存储器组中的存储器行变得未利用(例如,默认情况下未利用、被擦除和/或存储在存储器行上的数据变得陈旧)时,存储器装置100可以实施刷新掩码、减少行压缩、减少每个刷新命令的刷新泵送的数量和/或增加指定的最小刷新节奏tREFI。

在一些实施例中,存储器阵列150中的每个存储器组、存储器组群组和/或逻辑存储器排分别独立于其它存储器组、存储器组群组和/或逻辑存储器排来启用和禁止存储器行接收刷新操作。因此,尽管不利用整个存储器阵列150,但是存储器装置100可以继续并行地操作所有组,而不是禁止整个存储器组、存储器组群组和/或逻辑存储器排接收刷新操作。在这些实施例中,存储器装置100可以采用多于一个编程序列(例如,每个存储器组的编程序列)和/或多于一种刷新方案(例如,第一存储器组执行第一数量的刷新命令,每个命令触发第一数量的刷新泵送,每个刷新泵送并行地激活和刷新第一数量的存储器行,和/或掩蔽第一数量的刷新行;并且第二存储器组执行第二数量的刷新命令,每个命令触发第二数量的刷新泵送,每个刷新泵送并行地激活和刷新第二数量的存储器行,和/或掩蔽第二数量的刷新行)。

图3A和3B是展示了根据本发明技术的各种实施例配置的存储器装置的各种例程的流程图。具体地,图3A是展示了编程例程350的流程图,并且图3B是展示了刷新例程360的流程图。在一些实施例中,例程350和/或360可以至少部分地由存储器装置、可操作地连接到存储器装置的存储器控制器和/或可操作地连接到存储器控制器和/或存储器装置的主机装置执行。例如,例程350和/或360可以由行解码器、禁止电路系统、CBR计数器、存储器阵列、存储器行、存储器组和/或逻辑存储器排或管芯来执行。在这些和其它实施例中,例程350和/或360的步骤的全部或子集可以由存储器装置的其它组件(例如,命令解码器)、由存储器控制器的组件、由主机装置的组件和/或含有存储器装置的存储器系统的其它组件执行。

参考图3A,例程350可以通过接收激活命令在框351处开始。在一些实施例中,激活命令可以由可操作地连接到存储器装置的主机装置和/或存储器控制器发出。在这些和其它实施例中,激活命令可以由存储器装置和/或存储器系统的其它组件发出。

在框352处,例程350可以根据编程序列将数据写入存储器装置的下一个存储器区域(例如,下一个可用存储器区域,如下一个可用存储器行)。编程序列可以限定例程350顺序地向其写入数据的存储器装置中的存储器区域和/或位置(例如,存储器行(字线)、存储器列(位线)、存储器组、存储器组群组、逻辑存储器排或管芯等)的顺序。在一些实施例中,编程序列可以是预定义的编程序列(例如,在存储器装置的制造和/或上电期间定义的编程序列)。例如,编程序列可以对应于其中在存储器组中刷新存储器行的顺序和/或程度(例如,所有存储器行、存储器行的子集、单独的存储器行等)。在这些和其它实施例中,编程序列可以存储在存储器装置上和/或存储器系统的其它组件上(例如,主机装置上和/或存储器控制器上)。在这些和仍其它实施例中,编程序列可以被加载到存储器装置、存储器控制器和/或主机装置中(例如,当存储器装置上电时)。

在一些实施例中,例程350可以通过将对应的值存储在存储器装置、存储器控制器和/或主机装置上来跟踪编程序列中的最后被编程或下一个将要被编程的存储器区域(例如,存储器行(字线)、存储器列(位线)、由存储器行和/或存储器列构成的群组(例如,子阵列)、存储器组、存储器组群组、逻辑存储器排或管芯等)。在这些实施例中,例程350可以参考编程序列(例如,存储的值)以确定与下一个可用存储器区域相对应的一或多个行和/或列地址,以将与下一个可用存储器区域相对应的一或多个行和/或列地址供应给存储器装置和/或在对应的一或多个行和/或列地址处将数据写入下一个可用存储器区域的存储器单元。例如,在存储器装置上电之后,例程350可以初始地检索与编程序列中的第一存储器区域(例如,第一存储器组中的第一存储器行和/或存储器装置中的逻辑存储器排或管芯、每个存储器组群组中的第一存储器组的第一存储器行)相对应的一或多个行和列地址,将与编程序列中的第一存储器区域相对应的一或多个行和列地址供应给存储器装置和/或在与一或多个行和列地址相对应的存储器位置处将数据写入编程序列中的第一存储器区域。如下文相对于框355更详细地描述的,例程350可以更新存储的值以反映最后被编程和/或下一个将要被编程的存储器区域,使得例程350可以在后续写入操作期间参考存储的值并且将数据写入到下一个将要被编程的存储器区域。

在框353处,例程350确定是否禁止下一个可用存储器区域接收刷新命令。在一些实施例中,例程350可以通过使用存储在存储器装置、存储器控制器和/或主机装置上的表和/或其它值来跟踪和/或确定哪些存储器区域被启用和/或禁止接收刷新操作。如果例程350确定下一个可用存储器区域被禁止接收刷新操作,则例程350可以进行到框354。另一方面,如果例程350确定下一个可用存储器区域未被禁止接收刷新操作,则例程350可以进行到框355。

在框354处,例程350可以启用下一个可用存储器区域以接收刷新命令。在一些实施例中,例程350可以使用与下一个可用存储器区域相对应的禁止电路系统启用下一个可用存储器区域以接收刷新命令。在这些和其它实施例中,例程350可以通过(例如,向主机装置、存储器控制器和/或存储器装置)注册下一个可用存储器区域的激活来启用下一个可用存储器区域以接收刷新命令。例如,默认情况下,可以禁止存储器装置中的存储器区域接收刷新操作,直到下一个可用存储器区域上的存储器单元被利用(例如,用非陈旧数据编程和/或存储非陈旧数据)为止。在这些实施例中,在例程350第一次将数据写入到下一个可用存储器区域的存储器单元时,例程350可以注册下一个可用存储器区域的激活,以启用下一个可用存储器区域来接收刷新命令。在这些和仍其它实施例中,通过掩蔽下一个可用存储器区域以使其不接收刷新命令,可以禁止存储器区域接收刷新命令。在这些实施例中,例程350可以通过在刷新操作期间从下一个可用存储器区域中去除掩码(例如,通过不对其进行掩蔽)来启用下一个可用存储器区域以接收刷新命令。在这些和其它实施例中,由于当前的刷新操作设置(例如,行压缩、泵送方案和/或指定的最小节奏tREFI),可以禁止存储器区域接收刷新命令。在这些实施例中,例程350可以通过调整刷新操作设置(例如,存储器组的设置)来启用下一个可用存储器区域以接收刷新命令。例如,例程350可以增加行压缩,可以增加响应于每个接收到的刷新命令而触发的刷新泵送的数量,和/或可以减小指定的最小节奏tREFI,使得提供更多数量的刷新命令。

在框355处,例程350可以更新在框352处参考的存储的值,以反映最后被编程或下一个将要被编程的存储器区域(例如,最后被编程或下一个将要被编程的存储器行)。以此方式,例程350可以在后续写入操作期间参考更新的值,并且可以根据编程序列将数据写入到存储器装置,使得存储在存储器装置上的数据在被写入到存储器装置时被合并。在一些实施例中,例程350可以在存储器装置掉电的情况下重置存储的值,使得例程350在存储的值已经被重置并且存储器装置上电之后将数据写入到编程序列中的第一存储器区域(例如,第一存储器行)。

参考图3B,刷新例程360可以通过接收刷新命令在框361处开始。在一些实施例中,刷新命令可以由可操作地连接到存储器装置的主机装置和/或存储器控制器发出。在这些和其它实施例中,刷新命令可以由存储器装置和/或存储器系统的另一个组件发出。

在框362处,例程360可以将刷新命令分发到存储器装置的被启用以接收刷新命令的存储器区域(例如,存储器行)。在一些实施例中,例程360可以通过单独地向每个启用的存储器区域(例如,每个启用的存储器行)发送刷新命令来将刷新命令分发到启用的存储器区域。在其它实施例中,例程360可以通过掩蔽禁用的存储器区域(例如,使用对应的禁止电路系统)以使其不接收发送到存储器装置中的存储器区域的全部或子集的刷新命令来将刷新命令分发到启用的存储器区域。作为实例,存储器组可以将刷新命令分发到存储器组中的每个存储器行,并且存储器组的禁止电路系统可以(a)掩蔽禁用的存储器行和/或由存储器行构成的群组以使其不接收刷新命令和/或(b)将刷新命令仅分发到启用的存储器行和/或由存储器行构成的群组。在这些和其它实施例中,例程360可以根据当前的刷新操作设置(例如,存储器组的刷新设置)将刷新命令分发到存储器区域。例如,存储器组可以根据指定的最小节奏tREFI,根据当前的存储器行地址压缩和/或根据响应于每个刷新命令而触发的刷新泵送的当前数量,将刷新命令分发到存储器行。

在框363处,例程360可以刷新接收一或多个刷新命令的存储器区域的存储器单元。在一些实施例中,例程360可以通过访问存储器区域的一或多个行(例如,WL)并且将所访问的行的单元放电到对应的SAMP来刷新存储器单元。当行被打开时(例如,当所访问的字线通电时),例程360可以将由放电单元产生的电压与参考进行比较,和/或例程360可以将逻辑值写回(例如,对单元充电)给定逻辑状态的标称值。在一些情况下,写回过程可以增加单元的电荷,以改善上文所讨论的放电问题。在其它情况下,写回过程可以反转单元的数据状态(例如,从高到低或从低到高),以改善滞后移位、材料去极化等。以此方式,响应于在框361处接收到的刷新命令,仅刷新启用的存储器区域的存储器单元。

尽管以特定顺序讨论和展示了例程350和360的步骤,但是由分别在图3A和3B中的例程350和360所展示的方法不受此限制。在其它实施例中,可以以不同的顺序执行方法。在这些和其它实施例中,例程350和/或360的步骤中的任何步骤可以在例程350和/或360的其它步骤中的任何步骤之前、期间和/或之后执行。此外,相关领域的普通技术人员将容易认识到,所展示的方法可以改变,并且仍保留在本发明技术的这些和其它实施例内。例如,在一些实施例中,可以省略和/或重复分别在图3A和3B中展示的例程350和/或360的一或多个步骤。在这些和其它实施例中,可以对例程350和/或360的一或多个步骤进行组合以形成存储器装置的一或多个其它例程。

图4是根据本发明技术的实施例的包含存储器装置的系统的示意图。上文参考图1-3B描述的前述存储器装置中的任何一个存储器装置可以并入到大量更大的系统和/或更复杂的系统中的任何系统中,所述更大的系统和/或更复杂的系统的代表性实例是图4中示意性地示出的系统490。系统490可以包含半导体装置组合件400、电源492、驱动器494、处理器496和/或其它子系统和组件498。半导体装置组合件400可以包含与上文参照图1-3B所描述的存储器装置的特征总体上类似的特征,并且因此可以包含存储器内容认证的各种特征。所产生的系统490可以执行各种各样的功能中的任何功能,如存储器存储、数据处理和/或其它适当的功能。因此,代表性系统490可以包含但不限于手持装置(例如,移动电话、平板计算机、数字阅读器和数字音频播放器)、计算机、车辆、电器以及其它产品。系统490的组件可以容纳在单个单元中,或者分布在多个互连单元上(例如,通过通信网络)。系统490的组件还可以包含远程装置以及各种计算机可读媒体中的任何计算机可读媒体。

对本发明技术的实施例的以上详细描述不旨在是详尽的或将本发明技术限制于以上所公开的确切形式。尽管以上出于说明性目的描述了本发明技术的具体实施例和实例,但是如相关领域的技术人员将会认识到的,在本发明技术的范围内,各种等效修改是可能的。例如,尽管步骤以给定顺序呈现和/或讨论,但是替代性实施例可以以不同顺序执行步骤。此外,还可以将本文所描述的各个实施例进行组合以提供另外的实施例。

根据前述内容,将理解的是,在本文中已经出于说明性目的描述了本发明技术的特定实施例,但是尚未详细示出或描述众所周知的结构和功能,以避免不必要地使本发明技术的实施例的描述不清楚。在通过引用并入本文的任何材料与本公开冲突的情况下,以本公开为准。在上下文允许的情况下,单数术语或复数术语还可以分别包含复数术语或单数术语。此外,在参考具有两个或两个以上的项的列表时,除非词语“或”被明确限制为仅指代单个项而不包含其它项,否则在此类列表中使用“或”应被解释为包含(a)列表中的任何单个项、(b)列表中的所有项或者(c)列表中的项的任何组合。在上下文允许的情况下,单数术语或复数术语还可以分别包含复数术语或单数术语。此外,如本文所使用的,“A和/或B”中的短语“和/或”是指单独的A、单独的B以及A和B两者。另外,术语“包括”、“包含”、“具有(having)”和“具有(with)”在全文中用于表示至少包含一或多个所陈述特征,使得不排除任何更大数量的同一特征和/或另外类型的其它特征。

根据前述,还应当理解,可以在不偏离本发明技术的情况下进行各种修改。例如,本发明技术的各种组件可以进一步划分为子组件,或者可以组合和/或集成本发明技术的各种组件和功能。此外,尽管已经在那些实施例的上下文中描述了与技术的某些实施例相关联的优点,但是其它实施例也可以表现出此类优点并且并非所有的实施例都必需表现出此类优点才能落入本发明技术的范围内。因此,本公开和相关联的技术可以涵盖未在本文中明确示出或者描述的其它实施例。

相关技术
  • 对具有存储体分组架构的存储器设备内的存储体进行预充电和刷新
  • 对具有存储体分组架构的存储器设备内的存储体进行预充电和刷新
技术分类

06120112791257