多个存储器装置的交错刷新地址计数器以及相关方法、装置和系统与流程

文档序号:28951778发布日期:2022-02-19 10:48阅读:179来源:国知局
多个存储器装置的交错刷新地址计数器以及相关方法、装置和系统与流程
多个存储器装置的交错刷新地址计数器以及相关方法、装置和系统
1.优先权请求
2.本技术要求2020年8月6日提交的、发明名称为“多个存储器装置的交错刷新地址计数器以及相关方法、装置和系统(staggering refresh address counters of a number of memory devices,and related methods,devices,and systems)”的美国专利申请序列第16/987,168号的提交日的权益。
技术领域
3.本公开的实施例涉及存储器装置。更具体地,各种实施例涉及多个存储器装置的交错刷新地址计数器,以及相关的方法、装置和系统。


背景技术:

4.存储器装置被广泛用于在诸如计算机、无线通信装置、照相机、数字显示器等各种电子装置中存储信息。通过将存储器装置中的存储器单元编程为各种状态来存储信息。例如,二进制存储器单元可以被编程为两种支持状态中的一种,通常由逻辑1或逻辑0表示。在一些示例中,单个存储器单元可以支持多于两种状态,其中任何一种状态都可以被存储。为了访问存储的信息,部件可以读取或感测存储器装置中的至少一种存储状态。为了存储信息,部件可以在存储器装置中写入或编程状态。
5.存在各种类型的存储器装置和存储器单元,包含磁性硬盘、随机存取存储器(ram)、只读存储器(rom)、动态ram(dram)、同步动态ram(sdram)、铁电ram(feram)、磁性ram(mram)、电阻式ram(rram)、闪存存储器、相变存储器(pcm)、自选择存储器、硫属化物存储技术等。存储器单元可以是易失性的或非易失性的。即使在没有外部电源的情况下,非易失性存储器(例如feram)也可以长时间保持其存储的逻辑值。易失性存储器装置(例如dram)在与外部电源断开时可能会失去其存储状态。


技术实现要素:

