CN109461465B - 使用运行时逆向工程优化dram刷新 - Google Patents
使用运行时逆向工程优化dram刷新 Download PDFInfo
- Publication number
- CN109461465B CN109461465B CN201811025373.9A CN201811025373A CN109461465B CN 109461465 B CN109461465 B CN 109461465B CN 201811025373 A CN201811025373 A CN 201811025373A CN 109461465 B CN109461465 B CN 109461465B
- Authority
- CN
- China
- Prior art keywords
- row
- command
- act
- bank
- ras
- 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
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
- G11C11/40618—Refresh operations over multiple banks or interleaving
-
- 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
- G11C11/40611—External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
-
- 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
- G11C11/40622—Partial refresh of memory arrays
-
- 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/4072—Circuits for initialization, powering up or down, clearing memory or presetting
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/023—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50012—Marginal testing, e.g. race, voltage or current testing of timing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50016—Marginal testing, e.g. race, voltage or current testing of retention
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/401—Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C2211/406—Refreshing of dynamic cells
- G11C2211/4061—Calibration or ate or cycle tuning
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
可以提供用于刷新DRAM的方法和相关DRAM控制器。基于优化的命令序列,利用外部多行多库刷新功能刷新DRAM的方法包括:在DRAM的初始化时确定用于外部多行多库刷新功能的操作间时序参数;确定行级激活(ACT)和预充电(PRE)命令的优化时序参数;以及将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新DRAM。更换SDRAM的自动刷新功能。
Description
技术领域
本发明大体上涉及一种刷新DRAM的方法,更具体,涉及基于优化的命令序列刷新具有新颖的外部多行多库刷新功能的DRAM。本发明还涉及相关的DRAM控制器。
背景技术
主存储器是现代计算系统中的关键组件,其与数据访问速度、数据的可用性和一致性以及安全性方面相关。为了避免从较慢的大容量存储设备进出分页数据或分页数据进出到较慢的大容量存储设备,目前的趋势是安装越来越多的主存储器容量。内存计算甚至更多地增加了对大量主存储器的需求。
主存储器通常以DRAM(dynamic random access memory,动态随机存取存储器)的形式实现。这些存储器设备需要定期刷新数据。众所周知,DRAM刷新在时间和能耗方面都是昂贵的,并且其开销变得越来越大。DRAM刷新的成本随着容量线性增长,这意味着每个密度代的存储器芯片的成本呈指数级增长。现代JEDEC(原联合电子设备工程委员会,JointElectron Device Engineering Council,今天的JEDEC固态技术协会)同步DRAM(synchronous DRAM,简称SDRAM)使用一种特殊的自动刷新命令,该命令对外部存储控制器是不透明的,并且在内部(即,DRAM芯片本身的内部)处理所有刷新操作和时序。
为了补偿一些不断增加的刷新开销,JEDEC设计了自动刷新功能,该功能在内部使用了高度优化的架构,尤其是,该架构违反了外部控制器在正常操作期间必须满足并遵守的互操作时序规则(例如,对于PREcharge库、ACTivate行和/或读/写操作列)。之所以DRAM可以在内部违反外部时序参数,是因为在刷新期间,可以理解为与“正常”操作不同,读或写操作将不遵循(多行)ACTivate操作。内部机制同时刷新数字行(而不仅仅像外部ACT和PRE命令那样一次刷新一个数字行)。对于内部自动刷新功能,没有命令/地址总线限制。SDRAM的典型示例是广泛使用的DDR3存储器。
存在大量开发用于逐行手动/外部刷新DRAM的方案的研究,其表征每行保留数据的能力,并消除对可以不经常刷新的行的不必要的刷新操作。已经证明这些方案非常有效,因为消除刷新改善了存储器系统的能耗和性能。这为DRAM系统效率的显着提高提供了潜力。
然而,这些方案与JEDEC SDRAM规范的现代自动刷新功能不兼容。此外,无论该行是否需要刷新,自动刷新不能跳过任何行。
因此,手动/外部方案使用显式行级激活(ACT)和预充电(PRE),并且仍然逐行刷新,称为行粒度刷新(RGR,Row Granular Refresh)。正因为如此,研究表明这些刷新方案无法通过自动刷新机制利用内部可用的优化。
先前的工作已经承诺对DRAM架构和协议进行最小的改变,允许外部刷新操作的行粒度协议和内部优化的使用(K.K.-W Chang,D.Lee,Z.Chrishti,A.R.Alameldeen,C.Wilkerson,Y.Kim and O.Multu:“improving DRAM performance by parallelizingrefresh with accesses”in high-performance computer architecture(HPCA),2014IEEE 20th International Symposium,2014)。
其他先前的工作还声称,通过使用单独的ACT和PRE命令,即RGR,可能无法使优化的自动刷新的性能和能耗节省相等。比较I.Bhati,Z.Chishti,S.-L.Lu and B.Jacob,"Flexible auto-refresh:enabling scalable and energy-efficient DRAM refreshreductions,"in Proceedings of the 42nd Annual International Symposium onComputer Architecture,2015和I.Bhati,M.-T.Chang,Z.Chishti,S.-L.Lu andB.Jacob,"DRAM Refresh Mechanisms,Trade-offs,and Penalties,"Computers,IEEETransactions on,vol.PP,no.99,pp.1-1,2015。
因此,需要明显矛盾的内部和外部刷新机制,该刷新机制看似彼此排斥。
发明内容
根据独立权利要求,可以通过用于刷新DRAM和相关DRAM控制器的新方法来解决该需求。
根据本发明的一个方面,可以提供一种用于基于优化的命令序列来刷新具有外部多行多库刷新功能的DRAM的方法。所述方法可以包括:在DRAM的初始化时确定用于外部多行多库刷新功能的操作间时序参数;确定用于行级激活(ACT)和预充电(PRE)命令的优化时序参数;以及将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新DRAM。
根据本发明的另一个方面,可以提供一种用于基于优化的命令序列来刷新具有外部多行多库刷新功能的DRAM的DRAM控制器。所述DRAM控制器可以包括:第一确定单元,适于在DRAM初始化时确定用于外部多行多库刷新功能的操作间时序参数;以及第二确定单元,适于确定用于行级激活(ACT)和预充电(PRE)命令的优化时序参数。
所述DRAM控制器还可以包括:适于将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新DRAM。
可以注意到,多行多库刷新功能包括新颖的信号序列,并且可以不与JEDEC SDRAM的内部自动刷新机制相互混合。实际上,这里提出的多行多库刷新功能可以取代在多个JEDEC SDRAM中的内部自动刷新机制(这些机制也是多行多库刷新)。因此,与传统的外部RGR(Row Granular Refresh,行粒度刷新)方法相比,新的刷新功能可以被称为优化行粒度刷新ORGR(Optimized Row Granular Refresh)。
所提出的刷新DRAM的方法可以提供多种优点和技术效果:
该逐行刷新功能可以由存储控制器外部触发,也可以用于标准的JEDEC兼容SDRAM存储器芯片,而不需要对SDRAM存储器芯片进行任何更改。因此,使用这里提出的技术可以减少SDRAM通常所需的刷新周期时间和能耗。实际上,可以看出,这里提出的最先进的DDR3作为DRAM的先进刷新技术可以产生优化的刷新减少方案,如上所述的技术方案已经高度优化,比内部自动刷新功能高出45%的性能效率。其也可能比非优化的逐行刷新高出10%的能耗效率。所提出的技术可以增强所有使用RGR的现有刷新优化方案,并且其不需要对DRAM或DRAM协议(即DRAM的时序规范)进行任何更改。此外,当DRAM仅部分刷新时,所提出的技术ORGR的性能和能耗改进将更高。
因此,新的刷新功能/技术可以与现有的标准SDRAM一起使用,进一步优化计算机系统的吞吐量和能耗效率。因此,不使用而是替换SDRAM内部刷新机制(即自动刷新功能)。
执行刷新操作时,通过改进三个DRAM时序参数tRAS(ACT和PRE到同一库之间的时间)、tRRD(两个连续ACT命令之间的时间)、tRP(PRE命令完成的时间),基本上实现了这些优点。所有优化的参数可以在DRAM的初始化和校准阶段期间导出。然后,优化的参数可以由新型存储控制器使用所提出的多行多库刷新功能用于外部刷新,而不是使用SDRAM内部(自动)刷新机制的单个触发器刷新。
对于正常命令(如读或写),标准时序规范(如SDRAM时序规范)可由存储器或DRAM控制器使用。因此,SDRAM的正常操作完全不受额外开销的影响。
在下文中,将描述该方法的发明构思的另外的实施例,其也可以适用于相关系统:
根据该方法的一个优选实施例,具有内部多行多库刷新功能的DRAM为JEDECSDRAM,例如典型的工业标准DDR3DRAM。如今,它们通常用于许多应用中。因此,新提出的概念可以迎合大部分DRAM市场。新的外部多行多库刷新功能可以应用于这种JEDEC SDRAM。
根据所述的方法的特定实施例,所述优化时序参数包括从包含以下项的组中选择至少一个:ACT命令和PRE命令之间的时间(tRAS)、两个连续的ACT命令之间的时间(tRRD)、四库激活窗口(tFAW)和PRE命令完成的时间(tRP)。通常,那些时序参数的正确相互关系可以提供目标结果。
根据一个有利实施例,该方法可以继续使用未优化的时序参数用于操作命令,特别是读取和/或写入命令。因此,可以不更改这些操作而使用正常的JEDEC SDRAM时序规范。
根据该方法的另一有利实施例,通过发出(特别是在时间方面)更接近ACT命令的PRE命令,可以逐步减小时序参数tRAS,直到检测到存在数据选通(data strobe)DQS信号以响应之后发出的RD(读取)命令。这样,可以以优雅的方式确定优化的t* RAS时序的预值。可以注意到,差分输入/输出数据选通信号通常可以表示为DQS/#DQS信号(DQS)。
根据进一步优选的实施,该方法还可包括:(a)使用第一ACT命令寻址DRAM中存储器单元的第一库中的第一行,如R1;(b)使用PRE命令寻址第一库中的同一第一行R1,其时序违反tRAS,即具有相对于规范太短的值;(c)在第一ACT命令之后的时间tRAS之后,用第二ACT命令寻址DRAM中存储器单元的第一库中的另一行,如R2;(d)根据DRAM的时序规范(再次太短),通过违反与第二ACT命令相关的tRCD要求的RD(读取)命令寻址DRAM中存储器单元的第一库;和(e)响应于第一库中的读取命令,确定从用第二ACT命令打开的另一行所接收的错误输出数据(输入/输出DQ信号)。可以重复步骤(a)至(e),从而逐步减小tRAS的步长,直到确定通过读取命令可以接收到先前写入到第一行R1的数据,而不是写入另一行R2的数据。
因此,在DRAM控制器侧执行和控制比较。有利地,R1和R2中的数据模式应该是不同的。在可以执行步骤(a)至(e)之前,可以将不同的数据模式写入单元。这可以作为所提出的步骤序列的初始化的一部分来执行。使用的数据模式可以是例如“0000 0000”对比“11111111”。这样,可以保证一个字节的所有比特都符合上述条件。
这样,可以确定逐步迭代优化的命令序列。
根据该方法的另一优选实施例,优化时序参数t* RAS由逐步减小的时序参数tRAS加上DRAM时钟周期确定。因此,最佳tRAS值,即tRASmin可以通过t* RAS的预值加上tCK来计算,其中tCK为DRAM的时钟信号。
根据该方法的进一步有利实施例,如在SDRAM自动刷新机制中那样,可以逐行地执行(特别是外部刷新DRAM)而不是一次性地执行多行自动刷新。除此之外,DRAM的外部刷新也可以逐行执行。因此,DRAM的所有单元可以通过本发明的刷新概念来寻址。
附图说明
应该注意,本发明的多个实施例是参考不同主题描述的。尤其是,一些实施例参考方法类权利要求描述,而另一些实施例参考装置类权利要求描述。然而,除非另有说明,本领域技术人员将从以上和以下描述中归集属于一个种类主题的特征,以及与不同主题相关的特征之间的任何组合,尤其是,在方法类权利要求的特征与装置类权利要求的特征之间的任何组合,认为已在本文件中公开。
以下定义的方面和本发明的其他方面从下文将要描述的实施例的示例中显而易见,并且参考实施例的示例进行解释,但是本发明不限于此。
仅通过示例并参考以下附图,将描述本发明的优选实施例:
图1示出了用于刷新DRAM的本发明方法的实施例的框图。
图2示出了用于DRAM的典型读/写操作的感测方案的实施例。
图3示出了根据所提出的方法的刷新操作的时序图。
图4显示了用于检测tRASmin的第一实施代替方案。
图5示出了用于检测tRASmin的第二实施代替方案的时序图。
图6示出了具有所需元件的DRAM控制器的实施例的框图。
具体实施方式
在本说明书的上下文中,可以使用以下约定、术语和/或表达:
术语“DRAM”(也表示为动态随机存取存储器)可以表示一种易失性存储器,用于将每个数据比特存储在集成电路内的单独电容器中。所述电容器可以充电或放电;这两个状态用比特的两个值来表示,通常称为0和1。即使是“非导电”晶体管也总是有少量的泄漏,因此电容器缓慢地放电,信息最终会消失,除非电容器电荷定期刷新。由于需要刷新,所以其是动态存储器,而不是静态随机存取存储器(static random-access memory,SRAM)和其他静态类的存储器。与闪存不同,(与非易失性存储器相比)DRAM是易失性存储器,因为它在断电时会快速丢失数据。然而,DRAM确实显示出有限的数据剩磁。
DRAM广泛地应用于需要低成本和高容量存储器的数字电子设备中。DRAM的最大应用之一是现代计算机中的主存储器(俗称“RAM”),以及这些计算机中使用的组件的主存储器,例如显卡。
DRAM的优点在于其结构简单:与SRAM(静态RAM)中的四个或六个晶体管相比,每比特仅需要一个晶体管和一个电容器。这允许DRAM达到非常高的密度。使用的晶体管和电容非常小,可以在一个存储器芯片上放置数十亿。由于存储器单元的动态特性,DRAM消耗相对大量的功率,因此需要以不同的方式来管理功耗。
术语“JEDEC SDRAM”可以表示为根据JEDEC固态技术协会的规范的动态RAM,其包括仅需要一个外部触发的内部自动刷新机制,以便在DRAM芯片内部自主地执行多行多库的刷新。DRAM控制器仅需要一个触发信号,以便执行SDRAM芯片的内部自动刷新功能。
术语“内部多行多库自动刷新功能”可以表示根据JEDEC固态技术协会规范的DRAM的自主刷新。
术语“初始化时间”可以表示存储器系统可以首次启动的时间段。这通常可以是开启相关计算机系统的时间。
术语“操作间时序参数”可以表示特定操作或命令之间的时序规范,尤其是特定时间值。这里,ACT和PRE之间的时序(仅限tRAS的初始值)、以及两个连续的ACT命令(tRRD)之间的时间、四个库激活窗口(tFAW)和PRE命令完成的时间(tRP),用于外部多行多库刷新功能。可以再次注意,该功能可以是由DRAM控制器发出的一系列单独命令。
术语“优化时序参数”可以表示用于最佳地执行SDRAM的外部刷新功能的时序参数(尤其是tRASmin)。
术语“行级激活(ACT)”可以表示用于打开特定库中的行的激活命令。SDRAM芯片可以具有多库架构,并且可以按库、行和列进行组织。许多芯片组合在存储器模块上以增加字宽。这可以称为存储器配置。
术语“预充电(PRE)”可以表示用于关闭特定库中的行的命令。因此,状态可能会在“空闲”和“活动”之间不断变化。为了从“空闲”变为“活动”,使用ACT命令:为了从“活动”变为“空闲”,可以使用PREcharge命令。
术语“DQ信号”可以表示有效的输入/输出数据信号,这里是来自存储器设备的一个或多个输出信号。
术语“DQS信号”可以表示有效的输入/输出数据选通信号,这里是来自存储器设备的一个或多个输出信号。
术语“RD(读取)命令”可以表示可以启动读取突发,以将数据从行缓冲器的多个存储器单元移动到上面定义为DQ的输入/输出数据信号。
术语“tRCD”可以表示行地址(Row AddresS,RAS)到列地址(Column AddresS,CAS)延迟的时间。一旦将行地址发送到存储控制器,在访问行的多列之一前存在这个周期的延迟。因此,如果没有选择行,这意味着必须在向DRAM发出RD命令之前等待tRCD。
术语“错误数据”可以表示不期望的数据。例如,如果已经将数据模式写入存储器单元,并且稍后读取存储器单元的内容并将其与最初写入的数据模式进行比较,则如果数据相同则认为数据是“正确的”。如果写入和读取的数据不同,则认为其是“错误的”。
在下文中,将给出对附图的详细描述。图中的所有说明都是示意性的。首先,给出了用于刷新DRAM的本发明方法的实施例的框图。然后,将进一步地描述其他实施例以及DRAM控制器的实施例。
图1示出了利用外部多行多库刷新功能刷新DRAM的本发明方法的实施例的框图。在基本形式中,该方法可以总结为如图1的流程图所示。基于优化的命令序列利用外部多行多库刷新功能刷新DRAM的方法100包括102,在DRAM的初始化时(尤其是在初始化和校准时间时)确定用于外部多行多库刷新功能的操作间时序参数。同样,这不是单个命令,而是一系列不同的命令。
该方法还包括104,确定用于行级激活(ACT)和预充电(PRE)命令的优化时序参数,以及106,为行级ACT和PRE命令应用优化时序参数,用于刷新DRAM以作为外部多行多库刷新功能的一部分。该外部多行多库刷新功能用于替代典型SDRAM芯片的内部自动刷新功能。由于新提出的概念的效率更高,内部自动刷新功能在SDRAM中保持激活状态,但不使用。
图2示出了用于DRAM的标称读/写操作的感测方案的实施例。ACT命令触发本地工作线(local work line,LWL)驱动器,其将LWL升高到高于VDD加VTH的电压。比特线(Bitline)产生一个小电荷,由初级读出放大器(PSA)放大到VDD。当比特线电压升至VDD的约92%时,发出RD(读取)命令,从而升高列选择线(column select line,CSL)。这将在比特线电压中产生下降202,直到CSL降低;这增加了恢复时间,其反映在JEDEC指定的tRAS中。但是,在RGR的情况下,RD命令不遵循ACT命令,因此比特线中没有如图3所示的电压降302。这使得能够快速恢复比特线,因此可以减少tRAS。
可以记住,SDRAM供应商使用内置模拟定时器(实际上是tRASmin定时器),其在最小恢复时间结束之前防止对已经激活的行进行预充电,这可确保数据不会因早期预充电而中断。与这种传统方法相反,所提出的概念依赖于在初始化(和校准)时间期间对DRAM细节的逆向工程,以使用任何所提出的方法找出tRASmin。
图3示出了根据所提出的方法的刷新操作的时序图。示出了新的减少的时序参数t* RP和t* RAS。比较图2和图3,显然t* RAS远小于DRAM的原始JEDEC规范的tRAS。
图4示出了用于tRASmin检测的第一替代实施方案的时序图400。存储控制器最初向任意库(例如,库B1)和行(例如,行R1)发出ACT命令402。然后,在tRAS之后发出PRE命令404,接着在tRP(PRE命令完成的时间)之后发出RD命令406。之所以在PRE命令之后出现的RD命令将被DRAM忽略,是因为库B1已经预充电,因此DQ(S)(数据信号)将不会出现在总线上。然后,控制器通过在更接近ACT命令402的时间发出PRE命令404逐渐减小tRAS,直到响应于RD命令(406)而检测到DQ(S)的存在。当PRE命令进入tRASmin时间时,DRAM忽略PRE命令以防止数据恢复失败,因此稍后出现的RD命令406将从先前激活的库读取。因此,DQ(S)的存在表明DRAM检测到正确定时的RD命令406,并且控制器将当时有效的时序,即,根据所提出的方法,对应的t* RAS+tCK(DRAM时钟周期)作为用于执行优化行粒度刷新(ORGR)的tRASmin。
图5示出了用于确定最小tRAS(即tRASmin)的第二替代实施方案的时序图。如果第一替代实施方案失败(即,如果根据图4的替代实施方案失败),则存储控制器可以执行该测试。
首先,存储控制器向任意库(例如,库B1)和行(例如,行R1)发出ACT命令502。然后,其将PRE命令504发送到同一存储器库,违反了tRAS。稍后,在第一ACT命令502之后的tRAS,其向同一库B1发出另一个ACT命令506,但是向不同的行发出,例如R2。紧接着第二ACT命令506,发出违反tRCD的RD命令508。因此,由于tRCD违规,存储控制器将接收错误数据512以响应于该RD命令508。然后,控制器通过逐步减少tRAS重复发出相同的命令集(ACT 502、PRE 504、ACT 506、RD 508),并在每个步骤中调查数据总线以获得正确的数据。当第二ACT 506命令带有第一ACT命令的tRASmin间隔时,DRAM忽略它并从第一激活行发出读取数据510,因为没有tRCD违反,从而传送正确的数据510。最后,根据所提出的方法,将响应于RD命令在数据总线上观察到正确数据的t* RAS+tCK的值作为用于执行优化行粒度刷新(ORGR)的tRASmin。
图6示出了DRAM控制器的实施例的更形式化的框图,该DRAM控制器基于优化的命令序列利用外部多行多库自动刷新功能刷新DRAM。DRAM控制器包括第一确定单元602,适于在DRAM的初始化和校准时间时确定用于外部多行多库刷新功能的操作间时序参数;第二确定单元604,适于确定(行级激活(ACT)和预充电(PRE)命令的优化时序参数,即tRASmin;以及应用模块606,适于应用行级ACT和PRE命令的优化时序参数,以利用外部多行多库刷新功能刷新DRAM。
出于说明的目的已经给出了对本发明的各种实施例的描述,但是并不旨在穷举或限制于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。这里选择使用的术语是为了最好地解释实施例的原理、实际应用、对市场中所出现技术的技术改进、或使本领域的其他普通技术人员能够理解本文公开的实施例。
这里参考根据本发明实施例的方法和装置(系统)的流程图和/或框图来描述本发明的各方面。可以理解的是流程图图示和/或框图的每个框,以及流程图图示和/或框图中的框的组合,可以通过计算机可读程序指令来实现。
附图中的流程图和/或框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示模块、片段或指令的一部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方式中,框中提到的功能可以不按图中所示的顺序发生。例如,连续示出的两个方框实际上可以基本上同时执行,或者这些方框有时可以以相反的顺序执行,这取决于所涉及的功能。还应注意,框图和/或流程图说明的每个方框,以及框图和/或流程图中的方框的组合,可以通过专用的基于硬件的系统执行指定功能或运行或执行专用硬件和计算机指令的组合来实现。
这里使用的术语仅用于描述特定实施例的目的,并不意图限制本发明。如这里所使用的,单数形式“一”,“一个”和“所述”也旨在包括复数形式,除非上下文另有明确说明。还应当理解,当在本说明书中使用术语“包括”和/或“包含”时,指定所述特征、整体、步骤、操作、元件和/或组件的存在,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其组合。
以下权利要求中的所有装置或步骤加上功能元件的对应结构、材料、动作和等同物,如具体要求保护的那样旨在包括用于结合其他要求保护的元件执行功能的任何结构、材料或动作。出于说明和描述的目的已经给出了对本发明的描述,但是并不旨在穷举或将本发明限于所公开的形式。在不脱离本发明的范围和精神的情况下,许多修改和变型对于本领域普通技术人员来说是显而易见的。选择和描述实施例是为了最好地解释本发明的原理和实际应用,并且使本领域普通技术人员能够理解具有各种修改的各种实施例的本发明,这些修改适合于预期的特定用途。
Claims (14)
1.一种基于优化的命令序列利用外部多行多库刷新功能刷新JEDEC SDRAM的方法,所述方法包括:
-在JEDEC SDRAM的初始化时确定用于外部多行多库刷新功能的操作间时序参数,
-确定用于行级激活ACT和预充电PRE命令的优化时序参数,其中,所述优化时序参数包括ACT命令和PRE命令之间的时间tRAS,还包括从包含以下项的组中选择的至少一个:两个连续的ACT命令之间的时间tRRD、四库激活窗口tFAW和PRE命令完成的时间tRP,
-将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新JEDECSDRAM,
其中,针对操作命令使用未优化的时序参数,以及
其中,对于确定ACT命令和PRE命令之间的优化时间tRAS,所述方法还包括:
-通过发出更接近ACT命令后的PRE命令逐步减小时序参数tRAS,直到响应于PRE命令之后发出的RD读取命令检测到存在DQS信号。
2.根据权利要求1所述的方法,其中,通过逐步减小的时序参数t* RAS加上JEDEC SDRAM时钟周期来确定优化时序参数tRASmin。
3.根据权利要求1至2中任一项所述的方法,其中,逐行执行刷新JEDEC SDRAM。
4.一种基于优化的命令序列利用外部多行多库刷新功能刷新JEDEC SDRAM的方法,所述方法包括:
-在JEDEC SDRAM的初始化时确定用于外部多行多库刷新功能的操作间时序参数,
-确定用于行级激活ACT和预充电PRE命令的优化时序参数,其中,所述优化时序参数包括ACT命令和PRE命令之间的时间tRAS,还包括从包含以下项的组中选择的至少一个:两个连续的ACT命令之间的时间tRRD、四库激活窗口tFAW和PRE命令完成的时间tRP,
-将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新JEDECSDRAM,
其中,针对操作命令使用未优化的时序参数,以及
其中,对于确定ACT命令和PRE命令之间的优化时间tRAS,所述方法还包括:
-(a)使用第一ACT命令寻址JEDEC SDRAM中存储器单元的第一库中的第一行,
-(b)使用时序违反tRAS的PRE命令寻址第一库中的同一第一行,
-(c)在第一ACT命令之后的时间tRAS之后,用第二ACT命令寻址JEDEC SDRAM中存储器单元的第一库中的另一行,
-(d)通过违反与第二ACT命令相关的tRCD要求的RD读取命令寻址JEDEC SDRAM中存储器单元的第一库,
-(e)响应于第一库中的读取命令,确定从随着第二ACT命令打开的另一行接收错误数据DQ,以及
-重复步骤(a)至(e),从而逐步减小tRAS,直到确定通过读取命令接收到先前写入第一行的数据,而不是写入另一行的数据。
5.根据权利要求4所述的方法,其中,将与第二行相比不同的数据写入第一行。
6.根据权利要求4至5中任一项所述的方法,其中,通过逐步减小的时序参数t* RAS加上JEDEC SDRAM时钟周期来确定优化时序参数tRASmin。
7.根据权利要求4至5中任一项所述的方法,其中,逐行执行刷新JEDEC SDRAM。
8.一种基于优化的命令序列利用外部多行多库刷新功能刷新JEDEC SDRAM的DRAM控制器,所述DRAM控制器包括:
-第一确定单元,适于在JEDEC SDRAM的初始化时确定外部多行多库刷新功能的操作间时序参数,
-第二确定单元,适于确定用于行级激活ACT和预充电PRE命令的优化时序参数,其中,所述优化时序参数包括ACT命令和PRE命令之间的时间tRAS,还包括从包含以下项的组中选择的至少一个:两个连续的ACT命令之间的时间tRRD、四库激活窗口tFAW和PRE命令完成的时间tRP,
-应用模块,适于将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新JEDEC SDRAM,
其中,针对操作命令使用未优化的时序参数,以及
其中,对于确定ACT命令和PRE命令之间的优化时间tRAS,所述第二确定单元还适于通过发出更接近ACT命令后的PRE命令逐步减小时序参数tRAS,直到响应于PRE命令之后发出的RD读取命令检测到存在DQS信号。
9.根据权利要求8所述的DRAM控制器,其中,通过逐步减小的时序参数t* RAS加上JEDECSDRAM时钟周期来确定优化时序参数tRASmin。
10.根据权利要求8至9中任一项所述的DRAM控制器,其中,逐行执行刷新JEDEC SDRAM。
11.一种基于优化的命令序列利用外部多行多库刷新功能刷新JEDEC SDRAM的DRAM控制器,所述DRAM控制器包括:
-第一确定单元,适于在JEDEC SDRAM的初始化时确定外部多行多库刷新功能的操作间时序参数,
-第二确定单元,适于确定用于行级激活ACT和预充电PRE命令的优化时序参数,其中,所述优化时序参数包括ACT命令和PRE命令之间的时间tRAS,还包括从包含以下项的组中选择的至少一个:两个连续的ACT命令之间的时间tRRD、四库激活窗口tFAW和PRE命令完成的时间tRP,
-应用模块,适于将优化时序参数应用于行级ACT和PRE命令,以使用外部多行多库刷新功能刷新JEDEC SDRAM,
其中,针对操作命令使用未优化的时序参数,以及
其中,对于确定ACT命令和PRE命令之间的优化时间tRAS,所述第二确定单元还适于:
-(a)使用第一ACT命令寻址JEDEC SDRAM中存储器单元的第一库中的第一行,
-(b)使用时序违反tRAS的PRE命令寻址第一库中的同一第一行,
-(c)在第一ACT命令之后的时间tRAS之后,用第二ACT命令寻址JEDEC SDRAM中存储器单元的第一库中的另一行,
-(d)通过违反与第二ACT命令相关的tRCD要求的RD读取命令寻址JEDEC SDRAM中存储器单元的第一库,
-(e)响应于第一库中的读取命令,确定从由第二ACT命令打开的另一行接收错误数据DQ,以及
-重复步骤(a)至(e),从而逐步减小tRAS,直到确定通过读取命令接收到先前写入第一行的数据,而不是写入另一行的数据。
12.根据权利要求11所述的DRAM控制器,其中,将与写入第二行的数据相比不同的数据写入第一行。
13.根据权利要求11至12中任一项所述的DRAM控制器,其中,通过逐步减小的时序参数t* RAS加上JEDEC SDRAM时钟周期来确定优化时序参数tRASmin。
14.根据权利要求11至12中任一项所述的DRAM控制器,其中,逐行执行刷新JEDECSDRAM。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17189685.5 | 2017-09-06 | ||
EP17189685.5A EP3454337B1 (en) | 2017-09-06 | 2017-09-06 | Using runtime reverse engineering to optimize dram refresh |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109461465A CN109461465A (zh) | 2019-03-12 |
CN109461465B true CN109461465B (zh) | 2023-05-23 |
Family
ID=59811124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811025373.9A Active CN109461465B (zh) | 2017-09-06 | 2018-09-04 | 使用运行时逆向工程优化dram刷新 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10622054B2 (zh) |
EP (1) | EP3454337B1 (zh) |
CN (1) | CN109461465B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10373670B1 (en) | 2018-03-16 | 2019-08-06 | Micron Technology, Inc. | Memory device with an array timer mechanism |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4985868A (en) * | 1986-08-27 | 1991-01-15 | Fujitsu Limited | Dynamic random access memory having improved refresh timing |
JPH1011964A (ja) * | 1996-06-28 | 1998-01-16 | Toshiba Corp | メモリ制御装置およびメモリ制御方法 |
CN1536576A (zh) * | 2003-04-04 | 2004-10-13 | ��ʽ���������Ƽ� | 可降低数据保持方式中电流消耗的半导体存储装置 |
CN1815625A (zh) * | 2005-11-18 | 2006-08-09 | 宁波中科集成电路设计中心有限公司 | 一种同步动态存储器控制器的设计方法 |
CN101796497A (zh) * | 2007-07-18 | 2010-08-04 | 富士通株式会社 | 存储器刷新装置和存储器刷新方法 |
US9069717B1 (en) * | 2012-03-06 | 2015-06-30 | Inphi Corporation | Memory parametric improvements |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2380035B (en) * | 2001-09-19 | 2003-08-20 | 3Com Corp | DRAM refresh command operation |
JP2003297080A (ja) * | 2002-03-29 | 2003-10-17 | Mitsubishi Electric Corp | 半導体記憶装置 |
KR100642414B1 (ko) * | 2004-04-20 | 2006-11-03 | 주식회사 하이닉스반도체 | 반도체 메모리 소자의 제어 회로 |
US7313047B2 (en) * | 2006-02-23 | 2007-12-25 | Hynix Semiconductor Inc. | Dynamic semiconductor memory with improved refresh mechanism |
-
2017
- 2017-09-06 EP EP17189685.5A patent/EP3454337B1/en active Active
-
2018
- 2018-09-04 CN CN201811025373.9A patent/CN109461465B/zh active Active
- 2018-09-05 US US16/121,869 patent/US10622054B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4985868A (en) * | 1986-08-27 | 1991-01-15 | Fujitsu Limited | Dynamic random access memory having improved refresh timing |
JPH1011964A (ja) * | 1996-06-28 | 1998-01-16 | Toshiba Corp | メモリ制御装置およびメモリ制御方法 |
CN1536576A (zh) * | 2003-04-04 | 2004-10-13 | ��ʽ���������Ƽ� | 可降低数据保持方式中电流消耗的半导体存储装置 |
CN1815625A (zh) * | 2005-11-18 | 2006-08-09 | 宁波中科集成电路设计中心有限公司 | 一种同步动态存储器控制器的设计方法 |
CN101796497A (zh) * | 2007-07-18 | 2010-08-04 | 富士通株式会社 | 存储器刷新装置和存储器刷新方法 |
US9069717B1 (en) * | 2012-03-06 | 2015-06-30 | Inphi Corporation | Memory parametric improvements |
Also Published As
Publication number | Publication date |
---|---|
CN109461465A (zh) | 2019-03-12 |
US20190074052A1 (en) | 2019-03-07 |
US10622054B2 (en) | 2020-04-14 |
EP3454337A1 (en) | 2019-03-13 |
EP3454337B1 (en) | 2019-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11610623B2 (en) | Apparatus with a row-hammer address latch mechanism | |
US9653141B2 (en) | Method of operating a volatile memory device and a memory controller | |
US20160225435A1 (en) | Memory device and memory system including the same | |
CN114121077A (zh) | 用于提供刷新地址的设备和方法 | |
US10504582B2 (en) | Timing control circuit shared by a plurality of banks | |
US10614871B2 (en) | Semiconductor devices and semiconductor systems including the semiconductor devices | |
US8935467B2 (en) | Memory system, and a method of controlling an operation thereof | |
US10838623B2 (en) | Magnetic random access memory with dynamic random access memory (DRAM)-like interface | |
KR20180049502A (ko) | 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법 | |
CN115731983A (zh) | 存储器控制器和包括其的存储器系统 | |
US11875844B2 (en) | Static random access memory device | |
US7894290B2 (en) | Method and apparatus for performing internal hidden refreshes while latching read/write commands, address and data information for later operation | |
KR100894252B1 (ko) | 반도체 메모리 장치 및 그의 동작 제어방법 | |
CN109461465B (zh) | 使用运行时逆向工程优化dram刷新 | |
KR102501651B1 (ko) | 리프레쉬 제어 장치 | |
CN112489706A (zh) | 用于基于存储器装置温度来调节存储器装置刷新操作的方法以及相关存储器装置和系统 | |
US11423969B2 (en) | Electronic devices performing temperature information update operation | |
US20230410934A1 (en) | Bonding defect detection for die-to-die bonding in memory devices | |
US20230045263A1 (en) | Memory device and operation method thereof | |
US20230221871A1 (en) | Memory device and operating method thereof | |
CN117253527A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |