CN102122233A - 区块管理与数据写入方法、闪存储存***与控制器 - Google Patents
区块管理与数据写入方法、闪存储存***与控制器 Download PDFInfo
- Publication number
- CN102122233A CN102122233A CN2010100015403A CN201010001540A CN102122233A CN 102122233 A CN102122233 A CN 102122233A CN 2010100015403 A CN2010100015403 A CN 2010100015403A CN 201010001540 A CN201010001540 A CN 201010001540A CN 102122233 A CN102122233 A CN 102122233A
- Authority
- CN
- China
- Prior art keywords
- physical
- physical location
- universe
- chaotic
- data
- 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.)
- Granted
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
一种区块管理方法,用于管理多个物理区块。本区块管理方法包括将物理区块分组为多个物理单元,将部分的物理单元分组为数据区与备用区,并且配置多个逻辑单元。本区块管理方法也包括将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。本区块管理方法还包括从备用区中提取物理单元作为全域混乱物理单元的全域混乱替换物理单元。基此,全域混乱物理单元或全域混乱替换物理单元能被用于暂存小数据,由此执行写入指令所需的时间可有效地被缩短。
Description
技术领域
本发明是有关于一种用于闪存的区块管理与数据写入方法以及使用此方法的闪存储存***与闪存控制器。
背景技术
数字相机、手机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于闪存(Flash Memory)具有数据非易失性、省电、体积小与无机械结构等的特性,适合可携式应用,最适合使用于这类可携式由电池供电的产品上。固态硬盘就是一种以NAND闪存作为储存媒体的储存装置。由于闪存体积小容量大,所以已广泛用于个人重要数据的储存。因此,近年闪存产业成为电子产业中相当热门的一环。
一般来说,闪存是由多个物理区块所组成。闪存储存***的控制器会将物理区块分组为多个物理单元,并且将此些物理单元逻辑地分组为数据区(data area)与备用区(spare area)来管理。属于数据区的物理单元是用以储存由主机写入指令所写入的有效数据,而属于备用区的物理单元是用以在执行主机写入指令时替换数据区的物理单元。为了能够让主机能够顺利地存取以轮替方式储存数据的物理单元,闪存储存***会提供逻辑单元以利主机***进行存取。也就是说,闪存储存***会建立逻辑单元-物理单元映射表(logical unit-physical unit mapping table),并且在此表中记录与更新逻辑单元与数据区的物理单元之间的映射关系来反映物理单元的轮替。具体来说,当闪存储存***接受到主机***的主机写入指令而欲将数据写入至一逻辑单元时,闪存储存***会从备用区中提取一个物理单元;将在此逻辑单元原始所映射的物理单元中的有效旧数据与欲写入的新数据写入至从备用区中所提取的物理单元;将此逻辑单元原始所映射的物理单元进行抹除操作并关联至备用区;并且在逻辑单元-物理单元映射表中将此逻辑单元重新映射至已写入新数据的物理单元(即,此已写入新数据的物理单元以被关联至数据区)。基此,主机***仅需要依据逻辑单元来进行存取,而闪存储存***会依据逻辑单元-物理单元映射表在所映射的物理单元上执行数据的读取或写入。
然而,在闪存制程上的进步而使得每一物理区块的设计容量会越来越大的同时,亦造成上述搬移有效旧数据的时间会相对地增加而降低***的效能。特别是,在当快闪储存***用作为安装计算机操作***的储存媒体时,操作***会经常性地存取储存于特定逻辑单元中的数据(例如,文件配置表(FileAllocation Table,FAT)。频繁存取此类小文件的数据会使得执行上述搬移有效旧数据的时间更长。此外,频繁地存取此类小文件的数据会使得闪存储存***的控制器需频繁地整理有效数据以释放储存无效有效数据的物理单元。因此,如何提升此类数据存取的效率是本领域技术人员所致力的目标。
发明内容
本发明提供一种区块管理与数据写入方法,其能够有效地缩短执行主机写入指令所需的时间。
本发明提供一种闪存控制器,其能够有效地缩短执行主机写入指令所需的时间。
本发明提供一种闪存储存***,其能够有效地缩短执行主机写入指令所需的时间。
本发明范例实施例提出一种区块管理方法,用于管理一闪存芯片的多个物理区块。本区块管理方法包括将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射数据区的物理单元的其中之一。本区块管理方法也包括将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。本区块管理方法还包括提取上述物理单元的至少其中之一作为全域混乱物理单元的全域混乱替换物理单元。
本发明范例实施例提出一种数据写入方法,用于将来自于一主机***的数据写入至一闪存芯片的多个物理区块。本数据写入方法包括将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射数据区的物理单元的其中之一。本数据写入方法也包括将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。本数据写入方法也包括从主机***接收一第一数据,其中此第一数据对应此些逻辑单元之中的一第一逻辑单元,此第一逻辑单元属于此些逻辑单元群之中的一第一逻辑单元群,并且此些全域混乱物理单元之中的一第一全域混乱物理单元对应此第一逻辑单元群。本数据写入方法还包括判断此第一数据是否为一小数据且此第一逻辑单元是否处于一开启母子单元状态,其中当判断此第一数据为小数据且此第一逻辑单元非处于开启母子单元状态时,判断此第一全域混乱物理单元是否已被写满。并且,当判断此第一全域混乱物理单元已被写满时,则从备用区中提取一个物理单元作为此第一全域混乱物理单元的一第一全域混乱替换物理单元并且将此第一数据暂存至该第一全域混乱替换物理单元中。
本发明范例实施例提出一种闪存控制器,用于管理一闪存芯片的多个物理区块。本闪存控制器包括微处理器单元、闪存接口单元与存储器管理单元。闪存接口单元电性连接至微处理器单元,并且用以电性连接至闪存芯片。存储器管理单元电性连接至微处理器单元,并且具有多个程序码以供微处理器单元执行多个程序。微处理器单元用以将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射数据区的物理单元的其中之一。此外,微处理器单元还用以将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。再者,微处理器单元还用以提取上述物理单元的至少其中之一作为全域混乱物理单元的全域混乱替换物理单元。
本发明范例实施例提出一种闪存控制器,用于管理一闪存芯片的多个物理区块。本闪存控制器包括微处理器单元、闪存接口单元、主机接口单元与存储器管理单元。闪存接口单元电性连接至微处理器单元,并且用以电性连接至闪存芯片。主机接口单元电性连接至微处理器单元,并且用以电性连接至主机***。存储器管理单元电性连接至该微处理器单元,并且具有多个程序码以供微处理器单元执行多个程序。微处理器单元用以将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射数据区的物理单元的其中之一。此外,微处理器单元还用以将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。再者,微处理器单元还用以从主机***接收一第一数据,其中此第一数据对应此些逻辑单元之中的一第一逻辑单元,此第一逻辑单元属于此些逻辑单元群之中的一第一逻辑单元群,并且此些全域混乱物理单元之中的一第一全域混乱物理单元对应此第一逻辑单元群。另外,微处理器单元还用以判断第一数据是否为一小数据且此第一逻辑单元是否处于一开启母子单元状态,其中当此第一数据为小数据且第一逻辑单元非处于该开启母子单元状态时,微处理器单元还用以判断第一全域混乱物理单元是否已被写满。并且,当第一全域混乱物理单元已被写满时,微处理器单元还用以从备用区的物理单元之中提取一个物理单元作为此第一全域混乱物理单元的第一全域混乱替换物理单元并且将此第一数据暂存至第一全域混乱替换物理单元中。
本发明范例实施例提出一种闪存储存***,其包括具有多个物理区块的闪存芯片以及电性连接至此闪存芯片的闪存控制器。闪存控制器用以将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射该数据区的物理单元的其中之一。此外,闪存控制器还用以将该些逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。再者,闪存控制器还用以提取此些物理单元的至少其中之一作为全域混乱物理单元的全域混乱替换物理单元。
本发明范例实施例提出一种闪存储存***,其包括具有多个物理区块的闪存芯片、用以电性连接至一主机***的连接器以及电性连接至此闪存芯片与此连接器的闪存控制器。闪存控制器用以将物理区块分组为多个物理单元,将部分的物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一逻辑单元映射数据区的物理单元的其中之一。此外,闪存控制器还用以将逻辑单元分组为多个逻辑单元群,并且将另一部分的物理单元配置为此些逻辑单元群的多个全域混乱物理单元,其中每一全域混乱物理单元对应此些逻辑单元群的其中之一。再者,闪存控制器还用以从主机***接收一第一数据,其中此第一数据对应此些逻辑单元之中的一第一逻辑单元,此第一逻辑单元属于此些逻辑单元群之中的一第一逻辑单元群,并且此些全域混乱物理单元之中的一第一全域混乱物理单元对应此第一逻辑单元群。再者,闪存控制器还用以判断此第一数据是否为一小数据且此第一逻辑单元是否处于一开启母子单元状态,其中当此第一数据为小数据且此第一逻辑单元非处于开启母子单元状态时,闪存控制器还用以判断此第一全域混乱物理单元是否已被写满。并且,当第一全域混乱物理单元已被写满时,闪存控制器还用以从备用区的物理单元之中提取一个物理单元作为第一全域混乱物理单元的第一全域混乱替换物理单元并且将此第一数据暂存至第一全域混乱替换物理单元中。
基于上述,本发明范例实施例能够有效地减少搬移旧数据的次数与整理有效数据的次数,进而缩短执行主机写入指令所需的时间。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1A是根据本发明一范例实施例绘示使用闪存储存装置的主机***。
图1B是根据本发明范例实施例所绘示的计算机、输入/输出装置与闪存储存装置的示意图。
图1C是根据本发明另一范例实施例所绘示的主机***与闪存储存装置的示意图。
图2是绘示图1A所示的闪存储存装置的概要方块图。
图3是根据本发明一范例实施例所绘示的闪存控制器的概要方块图。
图4~图8根据本发明一范例实施例绘示管理闪存芯片的示意图。
图9是根据本发明一范例实施例所绘示的逻辑单元群与全域混乱物理单元的配置范例。
图10是根据本发明范例实施例所绘示的区块管理的流程图。
图11是根据本发明范例实施例所绘示的数据写入的流程图。
[主要元件标号说明]
1000:主机*** 1100:计算机
1102:微处理器 1104:随机存取存储器
1106:输入/输出装置 1108:***总线
1110:数据传输接口 1202:鼠标
1204:键盘 1206:显示器
1208:打印机 1212:随身盘
1214:存储卡 1216:固态硬盘
1310:数字相机 1312:SD卡
1314:MMC卡 1316:存储棒
1318:CF卡 1320:嵌入式储存装置
100:闪存储存装置 102:连接器
104:闪存控制器 106:闪存芯片
202:微处理器单元 204:存储器管理单元
206:主机接口单元 208:闪存接口单元
252:缓冲存储器 254:电源管理单元
256:错误校正单元 402:闪存晶粒
412:第一闪存模块 414:第二闪存模块
422(0)~422(N)、424(0)~424(N):物理区块
430(0)~430(N):物理单元 460(0)~460(H):逻辑单元
302:***区 304:储存区
304a:数据区 304b:备用区
306:取代区 308:全域混乱区
S1001、S1003、S1005、S1007:区块管理的步骤
S1101、S1103、S1105、S1107、S1109、S1111、S1113、S1115:数据写入的步骤
具体实施方式
一般而言,闪存储存装置(亦称,闪存储存***)包括闪存芯片与控制器(亦称,控制电路)。通常闪存储存装置会与主机***一起使用,以使主机***可将数据写入至闪存储存装置或从闪存储存装置中读取数据。另外,亦有闪存储存装置是包括嵌入式闪存与可执行于主机***上以实质地作为此嵌入式闪存的控制器的软件。
图1A是根据本发明一范例实施例绘示使用闪存储存装置的主机***。
请参照图1A,主机***1000一般包括计算机1100与输入/输出(input/output,I/O)装置1106。计算机1100包括微处理器1102、随机存取存储器(random access memory,RAM)1104、***总线1108以及数据传输接口1110。输入/输出装置1106包括如图2B的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图2B所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其它装置。
在本发明实施例中闪存储存装置100是通过数据传输接口1110与主机***1000的其它元件电性连接。通过微处理器1102、随机存取存储器1104与输入/输出装置1106的处理可将数据写入至闪存储存装置100或从闪存储存装置100中读取数据。例如,闪存储存装置100可以是如图1B所示的随身盘1212、存储卡1214或固态硬盘(Solid State Drive,SSD)1216。
一般而言,主机1000可实质地为可储存数据的任意***。虽然在本范例实施例中,主机***1000是以计算机***来作说明,然而,在本发明另一范例实施例中主机***1000可以是数字相机、摄影机、通信装置、音频播放器或视频播放器等***。例如,在主机***为数字相机(摄影机)1310时,闪存储存装置则为其所使用的SD卡1312、MMC卡1314、存储棒(memorystick)1316、CF卡1318或嵌入式储存装置1320(如图1C所示)。嵌入式储存装置1320包括嵌入式多媒体卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机***的基板上。
图2是绘示图1A所示的闪存储存装置的概要方块图。
请参照图2,闪存储存装置100包括连接器102、闪存控制器104与闪存芯片106。
连接器102是电性连接至闪存控制器104并且用以电性连接至主机***1000。在本范例实施例中,连接器102为安全数字(secure digital,SD)接口连接器。然而,必须了解的是本发明不限于此,连接器102亦可以是通用序列总线(Universal Serial Bus,USB)连接器、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394连接器、高速***零件连接接口(Peripheral Component Interconnect Express,PCIExpress)连接器、序列先进附件(Serial Advanced Technology Attachment,SATA)连接器、存储棒(Memory Stick,MS)接口连接器、多媒体储存卡(MultiMedia Card,MMC)接口连接器、小型快闪(Compact Flash,CF)接口连接器、集成式驱动电子接口(Integrated Device Electronics,IDE)连接器或其它适合的连接器。
闪存控制器104会执行以硬件形式或固件形式实作的多个逻辑门或控制指令,并且根据主机***1000的指令在闪存芯片106中进行数据的写入、读取与抹除等运作。
图3是根据本发明一范例实施例所绘示的闪存控制器的概要方块图。
请参照图3,闪存控制器104包括微处理器单元202、存储器管理单元204、主机接口单元206、闪存接口单元208。
微处理器单元202为闪存控制器104的主控单元,用以与存储器管理单元204、主机接口单元206与闪存接口单元208等协同合作以进行闪存储存装置100的各种运作。
存储器管理单元204是电性连接至微处理器单元202,用以搭配微处理器单元202以使微处理器单元202执行根据本范例实施例的数据存取机制与区块管理机制,存储器管理单元204的运作将于以下配合图式作详细说明。
在本范例实施例中,存储器管理单元204是以一固件形式实作在闪存控制器104中。例如,将包括多个控制指令的存储器管理单元204烧录至一程序存储器(例如,只读存储器(Read Only Memory,ROM))中并且将此程序存储器嵌入在闪存控制器104中,当闪存储存装置100运作时,存储器管理单元204的多个控制指令会由微处理器单元202来执行以完成根据本发明实施例的数据存取机制与区块管理机制。
在本发明另一范例实施例中,存储器管理单元204的控制指令亦可以程序码形式储存于闪存芯片106的特定区域(例如,闪存芯片中专用于存放***数据的***区)中。此外,存储器管理单元204可具有一只读存储器(图未示),及一随机存取存储器(Random Access Memory,RAM)(图未示)。其中,此只读存储器具有一驱动码段,用以当闪存控制器104致能时,通过微处理器单元202先执行该驱动码段,以使微处理器单元202先将储存于闪存芯片106中的存储器管理单元204的控制指令传送至存储器管理单元204的随机存取存储器后,再依此等控制指令执行本发明的数据存取机制与区块管理机制。此外,在本发明另一范例实施例中,存储器管理单元204亦可以一硬件形式实作在闪存控制器104中。
主机接口单元206是电性连接至微处理器单元202并且用以接收与识别主机***1000所传送的指令与数据。也就是说,主机***1000所传送的指令与数据会通过主机接口单元206来传送至微处理器单元202。在本范例实施例中,主机接口单元206是对应连接器102为SD接口。然而,必须了解的是本发明不限于此,主机接口单元210亦可以是PATA接口、USB接口、IEEE1394接口、PCI Express接口、SATA接口、MS接口、MMC接口、CF接口、IDE接口或其它适合的数据传输接口。
闪存接口单元208是电性连接至微处理器单元202并且用以存取闪存芯片106。也就是说,欲写入至闪存芯片106的数据会经由闪存接口单元208转换为闪存芯片106所能接受的格式。
在本发明一范例实施例中,闪存控制器104还包括缓冲存储器252。缓冲存储器252是电性连接至微处理器单元202并且用以暂存来自于主机***1000的数据与指令或来自于闪存芯片106的数据。
在本发明一范例实施例中,闪存控制器104还包括电源管理单元254。电源管理单元254是电性连接至微处理器单元202并且用以控制闪存储存装置100的电源。
在本发明一范例实施例中,闪存控制器104还包括错误校正单元256。错误校正单元256是电性连接至微处理器单元202并且用以执行一错误校正程序以确保数据的正确性。具体来说,当微处理器单元202从主机***1000中接收到主机写入指令时,错误校正单元256会为对应此主机写入指令的写入数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECC Code),并且微处理器单元202会将此写入数据与对应的错误校正码写入至闪存芯片106中。之后,当微处理器单元202从闪存芯片106中读取数据时会同时读取此数据对应的错误校正码,并且错误校正单元256会依据此错误校正码对所读取的数据执行错误校正程序。
请再参照图2,闪存芯片106是电性连接至闪存控制器104并且具有多个物理区块用以储存数据。在闪存的设计中,物理区块为抹除的最小单位。亦即,每一物理区块含有最小数目之一并被抹除的存储单元。每一物理区块具有数个物理地址。在本范例实施例中,物理地址为物理页面,但本发明不限于此。物理页面为编程的最小单元。换言之,物理页面为写入数据或读取数据的最小单元。每一物理页面通常包括使用者数据区与冗余区。使用者数据区用以储存使用者的数据,而冗余区用以储存***的数据(例如,错误检查与校正码)。在本范例实施例中,闪存芯片106为多层存储单元(Multi LevelCell,MLC)NAND闪存芯片。然而,本发明不限于此,闪存芯片106亦可是单层存储单元(Single Level Cell,SLC)NAND闪存芯片。
图4~图8是根据本发明一范例实施例绘示管理闪存芯片的示意图。
必须了解的是,在此描述闪存的物理区块的运作时,以“提取”、“交换”、“分组”、“轮替”等词来操作物理区块是逻辑上的概念。也就是说,闪存的物理区块的实际位置并未更动,而是逻辑上对闪存的物理区块进行操作。
请参照图4,闪存芯片106具有第一闪存模块412与第二闪存模块414。第一闪存模块412具有物理区块422(0)~422(N),并且第二闪存模块414具有物理区块424(0)~424(N)。物理区块为抹除的最小单位。亦即,每一物理区块含有最小数目之一并被抹除的存储单元。每一物理区块通常会分割为数个物理地址(即,物理页面(page))。由于在本范例实施例中,闪存芯片106为MLC NAND闪存芯片,因此,物理页面为编程(program)的最小单元。换言之,物理页面为写入数据或读取数据的最小单元。每一物理页面通常包括使用者数据区与冗余区。使用者数据区用以储存使用者的数据,而冗余区用以储存***的数据(例如,错误检查与校正码(Error Checking and CorrectingCode,ECC Code)。必须了解的是,尽管在本范例实施例中闪存芯片106是由两个闪存模块所组成,但本发明不限于此。
在本范例实施例中,每一物理区块的物理页面数为128。然而,必须了解的是,本发明不限于此,每一物理区块的物理页面数亦可为192、256或其它适当页面数。此外,第一闪存模块412与第二闪存模块414的物理区块通常也可被分组为数个区域(zone),以每一独立的区域来管理物理区块422(0)~422(N)与物理区块424(0)~424(N)可增加操作执行的平行程度且简化管理的复杂度。
此外,闪存控制器104的微处理器单元202会将第一闪存模块412与第二闪存模块414的物理区块逻辑地分组为多个物理单元来管理。例如,1个物理单元包括2个物理区块,并且以物理单元作为抹除的单位。例如,物理区块422(0)~422(N)与物理区块424(0)~424(N)会被逻辑地分组为物理单元430(0)~430(N)。必须了解的是,尽管本范例实施例是以2个物理区块所组成的物理单元来进行管理。然而,本发明不限于此,在本发明另一范例实施例中,1个物理单元亦可仅由1个物理区块或者由3个以上的物理区块所组成。
请参照图5,微处理器单元202会将物理单元430(0)~430(N)逻辑地分组为***区302、储存区304与取代区306。
逻辑上属于***区302的物理单元用以记录***数据,其中此***数据包括关于闪存芯片的制造商与型号、闪存芯片的物理区块数、每一物理区块的页面数等。
逻辑上属于储存区304的物理单元是用以储存主机***1000所写入的数据。也就是说,闪存储存装置100会使用分组为储存区304的物理单元来实际地储存主机***1000所写入的数据。特别是,在本范例实施例中,微处理器单元202将储存区304的物理单元更分组为数据区304a与备用区304b。数据区304a的物理单元就是主机***1000所存取的逻辑单元所映射的物理单元。也就是说,数据区304a的物理单元为储存有效数据的单元。备用区304b的物理单元是用以轮替数据区304a中的物理单元。因此,在备用区304b中的物理单元为空或可使用的单元,即无记录数据或标记为已没用的无效数据。也就是说,数据区304a与备用区306b的物理单元会以轮替方式来储存主机***1000对闪存储存装置100写入的数据。
请同时参照图6~图8,例如,当闪存控制器104从主机***1000中接收到主机写入指令而欲写入数据至数据区304a的物理单元430(S+1)时,微处理器单元202会从备用区304b中提取物理单元430(D+1)来轮替数据区304a的物理单元430(S+1)。然而,当微处理器单元202将新数据写入至物理单元430(D+1)的同时,微处理器单元202不会立刻将物理单元430(S+1)中的所有有效数据搬移至物理单元430(D+1)而抹除物理单元430(S+1)。具体来说,微处理器单元202会将物理单元430(S+1)中欲写入物理地址之前的有效数据(即,第0物理地址与第1物理地址)复制至物理单元430(D+1)(如图6所示),并且将新数据(即,物理单元310-(D+1)的第2物理地址与第3物理地址)写入至物理单元430(D+1)(如图7所示)。此时,微处理器单元202即完成写入的操作。因为物理单元430(S+1)中的有效数据有可能在下个操作(例如,主机写入指令)中变成无效,因此立刻将物理单元430(S+1)中的所有有效数据搬移至替换物理单元430(D+1)可能会造成无谓的搬移。在本范例实施例中,暂时地维持此等母子瞬时关系(即,物理单元430(S+1)与物理单元430(D+1))的操作称为开启(open)母子单元,并且原物理单元称为母物理单元而替换物理单元称为子物理单元。
之后,当需要将物理单元430(S+1)与物理单元430(D+1)的内容真正合并时,微处理器单元202会将物理单元430(S+1)与物理单元430(D+1)整并为一个物理单元,由此提升区块的使用效率,在此,合并母子单元的操作称为关闭(close)母子单元。例如,如图8所示,当进行关闭母子单元时,微处理器单元202会将物理单元430(S+1)中剩余的有效数据(即,第4物理地址页~第K物理地址)复制至替换物理单元433(D+1),然后将物理单元430(S+1)抹除并关联至备用区304b,同时,将物理单元430(D+1)关联至数据区304a。
请再参照图5,逻辑上属于取代区306中的物理单元是替代物理单元。例如,闪存芯片106于出厂时会预留4%的物理区块作为更换使用。也就是说,当***区302与储存区304中的物理单元损毁时,预留于取代区306中的物理单元是用以取代损坏的物理单元(即,坏物理区块(badblock))。因此,倘若取代区306中仍存有正常的物理区块且发生物理区块损毁时,存储器管理模块204会从取代区306中提取正常的物理区块来更换损毁的物理区块。倘若取代区306中无正常的物理区块且发生物理区块损毁时,则闪存储存装置100将会被宣告为写入保护(write protect)状态,而无法再写入数据。
特别是,***区302、储存区304与取代区306的物理单元的数量会依据不同的闪存规格而有所不同。此外,必须了解的是,在闪存储存装置100的运作中,物理单元关联至***区302、储存区304与取代区306的分组关系会动态地变动。例如,当储存区中的物理单元损坏时而被取代区的物理单元取代时,则原本取代区的物理单元会被关联至储存区。
在本范例实施例中,微处理器单元202配置逻辑地址给主机***1000以利于在以上述轮替方式的物理单元中进行数据存取。此外,微处理器单元202会将所提供的逻辑地址分组为逻辑单元460(0)~460(H),并且将逻辑单元460(0)~460(H)映射至数据区304a的物理单元(如图4所示)。
例如,在逻辑单元460(0)是映射于物理单元430(S+1)的例子中,当主机***1000欲将数据写入至属于逻辑单元460(0)的逻辑地址时,微处理器单元202会根据一配置单元(图未绘示)或一表达式来识别此逻辑地址所属的逻辑单元460(0)。之后,微处理器单元202会根据逻辑单元-物理单元映射表(logical unit-physical unit mapping table)来识别映射逻辑单元460(0)的物理单元430(S+1);从备用区304b中提取物理单元430(D+1);并且将物理单元430(S+1)中的有效旧数据与主机***1000欲写入的数据写入至物理单元430(D+1)。然后,微处理器单元202会更新逻辑单元-物理单元映射表以将逻辑单元460(0)重新映射至物理单元430(D+1)。特别是,当逻辑单元所映射的物理单元处于上述母子单元状态时,则微处理器单元202会将此逻辑单元标记为处于开启母子单元状态。
特别是,除了上述一般写入操作(如图6~8所示)之外,微处理器单元202会将部分物理单元配置为全域混乱区308,并且将主机***1000欲写入的小数据暂存于全域混乱区308的物理单元(亦称,全域混乱物理单元)中。后续,微处理器单元202会于闪存储存装置100处于闲置状态(即,未执行主机***的任何指令)时,将暂存于全域混乱区308中的数据依据其所对应的逻辑单元写入至数据区304a的物理单元中。由此,减少搬移旧数据的次数,进而提升数据写入的效率。在此,当主机***1000欲写入的数据为小于或等于一个物理地址(即,物理页面)的容量时,微处理器单元202会将此数据视为小数据。例如,如上所述,每一物理地址的容量为8KB,因此微处理器单元202会将数据量小于或等于8KB的数据视为小数据。
具体来说,微处理器单元202会将逻辑单元460(0)~460(H)分组为多个逻辑单元群,并且为每一逻辑单元群配置一个全域混乱物理单元。
图9是根据本发明一范例实施例所绘示的逻辑单元群与全域混乱物理单元的配置范例。
请参照图9,在此假设将逻辑单元分群为5个逻辑单元群,其中逻辑单元460(0)、460(5)、460(10)...460(H-4)会被分组为逻辑单元群470(0)且物理单元430(N-4)被配置为第一全域混乱物理单元以对应逻辑单元群470(0);逻辑单元460(1)、460(6)、460(11)...460(H-3)会被分组为逻辑单元群470(1)且物理单元430(N-3)被配置为第二全域混乱物理单元以对应逻辑单元群470(1);逻辑单元460(2)、460(7)、460(12)...460(H-2)会被分组为逻辑单元群470(2)且物理单元430(N-2)被配置为第三全域混乱物理单元以对应逻辑单元群470(2);逻辑单元460(3)、460(8)、460(13)...460(H-1)会被分组为逻辑单元群470(3)且物理单元430(N-1)被配置为第四全域混乱物理单元以对应逻辑单元群470(3);并且逻辑单元460(4)、460(9)、460(14)...460(H)会被分组为逻辑单元群470(4)且物理单元430(N)被配置为第五全域混乱物理单元以对应逻辑单元群470(4)。特别是,微处理器单元202会将欲储存于逻辑单元460(0)、460(5)、460(10)...460(H-4)的小数据暂存于第一全域混乱物理单元430(N-4);将欲储存于逻辑单元460(1)、460(6)、460(11)...460(H-3)暂存于第二全域混乱物理单元430(N-3);将于储存于逻辑单元460(2)、460(7)、460(12)...460(H-2)的小数据暂存于第三全域混乱物理单元430(N-2);将欲储存于逻辑单元460(3)、460(8)、460(13)...460(H-1)的小数据暂存于第四全域混乱物理单元430(N-1);以及将欲储存于逻辑单元460(4)、460(9)、460(14)...460(H)的小数据暂存于第五全域混乱物理单元430(N)。
以主机***1000在逻辑单元460(0)中储存小数据且逻辑单元460(0)目前映射物理单元430(S+1)为例,当主机***1000下达主机写入指令以写入属于小数据的第一数据至逻辑单元460(0)时,微处理器单元202会判断逻辑单元460(0)是否处于开启母子单元状态。倘若逻辑单元460(0)非处于开启母子单元状态时,微处理器单元202会将第一数据暂存于逻辑单元460(0)所属的逻辑单元群470(0)所对应的全域混乱物理单元430(N-4)。
特别是,倘若主机***1000频繁地写入小数据至逻辑单元460(0)、460(5)、460(10)...460(H-4)而使逻辑单元群470(0)所对应的全域混乱物理单元430(N-4)已被写满数据时,微处理器单元202会从备用区304b提取一个物理单元(例如,物理单元430(D+4))作为对应全域混乱物理单元430(N-4)的全域混乱替换物理单元并且将对应逻辑单元460(0)、460(5)、460(10)...460(H-4)的小数据暂存于全域混乱替换物理单元430(D+4)中。值得一提的是,在全域混乱替换物理单元亦被写满的例子中,倘若备用区304b有足够的物理单元时,微处理器单元202会再提取一个物理单元作为另一个全域混乱替换物理单元。也就是说,一个全域混乱物理单元会对应多个全域混乱替换物理单元。
在本范例实施例中,在暂存于全域混乱区308中的数据实际地被写入至数据区304a的物理单元中后,微处理器单元202会将此些暂存于全域混乱物理单元或全域混乱替换物理单元中的数据标记为无效数据。特别是,当暂存于全域混乱物理单元中的数据皆被标记为无效时,微处理器单元202会对全域混乱物理单元执行抹除操作,以清空全域混乱物理单元的储存空间以储存后续来自于主机***1000的小数据。例如,当作为全域混乱物理单元的物理单元被执行抹除操作后,被抹除的物理单元亦会被关联至备用区304b并且微处理器单元202会提取备用区304b的另一个物理单元作为全域混乱物理单元。此外,当暂存于全域混乱替换物理单元中的数据皆被标记为无效时,微处理器单元202会对全域混乱替换物理单元执行抹除操作,并且将已抹除的物理单元关联至备用区304b。
值得一提的是,在本范例实施例中,微处理器单元202会执行平均磨损(wear-leveling)程序以使得数据区304a与备用区304b的物理单元的磨损较为平均,以延长闪存储存装置100的寿命。因此,微处理器单元202从备用区304b提取物理单元作为全域混乱物理单元与全域混乱替换物理单元,并且将已抹除的全域混乱物理单元与全域混乱替换物理单元关联回备用区304b的机制,能够使储存区304的物理单元以轮替方式映射逻辑单元、作为全域混乱物理单元以及作为全域混乱替换物理单元,以致于此些物理单元的磨损较为平均。
此外,值得一提的是,在本范例实施例中,微处理器单元202是从备用区304b中提取物理区块作为全域混乱替换物理单元。然而,本发明不限于此,在本发明另一范例实施例中,微处理器单元202亦可于全域混乱区308中额外地配置多个物理单元,并且使用配置于全域混乱区308的物理单元来作为全域混乱替换物理单元。
图10是根据本发明范例实施例所绘示的区块管理的流程图。
请参照图10,在步骤S1001中微处理器单元202将该些物理区块分组为多个物理单元,并且在步骤S1003中微处理器单元202将部分的物理单元分组为数据区与备用区(如图4与图5所示)。
在步骤S1005中微处理器单元202配置多个逻辑单元并且将每一逻辑单元映射至数据区的物理单元的其中之一(如图5所示)。接着,在步骤S1007中微处理器单元202会将逻辑单元分组为多个逻辑单元群,并且为每一逻辑单元群配置一全域混乱物理单元(如图9所示)。
图11是根据本发明范例实施例所绘示的数据写入的流程图。
请参照图11,在步骤S1101中微处理器单元202从主机***1000中接收主机写入指令与欲储存的数据。接着,在步骤S1103中微处理器单元202会识别此主机写入指令所对应的逻辑单元(以下称为欲目标逻辑单元)是否处于上述开启母子单元状态。
倘若在步骤S1103中判断目标逻辑单元是处于上述开启母子单元状态时,则在步骤S1105中微处理器单元202会将欲储存的数据写入至所映射的物理单元中。具体来说,微处理器单元202会依据逻辑单元-物理单元映射表的信息来将数据写入至所映射的物理单元中。倘若在步骤S1103中判断目标逻辑单元非处于上述开启母子单元状态时,则在步骤S1107中微处理器单元202会判断欲储存的数据是否为小数据。
倘若欲储存的数据非为小数据时,则在步骤S1109中微处理器单元202会从备用区304b中提取一个物理单元作为映射目标逻辑单元的子物理单元并且将欲储存的数据写入至此子物理单元中(如图6~图7所示)。倘若在步骤S1107中判断欲储存的数据为小数据时,则在步骤S1111中微处理器单元202会判断对应目标逻辑单元的全域混乱物理单元是否已被写满。
倘若对应目标逻辑单元的全域混乱物理单元未被写满时,则在步骤S1113中微处理器单元202会将欲储存的数据暂存于对应目标逻辑单元的全域混乱物理单元中。倘若对应目标逻辑单元的全域混乱物理单元已被写满时,则在步骤S1115中微处理器单元202会从备用区304b中提取一个物理单元作为对应已被写满的全域混乱物理单元的全域混乱替换物理单元并且将欲储存的数据暂存至此全域混乱替换物理单元中。
综上所述,在本发明范例实施例中,全域混乱物理单元被配置来暂存小数据,由此可有效地减少搬移旧数据的次数而缩短执行主机写入指令所需的时间。此外,在本发明范例实施例中,全域混乱替换物理单元被配置来替换全域混乱物理单元以暂存小数据,由此可减少整理有效数据的次数,由此更缩短执行主机写入指令所需的时间。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视所附的权利要求范围所界定者为准。
Claims (20)
1.一种区块管理方法,用于管理一闪存芯片的多个物理区块,该区块管理方法包括:
将该多个物理区块分组为多个物理单元;
将部分的该多个物理单元分组为一数据区与一备用区;
配置多个逻辑单元,其中每一该多个逻辑单元映射该数据区的该些物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群;
将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;以及
提取该多个物理单元的至少其中之一作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
2.根据权利要求1所述的区块管理方法,其中提取该多个物理单元的至少其中之一作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元的步骤包括:
从该备用区的该多个物理单元之中提取至少一个物理单元作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
3.一种数据写入方法,用于将来自于一主机***的数据写入至一闪存芯片的多个物理区块,该数据写入方法包括:
将该多个物理区块分组为多个物理单元;
将部分的该多个物理单元分组为一数据区与一备用区;
配置多个逻辑单元,其中每一该些逻辑单元映射该数据区的该多个物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群;
将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;
从该主机***接收一第一数据,其中该第一数据对应该多个逻辑单元之中的一第一逻辑单元,该第一逻辑单元属于该多个逻辑单元群之中的一第一逻辑单元群,并且该多个全域混乱物理单元之中的一第一全域混乱物理单元对应该第一逻辑单元群;
判断该第一数据是否为一小数据且该第一逻辑单元是否处于一开启母子单元状态,
其中当判断该第一数据为该小数据且该第一逻辑单元非处于该开启母子单元状态时,判断该第一全域混乱物理单元是否已被写满,
其中当判断该第一全域混乱物理单元已被写满时,则从该备用区的该些物理单元之中提取一个物理单元作为该第一全域混乱物理单元的一第一全域混乱替换物理单元并且将该第一数据暂存至该第一全域混乱替换物理单元中。
4.根据权利要求3所述的数据写入方法,还包括:
当判断该第一全域混乱物理单元未被写满时,则将该第一数据暂存至该第一全域混乱物理单元中。
5.根据权利要求3所述的数据写入方法,还包括:
当判断该第一数据非为该小数据且该第一逻辑单元非处于该开启母子单元状态时,从该备用区的该多个物理单元之中提取一个物理单元作为该第一逻辑单元所映射的物理单元的一子物理单元,并且将该第一数据写入至该子物理单元中。
6.根据权利要求3所述的数据写入方法,还包括:
当判断该第一逻辑单元处于该开启母子单元状态时,则将该第一数据写入至该第一逻辑单元所映射的物理单元的一子物理单元中。
7.根据权利要求3所述的数据写入方法,还包括:
判断暂存于该第一全域混乱物理单元或该第一全域混乱替换物理单元中的所有数据是否为无效,其中当暂存于该第一全域混乱物理单元或该第一全域混乱替换物理单元中的所有数据为无效时对该第一全域混乱物理单元或该第一全域混乱替换物理单元执行一抹除操作。
8.一种闪存控制器,用于管理一闪存芯片的多个物理区块,该闪存控制器包括:
一微处理器单元;
一闪存接口单元,电性连接至该微处理器单元,用以电性连接至该闪存芯片;以及
一存储器管理单元,电性连接至该微处理器单元,其中该存储器管理单元具有多个程序码用以供该微处理器单元执行至少下列程序:
用以将该多个物理区块分组为多个物理单元,将部分的该多个物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一该多个逻辑单元映射该数据区的该多个物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群,并且将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;以及
提取该多个物理单元的至少其中之一作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
9.根据权利要求8所述的闪存控制器,其中该微处理器单元还用以从该备用区的该多个物理单元之中提取的至少一个物理单元作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
10.一种闪存控制器,用于管理一闪存芯片的多个物理区块,该闪存控制器包括:
一微处理器单元;
一闪存接口单元,电性连接至该微处理器单元,用以电性连接至该闪存芯片;
一主机接口单元,电性连接至该微处理器单元,用以电性连接至一主机***;以及
一存储器管理单元,电性连接至该微处理器单元,其中该存储器管理单元具有多个程序码用以供该微处理器单元执行至少下列程序:
用以将该多个物理区块分组为多个物理单元,并且还用以将部分的该多个物理单元分组为一数据区与一备用区;
配置多个逻辑单元,其中每一该些逻辑单元映射该数据区的该多个物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群,并且将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;
从该主机***接收一第一数据,其中该第一数据对应该多个逻辑单元之中的一第一逻辑单元,该第一逻辑单元属于该多个逻辑单元群之中的一第一逻辑单元群,并且该多个全域混乱物理单元之中的一第一全域混乱物理单元对应该第一逻辑单元群;
判断该第一数据是否为一小数据且该第一逻辑单元是否处于一开启母子单元状态;
当该第一数据为该小数据且该第一逻辑单元非处于该开启母子单元状态时,判断该第一全域混乱物理单元是否已被写满;以及
当该第一全域混乱物理单元已被写满时,从该备用区的该多个物理单元之中提取一个物理单元作为该第一全域混乱物理单元的一第一全域混乱替换物理单元并且将该第一数据暂存至该第一全域混乱替换物理单元中。
11.根据权利要求10所述的闪存控制器,其中当该第一全域混乱物理单元未被写满时,该微处理器单元还用以将该第一数据暂存至该第一全域混乱物理单元中。
12.根据权利要求10所述的闪存控制器,其中当该第一数据非为该小数据且该第一逻辑单元非处于该开启母子单元状态时,该微处理器单元还用以从该备用区的该多个物理单元之中提取一个物理单元作为该第一逻辑单元所映射的物理单元的一子物理单元,并且还用以将该第一数据写入至该子物理单元中。
13.根据权利要求10所述的闪存控制器,其中当该第一逻辑单元处于该开启母子单元状态时,该微处理器单元还用以将该第一数据写入至该第一逻辑单元所映射的物理单元的一子物理单元中。
14.一种闪存储存***,包括:
一闪存芯片,具有多个物理区块;以及
一闪存控制器,电性连接至该闪存芯片,用以执行至少下列程序:
将该多个物理区块分组为多个物理单元,将部分的该多个物理单元分组为一数据区与一备用区,并且配置多个逻辑单元,其中每一该多个逻辑单元映射该数据区的该多个物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群,并且将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;以及
提取该多个物理单元的至少其中之一作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
15.根据权利要求14所述的闪存储存***,其中该闪存控制器还用以从该备用区的该多个物理单元之中提取的至少一个物理单元作为该其中一个全域混乱物理单元的至少一全域混乱替换物理单元。
16.一种闪存储存***,包括:
一闪存芯片,具有多个物理区块;
一连接器,用以电性连接至一主机***;以及
一闪存控制器,电性连接至该闪存芯片与该连接器,用以执行至少下列程序:
将该多个物理区块分组为多个物理单元,并且将部分的该多个物理单元分组为一数据区与一备用区;
配置多个逻辑单元,其中每一该多个逻辑单元映射该数据区的该多个物理单元的其中之一;
将该多个逻辑单元分组为多个逻辑单元群,并且将另一部分的该多个物理单元配置为该多个逻辑单元群的多个全域混乱物理单元,其中每一该多个全域混乱物理单元对应该多个逻辑单元群的其中之一;
从该主机***接收一第一数据,其中该第一数据对应该多个逻辑单元之中的一第一逻辑单元,该第一逻辑单元属于该多个逻辑单元群之中的一第一逻辑单元群,并且该多个全域混乱物理单元之中的一第一全域混乱物理单元对应该第一逻辑单元群;
判断该第一数据是否为一小数据且该第一逻辑单元是否处于一开启母子单元状态;
当该第一数据为该小数据且该第一逻辑单元非处于该开启母子单元状态时,判断该第一全域混乱物理单元是否已被写满;以及
当该第一全域混乱物理单元已被写满时,从该备用区的该多个物理单元之中提取一个物理单元作为该第一全域混乱物理单元的一第一全域混乱替换物理单元并且将该第一数据暂存至该第一全域混乱替换物理单元中。
17.根据权利要求16所述的闪存储存***,其中当该第一全域混乱物理单元未被写满时,该闪存控制器还用以将该第一数据暂存至该第一全域混乱物理单元中。
18.根据权利要求16所述的闪存储存***,其中当该第一数据非为该小数据且该第一逻辑单元非处于该开启母子单元状态时,该闪存控制器还用以从该备用区的该多个物理单元之中提取一个物理单元作为该第一逻辑单元所映射的物理单元的一子物理单元,并且将该第一数据写入至该子物理单元中。
19.根据权利要求16所述的闪存储存***,其中当该第一逻辑单元处于该开启母子单元状态时,该闪存控制器还用以将该第一数据写入至该第一逻辑单元所映射的物理单元的一子物理单元中。
20.根据权利要求16所述的闪存储存***,其中该闪存控制器还用以判断暂存于该第一全域混乱物理单元或该第一全域混乱替换物理单元中的所有数据是否为无效,
其中当暂存于该第一全域混乱物理单元或该第一全域混乱替换物理单元中的所有数据为无效时该闪存控制器还用以对该第一全域混乱物理单元或该第一全域混乱替换物理单元执行一抹除操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010001540 CN102122233B (zh) | 2010-01-08 | 2010-01-08 | 区块管理与数据写入方法、闪存储存***与控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010001540 CN102122233B (zh) | 2010-01-08 | 2010-01-08 | 区块管理与数据写入方法、闪存储存***与控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102122233A true CN102122233A (zh) | 2011-07-13 |
CN102122233B CN102122233B (zh) | 2013-04-10 |
Family
ID=44250796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010001540 Active CN102122233B (zh) | 2010-01-08 | 2010-01-08 | 区块管理与数据写入方法、闪存储存***与控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102122233B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902626A (zh) * | 2011-07-27 | 2013-01-30 | 群联电子股份有限公司 | 区块管理方法、存储器控制器与存储器储存装置 |
CN103077124A (zh) * | 2011-10-25 | 2013-05-01 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN104951241A (zh) * | 2014-03-31 | 2015-09-30 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN107807786A (zh) * | 2016-09-08 | 2018-03-16 | 宏碁股份有限公司 | 存储装置及其资料映射方法 |
CN107807788A (zh) * | 2016-09-09 | 2018-03-16 | 北京忆恒创源科技有限公司 | 多平面闪存的数据组织方法与装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7139864B2 (en) * | 2003-12-30 | 2006-11-21 | Sandisk Corporation | Non-volatile memory and method with block management system |
US8122179B2 (en) * | 2007-12-14 | 2012-02-21 | Silicon Motion, Inc. | Memory apparatus and method of evenly using the blocks of a flash memory |
-
2010
- 2010-01-08 CN CN 201010001540 patent/CN102122233B/zh active Active
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902626A (zh) * | 2011-07-27 | 2013-01-30 | 群联电子股份有限公司 | 区块管理方法、存储器控制器与存储器储存装置 |
CN102902626B (zh) * | 2011-07-27 | 2016-02-03 | 群联电子股份有限公司 | 区块管理方法、存储器控制器与存储器储存装置 |
CN103077124A (zh) * | 2011-10-25 | 2013-05-01 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN103077124B (zh) * | 2011-10-25 | 2015-11-18 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN104951241A (zh) * | 2014-03-31 | 2015-09-30 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN104951241B (zh) * | 2014-03-31 | 2018-02-27 | 群联电子股份有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN107807786A (zh) * | 2016-09-08 | 2018-03-16 | 宏碁股份有限公司 | 存储装置及其资料映射方法 |
CN107807786B (zh) * | 2016-09-08 | 2021-09-07 | 宏碁股份有限公司 | 存储装置及其资料映射方法 |
CN107807788A (zh) * | 2016-09-09 | 2018-03-16 | 北京忆恒创源科技有限公司 | 多平面闪存的数据组织方法与装置 |
CN107807788B (zh) * | 2016-09-09 | 2021-06-15 | 北京忆恒创源科技有限公司 | 块条带构造方法、构造装置及固态存储设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102122233B (zh) | 2013-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102193869B (zh) | 存储器管理与写入方法及其存储器控制器与储存*** | |
CN102073600B (zh) | 数据备份方法、闪存控制器及闪存储存*** | |
CN103514096A (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN103377129A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102456404A (zh) | 非易失性存储器存储装置、存储器控制器与数据存储方法 | |
CN102053796A (zh) | 闪存储存***、闪存控制器与数据处理方法 | |
CN102122233B (zh) | 区块管理与数据写入方法、闪存储存***与控制器 | |
CN102890655A (zh) | 存储器储存装置、其存储器控制器与有效数据识别方法 | |
CN103678162B (zh) | ***数据储存方法、存储器控制器与存储器储存装置 | |
CN102968385B (zh) | 数据写入方法、存储器控制器与储存装置 | |
CN103136111A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102866861B (zh) | 闪存储存***、闪存控制器与数据写入方法 | |
CN102446137B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102567221B (zh) | 数据管理方法、存储器控制器与存储器储存装置 | |
CN101944384B (zh) | 用于闪速存储器的数据写入方法及其控制电路与储存*** | |
CN102915273A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
TWI414940B (zh) | 區塊管理與資料寫入方法、快閃記憶體儲存系統與控制器 | |
CN102999437A (zh) | 数据搬移方法、存储器控制器与存储器储存装置 | |
CN102053920B (zh) | 数据写入方法及闪存控制器与闪存存储*** | |
CN104238956A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
CN102467459B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102543184A (zh) | 存储器储存装置、其存储器控制器与数据写入方法 | |
CN102110056B (zh) | 闪存管理方法、闪存控制器与闪存存储*** | |
CN102087632B (zh) | 用于闪存的数据储存方法及其控制器与储存*** | |
CN101957799B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |