CN115841831B - 一种刷新电路及存储器 - Google Patents
一种刷新电路及存储器 Download PDFInfo
- Publication number
- CN115841831B CN115841831B CN202310103183.9A CN202310103183A CN115841831B CN 115841831 B CN115841831 B CN 115841831B CN 202310103183 A CN202310103183 A CN 202310103183A CN 115841831 B CN115841831 B CN 115841831B
- Authority
- CN
- China
- Prior art keywords
- address
- refresh
- output
- victim
- row address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 claims abstract description 39
- 230000004044 response Effects 0.000 claims description 22
- 230000004913 activation Effects 0.000 claims description 9
- 230000001681 protective effect Effects 0.000 abstract description 50
- 238000010586 diagram Methods 0.000 description 21
- 238000000034 method Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 7
- 230000000295 complement effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/408—Address circuits
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
- Read Only Memory (AREA)
Abstract
本公开涉及集成电路领域,公开了一种刷新电路及存储器。其中,刷新电路包括:刷新命令检测模块,被配置为接收刷新命令,并对刷新命令进行计数以生成计数值,根据计数值生成n个地址选择信号;n为正整数;受害行地址输出模块,连接刷新命令检测模块,被配置为接收地址选择信号,根据地址选择信号,将与锤击行地址关联的2n个受害行地址中的全部或部分依次选择输出;执行模块,连接受害行地址输出模块,被配置为在执行当前刷新命令期间对2n个受害行地址执行刷新操作。本公开实施例能够提高保护性刷新的范围,从而更有效地有效解决行锤问题。
Description
技术领域
本公开涉及集成电路领域,具体涉及一种刷新电路及存储器。
背景技术
随着半导体制造工艺水平的逐渐提高,存储器的密度不断增加,存储器单元物理尺寸越来越小缩小,存储器单元中的字线在物理上更接近,相邻的字线之间的电容耦合增大,存储单元上存储的数据也越来越容易受到相邻存储行的影响。
同时,随着存储器工作频率的提升,字线被开启的时间缩短,因字线频繁开启或长时间开启会导致的存储器行锤(Row Hammer)问题越来越严重,如何有效解决行锤问题,是当前亟待解决的问题。
发明内容
有鉴于此,本公开实施例提供了一种刷新电路及存储器,能够提高保护性刷新的范围,从而更有效地有效解决行锤问题。
本公开实施例的技术方案是这样实现的:
本公开实施例提供了一种刷新电路,所述刷新电路包括:刷新命令检测模块,被配置为接收刷新命令,并对所述刷新命令进行计数以生成计数值,根据所述计数值生成n个地址选择信号;n为正整数;受害行地址输出模块,连接所述刷新命令检测模块,被配置为接收所述地址选择信号,根据所述地址选择信号,将与锤击行地址关联的2n个受害行地址中的全部或部分依次选择输出;执行模块,连接所述受害行地址输出模块,被配置为在执行当前刷新命令期间对所述受害行地址输出模块输出的所述受害行地址执行刷新操作。
上述方案中,2n个所述受害行地址包括:n个第一受害行地址和n个第二受害行地址;所述受害行地址输出模块,还被配置为接收切换信号,响应于所述切换信号,选择n个所述第一受害行地址中的一个进行输出,或者,选择n个所述第二受害行地址中的一个进行输出;所述执行模块,还被配置为产生并输出所述切换信号,在对n个所述第一受害行地址中的一个执行刷新操作之后,将所述切换信号置为第一电平值,或者,在对n个所述第二受害行地址中的一个执行刷新操作之后,将所述切换信号置为第二电平值。
上述方案中,n个所述第一受害行地址位于所述锤击行地址的一侧,n个所述第二受害行地址位于所述锤击行地址的另一侧。
上述方案中,所述受害行地址输出模块包括:锤击行地址选择单元,被配置为选择并输出所述锤击行地址;受害行地址生成单元,连接所述锤击行地址选择单元,被配置为获取所述锤击行地址,并在所述锤击行地址的基础上逐级累加和累减,生成2n个所述受害行地址;选择输出单元,连接所述受害行地址生成单元,被配置为接收n个所述地址选择信号和所述切换信号,响应于n个所述地址选择信号和所述切换信号,将n个所述第一受害行地址和n个所述第二受害行地址依次选择并从其输出端输出。
上述方案中,所述锤击行地址选择单元,还被配置为在行地址中选择被开启次数最多的一个,作为所述锤击行地址。
上述方案中,所述锤击行地址选择单元,还被配置为接收n个所述地址选择信号和所述切换信号,并在n个所述地址选择信号和所述切换信号指示2n个所述受害行地址均被选择输出后,更新所述锤击行地址。
上述方案中,所述受害行地址生成单元包括:n个加法器和n个减法器;n个所述加法器依次首尾相连,且第1个所述加法器接收所述锤击行地址;n个所述加法器的输出端分别输出一个所述第一受害行地址;n个所述减法器依次首尾相连,且第1个所述减法器接收所述锤击行地址;n个所述减法器的输出端分别输出一个所述第二受害行地址。
上述方案中,所述选择输出单元包括:第一地址选择单元,第二地址选择单元和地址切换单元;所述第一地址选择单元,连接所述刷新命令检测模块和所述受害行地址生成单元,被配置为接收n个所述地址选择信号和n个所述第一受害行地址,响应于n个所述地址选择信号的控制,将n个所述第一受害行地址依次选择输出;所述第二地址选择单元,连接所述刷新命令检测模块和所述受害行地址生成单元,被配置为接收n个所述地址选择信号和n个所述第二受害行地址,响应于n个所述地址选择信号的控制,将n个所述第二受害行地址依次选择输出;所述地址切换单元,连接所述第一地址选择单元和所述第二地址选择单元,被配置为接收所述切换信号,响应于所述切换信号的控制,从所述第一地址选择单元输出的第一受害行地址和所述第二地址选择单元输出的第二受害行地址中选择一个输出。
上述方案中,所述第一地址选择单元包括:n个级联的第一数据选择器;每一级所述第一数据选择器的第一输入端连接下一级所述第一数据选择器的输出端,最后一级所述第一数据选择器的第一输入端接收第1个所述第一受害行地址;第i级所述第一数据选择器的第二输入端接收第i个所述第一受害行地址,第i级所述数据选择器的控制端接收第i个所述地址选择信号,其中,i大于等于1,且小于等于n。
上述方案中,所述第二地址选择单元包括:n个级联的第二数据选择器;每一级所述第二数据选择器的第一输入端连接下一级所述第二数据选择器的输出端,最后一级所述第二数据选择器的第一输入端接收第1个所述第二受害行地址;第i级所述第二数据选择器的第二输入端接收第i个所述第二受害行地址,第i级所述数据选择器的控制端接收第i个所述地址选择信号。
上述方案中,所述地址切换单元包括:第三数据选择器;所述第三数据选择器的第一输入端连接第1级所述第一数据选择器的输出端,所述第三数据选择器的第二输入端连接第1级所述第二数据选择器的输出端,所述第三数据选择器的控制端从所述执行模块接收所述切换信号,所述第三数据选择器的输出端作为所述选择输出单元的输出端。
上述方案中,所述刷新命令检测模块,还被配置为接收激活命令,响应于所述激活命令,对n个所述地址选择信号执行复位操作。
上述方案中,所述受害行地址输出模块,还被配置为在所述地址选择信号被复位时,重新选取所述锤击行地址。
上述方案中,所述刷新命令检测模块包括:计数模块和编码模块;所述计数模块,被配置为接收所述刷新命令,对所述刷新命令进行计数以生成计数值;所述编码模块,连接所述计数模块,被配置为对所述计数值编码,生成并输出n个所述地址选择信号。
上述方案中,所述计数模块包括:m个级联的D触发器;其中,2m大于或等于n;第1级所述D触发器的时钟输入端接收刷新命令;每一级所述D触发器的反相输出端连接其数据输入端,每一级所述D触发器的反相输出端还连接下一级所述D触发器的时钟输入端;每一级所述D触发器的复位端均接收所述激活命令。
上述方案中,所述编码模块包括:n个与门;每个所述与门的m个输入端,分别耦接m个所述D触发器的同相输出端或反相输出端;任意两个所述与门均不具有完全相同的输入;n个所述与门的输出端一一对应输出n个所述地址选择信号。
上述方案中,所述刷新电路还包括:命令解码模块;所述命令解码模块,连接所述刷新命令检测模块,被配置为解码出所述刷新命令和所述激活命令,并将所述刷新命令和所述激活命令发送至所述刷新命令检测模块。
本公开实施例还提供了一种存储器,所述存储器包括上述方案中所述的刷新电路。
上述方案中,所述存储器为DRAM。
由此可见,本公开实施例提供了一种刷新电路及存储器。其中,刷新电路包括:刷新命令检测模块,被配置为接收刷新命令,并对刷新命令进行计数以生成计数值,根据计数值生成n个地址选择信号;n为正整数;受害行地址输出模块,连接刷新命令检测模块,被配置为接收地址选择信号,根据地址选择信号,将与锤击行地址关联的2n个受害行地址中的全部或部分依次选择输出;执行模块,连接受害行地址输出模块,被配置为在执行当前刷新命令期间对所述受害行地址输出模块输出的受害行地址执行刷新操作。这样,在突发刷新期间,可以对锤击行附近的较大范围(例如,在锤击行地址基础上+1/-1、+2/-2或者+3/-3)的存储行进行保护性刷新,提高了保护性刷新的范围,从而,能够更有效地解决突发刷新期间的行锤问题。同时,由于随着工艺的发展,存储器的工作频率提升,行锤问题的影响范围也会扩大,因此,本公开实施例能够更适应于先进的工艺。
附图说明
图1为描述突发刷新的示意图;
图2为描述行锤击问题的示意图;
图3为本公开实施例提供的刷新电路的结构示意图一;
图4为本公开实施例提供的刷新电路的信号示意图一;
图5为本公开实施例提供的刷新电路中受害行地址输出模块的结构示意图;
图6为本公开实施例提供的刷新电路中受害行地址生成单元的结构示意图一;
图7为本公开实施例提供的刷新电路中受害行地址生成单元的结构示意图二;
图8为本公开实施例提供的刷新电路中选择输出单元的结构示意图一;
图9为本公开实施例提供的刷新电路中选择输出单元的结构示意图二;
图10为本公开实施例提供的刷新电路中选择输出单元的结构示意图三;
图11为本公开实施例提供的刷新电路中刷新命令检测模块的结构示意图;
图12为本公开实施例提供的刷新电路中计数模块的结构示意图一;
图13为本公开实施例提供的刷新电路中计数模块的结构示意图二;
图14为本公开实施例提供的刷新电路中编码模块的结构示意图一;
图15为本公开实施例提供的刷新电路中编码模块的结构示意图二;
图16为本公开实施例提供的刷新电路的信号示意图二;
图17为本公开实施例提供的刷新电路的结构示意图二;
图18为本公开实施例提供的存储器的结构示意图。
实施方式
为了使本公开的目的、技术方案和优点更加清楚,下面结合附图和实施例对本公开的技术方案进一步详细阐述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
如果发明文件中出现“第一/第二”的类似描述则增加以下的说明,在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开实施例的目的,不是旨在限制本公开。
以下是本公开中相关技术用语的解释:
Row Hammer(行锤):是存储器中的一个漏洞,其主要表现是:当攻击者敲打(Hammering)存储器的特定某几行时,在电磁干扰的作用下,会导致其它行的存储单元相应地翻转(flipping)。
Victim Row(受害行):因为Row Hammer问题而发生翻转的存储单元行。
Auto-Refresh(自动刷新):每隔一定的时间,存储器中自发进行的刷新;其中,进行刷新的存储体(bank)和Row地址由内部的刷新控制器确定。
burst refresh(突发刷新):由突发操作带来的刷新,用以弥补读/写操作期间未进行的Auto-Refresh;执行burst refresh期间,存储器会暂停读/写操作且不发出激活命令。
图1示例出了存储器中的自动刷新和突发刷新。参考图1,在自动刷新期间,每间隔tREFI便有一个刷新命令被发出;而在读/写操作期间,自动刷新会暂停,刷新命令的发出也会暂停。相应的,在读/写操作完成后,存储器中会加入突发刷新,以弥补读/写操作中缺少的刷新。突发刷新期间,刷新命令被集中地发出。以图1为例,读/写操作持续时间为9*tREFI,则缺失了8个刷新命令;那么,在突发刷新期间,会有8个刷新命令被集中地发出,相邻两个刷新命令之间时间间隔为tRFC。
需要说明的是,在存储器中,例如在DRAM(动态随机存取存储器)中,会存在RowHammer的问题。这样,对存储器的单个区域进行的读写有可能干扰到邻近的区域,导致电流流入或流出邻近的存储单元。进而,如果反复进行大量读写,有可能改变邻近存储单元的内容,使得0变成1,或者1变成0,这种现象被称为比特翻转(bit-flipping)。比特翻转可被利用于获取更高的权限,例如,利用比特翻转对数据进行暴力修改,从而威胁到数据的安全。
如图2所示,在激活命令的触发下,存储器会执行读/写操作,进而,反复进行了大量读写的存储器行会成为锤击行,相应的,锤击行相邻的存储器行会成为受害行,受害行中有发生比特翻转的风险。也就是说,连续的读/写操作会积累大量锤击行地址。
相关技术中,对于Row Hammer问题的防护设计是:进行Target Row Refresh(目标行刷新)。Target Row Refresh的具体做法是:抓取潜在的Row Hammer的Victim Row地址,将其嵌入到Auto-Refresh中,以对Victim Row地址进行保护性刷新,来避免出现比特翻转。例如,可以在每个Auto-Refresh的tRFC的时间区间内,取出特定的时间,专门针对RowHammer问题进行保护性刷新,也即,在Row Hammer保护时间内,对Victim Row地址进行保护性刷新;其中,可以从两次刷新命令的tREFI间隔内,选取行锤击可能性最大的行地址(RowHammer)的相邻行地址作为受害行地址(Victim Row)。
但是,地址被激活需要激活命令的触发,而burst refresh期间并没有激活命令发出,也就是说,无法在burst refresh期间选取被激活的地址作为Victim Row地址。因此,通常是在几次burst refresh的Row Hammer保护时间内,对固定的地址(即reset地址)进行保护性刷新。然而,这样做的话,一方面,对reset地址的重复刷新,可能带来新的Row Hammer问题,改变reset地址邻近的存储单元的内容。另一方面,在执行burst refresh前,通常会存在连续读/写的情况,原因在于:在连续读/写的一段时间内没有刷新命令,从而在连续读/写完成后,需要采用burst refresh弥补缺失的刷新命令。同时,由于在连续读/写的一段时间存储器在大量的存储行地址激活操作,会积累很多行锤击行地址和受害行地址;但是,由于连续读/写期间没有刷新命令,从而可能导致这些受害行地址不能及时被刷新,例如,对于DDR5,精细刷新模式下,连续读/写操作可能维持9*tREFI,即每隔9*tREFI才会触发一次保护性刷新,在正常刷新模式下,连续读/写操作可能维持5*tREFI,即每隔5*tREFI才会触发一次保护性刷新,这样,会更加难以解决Row Hammer问题,提高了设计难度。
综上,相关技术中,在存储器的burst refresh期间,难以有效解决Row Hammer问题。
图3是本公开实施例提供的刷新电路的一个可选的结构示意图,如图3所示,刷新电路包括:刷新命令检测模块101、受害行地址输出模块102和执行模块103。刷新命令检测模块101,被配置为接收刷新命令REF,并对刷新命令REF进行计数以生成计数值,根据计数值生成n个地址选择信号Burst_Flag,n为正整数。受害行地址输出模块102,连接刷新命令检测模块101,被配置为接收地址选择信号Burst_Flag,根据地址选择信号Burst_Flag,将与锤击行地址关联的2n个受害行地址Victim_Addr中的全部或部分依次选择输出。执行模块103,连接受害行地址输出模块102,被配置为在执行当前刷新命令期间对受害行地址输出模块102输出的受害行地址Victim_Addr执行刷新操作。
本公开实施例中,参考图3,刷新命令REF是在存储器的burst refresh期间发出的,因此,能够在burst refresh期间,控制对受害行地址的保护性刷新,以解决Row Hammer问题。每个刷新命令REF对应一个命令脉冲,burst refresh期间的多个刷新命令REF为连续多个命令脉冲,进而,刷新命令检测模块101可以统计连续接收到的刷新命令REF的数量(即命令脉冲的数量),以生成n个地址选择信号Burst_Flag。刷新命令REF的不同计数值,分别对应着不同的地址选择信号Burst_Flag,因此,任意两个地址选择信号Burst_Flag的被置为高电平时间均不同。
图4是刷新命令和地址选择信号的一种可选的波形示意图。在本公开的一些实施例中,如图4所示,地址选择信号共有8个,分别为Burst1_Flag至Burst8_Flag。在突发刷新(burst refresh)模式下,控制器不发送激活命令ACT(即激活命令ACT保持低电平),在控制器连续发送8个刷新命令REF时,Burst1_Flag到Burst8_Flag随着刷新命令REF的数量增加依次被置为高电平。具体地,当连续接收到的刷新命令REF的数量达到1时,则仅第1个地址选择信号Burst1_Flag被置为高电平,其余7个地址选择信号被置为低电平;当接收到的刷新命令REF的数量达到2时,则仅第2个地址选择信号Burst2_Flag被置为高电平,其余7个地址选择信号被置为低电平;依次类推,直至最后一个地址选择信号Burst8_Flag被置为高电平。
需要说明的是,每个刷新命令REF期间,可以进行多次刷新,其中,可以预留几次给Row Hammer问题的保护性刷新,本公开中以预留2次刷新作为保护性刷新操作。本公开实施例中的2n个受害行地址Victim_Addr,可以在每个刷新命令REF期间预留的2次保护性刷新操作中进行刷新。并且,每次刷新可以同时针对多个受害行地址进行,例如,仅针对锤击行地址+1的1个受害行地址进行刷新,或者针对锤击行地址+1和+2的2个受害行地址同时进行刷新,或者针对锤击行地址+1、+2、+3和+4的4个受害行地址同时进行刷新。因此,执行模块103可以在一个地址选择信号Burst_Flag的触发下,完成针对多个受害行地址的保护性刷新。例如,执行模块103可以利用本次刷新命令REF期间预留的2次保护性刷新操作,对锤击行地址+1的受害行地址进行1次保护性刷新,再对锤击行地址-1的受害行地址进行另1次保护性刷新,或者,对锤击行地址+1和+2的2个受害行地址同时进行1次保护性刷新,再对锤击行地址-1和-2的2个受害行地址同时进行另1次保护性刷新,或者,对锤击行地址+1、+2、+3和+4的4个受害行地址同时进行1次保护性刷新,再对锤击行地址-1、-2、-3和-4的4个受害行地址同时进行另1次保护性刷新。这样,便可以在当前地址选择信号Burst_Flag期间(当前刷新命令REF期间),完成对多个受害行地址的保护性刷新。
本公开另外一个实施例中,参考图3,刷新命令检测模块101还被配置为接收使能信号,根据使能信号控制刷新命令检测模块的启动。本公开又一实施例中,控制器(图3中未示出)在发送刷新命令REF时,可以同时发送一个突发刷新的标识信号,该标识信号可以作为刷新命令检测模块101的使能信号。这样,在无标识信号的情况下,无需启动刷新电路,刷新命令检测模块101可以控制刷新电路停止作用,从而节省了刷新电路的功耗。
本公开实施例中,继续参考图3,受害行地址输出模块102会在n个地址选择信号Burst_Flag的控制下,将2n个受害行地址Victim_Addr中的全部或部分依次选择输出。其中,受害行地址Victim_Addr可以位于锤击行地址附近,例如,在锤击行地址基础上+1/-1、+2/-2或者+3/-3,由此得到受害行地址Victim_Addr。锤击行地址则可以是在当前的burstrefresh之前,被开启次数最多的行地址。
在一些实施例中,突发刷新(burst refresh)模式下,控制器连续发送的刷新命令的数量是可变的。在连续发送的刷新命令的数量不同时,如前所述,n个地址选择信号随着突发刷新命令的数量的增加,可被置为高电平的地址选择信号的数量不同(即不一定为n),进而,响应于n个地址选择信号可从2n个受害行地址中依次选择输出的地址数量也不同。例如,连续发送的刷新命令的数量为4-9中的任意数值,对突发刷新命令的计数最大值也是4-9;在连续发送的刷新命令的数量为4时,n(n=9)个地址选择信号随着突发刷新命令数量的增加可被置为高电平的地址选择信号为Burst1_Flag到Burst4_Flag,响应于n个地址选择信号可从2n个受害行地址中选择输出8个地址;同理,在连续发送的刷新命令的数量为9时,响应于n个地址选择信号可从2n个受害行地址中选择输出18个地址。
本公开实施例中,继续参考图3,执行模块103可以对受害行地址Victim_Addr执行保护性刷新。也就是说,执行模块103可以将受害行地址Victim_Addr中存储的内容,刷新至应有的值,从而,消除锤击行地址带来的影响。
可以理解的是,在burst refresh期间,对刷新命令REF计数以生成n个地址选择信号Burst_Flag,进而,选择出与锤击行地址关联的2n个受害行地址Victim_Addr以执行保护性刷新。这样,在burst refresh期间,可以对锤击行附近的较大范围(例如,在锤击行地址基础上+1/-1、+2/-2或者+3/-3)的存储行进行保护性刷新,提高了保护性刷新的范围,从而能够更有效地解决burst refresh期间的Row Hammer问题。
同时,由于随着工艺的发展,存储器的工作频率提升,读写的频率会增大,
从而,Row Hammer问题的影响范围也会扩大,锤击行会对附近更大范围的的存储行造成影响。因此,本公开实施例提供的刷新电路,能够更适应于先进的工艺,以解决RowHammer问题。
在本公开的一些实施例中,参考图3,2n个受害行地址Victim_Addr包括:n个第一受害行地址和n个第二受害行地址。受害行地址输出模块102,还被配置为接收切换信号Ex_Flag,响应于切换信号Ex_Flag,选择n个第一受害行地址中的一个进行输出,或者,选择n个第二受害行地址中的一个进行输出。执行模块103,还被配置为产生并输出切换信号Ex_Flag,在对n个第一受害行地址中的一个执行刷新操作之后,将切换信号Ex_Flag置为第一电平值,或者,在对n个第二受害行地址中的一个执行刷新操作之后,将切换信号Ex_Flag置为第二电平值。
本公开实施例中,继续参考图3,受害行地址输出模块102可以在切换信号Ex_Flag为第一电平值的情况下,选择n个第二受害行地址中的一个进行输出;进而,执行模块103接收到n个第二受害行地址中的一个以执行刷新操作,在完成刷新操作之后,将切换信号Ex_Flag置为第二电平值。相应的,受害行地址输出模块102可以在切换信号Ex_Flag为第二电平值的情况下,选择n个第一受害行地址中的一个进行输出;进而,执行模块103接收到n个第一受害行地址中的一个以执行刷新操作,在完成刷新操作之后,将切换信号Ex_Flag置为第一电平值。这样,第一受害行地址和第二受害行地址能够被受害行地址输出模块102依次输出,从而,保证了保护性刷新能够有序地进行。
在本公开的一些实施例中,n个第一受害行地址位于锤击行地址的一侧,n个第二受害行地址位于锤击行地址的另一侧。也就是说,n个第一受害行地址比锤击行地址更大,而n个第二受害行地址比锤击行地址更小;或者,n个第一受害行地址比锤击行地址更小,而n个第二受害行地址比锤击行地址更大。例如,n个第一受害行地址为锤击行地址基础上+1、+2或者+3的行地址,而n个第二受害行地址为锤击行地址基础上-1、-2或者-3的行地址。
可以理解的是,2n个受害行地址覆盖了锤击行地址的两侧范围,这样,完善了保护性刷新的范围,能够更全面地进行保护性刷新。
在本公开的一些实施例中,如图5所示,受害行地址输出模块102包括:锤击行地址选择单元201、受害行地址生成单元202和选择输出单元203。锤击行地址选择单元201,被配置为选择并输出锤击行地址Hammer_Addr。受害行地址生成单元202,连接锤击行地址选择单元201,被配置为获取锤击行地址Hammer_Addr,并在锤击行地址Hammer_Addr的基础上逐级累加和累减,生成2n个受害行地址(包括n个第一受害行地址Addr_P和n个第二受害行地址Addr_M)。选择输出单元203,连接受害行地址生成单元202,被配置为接收n个地址选择信号Burst_Flag和切换信号Ex_Flag,响应于n个地址选择信号Burst_Flag和切换信号Ex_Flag,将n个第一受害行地址Addr_P和n个第二受害行地址Addr_M依次选择并从其输出端输出。
在本公开的一些实施例中,参考图5,锤击行地址选择单元201,还被配置为在行地址中选择被开启次数最多的一个,作为锤击行地址Hammer_Addr。
需要说明的是,本公开实施例提供的刷新电路是在burst refresh期间执行保护性刷新的,而在当前的burst refresh之前,被开启次数最多的行地址更有可能对附近的行地址产生干扰。因此,将当前的burst refresh之前被开启次数最多的行地址,作为锤击行地址Hammer_Addr,这样,可以有针对性地进行保护性刷新,从而提高了保护性刷新的效果。
在本公开的一些实施例中,锤击行地址选择单元201,还被配置为接收n个地址选择信号Burst_Flag和切换信号Ex_Flag,并在n个地址选择信号Burst_Flag和切换信号Ex_Flag指示2n个受害行地址Victim_Addr均被选择输出后,更新锤击行地址Hammer_Addr。例如,地址选择信号Burst_Flag的数量为5个,5个地址选择信号Burst_Flag为10000,即,第5个地址选择信号Burst_Flag为1,其它地址选择信号Burst_Flag为0;此时,若切换信号Ex_Flag发生电平翻转,则可认为2n个所述受害行地址Victim_Addr均已被选择输出过;进而,锤击行地址选择单元201可以更新锤击行地址Hammer_Addr,以针对新的锤击行地址Hammer_Addr进行保护性刷新。
可以理解的是,在2n个受害行地址Victim_Addr均被选择输出后,更新锤击行地址Hammer_Addr,以针对新的锤击行地址Hammer_Addr进行保护性刷新,这样,可以扩大保护性刷新的范围,从而提高了保护性刷新的效果。
在本公开的一些实施例中,参考图6,受害行地址生成单元202包括:n个加法器204和n个减法器205。n个加法器204依次首尾相连,且第1个加法器204接收锤击行地址Hammer_Addr。n个加法器204的输出端分别输出一个第一受害行地址。n个减法器205依次首尾相连,且第1个减法器205接收锤击行地址Hammer_Addr。n个减法器205的输出端分别输出一个第二受害行地址。其中,加法器204的数量以及减法器205的数量n,可以根据需要得到的受害行地址的数量来确定。
图7示例出的加法器204的数量以及减法器205的数量均为5个,即n=5。参考图7,每个加法器204可以在其接收的行地址的基础上累加1。也就是说,第1个加法器204在锤击行地址Hammer_Addr的基础上累加1,得到第1个第一受害行地址Addr_1P;第2个加法器204在第1个第一受害行地址Addr_1P的基础上累加1,得到第2个第一受害行地址Addr_2P;以此类推,直到得到第5个第一受害行地址Addr_5P。如此,便得到了在锤击行地址Hammer_Addr的基础上+1、+2、+3、+4和+5的5个第一受害行地址。
相应的,每个减法器205可以在其接收的行地址的基础上累减1。也就是说,第1个减法器205在锤击行地址Hammer_Addr的基础上累减1,得到第1个第二受害行地址Addr_1M;第2个减法器205在第1个第二受害行地址Addr_1M的基础上累减1,得到第2个第二受害行地址Addr_2M;以此类推,直到得到第5个第二受害行地址Addr_5M。如此,便得到了在锤击行地址Hammer_Addr的基础上-1、-2、-3、-4和-5的5个第二受害行地址。
可以理解的是,通过n个加法器和n个减法器,得到与锤击行地址Hammer_Addr关联的2n个受害行地址以执行保护性刷新。这样,在burst refresh期间,可以对锤击行附近的较大范围的存储行进行保护性刷新,提高了保护性刷新的范围,从而能够更有效地解决burst refresh期间的Row Hammer问题。
在本公开的一些实施例中,参考图8,选择输出单元203包括:第一地址选择单元206,第二地址选择单元207和地址切换单元208。第一地址选择单元206,连接刷新命令检测模块和受害行地址生成单元,被配置为接收n个地址选择信号Burst_Flag和n个第一受害行地址Addr_P,响应于n个地址选择信号Burst_Flag的控制,将n个第一受害行地址Addr_P依次选择输出。第二地址选择单元207,连接刷新命令检测模块和受害行地址生成单元,被配置为接收n个地址选择信号Burst_Flag和n个第二受害行地址Addr_M,响应于n个地址选择信号Burst_Flag的控制,将n个第二受害行地址Addr_M依次选择输出。地址切换单元208,连接第一地址选择单元206和第二地址选择单元207,被配置为接收切换信号Ext_Flag,响应于切换信号Ext_Flag的控制,从第一地址选择单元206输出的第一受害行地址Addr_P和第二地址选择单元207输出的第二受害行地址Addr_M中选择一个输出。
在本公开的一些实施例中,如图9所示,第一地址选择单元206包括:n个级联的第一数据选择器209。每一级第一数据选择器209的第一输入端(即0输入端)连接下一级第一数据选择器209的输出端,最后一级第一数据选择器209的第一输入端(即0输入端)接收第1个第一受害行地址Addr_1P。第i级第一数据选择器209的第二输入端(即1输入端)接收第i个第一受害行地址,第i级数据选择器209的控制端接收第i个地址选择信号,其中,i大于等于1,且小于等于n。
图10以n=5为例,示出了5级第一数据选择器209。以图10为例,第1级第一数据选择器209的第二输入端(即1输入端)接收第1个第一受害行地址Addr_1P,第1级第一数据选择器209的控制端接收第1个地址选择信号Burst1_Flag;第2级第一数据选择器209的第二输入端(即1输入端)接收第2个第一受害行地址Addr_2P,第2级第一数据选择器209的控制端接收第2个地址选择信号Burst2_Flag;以此类推,第5级第一数据选择器209的第二输入端(即1输入端)接收第5个第一受害行地址Addr_5P,第5级第一数据选择器209的控制端接收第5个地址选择信号Burst5_Flag。
本公开实施例中,继续参考图10,当地址选择信号Burst1_Flag为高电平,其他地址选择信号均为低电平时,第1级第一数据选择器209将其第二输入端(即1输入端)接收的第一受害行地址Addr_1P输出到地址切换单元208。当地址选择信号Burst2_Flag为高电平,其他地址选择信号均为低电平时,第2级第一数据选择器209将其第二输入端(即1输入端)接收的第一受害行地址Addr_2P传输到第1级第一数据选择器209的第一输入端(即0输入端),进而,第1级第一数据选择器209将其第一输入端(即0输入端)接收的第一受害行地址Addr_2P输出到地址切换单元208。以此类推,当地址选择信号Burst5_Flag为高电平,其他地址选择信号均为低电平时,由第5级第一数据选择器209的第二输入端(即1输入端)接收的第一受害行地址Addr_5P,经过各级第一数据选择器209后,输出到地址切换单元208。也就是说,不同的地址选择信号Burst1_Flag至Burst5_Flag,分别对应输出不同的第一受害行地址Addr_1P至Addr_5P,从而,保证了第一受害行地址Addr_1P至Addr_5P能够被依次输出,保证了对受害行地址执行的保护性刷新操作能够依次进行。
本公开实施例中,继续参考图10,当地址选择信号Burst1_Flag至Burst5_Flag均为低电平时,由第5级第一数据选择器209的第一输入端(即0输入端)接收的第一受害行地址Addr_1P,经过各级第一数据选择器209后,输出到地址切换单元208。也就是说,当地址选择信号Burst1_Flag至Burst5_Flag均被复位为低电平时,第一受害行地址Addr_1P作为默认的行地址而被输出。这样,即使在没有突发刷新的情况下,依然能够在正常的自动刷新命令期间对被开启次数最多的锤击行地址的最相邻受害行地址进行保护性刷新,从而,使得不同情况下都能够针对性地进行保护性刷新,更有效地对Row Hammer问题进行了防护。
在本公开的一些实施例中,如图9所示,第二地址选择单元207包括:n个级联的第二数据选择器210。每一级第二数据选择器210的第一输入端(即0输入端)连接下一级第二数据选择器210的输出端,最后一级第二数据选择器210的第一输入端(即0输入端)接收第1个第二受害行地址Addr_1M。第i级第二数据选择器210的第二输入端(即1输入端)接收第i个第二受害行地址,第i级数据选择器210的控制端接收第i个地址选择信号,其中,i大于等于1,且小于等于n。
图10以n=5为例,示出了5级第二数据选择器210。以图10为例,第1级第二数据选择器210的第二输入端(即1输入端)接收第1个第二受害行地址Addr_1M,第1级第二数据选择器210的控制端接收第1个地址选择信号Burst1_Flag;第2级第二数据选择器210的第二输入端(即1输入端)接收第2个第二受害行地址Addr_2M,第2级第二数据选择器210的控制端接收第2个地址选择信号Burst2_Flag;以此类推,第5级第二数据选择器210的第二输入端(即1输入端)接收第5个第二受害行地址Addr_5M,第5级第二数据选择器210的控制端接收第5个地址选择信号Burst5_Flag。
本公开实施例中,继续参考图10,当地址选择信号Burst1_Flag为高电平,其他地址选择信号均为低电平时,第1级第二数据选择器210将其第二输入端(即1输入端)接收的第二受害行地址Addr_1M输出到地址切换单元208。当地址选择信号Burst2_Flag为高电平,其他地址选择信号均为低电平时,第2级第二数据选择器210将其第二输入端(即1输入端)接收的第二受害行地址Addr_2M传输到第1级第二数据选择器210的第一输入端(即0输入端),进而,第1级第二数据选择器210将其第一输入端(即0输入端)接收的第二受害行地址Addr_2M输出到地址切换单元208。以此类推,当地址选择信号Burst5_Flag为高电平,其他地址选择信号均为低电平时,由第5级第二数据选择器210的第二输入端(即1输入端)接收的第二受害行地址Addr_5M,经过各级第二数据选择器210后,输出到地址切换单元208。也就是说,不同的地址选择信号Burst1_Flag至Burst5_Flag,分别对应输出不同的第二受害行地址Addr_1M至Addr_5M,从而,保证了第二受害行地址Addr_1M至Addr_5M能够被依次输出,保证了对受害行地址执行的保护性刷新操作能够依次进行。
本公开实施例中,继续参考图10,当地址选择信号Burst1_Flag至Burst5_Flag均为低电平时,由第5级第二数据选择器210的第一输入端(即0输入端)接收的第二受害行地址Addr_1M,经过各级第二数据选择器210后,输出到地址切换单元208。也就是说,当地址选择信号Burst1_Flag至Burst5_Flag均被复位为低电平时,第二受害行地址Addr_1M作为默认的行地址而被输出。这样,即使在没有突发刷新的情况下,依然能够在正常的自动刷新命令期间对被开启次数最多的锤击行地址的最相邻受害行地址进行保护性刷新,从而,使得不同情况下都能够针对性地进行保护性刷新,更有效地对Row Hammer问题进行了防护。
在本公开的一些实施例中,参考图9或图10,地址切换单元208包括:第三数据选择器211。第三数据选择器211的第一输入端(即0输入端)连接第1级第一数据选择器209的输出端,第三数据选择器211的第二输入端(即1输入端)连接第1级第二数据选择器210的输出端,第三数据选择器211的控制端从执行模块接收切换信号Ex_Flag,第三数据选择器211的输出端作为选择输出单元的输出端。
本公开实施例中,参考图9或图10,第三数据选择器211分别从第一地址选择单元206和第二地址选择单元207接收行地址。若切换信号Ex_Flag为第一电平值,则第三数据选择器211将由第一地址选择单元206接收的行地址作为受害行地址Victim_Addr输出;若切换信号Ex_Flag为第二电平值,则第三数据选择器211将由第二地址选择单元207接收的行地址作为受害行地址Victim_Addr输出。
可以理解的是,在切换信号Ex_Flag的控制下,第一地址选择单元206输出的第一受害行地址和第二地址选择单元207输出的第二受害行地址,能够被分别依次选择输出,这样,保证了保护性刷新能够有序地进行。
在本公开的一些实施例中,参考图3,刷新命令检测模块101,还被配置为接收激活命令ACT,响应于激活命令ACT,对n个地址选择信号Burst_Flag执行复位操作。
需要说明的是,由于在burst refresh(突发刷新)期间,没有激活命令被发出,因此,激活命令ACT可以用以表征突发刷新的结束。进而,刷新命令检测模块101响应激活命令ACT,对n个地址选择信号Burst_Flag执行复位操作,以默认的受害行地址继续进行保护性刷新。其中,默认的受害行地址对应的锤击行地址是根据未被选取过的锤击行地址中被开启次数最多的一个来确定出的。其中,刷新电路会根据锤击行地址的选取情况及时对锤击行地址列表更新,删除已被选取过的锤击行地址,而后,在更新后的行地址列表中选取出被开启次数最多的一个,作为新的锤击行地址,并确定出默认的受害行地址。
可以理解的是,即使在没有突发刷新的情况下,刷新电路依然能够对受害行地址进行保护性刷新,从而,使得不同情况下都能够针对性地进行保护性刷新,从而,更有效地对Row Hammer问题进行了防护。
在本公开的一些实施例中,参考图3,刷新命令检测模块101,还被配置为在连续接收到的刷新命令REF的数量达到第i预设值时,将第i个地址选择信号Burst_Flag设置为第一电平值,将其余n-1个地址选择信号Burst_Flag设置为第二电平值;i大于等于1,且小于等于n。刷新命令检测模块101,还被配置为在执行复位操作中,将n个地址选择信号Burst_Flag均设置为第二电平值。
在本公开的一些实施例中,参考图3,受害行地址输出模块102,还被配置为,在地址选择信号Burst_Flag被复位时,重新选取锤击行地址。
本公开实施例中,在地址选择信号Burst_Flag被复位时,受害行地址输出模块102会根据锤击行地址的选取情况及时对锤击行地址列表更新,删除已被选取过的锤击行地址,而后,在更新后的行地址列表中选取出被开启次数最多的一个,作为新的锤击行地址。进而,可以针对新的锤击行地址确定出新的受害行地址,并进行保护性刷新。
这样,避免了重复对同一个行地址进行保护性刷新;从而,一方面,扩大了保护性刷新的覆盖范围,提高了保护性刷新的效果;另一方面,避免了重复对某几个锤击行地址重复进行保护性刷新,而不能解决其他锤击行造成的Row Hammer问题,导致保护性刷新达不到对整个存储体进行Row Hammer保护的效果。在本公开的一些实施例中,参考图11,刷新命令检测模块101包括:计数模块301和编码模块302。计数模块301,被配置为接收刷新命令REF,对刷新命令REF进行计数以生成计数值REF_CNT。编码模块302,连接计数模块301,被配置为对计数值REF_CNT编码,生成并输出n个地址选择信号Burst_Flag。
本公开实施例中,参考图11,计数值REF_CNT表征了连续接收到的刷新命令REF的数量,也就是说,每接收到一个刷新命令REF,则计数值REF_CNT会相应变化。进而,由计数值REF_CNT编码而成的n个地址选择信号Burst_Flag,与刷新命令REF的数量具有对应关系。这样,保证了2n个受害行地址能够被依次输出,保证了对受害行地址执行的保护性刷新操作能够依次进行。
在本公开的一些实施例中,参考图12,计数模块301包括:m个级联的D触发器303;其中,2m大于或等于n。第1级D触发器303的时钟输入端CLK接收刷新命令REF。每一级D触发器303的反相输出端QB连接其数据输入端D,每一级D触发器303的反相输出端QB还连接下一级D触发器303的时钟输入端CLK。每一级D触发器303的复位端RST均接收激活命令ACT。
需要说明的是,D触发器303的数量m,首先需要满足其最大计数值可覆盖burstrefresh模式下连续刷新命令的数量,另外,还可以根据需要生成的地址选择信号的数量n来确定,即满足2m大于或等于n,例如,若n=5,则m需要大于或等于3。
图13示例出的D触发器303的数量为4个,即m=4。参考图13,第1级D触发器303的时钟输入端CLK接收刷新命令REF。每级D触发器303的反相输出端QB连接其数据输入端D,每级D触发器的反相输出端QB还连接下一级D触发器的时钟输入端CLK。每级D触发器的同相输出端Q输出对应的计数值REF_CNT0至REF_CNT3,每级D触发器的反相输出端QB输出对应的互补计数值REF_CNTB0至REF_CNTB3,其中,计数值REF_CNT0和互补计数值REF_CNTB0互为反相,以此类推,其他计数值与对应的互补计数值也互为反相。
本公开实施例中,继续参考图13,每级D触发器303的复位端RST接收激活命令ACT。激活命令ACT可以控制每级D触发器303将其输出的计数值和互补计数值复位,从而将n个地址选择信号复位。
在本公开的一些实施例中,参考图14,编码模块302包括:n个与门304。
结合图12和图14,每个与门304的m个输入端,分别耦接m个D触发器303的同相输出端Q或反相输出端QB,且任意两个与门304均不具有完全相同的输入,同时,每个与门304的两个输入端不会连接至同一级D触发器303。n个与门304的输出端一一对应输出n个地址选择信号(即Burst1_Flag至Burstn_Flag)。
图15示出的与门304为5个,即n=5。同时,图15示出的与门304对应于图13示出的D触发器303,每个与门304的输出端的数量与D触发器303的数量m相等,即当m=4的情况下,相应的,每个与门304具有4个输出端。
结合图13和图15,以m=4且n=5为例,每个与门304的m个输入端,分别连接m级D触发器303的同相输出端Q或反相输出端QB,且任意两个与门304均不具有完全相同的输入,同时,每个与门304的两个输入端不会连接至同一级D触发器303。n个与门304的输出端一一对应输出n个地址选择信号(即Burst1_Flag至Burst5_Flag)。
以图13和图15为例,第1个与门304的4个输入端分别连接至第1级D触发器303的同相输入端Q、第2级D触发器303的反相输入端QB、第3级D触发器303的反相输入端QB和第4级D触发器303的反相输入端QB;第1个与门304接收信号REF_CNT0、REF_CNTB1、REF_CNTB2和REF_CNTB3。
第2个与门304的4个输入端分别连接至第1级D触发器303的反相输入端QB、第2级D触发器303的同相输入端Q、第3级D触发器303的反相输入端QB和第4级D触发器303的反相输入端QB;第2个与门304接收信号REF_CNTB0、REF_CNT1、REF_CNTB2和REF_CNTB3。
第3个与门304的4个输入端分别连接至第1级D触发器303的同相输入端Q、第2级D触发器303的同相输入端Q、第3级D触发器303的反相输入端QB和第4级D触发器303的反相输入端QB;第3个与门304接收信号REF_CNT0、REF_CNT1、REF_CNTB2和REF_CNTB3。
第4个与门304的4个输入端分别连接至第1级D触发器303的反相输入端QB、第2级D触发器303的反相输入端QB、第3级D触发器303的同相输入端Q和第4级D触发器303的反相输入端QB;第4个与门304接收信号REF_CNTB0、REF_CNTB1、REF_CNT2和REF_CNTB3。
第5个与门304的4个输入端分别连接至第1级D触发器303的同相输入端Q、第2级D触发器303的反相输入端QB、第3级D触发器303的同相输入端Q和第4级D触发器303的反相输入端QB;第5个与门304接收信号REF_CNT0、REF_CNTB1、REF_CNT2和REF_CNTB3。
需要说明的是,图16为图13和图15对应的信号示意图,图16示出了图13和图15中部分信号的波形。另外,图16示出了图13中的计数值REF_CNT0至REF_CNT3的波形,而并未示出图13中的互补计数值REF_CNTB0至REF_CNTB3的波形;互补计数值REF_CNTB0至REF_CNTB3的波形与对应的计数值REF_CNT0至REF_CNT3的波形互为反相,可以参考计数值REF_CNT0至REF_CNT3的波形来理解。
结合图13、图15和图16,在突发刷新(burst refresh)模式下,控制器不发送激活命令ACT(即激活命令ACT保持低电平),而连续发送了8个刷新命令REF。进一步的,在burstrefresh模式下,当接收到的刷新命令REF的数量为1时,在第1个刷新命令REF的触发下,计数值REF_CNT0被置为高电平,而计数值REF_CNT1至REF_CNT3为低电平,这样,仅有第1个与门304输出的地址选择信号Burst1_Flag为高电平,其他与门304均输出低电平。
当接收到的刷新命令REF的数量为2时,在第2个刷新命令REF的触发下,计数值REF_CNT0被置为低电平,计数值REF_CNT1被置为高电平,而计数值REF_CNT2和REF_CNT3仍为低电平,这样,仅有第2个与门304输出的地址选择信号Burst2_Flag为高电平,其他与门304均输出低电平。
以此类推,在burst refresh模式下,当接收到的刷新命令REF的数量为1至5时,分别会触发第1至5个与门304输出高电平,同时,当任一个与门304输出高电平时,其他与门304均输出低电平。这样,可以保证对受害行地址执行的保护性刷新操作能够依次进行。
继续结合图13、图15和图16,在burst refresh模式结束后,控制器发送激活命令ACT(即激活命令ACT产生了脉冲),从而,4级D触发器303输出的计数值(REF_CNT0至REF_CNT3)均被重置为低电平,进而,5个与门304输出的地址选择信号(Burst1_Flag至Burst5_Flag)均保持为低电平。在这种情况下,可以确定并选择默认的受害行地址,从而继续进行保护性刷新。
在本公开的一些实施例中,参考图17,刷新电路还包括:命令解码模块104。命令解码模块104,连接刷新命令检测模块101,被配置为解码出刷新命令REF和激活命令ACT,并将刷新命令REF和激活命令ACT发送至刷新命令检测模块101。
本公开实施例还提供一种存储器,如图18所示,存储器90包括了刷新电路80。刷新电路80则包括了上述实施例中任一个的结构。
在本公开的一些实施例中,参考图18,存储器90为DRAM。其中,DRAM可以是DDR4(第4代双倍速率同步动态随机存储器)、DDR5(第5代双倍速率同步动态随机存储器)、LPDDR4(第4代低功耗双倍速率同步动态随机存储器)和LPDDR5(第5代低功耗双倍速率同步动态随机存储器)中的任一个。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。本公开所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。本公开所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。本公开所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (18)
1.一种刷新电路,其特征在于,所述刷新电路包括:
刷新命令检测模块,被配置为接收刷新命令,并对所述刷新命令进行计数以生成计数值,根据所述计数值生成n个地址选择信号;n为正整数;
受害行地址输出模块,连接所述刷新命令检测模块,被配置为接收所述地址选择信号,根据所述地址选择信号,将与锤击行地址关联的2n个受害行地址中的全部或部分依次选择输出;
执行模块,连接所述受害行地址输出模块,被配置为在执行当前刷新命令期间对所述受害行地址输出模块输出的所述受害行地址执行刷新操作;
所述受害行地址输出模块,还被配置为接收激活命令,响应于所述激活命令,对n个所述地址选择信号执行复位操作。
2.根据权利要求1所述的刷新电路,其特征在于,2n个所述受害行地址包括:n个第一受害行地址和n个第二受害行地址;
所述受害行地址输出模块,还被配置为接收切换信号,响应于所述切换信号,选择n个所述第一受害行地址中的一个进行输出,或者,选择n个所述第二受害行地址中的一个进行输出;
所述执行模块,还被配置为产生并输出所述切换信号,在对n个所述第一受害行地址中的一个执行刷新操作之后,将所述切换信号置为第一电平值,或者,在对n个所述第二受害行地址中的一个执行刷新操作之后,将所述切换信号置为第二电平值。
3.根据权利要求2所述的刷新电路,其特征在于,
n个所述第一受害行地址位于所述锤击行地址的一侧,n个所述第二受害行地址位于所述锤击行地址的另一侧。
4.根据权利要求2所述的刷新电路,其特征在于,所述受害行地址输出模块包括:
锤击行地址选择单元,被配置为选择并输出所述锤击行地址;
受害行地址生成单元,连接所述锤击行地址选择单元,被配置为获取所述锤击行地址,并在所述锤击行地址的基础上逐级累加和累减,生成2n个所述受害行地址;
选择输出单元,连接所述受害行地址生成单元,被配置为接收n个所述地址选择信号和所述切换信号,响应于n个所述地址选择信号和所述切换信号,将n个所述第一受害行地址和n个所述第二受害行地址依次选择并从其输出端输出。
5.根据权利要求4所述的刷新电路,其特征在于,
所述锤击行地址选择单元,还被配置为在行地址中选择被开启次数最多的一个,作为所述锤击行地址。
6.根据权利要求4所述的刷新电路,其特征在于,
所述锤击行地址选择单元,还被配置为接收n个所述地址选择信号和所述切换信号,并在n个所述地址选择信号和所述切换信号指示2n个所述受害行地址均被选择输出后,更新所述锤击行地址。
7.根据权利要求4所述的刷新电路,其特征在于,所述受害行地址生成单元包括:n个加法器和n个减法器;
n个所述加法器依次首尾相连,且第1个所述加法器接收所述锤击行地址;n个所述加法器的输出端分别输出一个所述第一受害行地址;
n个所述减法器依次首尾相连,且第1个所述减法器接收所述锤击行地址;n个所述减法器的输出端分别输出一个所述第二受害行地址。
8.根据权利要求4所述的刷新电路,其特征在于,所述选择输出单元包括:第一地址选择单元,第二地址选择单元和地址切换单元;
所述第一地址选择单元,连接所述刷新命令检测模块和所述受害行地址生成单元,被配置为接收n个所述地址选择信号和n个所述第一受害行地址,响应于n个所述地址选择信号的控制,将n个所述第一受害行地址依次选择输出;
所述第二地址选择单元,连接所述刷新命令检测模块和所述受害行地址生成单元,被配置为接收n个所述地址选择信号和n个所述第二受害行地址,响应于n个所述地址选择信号的控制,将n个所述第二受害行地址依次选择输出;
所述地址切换单元,连接所述第一地址选择单元和所述第二地址选择单元,被配置为接收所述切换信号,响应于所述切换信号的控制,从所述第一地址选择单元输出的第一受害行地址和所述第二地址选择单元输出的第二受害行地址中选择一个输出。
9.根据权利要求8所述的刷新电路,其特征在于,所述第一地址选择单元包括:n个级联的第一数据选择器;
每一级所述第一数据选择器的第一输入端连接下一级所述第一数据选择器的输出端,最后一级所述第一数据选择器的第一输入端接收第1个所述第一受害行地址;
第i级所述第一数据选择器的第二输入端接收第i个所述第一受害行地址,第i级所述数据选择器的控制端接收第i个所述地址选择信号,其中,i大于等于1,且小于等于n。
10.根据权利要求9所述的刷新电路,其特征在于,所述第二地址选择单元包括:n个级联的第二数据选择器;
每一级所述第二数据选择器的第一输入端连接下一级所述第二数据选择器的输出端,最后一级所述第二数据选择器的第一输入端接收第1个所述第二受害行地址;
第i级所述第二数据选择器的第二输入端接收第i个所述第二受害行地址,第i级所述数据选择器的控制端接收第i个所述地址选择信号。
11.根据权利要求10所述的刷新电路,其特征在于,所述地址切换单元包括:第三数据选择器;
所述第三数据选择器的第一输入端连接第1级所述第一数据选择器的输出端,所述第三数据选择器的第二输入端连接第1级所述第二数据选择器的输出端,所述第三数据选择器的控制端从所述执行模块接收所述切换信号,所述第三数据选择器的输出端作为所述选择输出单元的输出端。
12.根据权利要求1所述的刷新电路,其特征在于,
所述受害行地址输出模块,还被配置为在所述地址选择信号被复位时,重新选取所述锤击行地址。
13.根据权利要求12所述的刷新电路,其特征在于,所述刷新命令检测模块包括:计数模块和编码模块;
所述计数模块,被配置为接收所述刷新命令,对所述刷新命令进行计数以生成计数值;
所述编码模块,连接所述计数模块,被配置为对所述计数值编码,生成并输出n个所述地址选择信号。
14.根据权利要求13所述的刷新电路,其特征在于,所述计数模块包括:m个级联的D触发器;其中,2m大于或等于n;
第1级所述D触发器的时钟输入端接收刷新命令;
每一级所述D触发器的反相输出端连接其数据输入端,每一级所述D触发器的反相输出端还连接下一级所述D触发器的时钟输入端;
每一级所述D触发器的复位端均接收所述激活命令。
15.根据权利要求14所述的刷新电路,其特征在于,所述编码模块包括:n个与门;
每个所述与门的m个输入端,分别耦接m个所述D触发器的同相输出端或反相输出端;任意两个所述与门均不具有完全相同的输入;n个所述与门的输出端一一对应输出n个所述地址选择信号。
16.根据权利要求1所述的刷新电路,其特征在于,所述刷新电路还包括:命令解码模块;
所述命令解码模块,连接所述刷新命令检测模块,被配置为解码出所述刷新命令和所述激活命令,并将所述刷新命令和所述激活命令发送至所述刷新命令检测模块。
17.一种存储器,其特征在于,所述存储器包括如权利要求1至16任一项所述的刷新电路。
18.根据权利要求17所述的存储器,其特征在于,所述存储器为DRAM。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310103183.9A CN115841831B (zh) | 2023-02-13 | 2023-02-13 | 一种刷新电路及存储器 |
PCT/CN2023/098638 WO2024169087A1 (zh) | 2023-02-13 | 2023-06-06 | 一种刷新电路及存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310103183.9A CN115841831B (zh) | 2023-02-13 | 2023-02-13 | 一种刷新电路及存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115841831A CN115841831A (zh) | 2023-03-24 |
CN115841831B true CN115841831B (zh) | 2023-05-12 |
Family
ID=85579622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310103183.9A Active CN115841831B (zh) | 2023-02-13 | 2023-02-13 | 一种刷新电路及存储器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115841831B (zh) |
WO (1) | WO2024169087A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115841831B (zh) * | 2023-02-13 | 2023-05-12 | 长鑫存储技术有限公司 | 一种刷新电路及存储器 |
CN116030859B (zh) * | 2023-02-13 | 2023-06-16 | 长鑫存储技术有限公司 | 一种刷新控制电路及存储器 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102469065B1 (ko) * | 2016-06-03 | 2022-11-23 | 에스케이하이닉스 주식회사 | 메모리 장치 |
KR102468728B1 (ko) * | 2016-08-23 | 2022-11-21 | 에스케이하이닉스 주식회사 | 리프레쉬 제어 회로, 반도체 메모리 장치 및 그의 동작 방법 |
KR20220090937A (ko) * | 2020-12-23 | 2022-06-30 | 삼성전자주식회사 | 반도체 메모리 장치 및 이를 구비하는 메모리 시스템 |
CN115249499A (zh) * | 2021-04-28 | 2022-10-28 | 长鑫存储技术有限公司 | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 |
CN114420181B (zh) * | 2022-01-14 | 2023-09-08 | 长鑫存储技术有限公司 | 刷新电路和存储器 |
CN115841831B (zh) * | 2023-02-13 | 2023-05-12 | 长鑫存储技术有限公司 | 一种刷新电路及存储器 |
-
2023
- 2023-02-13 CN CN202310103183.9A patent/CN115841831B/zh active Active
- 2023-06-06 WO PCT/CN2023/098638 patent/WO2024169087A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
CN115841831A (zh) | 2023-03-24 |
WO2024169087A1 (zh) | 2024-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115841831B (zh) | 一种刷新电路及存储器 | |
CN112106138B (zh) | 用于行锤击刷新采样的纯时间自适应采样的设备和方法 | |
CN110678925B (zh) | 用于检测存储器的刷新不足的设备及方法 | |
CN112420107B (zh) | 用于动态刷新分配的设备及方法 | |
US10685696B2 (en) | Apparatuses and methods for access based refresh timing | |
CN108694972A (zh) | 半导体存储器件 | |
US10134461B2 (en) | Apparatuses and methods for selective row refreshes | |
US9734888B2 (en) | Address storage circuit and memory and memory system including the same | |
CN112997251A (zh) | 具有行锤击地址锁存机构的设备 | |
KR102182381B1 (ko) | 어드레스 저장회로, 메모리 및 이를 포함하는 메모리 시스템 | |
TW201801079A (zh) | 半導體器件 | |
KR102436992B1 (ko) | 리프레시 제어 장치 | |
CN116030859B (zh) | 一种刷新控制电路及存储器 | |
CN116261754A (zh) | 具有用于行锤击缓解的快速随机行刷新的dram | |
CN115910141A (zh) | 刷新地址计数电路及方法、刷新地址读写电路、电子设备 | |
US11854595B2 (en) | Refresh circuit and memory | |
JP5749109B2 (ja) | リフレッシュ回路 | |
US6958944B1 (en) | Enhanced refresh circuit and method for reduction of DRAM refresh cycles | |
KR102299352B1 (ko) | 반도체 장치 및 그의 구동방법 | |
CN115249499A (zh) | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 | |
CN116434800B (zh) | 刷新电路及存储器 | |
KR20240032432A (ko) | 샘플링 회로를 포함하는 집적 회로 및 메모리 장치 | |
US7630274B2 (en) | Circuit and method for selecting word line of semiconductor memory apparatus | |
CN117116320A (zh) | 刷新电路、刷新方法、存储器及存储系统 | |
KR20220082702A (ko) | 반도체 메모리 장치를 포함하는 메모리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |