书签 分享 收藏 举报 版权申诉 / 8

DRAM缓冲器管理装置和方法.pdf

  • 上传人:b***
  • 文档编号:973481
  • 上传时间:2018-03-22
  • 格式:PDF
  • 页数:8
  • 大小:375.39KB
  • 摘要
    申请专利号:

    CN200980158197.9

    申请日:

    2009.12.29

    公开号:

    CN102356382A

    公开日:

    2012.02.15

    当前法律状态:

    撤回

    有效性:

    无权

    法律详情:

    发明专利申请公布后的视为撤回IPC(主分类):G06F 11/08申请公布日:20120215|||实质审查的生效IPC(主分类):G06F 11/08申请日:20091229|||公开

    IPC分类号:

    G06F11/08; G06F9/06

    主分类号:

    G06F11/08

    申请人:

    韩商英得联股份有限公司

    发明人:

    郑贤权; 金英官

    地址:

    韩国京畿道

    优先权:

    2009.03.19 KR 10-2009-0023620

    专利代理机构:

    北京同达信恒知识产权代理有限公司 11291

    代理人:

    黄志华

    PDF完整版下载: PDF下载
    内容摘要

    提出了一种Dram缓冲器管理装置和方法。提出的Dram缓冲器管理装置和方法,生成Dram缓冲器中记录的数据的纠错码ECC(Error Correction Code),将所述数据及所述ECC记录在所述Dram缓冲器中。

    权利要求书

    1: 一种 Dram 缓冲器管理装置, 包括 : ECC 生成单元, 其生成要在 Dram 缓冲器中记录的数据的纠错码 ECC ; 和 记录单元, 其将所述数据和所述 ECC 记录在所述 Dram 缓冲器中。
    2: 如权利要求 1 所述的 Dram 缓冲器管理装置, 其进一步包括 : 读取单元, 其从所述 Dram 缓冲器中读取出所述数据和所述 ECC ; 判断单元, 其基于读取出的 ECC, 判断读取出的数据的错误发生与否 ; 纠错单元, 当读取出的数据发生错误时, 其纠正所述错误。
    3: 如权利要求 1 所述的 Dram 缓冲器管理装置, 其进一步包括 : 表存储单元, 其存储有将构成所述 Dram 缓冲器的至少一个页中相互连续的页映射到 相互不同的条中的地址映射表。
    4: 如权利要求 3 所述的 Dram 缓冲器管理装置, 其中, 所述记录单元, 当所述数据的大小 及所述 ECC 的大小的和超出要记录所述数据及所述 ECC 的第一页的大小时, 参照所述地址 映射表将与所述第一页连续的下一页即第二页生开 (raw open), 并将所述数据及所述 ECC 中超过第一页的大小的数据记录在第二页中。
    5: 如权利要求 1 所述的 Dram 缓冲器管理装置, 其中, 所述 ECC 生成单元, 当向所述 Dram 缓冲器以突发 (burst) 单位发送数据时, 对每一个突发单位实时生成 ECC, 所述记录单元, 对每一个突发单位继所述数据之后将所述 ECC 发送至所述 Dram 缓冲器。
    6: 一种 Dram 缓冲器管理方法, 包括以下步骤 : 生成要在 Dram 缓冲器中记录的数据的纠错码 ECC ; 和 将所述数据和所述 ECC 记录在所述 Dram 缓冲器中。
    7: 如权利要求 6 所述的 Dram 缓冲器管理方法, 其进一步包括 : 从所述 Dram 缓冲器中读取出所述数据和所述 ECC ; 基于读取出的 ECC, 判断读取出的数据的错误发生与否 ; 当读取出的数据发生错误时, 纠正所述错误。
    8: 如权利要求 6 所述的 Dram 缓冲器管理方法, 其中, 所述记录步骤包括以下步骤 : 判断所述数据的大小及所述 ECC 的大小的和是否超出要记录所述数据及所述 ECC 的第 一页的大小 ; 当所述数据的大小及所述 ECC 的大小的和超出所述第一页的大小时, 参照地址映射表 将与所述第一页连续的下一页即第二页生开 (raw open), 并将所述数据及所述 ECC 中超出 第一页的大小的数据记录在第二页中, 其中, 所述地址映射表是将构成所述 Dram 缓冲器的至少一个页中相互连续的页映射 到相互不同的条中的表。
    9: 一种存储用于执行权利要求 6 至 8 中任何一项所述方法的程序的计算机可读记录介 质。

    说明书


    Dram 缓冲器管理装置和方法

        技术领域 本发明提出了一种 Dram 缓冲器管理装置和方法, 更详细讲, 提出了一种无需添加 额外的装置就可以向 Dram 缓冲器应用纠错码 ECC(Error Correction Code) 的 Dram 缓冲 器管理装置和方法。
         技术背景 存储数据的存储装置有磁盘 (magnetic disk), 半导体存储器等。 因为存储装置根 据种类各自具有不同的物理特性, 所以需要与物理特性相对应的管理方法。
         现有存储装置中, 磁盘被广泛地使用, 磁盘的特征为平均每千字节 (kilobyte) 需 要数毫秒 (millisecond) 的读写时间。此外, 磁盘的特征为, 根据数据被存储的物理性位置 光标到达的时间的不同, 因此读写的时间也不同。
         最近, 比起磁盘, 读写时间短, 电力消耗低, 体积小的非易失性 (non-volatile) 存 储器在加速地替代磁盘。这是因为非易失性存储器实现了大容量化而产生的效果。
         非易失性存储器是可用电力进行读取 (read)、 写入 (write) 及擦除 (erase) 并在 没有电源的状态下也可维持被存储的数据的一种半导体存储器装置。 对非易失性存储器装 置存储数据的过程, 除了被叫作写入以外还被叫作编程 (programming)。
         具代表性的非易失性存储器可为闪存 (Flash memory), 闪存比现有的硬盘驱动器 HDD(Hard Disk Drive) 体积小、 电力消耗低, 具有可提高读取速度的优点。最近, 用于利用 大容量闪存来替代 HDD 的固态硬盘 SSD(Solid State Disk) 也已被提议出来。
         闪存的种类中, 具代表性的为 NAND 方式的闪存和 NOR 方式的内存等。 NAND 方式和 NOR 方式可根据信元 (cell) 阵列 (array) 的结构和操作方式被区分。
         闪存通过多数的存储器信元的排列来实现, 一个存储器信元可存储一个以上的数 据比特。一个存储器信元包括控制栅 (control gate) 和浮栅 (floating gate), 控制栅和 浮栅的之间被插入绝缘体 (insulator), 并在控制栅和基片 (substrate) 之间也被插入绝 缘体。
         此类非易失性存储器通过一定的控制器实现管理, 此外, 根据此类控制器的性能, 可决定非易失性存储器的整体性能。
         因此, 有必要对可有效地管理和控制存储器的存储器控制器来进行研究。
         发明内容 技术课题
         本发明意在提供一种无需添加额外的装置就可以向 Dram 缓冲器 (Buffer) 应用纠 错码 ECC(Error Correction Code) 的 Dram 缓冲器管理装置和方法。
         技术方案
         根据本发明的一个实施例的 Dram 缓冲器管理装置, 包括 : ECC 生成单元, 其生成要 在 Dram 缓冲器中记录的数据的纠错码 ECC ; 和记录单元, 其将所述数据和所述 ECC 记录在
         所述 Dram 缓冲器中。
         此外, 根据本发明的一个实施例的 Dram 缓冲器管理方法, 包括以下步骤 : 生成要 在 Dram 缓冲器中记录的数据的纠错码 ECC ; 和将所述数据和所述 ECC 记录在所述 Dram 缓 冲器中。
         技术效果
         本发明通过生成要记录在 Dram 缓冲器中的数据的纠错码 ECC 并将所述数据和所 述纠错码一起存储在 Dram 缓冲器中的 Dram 缓冲器管理装置和方法, 无需添加额外的装置, 就可以向 Dram 缓冲器 (Buffer) 应用纠错码 ECC。 附图说明
         图 1 是示出根据本发明的一个实施例的 Dram 缓冲器管理装置的结构的示图 ; 和
         图 2 是示出根据本发明的一个实施例的 Dram 缓冲器管理方法的流程图。 具体实施方式
         下面, 将参照附图, 对本发明的一个实施例进行详细说明。但是, 本发明并不受该 实施例的限制或限定。各个附图中展示出的相同的参考数字表示相同的结构。 一般情况下, 对非易失性存储器的编程 (programming), 可以页 (page) 为单位执 行, 擦除 (erase) 可以块 (block) 为单位执行。在这种情况下, 块可包括多个页面。
         此外, 管理非易失性存储器的存储器控制器, 可向外部主机 (host) 或处理器 (processor) 提 供 逻 辑 地 址 (logical address), 并对非易失性存储器提供物理地址 (physical address)。
         在这种情况下, 存储器控制器可利用物理地址来管理非易失性存储器, 并将物理 地址转换为逻辑地址。
         在此, 执行物理地址和逻辑地址的转换的层也被称为 FTL(Flash Translation Layer)。
         最近, 由于企业 (Enterprise) 服务器市场中不断增长的带宽需求与电力消费的 问题, 使用固态硬盘 SSD(Solid State Disk) 而不是 HDD 作为数据存储装置的方案正在积 极实施。
         早期的 SSD 控制器, 使用内部存储器作为数据缓冲器, 但是最近的 SSD 控制器由于 高速化需求, 使用 Dram 作为数据缓冲器的情况越来越多。
         大部分的企业服务器, 会因数据的稳定性而使用应用了高价的纠错码 ECC(Error Correction Code) 的 Dram 模块作为系统总线的主存储器。
         因此, 在服务器中在要使用的 SSD 中将 Dram 用作缓冲器用途的话, 为了数据的稳 定性, 有必要使用应用了 ECC 功能的 Dram 模块。
         这时, ECC Dram 模块额外具备在 SODIMM 内额外存储 ECC 的 ECC 专用 Dram 芯片的 情况居多。
         不过, SSD 具有以下特征, 即实际上要使用到的缓冲器的大小相对来说不大, 而且 在费用方面也很难适应一个以上的 Dram 芯片。
         此外, 在额外的 ECC 专用 Dram 芯片导致的电力消耗方面, 也难以在一个 SSD 磁盘
         内使用额外的 Dram 芯片。
         在这方面, 跟据本发明的一个实施例的 Dram 缓冲器管理装置, 在在 SSD 等中将 Dram 用作数据缓冲器或缓存用途的情况下, 对要记录在 Dram 缓冲器中的数据生成 ECC, 并 将所述数据与所述 ECC 一起记录到 Dram 缓冲器中, 由此无需使用额外的装置, 就可以对 Dram 数据应用 ECC 方案。
         因此, 以下将参照图 1 对根据本发明的实施例的 Dram 管理装置进行详细说明。
         图 1 是示出根据本发明的一个实施例的 Dram 缓冲器管理装置的结构的示图。
         参照图 1, Dram 缓冲器管理装置 110 和 Dram 缓冲器 120 如图所示。
         根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 包括 ECC 生成单元 111 和 记录单元 112。
         ECC 生成单元 111, 生成要记录入 Dram 缓冲器 120 中的数据的 ECC。
         记录单元 112, 将所述数据和所述 ECC 记录在所述 Dram 缓冲器 120 中。
         此时, 记录单元 112 将所述数据和所述 ECC 记录到 Dram 缓冲器 120 中时, 会出现 所述数据的大小及所述 ECC 的大小的和超过要记录所述数据及所述 ECC 的 Dram 缓冲器 120 上的第一页的大小的情况。
         于此, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 可进一步包括表存 储单元 ( 未示出 ), 其存储有将构成所述 Dram 缓冲器 120 的至少一个页 (page) 中相互连续 的页映射 (mapping) 到相互不同的条 (bank) 中的地址映射表 (address mapping table)。
         在这一点上, 跟据本发明的一个实施例, 记录单元 112, 当所述数据的大小及所述 ECC 的大小的和超出要记录所述数据及所述 ECC 的第一页的大小时, 参照所述地址映射表, 将与所述第一页连续的下一页即第二页生开 (raw open), 并将所述数据及所述 ECC 中超过 第一页的大小的数据记录在第二页中。
         由此, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 可以避免由于将所 述 ECC 和所述数据一起发送至 Dram 缓冲器 120 而可能造成的发送带宽损失。
         此外, 根据本发名的一个实施例, Dram 缓冲器管理装置 110 可进一步包括读取单 元 113、 判断单元 114、 纠错单元 115。
         读取单元 113, 从 Dram 缓冲器 120 中读取出所述数据和所述 ECC。
         判断单元 114, 基于读取出的 ECC, 判断读取出的数据的错误发生与否。
         例如, 判断单元 114, 可基于 ECC 生成单元 111 为生成所述 ECC 所使用的算法, 来生 成读取出的所述数据的 ECC。
         然后, 判断单元 114, 可比较所述读取出的 ECC 与所述读取出的数据的相关 ECC, 来 判断所述读取出的数据的错误发生与否。
         纠错单元 115, 当读取出的数据发生错误时, 纠正所述错误。
         在下面, 将对根据本发明的 Dram 缓冲器管理装置 110 举例进行详细说明。
         关于此, 将使用把根据本发明的实施例的 Dram 缓冲器管理装置 110 应用到 SSD 中 的例子。
         根据本发明的实施例的 Dram 缓冲器管理单元 110, 可以上包含在 SSD 控制器中的 装置。
         一般来说, SSD 控制器与 Dram 缓冲器 120, 可使用突发操作 (Burst Operation) 来进行数据的收发。
         即, SSD 控制器可以以突发单位向 Dram 缓冲器 120 发送数据。
         与此相关, 假设 SSD 控制器以 N 突发单位向 Dram 缓冲器 120 发送数据。
         首先, 将对 SSD 控制器向 Dram 缓冲器 120 中记录数据的情况下的根据本发明的一 个实施例的 Dram 缓冲器管理装置 110 的操作进行观察。
         生成单元 111, 可以实时生成要向 Dram 缓冲器 120 发送的 N 突发的数据的 ECC。
         然后, 记录单元 112, 继 N 突发的数据之后将所述 ECC 发送至 Dram 缓冲器 120, 并 将所述 N 突发的数据及上述 ECC 记录在 Dram 缓冲器 120 中。
         即, 当所述 ECC 是 M 突发的数据时, 记录单元 112, 使所述 N 突发的数据及所述 ECC 被在同一突发操作中记录到 Dram 缓冲器 120 中, 由此可将 N 突发的数据发送结构变更为 N+M 突发的数据发送结构。
         结果, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 可将从 Dram 缓冲器 管理装置 110 中向 Dram 缓冲器 120 发送的数据的基本突发单位增加相当于所述 ECC 的大 小, 以一次的突发存取将所述数据和所述 ECC 存储到一个 Dram 芯片中。
         在这个时候, Dram 缓冲器管理装置 110, 向所述数据中添加所述 ECC 发送至 Dram 缓冲器 120, 由此可能会出现一个突发发送使用 Dram 缓冲器 120 上的一个以上的页的情况。 换句话说, 可能会发生所述数据的大小和所述 ECC 的大小的和超过要记录所述数 据和所述 ECC 的第一页的大小的情况。
         与此相关, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 可进一步包括 表存储单元 ( 未示出 ), 其存储有将构成所述 Dram 缓冲器 120 的至少一个页中相互连续的 页映射到相互不同的条 (bank) 中的地址映射表。
         此时, 记录单元 112, 在所述数据的大小和所述 ECC 的大小的和超过所述第一页的 大小时, 参照所述地址映射表, 将与所述第一页连续的、 与所述第一页和其他条映射的第二 页生开 (raw open) 之后, 将所述数据及所述 ECC 中超过第一页的大小的数据记录在所述第 二页中, 由此, 在 Dram 缓冲器 110 中, 可以向 Dram 缓冲器发送突发而不会发生突发断开。
         结果, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110, 可使用所述地址映 射表进行条交错 (Bank Interleaving), 由此, 可以防止 Dram 缓冲器管理单元 110 与 Dram 缓冲器 120 之间的发送带宽损耗。
         接下来, 将对当 SSD 控制器按前述的方法将记录的数据从 Dram 缓冲器 120 中读取 出时, 根据本发明的一个实施例的 Dram 缓冲器管理装置 110 的操作进行说明。
         读取单元 113, 可从 Dram 缓冲器 120 中以 N+M 突发读取出所述数据和所述 ECC。
         判断单元 114, 实时检查所述读取出的 ECC, 并基于所述读取出的 ECC, 判断读取出 的所述数据是否发生错误以及错误比特的位置等。
         纠错单元 115, 可在读取出的数据发生错误时, 从判断单元 114 接受错误比特的位 置信息或错误内容信息等, 来纠正所述错误。
         根据本发明的一个实施例, Dram 缓冲器管理装置 110 可进一步包括命令控制单元 ( 未示出 ), 其对从多个母带 (master) 发送出的数据请求命令将所述请求命令的顺序重新 排列来使条可以交错。
         所述命令控制单元, 使当前命令与下一命令之间可进行条交错, 在当前命令的数
         据发送过程中可以提前知道对下一命令的生开, 所以最终可以提高 Dram 缓冲器 120 的整体 发送带宽。
         图 2 是示出根据本发明的一个实施例的 Dram 缓冲器管理方法的流程图。
         在步骤 S210 中, 生成要在 Dram 缓冲器中记录的数据的纠错码 ECC。
         在步骤 S220 中, 将所述数据和所述 ECC 记录在所述 Dram 缓冲器中。
         此时, 根据本发明的一个实施例的 Dram 缓冲器管理方法, 当从所述 Dram 缓冲器中 读取出了所述数据时, 在步骤 S220 之后可进一步包括从所述 Dram 缓冲器中读取出所述数 据和所述 ECC 的步骤。
         然后, 根据本发明的一个实施例的 Dram 缓冲器管理方法, 可进一步包括基于读取 出的 ECC 判断读取出的数据的错误发生与否的步骤。
         然后, 根据本发明的一个实施例的 Dram 缓冲器管理方法, 可进一步包括当读取出 的数据发生错误时纠正所述错误的步骤。
         此外, 根据本发明的一个实施例, 在步骤 S220 中可包括以下步骤, 即判断所述数 据的大小及所述 ECC 的大小的和是否超出要记录所述数据及所述 ECC 的第一页的大小的步 骤。 然后, 在步骤 S220 中可包括以下步骤, 当所述数据的大小及所述 ECC 的大小的和 超出所述第一页的大小时, 参照地址映射表将与所述第一页连续的下一页即第二页生开 (raw open), 并将所述数据及所述 ECC 中超出第一页的大小的数据记录在第二页中的步骤。
         在这种情况下, 所述地址映射表, 是将构成所述 Dram 缓冲器的至少一个页中相互 连续的页映射到相互不同的条中的表。
         上面参照图 2 对根据本发明的一个实施例的 Dram 缓冲器管理方法进行了说明。 在 这里, 根据本发明的一个实施例的 Dram 缓冲器管理方法与参照图 1 说明的 Dram 缓冲器管 理装置的构成相对应, 因此在这里省略其详细说明。
         根据本发明的示例性实施例的 Dram 缓冲器管理方法, 可被记录到包含由计算机 执行各种操作的程序指令的计算机可读媒体中。该媒体还可包括, 独立的或结合的程序 指令、 数据文件、 数据结构、 表等。媒体和程序指令可专门为本发明的目的设计和创建, 或为计算机软件技术人员熟知而应用。计算机可读媒体的例子包括 : 磁媒体 (magnetic media), 如 硬 盘、 软盘和磁带 ; 光 学 媒 体 (optical media), 如 CD ROM、 DVD ; 磁光媒体 (magneto-optical media), 如光盘 (floptical disk) ; 和专门配置为存储和执行程序指令 的硬件设备, 如只读存储器 (ROM)、 随机存取存储器 (RAM) 等。 程序指令的例子, 既包括机器 代码, 如由编译器产生的, 也包括含有可由计算机使用解释程序执行的更高级代码的文件。 所述硬件设备可配置为作为一个以上软件模块运行, 以执行上面所述的本发明的示例性实 施例的操作, 反之亦然。
         如上所示, 本发明虽然已参照有限的实施例和附图进行了说明, 但是本发明并不 局限于所述实施例, 在本发明所属领域中具备通常知识的人均可以从此记载中进行各种修 改和变形。
         因此, 本发明的范围不受说明的实施例的局限或定义, 而是由后附的权利要求范 围以及权利要求范围等同内容定义。
        

    关 键  词:
    DRAM 缓冲器 管理 装置 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:DRAM缓冲器管理装置和方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-973481.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1