半导体存储装置的制作方法

文档序号:16051412发布日期:2018-11-24 11:19阅读:260来源:国知局

本发明涉及一种半导体存储装置。特别涉及提高了对于由rowhammer问题导致的故障的耐受性的半导体存储装置。

背景技术

dram(dynamicrandomaccessmemory:动态随机存取存储器)的制造工艺的微细化的发展是显著的。伴随于此,容易产生存储单元之间的干扰。进而,由于制造工艺的微细化,偏差变大,容易制造出容易受到干扰的存储单元。其结果是存储单元的数据损坏变得显著。

特别是近年来,当对特定的地址的行(row)反复进行访问时,该行的附近的行的数据被损坏的问题备受关注。这种问题被称为rowhammer问题。对于该rowhammer问题提出了各种解决方法。

专利文献1

在下述专利文献1中公开了一种在将对dram的行的访问数进行计数且计数得到的数达到了规定的阈值的情况下,刷新该行的附近的行的方法。

在该专利文献1所记载的方法中,除了dram中的常规的(通常的)刷新工作之外,还对访问数达到了阈值的行的附近的行的地址进行中断刷新,因此导致刷新次数比以往增多。因此,可认为由于刷新次数的增多而使该dram的访问性能降低。而且,需要针对dram的全部的行来设置将针对行的访问数进行计数的计数电路,也存在导致dram面积增大的问题。因此,在相同容量的dram中,其芯片面积增大。

专利文献2

在下述专利文献2中公开了一种根据与上述专利文献1记载的方法大致相同的原理来执行中断刷新的方法。但是,在专利文献2中提出了如下方法:对于成为通过常规刷新进行刷新工作的对象的行(地址),将针对该行的访问数的计数进行复位。可认为通过这种工作,与专利文献1相比能制止针对行的中断刷新的执行。

根据该专利文献2的方法,能制止中断刷新的次数,因此可认为作为dram的性能的降低比专利文献1的方法少。

但是,在该专利文献2的方法中,与专利文献1的方法同样地也需要将针对各行(地址)的访问进行计数的计数电路。通常,该计数电路由存储访问数的sram来构成,因此可认为在专利文献2中也与专利文献1同样地存在由于安装该sram而导致dram的芯片面积增大的问题。

现有技术文献

专利文献

专利文献1:日本特开2013-239228号公报;

专利文献2:日本特开2015-162253号公报。



技术实现要素:

发明要解决的课题

本发明是鉴于这种情况而完成的,其目的在于实现不使dram的芯片面积大幅增大就解决rowhammer问题的结构。

用于解决课题的方案

(1)为了解决上述课题,本发明为一种半导体存储装置,包含:存储器部,其具有多个存储单元;地址锁存部,其对地址和应用于由所述地址指定的所述存储单元的激活指令进行接收,在每次接收所述激活指令时对在接收到所述激活指令时的地址进行连续锁存;刷新控制部,其在接收到刷新指令的情况下,指示存储器访问控制部对所述存储器部执行基于所述刷新指令的常规刷新工作,并且指示所述存储器访问控制部对所述地址的附近的地址执行中断刷新工作,所述中断刷新工作是基于所述地址锁存部锁存了的所述地址的刷新工作;以及所述存储器访问控制部,其基于来自所述刷新控制部的指示,对所述存储器部执行所述常规刷新工作和所述中断刷新工作。

(2)此外,为了解决上述课题,本发明为一种半导体存储装置,包含:存储器部,其具有多个存储单元;地址锁存部,其对地址和应用于由所述地址指定的所述存储单元的激活指令进行接收,在每次接收所述激活指令时对在接收到所述激活指令时的地址进行锁存,并保持n个已锁存的地址;刷新控制部,其在接收到刷新指令的情况下,指示存储器访问控制部对所述存储器部执行基于所述刷新指令的常规刷新工作,并且指示所述存储器访问控制部对所述地址的附近的地址执行中断刷新工作,所述中断刷新工作是基于所述地址锁存部锁存了的1个以上的所述地址的刷新工作。所述存储器访问控制部,其基于来自所述刷新控制部的指示,对所述存储器部执行所述常规刷新工作和所述中断刷新工作,在所述存储器访问控制部执行了所述中断刷新工作的情况下,所述地址锁存部被复位,成为能够锁存接下来接收到激活指令时的地址的状态,在此,所述n是自然数。

(3)此外,本发明为如(2)所述的半导体存储装置,其中,所述地址锁存部在所述存储器访问控制部执行了所述中断刷新工作的情况下,只有成为所述中断刷新工作的依据的地址被复位,成为能够锁存接下来接收到激活指令时的地址的状态。

(4)此外,本发明为如(2)所述的半导体存储装置,其中,所述刷新控制部指示所述存储器访问控制部仅对所述地址锁存部锁存了的所述地址中的任意的一个地址的附近的地址执行中断刷新工作,所述中断刷新工作是基于所述一个地址的刷新工作,所述地址锁存部在所述刷新控制部执行了所述中断刷新工作的情况下,只有成为所述中断刷新工作的依据的所述一个地址被复位,成为能够锁存接下来接收到激活指令时的地址的状态。

(5)此外,本发明为如(2)至(4)中的任一项所述的半导体存储装置,其中,包含监控开始部,其在接收到所述刷新指令后,从接收m个所述激活指令起开始进行所述地址锁存部的锁存工作,在此,所述m是自然数。

(6)此外,本发明为如(5)所述的半导体存储装置,其中,所述监控开始部在接收到所述刷新指令后,从接收随机的k个所述激活指令起开始进行所述地址锁存部的锁存工作,在此,所述k为随机的自然数。

(7)此外,本发明为如(2)至(6)中的任一项所述的半导体存储装置,其中,包含:

访问计数地址锁存部,其对地址和应用于由所述地址指定的所述存储单元的激活指令进行接收,监视在接收到所述激活指令时的地址,并将针对同一地址的访问的个数进行计数,上限判断部,其在所述访问计数地址锁存部计数了的、针对同一地址的访问的个数超过规定的值的情况下,使所述地址锁存部锁存所述同一地址。

(8)此外,本发明为如(1)至(7)中的任一项所述的半导体存储装置,其中,包含地址比较部,其将接收到所述激活指令时的地址与所述地址锁存部已经锁存了的地址进行比较,在比较的结果为不同的地址的情况下,使所述地址锁存部执行锁存工作。

(9)此外,本发明为如(2)至(7)中的任一项所述的半导体存储装置,其中,包含地址比较部,其将所述地址锁存部已经锁存了的小于n个的地址与在接收到所述激活指令时的地址进行比较,仅在比较的结果为不同的地址的情况下,使所述地址锁存部执行在新接收到所述激活指令时的地址的锁存工作。

(10)此外,本发明为如(8)或(9)所述的半导体存储装置,其中,在所述刷新控制部向所述存储器访问控制部指示了常规刷新工作时的刷新地址是所述地址锁存部锁存了的地址的附近的地址的情况下,所述地址比较部对所述地址锁存部锁存的所述地址进行复位。

(11)此外,本发明为如(1)至(10)中的任一项所述的半导体存储装置,其中,还包含监控部,其监控接收的所述激活指令,在接收到所述刷新指令之后没有接收到所述激活指令的情况下,制止所述刷新控制部向所述存储器访问控制部指示所述中断刷新工作。(12)此外,如(1)至(11)中的任一项所述的半导体存储装置,其中,接收到所述激活指令时的地址的附近的地址是将接收到所述激活指令时的地址进行+1而得到的地址,或者进行-1而得到的地址中的任一个。

(13)此外,本发明为如(1)至(12)中的任一项所述的半导体存储装置,其特征在于,所述激活指令是使所述存储器部的字线活化的指令,至少包含读取指令、写入指令、刷新指令。

发明效果

像这样,根据本发明,对被推测为有效的行(地址)执行了中断刷新,该中断刷新是为了解决rowhammer问题而执行的刷新。因此,不需要按每一行具有将针对行的访问进行计数的电路。其结果是,能够使得用于解决rowhammer问题的电路的面积比以往小,能够谋求防止dram的芯片面积的增大。

附图说明

图1为实施方式1涉及的dram装置的rowhammer问题的对策电路的电路框图。

图2为对实施方式1涉及的rowhammer问题的对策电路的工作进行说明的时序图。

图3为实施方式2涉及的dram装置的rowhammer问题的对策电路的电路框图。

图4为对实施方式2涉及的rowhammer问题的对策电路的工作进行说明的时序图。

图5为实施方式3涉及的dram装置的rowhammer问题的对策电路的电路框图。

图6为对实施方式3涉及的rowhammer问题的对策电路的工作进行说明的时序图。

图7为实施方式4涉及的dram装置的rowhammer问题的对策电路的电路框图。

图8为对实施方式4涉及的rowhammer问题的对策电路的工作进行说明的时序图。

具体实施方式

以下,基于附图对本发明的优选的实施方式所涉及的层叠型半导体装置进行详细说明。另外,以下说明的实施方式是作为本发明的实现手段的一个例子,应当根据应用本发明的装置的结构、各种条件而酌情地修改或变更,本发明并不限定于以下的实施方式。

第1实施方式1

结构

图1为示出本实施方式1中的dram装置的rowhammer对策电路10的电路框图。图1所示的rowhammer对策电路10为dram装置的结构的一部分。在图1中,存储器18以外的部分为rowhammer对策电路10。即,rowhammer对策电路10由激活(active)监控电路12、刷新控制电路14、存储器访问控制电路16、地址锁存电路20a、20b、地址比较电路22构成。在后述的各实施方式中,除了存储器以外的部分也为rowhammer对策电路。

在图1中,外部输入指令和外部输入地址一起被输入到dram装置。dram装置对由该外部输入地址指定的存储单元执行由外部输入指令指定的工作。像这样,外部输入地址和外部输入指令同时被输入到dram装置,该外部输入指令指定针对由该外部输入地址指定的存储单元的处理。

外部输入指令输入到存储器访问控制电路16。存储器访问控制电路16为对dram装置的工作进行控制的电路,基于被输入的外部输入指令,关于存储器18执行规定的工作。

另外,存储器18相当于专利请求的范围中的存储器部的优选的一个例子。此外,后述的实施方式中的存储器38、58、78也相当于专利请求的范围中的存储器部的优选的一个例子。

在本实施方式1中,外部输入指令除了输入到存储器访问控制电路16以外,还输入到激活监控电路12、刷新控制电路14、地址锁存电路20a、20b、以及地址比较电路22。

外部输入地址被输入到存储器访问控制电路16。存储器访问控制电路16为对dram装置的工作进行控制的电路,对输入的外部输入地址所指定的存储单元执行外部输入指令所指定的规定的工作。

在本实施方式1中,外部输入地址除了输入到存储器访问控制电路16以外,还输入到地址锁存电路20a、20b和地址比较电路22。

刷新控制电路14为对dram装置的刷新进行控制的电路,首先在作为外部输入指令而被输入了刷新指令的情况下,控制存储器访问控制电路16而使其执行常规的(通常的)刷新工作。该工作本身如字面意思那样是现有技术中的刷新工作其本身。

存储器访问控制电路16相当于专利请求的范围中的存储器访问控制部的优选的一个例子。后述的实施方式2~4的存储器访问控制电路36、56、76也同样地相当于专利请求的范围中的存储器访问控制部的优选的一个例子。

在本实施方式1中,刷新控制电路14的特征点为,在执行常规的刷新工作时,在输入刷新指令之前有输入的激活指令(activecommand)的情况下,除了执行常规的刷新工作以外,还执行中断刷新工作。

在本实施方式1中,激活指令是使dram装置的存储器18内的字线活化(activate:使激活)的外部输入指令,读取指令(readcommand)、写入指令(writecommand)、刷新指令(refreshcommand)等为代表性的激活指令。

在这样的激活指令被集中地输入到特定的地址的情况下,像上述那样会发生rowhammer问题。因此,在本实施方式1中,对可能成为rowhammer问题的原因的激活指令进行监控等。

另外,刷新控制电路14相当于专利请求的范围中的刷新控制部的优选的一个例子。此外,后述的实施方式中的刷新控制电路34、54、74也相当于专利请求的范围中的刷新控制部的优选的一个例子。

激活监控电路12判断是否存在有激活指令。激活监控电路12为如下的电路:对外部输入指令进行监控,监视从输入刷新指令起到输入下一个刷新指令为止是否输入了规定的激活指令。

激活监控电路12对外部输入指令进行监控,在从刷新指令输入到dram装置起,完全没有输入激活指令的状态下再次输入了激活指令的情况下,对后述的刷新控制电路14进行控制而不进行中断刷新(制止中断刷新工作)。在该情况下,刷新控制电路14向存储器访问控制电路16仅指示通常的常规的刷新工作,仅执行常规刷新工作,不执行中断刷新工作。

但是,即使在刷新控制电路14制止中断刷新工作的情况下,存储器访问控制电路16在地址锁存电路20锁存了地址的情况下也会基于该地址执行中断刷新。

另外,激活监控电路12相当于专利请求的范围中的监控部的优选的一个例子。此外,后述的激活监控电路32、52、72也相当于专利请求的范围中的监控部的优选的一个例子。

另一方面,在激活监控电路12不制止中断刷新工作的情况(存在有激活指令的情况)下,刷新控制电路14在执行常规刷新工作时使存储器访问控制电路16执行中断刷新工作。

地址锁存电路20a、20b是对执行中断刷新工作时的地址进行保持的锁存电路,刷新控制电路14针对被地址锁存电路20保持的地址向存储器访问控制电路16指示中断刷新。

地址锁存电路20对外部输入指令进行监视,在输入了刷新指令以外的激活指令的情况下,对输入了该(刷新指令以外的)外部输入指令时的外部输入地址进行锁存。

在本实施方式1中具有2个地址锁存电路20a、20b,能够锁存2个地址。该锁存个数的“2”相当于专利请求的范围中的n的优选的一个例子。

地址比较电路22是以地址锁存电路20不锁存同一地址的方式进行控制的电路。每当输入激活指令时,地址锁存电路20就会对外部输入地址进行锁存,但通过地址比较电路22对现在要锁存的地址和地址锁存电路20已经锁存的地址进行了比较。在该比较的结果为已经锁存的地址和现在要锁存的地址相同的情况下,地址比较电路22对地址锁存电路20进行控制而使锁存工作中止。通过这样的工作防止了锁存同一地址的情况。

另外,地址比较电路22相当于专利请求的范围中的地址比较部的优选的一个例子。此外,后述的实施方式中的地址比较电路42、62、82也相当于专利请求的范围中的地址比较部的优选的一个例子。

在本实施方式1中,地址锁存电路20进行锁存的地址是成为中断刷新的依据的地址。因此,由于锁存同一地址没有意义,所以为了使地址锁存电路20a和地址锁存电路20b锁存不同的地址,设置了地址比较电路22。

本实施方式1中的地址锁存电路20a、20b对外部输入指令进行监视,在外部输入指令为刷新指令的情况下,所述地址锁存电路20a、20b在规定的时刻进行复位,重新成为能够锁存地址的状态。并且,每当输入刷新指令以外的激活指令时,对此时输入的外部输入地址进行锁存。地址锁存电路20执行2次该锁存工作,在锁存了2个地址之后停止锁存工作。

通过这样的工作,地址锁存电路20最多锁存2个在刷新指令与刷新指令之间被输入的激活指令时的外部输入地址。

即,地址锁存电路20从输入刷新指令起,原则上锁存最初的2个激活指令的(不同的)地址。以像这样锁存的地址为依据而执行在输入了刷新指令时的中断刷新。

另外,地址锁存电路20相当于专利请求的范围中的地址锁存部的优选的一个例子。此外,后述的实施方式中的地址锁存电路40、60、80也相当于专利请求的范围中的地址锁存部的优选的一个例子。

本实施方式1的特征点为,在刷新控制电路14基于刷新指令进行常规刷新工作时,对在前一次的常规刷新和此次的中断刷新工作之间被输入的激活指令时的地址进行了锁存(保持)。然后,基于该锁存的地址来执行中断刷新。由此,能够基于在输入了成为rowhammer问题的原因的激活指令时的地址来执行中断刷新工作,能够进行针对可能发生rowhammer问题的地址的中断刷新工作。

工作

以下,基于图2的时序图,对在图1中说明了的本实施方式1的rowhammer对策电路10的工作进行说明。

在图2的时序图中,cmd表示图1中的外部输入指令。act表示刷新指令以外的激活指令,为读取指令等。pre表示对dram装置的预充电(precharge)。ref表示刷新指令。

图2的wl_emable为存储器访问控制电路16对存储器18输出的信号,是使字(行)线活化(activate)的信号。

图2的外部输入地址表示图1的外部输入地址。

图2的地址锁存1set表示图1中的地址锁存电路20a,地址锁存2set表示图1中的地址锁存电路20b。

在图2的时序图中,首先,当输入激活指令act时,存储器访问控制电路16与之相应地输出1脉冲的wl_开启。另外,在该1脉冲中的规定的时刻发出了预充电pre。

在图2的时序图中,连续输入2个激活指令act,此时的外部输入地址依次为#000、#100。最初的地址#000被锁存在地址锁存1set(地址锁存电路20a)。此外,接下来的地址#100被锁存在地址锁存2set(地址锁存电路20b)。

当继2个激活指令act之后输入刷新指令ref时,刷新控制电路14基于该刷新指令ref,向存储器访问控制电路16指示刷新工作。

刷新控制电路14基于刷新指令ref和来自刷新控制电路14的指示,首先执行常规(通常)的刷新工作。在图2所示的例子中,使用3个规定的刷新计数器的值,执行了3次刷新工作。在图2中,计数值为规定的(未图示的)刷新计数器的值,在图2中全部表示为“计数值”,但为在每次刷新工作时就+2的值。在本实施方式1中,设为通过1次刷新工作来一次性执行针对2条字线的刷新工作,计数值增加+2。

本实施方式的特征点为,继3次常规的刷新工作之后执行中断刷新工作。刷新控制电路14还向存储器访问控制电路16进行该中断刷新工作的指示。但是,如上所述,在激活监控电路12未检测到激活指令的情况下,刷新控制电路14不对存储器访问控制电路16进行中断刷新工作的指示,不执行图2中的中断刷新工作。

在本实施方式1中,进行1次中断刷新工作。此时的地址是将锁存在地址锁存1set和地址锁存2set中的地址交替地作为依据来使用的。在图2的例子中,地址锁存1set锁存了的地址#000作为依据而被使用。实际上成为中断刷新工作的对象的地址是地址#000的“附近”的地址。在本实施方式1中,例如,使用了使锁存在地址锁存电路20中的地址的低位1位进行反转而得到的值。即,将锁存在地址锁存1set或2set中的地址进行+1或-1而得到的地址是成为刷新工作的对象的地址。在图2的例子中,将地址锁存1set锁存的地址#000进行了+1的地址即#001,是成为刷新工作的对象的地址。

关于本实施方式涉及的dram装置,作为例子,以将每2条字线作为一对而进行控制的dram装置为例来进行说明。在这样的dram装置中靠近地配置作为该对的字线,事先明确了产生rowhammer问题的字线是该对中的另一方字线。因此,在针对锁存在地址锁存电路20的地址应用了激活指令的情况下,发生rowhammer问题是使该被锁存的地址的最低位1位进行反转而得到的地址,即进行了+1或-1而得到的地址。

存储器访问控制电路16使锁存在地址锁存电路20的地址的最低位1位进行反转,计算出执行中断刷新工作的地址。

另外,在本实施方式1中,地址锁存电路20锁存了2个地址。因此,在中断刷新工作中,以任一方的地址为依据来计算出与刷新工作相关的地址。并且,成为计算依据的地址在刷新工作后被复位,转移到能够锁存新的地址的状态。在图2的例子中,由于使用了地址锁存1set的#000,对#001执行了中断刷新工作,所以地址锁存1set被复位而成为能够锁存新的地址的状态。其结果是,在图2中,在地址锁存1set中锁存了在刷新工作之后紧接着输入了激活指令act时的外部输入地址#111。

另一方面,由于地址锁存2set锁存的地址#100没有在中断刷新工作中被作为依据来使用,所以已锁存的地址被保持。并且,在下一次的刷新工作时的中断刷新工作中被作为依据来使用。即,在图2所示的刷新工作之后下一次进行的刷新工作中,针对将锁存在地址锁存2set中的地址即#100进行+1而得到的#101执行中断刷新工作。

像这样,在本实施方式1中,地址锁存电路20能够锁存2个地址,分别交替地作为中断刷新工作的依据来使用。并且,成为中断刷新工作的对象的地址中的已成为计算依据的一方的地址锁存(1set或2set)被复位,而成为能够锁存新的地址的状态。

另外,在刷新指令和刷新指令之间没有输入其它激活指令的情况下,如上所述,激活监控电路12对刷新控制电路14进行控制,不执行中断刷新工作而仅执行常规刷新工作。

对于rowhammer问题的见解

为了应对rowhammer,本申请发明人考虑如下。

(1)首先,研究rowhammer的最大次数。

设为本实施方式1涉及的dram装置的每个存储体(bank)的总字数为例如32k(wl)来进行研究。在此,wl为wordline,是字线的条数。

在本实施方式1中,在1次常规刷新(aref(autorefresh:自动刷新))中被刷新的字条数(字线条数)如上所述那样为每个存储体6wl(wordline)。如图2中说明的那样,对2条字线进行3次访问,因此共计为6条。

此外,刷新工作的周期tref为7.8μs。即,原则上每7.8μsec刷新指令向dram装置输入。

此外,激活指令输入的间隔trc(min)设为50ns。该trc为最小值。

(2)在如以上这样的前提下,将1个存储体的字线全部刷新所需要的常规的刷新次数如以下这样来计算。

32kwl/6wl约5333次

由于刷新周期tref为7.8μs,所以直至1个存储体被全部刷新为止的时间为

(32kwl/6wl)*7.8μs约41600μs。

在此期间发出激活指令的次数为

((32kwl/6wl))*7.8μs/50ns)

=832k。

因此,有在刷新间隔中应用最大832k次激活指令的可能性。将其记作rh(max)=832k。

(3)需要实施用于解决rh问题的处理的对象字线数

此外,在形成该dram装置的半导体工艺中,将该工艺保证的rh次数、即不发生rowhammer问题的激活指令的次数设为100k。即,只要在应用100k次激活指令之前进行刷新工作,则不会发生rowhammer问题。

因此,针对rowhammer问题必须采取应对措施的字线数约为8.32条。

8.32(wl)=832k/100k

像这样,将需要针对rowhammer问题实施处理的对象字(对象字线)称为rh对象字。在此,rh对象字条数约为8.32条。

(4)此外,对在常规刷新(aref)时命中(hit)rh对象字(对该字执行刷新)的概率进行研究。

首先,求出在输入刷新指令之前使rh对象字进行了活化(activate)的概率,为0.1202(=100/832)。然后,像下述这样求出在执行n次刷新工作的期间一次都没有命中rh对象字的概率。

像这样,根据在本实施方式1中采用的中断刷新方式,只要以输入了激活指令时的外部输入地址为依据,按常规刷新工作实施中断刷新工作,就能够以高概率控制成不发生rowhammer问题。

像这样,根据本实施方式1,能够实现即使不按每条字线设置计数器也能够解决rowhammer问题的dram装置。因此,能够提供一种能够更有效地利用半导体芯片的面积的、面积效率优异的dram装置。

实施方式1的变形例

(1)在上述实施方式1中,将在常规的(通常的)刷新工作和刷新工作之间被输入的激活指令时的外部输入地址作为依据来进行了中断刷新。特别是说明了对刷新工作后的输入了“最初的”2个激活指令时的地址进行锁存,并将其用于中断刷新工作的例子。即,在实施方式1中,地址锁存电路20在锁存了最初的2个地址之后停止。

但是,地址锁存电路20也可以不停止而继续锁存。在像这样构成的情况下,对即将执行刷新工作之前的2个激活指令时的地址进行锁存。因此,也可以不是锁存“最初的”2个地址,而是对在该刷新工作之间的期间中的“最后的”激活指令时的地址进行锁存,并作为中断刷新时的地址的依据来使用。

也就是说,可以在任何时刻对地址进行锁存。可以根据该dram装置的应用程序、使用该dram装置的计算机的用途等酌情进行调整。

(2)在上述实施方式1中,地址锁存电路20构成为能够锁存2个(相当于专利请求的范围中的n的优选的一个例子)地址。但是,锁存个数也可以为1个。即可以为n=1。此外,也可以构成为能够锁存更多的地址。即也可以为n≥3的自然数。在后述的实施方式2~4中也同样地示出了n=2的情况的例子,但也可以为n=1、n≥3。

(3)此外,在上述实施方式1中,相对于1次常规刷新,对1个地址执行了中断刷新工作,但也可以相对于1次常规刷新工作,对2个以上的地址执行中断刷新工作。

(4)此外,在上述实施方式1中,将与输入了激活指令时的地址相邻的地址设为有可能发生rowhammer问题的地址,成为中断刷新工作的对象。但是,也可以不设为相邻的地址而设为附近的地址,此外,也可以将附近的地址的多条字线作为对象来执行中断刷新工作。

第2.实施方式2

在上述实施方式1中,锁存了从输入了(发出)刷新指令之后最初的2个外部输入地址。但是,也可以锁存任意位置(时刻)的地址。在本实施方式2中,对具有能够任意地设定开始锁存地址的时刻的rowhammer对策电路的dram装置进行说明。

结构

图3为示出本实施方式2中的dram装置的rowhammer对策电路30的电路框图。图3所示的rowhammer对策电路30为dram装置的结构的一部分。图3中,存储器38以外的部分为rowhammer对策电路30。即,rowhammer对策电路30由激活监控启动(start)控制电路31、激活监控电路32、刷新控制电路34、存储器访问控制电路36、地址锁存电路40a、40b、以及地址比较电路42构成。

在图3中,与上述的图1不同的结构为激活监控启动控制电路31,其它的结构基本上与实施方式1的图1是相同的,基本上执行相同的工作。

本实施方式2中的激活监控启动控制电路31监视外部输入指令,在从输入刷新指令起检测到例如第3个激活指令之后,将激活监控开启信号设定为开启(“1”),使激活监控电路32以及地址锁存电路40a、40b的工作开始。

另外,激活监控启动控制电路31相当于专利请求的范围中的监控开始部的优选的一个例子。此外,后述的实施方式中的激活监控启动控制电路51、71也相当于专利请求的范围中的监控开始部的优选的一个例子。

激活监控电路32执行与实施方式1的图1的激活监控电路12大致相同的工作。图3的激活监控电路32与图1的激活监控电路12不同,仅在激活监控开启信号为“1”的情况下进行外部输入指令的监视,并检测是否输入了激活指令。

因此,例如在刷新指令ref和刷新指令ref之间仅输入了1个激活指令的情况下,激活监控电路32判断为没有输入激活指令。这一点与实施方式1不同。

此外,地址锁存电路40a、40b执行与实施方式1的图1的地址锁存电路20a、20b大致相同的工作。图3的地址锁存电路40a、40b与图1的地址锁存电路20a、20b不同,仅在激活监控开启信号为“1”的情况下进行外部输入地址的锁存。

因此,在本实施方式2中,地址锁存电路40a、40b从在刷新指令ref和刷新指令ref之间输入了第3个激活指令时的外部输入地址起开始锁存。这一点与实施方式1不同。另外,除此以外的工作与实施方式1的地址锁存电路20a、20b是相同的,锁存的地址的数量为2个这一点等与地址锁存电路20a、20b是相同的。

像这样,本实施方式2的特征点为能够任意地指定开始锁存的地址的位置这一点。

激活监控启动控制电路31向激活监控电路32输出激活监控开启信号,像上述那样对激活监控电路32监视外部输入指令的时刻进行了控制。此外,激活监控启动控制电路31向地址锁存电路40a、40b输出相同的激活监控开启信号,像上述那样对地址锁存电路40a、40b锁存外部输入指令的时刻进行了控制。

作为激活监控启动控制电路31设定的时刻,在上述的例子中设定了在输入刷新指令ref之后从第3个激活指令起的时刻。但是,除了第3个以外,可以是第4个,也可以是第5个,能够任意设定。该设定可以从该dram装置的设计阶段开始决定,也可以在该dram装置的制造工艺时的测试阶段决定(编程),还可以构成为在dram装置制造后能够用来自外部的控制信号对时刻进行任意设定。

另外,这种工作通常也能够表现为在接收m个激活指令之后开始进行地址锁存。在此,m是自然数。

工作

以下,基于图4的时序图,对在图3中说明了的本实施方式2的rowhammer对策电路30的工作进行说明。

在图4的时序图中,与图2的时序图不同的信号为激活监控开启信号,其它的信号基本上与图2的时序图是相同的。此外,在图4中与图2不同,地址锁存1set为地址锁存电路40a,地址锁存2set为地址锁存电路40b。

在图4的时序图中,首先,当输入激活指令act时,存储器访问控制电路16与之相应地输出1脉冲的wl_开启信号。另外,在该1脉冲中的规定的时刻发出预充电pre这一点与图2是相同的。

在图4的时序图中,示出了连续输入了5个激活指令act的例子。此时的外部输入地址依次为#000、#100、#200、#300、#400。

本实施方式2的特征点为,直到输入最初的2个激活指令为止,激活监控开启信号设定为“0”。该信号是像上述那样由激活监控启动控制电路31生成,并向激活监控电路32、地址锁存电路40a、40b供给的信号。激活监控启动控制电路31在检测到2个激活指令之后,将激活监控开启信号设定为“1”,使激活监控电路32的监视功能开启(enable),使地址锁存电路40a、40b开始锁存工作。

其结果是,激活监控电路32从第3个激活指令起检测激活指令,对刷新控制电路34进行控制,以使在下一次的常规刷新工作时执行中断刷新工作。

此外,地址锁存电路40a、40b对第3个激活指令时的外部输入地址即#200进行锁存。接着,对第4个激活指令时的外部输入地址即#300进行锁存。

由此,如图4所示,地址锁存1set(地址锁存电路40a)对地址#200进行锁存,地址锁存2set(地址锁存电路40b)对地址#300进行锁存。

当继5个激活指令act之后紧接着输入刷新指令ref时,刷新控制电路34基于该刷新指令ref,向存储器访问控制电路36指示刷新工作。

存储器访问控制电路36基于刷新指令ref和来自刷新控制电路34的指示,与图2同样地执行3次常规(通常)的刷新工作。

在本实施方式2中,也在3次常规的刷新工作之后紧接着执行中断刷新工作。该中断刷新工作本身与实施方式1是相同的。此外,中断刷新工作进行1次。此时的地址是将锁存在地址锁存1set和地址锁存2set中的地址交替地作为依据来使用的,这一点也与实施方式1是相同的。

在图4的例子中,地址锁存1set锁存了的地址#200作为依据而被使用。实际上成为中断刷新工作的对象的地址是地址#200的“附近”的地址。在本实施方式2中,例如,使用了使锁存在地址锁存电路20中的地址的最低位1位进行反转而得到的值#201来作为附近的地址。

其它的工作与实施方式1相同,在实施方式2中也使用了相邻的地址(使最低位1位进行反转而得到的地址)作为附近的地址。

另外,在图4所示的时序图中,在执行常规刷新工作和中断刷新工作之后,激活监控启动控制电路31从第2个激活指令起将激活监控开启信号设定为“1”,以使从第2个激活指令起进行外部输入指令的监视。由此,地址锁存电路40a、40b也从第2个激活指令起,开始锁存在输入了该激活指令时的外部输入地址。例如,在图4所示的例子中,示出了将刷新工作后的第2个激活指令时的外部输入地址即#222锁存在地址锁存1set的工作。

像以上说明的那样,根据本实施方式2,能够自由地设定开始监视指令的时刻、对地址进行锁存的时刻,因此能够应用于各种半导体工艺的dram装置,容易防止rowhammer问题的发生。

实施方式2的变形例

(1)实施方式1的变形例中说明的各种变形(variation)也能够应用于本实施方式2。例如,地址锁存电路40a、40b可以连续地执行锁存工作,锁存的地址的数量也可以为3个以上。中断刷新工作可以为2次以上,附近的地址可以扩展到可能发生rowhammer问题的多条字线。

(2)此外,在本实施方式2中,激活监控启动控制电路在接通电源后,从第3个激活指令起开始监视外部输入指令,从第3个激活指令起开始锁存外部输入地址。并且,在执行了常规刷新工作之后,从第2个激活指令起开始监视外部输入指令,从第2个激活指令起开始锁存外部输入地址。

像这样,在刚接通电源之后和执行了常规刷新工作之后使时刻不同,这在半导体的工作上有时是合理的。此外,也能够任意设定各自的时刻。例如,也可以以如下方式设定:在刚接通电源后从第4个激活指令起进行监视,在执行了常规刷新工作之后从第6个激活指令起进行监视等。

但是,也可以根据半导体工艺、电路结构,在接通电源之后和执行了常规刷新工作之后应用相同的时刻。例如,也优选设定为都从第4个激活指令起开始监视。

(3)进而,还优选将上述时刻设定为随机的时刻。例如,可以进行此次锁存第3个地址、下次锁存第5个地址等的处理。这样的随机的时刻可以由随机数生成,也可以利用激活指令的发生时刻等各种时间信息等来生成随机的时刻。这样的工作也能够表现为在接收第随机数k个地址之后开始进行地址锁存。此外,也可以基于外部输入地址生成随机数,基于该随机数生成时刻。这些时刻也可以由激活监控启动控制电路31生成。在此,随机数k为自然数。

第3.实施方式3

在上述实施方式2中,锁存任意位置(时刻)的地址,例如在锁存了2个地址之后,不重新锁存地址。这与实施方式1也基本上相同。

但是,已知在计算机应用程序中,总是对同一地址的存储器集中地执行访问。例如,连续改写同一变量等。

可认为在这样的连续对同一地址执行了访问的情况下,发生rowhammer问题的可能性高。因此,与上述实施方式2不同,在暂且锁存了2个地址之后,还存在连续地访问的地址的情况下,优选即使将至今为止锁存的地址废弃也要锁存连续地访问的地址。

在本实施方式3中,对具有rowhammer对策电路的dram装置进行说明,所述rowhammer对策电路在存在像这样连续地访问的地址的情况下,能够锁存该地址,并执行以该地址为依据的中断刷新。

结构

图5为示出本实施方式3中的dram装置的rowhammer对策电路50的电路框图。图5所示的rowhammer对策电路50为dram装置的结构的一部分。图5中,存储器58以外的部分为rowhammer对策电路50。即,rowhammer对策电路50由激活监控启动控制电路51、激活监控电路52、刷新控制电路54、存储器访问控制电路56、地址锁存电路60a、60b、地址比较电路62、连续访问计数电路64、连续访问上限判断电路66构成。

在图5中,与实施方式2的图3不同的结构主要是连续访问计数电路64和连续访问上限判断电路66。其它的结构基本上与实施方式2的图3是相同的,除了在本实施方式3中特别说明的工作之外,基本上执行与图3等相同的工作。

本实施方式3中的连续访问计数电路64监视外部输入指令和外部输入地址,在输入了激活指令时的外部输入地址与上一次的输入了激活指令时的外部输入地址相同的情况下,对该相同地址的输入次数进行计数,向连续访问上限判断电路66供给该计数值。

此外,本实施方式3中的连续访问上限判断电路66将上述连续访问计数电路64的计数值与规定的上限值u进行比较,检查连续访问是否超过了上限值u,在超过了的情况下,将连续访问地址信号设定为“1”并输出。在此,上限值u为2以上的自然数。该连续访问地址信号被供给到地址比较电路62。

另外,连续访问上限判断电路66相当于专利请求的范围中的上限判断部的优选的一个例子。此外,后述的实施方式4中的连续访问上限判断电路86也相当于专利请求的范围中的上限判断部的优选的一个例子。

地址比较电路62基本上执行与图1(或图3)中的地址比较电路22(或42)相同的工作。但是,在上述连续访问地址信号为“1”的情况下,本实施方式3的地址比较电路62对地址锁存电路60a、60b强制地指示外部输入地址的锁存。

地址锁存电路60a、60b基本上执行与图1(或图3)中的地址锁存电路20a、20b(或40a、40b)相同的工作,但是,在从地址比较电路62强制地指示了锁存外部输入地址的情况下,本实施方式3的地址锁存电路60a、60b即使在已经锁存了2个地址的情况下,也会将任一地址废弃而重新锁存外部输入地址。

该结果为,能够对被连续地访问的地址的附近的地址执行中断刷新工作,能够期待更有效地防止rowhammer问题的发生。

另外,图5中示出的激活监控启动控制电路51是与图3的激活监控启动控制电路31相同的电路,但在本实施方式3中,对激活监控启动控制电路51以从第2个激活指令起执行外部输入指令的监视和外部输入地址的锁存的方式进行工作的例子进行说明。

工作

以下,基于图6的时序图,对在图5中说明了的本实施方式3的rowhammer对策电路50的工作进行说明。

在图6的时序图中,与图4的时序图不同的信号为连续访问地址信号,其它的信号基本上与图4的时序图是相同的。此外,在图6中,与图4不同,地址锁存1set为地址锁存电路60a,地址锁存2set为地址锁存电路60b。

此外,连续访问上限判断电路66中的上限值u为4,在连续4次输入了与同一地址相关的激活指令的情况下,连续访问地址信号设定为“1”。

首先,在图6的时序图中,当输入激活指令act时,存储器访问控制电路16与之相应地输出1脉冲的wl_开启信号。另外,在该1脉冲中的规定的时刻发出预充电pre这一点与图4相同。另外,在图6的时序图中,输入了合计8个激活指令。

此外,如上所述,在本实施方式3中,将激活监控启动控制电路51监视外部输入指令的时刻设定为从第2个开始。因此,如图6所示,激活监控开启信号从第2个激活指令起设定为“1”值。

因此,从第2个激活指令act起执行基于激活监控电路52的对激活指令act的监视。同样地,从第2个激活命令act起执行基于地址锁存电路60a、60b的对外部输入地址的锁存。

该结果为,在图6的时序图中,输入了第2个激活命令act时的外部输入地址即#100被锁存在地址锁存1set(地址锁存电路60a)。同样地,输入了第3个激活指令act时的外部输入地址即#200被锁存在地址锁存2set(地址锁存电路60b)。

此后,输入5个激活指令act,但输入了该激活指令act时的外部输入地址均为#300。

如上所述,本实施方式3涉及的连续访问上限判断电路66在与同一地址相符的激活指令变为上限值u个的情况下,在该第u个激活指令中,连续访问上限判断电路66将连续访问地址信号设定为1个脉冲量的“1”。

该连续访问地址信号设定为1个脉冲量的“1”的结果为,地址比较电路62基于该信号使地址锁存电路60a、60b锁存外部输入地址。其结果为在本实施方式3中,使地址锁存1set锁存被连续地输入的该外部输入地址即#300。

本实施方式3的特征点为以如下方式构成:即使在地址锁存1set和地址锁存2set都锁存了外部输入地址之后,还连续地输入了4个(=u)与同一外部输入地址相符的激活指令act的情况下,地址锁存1set(或2set)锁存该同一外部输入地址。该结果为,在连续地对同一地址进行了访问的情况下,能够对以该地址为依据的地址(的字线)执行中断刷新工作,能够有效地防止rowhammer问题的发生。

在图6的时序图中,在输入了5个与#300的地址相符的激活指令act之后,输入了刷新指令ref。当输入该刷新指令ref时,刷新控制电路54基于该刷新指令ref,向存储器访问控制电路56指示刷新工作。

存储器访问控制电路56基于刷新指令ref和来自刷新控制电路54的指示,与图2(或图4)同样地执行3次常规(通常)的刷新工作。此外,与图2(图4)同样地,紧接着执行中断刷新工作。该中断刷新工作本身与实施方式1、2相同。

本实施方式3的特征点为,成为中断刷新工作时的对象的地址是以锁存在地址锁存1set的#300为依据而使该地址最低位1位进行反转后的#301。

另外,与实施方式1、2同样地,由于将锁存在地址锁存2set和1set中的地址交替地作为依据来利用,所以有时根据情况,针对以地址锁存2set锁存了的#200为依据的地址#201来执行中断刷新,在输入了下一次的常规刷新指令ref时执行针对上述的#301的中断刷新工作。以上所述的工作以外的其它工作与实施方式2相同。

如以上所说明的那样,根据本实施方式3,在输入了激活指令act时的外部输入地址连续u个相同的情况下,对以该外部输入地址为依据的地址执行中断刷新工作。因此,rowhammer对策电路50能够更有效地防止rowhammer问题的发生。同样地,具有rowhammer对策电路50的dram装置能够更有效地防止rowhammer问题的发生。此外,当然,与上述实施方式1相同,不需要按每条字线具有计数器,所以能够更有效地利用半导体芯片的面积,与现有技术中的dram装置相比,能够使相同容量的dram装置的芯片面积变小。

实施方式3的变形例

(1)实施方式1、2的变形例中说明的各种变形也能够应用于本实施方式2。例如,地址锁存电路40a、40b可以连续地执行锁存工作,锁存的地址的数量也可以为3个以上。中断刷新工作可以为2次以上,附近的地址也可以扩展到可能发生rowhammer问题的多条字线。

此外,与实施方式2中所示的例子同样地,能够任意地设定开始监视外部输入指令的时刻、锁存外部输入地址的时刻。此外,也能够使该时刻在刚接通电源之后和执行了常规刷新工作之后不同。进而,也能够随机地设定这些时刻。

(2)此外,在上述实施方式3中,将上限值u设定为2以上的自然数,但优选根据制造dram装置的半导体工艺、dram装置的电路结构等来设定适当的数作为u。此外,还优选以能够在使dram装置完成之后从外部设定u的方式构成。

第4.实施方式4

在上述实施方式1~3中,基于输入了激活指令act时的外部输入地址,对其附近的地址(相邻的地址)进行中断刷新工作,能够有效地防止rowhammer问题的发生。

但是,该中断刷新动是与常规的刷新工作独立地进行的,也有可能对同一地址执行两个刷新工作,但对同一地址重复地执行刷新工作是无用的,可能成为不必要妨碍作为常规的存储装置的工作的原因。

即,在执行常规刷新工作时的地址是锁存在地址锁存电路的地址的附近的地址的情况下,不需要进行中断刷新工作。

在本实施方式4中,对在像这样执行常规刷新工作时的地址是锁存在地址锁存电路的地址的附近的地址的情况下执行像制止(中止)中断刷新工作这样的工作的dram装置进行说明。

结构

图7为示出本实施方式4中的dram装置的rowhammer对策电路70的电路框图。图7所示的rowhammer对策电路70为dram装置的结构的一部分。图7中,存储器78以外的部分为rowhammer对策电路70。即,rowhammer对策电路70由激活监控启动控制电路71、激活监控电路72、刷新控制电路74、存储器访问控制电路76、地址锁存电路80a、80b、地址比较电路82、连续访问计数电路84、连续访问上限判断电路86构成。

在图7中,执行与实施方式3的图5不同的工作,实施方式4中的特征性的结构之一是地址比较电路82。该地址比较电路82在原则上执行与上述实施方式3中的地址比较电路62相同的工作,而执行与在执行常规刷新工作时的地址之间的比较这一点是本实施方式4的特征点。

在本实施方式4中,存储器访问控制电路76也基于外部输入指令和来自刷新控制电路74的控制信号,执行常规刷新工作。该工作与实施方式1~3是相同的。但是,在本实施方式4中存储器访问控制电路76向外部输出了在执行常规刷新工作时的地址来作为常规刷新地址。并且,地址比较电路82比较了该常规刷新地址是否位于由地址锁存电路80a、80b锁存的地址的附近。该比较的结果为,在判断为常规刷新地址位于由地址锁存电路80a、80b锁存的地址的附近的情况下,为了不执行中断刷新工作而对地址锁存电路80a、80b的内容进行复位。在该情况下,被复位的是判断为常规刷新地址位于附近这样的地址,是地址锁存电路80a、80b中的任一方或者双方的地址。

如果,在地址锁存电路80a、80b锁存的地址的双方的附近存在上述常规刷新地址的情况下,地址锁存电路80a、80b锁存的地址双方都被复位,其结果为不执行中断刷新工作。

此外,在地址锁存电路80a、80b锁存的地址中的任一方的地址的附近存在上述常规刷新地址的情况下,地址锁存电路80a、80b的位于其附近的一方的地址被复位,其结果为,基于没有被复位的一方的地址,对其附近的地址执行中断刷新工作。

其结果为,能够防止针对位于附近的接近的地址重复执行常规刷新工作和中断刷新工作,所以能够防止执行不需要的刷新工作,更有效地防止rowhammer问题的发生。其结果为能够提供一种不会使作为dram装置的性能降低到必要以上的dram装置。

工作

以下,基于图8的时序图对在图7中说明了的本实施方式4的rowhammer对策电路70的工作进行说明。

图8的时序图中的工作与实施方式3中的图6的时序图同样地,将地址#100锁存在地址锁存1set,将地址#200锁存在地址锁存2set。并且,由于连续地输入了4个以同一地址为依据的激活指令act,所以与实施方式3同样地将该地址#300锁存在地址锁存1set。

另外,地址锁存1set为地址锁存电路80a,地址锁存2set为地址锁存电路80b。

在图8的时序图中,与图6的时序图的不同点为,成为常规刷新工作的对象的最初的地址为#301。

因此,在执行了图8的时序图中的常规刷新工作的最初的周期中,地址比较电路82判断为常规刷新地址(即#301)位于锁存在地址锁存1set的地址#300的附近。因此,地址比较电路82对位于该附近这样的成为判断的依据的地址锁存1set进行复位。

在本实施方式4中,也在常规刷新工作之后紧接着执行中断刷新工作。此时,以地址锁存1set(或2set)为依据而获得作为中断刷新工作的对象的地址这方面与实施方式1~3是相同的。在图8的例子中,由于复位了地址锁存1set,所以将锁存在地址锁存2set的地址作为依据而求出了与中断刷新工作相关的地址。在本实施方式4中,也与上述同样地,求出将锁存在地址锁存2set的地址#200的最低位1位进行反转后的#201,来作为成为中断刷新工作的对象的地址。其结果为像图8所示的那样对地址#201执行中断刷新工作。

如上所述,根据本实施方式4,判断常规刷新地址是否位于成为中断刷新工作的依据的(被锁存的)地址的附近,在位于附近的情况下,制止了针对以该地址为依据的地址(附近的地址)的中断刷新工作。其结果为,能够防止对位于附近的地址重复进行刷新工作,所以能够更有效地防止rowhammer问题的发生,能够提供不会使性能不必要地降低的dram装置。

实施方式4的变形例

(1)实施方式1~3的变形例中说明的各种变形也能够应用于本实施方式4。

(2)此外,在上述实施方式4中,地址比较电路82判断常规刷新地址是否位于锁存在地址锁存电路80的地址的附近。关于是否位于附近的判断,与单纯的地址的比较的意思略有不同。因此,本实施方式4的地址比较电路82也可以作为与上述的实施方式1~3的地址比较电路22、42、62不同的结构来设置。

“附近”的地址是指表示由于rowhammer问题的发生而受到影响的字线的地址,存在1个的情况,此外也存在多个的情况。特别是在本实施方式中,将与利用激活指令而访问的字线相邻的字线的地址作为优选的例子来进行说明。此外,特别是作为相邻的字线的地址的例子,列举了对成为依据的地址进行+1、或-1而得到的地址作为优选的例子。例如,还优选设为使成为依据的地址的最低位1位进行反转而得到的地址。

(3)此外,在上述实施方式4中,存储器访问控制电路76输出了常规刷新地址。这是因为存储器访问控制电路76保持有刷新地址的计数器。但是,该常规刷新地址也可以由其它电路输出而向存储器访问控制电路76供给。

例如,为了使刷新控制电路74管理常规刷新地址,可以具有刷新计数器等。在该情况下,刷新控制电路74对地址比较电路82供给常规刷新地址。

总结

以上,对本发明的实施方式进行了详细说明,但上述的实施方式仅示出了实施本发明时的具体例子。本发明的技术范围并不限定于所述实施方式。本发明能够在不脱离其主旨的范围内进行各种变更,这些也包含在本发明的技术范围内。

附图标记说明

10、30、50、70:rowhammer对策电路;

12、32、52、72:激活监控电路;

14、34、54、74:刷新控制电路;

16、36、56、76:存储器访问控制电路;

18、38、58、78:存储器;

20a、20b、40a、40b、60a、60b、80a、80b:地址锁存电路;

22、42、62、82:地址比较电路;

31、51、71:激活监控启动控制电路;

64、84:连续访问计数电路;

66、86:连续访问上限判断电路。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1