6.本公开的各种实施例可以包含一种方法。该方法可以包含调整一列内的多个存储器装置中的至少一个存储器装置的刷新地址计数器的计数,使得该至少一个存储器装置的刷新地址计数器的计数偏离该列内的多个存储器装置中的至少一个其它存储器装置的刷新地址计数器的计数。该方法还可以包含在多个存储器装置的每一个处接收刷新命令。进一步地,该方法可以包含在多个存储器装置的每一个处刷新由相关联的刷新地址计数器的计数指示的一行存储器单元。
7.根据其它实施例,一种方法可以包含在共享刷新命令总线的多个存储器装置的每一个处接收刷新命令。该方法还可以包含对于多个存储器装置中的每一个,识别由存储器装置的刷新地址计数器的值指示的存储器装置的一行存储器单元。进一步地,多个存储器装置中的第一存储器装置的刷新地址计数器的值偏离多个存储器装置中的至少一个其它
存储器装置的刷新地址计数器的值。此外,该方法可以包含在多个存储器装置的每一个处刷新一行识别的存储器单元。
8.本公开的一些实施例包含一种存储器模块。该存储器模块可以包含一列的多个存储器装置。该列的多个存储器装置中的每个存储器装置包含存储器单元阵列和具有索引的刷新地址计数器。该列的每个存储器装置包含对于该列唯一的索引。此外,该列的多个存储器装置中的每个存储器装置包含控制器,该控制器耦合到刷新地址计数器,并且被配置为响应于接收到刷新命令,基于刷新地址计数器的索引来刷新一行存储器单元阵列。
9.本公开的附加实施例包含一种电子系统。该电子系统可以包含至少一个输入装置、至少一个输出装置和至少一个可操作地耦合到输入装置和输出装置的处理器装置。该电子系统还可以包含一个列,该列包含可操作地耦合到至少一个处理器装置的多个存储器装置。该列的多个存储器装置中的每个存储器装置包括计数器,该计数器具有从该多个存储器装置中的至少一个其它存储器装置偏移的计数值。进一步地,多个存储器装置中的每个存储器装置被配置为响应于刷新命令,基于相应计数器的相关联计数值来刷新一行存储器单元。
附图说明
10.图1是根据本公开的各种实施例的示例性存储器装置的框图。
11.图2描绘了根据本公开的各种实施例的包含多个存储器装置的示例性系统。
12.图3a描绘了根据本公开的各种实施例的包含多个存储器装置的示例性装置。
13.图3b描绘了根据本公开的各种实施例的包含多个存储器模块的示例性存储器系统。
14.图4a描绘了根据本公开的各种实施例的包含多个存储器装置的示例性存储器模块。
15.图4b描绘了根据本公开的各种实施例的包含多个存储器装置的示例性存储器模块的一部分。
16.图5是示出根据本公开的各种实施例的示例性存储器装置的各种部件的框图。
17.图6是根据本公开的各种实施例的操作多个存储器装置的示例性方法的流程图。
18.图7是根据本公开的各种实施例的操作多个存储器装置的另一示例性方法的流程图。
19.图8是根据本公开的各种实施例的示例性存储器系统的简化框图。
20.图9是根据本公开的各种实施例的示例性电子系统的简化框图。
具体实施方式
21.对于一些类型的存储器单元(例如,易失性存储器单元),刷新操作可用于保持由存储器单元存储的逻辑值。例如,存储器单元可能随着时间而丢失其所存储的逻辑值(例如,由于泄漏或其它影响),并且刷新操作可包含从一组存储器单元读取所存储的逻辑值并将那些相同的逻辑值写回到该组存储器单元。
22.在一些情况下,多个存储器装置(例如,双列直插式存储器模块(dimm)的列中的存储器装置)可以各自包含至少一个相应的存储器阵列,并且可以共享命令/地址(ca)总线。
因为ca总线是共享的,所以ca总线上的刷新命令也可以是共享的(例如,存储器装置中的每一个可以同时接收相同的刷新命令)。
23.如本文所描述,存储器装置可以包含计数器(在本文中也称为“刷新地址计数器”、“地址计数器”或“刷新计数器”)或与之相关联(例如,与之耦合),并且当存储器装置要执行刷新操作时,存储器装置可以基于由刷新地址计数器指示的值(例如,二进制数)(在本文中也称为“索引”)来激活一或多个字线。例如,存储器装置的刷新地址计数器的值可以包括或以其它方式指示存储器装置的行地址,并且当存储器装置执行刷新操作时,存储器装置可刷新一或多行(例如,多行)的存储器单元,其中该行对应于刷新地址计数器的值。在刷新操作之后,刷新地址计数器的值可以增加。在传统的存储器系统中,装置或系统(例如,存储器模块)的每个存储器装置的刷新地址计数器包含相同的计数值。换句话说,在启动或重启时,存储器模块的每个存储器装置的刷新地址计数器被初始化为相同的二进制值。因此,响应于在每个存储器装置处接收到的刷新命令,存储器模块的每个存储器装置的同一行存储器单元被刷新。
24.随着存储器密度的增加,在一些存储器装置中出现了间歇性故障,其可能由于对特定行的存储器单元(例如,耦合到存取线的单元)的重复存取而经历故障。例如,物理上与被频繁存取的行相邻的行发生数据损坏的可能性增加。对特定行的重复存取可被称为“锤击”事件,并且对行的锤击可导致例如穿过传输门和/或穿过体硅的迁移等问题。由一行的锤击引起的泄漏和寄生电流可能导致在未被存取的物理上相邻的行中的数据损坏,该行可被称为相邻行或受害行。
25.行锤击效应是由于存储器单元的性质,存储器单元可以包含晶体管和电容器。电容器的充电状态可以确定存储器单元是将“1”还是“0”存储为二进制值。此外,大量存储器单元紧密地封装在一起。紧密封装的单元可导致激活的字线和/或激活的电容器对相邻电容器的电荷产生影响,尤其是当单元中的一个被快速激活时(例如,行锤击效应)。此外,电容器可以具有自然放电速率,并且可以被重写以补偿这种放电,称为“刷新”。
26.减少行锤击的不利影响的一些方法包含响应于确定锤击事件已经发生来刷新相邻行。例如,响应于确定特定行已经是重复存取的目标(例如,该行在刷新周期内已经经历了超过阈值数量的存取),可以选择其物理相邻的相邻行用于目标刷新操作,这可以被称为行锤击刷新(rhr)操作。
27.除了执行rhr操作之外,提高存储器装置的刷新率可以减少一行存储器装置遭受的锤击的数量。换句话说,提高刷新率可以减少受害行被锤击的持续时间。尽管如此,行锤击攻击仍然令人担忧,尤其是在最坏的情况下。可以理解,因为dimm(或一列dimm)的每个装置共享命令,所以dimm的多个存储器装置(例如,ddr4 rdimm为18个)可能经历相同的行锤击攻击。在一种情况下(例如最坏的情况),其中行锤击刷新电路没有检测到对受害行的攻击,在通过正常的自动刷新命令刷新受害行之前,可能需要一个完整的刷新周期(例如,32ms)。
28.根据各种实施例,多个存储器装置(例如,一列和/或一个dimm的多个存储器装置)中的至少一个存储器装置的刷新地址计数器可以用唯一的起始地址编程和/或可以包含唯一的起始地址。换句话说,为了防止一组存储器装置同时刷新相同的行,即使它们共享相同的ca总线或以其它方式执行并行刷新操作,至少一些存储器装置的刷新地址计数器可以是
交错的(相对于彼此偏移),使得在任何给定时间,至少一些存储器装置具有不同值的刷新地址计数器。因此,当接收到刷新命令时,即使装置(例如,dimm)的一或多个存储器装置具有指示第一行的值的刷新地址计数器,该装置的一或多个其它存储器装置也可以具有指示其它行的不同值的刷新地址计数器。
29.更具体地,根据一些实施例,多个存储器装置(例如,一列和/或一个dimm的多个存储器装置)中的每一个存储器装置的刷新地址计数器可以用唯一的起始地址编程和/或可以包含唯一的起始地址。为每个存储器装置(即,多个存储器装置)交错计数器(例如,刷新地址计数器)可以确保在最坏情况下,多个存储器装置中只有一个存储器装置经历最坏情况的行锤击攻击。换句话说,在每个存储器装置处移位刷新地址计数器值(即,不同地)可以最小化该多个存储器装置中的多少个存储器装置遭受最坏情况的影响。换句话说,将每个刷新地址计数器(例如,一列和/或一个dimm的多个存储器装置的刷新地址计数器)被配置为彼此稍微异相,这可能导致每个存储器装置具有不同的锤击地址来刷新地址差异,因此从锤击到受害地址的自动刷新具有不同的锤击时间周期。
30.根据一些实施例,多个dimm(例如,存储器系统的多个dimm)中的每一个可以接收唯一的移位解决方案和/或用唯一的移位解决方案进行编程(例如,在制造流程中)。更具体地,根据一些实施例,为了引入刷新地址计数器之间的交错,可以对与每个存储器装置相关联的熔丝电路进行编程,使得至少一些存储器装置的刷新地址计数器被设置为指示不同的(例如,偏移的、交错的)值。例如,此类交错可以在启动或重启存储器装置时引入。在一些情况下,当接收到刷新并且在不同的存储器装置处执行刷新操作时,存储器装置处的刷新地址计数器可以通过类似的方式增加(例如,根据相同的模式或进程),因此,在存储器装置的操作期间,可以保持存储器装置的刷新地址计数器之间的偏移。
31.例如,可以基于刷新率和/或共享同一刷新命令的装置(例如,一列和/或一个dimm的装置)的数量来移动多个存储器装置(例如,存储器模块的多个存储器装置)的地址计数。在至少一些实施例中,交错时间可以在一个列中的所有装置上平均分配。完整的芯片刷新率和每列/dimm共享命令的装置的数量可能是确定在dimm上对所有装置平均分配时间的因素。例如,如果一个完整的芯片刷新时间为32ms,并且一个dimm有8个装置,则每个装置之间可能存在4ms的交错。在另一个示例中,如果完整的芯片刷新时间是64ms,则可以使用8ms的交错来平均分配。类似地,如果每列有16个装置,在32ms的完整的芯片刷新时,将使用2ms的交错。对于64ms(即16个部件),可以使用4ms的交错。
32.进一步地,刷新地址计数器之间的偏移可以变化。更具体地,在一个示例中,每个刷新地址计数器(例如,一个dimm或dimm的一列的刷新地址计数器)可以从另一个计数器(例如,一个dimm或dimm的一列的计数器)偏移特定的量。作为另一个示例,一些刷新地址计数器(例如,一个dimm或dimm的一列的刷新地址计数器)可以从另一个刷新地址计数器(例如,该dimm或dimm的该列的刷新地址计数器)偏移第一量,而其它刷新地址计数器(例如,该dimm或dimm的该列的刷新地址计数器)可以从另一个刷新地址计数器(例如,该dimm或dimm的该列的刷新地址计数器)偏移第二不同的量。
33.除了唯一地配置存储器模块的多个存储器装置(即,具有初始地址计数值),如下文更全面描述的,存储器系统的多个存储器模块也可以被唯一地配置(即,基于每个存储器模块的唯一配置的存储器装置)。
34.可以理解,本文公开的各种实施例可以提供附加的行锤击保护和/或增加不良行为者(例如,黑客)开发模式(例如,黑客攻击或导致故障)的难度。换句话说,各种实施例可能增加刷新模式(即,一个dimm上的多个存储器装置的刷新模式)的复杂性,并且因此刷新之前的锤击的总可能数量可能减少(即,由于在列中交错地址)。进一步地,因为可以减少故障位的数量,所以在一些情况下,故障存储器装置可以通过纠错码(ecc)存储器来纠正。
35.尽管本文参考存储器装置描述了各种实施例,但是本公开不限于此,并且这些实施例可以普遍适用于可以包含或不包含半导体装置和/或存储器装置的微电子装置。现在将参考附图解释本公开的实施例。
36.图1包含根据本公开的各种实施例的示例性存储器装置100的框图。存储器装置100可以包含,例如,dram(动态随机存取存储器)、sram(静态随机存取存储器)、sdram(同步动态随机存取存储器)、ddr sdram(双数据速率dram,例如ddr4 sdram等)或sgram(同步图形随机存取存储器)。可以集成在半导体芯片上的存储器装置100可以包含和/或在本文可以被称为“存储器管芯”。
37.存储器装置100可以包含存储器单元阵列102。在图1的实施例中,存储器单元阵列102被示为包含八个存储体bank0-7。在其它实施例的存储器单元阵列102中可以包含更多或更少的存储体。每个存储体包含多条存取线(字线wl)、多条数据线(位线bl)和/bl,以及布置在多条字线wl与多条位线bl和/bl的交点处的多个存储器单元mc。字线wl(本文中也称为“行线”)(即,用于存取一行存储器单元)的选择可以由行解码器104执行,而位线bl和/bl的选择可以由列解码器106执行。在图1的实施例中,行解码器104可以包含用于每个存储体bank0-7的相应的行解码器,并且列解码器106可以包含用于每个存储体bank0-7的相应的列解码器。
38.位线bl和/bl耦合到相应的感测放大器samp。来自位线bl或/bl的读数据可以由感测放大器samp放大,并通过互补的局部数据线(liot/b)、传输门(tg)和互补的主数据线(miot/b)传输到读/写放大器107。相反,从读/写放大器107输出的写数据可以通过互补的主数据线miot/b、传输门tg和互补的局部数据线liot/b传输到感测放大器samp,并且被写入耦合到位线bl或/bl的存储器单元mc中。
39.存储器装置100通常可以被配置为通过各种端子(例如,地址端子110、命令端子112、时钟端子114、数据端子116和数据屏蔽端子118)接收各种输入(例如,来自外部控制器)。存储器装置100可以包含附加端子,例如电源端子120和122。
40.在预期的操作期间,通过命令端子112接收到的一或多个命令信号com可以通过命令输入电路152传送到命令解码器150。命令解码器150可以包含被配置为通过解码一或多个命令信号com来生成各种内部命令的电路。内部命令的示例包含激活命令act和读/写信号r/w。
41.进一步地,通过地址端子110接收到的一或多个地址信号add可以通过地址输入电路132传送到地址解码器130。地址解码器130可以被配置为向行解码器104提供行地址xadd,以及向列解码器106提供列地址yadd。尽管命令输入电路152和地址输入电路132被示出为分离的电路,但是在一些实施例中,地址信号和命令信号可以通过公共电路接收。
42.激活命令act可以包含响应于指示行存取的命令信号com(例如,激活命令)而被激活的脉冲信号。响应于激活信号act,可以激活指定存储体地址的行解码器104。因此,可以
选择并激活由行地址xadd指定的字线wl。
43.读/写信号r/w可以包含响应于指示列存取的命令信号com(例如,读命令或写命令)而被激活的脉冲信号。响应于读/写信号r/w,可以激活列解码器106,并且可以选择由列地址yadd指定的位线bl。
44.响应于激活命令act、读取号、行地址xadd和列地址yadd,可以从由行地址xadd和列地址yadd指定的存储器单元mc读取数据。读数据可以通过感测放大器samp、传输门tg、读/写放大器107、输入/输出电路162和数据端子116输出。进一步地,响应于激活命令act、写信号、行地址xadd和列地址yadd,写数据可以通过数据端子116、输入/输出电路162、读/写放大器107、传输门tg和感测放大器samp被提供给存储器单元阵列102。可以将写数据写入由行地址xadd和列地址yadd指定的存储器单元mc。
45.可以通过时钟端子114接收时钟信号ck和/ck。时钟输入电路170可以基于时钟信号ck和/ck生成内部时钟信号iclk。内部时钟信号iclk可以被传送到存储器装置100的各种部件,例如命令解码器150和内部时钟生成器172。内部时钟生成器172可以生成内部时钟信号lclk,其可以被传送到输入/输出电路162(例如,用于控制输入/输出电路162的操作定时)。进一步地,数据屏蔽端子118可以接收一或多个数据屏蔽信号dm。当数据屏蔽信号dm被激活时,可以禁止对应数据的重写。
46.存储器装置100还可以包含控制器180和计数器182,该计数器可以包含刷新地址计数器。控制器180(本文中也称为“本地存储器控制器”)可以通过各种部件(例如,行解码器104、列解码器106、感测放大器samp)来控制对存储器单元mc的存取。在一些示例中,行解码器104、列解码器106和感测放大器samp中的一或多者可以与控制器180并置(例如,包含在该控制器中)。控制器180可用于从主机装置(图1中未示出;见图2)或与存储器装置100相关联的另一控制器接收一或多个命令或数据,将命令或数据(或两者)转变成可由存储器装置100使用的信息,在存储器装置100上执行一或多个操作,并基于执行该一或多个操作将数据从存储器装置100传送到主机装置。
47.例如,控制器180可以用于对存储器装置100的一或多个存储器单元mc执行一或多个存取操作。存取操作的示例可以包含写操作、读操作或刷新操作等。在一些示例中,存取操作可以由控制器180响应于各种存取命令来执行或以其它方式协调,这些存取命令可以在内部生成或从外部装置(例如,从主机装置)接收。在一些情况下,控制器180可用于执行本文中未公开的其它存取操作或与存储器装置100的操作相关的其它操作,这些操作与存取存储器单元阵列102的存储器单元mc不直接相关。
48.对于一些类型的存储器单元mc,例如易失性存储器单元,由存储器单元存储的逻辑值可能随着时间而退化(例如,由于泄漏或其它影响)。控制器180可以执行重写或刷新操作(例如,周期性地或基于另一个调度或命令的基础),以保持存储器单元存储它们各自的逻辑值。执行刷新操作可以涉及激活一或多条字线wl,其中控制器180可以将存储的逻辑值重写到与一或多条字线wl耦合的存储器单元mc。
49.计数器182可以与控制器180耦合。可替代地,除了其它可能的配置之外,计数器182可以包含在控制器180中或者直接与行解码器104耦合。计数器182可以指示对应于(例如,包括或以其它方式指示)行地址(可替代地,字线地址、字线索引或刷新索引)的值(本文中也称为“计数”或“索引”),其中存储器单元阵列102的每一行存储器单元具有唯一的行地
址。
50.当要执行刷新操作时,可以激活具有对应于计数器182的值的行地址的行,并且可以刷新与激活的行耦合的一些或所有存储器单元。在一些情况下,作为单个刷新操作的一部分,存储器装置100可以刷新多行(例如,两行、四行、八行或十六行)的存储器单元mc,该刷新操作可以与被称为行组的对应的一组行耦合。例如,计数器182的值可以指示行组的起始行地址,或者每个行组可以具有对应的刷新值。对于每个刷新操作,计数器182可以增加(或者可替代地减小)其值,使得当要执行下一个刷新操作时,计数器182的值对应于与作为先前刷新操作的一部分没有被刷新的单元耦合的行(或行组)。在一些情况下,可以响应于存储器装置100从外部装置(例如,主机装置)接收到的命令来执行刷新操作。附加地或可替代地,可以基于在存储器装置100内部生成的命令(例如,由控制器180)来执行刷新操作。应当注意,如本文所引用的,各种刷新操作可以包含刷新存储器单元阵列(例如,存储器单元阵列102)的主阵列和冗余行。
51.图2示出了根据本公开的各种实施例的存储器系统200的示例。如本文更全面描述的,存储器系统200被配置为支持多个存储器装置的交错刷新地址计数器。
52.系统200可以包含主机装置201。主机装置201可以是使用存储器来执行处理的装置的示例,例如中央处理单元(cpu)、图形处理单元(gpu)或另一种类型的处理器。系统200还可以包含装置202,其可以是例如存储器模块,并且可以包含两个或更多个存储器装置205(例如,存储器装置205a-205d)。尽管示出了四个存储器装置205,但是当理解,任何数量的存储器装置205都是可能的。如上文参考图1所描述,存储器装置205a、205b、205c和205d中的每一个可以包含存储器装置100。例如,每个存储器装置205可以包含刷新地址计数器(例如,图1的计数器182)。
53.装置202中的每个存储器装置205可以通过共享的ca总线215与主机装置201耦合。在一些情况下,共享ca总线215的存储器装置205可以统称为列,尽管示出了一个列,但是存储器装置202可以包含任何数量的列。ca总线215可以在主机装置201和存储器装置205之间传送信号,并且ca总线215可以包含一或多个耦合的信号路径(例如,线迹、接合线、焊盘或引脚等)的任何组合。由于ca总线215可以在存储器装置205之间共享,所以由主机装置201发送的每个信号可以由每个存储器装置205接收。由主机装置201沿着ca总线215传输的信号的一些示例可以包含诸如读命令、写命令和刷新命令等的命令。主机装置201还可以与一或多条数据(dq)总线(未示出)耦合,该总线可以在主机装置201和存储器装置205之间传送数据,其中数据可以通过ca总线215与命令相关联(例如,响应于该命令而读取或写入)。
54.每个存储器装置205可以与相应的熔丝电路210耦合。例如,存储器装置205a可以与熔丝电路210a耦合,存储器装置205b可以与熔丝电路210b耦合,存储器装置205c可以与熔丝电路210c耦合,并且存储器装置205d可以与熔丝电路210d耦合。每个熔丝电路210可以包含任何数量的熔丝(或者可替代地,反熔丝或一些其它种类的非易失性存储元件),并且熔丝电路210内的熔丝的状态可以控制(例如,初始化或以其它方式设置)对应的存储器装置205的一或多个操作参数或其它设置。
55.存储器装置205可以在启动事件(启动或重启)时读取(感测或以其它方式检测)对应熔丝电路210中的熔丝的状态。例如,存储器装置205可以基于对应熔丝电路210中的一或多个熔丝的状态(如由其所指示)来初始化或以其它方式将其刷新地址计数器(例如,图1的
计数器182)设定为初始值。不同熔丝电路210中的熔丝的状态可以变化,使得至少一些存储器装置205的刷新地址计数器被设置为不同的初始值(即,至少一些存储器装置205的刷新地址计数器的计数值被偏移)。
56.在启动事件之后,主机装置201可以通过ca总线215向存储器装置205发送命令(例如,写命令、读命令、刷新命令)。主机装置201和存储器装置205也可以基于命令通过一或多个其它总线交换数据。当主机装置201通过ca总线215发送刷新命令时,每个存储器装置205可以接收刷新命令,并且每个存储器装置205可以基于刷新命令来刷新相应的一组存储器单元。对于每个存储器装置205,哪些存储器单元被刷新可以取决于在接收到刷新命令时存储器装置205的刷新地址计数器的值。因此,如果两个存储器装置205具有在接收到刷新命令时指示不同值的刷新地址计数器,则两个存储器装置205可以基于两个相应的刷新地址计数器的不同值,响应于相同的刷新命令来刷新不同行中的存储器单元。存储器装置205的刷新地址计数器可以响应于ca总线215上的每个刷新命令通过类似的方式增加(或者减少)(例如,增加(或者减少)相同的量,或者根据相同的模式)。因此,在启动时(例如,由熔丝电路210)引入的存储器装置205的刷新地址计数器之间的任何偏移可以随着装置202的操作而持续(保持)。
57.根据一些实施例,可以对多个位(例如,测试模式熔丝(tmfz)位)(即,熔丝电路的位)进行编程,以在多个存储器装置(例如,模块的存储器装置)上创建地址计数值的唯一组合。例如,根据存储器装置(例如,ddr4装置或ddr5装置),可以使用四或五位来为存储器模块的每个管芯提供唯一的解决方案(即,唯一的地址计数值)。在至少一个示例中,一个位可以用于扭曲存储器管芯内的存储体刷新地址。在该示例中,管芯内的所有存储体可以使用相同的计数器,但是一些存储体(例如,一半的存储体)可以在某个刷新地址上反转,以导致不同的行地址被刷新。
58.在一个示例中,装置(例如,存储器模块)的多个(例如,ddr4为18个)存储器装置中的每个存储器装置可以具有不同的地址计数值。这可以确保多个装置中不多于一个装置同时经历最坏情况(例如,锤击攻击)。例如,刷新一个存储器模块可能需要大约32ms(例如,4096个刷新命令)。在该示例中,4096个命令/18个装置=每个装置刷新地址计数器中的227个刷新命令偏移。因此,在一个示例性情况中,可以使用227个刷新命令(227个命令*7.8us=1.77ms)偏移。然而,因为227不是二进制的,所以可以使用256命令偏移作为示例。
59.更具体地,参考图3a,在一个示例中,存储器模块300(例如,dimm)包含n个(例如,18个)存储器装置,其中每个存储器装置具有不同的地址计数值(例如,每个装置的计数值可以偏移256个刷新命令(2ms))。在该示例中,第一装置(例如,装置1)可能经历最坏的情况,其中受害行在大约32ms后被刷新。继续该示例,第二装置(例如,装置2)包含从第一装置的地址计数值偏移的地址计数值(例如,偏移256个命令(2ms)),并且第二装置的受害行在大约30ms(即,32ms

2ms)之后被刷新。进一步地,第三装置(例如,装置3)包含从第一装置的地址计数值偏移的地址计数值(例如,偏移512个命令(4ms)),并且第三装置的受害行在大约28ms(即,32ms

4ms)之后被刷新。此外,第四装置(例如,装置4)包含从第一装置的地址计数值偏移的地址计数值(例如,偏移768个命令(6ms)),并且第四装置的受害行在大约26ms(即,32ms

6ms)之后被刷新。此外,第五装置(例如,装置5)包含从第一装置的地址计数值偏移的地址计数值(例如,偏移1024个命令(8ms)),并且第五装置的受害行在大约24ms(即,
32ms

8ms)之后被刷新。因此,在该非限制性示例中,每个地址计数值从另一个地址计数值偏移256个命令。在其它示例中,装置之间的偏移可以变化。
60.如上所述,根据各种实施例,存储器模块的多个存储器装置可以被唯一地配置(即,具有初始地址计数值)。唯一地配置存储器模块的每个存储器装置的能力也提供了唯一地配置存储器系统的多个存储器模块的能力。图3b描绘了根据本公开的各种实施例的包含多个存储器模块(例如,dimm 1-dimm m)的存储器系统350。例如,存储器系统350的每个dimm可以具有唯一的配置。在一个示例中,在dimm 1(即,具有配置1)中,第一存储器装置(例如,位于第一位置)和第二存储器装置(例如,位于第二位置)可以具有x的地址计数值偏移(例如,256个命令)。继续该示例,在dimm 2中(即,具有不同于配置1的配置2),第一存储器装置(例如,位于第一位置)和第二存储器装置(例如,位于第二位置)可以具有y的地址计数值偏移(例如,512个命令)。存储器系统350的存储器模块的其它存储器装置可以具有不同的地址计数值偏移。因此,例如,因为存储器系统350的至少一些存储器模块被不同地配置,所以使一个存储器模块(例如,存储器模块dimm 1)故障的模式不一定使另一个存储器模块(例如,存储器模块dimm 2)故障。
61.图4a描绘了双列dimm 400(例如,2列2通道sdp ddr5 rdimm)。更具体地,dimm 400包含列402和列404,其中每个列402/404包含十(10)个存储器装置。可以理解,一列中的每个存储器装置可以基本上同时被刷新,并且一列中的每个存储器装置可以接收用于相同地址的激活命令。
62.图4b描绘了包含列402的dimm 400的一部分,该列包含存储器装置410a-410j。根据各种实施例,为每个存储器装置410a-410j熔断不同的熔丝状态可以产生最佳锤击地址来计数地址差异。例如,装置410a的移位熔丝可以不熔断,410b的移位熔丝可以熔断地址范围的1/10,410c的移位熔丝可以熔断地址范围的2/10,410d的移位熔丝可以熔断地址范围的3/10,410e的移位熔丝可以熔断地址范围的4/10,等等,使得410j的移位熔丝可以熔断地址范围的9/10。可以理解,为每个存储器装置410a-410j熔断不同的熔丝状态可能导致列402中只有一(1)个存储器装置经历最差情况的行锤击来计数地址差异。因此,对于未检测到的行锤击攻击,可以减少在列402和dimm 400上可能故障的位数。
63.图5是描绘根据本文所公开的示例的存储器装置500的各种部件的框图。可以包含图1的存储器装置100的存储器装置500可以包含索引调整部件502、命令接收器504、激活部件506、刷新部件508、熔丝读取部件510、启动程序部件512和识别部件514。这些模块中的每一个都可以直接或间接地相互通信(例如,通过一或多条总线)。
64.熔丝读取部件510可以被配置为读取存储器装置500的一或多个熔丝设置。索引调整部件502可以被配置为调整刷新地址计数器(例如,图1的计数器182)的相应索引(例如,行索引)(例如,基于一或多个熔丝设置)。在一些示例中,索引调整部件502可以将刷新地址计数器的索引增加或减少调整因子的整数倍。在一些示例中,索引调整部件502可以反转索引的一或多个位来增加或减少索引。
65.命令接收器504可以被配置为接收刷新命令(例如,通过包含存储器装置500的多个存储器装置共用的通道)。激活部件506可以被配置为基于刷新命令和索引来激活存储器装置500的至少一行存储器单元。识别部件514可以被配置为响应于刷新命令来识别存储器装置500的行地址。刷新部件508可以被配置为基于激活部件506激活多个存储器单元来刷
新多个(例如,一行)存储器单元。启动程序部件512可以被配置为对存储器装置500执行启动或重启程序,其中调整(例如,通过索引调整部件502执行)可以基于启动或重启程序。在一些示例中,索引调整部件502可以响应于刷新操作来增加索引。
66.应当注意,尽管以上参考图5提供的描述是针对单个存储器装置的,但是多个存储器装置(例如,存储器模块的多个存储器装置)中的每个存储器装置可以包含图5中所示的部件,并且多个存储器装置中的每个存储器装置可以读取一或多个熔丝部件、调整相关联的索引、接收刷新命令、激活多个存储器单元(即,基于相关联的索引)以及刷新被激活的存储器单元。进一步地,根据各种实施例,至少一个存储器装置(例如,存储器模块的至少一个存储器装置)可以不同地调整索引和/或可以包含与至少一个其它存储器装置(例如,存储器模块的至少一个其它存储器装置)的索引不同(例如,偏移)的索引。
67.图6是根据本公开的各种实施例的操作多个存储器装置的示例性方法600的流程图。方法600可以根据本公开中描述的至少一个实施例来布置。在一些实施例中,方法600可以由诸如图1的存储器装置100、图2的系统200、图3a的存储器模块装置300、图3b的存储器系统350、图4a的存储器模块400、图4b的列402、图5的存储器装置500、图8的存储器系统800和/或图9的电子系统900或另一装置或系统的装置或系统来执行。尽管被示出为离散的块,但是根据期望的实现方式,各种块可以被划分成附加的块,组合成更少的块,或者被消除。
68.方法600可以从框602开始,其中可以调整多个存储器装置中的至少一个存储器装置的刷新地址计数器的计数,使得该至少一个存储器装置的刷新地址计数器的计数偏离多个存储器装置中的至少一个其它存储器装置的刷新地址计数器的计数,并且方法600可以前进到框604。更具体地,例如,可以调整多个存储器装置(例如,存储器模块的多个存储器装置)中的多于一个存储器装置的刷新地址计数器的计数,使得每个存储器装置的刷新地址计数器的计数偏离多个存储器装置中的每个其它存储器装置的刷新地址计数器的计数。例如,刷新地址计数器(例如,图1的计数器182)的计数值可以通过控制器(例如,图1的控制器180)并基于一或多个熔丝设置(例如,图2的相关熔丝电路210的熔丝设置)来调整。
69.在框604处,在多个存储器装置的每一个处,可以接收刷新命令,并且方法600可以前进到框606。例如,多个存储器装置中的每一个都可以通过ca总线(例如,图2的ca总线215)接收刷新命令(例如,在图1的控制器180处)。
70.在框606处,在多个存储器装置的每一个处,可以刷新由相关联的刷新地址计数器的计数指示的一行存储器单元。例如,(诸如图1的存储器单元阵列102的存储器单元阵列的)一行存储器单元可以由相关联的刷新地址计数器(例如,图1的计数器182)的计数来指示,并且可以响应于接收到刷新命令而被刷新(例如,通过图1的控制器180)。
71.在不脱离本公开的范围的情况下,可以对方法600进行修改、添加或省略。例如,方法600的操作可以通过不同的顺序实现。此外,所概述的操作和动作仅作为示例提供,并且在不偏离所公开的实施例的本质的情况下,一些操作和动作可以是可选的,组合成更少的操作和动作,或者扩展成附加的操作和动作。例如,一种方法可以包含一或多个动作,其中可以对与多个存储器装置中的一或多个相关联的一或多个熔丝设置进行编程(例如,在制造期间或以其它方式)。
72.图7是根据本公开的各种实施例的操作多个存储器装置的示例性方法700的流程图。方法700可以根据本公开中描述的至少一个实施例来布置。在一些实施例中,方法700可
以由诸如图1的存储器装置100、图2的系统200、图3a的存储器模块装置300、图3b的存储器系统350、图4a的存储器模块400、图4b的列402、图5的存储器装置500、图8的存储器系统800和/或图9的电子系统900或另一装置或系统的装置或系统来执行。尽管被示出为离散的块,但是根据期望的实现方式,各种块可以被划分成附加的块,组合成更少的块,或者被消除。
73.方法700可以在框702处开始,其中在多个存储器装置的每一个处,可以接收刷新命令,并且方法700可以前进到框704。例如,多个存储器装置(例如,存储器模块的多个存储器装置)中的每一个都可以通过ca总线(例如,图2的ca总线215)接收刷新命令(例如,在图1的控制器180处)。
74.在框704处,对于多个存储器装置中的每一个,可以识别由存储器装置的刷新地址计数器的值指示的存储器装置的一行存储器单元,并且方法700可以前进到框706。多个装置中的第一装置的刷新地址计数器的值偏离多个装置中的至少一个其它装置的刷新地址计数器的值。例如,可以通过图1的控制器180、图5的识别部件514或其组合来识别该行存储器单元。
75.在框706处,在多个存储器装置的每一个处,可以刷新所识别的一行存储器单元。例如,可以通过图1的控制器180刷新所识别的行。
76.在不脱离本公开的范围的情况下,可以对方法700进行修改、添加或省略。例如,方法700的操作可以通过不同的顺序实现。此外,所概述的操作和动作仅作为示例提供,并且在不偏离所公开的实施例的本质的情况下,一些操作和动作可以是可选的,组合成更少的操作和动作,或者扩展成附加的操作和动作。例如,一种方法可以包含一或多个动作,其中可以调整刷新地址计数器的值(即,在多个存储器装置中的一或多个上)。进一步地,一种方法可以包含一或多个动作,其中设置一或多个熔丝电路的一或多个熔丝(例如,使得第一装置的刷新地址计数器的值偏离至少一个其它装置的刷新地址计数器的值)。
77.还公开了一种存储器系统。根据各种实施例,该存储器系统可以包含一或多个存储器装置,该一或多个存储器装置包含一或多个存储器单元阵列,例如存储器单元阵列102(见图1)。一或多个存储器单元阵列可以包含多个存储器单元。
78.图8是根据本文描述的一或多个实施例实现的存储器系统800的简化框图。可以包含例如一或多个半导体装置的存储系统800包含多个存储器装置802和控制器804。可以包含多个存储体的每个存储器装置802可以包含多个存储器单元。例如,存储器装置802可以是存储器模块的一部分。
79.控制器804可以可操作地与每个存储器装置802耦合,以便能够从每个存储器装置802内的任何或所有存储器单元读取数据或向其写入数据。控制器804和/或存储器装置802可以包含本文描述的各种部件、电路(例如,计数器)和/或装置中的一或多个。
80.还公开了一种系统。根据各种实施例,该系统可以包含存储器装置,该存储器装置包含多个存储体,每个存储体具有存储器单元阵列。每个存储器单元可以包含存取晶体管和与存取晶体管可操作地耦合的存储元件。
81.图9是根据本文描述的一或多个实施例实现的电子系统900的简化框图。电子系统900包含至少一个输入装置902,其可以包含例如键盘、鼠标或触摸屏。电子系统900进一步包含至少一个输出装置904,例如监视器、触摸屏或扬声器。输入装置902和输出装置904不是必须彼此分离的。电子系统900进一步包含存储装置906。输入装置902、输出装置904和存
储装置906可以耦合到处理器908。电子系统900进一步包含耦合到处理器908的存储器装置910。可以包含图8的存储器系统800的至少一部分的存储器装置910可以包含存储器单元阵列。电子系统900可以包含例如计算、处理、工业或消费产品。例如,但不限于,电子系统900可以包含个人计算机或计算机硬件部件、服务器或其它网络硬件部件、数据库引擎、入侵防御系统、手持装置、平板计算机、电子笔记本、照相机、电话、音乐播放器、无线装置、显示器、芯片组、游戏、车辆或其它已知系统。
82.对一个dimm中的多个内存装置进行唯一编程和/或对一个存储器系统中的多个dimm进行唯一编程可以降低单个dimm中的多个装置和/或一个系统中的多个dimm出现故障的可能性(例如,由于行锤击攻击)。因此,与传统的系统、装置和方法相比,本公开的各种实施例可以减少故障的次数(例如,由于行锤击攻击)。
83.本公开的各种实施例可以包含一种方法。该方法可以包含调整一列内的多个存储器装置中的至少一个存储器装置的刷新地址计数器的计数,使得该至少一个存储器装置的刷新地址计数器的计数偏离该列内的多个存储器装置中的至少一个其它存储器装置的刷新地址计数器的计数。该方法还可以包含在多个存储器装置的每一个处接收刷新命令。进一步地,该方法可以包含在多个存储器装置的每一个处刷新由相关联的刷新地址计数器的计数指示的一行存储器单元。
84.根据其它实施例,一种方法可以包含在共享刷新命令总线的多个存储器装置的每一个处接收刷新命令。该方法还可以包含对于多个存储器装置中的每一个,识别由存储器装置的刷新地址计数器的值指示的存储器装置的一行存储器单元。进一步地,多个存储器装置中的第一存储器装置的刷新地址计数器的值偏离多个存储器装置中的至少一个其它存储器装置的刷新地址计数器的值。此外,该方法可以包含在多个存储器装置的每一个处刷新一行识别的存储器单元。
85.本公开的一些实施例包含一种存储器模块。该存储器模块可以包含一列的多个存储器装置。该列的多个存储器装置中的每个存储器装置包含存储器单元阵列和具有索引的刷新地址计数器。该列的每个存储器装置包含对于该列唯一的索引。此外,该列的多个存储器装置中的每个存储器装置包含控制器,该控制器耦合到刷新地址计数器,并且被配置为响应于接收到刷新命令,基于刷新地址计数器的索引来刷新一行存储器单元阵列。
86.本公开的附加实施例包含一种电子系统。该电子系统可以包含至少一个输入装置、至少一个输出装置和至少一个可操作地耦合到输入装置和输出装置的处理器装置。该电子系统还可以包含一个列,该列包含可操作地耦合到至少一个处理器装置的多个存储器装置。该列的多个存储器装置中的每个存储器装置包括计数器,该计数器具有从该多个存储器装置中的至少一个其它存储器装置偏移的计数值。进一步地,多个存储器装置中的每个存储器装置被配置为响应于刷新命令,基于相应计数器的相关联计数值来刷新一行存储器单元。
87.根据通常的实践,附图中所示的各种特征可以不按比例绘制。本公开中呈现的图示并不意味着任何特定设备(例如,装置、系统等)或方法的实际视图,而仅仅是用于描述本公开的各种实施例的理想化表示。因此,为了清楚起见,各种特征的尺寸可以任意扩大或缩小。此外,为了清楚起见,可以简化一些附图。因此,附图可能没有描绘给定设备(例如,装置)的所有部件或特定方法的所有操作。
88.如本文所使用的,术语“装置”或“存储器装置”可以包含具有存储器的装置,但不限于仅具有存储器的装置。例如,装置或存储器装置可以包含存储器、处理器和/或其它部件或功能。例如,装置或存储器装置可以包含片上系统(soc)。
89.本文使用的术语,尤其是在所附权利要求中使用的术语(例如,所附权利要求的主体)通常被认为是“开放式”术语(例如,术语“包含(including)”应该被解释为“包含但不限于”,术语“具有”应该被解释为“至少具有”,术语“包含(includes)”应该被解释为“包含但不限于”等)。
90.附加地,如果引入的权利要求陈述的特定数量是有意的,则此意图将在权利要求中被明确地陈述,并且在没有该陈述的情况下,不存在此意图。例如,为了帮助理解,以下所附权利要求可以包含介绍性短语“至少一个”和“一或多个”的使用,以介绍权利要求陈述。然而,此类短语的使用不应解释为暗示由量词“一”或“一个”引入权利要求陈述将包含此类引入的权利要求陈述的任何特定权利要求限制为仅包含一个此类陈述的实施例,即使当相同的权利要求包含引入短语“一或多个”或“至少一个”以及量词例如“一”或“一个”(例如,“一”和/或“一个”应解释为意味着“至少一个”或“一或多个”)时也是如此;这同样适用于用于介绍权利要求陈述的“所述”的使用。如本文所使用的,“和/或”包含一或多个相关列出项目的任何和所有组合。
91.此外,即使引入的权利要求陈述的具体数量被明确陈述,应理解的是,该陈述应被解释为意味着至少陈述的数量(例如,没有其它修饰语的“两个陈述”的简单陈述,意味着至少两个陈述,或者两个或更多陈述)。此外,在类似于“a、b和c等中的至少一个”或“a、b和c等中的一或多个”的约定的那些情况下,通常,该结构旨在包含单独的a、单独的b、单独的c、a和b一起、a和c一起、b和c一起、或a、b和c一起等。例如,术语“和/或”的使用旨在以这种方式解释。
92.进一步地,无论是在说明书、权利要求书还是附图中,呈现两个或更多个可替代的术语的任何析取词或短语都应被理解为考虑包含术语中的一个、术语中的任一个或两个术语的可能性。例如,短语“a或b”应理解为包含“a”或“b”或“a和b”的可能性。
93.附加地,术语“第一”、“第二”、“第三”等的使用,在本文中不一定用于暗示元件的特定的顺序或数量。通常,术语“第一”、“第二”、“第三”等作为通用标识符用于区分不同元件。如果没有表明术语“第一”、“第二”、“第三”等暗示特定的顺序,则这些术语不应被理解为暗示特定的顺序。此外,如果没有表明术语“第一”、“第二”、“第三”等暗示元件的特定数量,则这些术语不应该被理解为暗示元件的特定数量。
94.以上描述的并且在附图中示出的本公开的实施例不限制本公开的范围,本公开的范围由所附权利要求及其法律等同物的范围所涵盖。任何等同的实施例都在本公开的范围内。事实上,除了本文示出和描述的那些之外,本公开的各种修改,例如所描述的元件的可替代的有用组合,对于本领域技术人员来说将从描述中变得显而易见。此类修改和实施例也落入所附权利要求和等同物的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1