CN102541463B - 快闪存储装置及其数据存取方法 - Google Patents
快闪存储装置及其数据存取方法 Download PDFInfo
- Publication number
- CN102541463B CN102541463B CN201010623644.8A CN201010623644A CN102541463B CN 102541463 B CN102541463 B CN 102541463B CN 201010623644 A CN201010623644 A CN 201010623644A CN 102541463 B CN102541463 B CN 102541463B
- Authority
- CN
- China
- Prior art keywords
- flash memory
- data
- logical address
- target data
- target
- 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
Abstract
本发明提供一种快闪存储装置的数据存取方法。于一实施例中,该快闪存储装置包括一快闪存储器。首先,自一主机接收一写入数据及一写入逻辑地址。接着,依据该写入数据计算一累计总和值。接着,决定是否该快闪存储器中储存具有该累计总和值的一目标数据。若该快闪存储器中已储存该目标数据,自该快闪存储器读取该目标数据。接着,决定是否该目标数据与该写入数据相同。若该目标数据与该写入数据相同,于一重新对应表中记录该目标数据的一原逻辑地址与该写入逻辑地址的对应关系,且不将该写入数据写入该快闪存储器。
Description
技术领域
本发明有关存储器,特别是有关快闪存储器。
背景技术
一般的快闪存储装置包括一控制器及一快闪存储器(flash memory),用以为一主机储存数据。当主机欲储存数据至快闪存储装置,主机会向快闪存储装置发送写入命令,控制器再依据写入命令将数据写入快闪存储器。当主机欲自快闪存储装置读取数据,主机会向快闪存储装置发送读取命令,控制器再依据读取命令自快闪存储器读取数据后传送至主机。
当主机发出写入命令要求快闪存储装置写入一定数量的数据,“快闪存储器所实际存取的数据量”与“主机要求写入的数据量”不一定会相同。一般而言,“快闪存储器实际存取的数据量”会大于“主机要求写入的数据量”。当主机所要求写入的快闪存储器地址已储存数据,控制器必须先将快闪存储器对应于该地址的区块的数据清除,才能将新数据写入快闪存储器对应于该地址的区块。若新数据与该区块所储存的旧数据地址不完全重叠,控制器尚需先将旧数据复制以与新数据合并,再将合并后的新数据写入已清除数据的区块。此等数据复制、数据清除的动作都会增加控制器的额外负担,延长执行写入命令所需的时间,并降低快闪存储装置的效能。
快闪存储装置的工作效率有多个衡量标准,其中一衡量标准为写入放大比率值(write amplifier index,WAI)。写入放大比率值是等于“快闪存储器实际存取的数据量”除以“主机要求写入的数据量”的值,用以衡量快闪存储装置的控制器的效能高低。在主机要求写入相同的数据量时,当写入放大比率值愈大,控制器所实际要求快闪存储器存取的数据量愈多,造成较长的延迟时间,表示快闪存储装置的控制器的效能愈低。相反的,当写入放大比率值愈小,控制器所实际要求快闪存储器存取的数据量愈少,可减少完成写入命令所需的时间,表示快闪存储装置的控制器的效能愈高。
为了提升快闪存储装置的效能,必须尽可能降低“写入放大比率值”。因此,本发明提供一种快闪存储装置的数据存取方法,可降低写入放大比率值,以有效提升快闪存储装置的效能。
发明内容
有鉴于此,本发明的目的在于提供一种快闪存储装置的数据存取方法,降低写入放大比率值,以有效提升快闪存储装置的效能。
根据本发明一方面提供一种快闪存储装置的数据存取方法,其中该快闪存储装置包括一快闪存储器,其特征在于,该方法包括下列步骤:自一主机接收一写入数据及一写入逻辑地址;依据该写入数据计算一累计总和值(running sum);决定是否该快闪存储器中储存具有该累计总和值的一目标数据;若该快闪存储器中已储存该目标数据,自该快闪存储器读取该目标数据;决定是否该目标数据与该写入数据相同;以及若该目标数据与该写入数据相同,于一重新对应表(Remapping table)中记录该目标数据的一原逻辑地址与该写入逻辑地址的对应关系,且不将该写入数据写入该快闪存储器。
根据本发明另一方面还提供一种快闪存储装置,耦接至一主机,其特征在于,包括:一快闪存储器,供数据储存;以及一控制器,自该主机接收一写入数据及一写入逻辑地址,依据该写入数据计算一累计总和值,决定是否该快闪存储器中储存具有该累计总和值的一目标数据,若该快闪存储器中已储存该目标数据则自该快闪存储器读取该目标数据,决定是否该目标数据与该写入数据相同,以及若该目标数据与该写入数据相同,于一重新对应表中记录该目标数据的一原逻辑地址与该写入逻辑地址的对应关系,且不将该写入数据写入该快闪存储器。
本发明的有益技术效果是:本发明的快闪存储装置及其数据存取方法,可降低写入放大比率值,以有效提升快闪存储装置的效能。
为了让本发明的上述和其它目的、特征、和优点能更明显易懂,下文特举数较佳实施例,并配合附图作详细说明如下:
附图说明
图1是依据本发明的数据储存系统的区块图;
图2是依据本发明的快闪存储装置的数据写入方法的流程图;
图3为依据本发明的累计总和值与逻辑地址对应表的示意图;
图4为依据本发明的重新对应表的示意图;以及
图5为依据本发明的快闪存储装置的数据读取方法的流程图。
具体实施方式
图1是依据本发明的数据储存系统100的区块图。数据储存系统100包括一主机102及一快闪存储装置104。于一实施例中,快闪存储装置104包括控制器106及快闪存储器108。快闪存储器108供数据储存。控制器106依据主机102所发出的写入命令将数据写入快闪存储器108,并依据主机102所发出的读取命令自快闪存储器108读取数据。于一实施例中,控制器106包括处理器112及存储器114。处理器112包含一累计总和计算模块122及一数据比较模块124。存储器114储存一累计总和值与逻辑地址对应表136及一重新对应表138。累计总和值与逻辑地址对应表136记录快闪存储器108内所储存的数据的累计总和值及逻辑地址,如图3所示。重新对应表138记录快闪存储器108内所储存的具有相同累计总和值的多笔数据的逻辑地址,如图4所示。
图2是依据本发明的数据写入方法的流程图。当控制器106自主机102收到写入命令、写入数据、及逻辑地址时(步骤202),控制器106首先将写入数据132储存于存储器114中。接着,处理器112的累计总和计算模块122会依据写入数据计算一累计总和值(running sum)(步骤204)。于一实施例中,该累计总和值为写入数据的循环冗余检验码(Cycle Redundancy Check,CRC)。接着,控制器106决定是否快闪存储器108中已储存一目标数据,其中该目标数据的累计总和值与该写入数据的累计总和值相同(步骤206)。于一实施例中,处理器112搜寻累计总和值与逻辑地址对应表136是否储存该写入数据的累计总和值。若累计总和值与逻辑地址对应表136已储存该写入数据的累计总和值,则决定快闪存储器108中已储存该目标数据。
若快闪存储器108中未储存该目标数据(步骤206),则控制器106将该写入数据132写入快闪存储器108(步骤214),并于累计总和值与逻辑地址对应表136中记录写入数据的逻辑地址及累计总和值的对应关系(步骤216)。反之,若快闪存储器108中已储存该目标数据(步骤206),则控制器106自快闪存储器108读取该目标数据134并储存至存储器114(步骤208)。于一实施例中,处理器112于累计总和值与逻辑地址对应表136中找出对应于写入数据的累计总和值的一目标逻辑地址,将该目标逻辑地址转换为一目标实体地址,并自快闪存储器108的该目标实体地址读取该目标数据134。
接着,控制器106的数据比较模块124比较该写入数据132及该目标数据134,以决定是否该写入数据132及该目标数据134相同(步骤210)。若该写入数据132与该目标数据134相同,则控制器106不将写入数据132写入快闪存储器108,仅于重新对应表138中记录该目标数据的目标逻辑地址与该写入数据的逻辑地址的对应关系(步骤212)。如此,控制器106执行写入命令时便省略了对快闪存储器108的实际写入动作,而可有效减少写入放大比率值(write amplifier index,WAI),以提升快闪存储装置104的效能。若该写入数据132与该目标数据134不相同(步骤210),则控制器106将该写入数据132写入快闪存储器108(步骤214),并于累计总和值与逻辑地址对应表136中记录写入数据的逻辑地址及累计总和值的对应关系(步骤216)。
举例来说,假设控制器106自主机102接收到一第一写入命令,该第一写入命令要求控制器106将第一写入数据D0写入第一逻辑地址LA00。因此,处理器112首先计算出第一写入数据D0的第一累计总和值RS0,并搜寻图3的累计总和值与逻辑地址对应表300是否包含第一累计总和值RS0的记录。由于累计总和值与逻辑地址对应表300包含第一累计总和值RS0的记录,表示快闪存储器108已储存具有第一累计总和值RS0的第一目标数据D0’,控制器106便自快闪存储器108读取第一目标数据D0’以便与第一写入数据D0相比较。若第一目标数据D0’与第一写入数据D0相同,控制器106便不将第一写入数据D0写入快闪存储器108,而直接于图4的重新对应表400中记录第一目标数据D0’的逻辑地址LA0与第一写入数据D0的逻辑地址LA00的对应关系,以减少对快闪存储器108的写入数据量,从而减少写入动作造成的延迟并提升快闪存储装置104的效能。
假设控制器106接着自主机102接收到一第二写入命令,该第二写入命令要求控制器106将第二写入数据D1写入第二逻辑地址LA10。因此,处理器112首先计算出第二写入数据D1的第二累计总和值RS1,并搜寻图3的累计总和值与逻辑地址对应表300是否包含第二累计总和值RS1的记录。由于累计总和值与逻辑地址对应表300包含第二累计总和值RS1的记录,表示快闪存储器108已储存具有第二累计总和值RS1的第二目标数据D1’,控制器106便自快闪存储器108读取第二目标数据D1’以便与第二写入数据D1相比较。若第二目标数据D1’与第二写入数据D1相同,控制器106便不将第二写入数据D1写入快闪存储器108,而直接于图4的重新对应表400中记录第二目标数据D1’的逻辑地址LA1与第二写入数据D1的逻辑地址LA10的对应关系,以减少对快闪存储器108的写入数据量,从而减少写入动作造成的延迟并提升快闪存储装置104的效能。
图5为依据本发明的快闪存储装置104的数据读取方法500的流程图。首先,快闪存储装置500自主机102接收一读取逻辑地址(步骤502)。接着,控制器106搜寻重新对应表138,以找到与该读取逻辑地址相对应的一原逻辑地址(步骤503)。以图4的重新对应表400为例,若读取逻辑地址为LA0、LA00、LA01、LA02,则可找到对应的原逻辑地址LA0。若读取逻辑地址为LA1、LA10、LA11,则可找到对应的原逻辑地址LA1。接着,控制器106转换该原逻辑地址为一实体地址(步骤504),并自快闪存储器的该实体地址读取一读出数据(步骤506)。举例来说,读取逻辑地址LA0、LA00、LA01、LA02的对应的原逻辑地址LA0皆可转换为同一实体地址,从而自快闪存储器108读出相同的数据。最后,控制器106输出该读出数据至主机102(步骤508)。
虽然本发明已以较佳实施例揭露如上,然而其并非用以限定本发明,任何熟悉此项技术者,在不脱离本发明的精神和范围内,当可作出种种等同的改变或替换,因此本发明的保护范围当视后附的本申请权利要求范围所界定的为准。
Claims (14)
1.一种快闪存储装置的数据存取方法,其中该快闪存储装置包括一快闪存储器,其特征在于,该方法包括下列步骤:
自一主机接收一写入数据及一写入逻辑地址;
依据该写入数据计算一累计总和值;
决定是否该快闪存储器中储存具有该累计总和值的一目标数据;
若该快闪存储器中已储存该目标数据,自该快闪存储器读取该目标数据;
决定是否该目标数据与该写入数据相同;以及
若该目标数据与该写入数据相同,于一重新对应表中记录该目标数据的一原逻辑地址与该写入逻辑地址的对应关系,且不将该写入数据写入该快闪存储器。
2.根据权利要求1所述的快闪存储装置的数据存取方法,其特征在于,该方法还包括:
若该快闪存储器中尚未储存具有该累计总和值的该目标数据,将该写入数据写入该快闪存储器;以及
于将该写入数据写入该快闪存储器后,于一累计总和值与实体地址对应表中记录该写入逻辑地址及该累计总和值的对应关系。
3.根据权利要求1所述的快闪存储装置的数据存取方法,其特征在于,该方法还包括:
若该目标数据与该写入数据不相同,将该写入数据写入该快闪存储器;以及
于将该写入数据写入该快闪存储器后,于一累计总和值与实体地址对应表中记录该写入逻辑地址及该累计总和值的对应关系。
4.根据权利要求2所述的快闪存储装置的数据存取方法,其特征在于,是否该快闪存储器中储存该目标数据的决定步骤,包括:
依据该写入数据的该累计总和值搜寻该累计总和值与实体地址对应表;以及
若该累计总和值与实体地址对应表中记录有包含该累计总和值的对应关系,则决定该快闪存储器中储存该目标数据。
5.根据权利要求2所述的快闪存储装置的数据存取方法,其特征在于,该目标数据的读取步骤包括:
依据该累计总和值与实体地址对应表决定对应于该累计总和值的一目标逻辑地址;
转换该目标逻辑地址为一目标实体地址;以及
依据该目标实体地址自该快闪存储器读取该目标数据。
6.根据权利要求1所述的快闪存储装置的数据存取方法,其特征在于,该累计总和值为循环冗余检验码。
7.根据权利要求1所述的快闪存储装置的数据存取方法,其特征在于,该方法还包括:
自该主机接收一读取逻辑地址;
搜寻该重新对应表,以找到与该读取逻辑地址相对应的一原读取逻辑地址;
转换该原读取逻辑地址为一读取实体地址;
依据该读取实体地址自该快闪存储器读取一读出数据;以及
将该读出数据输出至该主机。
8.一种快闪存储装置,耦接至一主机,其特征在于,包括:
一快闪存储器,供数据储存;以及
一控制器,自该主机接收一写入数据及一写入逻辑地址,依据该写入数据计算一累计总和值,决定是否该快闪存储器中储存具有该累计总和值的一目标数据,若该快闪存储器中已储存该目标数据则自该快闪存储器读取该目标数据,决定是否该目标数据与该写入数据相同,以及若该目标数据与该写入数据相同,于一重新对应表中记录该目标数据的一原逻辑地址与该写入逻辑地址的对应关系,且不将该写入数据写入该快闪存储器,
其中,该控制器包括:一存储器,用以储存该写入数据、该目标数据、以及该重新对应表;以及一处理器,该处理器包括:计算该写入数据的该累计总和值的一累计总和计算模块以及比较该写入数据与该目标数据以决定该目标数据与该写入数据是否相同的一数据比较模块。
9.根据权利要求8所述的快闪存储装置,其特征在于,若该快闪存储器中尚未储存具有该累计总和值的该目标数据,该控制器将该写入数据写入该快闪存储器,以及于一累计总和值与实体地址对应表中记录该写入逻辑地址及该累计总和值的对应关系。
10.根据权利要求8所述的快闪存储装置,其特征在于,若该目标数据与该写入数据不相同,该控制器将该写入数据写入该快闪存储器,以及于一累计总和值与实体地址对应表中记录该写入逻辑地址及该累计总和值的对应关系。
11.根据权利要求9所述的快闪存储装置,其特征在于,当该控制器决定是否该快闪存储器中储存该目标数据时,该控制器依据该写入数据的该累计总和值搜寻该累计总和值与实体地址对应表,以及若该累计总和值与实体地址对应表中记录有包含该累计总和值的对应关系则决定该快闪存储器中储存该目标数据。
12.根据权利要求9所述的快闪存储装置,其特征在于,该控制器依据该累计总和值与实体地址对应表决定对应于该累计总和值的一目标逻辑地址,转换该目标逻辑地址为一目标实体地址,以及依据该目标实体地址自该快闪存储器读取该目标数据。
13.根据权利要求8所述的快闪存储装置,其特征在于,该累计总和值为循环冗余检验码。
14.根据权利要求8所述的快闪存储装置,其特征在于,该控制器自该主机接收一读取逻辑地址,搜寻该重新对应表以找到与该读取逻辑地址相对应的一原读取逻辑地址,转换该原读取逻辑地址为一读取实体地址,依据该读取实体地址自该快闪存储器读取一读出数据,以及将该读出数据输出至该主机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010623644.8A CN102541463B (zh) | 2010-12-28 | 2010-12-28 | 快闪存储装置及其数据存取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010623644.8A CN102541463B (zh) | 2010-12-28 | 2010-12-28 | 快闪存储装置及其数据存取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102541463A CN102541463A (zh) | 2012-07-04 |
CN102541463B true CN102541463B (zh) | 2014-07-23 |
Family
ID=46348450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010623644.8A Active CN102541463B (zh) | 2010-12-28 | 2010-12-28 | 快闪存储装置及其数据存取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102541463B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105607861A (zh) * | 2014-11-24 | 2016-05-25 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN110674057A (zh) * | 2019-09-06 | 2020-01-10 | 苏州浪潮智能科技有限公司 | 一种数据处理方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371050A (zh) * | 2001-02-20 | 2002-09-25 | 英业达股份有限公司 | 一种生成具有自检测和自修复功能的应用程序的方法 |
CN1567256A (zh) * | 2003-06-20 | 2005-01-19 | 深圳市朗科科技有限公司 | 闪存介质中数据保护方法 |
CN101324862A (zh) * | 2008-05-05 | 2008-12-17 | 青岛海信电器股份有限公司 | 闪存存储管理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4199519B2 (ja) * | 2002-11-05 | 2008-12-17 | パナソニック株式会社 | メモリ管理装置及びメモリ管理方法 |
-
2010
- 2010-12-28 CN CN201010623644.8A patent/CN102541463B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371050A (zh) * | 2001-02-20 | 2002-09-25 | 英业达股份有限公司 | 一种生成具有自检测和自修复功能的应用程序的方法 |
CN1567256A (zh) * | 2003-06-20 | 2005-01-19 | 深圳市朗科科技有限公司 | 闪存介质中数据保护方法 |
CN101324862A (zh) * | 2008-05-05 | 2008-12-17 | 青岛海信电器股份有限公司 | 闪存存储管理方法 |
Non-Patent Citations (1)
Title |
---|
JP特开2004-157686A 2004.06.03 |
Also Published As
Publication number | Publication date |
---|---|
CN102541463A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10101914B2 (en) | Memory management method, memory control circuit unit and memory storage device | |
CN102063943B (zh) | Nand闪存参数自动检测系统 | |
CN104461387B (zh) | 一种提高固态硬盘对未映射区域的读性能的方法 | |
US8161240B2 (en) | Cache management | |
CN110008136A (zh) | 管理闪存模块的方法及相关的闪存控制器及电子装置 | |
CN105843749B (zh) | 一种基于FPGA的NAND Flash容错方法 | |
US20130073798A1 (en) | Flash memory device and data management method | |
CN104699417B (zh) | 数据储存装置以及其数据存取方法 | |
CN102053914B (zh) | 记忆装置以及存储器的数据存取方法 | |
CN105224474B (zh) | 固态硬盘闪存转换层的实现系统和闪存转换层的实现装置 | |
CN105117351A (zh) | 向缓存写入数据的方法及装置 | |
CN110674056B (zh) | 一种垃圾回收方法及装置 | |
CN113419675B (zh) | 用于存储器的写操作方法及读操作方法 | |
US20120131264A1 (en) | Storage device | |
CN109117383A (zh) | 管理闪存模块的方法和闪存控制器 | |
CN103970669A (zh) | 用于加速在固态设备中的回收操作的物理到逻辑地址映射 | |
CN102959548A (zh) | 数据存储方法、查找方法及装置 | |
CN102867046B (zh) | 基于固态硬盘的数据库优化方法及系统 | |
CN102541463B (zh) | 快闪存储装置及其数据存取方法 | |
CN103309619A (zh) | 一种闪存数据存储方法 | |
CN107229580A (zh) | 顺序流检测方法与装置 | |
CN110262980B (zh) | 基于有限寿命存储介质的高速存储系统 | |
CN101625661A (zh) | 用于闪存的数据管理方法、储存系统与控制器 | |
CN202443462U (zh) | 辅助上位机检索页映射单元块中空闲块的装置 | |
CN108519860B (zh) | 一种ssd读命中的处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |