CN105893275B - 缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置 - Google Patents
缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置 Download PDFInfo
- Publication number
- CN105893275B CN105893275B CN201510037390.4A CN201510037390A CN105893275B CN 105893275 B CN105893275 B CN 105893275B CN 201510037390 A CN201510037390 A CN 201510037390A CN 105893275 B CN105893275 B CN 105893275B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- data
- written
- storage element
- random access
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 44
- 239000000872 buffer Substances 0.000 claims description 21
- 238000013500 data storage Methods 0.000 claims description 10
- 238000009825 accumulation Methods 0.000 claims description 3
- 238000012217 deletion Methods 0.000 claims 2
- 230000037430 deletion Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000007689 inspection Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- CXOXHMZGEKVPMT-UHFFFAOYSA-N clobazam Chemical compound O=C1CC(=O)N(C)C2=CC=C(Cl)C=C2N1C1=CC=CC=C1 CXOXHMZGEKVPMT-UHFFFAOYSA-N 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 238000004242 micellar liquid chromatography Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229940044442 onfi Drugs 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000004809 thin layer chromatography Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/313—In storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/608—Details relating to cache mapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提出一种缓存及读取即将写入储存单元数据的方法,由处理单元执行,包含下列步骤。透过存取介面从主装置接收写入命令,请求写入至少一页面的数据后,判断是否已累积到一个区块的待写入数据,其中,一个区块包含指定数目的页面。当判断尚未累积到一个区块的待写入数据时,将此页面的数据储存至动态随机存取存储器,以及更新动态随机存取存储器中的快取资讯,用以指出此页面的数据尚未写入至储存单元以及动态随机存取存储器中暂存此页面的数据的位置。
Description
技术领域
本发明有关于一种快闪存储器装置,特别是一种缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置。
背景技术
快闪存储器装置通常分为NOR快闪装置与NAND快闪装置。NOR快闪装置为随机存取装置,而可于地址脚位上提供任何的地址,用以存取NOR快闪装置的主装置(host),并及时地由NOR快闪装置的数据脚位上获得储存于该地址上的数据。相反地,NAND快闪装置并非随机存取,而是串行存取。NAND快闪装置无法像NOR快闪装置一样,可以存取任何随机地址,主装置反而需要写入串行的字节(bytes)的值到NAND快闪装置中,用以定义请求命令(command)的类型(如,读取、写入、抹除等),以及用在此命令上的地址。地址可指向一个页面(在快闪存储器中的一个写入作业的最小数据块)或一个区块(在快闪存储器中的一个抹除作业的最小数据块)。实际上,NAND快闪装置通常从存储器单元(memory cells)上读取或写入完整的数页数据。当一整页的数据从阵列读取到装置中的缓存器(buffer)后,藉由使用提取信号(strobe signal)顺序地敲出(clock out)内容,让主单元可逐字节或字元组(words)存取数据。提升快闪存储器装置的数据存取速度一直是被关注的议题。因此,本发明提出一种缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置,用以提升数据存取的效率。
发明内容
本发明的实施例提出一种缓存及读取即将写入储存单元数据的方法,由处理单元执行,包含下列步骤。透过存取介面从主装置接收写入命令,请求写入至少一页面的数据后,判断是否已累积到一个区块的待写入数据,其中,一个区块包含指定数目的页面。当判断尚未累积到一个区块的待写入数据时,将此页面的数据储存至动态随机存取存储器,以及更新动态随机存取存储器中的快取资讯,用以指出此页面的数据尚未写入至储存单元,以及动态随机存取存储器中暂存此页面的数据的位置。
本发明的实施例另提出一种缓存及读取即将写入储存单元数据的装置,至少包含存取介面以及处理单元。处理单元耦接于存取介面,并且透过存取介面从主装置接收写入命令,用以请求写入至少一页面的数据后,判断是否已累积到一个区块的待写入数据,其中,一个区块包含指定数目的页面。当判断尚未累积到一个区块的待写入数据时,将此页面的数据储存至动态随机存取存储器,以及更新动态随机存取存储器中的快取资讯,用以指出此页面的数据尚未写入至储存单元,以及动态随机存取存储器中暂存此页面的数据的位置。
附图说明
图1是依据本发明实施例的快闪存储器的系统架构示意图。
图2是依据本发明实施例的快闪存储器中的储存单元示意图。
图3是依据本发明实施例的快取资讯示意图。
图4是依据本发明实施例的包含快取位元对照表的快取资讯示意图。
图5是依据本发明实施例的执行于处理单元中的数据写入方法流程图。
图6是依据本发明实施例的执行于处理单元中的数据读取方法流程图。
符号说明
10 系统; 110 处理单元;
120 缓存器; 130 动态随机存取存储器;
130a、130b、130c 动态随机存取存储器中的区域;
150 存取介面; 160 主装置;
170 存取介面; 180 储存单元;
210 存储器单元阵列; 220 行解码单元;
230 列编码单元; 240 地址单元;
250 数据缓存器;
310~330 动态随机存取存储器中暂存的数据;
S511~S543 方法步骤;
S611~S643 方法步骤。
具体实施方式
以下说明为完成发明的较佳实现方式,其目的在于描述本发明的基本精神,但并不用以限定本发明。实际的发明内容必须参考之后的权利要求书范围。
必须了解的是,使用于本说明书中的“包含”、”包括”等词,是用以表示存在特定的技术特征、数值、方法步骤、作业处理、元件以及/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、元件、组件,或以上的任意组合。
在权利要求中使用如”第一”、"第二"、"第三"等词用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。
图1是依据本发明实施例的快闪存储器的系统架构示意图。快闪存储器的系统架构10中包含处理单元110,用以写入数据到储存单元180中的指定地址,以及从储存单元180中的指定地址读取数据。详细来说,处理单元110透过存取介面170写入数据到储存单元180中的指定地址,以及从储存单元180中的指定地址读取数据。系统架构10使用数个电子信号来协调处理单元110与储存单元180间的数据与命令传递,包含数据线(data line)、时脉信号(clock signal)与控制信号(control signal)。数据线可用以传递命令、地址、读出及写入的数据;控制信号线可用以传递芯片致能(chip enable,CE)、地址提取致能(addresslatch enable,ALE)、命令提取致能(command latch enable,CLE)、写入致能(writeenable,WE)等控制信号。存取介面170可采用双倍数据率(double data rate,DDR)通讯协定与储存单元180沟通,例如,开放NAND快闪(open NAND flash interface,ONFI)、双倍数据率开关(DDR toggle)或其他介面。处理单元110另可使用存取介面150透过指定通讯协定与主装置160进行沟通,例如,通用串行总线(universal serial bus,USB)、先进技术附着(advanced technology attachment,ATA)、串行先进技术附着(serial advancedtechnology attachment,SATA)、快速周边元件互联(peripheral componentinterconnect express,PCI-E)或其他介面。
图2是依据本发明实施例的快闪存储器中的储存单元示意图。储存单元180可包含由MxN个存储器单元(memory cells)组成的阵列(array)210,而每一个存储器单元储存至少一个位元(bit)的资讯。快闪存储器可以是NAND型快闪存储器,或其他种类的快闪存储器。为了正确存取资讯,行解码单元220用以选择存储器单元阵列210中指定的行,而列编码单元230用以选择指定行中一定数量的字节的数据作为输出。地址单元240提供行资讯给行解码器220,其中定义了选择存储器单元阵列210中的那些行。相似地,列解码器230则根据地址单元240提供的列资讯,选择存储器单元阵列210的指定行中一定数量的列进行读取或写入操作。行可称为为字元线(wordline),列可称为位元线(bitline)。数据缓存器(databuffer)250可储存从存储器单元阵列210读取出的数据,或欲写入存储器单元阵列210中的数据。存储器单元可为单层式单元(single-level cells,SLCs)、多层式单元(multi-levelcells,MLCs)或三层式单元(triple-level cells,TLCs)。
主装置160可驱动存取介面150发送写入命令,用以指示处理单元110写入数据,而一个写入命令可用以写入一页的数据。为了最佳化储存单元180的数据写入作业,处理单元110会先将写入的数据暂存于动态随机存取存储器130,直到收集到一个区块的数据后,才会驱动存取介面170将暂存于动态随机存取存储器130写入储存单元180。例如,假设一个区块包含四个页面,且每个页面包含4K字节的数据。处理单元110会在收集到16K字节(亦即是四个页面)的数据后,才会驱动存取介面170将数据写入到储存单元180中。于此须注意的是,等待写入的16K字节的数据并不必然存在同一个区块,也可以存在于不同的区块。然而,当收到读取已暂存于态随机存取存储器130但尚未写入储存单元180的数据的读取命令时,处理单元110若驱动存取介面170从储存单元180读取数据,将读到不是最近更新的数据。因此,处理单元110更于动态随机存取存储器130中记录快取资讯,用以辨认特定页面的数据是否已写入储存单元180中,避免如上所述不正确读取的问题。动态随机存取存储器130可设置两个区域,其中区域130a用来暂存待写入储存单元180的数据,而区域130b用来储存快取资讯。于一种实施例中,快取资讯可以多笔记录的方式实施,其中每一笔记录储存主装置所发的写入地址,例如逻辑区块地址(LBA,Logical Block Address),以及待写入数据暂存于动态随机存取存储器130中的地址。图3是依据本发明实施例的快取资讯示意图。动态随机存取存储器130储存三笔分别关联于逻辑区块地址”100”、”200”及”300”的记录,而这三笔记录更储存分别指向区域130a中的特定地址310、320及330。处理单元110可藉由检查区域130b中的记录来判断关联于接收到读取命令的逻辑区块地址的数据是否尚未储存至储存单元180。例如,当处理单元110接收到逻辑区块地址”300”的读取命令后,因为区域130b中存在一笔逻辑区块地址”300”的记录,判断逻辑区块地址”300”的数据尚未储存至储存单元180,并且透过记录的动态随机存取存储器130的地址找到待写入逻辑区块地址”300”的页面数据。当处理单元110接收到逻辑区块地址”310”的读取命令后,因为区域130b中不存在任何逻辑区块地址”310”的记录,判断逻辑区块地址”310”的数据已储存至储存单元180。然而,此实施方式必须要搜寻完所有的记录后才能确定关联于接收到读取命令的逻辑区块地址的数据是否尚未储存至储存单元180。为减少判断的时间,于另一种实施例中,除以上所述的记录外,快取资讯可还包含快取位元对照表(cache bitmap)。图4是依据本发明实施例的包含快取位元对照表的快取资讯示意图。动态随机存取存储器130中更配置一个区域130c,用以储存快取位元对照表,包含逻辑区块地址总数的位元,每一个位元代表一个逻辑区块地址的数据是否尚未储存至储存单元180的资讯(亦即是,仍暂存在动态随机存取存储器130)。例如,第100个位元代表逻辑区块地址”100”的数据是否尚未储存至储存单元180的资讯。当第100个位元中的值为”1”时代表逻辑区块地址”100”的数据尚未储存至储存单元180,令当第100个位元中的值为”0”时代表逻辑区块地址”100”的数据已经储存至储存单元180。处理单元110可直接读取快取位元对照表中第100个位元的值来判断逻辑区块地址”310”的数据已储存至储存单元180,而不需要读取区域130b中所有的记录后才能进行如上的判断。
图5是依据本发明实施例的执行于处理单元中的数据写入方法流程图。处理单元110经由存取介面150接收主装置160所发出的写入命令、写入地址及数据后(步骤S511),判断是否已累积到一个区块的待写入数据(步骤S521)。写入地址可为逻辑区块地址。如假设一个区块包含四个页面,处理单元110可检查区域130b中是否存在三笔记录来判断是否已累积到一个区块的待写入数据。若是(步骤S521中的”是”的路径),则处理单元110将动态随机存取存储器130暂存的数据以及接收到的数据储存至缓存器120(步骤S531),并且驱动存取介面170用以将缓存器120中的数据写入至储存单元180(步骤S533)。于步骤S531中,处理单元110可透过直接存储器存取控制器(DMA controller,未显示)来将动态随机存取存储器130暂存的数据储存至缓存器120。接着,处理单元110更新动态随机存取存储器130的快取资讯,用以清除关联于这些已写入数据的记录(步骤S535)。以图3为例,删除区域130b中的相关记录。或者是,以图4为例,删除区域130b中的相关记录,并且将区域130c中的快取位元对照表的相关位元值设为”0”。换句话说,当不存在相关记录或快取位元对照表的相关位元值设为”0”时,则代表暂存的数据已被写入储存单元180。若否(步骤S521中的”否”的路径),则处理单元110将接收到的数据储存至动态随机存取存储器130(步骤S541),并且更新动态随机存取存储器130的快取资讯,用以新增关联于暂存数据的记录(步骤S543)。以图3为例,新增一笔记录于区域130b。或者是,以图4为例,新增一笔记录于区域130b,并且将区域130c中的快取位元对照表的相关位元设为”1”。
图6是依据本发明实施例的执行于处理单元中的数据读取方法流程图。处理单元110经由存取介面150接收主装置160所发出的读取命令及读取地址后(步骤S611),判断主装置160所请求的数据是否尚未储存至储存单元180(步骤S621)。读取地址可为逻辑区块地址。以图3为例,处理单元110可检查区域130b中是否存在关联于读取地址的记录来进行判断。另以图4为例,处理单元110可检查区域130c的快取位元对照表中的关联于读取地址的位元值来进行判断。若是(步骤S621中”是”的路径),则从态随机存取存储器130取得快取资讯(S631),根据快取资讯从态随机存取存储器130读取请求的数据并储存至缓存器120(步骤S633),以及驱动存取介面150从缓存器120读取数据并敲出给主装置150(步骤S643)。关于态随机存取存储器130中的快取资讯的实际内容及透过快取资讯取得请求数据的方法,可参考以上图3及图4的说明。于步骤S633中,处理单元110可透过直接存储器存取控制器(未显示)来将动态随机存取存储器130暂存的数据储存至缓存器120。若否(步骤S621中”否”的路径),则处理单元110驱动存取介面170从储存装置180读取上述读取地址的数据并储存至缓存器120(步骤S641),以及驱动存取介面150从缓存器120读取数据并敲出给主装置150(步骤S643)。
虽然图1至2中包含了以上描述的元件,但不排除在不违反发明的精神下,使用更多其他的附加元件,已达成更佳的技术效果。此外,虽然图5以及图6的流程图采用指定的顺序来执行,但是在不违法发明精神的情况下,熟悉本技术领域者可以在达到相同效果的前提下,修改这些步骤间的顺序,所以,本发明并不局限于仅使用如上所述的顺序。此外,熟悉本技术领域者亦可以将若干步骤整合为一个步骤,或者是除了这些步骤外,循序或平行地执行更多步骤,本发明亦不因此而局限。
虽然本发明使用以上实施例进行说明,但需要注意的是,这些描述并非用以限缩本发明。相反地,此发明涵盖了熟悉本技术领域者显而易见的修改与相似设置。所以,申请权利要求范围须以最宽广的方式解释来包含所有显而易见的修改与相似设置。
Claims (18)
1.一种缓存及读取即将写入储存单元的数据的方法,由一处理单元执行,包含:
透过一第一存取介面从一主装置接收一写入命令,请求写入至少一页面的数据至一第一地址;
判断是否已累积到一区块的待写入数据,其中,上述区块包含指定数目的页面;
当判断尚未累积到上述区块的待写入数据时,将上述至少一页面的数据储存至一动态随机存取存储器,以及更新上述动态随机存取存储器中的一快取资讯,用以指出上述至少一页面的数据尚未写入至一储存单元以及上述动态随机存取存储器中暂存上述至少一页面的数据的位置;
透过上述第一存取介面从上述主装置接收一读取命令,请求从上述储存单元读取一第三地址的数据;
判断上述第三地址的数据是否已经写入上述储存单元;以及
当判断上述第三地址的数据尚未写入上述储存单元时,从上述动态随机存取存储器读取请求从上述储存单元读取的数据,并且驱动上述第一存取介面输出从上述动态随机存取存储器读取的数据给上述主装置。
2.如权利要求1所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,在判断是否已累积到上述区块的待写入数据步骤中,还包含:
藉由检查上述动态随机存取存储器中是否存在特定笔数的记录来判断是否已累积到上述区块的待写入数据。
3.如权利要求2所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,每一上述记录指出至少一页面的数据尚未写入至上述储存单元。
4.如权利要求1所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,在更新上述动态随机存取存储器中的上述快取资讯,用以指出上述至少一页面的数据尚未写入至上述储存单元的步骤中,还包含:
新增一记录,包含上述第一地址以及上述动态随机存取存储器中暂存上述至少一页面的数据的一第二地址。
5.如权利要求1所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,在更新上述动态随机存取存储器中的上述快取资讯,用以指出上述至少一页面的数据尚未写入至上述储存单元的步骤中,还包含:
新增一记录,包含上述第一地址以及上述动态随机存取存储器中暂存上述至少一页面的数据的一第二地址;以及
更新上述动态随机存取存储器中的一快取位元对照表中的一位元值,用以指出上述至少一页面的数据尚未写入至上述储存单元。
6.如权利要求1所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,还包含:
当判断已经累积到上述区块的待写入数据时,将上述动态随机存取存储器暂存的数据以及上述至少一页面的数据储存至一缓存器;
驱动一第二存取介面来将上述缓存器中的数据写入至上述储存单元;以及
更新上述动态随机存取存储器中的上述快取资讯,用以指出上述暂存的数据已经写入上述储存单元。
7.如权利要求6所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,其中于更新上述动态随机存取存储器中的上述快取资讯,用以指出上述暂存的数据已经写入上述储存单元的步骤中,还包含:
删除一记录,上述记录包含数据暂存于上述动态随机存取存储器中哪个位置的资讯。
8.如权利要求6所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,其中在更新上述动态随机存取存储器中的上述快取资讯,用以指出上述暂存的数据已经写入上述储存单元的步骤中,还包含:
删除一记录,上述记录包含数据暂存于上述动态随机存取存储器中哪个位置的资讯;以及
更新上述动态随机存取存储器中的一快取位元对照表中的一位元值,用以指出上述暂存的数据已经写入至上述储存单元。
9.如权利要求1所述的缓存及读取即将写入储存单元的数据的方法,其特征在于,还包含:
当判断上述第三地址的数据已经写入上述储存单元时,驱动一第二存取介面从上述储存单元读取上述第三地址的数据并储存至一缓存器,并且驱动上述第一存取介面输出上述缓存器中的数据给上述主装置。
10.一种缓存及读取即将写入储存单元的数据的装置,包含:
一第一存取介面,耦接于一主装置;
一处理单元,耦接于上述第一存取介面,透过上述第一存取介面从上述主装置接收一写入命令,请求写入至少一页面的数据至一第一地址;判断是否已累积到一区块的待写入数据,其中,上述区块包含指定数目的页面;以及当判断尚未累积到上述区块的待写入数据时,将上述至少一页面的数据储存至一动态随机存取存储器,以及更新上述动态随机存取存储器中的一快取资讯,用以指出上述至少一页面的数据尚未写入至一储存单元以及上述动态随机存取存储器中暂存上述至少一页面的数据的位置;以及
上述处理单元透过上述第一存取介面从上述主装置接收一读取命令,请求从上述储存单元读取一第三地址的数据;判断上述第三地址的数据是否已经写入上述储存单元;以及当判断上述第三地址的数据尚未写入上述储存单元时,从上述动态随机存取存储器读取请求从上述储存单元读取的数据,并且驱动上述第一存取介面输出从上述动态随机存取存储器读取的数据给上述主装置。
11.如权利要求10所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,上述处理单元更藉由检查上述动态随机存取存储器中是否存在特定笔数的记录来判断是否已累积到上述区块的待写入数据。
12.如权利要求11所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,每一上述记录指出至少一页面的数据尚未写入至上述储存单元。
13.如权利要求10所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,当判断尚未累积到上述区块的待写入数据时,上述处理单元更新增一记录,包含上述第一地址以及上述动态随机存取存储器中暂存上述至少一页面的数据的一第二地址。
14.如权利要求10所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,当判断尚未累积到上述区块的待写入数据时,上述处理单元更新增一记录,包含上述第一地址以及上述动态随机存取存储器中暂存上述至少一页面的数据的一第二地址;以及更新上述动态随机存取存储器中的一快取位元对照表中的一位元值,用以指出上述至少一页面的数据尚未写入至上述储存单元。
15.如权利要求10所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,上述处理单元还当判断已经累积到上述区块的待写入数据时,将上述动态随机存取存储器暂存的数据以及上述至少一页面的数据储存至一缓存器;驱动一第二存取介面来将上述缓存器中的数据写入至上述储存单元;以及更新上述动态随机存取存储器中的上述快取资讯,用以指出上述暂存的数据已经写入上述储存单元。
16.如权利要求15所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,上述处理单元还当判断已经累积到上述区块的待写入数据时,删除一记录,上述记录包含数据暂存于上述动态随机存取存储器中哪个位置的资讯。
17.如权利要求15所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,上述处理单元还当判断已经累积到上述区块的待写入数据时,删除一记录,上述记录包含数据暂存于上述动态随机存取存储器中哪个位置的资讯;以及更新上述动态随机存取存储器中的一快取位元对照表中的一位元值,用以指出上述暂存的数据已经写入至上述储存单元。
18.如权利要求10所述的缓存及读取即将写入储存单元的数据的装置,其特征在于,上述处理单元当判断上述第三地址的数据已经写入上述储存单元时,驱动一第二存取介面从上述储存单元读取上述第三地址的数据并储存至一缓存器,并且驱动上述第一存取介面输出上述缓存器中的数据给上述主装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103138488 | 2014-11-06 | ||
TW103138488A TWI567554B (zh) | 2014-11-06 | 2014-11-06 | 緩存及讀取即將寫入儲存單元之資料的方法以及使用該方法的裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105893275A CN105893275A (zh) | 2016-08-24 |
CN105893275B true CN105893275B (zh) | 2019-03-22 |
Family
ID=55912320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510037390.4A Active CN105893275B (zh) | 2014-11-06 | 2015-01-26 | 缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置 |
Country Status (3)
Country | Link |
---|---|
US (3) | US9779022B2 (zh) |
CN (1) | CN105893275B (zh) |
TW (1) | TWI567554B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8327185B1 (en) | 2012-03-23 | 2012-12-04 | DSSD, Inc. | Method and system for multi-dimensional raid |
US11829349B2 (en) | 2015-05-11 | 2023-11-28 | Oracle International Corporation | Direct-connect functionality in a distributed database grid |
TWI594245B (zh) * | 2016-02-02 | 2017-08-01 | 慧榮科技股份有限公司 | 資料寫入工作排程方法以及使用該方法的裝置 |
CN108572920B (zh) * | 2017-03-09 | 2022-04-12 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
US10466930B2 (en) | 2017-04-28 | 2019-11-05 | EMC IP Holding Company LLC | Method and system for fast ordered writes with atomic multicast |
US10614019B2 (en) | 2017-04-28 | 2020-04-07 | EMC IP Holding Company LLC | Method and system for fast ordered writes with target collaboration |
US10339062B2 (en) * | 2017-04-28 | 2019-07-02 | EMC IP Holding Company LLC | Method and system for writing data to and read data from persistent storage |
US10289491B1 (en) | 2017-04-28 | 2019-05-14 | EMC IP Holding Company LLC | Method and system for implementing multi-dimensional raid in an extensible storage array to optimize performance |
US10719446B2 (en) * | 2017-08-31 | 2020-07-21 | Oracle International Corporation | Directly mapped buffer cache on non-volatile memory |
CN109408402B (zh) * | 2018-10-09 | 2021-06-01 | 长江存储科技有限责任公司 | 一种闪存器的数据写入方法及闪存器 |
US11972811B2 (en) | 2018-11-18 | 2024-04-30 | NEO Semiconductor, Inc. | Methods and apparatus for NAND flash memory |
US12002525B2 (en) | 2018-11-18 | 2024-06-04 | NEO Semiconductor, Inc. | Methods and apparatus for NAND flash memory |
US11049579B2 (en) | 2018-11-18 | 2021-06-29 | Fu-Chang Hsu | Methods and apparatus for NAND flash memory |
CN109992527B (zh) * | 2019-04-15 | 2021-08-10 | 苏州浪潮智能科技有限公司 | 一种全闪存储系统的位图管理方法 |
US11176049B2 (en) * | 2020-03-17 | 2021-11-16 | Silicon Motion, Inc. | Flash memory controller mechanism capable of generating host-based cache information or flash-memory-based cache information to build and optimize binary tree with fewer nodes when cache stores data from host |
CN113835617B (zh) * | 2020-06-23 | 2024-09-06 | 慧荣科技股份有限公司 | 数据处理方法及对应的数据储存装置 |
WO2022087181A1 (en) * | 2020-10-20 | 2022-04-28 | NEO Semiconductor, Inc. | Methods and apparatus for nand flash memory |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201011760A (en) * | 2008-09-05 | 2010-03-16 | A Data Technology Co Ltd | Flash memory system and its method of operation |
TWI326028B (en) * | 2006-11-20 | 2010-06-11 | Silicon Motion Inc | Method for flash memory data management |
TW201113886A (en) * | 2009-10-09 | 2011-04-16 | Silicon Motion Inc | Method for enhancing performance of accessing a flash memory, and associated memory device and controller thereof |
CN203311409U (zh) * | 2013-05-15 | 2013-11-27 | 建荣集成电路科技(珠海)有限公司 | 一种Nand Flash的坏列管理装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100823171B1 (ko) * | 2007-02-01 | 2008-04-18 | 삼성전자주식회사 | 파티션된 플래시 변환 계층을 갖는 컴퓨터 시스템 및플래시 변환 계층의 파티션 방법 |
TWI338856B (en) * | 2007-03-09 | 2011-03-11 | Ite Tech Inc | A flash memory storing device and a data storing method thereof |
TW200905469A (en) * | 2007-07-31 | 2009-02-01 | Moai Electronics Corp | Access device to increase the NAND flash and method of the same |
JP4498426B2 (ja) * | 2008-03-01 | 2010-07-07 | 株式会社東芝 | メモリシステム |
US9547589B2 (en) * | 2008-06-18 | 2017-01-17 | Super Talent Technology, Corp. | Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive |
TWI381386B (zh) * | 2008-08-04 | 2013-01-01 | Phison Electronics Corp | 資料管理方法及其儲存裝置與其控制器 |
US8281074B2 (en) * | 2008-10-07 | 2012-10-02 | Micron Technology, Inc. | Interface device for memory in a stack, storage devices and a processor |
TWI386802B (zh) * | 2009-07-03 | 2013-02-21 | Phison Electronics Corp | 用於快閃記憶體的資料寫入方法及其控制電路與儲存系統 |
US10031850B2 (en) * | 2011-06-07 | 2018-07-24 | Sandisk Technologies Llc | System and method to buffer data |
US9600203B2 (en) * | 2014-03-11 | 2017-03-21 | Amazon Technologies, Inc. | Reducing data volume durability state for block-based storage |
-
2014
- 2014-11-06 TW TW103138488A patent/TWI567554B/zh active
-
2015
- 2015-01-26 CN CN201510037390.4A patent/CN105893275B/zh active Active
- 2015-06-12 US US14/738,464 patent/US9779022B2/en active Active
-
2017
- 2017-08-29 US US15/689,767 patent/US10162759B2/en active Active
-
2018
- 2018-11-16 US US16/193,156 patent/US10628319B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI326028B (en) * | 2006-11-20 | 2010-06-11 | Silicon Motion Inc | Method for flash memory data management |
TW201011760A (en) * | 2008-09-05 | 2010-03-16 | A Data Technology Co Ltd | Flash memory system and its method of operation |
TW201113886A (en) * | 2009-10-09 | 2011-04-16 | Silicon Motion Inc | Method for enhancing performance of accessing a flash memory, and associated memory device and controller thereof |
CN203311409U (zh) * | 2013-05-15 | 2013-11-27 | 建荣集成电路科技(珠海)有限公司 | 一种Nand Flash的坏列管理装置 |
Also Published As
Publication number | Publication date |
---|---|
US9779022B2 (en) | 2017-10-03 |
US10162759B2 (en) | 2018-12-25 |
TWI567554B (zh) | 2017-01-21 |
US20160132432A1 (en) | 2016-05-12 |
US20190087343A1 (en) | 2019-03-21 |
US20170357590A1 (en) | 2017-12-14 |
US10628319B2 (en) | 2020-04-21 |
TW201617884A (zh) | 2016-05-16 |
CN105893275A (zh) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105893275B (zh) | 缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置 | |
US8438361B2 (en) | Logical block storage in a storage device | |
KR102447471B1 (ko) | 불휘발성 메모리 장치를 포함하는 스토리지 장치 | |
US8144515B2 (en) | Interleaved flash storage system and method | |
US8019943B2 (en) | High endurance non-volatile memory devices | |
KR102546229B1 (ko) | 리드 리클레임 동작 시에 버퍼 메모리를 이용하는 스토리지 장치 | |
US10678476B2 (en) | Memory system with host address translation capability and operating method thereof | |
CN105426315B (zh) | 实体储存对照表维护方法以及使用该方法的装置 | |
US8174912B2 (en) | Systems and methods for circular buffering control in a memory device | |
US20080209112A1 (en) | High Endurance Non-Volatile Memory Devices | |
CN105528299B (zh) | 读取命令排程方法以及使用该方法的装置 | |
KR20160050139A (ko) | 스토리지 장치 및 스토리지 장치의 동작 방법 | |
US11157399B2 (en) | Data storage devices and data processing methods with dynamic programming scheme | |
US20180188981A1 (en) | Methods and apparatus for read disturb detection based on logical domain | |
US8892816B1 (en) | System and method for writing data to a memory | |
US10929303B2 (en) | Data storage device utilizing virtual blocks to improve performance and data storage method thereof | |
CN106201329B (zh) | 循环区块模式下的数据存取方法以及使用该方法的装置 | |
CN106033323B (zh) | 读取快闪存储器中储存单元的方法以及使用该方法的装置 | |
US20180275915A1 (en) | Methods for regular and garbage-collection data access and apparatuses using the same | |
CN106205707B (zh) | 存储器装置 | |
CN110968527B (zh) | Ftl提供的缓存 | |
CN112447216B (zh) | 命令延迟 | |
KR20220165564A (ko) | 저장 장치 및 그 동작 방법 | |
KR102282952B1 (ko) | 스토리지 장치의 동작 방법 | |
CN105408961B (zh) | 数据存储方法、装置和非易失性存储器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |