动态随机存取存储器dram的刷新方法、设备以及系统的制作方法

文档序号:9525241阅读:864来源:国知局
动态随机存取存储器dram的刷新方法、设备以及系统的制作方法
【技术领域】
[0001] 本发明涉及计算机领域,尤其涉及一种动态随机存取存储器DRAM的刷新方法、设 备W及系统。
【背景技术】
[0002] 现有计算机系统普遍采用廉价的、高密度的DRAM值ynamicRandomAccess Memory,动态随机存取存储器)作为系统主存,又叫做内存。DRAM利用电容里的电荷存储数 据,但送些电荷会随着漏电的存在而不断流失。因此,电容里的数据必须被定期读出并重新 写入,W补偿流失的电荷,送种操作叫做刷新(Re化esh)。
[000引DRAM有多个库(Bank)组成,每个Bank为二维的存储阵列,横向称为行(Row),纵 向称为列(Column)。在刷新的过程中,每次DRAM会选定一个行(又成为内存行),把该行 的全部数据提取到感应放大器中(又称为行缓冲区,RowBuffer),送个过程叫做激活操作 (Active),接着在行缓冲区中完成对应数据的读写,行缓冲区中的数据被重新写入存储阵 列,称为预充电操作(Pre-charge),通过激活操作W及预充电操作就实现了整个刷新的过 程。DRAM刷新给计算机系统带来较大的开销,由于在刷新的过程中不能响应正常的访存请 求,带来了一定的性能开销,同时,刷新操作是一种很耗电的操作,会带来一定的能耗开销。
[0004] 现有的刷新方法是对DRAM的所有的行采用统一的周期进行刷新,W保证漏电最 严重的单元不丢失数据。
[0005] 在完成本发明的过程中,发现现有技术存在如下问题;随着DRAM容量的不断增 大,采用统一的周期对DRAM的所有内存行进行刷新的方式,其性能开销W及能耗开销变得 越来越大,从而严重影响到系统的能效。

【发明内容】

[0006] 基于此,本发明实施例所提供的动态随机存取存储器DRAM的刷新方法、设备W及 系统,W实现在刷新的过程中,有效地降低开销。
[0007] 本发明实施例第一方面提供了一种动态随机存取存储器DRAM刷新信息的处理方 法,该方法包括:
[0008] 获取DRAM中刷新单元的地址W及所述刷新单元的刷新信息,所述刷新单元为所 述DRAM中进行一次刷新所包括的存储空间,所述刷新单元的刷新信息包括所述刷新单元 的刷新周期;
[0009] 将所述刷新单元的地址W及所述刷新单元的刷新信息封装为DRAM访问请求,并 通过所述DRAM访问请求将所述刷新单元的地址W及所述刷新单元的刷新信息写入到刷新 数据空间,所述刷新数据空间为所述DRAM中预设的存储空间。
[0010] 结合第一方面,在第一种可能的实现方式中,在将所述刷新单元的地址W及所述 刷新单元的刷新信息通过DRAM访问请求写入到刷新数据空间中之前,所述方法还包括;在 所述DRAM中分配所述预设的存储空间作为所述刷新数据空间。
[0011] 结合第一方面W及第一方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述获取的刷新单元的地址包括所述刷新单元的物理地址;
[0012] 所述将所述刷新单元的地址W及所述刷新单元的刷新信息封装为DRAM访问请 求,并通过所述DRAM访问请求将所述刷新单元的地址W及所述刷新单元的刷新信息写入 到所述刷新数据空间,包括:
[0013] 将所述刷新单元的物理地址W及所述刷新单元的刷新信息封装为DRAM访问请 求,并通过所述DRAM访问请求将所述刷新单元的地址W及所述刷新信息写入所述刷新数 据空间。
[0014] 结合第一方面W及第一方面的第一种可能的实现方式,在第Η种可能的实现方式 中,所述获取的刷新单元的地址包括所述刷新单元的虚拟地址;在将所述刷新单元的地址 W及所述刷新单元的刷新信息封装为DRAM访问请求之前,所述方法还包括:
[0015] 通过查询页表,将所述刷新单元的虚拟地址转化为所述刷新单元的物理地址;
[0016] 所述将所述刷新单元的地址W及所述刷新单元的刷新信息封装为DRAM访问请 求,并通过所述DRAM访问请求将所述刷新单元的地址W及所述刷新单元的刷新信息写入 到所述刷新数据空间,包括:
[0017] 将所述刷新单元的物理地址W及所述刷新单元的刷新信息封装为DRAM访问请 求,并通过所述DRAM访问请求将所述刷新单元的物理地址W及所述刷新信息写入所述刷 新数据空间。
[0018] 本发明实施例第二方面提供了一种动态随机存取存储器DRAM刷新信息的处理装 置,该装置包括:
[0019] 获取单元,用于获取DRAM中刷新单元的地址W及所述刷新单元的刷新信息,所述 刷新单元为所述DRAM中进行一次刷新所包括的存储空间,所述刷新单元的刷新信息包括 所述刷新单元的刷新周期;
[0020] 封装单元,用于将所述刷新单元的地址W及所述刷新单元的刷新信息封装为DRAM 访问请求;
[0021] 写入单元,用于通过所述DRAM访问请求将所述刷新单元的地址W及所述刷新单 元的刷新信息写入到刷新数据空间中,所述刷新数据空间为所述DRAM中一块预设的存储 空间。
[0022] 结合第二方面,在第一种可能的实现方式中,所述装置还包括;分配单元,用于在 所述DRAM中分配所述预设的存储空间作为所述刷新数据空间。
[0023] 结合第二方面W及第二方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述获取单元获取的所述刷新单元的地址包括所述刷新单元的物理地址;
[0024] 所述封装单元,具体用于将所述刷新单元的物理地址W及所述刷新单元的刷新信 息封装为DRAM访问请求;
[00巧]所述写入单元,具体用于通过所述DRAM访问请求将所述刷新单元的物理地址W及所述刷新信息写入所述刷新数据空间。
[0026] 结合第二方面W及第二方面的第一种可能的实现方式,在第Η种可能的实现方式 中,所述获取单元获取的所述刷新单元的地址包括所述刷新单元的虚拟地址;所述装置还 包括:
[0027] 转化处理单元,用于通过查询页表,将所述刷新单元的虚拟地址转化为所述刷新 单元的物理地址;
[0028] 所述封装单元,具体用于将所述刷新单元的物理地址W及所述刷新单元的刷新信 息封装为所述DRAM访问请求;
[0029] 所述写入单元,具体用于通过所述DRAM访问请求将所述刷新单元的物理地址W 及所述刷新信息写入所述刷新数据空间。
[0030] 本发明实施例第Η方面提供了一种动态随机存取存储器DRAM刷新信息的处理装 置,其特征在于,所述处理装置包括:
[0031] 处理器,存储器,通信接口,和总线,其中,所述处理器、所述存储器和所述通信接 口通过所述总线通信;
[0032] 所述存储器用于存放程序;
[0033] 所述通信接口用于与DRAM通信;
[0034] 当所述处理装置运行时,所述处理器用于执行所述存储器存储的所述程序,W执 行第一方面W及第一方面的各个可能实现方式任一所述的方法。
[0035] 本发明实施例第四方面提供了一种动态随机存取存储器DRAM的刷新方法,该方 法包括:
[0036] 产生针对DRAM中刷新单元的刷新命令,所述刷新命令包括所述刷新单元的物理 地址,所述刷新单元为所述DRAM中进行一次刷新所包括的存储空间;
[0037] 根据所述刷新单元的物理地址,采用DRAM读取命令从刷新数据空间中读取所述 刷新单元的刷新信息,所述刷新单元的刷新信息包括所述刷新单元的刷新周期;
[0038] 根据所述刷新信息执行对所述刷新单元的刷新操作。
[0039] 结合第四方面,在第一种可能的实现方式中,所述根据所述刷新单元的物理地址, 采用DRAM读取命令从刷新数据空间中读取对应所述刷新单元的刷新信息,包括:
[0040] 根据所述刷新单元的物理地址,W及所述刷新数据空间中存储的所述刷新单元的 物理地址和所述刷新单元的刷新信息的对应关系,确定所述刷新单元的刷新信息,采用所 述DRAM读取命令从所述刷新数据空间读取所述刷新单元的刷新信息。
[0041] 结合第四方面W及第四方面的第一种可能的实现方式,在第二种可能的实现方式 中,所述刷新数据空间为所述DRAM中预设的用来存储所述DRAM中多个刷新单元的刷新信 息的存储空间,所述方法还包括:
[0042] 从所述刷新数据空间中获取所述刷新单元之后的多个连续的刷新单元的刷新信 息。
[0043] 结合第四方面的第二种可能的实现方式,在第Η种可能的实现方式中,在从所述 刷新数据空间中读取所述刷新单元之后的多个连续的刷新单元的刷新信息之后,所述方法 还包括:
[0044] 接收对所述刷新单元之后的多个连续的刷新单元的刷新命令;
[0045] 判断所述多个连续的刷新单元中需要执行刷新操作的刷新单元的个数是否超过 阔值;
[0046] 当确定所述需要执行刷新操作的刷新单元的个数超过所述阔值时,对所述多个连 续的刷新单元执行AutoRe化esh刷新操作;
[0047]当确定所述需要执行刷新操作的刷新单元的个数不超过所述阔值时,对所述多个 连续的刷新单元执行RAS-only Refresh刷新操作。
[004引本发明实施例第五方面提供了一种DRAM控制器,该DRAM控制器包括:
[0049] 刷新命令产生模块,
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1