能够提升记忆体效能的方法和相关的记忆体系统的制作方法
【专利摘要】本发明揭露一种能够提升记忆体效能的方法和相关的记忆体系统,应用于该方法的记忆体系统包含一记忆体和一控制器,且该记忆体内的一预留空间是用以储存一逻辑位置/实体区块映射表。该方法包含该控制器保留该记忆体的多个实体区块为一写入缓冲区;当多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行一宽度写入操作或一深度写入操作。该逻辑位置/实体区块映射表包含该多个实体区块与多个逻辑位置之间的对应关系。
【专利说明】能够提升记忆体效能的方法和相关的记忆体系统
【技术领域】
[0001]本发明涉及一种能够提升记忆体(存储器)效能的方法和相关的记忆体系统,尤其涉及一种可利用控制器根据逻辑位置/实体区块映射表,对来自主机的多个数据和记忆体的写入缓冲区执行宽度写入操作或深度写入操作,以大幅降低控制器所执行的区块合并操作的方法和相关的记忆体系统。
【背景技术】
[0002]一般而言,每一快闪记忆体(闪存)被区分成多个区块。当多个数据被写入快闪记忆体时,主机可根据多个数据,送出多个对应于多个数据的逻辑位置至一控制器。然后控制器即可根据一逻辑位置/实体区块映射表和多个对应于多个数据的逻辑位置,将多个数据写入快闪记忆体内的多个相对应的区块。
[0003]在控制器将多个数据写入快闪记忆体内的多个相对应的区块的过程中,控制器会对多个相对应的区块内的部分区块执行区块合并操作(block merge operation)以释出多个相对应的区块内的部分区块,所以快闪记忆体的写入效能会被降低。因此,减少区块合并操作将是提升快闪记忆体的写入效能的重要课题。
【发明内容】
[0004]本发明的目的在于提供一种可利用控制器根据逻辑位置/实体区块映射表,对来自主机的多个数据和记忆体的写入缓冲区执行宽度写入操作或深度写入操作的方法和相关的记忆体系统,以大幅降低该控制器所执行的区块合并操作,所以本发明可大幅提升该记忆体的效能。
[0005]本发明的一实施例提供一种能够提升记忆体效能的方法,其中一应用于该方法的记忆体系统包含一记忆体和一控制器,且该记忆体内的一预留空间是用以储存一逻辑位置/实体区块映射表。该方法包含该控制器保留该记忆体的多个实体区块为一写入缓冲区,其中该逻辑位置/实体区块映射表包含该多个实体区块与多个逻辑位置之间的对应关系;当多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行一宽度写入操作或一深度写入操作。
[0006]本发明的另一实施例提供一种能够提升记忆体效能的记忆体系统。该记忆体系统包含一记忆体和一控制器。该记忆体内的一预留空间是用以储存一逻辑位置/实体区块映射表;该控制器是用以保留该记忆体的多个实体区块为一写入缓冲区,以及当多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行一宽度写入操作或一深度写入操作;该逻辑位置/实体区块映射表包含该多个实体区块与多个逻辑位置之间的对应关系。
[0007]本发明提供的能够提升记忆体效能的方法和能够提升记忆体效能的记忆体系统。该方法和该记忆体系统是为,当来自一主机的多个数据被写入一记忆体时,利用一控制器根据一逻辑位置/实体区块映射表,对来自该主机的多个数据和该记忆体的写入缓冲区执行一宽度写入操作或一深度写入操作,以大幅降低该控制器所执行的区块合并操作。如此,相较于现有技术,因为本发明可利用该控制器根据该逻辑位置/实体区块映射表,对来自该主机的多个数据和该记忆体的写入缓冲区执行宽度写入操作或深度写入操作,以大幅降低该控制器所执行的区块合并操作,所以本发明可大幅提升该记忆体的效能。
[0008]以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
【专利附图】
【附图说明】
[0009]图1是本发明的一实施例说明一种能够提升记忆体效能的记忆体系统的示意图;
[0010]图2是本发明的另一实施例说明一种能够提升记忆体效能的方法的流程图;
[0011]图3是说明宽度写入操作的示意图;
[0012]图4是说明深度写入操作的示意图;
[0013]图5是说明垃圾区块操作的示意图;
[0014]图6是说明区块合并操作的示意图。
[0015]其中,附图标记
[0016]100记忆体系统
[0017]102 记忆体
[0018]104控制器
[0019]1022写入缓冲区
[0020]1024写入缓冲区
[0021]103、110、115、119、131、312、1100 实体区块
[0022]LPMT逻辑位置/实体区块映射表
[0023]PMT页映射表
[0024]200-216 步骤
【具体实施方式】
[0025]下面结合附图对本发明的结构原理和工作原理作具体的描述:
[0026]请参照图1至图6,图1是本发明的一实施例说明一种能够提升记忆体效能的记忆体系统100的示意图,图2是本发明的另一实施例说明一种能够提升记忆体效能的方法的流程图,图3是说明宽度写入操作(width writing operation)的示意图,图4是说明深度写入操作(depth writing operation)的示意图,图5是说明垃圾区块操作(garbageblock operation)的示意图,以及图6是说明区块合并操作(block merge operation)的示意图。如图1所示,记忆体系统100包含一记忆体102与一控制器104,其中记忆体102是一‘决闪记忆体(flash memory)或一与非门快闪记忆体(NAND flash memory)。记忆体102内的一预留空间1022是用以储存一逻辑位置/实体区块映射表LPMT。如图1所示,控制器104是用以保留记忆体102的多个实体区块为一写入缓冲区1024,以及当一主机的多个数据被写入记忆体102时,控制器104根据逻辑位置/实体区块映射表LPMT,对主机的多个数据执行一相对应的操作(例如一宽度写入操作或一深度写入操作),其中逻辑位置/实体区块映射表LPMT包含写入缓冲区1024内的多个实体区块与多个逻辑位置之间的对应关系。另外,图2的方法是利用图1的记忆体系统100说明,详细步骤如下:[0027]步骤200:开始;
[0028]步骤202:控制器104保留记忆体102的多个实体区块为写入缓冲区1024 ;
[0029]步骤204:当主机的多个数据被写入记忆体102且控制器104根据逻辑位置/实体区块映射表LPMT,对主机的多个数据和写入缓冲区1024执行一宽度写入操作时,进行步骤206 ;当主机的多个数据被写入记忆体102且控制器104根据逻辑位置/实体区块映射表LPMT,对主机的多个数据和写入缓冲区1024执行一深度写入操作时,进行步骤208 ;
[0030]步骤206:控制器104根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的多个分别对应不同逻辑位置的实体区块,进行步骤214 ;
[0031]步骤208:控制器104根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的多个对应同一逻辑位置的实体区块;
[0032]步骤210:是否多个对应同一逻辑位置的实体区块中具有储存无用数据的实体区块;如果是,进行步骤212 ;如果否,跳至步骤214 ;
[0033]步骤212:控制器104对储存无用数据的实体区块执行一垃圾区块操作,进行步骤214 ;
[0034]步骤214:是否逻辑位置/实体区块映射表LPMT已使用完毕或写入缓冲区1024没有可利用的实体区块;如果是,进行步骤216 ;如果否,跳回步骤204 ;
[0035]步骤216:控制器104对对应于同一逻辑位置的多个储存旧数据的实体区块与多个储存新数据的实体区块执行一区块合并操作,跳回步骤204。
[0036]在步骤202中,控制器104保留记忆体102的多层式储存(multiple levelcell)的实体区块与三层式储存(triple level cell)的实体区块中仅利用单层式储存页(single level cell page)的实体区块为写入缓冲区1024。在步骤204中,当主机的多个数据被写入记忆体102时,主机可产生并输出对应于多个数据的逻辑位置至控制器104。因此,控制器104根据逻辑位置/实体区块映射表LPMT,对主机的多个数据执行宽度写入操作或深度写入操作。在步骤206中,控制器104根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的多个分别对应不同逻辑位置的实体区块。如图3所示,根据逻辑位置/实体区块映射表LPMT,写入缓冲区1024内的实体区块110、115是对应一逻辑位置I以及写入缓冲区1024内的实体区块312、103是对应一逻辑位置5,其中实体区块110、312是储存旧数据以及写入缓冲区1024内的实体区块115、103可被用以写入新数据。因此,控制器104即可根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的实体区块115(对应逻辑位置I)与实体区块103(对应逻辑位置5),且不用对实体区块115、110 (对应逻辑位置I)与实体区块103、312 (对应逻辑位置5)执行区块合并操作直到逻辑位置/实体区块映射表LPMT已使用完毕或写入缓冲区1024没有可利用的实体区块。另外,当控制器104根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的实体区块115与实体区块103时,控制器104可根据预留空间1022另储存的页映射表PMT,将主机的多个数据写入至实体区块115与实体区块103内的相对应储存页。另外,图3仅用以说明控制器104执行宽度写入操作,亦即本发明并不受限于在图3中实体区块的编号、数量以及逻辑位置。
[0037]在步骤208中,控制器104根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的多个对应同一逻辑位置的实体区块。如图4所示,根据逻辑位置/实体区块映射表LPMT,写入缓冲区1024内的实体区块110、115、119、131是对应逻辑位置1,其中实体区块110是储存旧数据、实体区块115、119、131可被用以写入新数据。因此,控制器104即可根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的实体区块115、119、131。如图4所示,实体区块115、119已存满新数据以及实体区块131可被继续用以写入新数据,但控制器104不用对实体区块110、115、119,131执行区块合并操作直到逻辑位置/实体区块映射表LPMT已使用完毕或写入缓冲区1024没有可利用的实体区块。另外,图4仅用以说明控制器104执行深度写入操作,亦即本发明并不受限于在图4中实体区块的编号、数量以及逻辑位置。
[0038]在步骤212中,当控制器104根据逻辑位置/实体区块映射表LPMT,对主机的多个数据执行深度写入操作时,控制器104可对储存无用数据的实体区块执行垃圾区块操作,以释放储存无用数据的实体区块至写入缓冲区1024。如图5所示,根据逻辑位置/实体区块映射表LPMT,写入缓冲区1024内的实体区块110、115、119、131是对应逻辑位置1,其中实体区块110是储存旧数据、实体区块115是储存无用的数据以及实体区块119、131可被用以写入新数据。因此,控制器104即可根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的实体区块119、131,且对实体区块115执行垃圾区块操作。如图5所示,实体区块119已存满新数据、实体区块131可被继续用以写入新数据以及实体区块115被释放至写入缓冲区1024。另外,图5仅用以说明控制器104执行垃圾区块操作,亦即本发明并不受限于在图5中实体区块的编号、数量以及逻辑位置。
[0039]在步骤216中,当逻辑位置/实体区块映射表LPMT已使用完毕或写入缓冲区1024没有可利用的实体区块时,控制器104可对对应于同一逻辑位置的多个储存旧数据的实体区块与多个储存新数据的实体区块执行区块合并操作,以释放对应于同一逻辑位置的多个储存旧数据的实体区块与多个储存新数据的实体区块至写入缓冲区1024。如图6所示,根据逻辑位置/实体区块映射表LPMT,写入缓冲区1024内的实体区块110、115、119、131、1100是对应逻辑位置1,其中实体区块110是储存旧数据、实体区块115、119、131可被用以写入新数据。因此,控制器104即可根据逻辑位置/实体区块映射表LPMT,同时写入主机的多个数据至写入缓冲区1024内的实体区块115、119、131。如图6所示,实体区块115、119已存满新数据以及实体区块131可被继续用以写入新数据,但此时逻辑位置/实体区块映射表LPMT已使用完毕且写入缓冲区1024没有可利用的实体区块。因此,控制器104对实体区块110、115、119、131执行区块合并操作并储存实体区块110、115、119、131所储存的数据至实体区块1100,以释放实体区块110、115、119、131至写入缓冲区1024以及逻辑位置/实体区块映射表LPMT的部分。因为控制器104是当逻辑位置/实体区块映射表LPMT已使用完毕且写入缓冲区1024没有可利用的实体区块时,才对实体区块110、115、119、131执行区块合并操作,所以可大幅减少区块合并操作。另外,图6仅用以说明控制器104执行垃圾区块操作,亦即本发明并不受限于在图6中实体区块的编号、数量以及逻辑位置。
[0040]综上所述,本发明所提供的能够提升记忆体效能的方法和能够提升记忆体效能的记忆体系统是当来自主机的多个数据被写入记忆体时,利用控制器根据逻辑位置/实体区块映射表,对来自主机的多个数据和记忆体的写入缓冲区执行宽度写入操作或深度写入操作,以大幅降低控制器所执行的区块合并操作。如此,相较于现有技术,因为本发明可利用控制器根据逻辑位置/实体区块映射表,对来自主机的多个数据和记忆体的写入缓冲区执行宽度写入操作或深度写入操作,以大幅降低控制器所执行的区块合并操作,所以本发明可大幅提升记忆体效能。
[0041]当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
【权利要求】
1.一种能够提升记忆体效能的方法,其中应用于该方法的一记忆体系统包含一记忆体和一控制器,且该记忆体内的一预留空间是用以储存一逻辑位置/实体区块映射表,其特征在于,该方法包含: 该控制器保留该记忆体的多个实体区块为一写入缓冲区,其中该逻辑位置/实体区块映射表包含该多个实体区块与多个逻辑位置之间的对应关系;及 当多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行一宽度写入操作或一深度写入操作。
2.根据权利要求1所述的能够提升记忆体效能的方法,其特征在于,当该多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该宽度写入操作包含: 该控制器根据该逻辑位置/实体区块映射表,同时写入该多个数据至该写入缓冲区内的多个分别对应不同逻辑位置的实体区块; 其中当该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该宽度写入操作时,该控制器对对应于一第一逻辑位置的储存旧数据的多个第一实体区块与储存新数据的多个第二实体区块不执行一区块合并操作直到该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块。
3.根据权利要求2所述的能够提升记忆体效能的方法,其特征在于,另包含: 当该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有可利用的实体区块时,该控制器对该多个第一实体区块与该多个第二实体区块执行该区块合并操作并将该多个第一实体区块与该多个第二实体区块所储存的数据储存至一第三实体区块,以释放该多个第一实体区块、该多个第二实体区块以及该逻辑位置/实体区块映射表的部分,其中该第三实体区块对应该第一逻辑位置。
4.根据权利要求1所述的能够提升记忆体效能的方法,其特征在于,当该多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该深度写入操作包含: 该控制器根据该逻辑位置/实体区块映射表,同时写入该多个数据至该写入缓冲区内的多个第四实体区块,其中该多个第四实体区块是对应一第二逻辑位置; 其中该控制器对该多个第四实体区块中多个储存旧数据的第四实体区块与多个储存新数据的第四实体区块不执行一区块合并操作直到该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块。
5.根据权利要求4所述的能够提升记忆体效能的方法,其特征在于,另包含: 当该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块时,该控制器对该多个储存旧数据的第四实体区块与该多个储存新数据的第四实体区块执行该区块合并操作并将该多个储存旧数据的第四实体区块与该多个储存新数据的第四实体区块所储存的数据储存至一第五实体区块,以释放该多个储存旧数据的第四实体区块、该多个储存新数据的第四实体区块以及该逻辑位置/实体区块映射表的部分,其中该第五实体区块对应该第二逻辑位置。
6.根据权利要求4所述的能够提升记忆体效能的方法,其特征在于,另包含: 当该控制器同时写入该多个数据至该多个第四实体区块时,该控制器对对应该第二逻辑位置储存无用数据的实体区块执行一垃圾区块操作,以释放对应该第二逻辑位置储存无用数据的实体区块至该写入缓冲区。
7.根据权利要求1所述的能够提升记忆体效能的方法,其特征在于,该多个实体区块是为该记忆体的多层式储存的实体区块与三层式储存的实体区块中利用单层式储存页的实体区块。
8.根据权利要求1所述的能够提升记忆体效能的方法,其特征在于,该记忆体是一快闪记忆体或一与非门快闪记忆体。
9.一种能够提升记忆体效能的记忆体系统,其特征在于,包含: 一记忆体,其中该记忆体内的一预留空间是用以储存一逻辑位置/实体区块映射表;及 一控制器,用以保留该记忆体的多个实体区块为一写入缓冲区,以及当多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行一宽度写入操作或一深度写入操作; 其中该逻辑位置/实体区块映射表包含该多个实体区块与多个逻辑位置之间的对应关系。
10.根据权利要求9所述的能够提升记忆体效能的记忆体系统,其特征在于,当该多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该宽度写入操作,是该控制器据该逻辑位置/实体区块映射表,同时写入该多个数据至该写入缓冲区内分别对应不同逻辑位置的多个实体区块;其中当该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该宽度写入操作时,该控制器对对应于一第一逻辑位置的储存旧数据的多个第一实体区块与储存新数据的多个第二实体区块不执行一区块合并操作直到该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块。
11.根据权利要求10所述的能够提升记忆体效能的记忆体系统,其特征在于,当该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块时,该控制器对该多个第一实体区块与该多个第二实体区块执行该区块合并操作并将该多个第一实体区块与该多个第二实体区块所储存的数据储存至一第三实体区块,以释放该多个第一实体区块、该多个第二实体区块以及该逻辑位置/实体区块映射表的部分,其中该第三实体区块对应该第一逻辑位置。
12.根据权利要求9所述的能够提升记忆体效能的记忆体系统,其特征在于,当该多个数据被写入该记忆体时,该控制器根据该逻辑位置/实体区块映射表,对该多个数据和该写入缓冲区执行该深度写入操作,是该控制器根据该逻辑位置/实体区块映射表,同时写入该多个数据至该写入缓冲区内的多个第四实体区块,其中该多个第四实体区块是对应一第二逻辑位置;其中该控制器对该多个第四实体区块中多个储存旧数据的第四实体区块与多个储存新数据的第四实体区块不执行一区块合并操作直到该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块。
13.根据权利要求12所述的能够提升记忆体效能的记忆体系统,其特征在于,当该逻辑位置/实体区块映射表已使用完毕或该写入缓冲区没有能够利用的实体区块时,该控制器对该多个储存旧数据的第四实体区块与该多个储存新数据的第四实体区块执行该区块合并操作并将该多个储存旧数据的第四实体区块与该多个储存新数据的第四实体区块所储存的数据储存至一第五实体区块,以释放该多个储存旧数据的第四实体区块、该多个储存新数据的第四实体区块以及该逻辑位置/实体区块映射表的部分,其中该第五实体区块对应该第二逻辑位置。
14.根据权利要求12所述的能够提升记忆体效能的记忆体系统,其特征在于,当该控制器同时写入该多个数据至该多个第四实体区块时,该控制器对对应该第二逻辑位置储存无用数据的实体区块执行一垃圾区块操作,以释放对应该第二逻辑位置储存无用数据的实体区块至该写入缓冲区。
15.根据权利要求9所述的能够提升记忆体效能的记忆体系统,其特征在于,该多个实体区块是为该记忆体的多层式储存的实体区块与三层式储存的实体区块中利用单层式储存页的实体区块。
16.根据权利要求9所述的能够提升记忆体效能的记忆体系统,其特征在于,该记忆体是一快闪记忆体或 一与非门快闪记忆体。
【文档编号】G06F12/10GK103544120SQ201310409559
【公开日】2014年1月29日 申请日期:2013年9月10日 优先权日:2012年9月11日
【发明者】王开屏, 王忠胜 申请人:钰创科技股份有限公司