CN115249500A - 攻击地址的获取方法及其电路、锤击刷新方法和存储器 - Google Patents
攻击地址的获取方法及其电路、锤击刷新方法和存储器 Download PDFInfo
- Publication number
- CN115249500A CN115249500A CN202110467053.4A CN202110467053A CN115249500A CN 115249500 A CN115249500 A CN 115249500A CN 202110467053 A CN202110467053 A CN 202110467053A CN 115249500 A CN115249500 A CN 115249500A
- Authority
- CN
- China
- Prior art keywords
- address
- count value
- attack
- row address
- activation
- 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.)
- Pending
Links
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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请实施例涉及一种攻击地址的获取方法及其电路、锤击刷新方法和存储器,所述攻击地址的获取方法,包括:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;根据所述随机计数值和所述激活计数值生成锁存控制信号;根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。在本申请实施例中,可以准确评估各个数据行发生行锤击问题的发生概率,还可以有效降低获取方法被恶意破解和针对性攻击的风险,从而进一步提高了获取方法的安全性,即,本申请实施例提供了一种可靠性较高的获取方法。
Description
技术领域
本申请实施例涉及半导体存储器技术领域,特别是涉及攻击地址的获取方法及其电路、锤击刷新方法和存储器。
背景技术
随着半导体存储器技术的不断发展,同步动态随机存储器(Synchronous DynamicRandom Access Memory,SDRAM)的体积不断缩小。但是,随着存储器体积的缩小,相邻行之间的距离也在不断缩窄,从而导致发生行锤击问题的风险越来越高。行锤击是指在一定时间段内对攻击行(aggressive row)的重复访问,导致与攻击行相邻的受害者行(victimrow)发生故障的现象。行锤击会造成受害者行的数据变化,从而导致存储器的可靠性大大降低。
发明内容
本申请实施例提供了一种攻击地址的获取方法及其电路、锤击刷新方法和存储器,可以有效降低行锤击的发生风险,从而提高存储器的数据可靠性。
一种攻击地址的获取方法,包括:
接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;
根据所述随机计数值和所述激活计数值生成锁存控制信号;
根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。
在其中一个实施例中,所述根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址,包括:
当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存;
根据锁存顺序输出已锁存的目标行地址作为所述攻击地址。
在其中一个实施例中,所述根据锁存顺序输出已锁存的目标行地址作为所述攻击地址,包括:
响应于下一周期的所述刷新信号,根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址。
在其中一个实施例中,所述根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址,包括:
根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址。
在其中一个实施例中,所述方法还包括:
响应于下一周期的所述刷新信号,对各所述攻击地址对应的所述激活计数值进行复位。
在其中一个实施例中,所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:以数值递增的次序更新所述目标行地址对应的激活计数值;
所述对各所述攻击地址对应的所述激活计数值进行复位,包括:对各所述攻击地址对应的所述激活计数值清零。
在其中一个实施例中,所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:
根据所述目标行地址对应的当前的激活计数值和第一预设计数步长更新所述激活计数值。
在其中一个实施例中,所述根据所述随机计数值和所述激活计数值生成锁存控制信号,包括:
当所述随机计数值等于所述激活计数值时,生成使能有效的所述锁存控制信号。
在其中一个实施例中,所述根据所述随机计数值和所述激活计数值生成锁存控制信号,还包括:
当所述随机计数值大于所述激活计数值时,生成使能无效的所述锁存控制信号。
在其中一个实施例中,所述方法还包括:
当所述锁存控制信号使能无效时,保持对前一的所述目标行地址进行锁存。
一种锤击刷新方法,包括如上述的攻击地址的获取方法的步骤,还包括:
确定所述攻击地址的相邻行地址为锤击刷新地址;
对所述锤击刷新地址对应的数据行进行锤击刷新。
在其中一个实施例中,所述确定所述攻击地址的相邻行地址为锤击刷新地址,包括:
分别获取所述攻击地址的第一相邻行地址和第二相邻行地址,所述攻击地址位于所述第一相邻行地址和所述第二相邻行地址之间;
所述对所述锤击刷新地址对应的数据行进行锤击刷新,包括:
分别对所述第一相邻行地址对应的数据行和所述第二相邻行地址对应的数据行进行锤击刷新。
在其中一个实施例中,所述确定所述攻击地址的相邻行地址为锤击刷新地址,包括:
分别获取所述攻击地址的第一相邻行地址和第二相邻行地址,所述攻击地址位于所述第一相邻行地址和所述第二相邻行地址之间;
所述对所述锤击刷新地址对应的数据行进行锤击刷新,包括:
对所述第一相邻行地址和所述第二相邻行地址中的一个对应的数据行进行锤击刷新。
一种攻击地址的获取电路,包括:
随机计数器,用于接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
激活计数器,用于接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;
数据分析单元,分别与所述随机计数器和所述激活计数器连接,用于根据所述随机计数值和所述激活计数值生成锁存控制信号;
地址锁存器,与所述数据分析单元连接,用于根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。
一种存储器,包括如上述的攻击地址的获取电路。
上述攻击地址的获取方法及其电路、锤击刷新方法和存储器,所述攻击地址的获取方法,包括:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;根据所述随机计数值和所述激活计数值生成锁存控制信号;根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。在本申请实施例中,通过获取存储阵列中各行的激活计数值,可以准确评估各个数据行发生行锤击问题的发生概率,便于存储器根据不同的发生概率分别执行对应的行锤击规避措施,而且,通过采用不断更新的随机计数值对激活计数值进行比较,可以有效降低获取方法被恶意破解和针对性攻击的风险,从而进一步提高了获取方法的安全性,即,本申请实施例提供了一种可靠性较高的获取方法。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一实施例的攻击地址的获取电路的示意图;
图2为一实施例的攻击地址的获取方法的流程图之一;
图3为一实施例的步骤S400的子流程图;
图4为一实施例的攻击地址的获取方法的流程图之二;
图5为一实施例的攻击地址的获取方法的流程图之三;
图6为一实施例的攻击地址的获取方法的流程图之四;
图7为一实施例的锤击刷新方法的流程图;
图8为一实施例的攻击行和相邻行的示意图。
元件标号说明:
攻击地址的获取电路:10;随机计数器:100;激活计数器:200;数据分析单元:300;地址锁存器:400。
具体实施方式
为了便于理解本申请实施例,下面将参照相关附图对本申请实施例进行更全面的描述。附图中给出了本申请实施例的首选实施例。但是,本申请实施例可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本申请实施例的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本文中在本申请实施例的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请实施例。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
本申请实施例提供了一种攻击地址的获取方法,本申请实施例的获取方法以应用于图1所示的攻击地址的获取系统为例进行说明。具体地,本申请实施例的攻击地址的获取电路10与存储阵列均设置于存储器内部,并相互连接。攻击地址的获取电路10用于确定存储阵列中被频繁进行读写操作的数据行(即攻击地址),从而便于实施相应的应对措施,以避免行锤击造成的数据异常或丢失的问题。其中,相应的应对措施包括但不限于刷新与攻击地址相邻行的已存储数据、限制对攻击地址的数据读写操作等。
如图1所示,攻击地址的获取电路10还与控制器连接,存储器中还设置有命令解码器,命令解码器从控制器获取命令信号,并对命令信号进行解码,以获取内部电路能够执行的各种内部指令信号,例如激活信号ACT、预充电信号Pre、读写信号R/W及刷新信号REF等,攻击地址的获取电路10接收激活信号ACT和刷新信号REF,并响应于上述信号执行攻击地址的获取方法中的各步骤。
其中,激活信号ACT在控制器指示存储器执行行存取时被激活,当激活信号ACT被激活时,存储阵列中需要执行读写操作的数据行被打开。读写信号R/W在需要执行读写操作的数据行打开后被激活,当读写信号R/W被激活时,可以对对应的数据行进行数据读写。预充电信号Pre在完成对数据行的读写操作后被激活,当预充电信号Pre被激活时,存储阵列中需要执行读写操作的数据行被关闭。
刷新信号REF在需要执行自动刷新命令时被激活,并且可以根据内部时序以一定的周期被反复激活。可以理解的是,即使不存在行锤击问题,存储单元的存储电容中存储的电荷也会随着时间而不断流失,因此,存储器需要以一定的周期执行刷新操作,从而确保存储单元中存储的数据的准确性。具体地,当执行刷新操作时,先获取存储单元中当前的电荷量,再根据当前的电荷量判断该存储单元存储的数据是1还是0,最后根据判定结果重新向存储电容进行充电或放电,从而使存储电容中存储的电荷量与其所要存储的数据相对应。
参考图1,本申请实施例的攻击地址的获取电路10包括随机计数器100、激活计数器200、数据分析单元300和地址锁存器400,本申请实施例的获取方法的各步骤分别由获取电路中各元件一一对应执行,图2为一实施例的攻击地址的获取方法的流程图之一,结合参考图1和图2,本实施例的获取方法包括步骤S100至S400。
S100:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值。
具体地,随机计数器100接收到当前周期的刷新信号,并响应于刷新信号更新随机计数器100的值。可以理解的是,随机计数器生成的数值为不存在任何规律的随机数,即,随机计数器生成的数值较难被预估,本实施例通过采用基于刷新信号不断更新的随机计数值,可以有效降低获取方法被恶意破解和针对性攻击的风险,从而提高了获取方法的安全性。
S200:接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值。
具体地,激活计数器200接收到当前周期的激活信号,并响应于激活信号更新激活计数器200的值。激活计数器200中内置有数值更新的第一预设次序,第一预设次序例如可以为X1,X2,X3,X4…,若在接收到当前周期的刷新信号前,激活计数器200的计数值为X2,则在接收到当前周期的刷新信号后,激活计数器200的计数值更新为X3。可选地,第一预设次序可以为有固定变化规律的递增序列,例如为11,12,13,14…。第一预设次序也可以为有固定变化规律的递减序列,例如为18,16,14,12…。第一预设次序还可以为没有固定变化规律的一串序列,例如为11,13,14,15,17…。需要明确的是,本实施例不具体限定第一预设次序的设置方式,只需要第一预设次序为一有限长序列,且激活计数器200能够在每次接收到刷新信号时,根据第一预设次序对计数值进行一次更新即可,即,除随机计数器以外的其他具有规律变化的计数器均可以认定为本实施例的激活计数器200。
在本申请实施例中,随机计数器100接收刷新信号的频率低于激活计数器200接收激活信号的频率,但两个信号的接收频率之间存在正相关关系。可以理解的是,数据行响应于激活信号被激活的频率通常与存储器的读写速度正相关,而且,正是由于对被攻击的数据行的不断读写才会导致行锤击的风险增加。因此,根据数据行被激活的频率设置控制器发送刷新信号的频率,能够更好地对存储阵列进行保护。
S300:根据所述随机计数值和所述激活计数值生成锁存控制信号。
具体地,当所述随机计数值和所述激活计数值满足一定条件时,可以认为该激活计数器200对应的数据行被频繁激活,存在发生行锤击的风险,即可以发出使能有效的锁存控制信号,以指示地址锁存器400对该激活计数器200对应的数据行的地址(即目标行地址)进行锁存。其中,数据分析单元300可以是具有基础的数值大小比较功能的比较器,并可以根据随机计数器100和激活计数器200之间的大小关系判定输出对应的锁存控制信号。例如,可以当所述随机计数值等于所述激活计数值时,生成使能有效的所述锁存控制信号;并当所述随机计数值大于所述激活计数值时,生成使能无效的所述锁存控制信号,以提供一种较为易于实行,且占用数据分析时间较少的判定逻辑。
可以理解的是,本实施例不具体限定数据分析单元300的类型,数据比较器也可以是具有更加复杂的数据处理或逻辑判定规则的比较器,而不仅仅用于比较数值的大小关系,从而提升攻击地址的获取方法和获取电路的复杂度,进而降低被恶意破解的风险,提高存储器的可靠性。
S400:根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。
具体地,地址锁存器400响应于锁存控制信号对所述目标行地址进行锁存,被锁存的目标行地址可以作为攻击地址的备选地址。其中,地址锁存器400可以锁存多个目标行地址。可选地,地址锁存器400可以在需要的时刻输出锁存的全部目标行地址作为攻击地址,也可以只输出锁存的部分目标行地址作为攻击地址,具体可以根据刷新速度等参数确定攻击地址的数量。
在本实施例中,所述攻击地址的获取方法包括:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;根据所述随机计数值和所述激活计数值生成锁存控制信号;根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。在本申请实施例中,通过获取存储阵列中各行的激活计数值,可以准确评估各个数据行发生行锤击问题的发生概率,便于存储器根据不同的发生概率分别执行对应的行锤击规避措施,而且,通过采用不断更新的随机计数值对激活计数值进行比较,可以有效降低获取方法被恶意破解和针对性攻击的风险,从而进一步提高了获取方法的安全性,即,本申请实施例提供了一种可靠性较高的获取方法。
在其中一个实施例中,存储器中设置有多个激活计数器200,且每个激活计数器200对应于至少一个数据行,以对对应数据行的激活次数进行统计。可以理解的是,在存储器中包括大量的存储单元,相应地,也必然存在大量的数据行,如果保持每个数据行的激活次数进行统计,需要耗费大量的时间和空间。因此,激活计数器200可以配置有一个对应的激活次数列表,且激活次数列表中只保存被激活次数较多的数据行的激活计数值,即,激活次数列表中存储的数据行是发生行锤击风险较高的数据行,从而可以减少所需要存储的数据数量。
进一步,还可以以预设频率对激活信号进行采样。例如,攻击地址的获取电路10可以在每接收到n个激活信号时,对其中的一个激活信号进行采样,并获取该激活信号携带的目标行地址信息进行统计,而不对剩余的n-1个激活信号进行统计。可以理解的是,若一个数据行被频繁激活,则以固定间隔进行采样时,该数据行的激活次数也远大于其他正常读写的数据行的激活次数。因此,这也是一种较为可靠的激活计数器200的计数方式,而且可以大大降低激活计数器200的计数数量,从而有效降低激活计数器200的计数压力,并降低攻击地址的获取方法所需要占用的时间,进而提升攻击地址的获取方法的效率。
图3为一实施例的步骤S400的子流程图,参考图3,在本实施例中,步骤S400所述根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址,包括步骤S410至S420。
S410:当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存。
S420:根据锁存顺序输出已锁存的目标行地址作为所述攻击地址。
其中,使能有效的锁存控制信号是指,数据分析单元300判定当前的目标行地址被频繁读取时发出的锁存控制信号,当前的目标行地址是指激活计数器200更新时接收到的激活信号所携带的目标行地址。示例性地,若地址锁存器400在当前周期锁存了6个目标行地址,且对目标行地址的锁存顺序由先至后依次为a1,a2,a3,a4,a5,a6,当前需要输出3个目标行地址作为所述攻击地址,则地址锁存器400输出a1,a2,a3作为目标行地址。在本实施例中,由于随机计数器生成的数值是随机变化的,所以锁存的目标行地址也是在发生行锤击风险较高的多个目标行地址中随机选择的,因此,锁存的目标行地址被恶意破解的难度较高,即,本实施例的攻击地址的获取方法的可靠性较高。
在其中一个实施例中,所述根据锁存顺序输出已锁存的目标行地址作为所述攻击地址,包括:响应于下一周期的所述刷新信号,根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址。具体地,如前述说明,控制器输出的刷新信号用于控制存储器进行自动刷新,自动刷新即是指前述的用于避免时间导致的电荷流失问题所采取的刷新方式。在本实施例中,地址锁存器400响应于刷新信号输出攻击地址,即可在存储器的自动刷新阶段同时对攻击地址进行对应的操作,从而提高对应操作的处理效率,也可以避免影响存储器的工作性能。
以该操作是锤击刷新为例,自动刷新操作可以响应于单个刷新信号而将需要被刷新的多个数据行的刷新,自动刷新操作需要占用行刷新周期时间(the refresh cycle,tRFC),并且自动刷新操作之间存在刷新间隔时间(the refresh interval time,tREFI)的平均刷新间隔。响应于刷新命令,存储器执行对多个数据行的自动刷新,而可以理解的是,在本实施例中,由于攻击地址的数量通常少于需要执行自动刷新的地址的数量,锤击刷新所需的时间通常也短于行刷新周期时间tRFC,即,行刷新周期时间tRFC足以完成锤击刷新。因此,本实施例的锤击刷新无需占用攻击地址的相邻行对应的存储单元的数据读写时间,还可以有效还能加强存储器的数据安全性,即,提供了一种可靠性和效率较高的方法。
其中,输出预设数量的已锁存的目标行地址时,预设数量可以为一个,也可以为多个,例如为2个、4个等。可以理解的是,若存储器中的布线密度较高,意味着发生行锤击的风险较大,则可以每次对较多数量的数据行进行锤击刷新,若存储器中的布线密度较低,则可以每次对较少数量的数据行进行锤击刷新。因此,具体数量可以根据存储器中的布线密度确定,本实施例不具体进行限定。
图4为一实施例的攻击地址的获取方法的流程图之二,在本实施例中,攻击地址的获取方法包括步骤S100至S422。
S100:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
S200:接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;
S300:根据所述随机计数值和所述激活计数值生成锁存控制信号;
S410:当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存。
S421:响应于下一周期的所述刷新信号,根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址。
S422:响应于下一周期的所述刷新信号,对各所述攻击地址对应的所述激活计数值进行复位。
可以理解的是,上述步骤S100至S410的实施方式与前述实施例相同,因此可以参考前述实施例,在此处不再进行赘述。在本实施例中,步骤所述根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址,包括:根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址,在本实施例中,每次对一个目标行地址进行输出,该数量可以适应于当前的工艺制程水平,从而在不影响自动刷新操作以及数据读写时序的前提下,较为有效地避免行锤击问题,进而提升存储器的数据可靠性。
此外,本实施例的获取方法还进一步包括步骤S422,其中,下一周期和当前周期为在时间上相邻的两个周期,即,当前周期的所述刷新信号和下一周期的所述刷新信号也为时间上相邻的两个刷新信号。而且,步骤根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址,以及步骤对各所述攻击地址对应的所述激活计数值进行复位响应于同一刷新信号执行,通过设置响应于同一信号执行,可以有效提升上述两个步骤的同步性,还可以减少攻击地址的获取方法所需要的信号的数量,从而简化获取方法的逻辑。
可以理解的是,上述两个步骤S421和S422的执行主体并不相同,具体地,地址锁存器400根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址,激活计数器200对各所述攻击地址对应的所述激活计数值进行复位。因此,本申请实施例并不具体限定上述两个步骤的执行顺序,上述两个步骤可以依次执行,且不需要限定两个步骤之间的执行次序,上述两个步骤也可以同时执行,以提高攻击电路的获取方法的数据处理和复位效率。
图5为一实施例的攻击地址的获取方法的流程图之三,在本实施例中,攻击地址的获取方法包括步骤S100至S423。
S100:接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
S210:接收携带目标行地址信息的激活信号,以数值递增的次序更新所述目标行地址对应的激活计数值;
S300:根据所述随机计数值和所述激活计数值生成锁存控制信号;
S410:当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存。
S421:响应于下一周期的所述刷新信号,根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址。
S423:响应于下一周期的所述刷新信号,对各所述攻击地址对应的所述激活计数值清零。
可以理解的是,上述步骤S100、S300至S421的实施方式与前述实施例相同,因此可以参考前述实施例,在此处不再进行赘述。在本实施例中,步骤S200中的所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:以数值递增的次序更新所述目标行地址对应的激活计数值,且步骤S422中的对各所述攻击地址对应的所述激活计数值进行复位,包括:对各所述攻击地址对应的所述激活计数值清零。
具体地,本实施例采用递增的方式对激活计数值进行更新,例如采用0,1,2,3…的方式对激活计数值进行更新,相应地,对激活计数器200复位时采用清零的方式,二者之间具有清晰的对应关系,可以大大简化对激活计数器200的数据分析难度,从而提高本实施例的获取方法的数据处理效率。在其他实施例中,若采用递减的方式对激活计数值进行更新,例如采用10,9,8,7…的方式对激活计数值进行更新,相应地,对激活计数器200复位时则可以采用复位至10的方式,以实现上述提高数据处理效率的效果。
在其中一个实施例中,步骤S200中的所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:根据所述目标行地址对应的当前的激活计数值和预设计数步长更新所述激活计数值。即,步骤S200可以具体通过以下步骤实施:接收携带目标行地址信息的激活信号,根据所述目标行地址对应的当前的激活计数值和第一预设计数步长更新所述激活计数值。
在本实施例中,当第一预设计数步长均大于0时,即为前述实施例中步骤S210的以数值递增的次序进行更新,当第一预设计数步长均小于0时,即可以认为是以数值递减的次序进行更新。示例性地,第一预设计数步长可以为0,随机计数器100的更新次序例如可以为0,1,2,3,4…,激活计数器200的更新次序例如也可以为0,1,2,3,4…。在本实施例中,通过采用上述预设计数步长相同的方式,可以大大简化随机计数器100和激活计数器200的内部逻辑,从而提高随机计数器100和激活计数器200的技术准确性,而且,由于随机计数器100为随着刷新信号进行数值随机变化的计数器,因此,本实施例的攻击地址的获取方法仍可以避免被恶意破解的问题,从而保证获取方法的可靠性。
在其中一个实施例中,所述方法还包括:当所述锁存控制信号使能无效时,保持对前一的所述目标行地址进行锁存。通过上述步骤,若当前的目标行地址不是存在行锤击风险的数据行,则地址锁存器400锁存的地址不发生变化,从而避免地址的锁存错误,从而提高获取方法的准确性。
图6为一实施例的攻击地址的获取方法的流程图之四,参考图6,在本实施例中,攻击地址的获取方法包括步骤S100至S423。
S100:接收当前周期的刷新信号,根据所述刷新信号更新所述随机计数值;
S220:接收携带目标行地址信息的激活信号,根据所述目标行地址对应的当前的激活计数值和第一预设计数步长更新所述激活计数值;
S310:判断所述随机计数值是否等于所述激活计数值;
当所述随机计数值等于所述激活计数值时,S320:生成使能有效的所述锁存控制信号。当所述随机计数值不等于所述激活计数值时,S330:生成使能无效的所述锁存控制信号。
S410:当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存;
S421:响应于下一周期的所述刷新信号,根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址。
S430:当所述锁存控制信号使能无效时,保持对前一的所述目标行地址进行锁存。
S423:响应于下一周期的所述刷新信号,对各所述攻击地址对应的所述激活计数值清零。
其中,随机计数器100执行步骤S100,激活计数器200执行步骤S220和步骤S423,数据分析单元300执行步骤S310至S330,地址锁存器400执行步骤S410、S421和S430,而且,如前述说明,由于步骤S421和S423的执行主体不同,两个步骤可以同时执行,以提升本实施例的获取方法的效率。在本实施例中,可以准确评估各个数据行发生行锤击问题的发生概率,还可以有效降低获取方法被恶意破解和针对性攻击的风险,从而进一步提高了获取方法的安全性,而且,通过设置对随机计数器100和激活计数器200设置相对应的更新次序和计数步长,可以有效提高计数的效率和准确性,即,本申请实施例提供了一种可靠性较高、处理效率较高的获取方法和获取电路。
图7为一实施例的锤击刷新方法的流程图,参考图7,本实施例包括如上述的攻击地址的获取方法的步骤S100至S400,还包括步骤S500至S600。
S500:确定所述攻击地址的相邻行地址为锤击刷新地址;
S600:对所述锤击刷新地址对应的数据行进行锤击刷新。
在本实施例中,通过对锤击刷新地址对应的数据行进行刷新,可以避免行锤击对相邻行地址中保存的数据的影响,从而提高存储器存储的数据的可靠性。
本申请实施例还提供了一种锤击刷新电路,锤击刷新电路包括前述实施例中的攻击地址的获取电路,还包括加减运算器和刷新模块。
其中,加减运算器与攻击地址的获取电路中的地址锁存器连接,用于对地址锁存器输出的攻击地址进行加减运算,以获得相邻行地址作为锤击刷新地址。例如,若加减运算器对攻击地址分别进行加一和减一的运算,则可以获得两个锤击刷新地址;若加减运算器对攻击地址分别进行加一、加二、减一和减二的运算,则可以获得四个锤击刷新地址。可以理解的是,加减运算器的具体运算内容可以根据相邻字线之间的间距确定,运算获得的锤击刷新地址的数量与相邻字线之间的间距反向相关。
刷新模块与加减运算器连接,且分别与多个数据行的数据读写电路连接,刷新模块用于通过数据读写电路获取锤击刷新地址对应的数据行中已存储的数据,根据已存储的数据生成刷新数据,并通过数据读写电路将刷新数据重新写入锤击刷新地址对应的数据行中,从而实现锤击刷新。可选地,锤击刷新操作可以与自动刷新操作共用至少部分刷新模块,从而减少存储器中的刷新模块的数量和体积。
图8为一实施例的攻击行和相邻行的示意图,参考图8,在存储阵列中可以存在多个攻击行,各攻击行可以如图8所示分别位于不同的存储块中,在其他实施例中,一个存储块中也可以包括多个攻击行。而且,攻击行可以位于存储块的中部,即,如图8中第一存储块所示,该攻击行与其对应的第一相邻行、第二相邻行位于同一存储块。攻击行还可以位于存储块的边界,即,如图8中第二存储块所示,该攻击行与其对应的第一相邻行、第二相邻行位于不同存储块。可以理解的是,本实施例的锤击刷新方法可以应用于上述各种位置的攻击行,因此具有较高的可靠性。
进一步地,所述确定所述攻击地址的相邻行地址为锤击刷新地址,包括:分别获取所述攻击地址的第一相邻行地址和第二相邻行地址,所述攻击地址位于所述第一相邻行地址和所述第二相邻行地址之间。可选地,在步骤对所述锤击刷新地址对应的数据行进行锤击刷新中,可以分别对所述第一相邻行地址对应的数据行和所述第二相邻行地址对应的数据行进行锤击刷新,也可以对所述第一相邻行地址和所述第二相邻行地址中的一个对应的数据行进行锤击刷新,还可以对攻击行单侧的多个相邻的数据行进行锤击刷新,具体可以根据不同相邻行受到行锤击效应影响的程度确定,例如可以根据相邻行与锤击行之间的距离关系确定,因为邻近相邻行相比更远相邻行收到行锤击的情况更加严重,从而提高锤击刷新的准确性和效率。
应该理解的是,虽然图2至图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的次序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的次序限制,这些步骤可以以其它的次序执行。而且,图2至图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行次序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本申请实施例还提供了一种存储器,包括如上述的攻击地址的获取电路10,基于上述攻击地址的获取电路10,本实施例提供了一种数据可靠性较高的存储器。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请实施例构思的前提下,还可以做出若干变形和改进,这些都属于本申请实施例的保护范围。因此,本申请实施例专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种攻击地址的获取方法,其特征在于,包括:
接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;
根据所述随机计数值和所述激活计数值生成锁存控制信号;
根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。
2.根据权利要求1所述的获取方法,其特征在于,所述根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址,包括:
当所述锁存控制信号使能有效时,对当前的所述目标行地址进行锁存;
根据锁存顺序输出已锁存的目标行地址作为所述攻击地址。
3.根据权利要求2所述的获取方法,其特征在于,所述根据锁存顺序输出已锁存的目标行地址作为所述攻击地址,包括:
响应于下一周期的所述刷新信号,根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址。
4.根据权利要求3所述的获取方法,其特征在于,所述根据锁存顺序输出预设数量的已锁存的目标行地址作为所述攻击地址,包括:
根据锁存顺序输出一个已锁存的目标行地址作为所述攻击地址。
5.根据权利要求2所述的获取方法,其特征在于,所述方法还包括:
响应于下一周期的所述刷新信号,对各所述攻击地址对应的所述激活计数值进行复位。
6.根据权利要求5所述的获取方法,其特征在于,所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:以数值递增的次序更新所述目标行地址对应的激活计数值;
所述对各所述攻击地址对应的所述激活计数值进行复位,包括:对各所述攻击地址对应的所述激活计数值清零。
7.根据权利要求6所述的获取方法,其特征在于,所述根据第一预设次序更新所述目标行地址对应的激活计数值,包括:
根据所述目标行地址对应的当前的激活计数值和第一预设计数步长更新所述激活计数值。
8.根据权利要求1至7任一项所述的获取方法,其特征在于,所述根据所述随机计数值和所述激活计数值生成锁存控制信号,包括:
当所述随机计数值等于所述激活计数值时,生成使能有效的所述锁存控制信号。
9.根据权利要求8所述的获取方法,其特征在于,所述根据所述随机计数值和所述激活计数值生成锁存控制信号,还包括:
当所述随机计数值大于所述激活计数值时,生成使能无效的所述锁存控制信号。
10.根据权利要求9所述的获取方法,其特征在于,所述方法还包括:
当所述锁存控制信号使能无效时,保持对前一的所述目标行地址进行锁存。
11.一种锤击刷新方法,其特征在于,包括如权利要求1至10任一项所述的攻击地址的获取方法的步骤,还包括:
确定所述攻击地址的相邻行地址为锤击刷新地址;
对所述锤击刷新地址对应的数据行进行锤击刷新。
12.根据权利要求11所述的锤击刷新方法,其特征在于,所述确定所述攻击地址的相邻行地址为锤击刷新地址,包括:
分别获取所述攻击地址的第一相邻行地址和第二相邻行地址,所述攻击地址位于所述第一相邻行地址和所述第二相邻行地址之间;
所述对所述锤击刷新地址对应的数据行进行锤击刷新,包括:
分别对所述第一相邻行地址对应的数据行和所述第二相邻行地址对应的数据行进行锤击刷新。
13.根据权利要求11所述的锤击刷新方法,其特征在于,所述确定所述攻击地址的相邻行地址为锤击刷新地址,包括:
分别获取所述攻击地址的第一相邻行地址和第二相邻行地址,所述攻击地址位于所述第一相邻行地址和所述第二相邻行地址之间;
所述对所述锤击刷新地址对应的数据行进行锤击刷新,包括:
对所述第一相邻行地址和所述第二相邻行地址中的一个对应的数据行进行锤击刷新。
14.一种攻击地址的获取电路,其特征在于,包括:
随机计数器,用于接收当前周期的刷新信号,根据所述刷新信号更新随机计数值;
激活计数器,用于接收携带目标行地址信息的激活信号,根据第一预设次序更新所述目标行地址对应的激活计数值;
数据分析单元,分别与所述随机计数器和所述激活计数器连接,用于根据所述随机计数值和所述激活计数值生成锁存控制信号;
地址锁存器,与所述数据分析单元连接,用于根据所述锁存控制信号对所述目标行地址进行锁存,以作为所述攻击地址。
15.一种存储器,其特征在于,包括如权利要求14所述的攻击地址的获取电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110467053.4A CN115249500A (zh) | 2021-04-28 | 2021-04-28 | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110467053.4A CN115249500A (zh) | 2021-04-28 | 2021-04-28 | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115249500A true CN115249500A (zh) | 2022-10-28 |
Family
ID=83696010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110467053.4A Pending CN115249500A (zh) | 2021-04-28 | 2021-04-28 | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115249500A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116030859A (zh) * | 2023-02-13 | 2023-04-28 | 长鑫存储技术有限公司 | 一种刷新控制电路及存储器 |
-
2021
- 2021-04-28 CN CN202110467053.4A patent/CN115249500A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116030859A (zh) * | 2023-02-13 | 2023-04-28 | 长鑫存储技术有限公司 | 一种刷新控制电路及存储器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115249501A (zh) | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 | |
CN111247586A (zh) | 用于刷新存储器的设备及方法 | |
TWI669719B (zh) | 記憶體裝置 | |
CN112767983B (zh) | 刷新控制电路及存储器 | |
CN114420181A (zh) | 刷新电路和存储器 | |
CN100429722C (zh) | 更新一存储模块的方法和电路 | |
CN114283863B (zh) | 行锤击检测和避免 | |
US20170168947A1 (en) | Method of predicting a datum to be preloaded into a cache memory | |
CN114121126A (zh) | 用于基于自刷新命令复位行锤击检测器电路的设备、系统及方法 | |
CN113223570B (zh) | 目标行刷新方法及存储器装置中所采用的决策电路 | |
CN115249500A (zh) | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 | |
US11354408B2 (en) | Technique for detecting and thwarting row-hammer attacks | |
US20190056874A1 (en) | System and method for preserving data in volatile memory | |
TW201917558A (zh) | 使由於記憶體子系統中的刷新操作引起的效能降級最小化 | |
CN116261754A (zh) | 具有用于行锤击缓解的快速随机行刷新的dram | |
CN115249499A (zh) | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 | |
CN114627926A (zh) | 存储系统 | |
US11599646B2 (en) | Memory test method | |
US20230162776A1 (en) | Memory | |
CN113419682B (zh) | 一种数据处理方法、装置和计算机闪存设备 | |
US11621028B2 (en) | Memory with capability to detect rows that are prone to data loss, memory system and operation method of memory | |
US20240038288A1 (en) | Memory device refresh operations | |
CN106710624B (zh) | 一种dram锤压侦测电路及方法 | |
WO2014185707A2 (ko) | 디지털 신호처리 프로세서 및 데이터 입출력 방법 | |
TWI793028B (zh) | 一種錘擊刷新方法、錘擊刷新電路及半導體記憶體 |
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 |