CN116250041A - 用于dram的刷新管理列表 - Google Patents
用于dram的刷新管理列表 Download PDFInfo
- Publication number
- CN116250041A CN116250041A CN202180064625.2A CN202180064625A CN116250041A CN 116250041 A CN116250041 A CN 116250041A CN 202180064625 A CN202180064625 A CN 202180064625A CN 116250041 A CN116250041 A CN 116250041A
- Authority
- CN
- China
- Prior art keywords
- command
- row
- memory
- dram
- refresh
- 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
- 230000015654 memory Effects 0.000 claims abstract description 226
- 230000004913 activation Effects 0.000 claims abstract description 32
- 230000004044 response Effects 0.000 claims abstract description 18
- 230000000116 mitigating effect Effects 0.000 claims abstract description 12
- 230000008878 coupling Effects 0.000 claims abstract description 5
- 238000010168 coupling process Methods 0.000 claims abstract description 5
- 238000005859 coupling reaction Methods 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 21
- 239000004744 fabric Substances 0.000 claims description 17
- 238000012544 monitoring process Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 description 38
- 238000007726 management method Methods 0.000 description 25
- 238000001994 activation Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 7
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- 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/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1636—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Dram (AREA)
- Memory System (AREA)
Abstract
存储器控制器包括命令队列,该命令队列具有用于接收存储器访问请求的第一输入,以及存储器接口队列,该存储器接口队列具有用于耦接到存储器通道的输出,该存储器通道适于连接到至少一个动态随机存取存储器(DRAM)模块。刷新控制电路监测要通过该存储器通道发送的激活命令。响应于激活命令满足指定条件,该刷新控制电路识别与该激活命令相关联的候选攻击者行。将命令发送到该DRAM,请求将该候选攻击者行排队以用于在将来的刷新或刷新管理事件中的缓解。
Description
背景技术
计算机系统通常使用廉价和高密度的动态随机存取存储器(DRAM)芯片作为主存储器。当DRAM芯片中的特定行被激活以进行读取或写入时,与该行相关联的字线被激活,并且沿该行的存储器单元的内容被读取到页面缓冲器中。对该行中的存储器单元的后续读取和写入访问可完全在页面缓冲器内进行,而无需再次访问该行。当数据处理器稍后访问同一存储器存储体中的另一行时,沿该行的存储器单元在可激活另一行之前在预充电操作中复原。
现代DRAM芯片通常使用深亚微米技术存储多个兆位(Gb)的数据。由于高密度和小特征尺寸,存储器的行在物理上非常靠近其他行,以致于特定行的激活可能通过改变存储器单元电容器上的电荷来扰乱存储在相邻行中的数据。在过去,这些扰乱通常是无害的,因为会周期性地刷新存储器单元。然而,一些存储器访问模式偶尔会导致某些行在下一个刷新循环之前被激活和预充电很多次,以致于相邻行中的存储器单元损坏并反转逻辑状态。在损坏之后,原始数据丢失并且在后续刷新循环中不能复原。随着特征尺寸变得更小,此问题(称为“行锤击(row hammer)”)变得更难缓解,因为引起该问题所需的行激活次数变得更少。
解决数据扰乱问题的一种已知技术称为目标行刷新(TRR)。为了确保在不刷新相邻行的情况下,DRAM行在刷新周期内不被激活太多次,存储器控制器通过设置某些模式寄存器位将DRAM置于TRR模式。控制器然后发出连续的激活和预充电命令到与潜在攻击者行(aggressor row)物理上相邻的行。通常,TRR模式是自清除的,并且在定义的TRR流程完成之后自动禁用。TRR模式还可以在定义的TRR流程完成时经由模式寄存器设置命令退出。虽然TRR允许存储器控制器缓解行锤击问题,但TRR模式是通过设置模式寄存器进入的,这需要大量的时间,因为在控制器发布模式寄存器设置命令之前,所有存储体必须处于空闲状态。
附图说明
图1以框图形式示出了现有技术中已知的加速处理单元(APU)和存储器系统;
图2以框图形式示出了根据一些实施方案的适合于在类似图1的APU的APU中使用的存储器控制器;
图3以框图形式示出了根据一些实施方案的存储器设备;
图4是根据一些实施方案的用于刷新管理的过程的流程图;
图5是根据一些附加实施方案的用于刷新管理的过程的流程图;
图6是根据一些实施方案的用于选择候选攻击者行的过程的流程图;并且
图7是示出根据一些附加实施方案的用于选择候选攻击者行的过程的流程图。
在以下描述中,在不同附图中使用相同的附图标号指示类似或相同的项。除非另有说明,否则字词“耦接”及其相关联的动词形式包括直接连接和通过本领域已知的方式的间接电连接两者,并且除非另有说明,否则对直接连接的任何描述也意味着使用合适形式的间接电连接的另选实施方案。
具体实施方式
存储器控制器包括命令队列,该命令队列具有用于接收存储器访问请求的第一输入,以及存储器接口队列,该存储器接口队列具有用于耦接到存储器通道的输出,该存储器通道适于连接到至少一个动态随机存取存储器(DRAM)模块。一个仲裁器连接到命令队列以用于从命令队列中选择条目并将这些条目放置在存储器接口队列中,从而使这些条目通过存储器通道被传输。刷新控制电路连接到仲裁器,并且能够操作以监测要通过存储器通道发送的激活命令。响应于激活命令满足指定条件,识别与该激活命令相关联的候选攻击者行。向DRAM传输命令,请求将候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
一种数据处理系统包括:数据处理器;数据织构,该数据织构连接到该数据处理器;以及存储器控制器,该存储器控制器连接到该数据织构以用于履行来自该数据处理器的存储器请求。该存储器控制器包括:命令队列,该命令队列具有用于接收存储器访问请求的第一输入;以及存储器接口队列,该存储器接口队列具有用于耦接到存储器通道的输出,该存储器通道适于连接到至少一个动态随机存取存储器(DRAM)模块。一个仲裁器连接到命令队列以用于从命令队列中选择条目并将这些条目放置在存储器接口队列中,从而使这些条目通过存储器通道被传输。刷新控制电路连接到仲裁器,并且能够操作以监测要通过存储器通道发送的激活命令。响应于激活命令满足指定条件,识别与该激活命令相关联的候选攻击者行。向DRAM传输命令,请求将候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
一种方法包括接收包括存储器读取和存储器写入的多个存储器访问请求。选择性地将用于履行存储器访问请求的存储器访问命令放置在存储器接口队列中,并且将来自存储器接口队列的存储器访问命令传输到耦接到至少一个动态随机存取存储器(DRAM)的存储器通道;监测要通过存储器通道发送的激活命令。响应于激活命令满足指定条件,识别与该激活命令相关联的候选攻击者行。向DRAM传输命令,请求将候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
图1以框图形式示出了现有技术中已知的加速处理单元(APU)100和存储器系统130。APU 100是适合于用作主机数据处理系统中的处理器的集成电路,并且通常包括中央处理单元(CPU)核心复合体110、图形核心120、一组显示引擎122、存储器管理集线器140、数据织构125、一组外围控制器160、一组外围总线控制器170和系统管理单元(SMU)180。
CPU核心复合体110包括CPU核心112和CPU核心114。在该示例中,CPU核心复合体110包括两个CPU核心,但是在其他实施方案中,CPU核心复合体110可包括任意数量的CPU核心。CPU核心112和114中的每个核心双向连接到系统管理网络(SMN)(该SMN形成控制织构)和数据织构125,并且能够将存储器访问请求提供到数据织构125。CPU核心112和114中的每个核心可以是一体式核心,或者可进一步是具有共享某些资源诸如高速缓存的两个或更多个一体式核心的核心复合体。
图形核心120是高性能图形处理单元(GPU),该GPU能够以高度集成和并行方式执行图形操作诸如顶点处理、片段处理、着色、纹理混合等。图形核心120双向连接到SMN和数据织构125,并且能够将存储器访问请求提供到数据织构125。就此而言,APU 100可支持其中CPU核心复合体110和图形核心120共享相同存储空间的统一存储器架构,或其中CPU核心复合体110和图形核心120共享存储空间的一部分、同时图形核心120还使用CPU核心复合体110不能访问的私有图形存储器的存储器架构。
显示引擎122渲染并光栅化由图形核心120生成的对象以用于在监测器上显示。图形核心120和显示引擎122双向连接到公共存储器管理集线器140以用于统一转换为存储器系统130中的适当地址,并且存储器管理集线器140双向连接到数据织构125以用于生成此类存储器访问并且接收从存储器系统返回的读取数据。
数据织构125包括用于在任何存储器访问代理和存储器管理集线器140之间路由存储器访问请求和存储器响应的横杆开关。数据织构还包括由基本输入/输出系统(BIOS)定义的、用于基于系统配置确定存储器访问的目的地的系统存储器映射,以及用于每个虚拟连接的缓冲器。
外围控制器160包括通用串行总线(USB)控制器162和串行高级技术附件(SATA)接口控制器164,它们中的每一者双向连接到系统集线器166和SMN总线。这两个控制器仅仅是可用于APU 100的外围控制器的示例。
外围总线控制器170包括系统控制器或“南桥”(SB)172以及外围部件互连高速(PCIe)控制器174,它们中的每一者双向连接到输入/输出(I/O)集线器176和SMN总线。I/O集线器176也双向连接到系统集线器166和数据织构125。因此,例如,CPU核心可通过数据织构125通过I/O集线器176路由的访问对USB控制器162、SATA接口控制器164、SB 172或PCIe控制器174中的寄存器进行编程。APU 100的软件和固件存储在系统数据驱动器或系统BIOS存储器(未示出)中,系统数据驱动器或系统BIOS存储器可以是多种非易失性存储器类型中的任一种,诸如只读存储器(ROM)、闪存电可擦除可编程ROM(EEPROM)等。通常,BIOS存储器通过PCIe总线访问,并且系统数据驱动器通过SATA接口。
SMU 180是控制APU 100上的资源的操作并使这些资源之间的通信同步的本地控制器。SMU 180管理APU 100上的各种处理器的上电定序,并且经由复位、启用和其他信号控制多个芯片外设备。SMU 180包括一个或多个时钟源(未示出),诸如锁相环路(PLL),以为APU 100的每个部件提供时钟信号。SMU 180还管理各种处理器和其他功能块的功率,并且可从CPU核心112和114以及图形核心120接收测量功率消耗值以确定适当的功率状态。
在该实施方案中,存储器管理集线器140及其相关联的物理接口(PHY)151和152与APU 100集成。存储器管理集线器140包括存储通道141和142以及功率引擎149。存储器通道141包括主机接口145、存储器通道控制器143和物理接口147。主机接口145通过串行存在检测链路(SDP)将存储器通道控制器143双向连接到数据织构125。物理接口147将存储器通道控制器143双向连接到PHY 151,并且符合DDR PHY接口(DFI)规范。存储器通道142包括主机接口146、存储器通道控制器144和物理接口148。主机接口146通过另一SDP将存储器通道控制器144双向连接到数据织构125。物理接口148将存储器通道控制器144双向连接到PHY152,并且符合DFI规范。功率引擎149通过SMN总线双向连接到SMU 180,通过APB连接到PHY151和PHY 152,并且还双向连接到存储器通道控制器143和144。PHY 151具有到存储器通道131的双向连接。PHY 152具有双向连接存储器通道133。
存储器管理集线器140是具有两个存储器通道控制器的存储器控制器的实例化,并且使用共享功率引擎149以将在下面进一步描述的方式控制存储器通道控制器143和存储器通道控制器144两者的操作。存储器通道141和142中的每个存储器通道可连接到最先进的DDR存储器(诸如DDR版本四(DDR4)、低功率DDR4(LPDDR4)、图形DDR版本五(gDDR5))和高带宽存储器(HBM),并且可适于未来存储器技术。这些存储器提供高总线带宽和高速操作。同时,它们还提供低功率模式以节省用于电池供电应用诸如膝上型计算机的功率,并且还提供内置热监测。
存储器系统130包括存储器通道131和存储器通道133。存储器通道131包括连接到DDRx总线132的一组双列直插存储器模块(DIMM),包括代表性的DIMM 134、136和138,它们在该示例中对应于单独的存储列。同样,存储器通道133包括连接到DDRx总线129的一组DIMM,包括代表性的DIMM 135、137和139。
APU 100作为主机数据处理系统的中央处理单元(CPU)操作并且提供在现代计算机系统可用的各种总线和接口。这些接口包括两个双数据速率(DDRx)存储器通道、用于连接到PCIe链路的PCIe根复合体、用于连接到USB网络的USB控制器以及到SATA大容量存储设备的接口。
APU 100还实现各种系统监测和功率节省功能。具体地,一个系统监测功能是热监测。例如,如果APU 100变热,则SMU 180可降低CPU核心112和114和/或图形核心120的频率和电压。如果APU 100变得过热,则可将其完全关断。SMU 180还可经由SMN总线从外部传感器接收热事件,并且作为响应,SMU 180可降低时钟频率和/或电源电压。
图2以框图形式示出了适合于在类似于图1的APU的APU中使用的存储器控制器200。存储器控制器200通常包括存储器通道控制器210和功率控制器250。存储器通道控制器210通常包括接口212、存储器接口队列214、命令队列220、地址生成器222、内容可寻址存储器(CAM)224、包括重放队列230的重放控制逻辑231、刷新控制电路块232、定时块234、页面表236、仲裁器238、纠错码(ECC)检查电路242、ECC生成块244和数据缓冲器246。
接口212具有通过外部总线到数据织构125的第一双向连接,并且具有输出。在存储器控制器200中,该外部总线与由ARM Holdings,PLC of Cambridge,England规定的高级可扩展接口版本四(称为AXI4)兼容,但在其他实施方案中可以是其他类型的接口。接口212将存储器访问请求从称为FCLK(或MEMCLK)域的第一时钟域转换到存储器控制器200内部的称为UCLK域的第二时钟域。类似地,存储器接口队列214提供从UCLK域到与DFI接口相关联的DFICLK域的存储器访问。
地址生成器222解码通过AXI4总线从数据织构125接收的存储器访问请求的地址。存储器访问请求包括物理地址空间中以归一化格式表示的访问地址。地址生成器222将归一化地址转换成可用于对存储器系统130中的实际存储器设备进行寻址以及高效地调度相关访问的格式。该格式包括将存储器访问请求与特定存储列、行地址、列地址、存储体地址和存储体组相关联的区域标识。在启动时,系统BIOS查询存储器系统130中的存储器设备以确定它们的大小和配置,并且对与地址生成器222相关联的一组配置寄存器进行编程。地址生成器222使用存储在配置寄存器中的配置来将归一化地址转换成适当格式。命令队列220是从APU 100中的存储器访问代理诸如CPU核心112和114以及图形核心120接收的存储器访问请求的队列。命令队列220存储由地址生成器222解码的地址字段以及允许仲裁器238高效地选择存储器访问的其他地址信息,包括访问类型和服务质量(QoS)标识。CAM 224包括实施排序规则诸如写后写(WAW)以及写后读(RAW)排序规则的信息。
纠错码(ECC)生成块244确定要发送到存储器的写入数据的ECC。ECC检查电路242针对传入ECC检查所接收的ECC。
重放队列230是用于存储由仲裁器238选取的所选择的存储器访问的临时队列,所选择的存储器访问正在等待响应,诸如地址和命令奇偶校验响应。重放控制逻辑231访问ECC检查电路242以确定所返回的ECC是正确的还是指示错误。重放控制逻辑231发起并控制重放序列,在该重放序列中,在这些周期中的一个周期出现奇偶校验错误或ECC错误的情况下重放访问。所重放的命令放置在存储器接口队列214中。
刷新控制电路232包括用于各种下电、刷新和终端电阻(ZQ)校准循环的状态机,这些校准循环与从存储器访问代理接收的正常读取和写入存储器访问请求分开生成。例如,如果存储器存储列处于预充电下电,则必须周期性地唤醒该存储器存储列以运行刷新循环。刷新控制电路232周期性地并且响应于指定条件而生成刷新命令,以防止由于电荷从DRAM芯片中的存储器单元的存储电容器泄漏而引起的数据错误。刷新控制电路232包括激活计数器248,该激活计数器在该实施方案中具有用于每一存储器区域的计数器,该计数器对通过存储器通道发送到存储器区域的激活命令的滚动数目进行计数。存储区域在一些实施方案中是存储器存储体,并且在其他实施方案中是存储器子存储体,如下文进一步讨论。刷新控制电路232还生成刷新命令,这些刷新命令包括刷新(REF)命令和刷新管理(RFM)命令两者,其中RFM命令引导存储器执行刷新功能以缓解行锤击问题,如下文进一步描述。此外,刷新控制电路232周期性地校准ZQ以防止由于系统的热变化而导致的片上终端电阻的失配。
仲裁器238双向连接到命令队列220并且是存储器通道控制器210的核心。该仲裁器通过智能调度访问来提高效率以提高存储器总线的使用率。仲裁器238使用定时块234通过基于DRAM定时参数确定命令队列220中的某些访问是否有资格发布来实施正确的定时关系。例如,每个DRAM在激活命令之间具有最小规定时间,称为“tRC”。定时块234维持一组计数器,该组计数器基于该定时参数和JEDEC规范中规定的其他定时参数来确定合格性,并且该定时块双向连接到重放队列230。页面表236维持关于仲裁器238的存储器通道的每个存储体和存储列中的活动页面的状态信息,并且双向连接到重放队列230。
响应于从接口212接收到写入存储器访问请求,ECC生成块244根据写入数据计算ECC。数据缓冲器246存储用于所接收的存储器访问请求的写入数据和ECC。当仲裁器238选取对应写入访问以用于调度到存储器通道时,数据缓冲器将组合写入数据/ECC输出到存储器接口队列214。
功率控制器250通常包括到高级可扩展接口版本一(AXI)的接口252、高级外围总线(APB)接口254和功率引擎260。接口252具有到SMN的第一双向连接,该第一双向连接包括用于接收图2中单独示出的标记为“EVENT_n”的事件信号的输入,以及输出。APB接口254具有连接到接口252的输出的输入,以及用于通过APB连接到PHY的输出。功率引擎260具有连接到接口252的输出的输入,以及连接到存储器接口队列214的输入的输出。功率引擎260包括一组配置寄存器262、微控制器(μC)264、自刷新控制器(SLFREF/PE)266和可靠读/写定时引擎(RRW/TE)268。配置寄存器262通过AXI总线编程,并且存储配置信息以控制存储器控制器200中各种块的操作。因此,配置寄存器262具有连接到这些块的输出,这些块在图2中未详细示出。自刷新控制器266是除了由刷新控制电路232自动生成刷新之外还允许手动生成刷新的引擎。可靠读/写定时引擎268向存储器或I/O设备提供连续存储器访问流,用于诸如DDR接口最大读取延迟(MRL)训练和回送测试等目的。
存储器通道控制器210包括允许其选取存储器访问以用于调度到相关联存储器通道的电路系统。为了做出期望的仲裁决定,地址生成器222将地址信息解码成预解码信息,预解码信息包括存储器系统中的存储列、行地址、列地址、存储体地址和存储体组,并且命令队列220存储预解码信息。配置寄存器262存储配置信息以确定地址生成器222解码所接收的地址信息的方式。仲裁器238使用所解码的地址信息、由定时块234指示的定时资格信息以及由页面表236指示的活动页面信息来高效地调度存储器访问,同时遵守诸如服务质量(QoS)要求等其他标准。例如,仲裁器238实现对访问打开页面的优先,以避免改变存储页面所需的预充电和激活命令的开销,并且通过将对一个存储体的开销访问与对另一个存储体的读和写访问交错来隐藏对一个存储体的开销访问。特别是在正常操作期间,仲裁器238通常保持页面在不同存储体中打开,直到需要对这些页面进行预充电,然后选择不同的页面。在一些实施方案中,仲裁器238至少基于相应命令的目标存储区域的激活计数器248的相应值来确定命令选择的资格。
图3以框图形式示出了根据一些实施方案的存储器300。存储器300被配置为与存储器控制器(诸如,图2的存储器控制器200)通信。存储器300通常包括控制逻辑310和包括多个DRAM存储体320的DRAM核心,以及用于从DRAM存储体320读取数据和向其写入数据的电路。使用一组行解码器和字线驱动器324来访问行并控制传送线的栅极。使用一组列解码器326来选择存储器阵列内的位置,并且一组感测放大器和写入驱动器328对存储器位置执行预充电操作,并读取存储器位置并且将数据写入其中。数据缓冲器322保存用于写入操作和读取操作的传入数据和传出数据。
控制逻辑310包括刷新控制逻辑312和候选攻击者/受害者行队列314,以及各种其他控制逻辑(未单独示出),诸如命令解码逻辑和模式寄存器。刷新控制逻辑312控制存储器300内的行的充电刷新,包括处理刷新(REF)命令和刷新管理(RFM)命令。此外,刷新控制逻辑312响应于从存储器控制器接收到的识别候选攻击者行的命令维持候选攻击者/受害者行队列314。
在各种实施方案中,引起对候选攻击者/受害者行队列314的添加的命令为预充电列表(PREL)命令、激活列表(ACTL)命令以及刷新管理列表(RFML)命令。当然,命令名在不同实施方案中可以是变化的。PREL和ACTL命令通过将激活(ACT)命令或预充电(PRE)命令标记为属于作为候选攻击者行的行来识别针对存储器300的候选攻击者行。RFML命令通过与该RFML命令一起包括候选攻击者行的行地址来识别针对存储器300行的候选攻击者。例如,如下文进一步描述,这些命令使候选攻击者行或与候选攻击者行相关联的一个或多个候选受害者行被添加到候选攻击者/受害者行队列314。然后,当在存储器300处接收到后续RFM命令时,刷新控制逻辑312使刷新针对从候选攻击者/受害者行队列314选择的一个或多个行发生。在一些实施方案中,后续REF命令还可使刷新控制逻辑312基于候选攻击者/受害者行队列314中列出的行来选择用于刷新的候选行。
在一些实施方案中,候选攻击者/受害者行队列314存储与候选攻击者行相关联的一个或多个受害者行。关于图4讨论此类过程的示例。在其他实施方案中,候选攻击者/受害者行队列314直接存储候选攻击者行地址。关于图5讨论此类过程的示例。在任一种情况下,刷新控制逻辑312包括识别哪些潜在受害者行与候选攻击者行相邻的解码逻辑。虽然此处描述“队列”,但其他实施方案可包括候选攻击者行列表,刷新控制逻辑312能够在执行刷新操作时以任何次序从该候选攻击者行列表进行选择。虽然在一些实施方案中,适于存储器控制器识别候选受害者行,但通常存储器控制器不具有识别特定受害者行所需的信息,因为地址与物理行之间的映射在特定的DRAM设计中是变化的。因此,识别候选攻击者行通常是更有益的。此外,虽然一些实施方案在候选攻击者/受害者行队列314中记录候选受害者行,但记录候选攻击者行通常更有效,因为对于每个候选攻击者行,存储器300在每个物理方向上可具有一个受害者行或基于过程节点具有多于一个受害者行。
图4是根据一些实施方案的用于刷新管理的过程400的流程图。过程400包括例如由刷新控制电路232(图2)在存储器控制器处执行的块402、404和406。块408、410、412、414和416例如由刷新控制逻辑312(图3)在DRAM存储器处执行。
过程400从块402开始,该块监测在存储器控制器处的操作期间要通过存储器通道发送的激活命令,以识别可能导致行锤击问题的某些指定条件,在该行锤击问题中,用于攻击者行的过多的ACT命令导致相邻受害者行中的位错误。可以以多种适合的方式识别指定的条件。例如,用于某一存储器区域(诸如存储体或子存储体)的激活计数器可高于某一阈值。或者,可以以比存储体或子存储体更精细的粒度来跟踪ACT命令。例如,可采用类似于用于现有目标行刷新(TRR)命令的监测过程,其中通过对每行的行激活的数目进行计数并且将其与预定义的芯片特定最大激活计数(MAC)和最大激活窗口(tMAW)值进行比较来确定针对潜在受害者行的条件。MAC值是在等于或短于tMAW时间量的时间间隔内可在特定DRAM行上发生的行激活的最大总数。又如,针对潜在行锤击问题的指定条件可以是在特定行的两侧上的针对两个相邻行的行激活的总和是否在tMAW时间窗口内达到MAC极限。
当在块402处识别到指定条件时,过程400转到块404,在该块中该过程识别与激活命令相关联的候选攻击者行。虽然在该实施方案中完成了将特定行识别为候选攻击者行,但是其他实施方案通过识别与候选攻击者行相邻的候选受害者行来间接识别攻击者行。虽然示出了用于识别候选攻击者行的单独块,但候选攻击者行的实际识别可与在块402处辨识指定条件的发生同时发生。
接下来在块406处,将命令从存储器控制器传输到DRAM存储器,请求该DRAM存储器在执行未来的刷新或刷新管理命令时缓解针对所识别的候选攻击者行的行锤击问题。在块406处传输的特定命令在不同实施方案中是变化的,但在每种情况下,均以某种方式向DRAM指示所述行是候选攻击者行。在一些实施方案中,存储器控制器具有发送预充电列表(PREL)命令、激活列表(ACTL)命令和/或刷新管理列表(RFML)命令中的一者或多者的能力。其他类似的命令可实现相同的功能。
ACTL命令是ACT命令的修改版本,其包括在ACT命令上的用于候选攻击者行的行地址的标签,该标签指示该攻击者行为候选攻击者行。适合的标签方案可以是在命令中的被设置为HIGH或LOW的一个或多个所选择的位。此类命令能够操作以使DRAM激活该行并且将该行作为候选攻击者行排队。PREL命令是能够操作以使DRAM对行进行预充电的PRE命令的修改版本,并包括指示该行是候选攻击者行并且应如此排队的标签。RFML命令是新命令,其包括候选攻击者行的地址并且向DRAM指示该候选攻击者行应添加到候选攻击者/受害者行队列314。
在块408处,在DRAM处接收所传输的命令,该命令向DRAM指示所识别的行是待缓解的候选攻击者行。对于还包括诸如预充电或激活等动作的命令,该动作由DRAM控制逻辑执行。在该实施方案中,识别并且记录候选受害者行,而在图5的实施方案中,当执行REF或RFM命令时,记录候选攻击者行地址并且识别候选受害者行。在块410处,过程400识别与所识别的候选攻击者行相关联的一个或多个候选受害者行。该识别通常包括使用解码逻辑来识别在DRAM处所采用的特定行布局中与候选攻击者行相邻或接近的行地址。
在块412处,将所识别的候选受害者行的地址记录在DRAM处以用于将来缓解。例如,在图3的实施方案中,地址被记录在候选攻击者/受害者行队列314中。与先前刷新管理方案(诸如TRR)相比,在块412处不会立即执行行锤击问题的缓解。相反,过程400转到块414,在该块中该过程待机直到接收到REF命令或RFM命令。过程400继续在块408处接收命令并记录受害者行,直到接收到REF命令或FRM命令。当接收到此类命令时,过程400转到块416,在该块中该过程选择一个或多个记录的候选受害者行并且进行一些缓解操作,诸如针对行的刷新操作。
图5至图7示出了根据适合的替代方法识别候选攻击者行的各种示例性刷新管理过程。但是一些实施方案可对所有行的行激活命令进行计数,
图5是根据一些实施方案的用于刷新管理的过程500的流程图。过程500包括例如由刷新控制电路232(图2)在存储器控制器处执行的块502、504和506。块508、510、512、514和516例如由刷新控制逻辑312(图3)在DRAM存储器处执行。过程500类似于图4的过程400,但不是记录候选受害者行的地址,过程500记录候选攻击者行的地址,并且在对候选受害者行执行刷新操作时识别候选受害者行。
过程500从块502开始,该块监测在存储器控制器处的操作期间要通过存储器通道发送的激活命令,以识别可能导致行锤击问题的某些指定条件。关于图4讨论在各种实施方案中采用的指定条件。
当在块502处识别到指定条件时,过程500转到块504,在该块中该过程识别与激活命令相关联的候选攻击者行。虽然示出了用于识别候选攻击者行的单独块,但候选攻击者行的实际识别可与在块502处辨识指定条件的发生同时发生。
接下来在块506处,将命令从存储器控制器传输到DRAM存储器,请求该DRAM存储器在执行未来的刷新或刷新管理命令时缓解针对所识别的候选攻击者行的行锤击问题。关于块406讨论适于在该块处使用的各种命令。
在块508处,在DRAM处接收所传输的命令,该命令向DRAM指示所识别的行是待缓解的候选攻击者行。对于还包括诸如预充电或激活等动作的命令,该动作由DRAM控制逻辑执行。在块510处,将所识别的候选攻击者行的地址记录在DRAM处以用于将来缓解。
如块512处所示,直到接收到REF命令或RFM命令,过程500返回到块508并且继续接收可引起识别更多候选攻击者行并记录其地址的命令。如果在块512处接收到REF命令或RFM命令,则过程500转到块514,在该块中该过程选择待缓解的所记录的候选攻击者行中的一个或多个候选攻击者行。然后,过程500识别与所选择的候选攻击者行相关联的一个或多个候选受害者行。该识别通常包括使用解码逻辑来识别在DRAM处所采用的特定行布局中与候选攻击者行相邻或接近的行地址。然后,在块516处,过程500对所识别的候选受害者行执行缓解。
图6是根据一些实施方案的用于选择候选攻击者行的过程600的流程图。过程600由刷新控制电路(诸如图2的刷新控制电路232)在存储器控制器处执行。在块602处,过程600开始监测激活命令以识别可能导致行锤击问题的指定条件。如块604处所示,在该实施方案中,指定条件包括用于存储器区域的激活计数器高于指定阈值。当在块604处识别到此类条件时,过程600转到块606,在该块中该过程从接收ACT命令的行中随机选择以选择候选攻击者行。
图7是示出根据一些附加实施方案的用于选择候选攻击者行的过程700的流程图。在块702处,过程700开始监测激活命令以识别可能导致行锤击问题的指定条件。在块704处,开始刷新窗口,在此期间跟踪激活命令。在该实施方案中,在由行循环时间tREFC定义的刷新周期内监测激活命令,该行循环时间指定行刷新之间的最大周期,该行刷新是针对每个存储器设备指定的。与刷新定时相关的其他时间周期也适于定义刷新周期。可为不同的存储器存储体测量单独的刷新窗口。
在块706处,维持针对存储器存储体中的一个或多个最多次被激活的行的激活计数。可使用多个计数器以便跟踪被频繁激活的多个行。在刷新窗口期间,可选择最多次被激活的行中的一个或多个行作为候选攻击者行,如块708处所示。在该实施方案中,该选择是基于激活计数高于指定阈值。当刷新窗口在块710处结束时,在块704处开始新的刷新窗口。用于跟踪激活计数的计数器在新的刷新窗口开始时被复位。
虽然已描述了特定实施方案,但是对这些实施方案的各种修改对于本领域技术人员将是显而易见的。例如,存储器控制器200和/或存储器300的内部架构在不同实施方案中可以是变化的。存储器控制器200可接口连接到除了DDRx之外的其他类型的存储器,诸如高带宽存储器(HBM)等。虽然所示的实施方案示出了对应于单独DIMM或SIMM的每个存储器存储列,但在其他实施方案中,每个模块可支持多个存储列。再其他实施方案可包括其他类型的DRAM模块或特定模块中未包含的DRAM,诸如安装到主机母板的DRAM。因此,所附权利要求书旨在覆盖所公开实施方案的落入所公开实施方案的范围内的所有修改。
Claims (26)
1.一种存储器控制器,包括:
命令队列,所述命令队列具有用于接收存储器访问请求的第一输入;
存储器接口队列,所述存储器接口队列具有用于耦接到存储器通道的输出,所述存储器通道适于耦接到动态随机存取存储器(DRAM);
仲裁器,所述仲裁器耦接到所述命令队列以用于从所述命令队列选择条目并将所述条目放置在所述存储器接口队列中,从而使所述条目通过所述存储器通道被传输;以及
刷新控制电路,所述刷新控制电路耦接到所述仲裁器并且能够操作以:
监测要通过所述存储器通道发送的激活命令;
响应于激活命令满足指定条件,识别与所述激活命令相关联的候选攻击者行;以及
向所述DRAM传输命令,请求将所述候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
2.根据权利要求1所述的存储器控制器,其中所述刷新控制电路通过标记包括所述候选攻击者行的行地址的激活命令来向所述DRAM传输所述命令。
3.根据权利要求2所述的存储器控制器,其中所述激活命令是激活列表命令,所述激活列表命令能够操作以使所述DRAM激活行并且将所述行记录为候选攻击者行。
4.根据权利要求1所述的存储器控制器,其中所述刷新控制电路通过向所述DRAM传输包括所述候选攻击者行的行地址的刷新管理列表命令来向所述DRAM传输所述命令。
5.根据权利要求1所述的存储器控制器,其中所述刷新控制电路通过标记包括所述候选攻击者行的行地址的预充电命令来向所述DRAM传输所述命令。
6.根据权利要求5所述的存储器控制器,其中所述预充电命令是预充电列表命令,所述预充电列表命令能够操作以使所述DRAM对行进行预充电并且将所述行记录为候选攻击者行。
7.根据权利要求1所述的存储器控制器,其中所述刷新控制电路进一步能够操作以响应于识别到所述候选攻击者行而使所述候选攻击者行的记录存储在候选攻击者行的列表中。
8.一种数据处理系统,包括:
数据处理器;
数据织构,所述数据织构耦接到所述数据处理器;以及
存储器控制器,所述存储器控制器耦接到所述数据织构以用于履行来自所述数据处理器的存储器请求,所述存储器控制器包括:
输出,所述输出用于耦接到存储器通道,所述存储器通道适于耦接到至少一个动态随机存取存储器(DRAM);以及
刷新控制电路,其中
所述刷新控制电路能够操作以:
监测要通过所述存储器通道发送的激活命令;
响应于激活命令满足指定条件,识别与所述激活命令相关联的候选攻击者行;以及
向所述DRAM传输命令,请求将所述候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
9.根据权利要求8所述的数据处理系统,其中所述刷新控制电路通过标记包括所述候选攻击者行的行地址的激活命令来向所述DRAM传输所述命令。
10.根据权利要求9所述的数据处理系统,其中所述激活命令是激活列表命令,所述激活列表命令能够操作以使所述DRAM激活行并且将所述行记录为候选攻击者行。
11.根据权利要求8所述的数据处理系统,其中所述刷新控制电路通过向所述DRAM传输包括所述候选攻击者行的行地址的刷新管理列表命令来向所述DRAM传输所述命令。
12.根据权利要求8所述的数据处理系统,其中向所述DRAM传输所述命令包括标记预充电命令,所述预充电命令包括所述候选攻击者行的行地址。
13.根据权利要求12所述的数据处理系统,其中所述预充电命令是预充电列表命令,所述预充电列表命令能够操作以使所述DRAM对行进行预充电并且将所述行标记为所述候选攻击者行。
14.根据权利要求8所述的数据处理系统,其中所述刷新控制电路进一步能够操作以响应于向所述DRAM指示所述候选攻击者行而使所述候选攻击者行的记录被存储在候选攻击者行的列表中。
15.根据权利要求8所述的数据处理系统,其中向所述DRAM传输所述命令使所述DRAM存储与所述候选攻击者行相关联的一个或多个受害者行的记录,以用于在后续刷新管理命令和后续刷新命令中的一者期间进行刷新管理。
16.根据权利要求15所述的数据处理系统,其中所述DRAM包括内部刷新管理电路,所述内部刷新管理电路确定与所述候选攻击者行相关联的一个或多个受害者行。
17.根据权利要求8所述的数据处理系统,其中所述DRAM包括内部刷新管理电路,所述内部刷新管理电路通过使各自与一个或多个对应的候选攻击者行相关联的多个受害者行被刷新来响应刷新管理命令。
18.一种方法,包括:
接收包括存储器读取和存储器写入的多个存储器访问请求;
选择性地将用于履行所述存储器访问请求的存储器访问命令放置在存储器接口队列中,并且将来自所述存储器接口队列的所述存储器访问命令传输到耦接到至少一个动态随机存取存储器(DRAM)的存储器通道;
监测要通过所述存储器通道发送的激活命令;
响应于激活命令满足指定条件,识别与所述激活命令相关联的候选攻击者行;以及
向所述DRAM传输命令,请求将所述候选攻击者行排队以用于在将来的刷新或刷新管理事件中进行缓解。
19.根据权利要求18所述的方法,其中向所述DRAM传输所述命令包括标记激活命令,所述激活命令包括所述候选攻击者行的行地址。
20.根据权利要求19所述的方法,其中所述激活命令是激活列表命令,所述激活列表命令能够操作以使所述DRAM激活行并且将所述行记录为候选攻击者行。
21.根据权利要求18所述的方法,其中向所述DRAM传输所述命令包括将包括行地址的刷新管理列表命令传输到所述DRAM。
22.根据权利要求18所述的方法,其中向所述DRAM传输所述命令包括标记预充电命令,所述预充电命令包括所述候选攻击者行的行地址。
23.根据权利要求22所述的方法,其中所述预充电命令是预充电列表命令,所述预充电列表命令能够操作以使所述DRAM对行进行预充电并且将所述行记录为候选攻击者行。
24.根据权利要求18所述的方法,进一步包括响应于向所述DRAM指示所述候选攻击者行,使所述候选攻击者行的记录存储在所述DRAM处候选攻击者行的列表中。
25.根据权利要求18所述的方法,响应于所述候选攻击者行被识别到所述DRAM,存储与所述DRAM处的所述候选攻击者行相关联的一个或多个受害者行的记录,以用于在后续刷新管理命令和后续刷新命令中的一者期间进行刷新管理。
26.根据权利要求18所述的方法,其中所述DRAM通过使各自与一个或多个对应的候选攻击者行相关联的多个受害者行被刷新来响应刷新管理命令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/027,375 US11809743B2 (en) | 2020-09-21 | 2020-09-21 | Refresh management list for DRAM |
US17/027,375 | 2020-09-21 | ||
PCT/US2021/050932 WO2022061153A1 (en) | 2020-09-21 | 2021-09-17 | Refresh management list for dram |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116250041A true CN116250041A (zh) | 2023-06-09 |
Family
ID=80741491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180064625.2A Pending CN116250041A (zh) | 2020-09-21 | 2021-09-17 | 用于dram的刷新管理列表 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11809743B2 (zh) |
EP (1) | EP4214709A4 (zh) |
JP (1) | JP2023543426A (zh) |
KR (1) | KR20230069234A (zh) |
CN (1) | CN116250041A (zh) |
WO (1) | WO2022061153A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11640840B2 (en) * | 2021-06-28 | 2023-05-02 | Advanced Micro Devices, Inc. | Victim row refreshes for memories in electronic devices |
KR20230080776A (ko) * | 2021-11-30 | 2023-06-07 | 삼성전자주식회사 | 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 |
US12112787B2 (en) * | 2022-04-28 | 2024-10-08 | Micron Technology, Inc. | Apparatuses and methods for access based targeted refresh operations |
US20240329846A1 (en) * | 2023-03-31 | 2024-10-03 | Advanced Micro Devices, Inc. | Memory sprinting |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9176800B2 (en) | 2011-08-31 | 2015-11-03 | Micron Technology, Inc. | Memory refresh methods and apparatuses |
US9117544B2 (en) * | 2012-06-30 | 2015-08-25 | Intel Corporation | Row hammer refresh command |
US20140085995A1 (en) * | 2012-09-25 | 2014-03-27 | Zvika Greenfield | Method, apparatus and system for determining a count of accesses to a row of memory |
US9325321B2 (en) | 2013-03-13 | 2016-04-26 | Microsemi SoC Corporation | Background auto-refresh apparatus and method for non-volatile memory array |
US9293188B2 (en) | 2014-02-03 | 2016-03-22 | Advanced Micro Devices, Inc. | Memory and memory controller for high reliability operation and method |
US9576637B1 (en) * | 2016-05-25 | 2017-02-21 | Advanced Micro Devices, Inc. | Fine granularity refresh |
US9747158B1 (en) | 2017-01-13 | 2017-08-29 | Pure Storage, Inc. | Intelligent refresh of 3D NAND |
FR3066842B1 (fr) * | 2017-05-24 | 2019-11-08 | Upmem | Logique de correction de row hammer pour dram avec processeur integre |
KR102398209B1 (ko) | 2017-11-06 | 2022-05-17 | 삼성전자주식회사 | 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법 |
CN110729006B (zh) * | 2018-07-16 | 2022-07-05 | 超威半导体(上海)有限公司 | 存储器控制器中的刷新方案 |
US11087819B2 (en) * | 2018-10-09 | 2021-08-10 | Micron Technology, Inc. | Methods for row hammer mitigation and memory devices and systems employing the same |
US10825534B2 (en) * | 2018-10-26 | 2020-11-03 | Intel Corporation | Per row activation count values embedded in storage cell array storage cells |
US10685696B2 (en) * | 2018-10-31 | 2020-06-16 | Micron Technology, Inc. | Apparatuses and methods for access based refresh timing |
US10636476B2 (en) | 2018-11-01 | 2020-04-28 | Intel Corporation | Row hammer mitigation with randomization of target row selection |
US10770127B2 (en) * | 2019-02-06 | 2020-09-08 | Micron Technology, Inc. | Apparatuses and methods for managing row access counts |
US10790005B1 (en) * | 2019-04-26 | 2020-09-29 | Micron Technology, Inc. | Techniques for reducing row hammer refresh |
US11069393B2 (en) * | 2019-06-04 | 2021-07-20 | Micron Technology, Inc. | Apparatuses and methods for controlling steal rates |
US11222685B2 (en) * | 2020-05-15 | 2022-01-11 | Advanced Micro Devices, Inc. | Refresh management for DRAM |
US11561862B2 (en) * | 2020-05-29 | 2023-01-24 | Advanced Micro Devices, Inc. | Refresh management for DRAM |
FR3111731B1 (fr) * | 2020-06-23 | 2023-01-06 | Upmem | Procédé et circuit de protection d’un dispositif de mémoire DRAM de l’effet de martelagede rang |
US11309010B2 (en) * | 2020-08-14 | 2022-04-19 | Micron Technology, Inc. | Apparatuses, systems, and methods for memory directed access pause |
US20220113868A1 (en) * | 2020-10-09 | 2022-04-14 | Microsoft Technology Licensing, Llc | Mitigating row-hammer attacks |
-
2020
- 2020-09-21 US US17/027,375 patent/US11809743B2/en active Active
-
2021
- 2021-09-17 EP EP21870315.5A patent/EP4214709A4/en active Pending
- 2021-09-17 JP JP2023518259A patent/JP2023543426A/ja active Pending
- 2021-09-17 WO PCT/US2021/050932 patent/WO2022061153A1/en active Application Filing
- 2021-09-17 CN CN202180064625.2A patent/CN116250041A/zh active Pending
- 2021-09-17 KR KR1020237013548A patent/KR20230069234A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
EP4214709A1 (en) | 2023-07-26 |
WO2022061153A1 (en) | 2022-03-24 |
JP2023543426A (ja) | 2023-10-16 |
KR20230069234A (ko) | 2023-05-18 |
EP4214709A4 (en) | 2024-10-16 |
US20220091784A1 (en) | 2022-03-24 |
US11809743B2 (en) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3433860B1 (en) | Fine granularity refresh | |
US11809743B2 (en) | Refresh management list for DRAM | |
CN115516563B (zh) | 用于dram的刷新管理 | |
CN114902198B (zh) | 用于异构存储器系统的信令 | |
US11561862B2 (en) | Refresh management for DRAM | |
CN117083588A (zh) | 仲裁期间写入存储体组掩码 | |
KR20230023014A (ko) | Dram 커맨드 스트리크 관리 | |
KR20230004912A (ko) | 효율적인 메모리 버스 관리 | |
US11474746B2 (en) | Refresh management for DRAM | |
US20240112722A1 (en) | Directed refresh management for dram | |
WO2024145082A1 (en) | Full dynamic post-package repair | |
CN117099076A (zh) | Dram命令拖尾效率管理 |
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 |