CN107402716B - 数据写入方法、存储器控制电路单元与存储器储存装置 - Google Patents
数据写入方法、存储器控制电路单元与存储器储存装置 Download PDFInfo
- Publication number
- CN107402716B CN107402716B CN201610356300.2A CN201610356300A CN107402716B CN 107402716 B CN107402716 B CN 107402716B CN 201610356300 A CN201610356300 A CN 201610356300A CN 107402716 B CN107402716 B CN 107402716B
- Authority
- CN
- China
- Prior art keywords
- memory
- data
- unit
- physical
- write
- 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
Images
Classifications
-
- 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
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0656—Data buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提出一种数据写入方法、存储器控制电路单元与存储器储存装置。本方法包括:接收第一写入指令,并且将对应第一写入指令的数据写入至缓冲存储器中;以及当写入快取功能被关闭且第一写入指令的数据被暂存至缓冲存储器时,使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至第一实体抹除单元的第一实体程序化单元中,其中第一实体程序化单元是由多个第一记忆胞所构成且在单页程序化模式中,构成第一实体程序化单元的第一记忆胞之中的每一个第一记忆胞仅储存1个位数据。本发明可有效地避免因为主机***异常地断电所造成的数据遗失,并且能够有效地利用可复写式非易失性存储器的空间。
Description
技术领域
本发明涉及一种数据写入方法、存储器控制电路单元与存储器储存装置。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非易失性存储器(rewritable non-volatile memory)具有数据非易失性、省电、体积小、无机械结构、读写速度快等特性,最适于可携式电子产品,例如笔记本电脑。固态硬盘就是一种以闪存作为储存媒体的存储器储存装置。因此,近年闪存产业成为电子产业中相当热门的一环。
依据可复写式非易失性存储器中的每个记忆胞可储存的位数,反及(NAND)型闪存可区分为单阶储存单元(Single Level Cell,SLC)NAND型闪存、多阶储存单元(MultiLevel Cell,MLC)NAND型闪存与三阶储存单元(Trinary Level Cell,TLC)NAND型闪存,其中SLC NAND型闪存的每个记忆胞可储存1个位的数据(即,“1”与“0”),MLC NAND型闪存的每个记忆胞可储存2个位的数据并且TLC NAND型闪存的每个记忆胞可储存3个位的数据。
在NAND型闪存中,实体程序化单元是由排列在同一条字符在线的数个记忆胞所组成。由于SLC NAND型闪存的每个记忆胞可储存1个位的数据,因此,在SLC NAND型闪存中,排列在同一条字符在线的数个记忆胞是对应一个实体程序化单元。
相对于SLC NAND型闪存来说,MLC NAND型闪存的每个记忆胞的浮动栅储存层可储存2个位的数据,其中每一个储存状态(即,“11”、“10”、“01”与“00”)包括最低有效位(LeastSignificant Bit,LSB)以及最高有效位(Most Significant Bit,MSB)。例如,储存状态中从左侧算起的第1个位的值为LSB,而从左侧算起的第2个位的值为MSB。因此,排列在同一条字符在线的数个记忆胞可组成2个实体程序化单元,其中由此些记忆胞的LSB所组成的实体程序化单元称为下实体程序化单元(low physical programming unit),并且由此些记忆胞的MSB所组成的实体程序化单元称为上实体程序化单元(upper physical programmingunit)。值得一提的是,当程序化上实体程序化单元时发生错误或***异常断电,下实体程序化单元所储存的数据亦可能因此遗失。此外,当下实体程序化单元被程序化而此下实体程序化单元所对应的上实体程序化单元尚未被程序化时,下实体程序化单元中所储存的数据会因MLCNAND型闪存的特性而呈现不稳定的状态。在此状态下,下实体程序化单元中所储存的数据亦有遗失或损坏的风险。
一般来说,当可复写式非易失性存储器的存储器控制器接收到来自主机***的写入指令时,通常会将此写入指令所对应的数据先暂存至缓冲存储器中并且立即地回复对应此写入指令的写入完成信息给主机***以响应主机***所下达的写入操作。之后,存储器控制器会在适当的时机,例如主机***闲置一段时间或缓冲存储器中的可用空间不够时,才会将缓冲存储器中的数据写入至可复写式非易失性存储器中。
然而,一般的缓冲存储器为挥发性存储器。也就是说,当一笔数据被储存在缓冲存储器中而尚未被写入至可复写式非易失性存储器时,倘若此时主机***异常地断电,则储存在缓冲存储器中的数据会因此遗失。
因此,一般来说可以藉由使用写入快取关闭(disable write cache)指令的方式来避免主机***因异常地断电而造成储存在缓冲存储器中的数据的遗失。详细来说,当存储器控制器接收到来自主机***的写入快取关闭指令后,当存储器控制器接收到来自主机***的写入指令时,对应此写入指令的数据会被写入缓冲存储器中,并且存储器控制器会立即地将写入指令的数据从缓冲存储器中写入至可复写式非易失性存储器中,以降低写入指令的数据停留在缓冲存储器中的时间,并且降低数据遗失的风险。
然而需注意的是,写入指令的数据可能无法刚好同时填满一个实体程序化单元的下实体程序化单元以及上实体程序化单元。因此,若当写入指令的数据只写入至下实体程序化单元而下实体程序化单元所对应的上实体程序化单元未储存数据时,则下实体程序化单元中所储存的数据可能会因MLC NAND型闪存的特性而呈现不稳定的状态而有遗失的风险。
在一般已知的方法中,为了避免上述情况造成下实体程序化单元所储存的数据的遗失,存储器控制器可以将冗余数据(dummy data)写入至上实体程序化单元中,使得下实体程序化单元呈现稳定的状态,以确保下实体程序化单元中的数据已完整并稳定地储存。然而,当存储器控制器接收到来自主机***的写入快取关闭指令后,可能会因为多笔的写入指令,而写入过多的冗余数据至可复写式非易失性存储器中,进而造成本领域技术人员所通称的“写入放大(write amplification)”的问题,此问题即造成了可复写式非易失性存储器储存效率的低落。
基于上述,如何避免因为主机***异常地断电造成缓冲存储器中的数据的遗失,并且确保在异常地断电前的写入指令的数据皆已稳定地储存至可复写式非易失性存储器中并且有效地利用可复写式非易失性存储器的空间,乃是此领域技术人员所致力的目标。
发明内容
本发明提供一种数据写入方法、存储器控制电路单元与存储器储存装置,可以有效地避免因为主机***异常地断电所造成的数据遗失,并且能够有效地利用可复写式非易失性存储器的空间。
本发明提出一种数据写入方法,用于可复写式非易失性存储器模块,其中可复写式非易失性存储器模块具有多个实体抹除单元,此些实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元,此数据写入方法包括:从主机***接收第一写入指令,并且将对应此第一写入指令的数据暂存至缓冲存储器中;以及当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中,其中第一实体程序化单元是由多个第一记忆胞所构成且在单页程序化模式中,构成第一实体程序化单元的第一记忆胞之中的每一个第一记忆胞仅储存1个位数据。
在本发明的一实施例中,还包括:从主机***接收写入快取关闭指令,并且关闭写入快取功能以响应写入快取关闭指令。
在本发明的一实施例中,其中从主机***接收写入快取关闭指令的步骤之前,还包括:从主机***接收第二写入指令并且将对应第二写入指令的数据暂存至缓冲存储器中;以及使用多页程序化模式将暂存于缓冲存储器中对应第二写入指令的数据写入至实体抹除单元之中的第二实体抹除单元的第二实体程序化单元,其中第二实体程序化单元是由多个第二记忆胞所构成且在该多页程序化模式中,构成第二实体程序化单元的第二记忆胞之中的每一个第二记忆胞储存多个位数据。
在本发明的一实施例中,其中使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中的步骤之后,还包括:回复写入完成信息至主机***。
在本发明的一实施例中,上述的数据写入方法还包括:当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,下达清仓指令执行上述使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至第一实体抹除单元的第一实体程序化单元中的步骤。
在本发明的一实施例中,上述的数据写入方法还包括:在背景执行模式中,执行有效数据合并操作,以使用多页程序化模式将第一实体抹除单元中的多个有效数据复制至实体抹除单元之中的第三实体抹除单元的多个第三实体程序化单元中,其中第三实体程序化单元是由多个第三记忆胞所构成且在多页程序化模式中,构成第三实体程序化单元的第三记忆胞之中的每一个第三记忆胞储存多个位数据。
在本发明的一实施例中,上述的数据写入方法还包括:接收写入快取开启指令,并且开启该写入快取功能以响应写入快取开启指令。
在本发明的一实施例中,其中多页程序化模式为多阶记忆胞程序化模式或三阶记忆胞程序化模式,并且单页程序化模式为单阶记忆胞程序化模式、下实体程序化模式、混合程序化模式或少阶记忆胞程序化模式。
本发明一范例实施例提供一种用于控制可复写式非易失性存储器模块的存储器控制电路单元。此存储器控制电路单元包括:用以电性连接至主机***的主机接口;用以电性连接至可复写式非易失性存储器模块的存储器接口,其中可复写式非易失性存储器模块具有多个实体抹除单元,此些实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元;电性连接至主机接口及存储器接口的缓冲存储器;以及电性连接至主机接口、存储器接口与缓冲存储器的存储器管理电路。存储器管理电路用以:从主机***接收第一写入指令,并且将对应此第一写入指令的数据暂存至缓冲存储器中;以及当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,下达第一指令序列以使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中,其中第一实体程序化单元是由多个第一记忆胞所构成且在单页程序化模式中,构成第一实体程序化单元的第一记忆胞之中的每一个第一记忆胞仅储存1个位数据。
在本发明的一范例实施例中,其中存储器管理电路更用以:从主机***接收写入快取关闭指令,并且关闭写入快取功能以响应写入快取关闭指令。
在本发明的一范例实施例中,其中从主机***接收写入快取关闭指令的运作之前,存储器管理电路更用以:从主机***接收第二写入指令并且将对应第二写入指令的数据暂存至缓冲存储器中;以及下达第二指令序列以使用多页程序化模式将暂存于缓冲存储器中对应第二写入指令的数据写入至实体抹除单元之中的第二实体抹除单元的第二实体程序化单元,其中第二实体程序化单元是由多个第二记忆胞所构成且在该多页程序化模式中,构成第二实体程序化单元的第二记忆胞之中的每一个第二记忆胞储存多个位数据。
在本发明的一范例实施例中,其中使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中的运作之后,存储器管理电路更用以:回复写入完成信息至主机***。
在本发明的一范例实施例中,其中该第一指令序列为一清仓指令,存储器管理电路更用以:当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,根据清仓指令执行上述使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至第一实体抹除单元的第一实体程序化单元中的运作。
在本发明的一范例实施例中,存储器管理电路更用以:在背景执行模式中,执行有效数据合并操作,以使用多页程序化模式将第一实体抹除单元中的多个有效数据复制至实体抹除单元之中的第三实体抹除单元的多个第三实体程序化单元中,其中第三实体程序化单元是由多个第三记忆胞所构成且在多页程序化模式中,构成第三实体程序化单元的第三记忆胞之中的每一个第三记忆胞储存多个位数据。
在本发明的一范例实施例中,存储器管理电路更用以:接收写入快取开启指令,并且开启该写入快取功能以响应写入快取开启指令。
在本发明的一范例实施例中,其中多页程序化模式为多阶记忆胞程序化模式或三阶记忆胞程序化模式,并且单页程序化模式为单阶记忆胞程序化模式、下实体程序化模式、混合程序化模式或少阶记忆胞程序化模式。
本发明一范例实施例提供一种存储器储存装置。其包括:用以电性连接至主机***的连接接口单元、可复写式非易失性存储器模块以及电性连接至连接接口单元与可复写式非易失性存储器模块的存储器控制电路单元。其中存储器控制电路单元包括缓冲存储器,且可复写式非易失性存储器具有多个实体抹除单元,此些实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元。存储器控制电路单元用以:从主机***接收第一写入指令,并且将对应此第一写入指令的数据暂存至缓冲存储器中;以及当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,下达第一指令序列以使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中,其中第一实体程序化单元是由多个第一记忆胞所构成且在单页程序化模式中,构成第一实体程序化单元的第一记忆胞之中的每一个第一记忆胞仅储存1个位数据。
在本发明的一范例实施例中,其中存储器控制电路单元更用以:从主机***接收写入快取关闭指令,并且关闭写入快取功能以响应写入快取关闭指令。
在本发明的一范例实施例中,其中从主机***接收写入快取关闭指令的运作之前,存储器控制电路单元更用以:从主机***接收第二写入指令并且将对应第二写入指令的数据暂存至缓冲存储器中;以及下达第二指令序列以使用多页程序化模式将暂存于缓冲存储器中对应第二写入指令的数据写入至实体抹除单元之中的第二实体抹除单元的第二实体程序化单元,其中第二实体程序化单元是由多个第二记忆胞所构成且在该多页程序化模式中,构成第二实体程序化单元的第二记忆胞之中的每一个第二记忆胞储存多个位数据。
在本发明的一范例实施例中,其中使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中的运作之后,存储器控制电路单元更用以:回复写入完成信息至主机***。
在本发明的一范例实施例中,其中该第一指令序列为一清仓指令,存储器控制电路单元更用以:当写入快取功能已被关闭且第一写入指令的数据被暂存至缓冲存储器时,根据清仓指令执行上述使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至第一实体抹除单元的第一实体程序化单元中的运作。
在本发明的一范例实施例中,存储器控制电路单元更用以:在背景执行模式中,执行有效数据合并操作,以使用多页程序化模式将第一实体抹除单元中的多个有效数据复制至实体抹除单元之中的第三实体抹除单元的多个第三实体程序化单元中,其中第三实体程序化单元是由多个第三记忆胞所构成且在多页程序化模式中,构成第三实体程序化单元的第三记忆胞之中的每一个第三记忆胞储存多个位数据。
在本发明的一范例实施例中,存储器控制电路单元更用以:接收写入快取开启指令,并且开启该写入快取功能以响应写入快取开启指令。
在本发明的一范例实施例中,其中多页程序化模式为多阶记忆胞程序化模式或三阶记忆胞程序化模式,并且单页程序化模式为单阶记忆胞程序化模式、下实体程序化模式、混合程序化模式或少阶记忆胞程序化模式。
基于上述,本发明的数据写入方法可以有效地避免因为主机***异常地断电造成缓冲存储器中的数据的遗失,并且确保在异常地断电前的写入指令的数据皆已稳定地储存至可复写式非易失性存储器中且有效地利用可复写式非易失性存储器的空间。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据一范例实施例所显示的主机***、存储器储存装置及输入/输出(I/O)装置的示意图;
图2是根据另一范例实施例所显示的主机***、存储器储存装置及输入/输出(I/O)装置的示意图;
图3是根据另一范例实施例所显示的主机***与存储器储存装置的示意图;
图4是根据一范例实施例所显示的主机***与存储器储存装置的概要方框图;
图5A与图5B是根据本范例实施例所显示的记忆胞储存架构与实体抹除单元的范例示意图;
图6是根据一范例实施例所显示的存储器控制电路单元的概要方框图;
图7与图8是根据一范例实施例所显示的管理实体抹除单元的范例示意图;
图9是根据一范例所显示的使用单页程序化模式将数据写入可复写式非易失性存储器模块的示意图;
图10是根据一范例所显示的使用多页程序化模式对以单页程序化模式写入的数据进行有效数据合并操作的示意图;
图11与图12是根据一范例实施例所显示的资料写入方法的流程图。
附图标记:
10:存储器储存装置
11:主机***
12:输入/输出(I/O)装置
110:***总线
111:处理器
112:随机存取存储器(RAM)
113:只读存储器(ROM)
114:数据传输接口
20:主板
204:无线存储器储存装置
205:全球定位***模块
206:网络适配器
207:无线传输装置
208:键盘
209:屏幕
210:喇叭
30:存储器储存装置
31:主机***
32:SD卡
33:CF卡
34:嵌入式储存装置
341:嵌入式多媒体卡
342:嵌入式多芯片封装储存装置
402:连接接口单元
404:存储器控制电路单元
406:可复写式非易失性存储器模块
410(0)~410(N):实体抹除单元
WL0~WL127:字符线
502:存储器管理电路
504:主机接口
506:存储器接口
508:缓冲存储器
510:电源管理电路
512:错误检查与校正电路
602:资料区
604:闲置区
606:***区
608:取代区
LBA(0)~LBA(H):逻辑地址
LZ(0)~LZ(M):逻辑区域
S1101:判断是否从主机***接收到写入快取关闭指令或写入快取开启指令的步骤
S1103:倘若从主机***接收到写入快取关闭指令时,关闭写入快取功能以响应写入快取关闭指令的步骤
S1105:倘若从主机***接收到写入快取开启指令时,开启写入快取功能以响应写入快取开启指令的步骤
S1201:从主机***接收第一写入指令,并且将对应此第一写入指令的数据暂存至缓冲存储器中的步骤
S1203:判断写入快取功能是否已被关闭的步骤
S1205:当写入快取功能已被关闭时,使用单页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中的步骤
S1207:当写入快取功能未被关闭时,使用多页程序化模式将对应第一写入指令的数据从缓冲存储器中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中的步骤
具体实施方式
一般而言,存储器储存装置(亦称,存储器储存***)包括可复写式非易失性存储器模块与控制器(亦称,控制电路单元)。通常存储器储存装置是与主机***一起使用,以使主机***可将数据写入至存储器储存装置或从存储器储存装置中读取数据。
图1是根据一范例实施例所显示的主机***、存储器储存装置及输入/输出(I/O)装置的示意图,并且图2是根据另一范例实施例所显示的主机***、存储器储存装置及输入/输出(I/O)装置的示意图。
请参照图1与图2,主机***11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆电性连接至***总线(system bus)110。
在本范例实施例中,主机***11是通过数据传输接口114与存储器储存装置10电性连接。例如,主机***11可经由数据传输接口114将数据写入至存储器储存装置10或从存储器储存装置10中读取数据。此外,主机***11是通过***总线110与I/O装置12电性连接。例如,主机***11可经由***总线110将输出信号传送至I/O装置12或从I/O装置12接收输入信号。
在本范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114是可设置在主机***11的主板20上。数据传输接口114的数目可以是一个或多个。通过数据传输接口114,主板20可以经由有线或无线方式电性连接至存储器储存装置10。存储器储存装置10可例如是随身碟201、记忆卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器储存装置204。无线存储器储存装置204可例如是近距离无线通信(NearField Communication Storage,NFC)存储器储存装置、无线传真(WiFi)存储器储存装置、蓝牙(Bluetooth)存储器储存装置或低功耗蓝牙存储器储存装置(例如,iBeacon)等以各式无线通信技术为基础的存储器储存装置。此外,主板20也可以通过***总线110电性连接至全球定位***(Global Positioning System,GPS)模块205、网络适配器206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主板20可通过无线传输装置207存取无线存储器储存装置204。
在一范例实施例中,所提及的主机***为可实质地与存储器储存装置配合以储存数据的任意***。虽然在上述范例实施例中,主机***是以计算机***来作说明,然而,图3是根据另一范例实施例所显示的主机***与存储器储存装置的示意图。请参照图3,在另一范例实施例中,主机***31也可以是数码相机、摄影机、通信装置、音频播放器、视频播放器或平板电脑等***,而存储器储存装置30可为其所使用的SD卡32、CF卡33或嵌入式储存装置34等各式非易失性存储器储存装置。嵌入式储存装置34包括嵌入式多媒体卡(embeddedMMC,eMMC)341和/或嵌入式多芯片封装储存装置(embedded Multi Chip Package,eMCP)342等各类型将存储器模块直接电性连接于主机***的基板上的嵌入式储存装置。
图4是根据一范例实施例所显示的主机***与存储器储存装置的概要方框图。
请参照图4,存储器储存装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406。
在本范例实施例中,连接接口单元402是兼容于序列先进附件(Serial AdvancedTechnology Attachment,SATA)标准。然而,必须了解的是,本发明不限于此,连接接口单元402亦可以是符合并列先进附件(Parallel Advanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用串行总线(Universal Serial Bus,USB)标准、超高速一代(UltraHigh Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、安全数字(Secure Digital,SD)接口标准、记忆棒(Memory Stick,MS)接口标准、多芯片封装(Multi-Chip Package)接口标准、多媒体储存卡(Multi Media Card,MMC)接口标准、嵌入式多媒体储存卡(Embedded Multimedia Card,eMMC)接口标准、通用闪存(UniversalFlash Storage,UFS)接口标准、嵌入式多芯片封装(embedded Multi Chip Package,eMCP)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口(IntegratedDevice Electronics,IDE)标准或其他适合的标准。在本范例实施例中,连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令,并且根据主机***11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等运作。
可复写式非易失性存储器模块406是电性连接至存储器控制电路单元404,并且用以储存主机***11所写入的数据。可复写式非易失性存储器模块406具有实体抹除单元410(0)~410(N)。例如,实体抹除单元410(0)~410(N)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有复数个实体程序化单元,其中属于同一个实体抹除单元的实体程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其他任意个实体程序化单元所组成。
更详细来说,实体抹除单元为抹除的最小单位。即,每一实体抹除单元含有最小数目之一并被抹除的记忆胞。实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。每一实体程序化单元通常包括数据位区与冗余位区。数据位区包含多个实体存取地址用以储存用户的数据,而冗余位区用以储存***的数据(例如,控制信息与错误更正码)。在本范例实施例中,每一个实体程序化单元的数据位区中会包含8个实体存取地址,且一个实体存取地址的大小为512字节(byte)。然而,在其他范例实施例中,数据位区中也可包含数目更多或更少的实体存取地址,本发明并不限制实体存取地址的大小以及个数。例如,在一范例实施例中,实体抹除单元为实体区块,并且实体程序化单元为实体页面或实体扇区,但本发明不以此为限。
在本范例实施例中,可复写式非易失性存储器模块406为多阶记忆胞(MultiLevel Cell,MLC)NAND型闪存模块(即,一个记忆胞中可储存2个数据位的闪存模块)。然而,本发明不限于此,可复写式非易失性存储器模块406亦可是三阶记忆胞(Trinary LevelCell,TLC)NAND型闪存模块(即,一个记忆胞中可储存3个数据位的闪存模块)或其他具有相同特性的存储器模块。
图5A与图5B是根据本范例实施例所显示的记忆胞储存架构与实体抹除单元的范例示意图。在本范例实施例中,是以MLC NAND型闪存为范例来进行说明。
请参照图5A,可复写式非易失性存储器模块406的每个记忆胞可储存2个位的数据,并且每个记忆胞的储存状态可被识别为“11”、“10”、“01”、或“00”。其中每一个储存状态包括最低有效位(Least Significant Bit,LSB)以及最高有效位(Most Significant Bit,MSB)。例如,储存状态中从左侧算起的第1个位的值为LSB,而从左侧算起的第2个位的值为MSB。因此,连接至同一条字符在线的数个记忆胞可组成2个实体程序化单元,其中由此些记忆胞的LSB所组成的实体程序化单元称为下实体程序化单元,并且由此些记忆胞的MSB所组成的实体程序化单元称为上实体程序化单元。
请参照图5B,一个实体抹除单元是由多个实体程序化单元组所组成,其中每个实体程序化单元组包括由排列在同一条字符在线的数个记忆胞所组成的下实体程序化单元与上实体程序化单元。例如,在实体抹除单元中,属于下实体程序化单元的第0个实体页面与属于上实体程序化单元的第1个实体页面是由排列在字符线WL0上的记忆胞所组成的,因此会被视为一个实体程序化单元组。类似地,第2个实体程序化单元、第3个实体程序化单元是由排列在字符线WL1上的记忆胞所组成的,因此会被视为一个实体程序化单元组,并且依此类推其他实体程序化单元亦是依据此方式被区分为多个实体程序化单元组。
图6是根据一范例实施例所显示的存储器控制电路单元的概要方框图。
请参照图6,存储器控制电路单元404包括存储器管理电路502、主机接口504与存储器接口506、缓冲存储器508、电源管理电路510与错误检查与校正电路512。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器储存装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。
在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未显示)与只读存储器(未显示),并且此些控制指令是被刻录至此只读存储器中。当存储器储存装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
图7与图8是根据一范例实施例所显示的管理实体抹除单元的范例示意图。
必须了解的是,在此描述可复写式非易失性存储器模块406的实体抹除单元的运作时,以“提取”、“分组”、“划分”、“关联”等词来操作实体抹除单元是逻辑上的概念。也就是说,可复写式非易失性存储器模块的实体抹除单元的实际位置并未更动,而是逻辑上对可复写式非易失性存储器模块的实体抹除单元进行操作。
请参照图7,存储器控制电路单元404(或存储器管理电路502)会将实体抹除单元410(0)~410(N)逻辑地分组为数据区602、闲置区604、***区606与取代区608。
逻辑上属于数据区602与闲置区604的实体抹除单元是用以储存来自于主机***11的数据。具体来说,数据区602的实体抹除单元是被视为已储存数据的实体抹除单元,而闲置区604的实体抹除单元是用以替换数据区602的实体抹除单元。也就是说,当从主机***11接收到写入指令与欲写入的数据时,存储器管理电路502会使用从闲置区604中提取实体抹除单元来写入数据,以替换数据区602的实体抹除单元。
逻辑上属于***区606的实体抹除单元是用以记录***数据。例如,***数据包括关于可复写式非易失性存储器模块的制造商与型号、可复写式非易失性存储器模块的实体抹除单元数、每一实体抹除单元的实体程序化单元数等。
逻辑上属于取代区608中的实体抹除单元是用于坏实体抹除单元取代程序,以取代损坏的实体抹除单元。具体来说,倘若取代区608中仍存有正常的实体抹除单元并且数据区602的实体抹除单元损坏时,存储器管理电路502会从取代区608中提取正常的实体抹除单元来更换损坏的实体抹除单元。
特别是,数据区602、闲置区604、***区606与取代区608的实体抹除单元的数量会根据不同的存储器规格而有所不同。此外,必须了解的是,在存储器储存装置10的运作中,实体抹除单元关联至数据区602、闲置区604、***区606与取代区608的分组关系会动态地变动。例如,当闲置区604中的实体抹除单元损坏而被取代区608的实体抹除单元取代时,则原本取代区608的实体抹除单元会被关联至闲置区604。
请参照图8,存储器控制电路单元404(或存储器管理电路502)会配置逻辑地址LBA(0)~LBA(H)以映射数据区602的实体抹除单元,其中每一逻辑地址具有多个逻辑单元以映射对应的实体抹除单元的实体程序化单元。并且,当主机***11欲写入数据至逻辑地址或更新储存于逻辑地址中的数据时,存储器控制电路单元404(或存储器管理电路502)会从闲置区604中提取一个实体抹除单元作为作动实体抹除单元来写入数据,以轮替数据区602的实体抹除单元。并且,当此作为作动实体抹除单元的实体抹除单元被写满时,存储器控制电路单元404(或存储器管理电路502)会再从闲置区604中提取空的实体抹除单元作为作动实体抹除单元,以继续写入对应来自于主机***11的写入指令的更新数据。此外,当闲置区604中可用的实体抹除单元的数目小于默认值时,存储器控制电路单元404(或存储器管理电路502)会执行有效数据合并操作(亦称为,垃圾搜集(garbage collection)操作)来整理资料区602中的有效数据,以将数据区602中无储存有效数据的实体抹除单元重新关联至闲置区604。
为了识别每个逻辑地址的数据被储存在哪个实体抹除单元,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会记录逻辑地址与实体抹除单元之间的映射。例如,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会在可复写式非易失性存储器模块406中储存逻辑-实体映射表来记录每一逻辑地址所映射的实体抹除单元。当欲存取数据时存储器控制电路单元404(或存储器管理电路502)会将逻辑-实体映射表加载至缓冲存储器508来维护,并且依据逻辑-实体映射表来写入或读取数据。
值得一提的是,由于缓冲存储器508的容量有限无法储存记录所有逻辑地址的映射关系的映射表,因此,在本范例实施例中,存储器控制电路单元404(或存储器管理电路502)会将逻辑地址LBA(0)~LBA(H)分组为多个逻辑区域LZ(0)~LZ(M),并且为每一逻辑区域配置一个逻辑-实体映射表。特别是,当存储器控制电路单元404(或存储器管理电路502)欲更新某个逻辑地址的映射时,对应此逻辑地址所属的逻辑区域的逻辑-实体映射表会被加载至缓冲存储器508来被更新。
在本发明另一范例实施例中,存储器管理电路502的控制指令亦可以程序代码型式储存于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放***数据的***区)中。此外,存储器管理电路502具有微处理器单元(未显示)、只读存储器(未显示)及随机存取存储器(未显示)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元404被致能时,微处理器单元会先执行此驱动码段来将储存于可复写式非易失性存储器模块406中的控制指令加载至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在本发明另一范例实施例中,存储器管理电路502的控制指令亦可以一硬件型式来实作。例如,存储器管理电路502包括微控制器、记忆胞管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。记忆胞管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是电性连接至微控制器。其中,记忆胞管理电路用以管理可复写式非易失性存储器模块406的实体抹除单元;存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令以将数据写入至可复写式非易失性存储器模块406中;存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令以从可复写式非易失性存储器模块406中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令以将数据从可复写式非易失性存储器模块406中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。
请再参照图6,主机接口504是电性连接至存储器管理电路502并且用以电性连接至连接接口单元402,以接收与识别主机***11所传送的指令与数据。也就是说,主机***11所传送的指令与数据会通过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是兼容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是兼容于PATA标准、IEEE 1394标准、PCI Express标准、USB标准、UHS-I接口标准、UHS-II接口标准、SD标准、MS标准、MMC标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是电性连接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。
缓冲存储器508是电性连接至存储器管理电路502并且用以暂存来自于主机***11的暂存数据与指令或来自于可复写式非易失性存储器模块406的数据。
电源管理电路510是电性连接至存储器管理电路502并且用以控制存储器储存装置10的电源。
错误检查与校正电路512是电性连接至存储器管理电路502并且用以执行错误检查与校正程序以确保数据的正确性。例如,当存储器管理电路502从主机***11中接收到写入指令时,错误检查与校正电路512会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECC Code),并且存储器管理电路502会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路512会根据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
值得一是,在本范例实施例中,存储器控制电路单元404(存储器管理电路502)会在不同的状态使用不同的程序化模式来将数据程序化至可复写式非易失性存储器模块406。例如,存储器控制电路单元404(存储器管理电路502)可使用单页程序化模式或多页程序化模式来将数据程序化至实体抹除单元。在此,基于单页程序化模式来程序化记忆胞的程序化速度会高于基于多页程序化模式来程序化记忆胞的程序化速度(即,使用多页程序化模式来程序化数据的所需操作时间大于使用单页程序化模式来程序化数据的所需操作时间),而基于单页程序化模式而被储存的数据的可靠度也往往高于基于多页程序化模式而被储存的数据的可靠度。单页程序化模式例如是单阶记忆胞(single layer memorycell,SLC)程序化模式、下实体程序化(lower physical programming)模式、混合程序化(mixture programming)模式及少阶记忆胞(less layer memory cell)程序化模式的其中之一。更详细来说,在单阶记忆胞模式中,一个记忆胞只储存一个位的数据。在下实体程序化模式中,只有下实体程序化单元会被程序化,而此下实体程序化单元所对应的上实体程序化单元可不被程序化。在混合程序化模式中,有效数据(或,真实数据)会被程序化于下实体程序化单元中,而同时虚拟数据(dummy data)会被程序化至储存有效数据的下实体程序化单元所对应的上实体程序化单元中。在少阶记忆胞模式中,一个记忆胞储存一第一数目的位的数据,例如,此第一数目可设为“1”。多页程序化模式例如是多阶记忆胞(MLC)程序化模式、三阶(TLC)记忆胞程序化模式或类似模式。在多页程序化模式中,一个记忆胞储存有一第二数目的位的数据,其中此第二数目等于或大于“2”。例如,此第二数目可设为2或3。在另一范例实施例中,上述单页程序化模式中的第一数目与多页程序化模式中的第二数目皆可以是其他数目,只要满足第二数目大于第一数目即可。换句话说,构成第一类实体抹除单元的每一个记忆胞在使用单页程序化模式程序化后所储存的位数据的数目(即第一数目)会小于构成第二类实体抹除单元的每一个记忆胞在使用多页程序化模式程序化后所储存的位数据的数目(即第二数目)。
在本范例实施例中,当主机***11以及可复写式非易失性存储器模块406处于刚上电的状态时,存储器控制电路单元104(或存储器管理电路502)会被默认为使用多页程序化模式来将数据写入至可复写式非易失性存储器模块406中。具体来说,假设主机***11以及可复写式非易失性存储器模块406处于刚上电的状态时,当存储器控制电路单元104(或存储器管理电路502)从主机***11接收写入指令(以下参考为,第二写入指令)时,存储器控制电路单元104(或存储器管理电路502)首先会将此写入指令所对应的数据先暂存至缓冲存储器508中并立即地回复对应此第二写入指令的写入完成信息至主机***11。之后在适当时机时,例如存储器控制电路单元104(或存储器管理电路502)接收到来自主机***11的清仓指令(flush command)、缓冲存储器508中的数据量到达一门槛值或主机***11空闲时间过一门槛值时,才会下达第二指令序列以使用多页程序化模式将暂存于缓冲存储器508中对应于第二写入指令的数据写入至可复写式非易失性存储器模块406中的实体抹除单元(以下参考为,第二实体抹除单元)中的至少一个实体程序化单元(以下参考为,第二实体程序化单元)。在此,由于第二实体抹除单元是以多页程序化模式来程序化,因此,如上所述,构成第二实体抹除单元的实体程序化单元的记忆胞会被程序化以储存多个位数据。也就是说,在多页程序化模式下,上述第二实体抹除单元中的下实体程序化单元和第二实体抹除单元的上实体程序化单元会被用来写入数据。
然而需注意的是,为了避免主机***因异常地断电而造成储存在缓冲存储器中的数据的遗失,在本范例实施例中,用户可以藉由主机***11下达写入快取关闭(disablewrite cache)指令以关闭存储器储存装置10的写入快取功能。其中,关闭写入快取功能可以降低写入指令的数据暂存在缓冲存储器508的时间。换句话说,当存储器控制电路单元104(或存储器管理电路502)根据写入快取关闭而关闭写入快取功能之后,当主机***11下达写入指令时,此写入指令的数据会在暂存至缓冲存储器508后立即被写入至可复写式非易失性存储器模块406中。
此外,当存储器控制电路单元104(或存储器管理电路502)接收到来自主机***11的写入快取关闭指令后,可能会因为多笔的写入指令,而写入过多的冗余数据而造成“写入放大(write amplification)”的问题。为了避免写入放大的问题并有效率地利用可复写式非易失性存储器模块406的储存空间,在本范例实施例中,当存储器控制电路单元104(或存储器管理电路502)从主机***11接收到写入快取关闭指令后,存储器控制电路单元104(或存储器管理电路502)会改用单页程序化模式来对可复写式非易失性存储器模块406进行写入。
具体来说,图9是根据一范例所显示的使用单页程序化模式将数据写入可复写式非易失性存储器模块的示意图。
假设存储器控制电路单元104(或存储器管理电路502)从主机***11接收写入快取关闭指令。在接收到写入快取关闭指令后,存储器控制电路单元104(或存储器管理电路502)会关闭写入快取功能以响应写入快取关闭指令。之后,当存储器储存装置10从主机***11中接收到指示将数据储存至逻辑单元LBA(0)的第0~255个逻辑子单元的写入指令(以下参考为,第一写入指令)时,存储器控制电路单元104(或存储器管理电路502)首先会将此第一写入指令的数据暂存至缓冲存储器508中。此时,由于写入快取功能已被关闭,存储器控制电路单元104(或存储器管理电路502)会对应地下达第一指令序列。在本范例实施例中,第一指令序列为清仓指令(flush command),存储器控制电路单元104(或存储器管理电路502)可以根据清仓指令使用单页程序化模式将对应第一写入指令的数据从缓冲存储器508中程序化至可复写式非易失性存储器模块406中。
例如,请参照图9,存储器控制电路单元104(或存储器管理电路502)例如可以从闲置区604中提取2个实体抹除单元510(F)、510(F+1)(以下参考为,第一实体抹除单元)分别作为对应于上述第一写入指令的多个作动实体抹除单元。存储器控制电路单元104(或存储器管理电路502)会依据第一指令序列而将第一写入指令的数据使用单页程序化模式从缓冲存储器508中写入至实体抹除单元510(F)以及实体抹除单元510(F+1)的实体程序化单元中(以下参考为,第一实体程序化单元)。在此,由于实体抹除单元510(F)以及实体抹除单元510(F+1)是以单页程序化模式来程序化,因此,如上所述,构成实体抹除单元510(F)以及实体抹除单元510(F+1)的实体程序化单元的记忆胞会被程序化以储存1个位数据。也就是说,在单页程序化模式下,实体抹除单元510(F)以及实体抹除单元510(F+1)的下实体程序化单元会被使用来写入数据且实体抹除单元510(F)以及实体抹除单元510(F+1)的上实体程序化单元不会被用来写入数据。
详细来说,如图9所示,存储器控制电路单元104(或存储器管理电路502)会将欲储存至逻辑单元LBA(0)的第0~127个逻辑子单元的数据依序地写入至实体抹除单元510(F)的下实体程序化单元以及将欲储存至逻辑单元LBA(0)的第128~255个逻辑子单元的数据依序地写入至实体抹除单元510(F+1)的下实体程序化单元中。也就是说,存储器控制电路单元104(或存储器管理电路502)使用单页程序化模式将对应第一写入指令的数据从缓冲存储器508中写入至可复写式非易失性存储器模块中406实体抹除单元510(F)的下实体程序化单元以及实体抹除单元510(F+1)的下实体程序化单元中且实体抹除单元510(F)的上实体程序化单元以及实体抹除单元510(F+1)的上实体程序化单元不会被用来写入数据。
在使用单页程序化模式将对应第一写入指令的数据从缓冲存储器508中写入至可复写式非易失性存储器模块406中的实体抹除单元510(F)的下实体程序化单元以及实体抹除单元510(F+1)的下实体程序化单元的运作之后,存储器控制电路单元104(或存储器管理电路502)会将实体抹除单元510(F)以及实体抹除单元510(F+1)关联至数据区602,并且回复写入完成信息至主机***11以响应主机***11所下达的第一写入指令。也就是说,在本范例实施例中,在关闭写入快取功能后,当主机***11下达写入指令并且接收到对应于此写入指令的写入完成信息时,代表此写入指令的数据已被稳定地储存至可复写式非易失性存储器模块406中。相较于一般写入操作(即,数据在被暂存至缓冲存储器508后存储器控制电路单元104(或存储器管理电路502)随即回复写入完成信息给主机***11),本范例实施例的存储器储存装置10更能确保写入指令的数据被写入可复写式非易失性存储器模块406中并且能降低因主机***11异常地断电造成暂存在缓冲存储器508中的数据的遗失。
值得一提的是,当改用单页程序化模式对可复写式非易失性存储器模块406进行写入时,由于从可复写式非易失性存储器模块406所提取的作动实体抹除单元的上实体程序化单元不会被用来写入数据,因此所提取的作动实体抹除单元能被写入的空间只剩下原本实体抹除单元的空间的一半。为了不降低在单页程序化模式下可复写式非易失性存储器模块406所能储存的容量,在本范例实施例中,存储器控制电路单元104(或存储器管理电路502)会使用多页程序化模式对以单页程序化模式写入的数据进行有效数据合并操作。
图10是根据一范例所显示的使用多页程序化模式对以单页程序化模式写入的数据进行有效数据合并操作的示意图。
假设对应逻辑单元LBA(0)的实体抹除单元510(F)、实体抹除单元510(F+1)已储存逻辑单元LBA(0)的所有逻辑子单元的有效数据(如图9所示),且当存储器储存装置10处于一背景执行模式时,例如存储器储存装置10属于闲置状态一段时间(例如,30秒未从主机***11中接收到指令(例如,写入指令、读取指令、清仓指令、整理指令(trim command)等))或者是当闲置区504中空的实体抹除单元的数目小于默认门槛值时,存储器控制电路单元104(或存储器管理电路502)会执行有效数据合并操作。
详细来说,当存储器储存装置10因闲置而30秒未从主机***11中接收到指令,或者是当闲置区504中空的实体抹除单元的数目小于默认门槛值时,存储器控制电路单元104(或存储器管理电路502)会执行有效数据合并操作。请参照图10,在存储器控制电路单元104(或存储器管理电路502)执行有效数据合并操作时,存储器控制电路单元104(或存储器管理电路502)会例如从闲置区604中提取一个实体抹除单元作为用于轮替的实体抹除单元510(F+2)(以下参考为,第三实体抹除单元)。具体来说,存储器控制电路单元104(或存储器管理电路502)会从闲置区604中选择一个空的实体抹除单元或者所储存的数据为无效数据的实体抹除单元。特别是,倘若所提取的实体抹除单元是储存无效数据的实体抹除单元时,存储器控制电路单元104(或存储器管理电路502)会先对此实体抹除单元执行抹除操作。也就是说,实体抹除单元上的无效数据必须先被抹除。
之后,存储器控制电路单元104(或存储器管理电路502)使用多页程序化模式将实体抹除单元510(F)与实体抹除单元510(F+1)中的多个有效数据复制至可复写式非易失性存储器模块406中的实体抹除单元510(F+2)中的实体程序化单元中。在此,由于实体抹除单元510(F+2)是以多页程序化模式来程序化,因此,如上所述,构成实体抹除单元510(F+2)的实体程序化单元的记忆胞会被程序化以储存多个位数据。也就是说,在多页程序化模式下,实体抹除单元510(F+2)的下实体程序化单元和实体抹除单元510(F+2)的上实体程序化单元会被用来写入数据。
详细来说,存储器控制电路单元104(或存储器管理电路502)会从实体抹除单元510(F)的下实体程序化单元中将属于逻辑单元LBA(0)的第0~127逻辑子单元的有效数据写入(或复制)至实体抹除单元510(F+2)的对应页面(例如,第0~127实体程序化单元)。接着,存储器控制电路单元104(或存储器管理电路502)会从暂存实体抹除单元510(F+1)的下实体程序化单元中将属于逻辑单元LBA(0)的第128~255逻辑子单元的有效数据复制至实体抹除单元510(F+2)的对应页面(例如,第128~255个实体程序化单元)。也就是说,在多页程序化模式下,实体抹除单元510(F+2)的第0~255实体程序化单元(以下参考为,第三实体程序化单元)皆会被用来写入数据。
也就是说,在执行有效数据合并操作时,欲被关联至数据区602的实体抹除单元是以多页程序化模式来操作,因此,写入至实体抹除单元510(F+2)是以实体程序化单元组为单位来同时或阶段性地程序化。具体来说,在一范例实施例中,实体抹除单元510(F+2)的第0个、第1个实体程序化单元会同时地被程序化以写入属于逻辑单元LBA(0)的第0个、第1个逻辑子单元的数据;实体抹除单元510(F+2)的第2个、第3个实体程序化单元会同时地被程序化以写入属于逻辑单元LBA(0)的第2个、第3个逻辑子单元的数据;并且以此类推其他逻辑子单元的数据皆是以实体程序化单元组为单位被写入至实体抹除单元510(F+2)中。
最后,存储器控制电路单元104(或存储器管理电路502)会在逻辑-实体映射表中将逻辑单元LBA(0)映射至实体抹除单元510(F+2)并且将实体抹除单元510(F)~510(F+1)执行抹除操作并将实体抹除单元510(F)~510(F+1)重新关联至闲置区604。也就是说,在执行之后的写入指令时,已被抹除的实体抹除单元510(F)~510(F+1)就可再被选择作为欲写入的逻辑单元的作动实体抹除单元。
藉由上述有效数据合并操作,能够确保可复写式非易失性存储器模块406所能储存的容量不会因为先前使用单页程序化模式进行写入而降低。
值得一提的是,存储器储存装置10的用户亦可以通过主机***11下达一写入快取开启(enable write cache)指令,并且存储器控制电路单元104(或存储器管理电路502)接收到写入快取开启指令后会开启写入快取功能以响应写入快取开启指令,以恢复原先可复写式非易失性存储器模块406默认以多页程序化模式进行写入数据的功能。
详细来说,存储器控制电路单元104(或存储器管理电路502)可以从主机***11接收用户下达的写入快取开启指令。当存储器控制电路单元104(或存储器管理电路502)接收写入快取开启指令之后,存储器控制电路单元104(或存储器管理电路502)会开启写入快取功能以响应写入快取开启指令。之后,当存储器控制电路单元104(或存储器管理电路502)从主机***11再次接收到写入指令时,存储器控制电路单元104(或存储器管理电路502)会将对应此写入指令的数据暂存至缓冲存储器508中并立即地回复对应此第三写入指令的写入完成信息至主机***11。之后在适当时机时,例如存储器控制电路单元104(或存储器管理电路502)接收到来自主机***11的清仓指令、缓冲存储器508中的数据量到达一门槛值或主机***11空闲时间过一门槛值时,才会使用多页程序化模式将暂存于缓冲存储器508中的数据写入至可复写式非易失性存储器模块406中的至少一个实体抹除单元中的至少一个实体程序化单元。相同于上述,在多页程序化模式下,上述被用于写入数据的实体程序化单元中的下实体程序化单元和上实体程序化单元会被用来写入数据。
也就是说,存储器储存装置10的用户可以选择性地使用写入快取关闭指令或写入快取开启指令来对应地关闭或开启写入快取功能。
图11与图12是根据一范例实施例所显示的资料写入方法的流程图。
请参照图11,在步骤S1101中,存储器控制电路单元104(或存储器管理电路502)会判断是否从主机***11接收到写入快取关闭指令或写入快取开启指令。倘若存储器控制电路单元104(或存储器管理电路502)从主机***11接收到写入快取关闭指令时,在步骤S1103中,存储器控制电路单元104(或存储器管理电路502)会关闭写入快取功能以响应写入快取关闭指令。倘若存储器控制电路单元104(或存储器管理电路502)从主机***11接收到写入快取开启指令时,在步骤S1105中,存储器控制电路单元104(或存储器管理电路502)会开启写入快取功能以响应写入快取开启指令。
请参照图12,在步骤S1201中,存储器控制电路单元104(或存储器管理电路502)从主机***11接收第一写入指令,并且将对应此第一写入指令的数据暂存至缓冲存储器508中。接着,在步骤S1203中,存储器控制电路单元104(或存储器管理电路502)会判断写入快取功能是否已被关闭。当写入快取功能已被关闭时,在步骤S1205中,存储器控制电路单元104(或存储器管理电路502)会下达第一指令序列以使用单页程序化模式将对应第一写入指令的数据从缓冲存储器508中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中。例如,在一范例实施例中,存储器控制电路单元104(或存储器管理电路502)会立即地产生清仓指令,并且根据此清仓指令使用单页程序化模式将对应第一写入指令的数据从缓冲存储器508中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中。
此外,当写入快取功能未被关闭时,在步骤S1207中,存储器控制电路单元104(或存储器管理电路502)下达第二指令序列以使用多页程序化模式将对应第一写入指令的数据从缓冲存储器508中写入至实体抹除单元之中的第一实体抹除单元的第一实体程序化单元中。然而,需注意的是,当写入快取功能未被关闭且第一写入指令的数据被暂存至缓冲存储器时,存储器控制电路单元104(或存储器管理电路502)可以不用立即地执行上述步骤1207。具体来说,存储器控制电路单元104(或存储器管理电路502)可以在适当时机,例如在接收到来自主机***11的清仓指令(flush command)或缓冲存储器508中的数据量到达一门槛值或者进入背景执行模式时,才执行上述的步骤S1207。
综上所述,本发明的数据写入方法可以有效地避免因为主机***异常地断电造成缓冲存储器中的数据的遗失,并且确保在异常地断电前的写入指令的数据皆已稳定地储存至可复写式非易失性存储器中。此外,本发明的数据写入方法还可以避免“写入放大”的问题且能有效地利用可复写式非易失性存储器的空间。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中普通技术人员,在不脱离本发明的精神和范围内,当可作些许的改动与润饰,均在本发明保护范围内。
Claims (18)
1.一种数据写入方法,用于一可复写式非易失性存储器模块,其特征在于,所述可复写式非易失性存储器模块具有多个实体抹除单元,所述多个实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元,所述数据写入方法包括:
从一主机***接收一第一写入指令,并且将对应所述第一写入指令的一欲写入数据暂存至一缓冲存储器中;
当一写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,使用一单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,回复一写入完成信息至所述主机***,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述单页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞仅储存1个位数据,以及
当该写入快取功能已被开启且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,使用一多页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述多页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞储存多个位数据,
当所述写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,下达一清仓指令执行上述使用所述单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述第一实体抹除单元的所述至少一第一实体程序化单元中的步骤。
2.根据权利要求1所述的数据写入方法,其特征在于,还包括:
从所述主机***接收一写入快取关闭指令,并且关闭所述写入快取功能以响应所述写入快取关闭指令。
3.根据权利要求2所述的数据写入方法,其特征在于,从所述主机***接收所述写入快取关闭指令的步骤之前,还包括:
从所述主机***接收一第二写入指令并且将对应所述第二写入指令的一第二欲写入数据暂存至所述缓冲存储器中;以及
使用一多页程序化模式将暂存于所述缓冲存储器中对应所述第二写入指令的所述第二欲写入数据写入至所述多个实体抹除单元之中的一第二实体抹除单元的至少一第二实体程序化单元,
其中所述至少一第二实体程序化单元是由多个第二记忆胞所构成且在所述多页程序化模式中,构成所述至少一第二实体程序化单元的所述多个第二记忆胞之中的每一个第二记忆胞储存多个位数据。
4.根据权利要求1所述的数据写入方法,其特征在于,还包括:
在一背景执行模式中,执行一有效数据合并操作,以使用所述多页程序化模式将所述第一实体抹除单元中的多个有效数据复制至所述多个实体抹除单元之中的一第三实体抹除单元的多个第三实体程序化单元中,
其中所述多个第三实体程序化单元是由多个第三记忆胞所构成且在所述多页程序化模式中,构成所述多个第三实体程序化单元的所述多个第三记忆胞之中的每一个第三记忆胞储存多个位数据。
5.根据权利要求1所述的数据写入方法,其特征在于,还包括:
接收一写入快取开启指令,并且开启所述写入快取功能以响应所述写入快取开启指令。
6.根据权利要求1所述的数据写入方法,其特征在于,
所述多页程序化模式为一多阶记忆胞程序化模式或一三阶记忆胞程序化模式,并且所述单页程序化模式为一单阶记忆胞程序化模式、一下实体程序化模式、一混合程序化模式或一少阶记忆胞程序化模式。
7.一种存储器控制电路单元,用于控制一可复写式非易失性存储器模块,其特征在于,所述存储器控制电路单元包括:
一主机接口,用以电性连接至一主机***;
一存储器接口,用以电性连接至所述可复写式非易失性存储器模块,其中所述可复写式非易失性存储器模块具有多个实体抹除单元,所述多个实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元;
一缓冲存储器,电性连接至所述主机接口及所述存储器接口;以及
一存储器管理电路,电性连接至所述主机接口、所述存储器接口与所述缓冲存储器,
所述存储器管理电路用以从所述主机***接收一第一写入指令,并且将对应所述第一写入指令的一欲写入数据暂存至所述缓冲存储器中,
当一写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器管理电路更用以下达一第一指令序列以使用一单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,回复一写入完成信息至所述主机***,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述单页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞仅储存1个位数据,
当该写入快取功能已被开启且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器管理电路更用以使用一多页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述多页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞储存多个位数据,
其中所述第一指令序列为一清仓指令,
当所述写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器管理电路更用以根据所述清仓指令执行上述使用所述单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述第一实体抹除单元的所述至少一第一实体程序化单元中的运作。
8.根据权利要求7所述的存储器控制电路单元,其特征在于,
所述存储器管理电路更用以从所述主机***接收一写入快取关闭指令,并且关闭所述写入快取功能以响应所述写入快取关闭指令。
9.根据权利要求8所述的存储器控制电路单元,其特征在于,从所述主机***接收所述写入快取关闭指令的运作之前,
所述存储器管理电路更用以从所述主机***接收一第二写入指令并且将对应所述第二写入指令的一第二欲写入数据暂存至所述缓冲存储器中,
所述存储器管理电路更用以下达一第二指令序列以使用一多页程序化模式将暂存于所述缓冲存储器中对应所述第二写入指令的所述第二欲写入数据写入至所述多个实体抹除单元之中的一第二实体抹除单元的至少一第二实体程序化单元,
其中所述至少一第二实体程序化单元是由多个第二记忆胞所构成且在所述多页程序化模式中,构成所述至少一第二实体程序化单元的所述多个第二记忆胞之中的每一个第二记忆胞储存多个位数据。
10.根据权利要求7所述的存储器控制电路单元,其特征在于,
在一背景执行模式中,所述存储器管理电路更用以执行一有效数据合并操作,以使用所述多页程序化模式将所述第一实体抹除单元中的多个有效数据复制至所述多个实体抹除单元之中的一第三实体抹除单元的多个第三实体程序化单元中,
其中所述多个第三实体程序化单元是由多个第三记忆胞所构成且在所述多页程序化模式中,构成所述多个第三实体程序化单元的所述多个第三记忆胞之中的每一个第三记忆胞储存多个位数据。
11.根据权利要求7所述的存储器控制电路单元,其特征在于,
所述存储器管理电路更用以接收一写入快取开启指令,并且开启所述写入快取功能以响应所述写入快取开启指令。
12.根据权利要求7所述的存储器控制电路单元,其特征在于,所述多页程序化模式为一多阶记忆胞程序化模式或一三阶记忆胞程序化模式,并且所述单页程序化模式为一单阶记忆胞程序化模式、一下实体程序化模式、一混合程序化模式或一少阶记忆胞程序化模式。
13.一种存储器储存装置,其特征在于,包括:
一连接接口单元,用以电性连接至一主机***;
一可复写式非易失性存储器模块,具有多个实体抹除单元,所述多个实体抹除单元之中的每一个实体抹除单元具有多个实体程序化单元;以及
一存储器控制电路单元,电性连接至所述连接接口单元与所述可复写式非易失性存储器模块,并且包括一缓冲存储器,
所述存储器控制电路单元用以从所述主机***接收一第一写入指令,并且将对应所述第一写入指令的一欲写入数据暂存至所述缓冲存储器中,
当一写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器控制电路单元更用以下达一第一指令序列以使用一单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,回复一写入完成信息至所述主机***,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述单页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞仅储存1个位数据,
其中所述第一指令序列为一清仓指令,
当所述写入快取功能已被关闭且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器控制电路单元更用以根据所述清仓指令执行上述使用所述单页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述第一实体抹除单元的所述至少一第一实体程序化单元中的运作,
当该写入快取功能已被开启且所述第一写入指令的所述欲写入数据被暂存至所述缓冲存储器时,所述存储器控制电路单元更用以使用一多页程序化模式将对应所述第一写入指令的所述欲写入数据从所述缓冲存储器中写入至所述多个实体抹除单元之中的一第一实体抹除单元的至少一第一实体程序化单元中,
其中所述至少一第一实体程序化单元是由多个第一记忆胞所构成且在所述多页程序化模式中,构成所述至少一第一实体程序化单元的所述多个第一记忆胞之中的每一个第一记忆胞储存多个位数据。
14.根据权利要求13所述的存储器储存装置,其特征在于,
所述存储器控制电路单元更用以从所述主机***接收一写入快取关闭指令,并且关闭所述写入快取功能以响应所述写入快取关闭指令。
15.根据权利要求14所述的存储器储存装置,其特征在于,从所述主机***接收所述写入快取关闭指令的运作之前,
所述存储器控制电路单元更用以从所述主机***接收一第二写入指令并且将对应所述第二写入指令的一第二欲写入数据暂存至所述缓冲存储器中,
所述存储器控制电路单元更用以下达一第二指令序列以使用一多页程序化模式将暂存于所述缓冲存储器中对应所述第二写入指令的所述第二欲写入数据写入至所述多个实体抹除单元之中的一第二实体抹除单元的至少一第二实体程序化单元,
其中所述至少一第二实体程序化单元是由多个第二记忆胞所构成且在所述多页程序化模式中,构成所述至少一第二实体程序化单元的所述多个第二记忆胞之中的每一个第二记忆胞储存多个位数据。
16.根据权利要求13所述的存储器储存装置,其特征在于,
在一背景执行模式中,所述存储器控制电路单元更用以执行一有效数据合并操作,以使用所述多页程序化模式将所述第一实体抹除单元中的多个有效数据复制至所述多个实体抹除单元之中的一第三实体抹除单元的多个第三实体程序化单元中,
其中所述多个第三实体程序化单元是由多个第三记忆胞所构成且在所述多页程序化模式中,构成所述多个第三实体程序化单元的所述多个第三记忆胞之中的每一个第三记忆胞储存多个位数据。
17.根据权利要求13所述的存储器储存装置,其特征在于,
所述存储器控制电路单元更用以接收一写入快取开启指令,并且开启所述写入快取功能以响应所述写入快取开启指令。
18.根据权利要求13所述的存储器储存装置,其特征在于,所述多页程序化模式为一多阶记忆胞程序化模式或一三阶记忆胞程序化模式,并且所述单页程序化模式为一单阶记忆胞程序化模式、一下实体程序化模式、一混合程序化模式或一少阶记忆胞程序化模式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610356300.2A CN107402716B (zh) | 2016-05-20 | 2016-05-20 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610356300.2A CN107402716B (zh) | 2016-05-20 | 2016-05-20 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107402716A CN107402716A (zh) | 2017-11-28 |
CN107402716B true CN107402716B (zh) | 2021-06-08 |
Family
ID=60389457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610356300.2A Active CN107402716B (zh) | 2016-05-20 | 2016-05-20 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107402716B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008146B (zh) * | 2018-01-05 | 2022-11-08 | 群联电子股份有限公司 | 数据写入方法、有效数据识别方法及存储器存储装置 |
CN110275837A (zh) * | 2018-03-15 | 2019-09-24 | 光宝电子(广州)有限公司 | 固态储存装置的对应表管理方法 |
CN110442300B (zh) * | 2018-05-03 | 2022-12-13 | 群联电子股份有限公司 | 整理指令记录方法、存储器控制电路单元与存储装置 |
CN108874309B (zh) * | 2018-05-25 | 2021-07-23 | 新华三技术有限公司 | 一种管理固态硬盘中物理块的方法和装置 |
CN110837339B (zh) * | 2018-08-17 | 2023-07-04 | 群联电子股份有限公司 | 数据整并方法、存储器存储装置及存储器控制电路单元 |
TWI690930B (zh) * | 2019-01-09 | 2020-04-11 | 力晶積成電子製造股份有限公司 | 補償非易失性記憶元件在編程時電荷流失與源極線偏置的方法 |
CN109831363B (zh) * | 2019-03-21 | 2020-04-17 | 珠海格力电器股份有限公司 | 显示板的通讯网络结构区分方法、装置和计算机设备 |
CN112051963B (zh) * | 2019-06-06 | 2023-06-13 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元以及存储器存储装置 |
CN114610230B (zh) * | 2022-01-27 | 2023-02-07 | 福建时代星云科技有限公司 | 一种基于单片机的闪存数据交换方法及终端 |
CN117632042B (zh) * | 2024-01-25 | 2024-04-30 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7711890B2 (en) * | 2006-06-06 | 2010-05-04 | Sandisk Il Ltd | Cache control in a non-volatile memory device |
TW201239624A (en) * | 2011-03-29 | 2012-10-01 | Phison Electronics Corp | Memory storage device, memory controller thereof, and method for programming data thereof |
CN103678162A (zh) * | 2012-09-12 | 2014-03-26 | 群联电子股份有限公司 | ***数据储存方法、存储器控制器与存储器储存装置 |
US8819387B2 (en) * | 2011-07-08 | 2014-08-26 | Phison Electronics Corp. | Memory storage device, memory controller, and method for identifying valid data |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090193184A1 (en) * | 2003-12-02 | 2009-07-30 | Super Talent Electronics Inc. | Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System |
JP2006269006A (ja) * | 2005-03-25 | 2006-10-05 | Fujitsu Ltd | 記憶装置、制御方法及びプログラム |
US7941592B2 (en) * | 2008-08-14 | 2011-05-10 | Bonella Randy M | Method and apparatus for high reliability data storage and retrieval operations in multi-level flash cells |
CN101656104B (zh) * | 2008-08-22 | 2012-07-04 | 群联电子股份有限公司 | 快闪存储器储存***及其数据写入方法 |
CN102073600B (zh) * | 2009-11-20 | 2012-10-17 | 群联电子股份有限公司 | 数据备份方法、闪存控制器及闪存储存*** |
US20110252187A1 (en) * | 2010-04-07 | 2011-10-13 | Avigdor Segal | System and method for operating a non-volatile memory including a portion operating as a single-level cell memory and a portion operating as a multi-level cell memory |
CN103019952B (zh) * | 2011-09-26 | 2016-05-18 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN104571933B (zh) * | 2013-10-18 | 2017-10-13 | 光宝科技股份有限公司 | 具固态储存元件的电子装置及其相关控制方法 |
CN104765569B (zh) * | 2014-01-06 | 2017-10-27 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
CN104765568B (zh) * | 2014-01-08 | 2018-09-18 | 群联电子股份有限公司 | 数据存储方法、存储器控制电路单元与存储器存储装置 |
CN103870214A (zh) * | 2014-02-26 | 2014-06-18 | 深圳市安信达存储技术有限公司 | 多层存储块兼具单层存储块性能的方法 |
CN103955430A (zh) * | 2014-03-31 | 2014-07-30 | 深圳市江波龙电子有限公司 | 一种闪存存储设备中数据管理的方法及装置 |
-
2016
- 2016-05-20 CN CN201610356300.2A patent/CN107402716B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7711890B2 (en) * | 2006-06-06 | 2010-05-04 | Sandisk Il Ltd | Cache control in a non-volatile memory device |
TW201239624A (en) * | 2011-03-29 | 2012-10-01 | Phison Electronics Corp | Memory storage device, memory controller thereof, and method for programming data thereof |
US8819387B2 (en) * | 2011-07-08 | 2014-08-26 | Phison Electronics Corp. | Memory storage device, memory controller, and method for identifying valid data |
CN103678162A (zh) * | 2012-09-12 | 2014-03-26 | 群联电子股份有限公司 | ***数据储存方法、存储器控制器与存储器储存装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107402716A (zh) | 2017-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107844431B (zh) | 映射表更新方法、存储器控制电路单元与存储器存储装置 | |
CN107402716B (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
US9268687B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
CN107544922B (zh) | 数据写入方法、存储器控制电路单元及存储器存储装置 | |
CN110879793B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
TWI611410B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI660271B (zh) | 整理指令記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
US20150058531A1 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
CN107357520B (zh) | 整理指令处理方法、存储器控制电路单元及其存储装置 | |
CN107346211B (zh) | 映射表加载方法、存储器控制电路单元与存储器储存装置 | |
CN103678162B (zh) | ***数据储存方法、存储器控制器与存储器储存装置 | |
CN113885808B (zh) | 映射信息记录方法以及存储器控制电路单元与存储装置 | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
CN106959818B (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN107045890B (zh) | 数据保护方法、存储器控制电路单元及存储器存储装置 | |
CN109273033B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN107103930B (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
CN112860193A (zh) | 整理指令处理方法、存储器控制电路单元与存储装置 | |
US10203886B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus for writing data from buffer memory and moving valid data | |
CN107204205B (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN110442299B (zh) | 数据写入方法、存储器控制电路单元以及存储器储存装置 | |
US8832358B2 (en) | Data writing method, memory controller and memory storage apparatus | |
CN113138720B (zh) | 数据存储方法、存储器控制电路单元以及存储器存储装置 | |
US11609822B2 (en) | Data storing method, memory control circuit unit and memory storage device |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |