CN102200946A - 资料存取方法、记忆体控制器与储存系统 - Google Patents
资料存取方法、记忆体控制器与储存系统 Download PDFInfo
- Publication number
- CN102200946A CN102200946A CN2010101383027A CN201010138302A CN102200946A CN 102200946 A CN102200946 A CN 102200946A CN 2010101383027 A CN2010101383027 A CN 2010101383027A CN 201010138302 A CN201010138302 A CN 201010138302A CN 102200946 A CN102200946 A CN 102200946A
- Authority
- CN
- China
- Prior art keywords
- bit address
- logical bit
- address
- write
- archives
- 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)
- Storage Device Security (AREA)
Abstract
本发明提供一种资料存取方法、记忆体控制器与储存系统,该资料存取方法用于存取非挥发性记忆体模组。本方法包括配置多个逻辑位址并且将此些逻辑位址分组为多个逻辑区块以映射此非挥发性记忆体模组的实体区块,其中主机系统使用档案系统将逻辑位址格式化为一个分割区,且此分割区储存至少一个档案及对应此档案的档案描述区块。本方法还包括搜寻对应此档案描述区块的登录值的结束标记;将储存此结束标记的逻辑位址设定为预设型态位址;以及将储存在储存此结束标记的逻辑位址中的数值设定为对应此预设型态位址的预设值。基此,本方法可通过更新此预设型态位址中的资料而将一个分割区区分为写入保护区以及可写入区。
Description
技术领域
本发明涉及一种资料存取方法、记忆体控制器、记忆体储存系统,尤其涉及一种能够在一个分割区中配置一防写区与一可写入区的资料存取方法及使用此方法的记忆体控制器、记忆体储存系统与记忆卡。
背景技术
数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对储存媒体的需求也急速增加。由于可复写式非挥发性记忆体具有资料非挥发性、省电、体积小与无机械结构等的特性,适合可携式应用,最适合使用于这类可携式由电池供电的产品上。记忆卡就是一种以NAND型快闪记忆体作为储存媒体的储存装置。由于记忆卡体积小容量大,所以已广泛用于个人重要资料的储存。
由于快闪记忆体的容量越来越大,因此使用者往往会通过档案系统将以快闪记忆体作为储存媒体的储存装置的可储存空间格式化为多个分割区(partition)以分别地使用。例如,将重要资料储存于其中一个分割区中并且将此分割区设定为写入保护模式(即,防写模式),以避免此重要资料被误删。然而,根据记忆卡(例如,安全数位(secure digital,SD)记忆卡、多媒体储存卡(MultiMedia Card,MMC))的规范,记忆卡是无法支援多分割区(即,记忆卡的储存空间无法划分为多个分割区来提供给主机系统存取)。基此,记忆卡的储存空间仅能被格式化成单一分割区并且以整个分割区为单位来设定为可写区或防写区。
由此,使用者经常需在记忆卡仅储存少量的资料下将记忆卡设定为防写模式而浪费其他剩余的空间。例如,当导航机的制造商使用容量为16GB的记忆卡来作为资料量为2GB的导航软体与图资的储存媒体时,为了避免使用者误删此导航软体与图资,此记忆卡会在仅储存2GB的资料下被设定为防写模式。基此,此记忆卡的其他空间将无法再被使用。
发明内容
本发明提供一种资料存取方法,其能够将一个分割区中的部分储存位址设定为写入保护区,将另一部份储存位址设定为可写入区,并且在可写入区中新增目录或档案。
本发明提供一种记忆体控制器,其能够将非挥发性记忆体模组的一个分割区中的部分储存位址设定为写入保护区并且将另一部份储存位址设定为可写入区,并且在可写入区中新增目录或档案。
本发明提供一种记忆体储存系统,其记忆体控制器能够将非挥发性记忆体模组的一个分割区中的部分储存位址设定为写入保护区并且将另一部份储存位址设定为可写入区,并且在可写入区中新增目录或档案。
本发明一实施例提出一种资料存取方法,用于存取一非挥发性记忆体模组,其中此非挥发性记忆体模组具有多个实体区块。本资料存取方法包括将此些实体区块至少分组为一资料区、一备用区与一系统区;配置多个逻辑位址并且将此些逻辑位址分组为多个逻辑区块以映射资料区的实体区块,使用一档案系统将此些逻辑位址格式化为一个分割区。此外,此分割区具有一档案及对应该档案的一档案描述区块,并且此分割区具有至少一档案配置表以储存对应用于储存此档案描述区块的逻辑位址的登录值。本资料存取方法还包括根据档案配置表搜寻此登录值的一结束标记;将储存此结束标记的逻辑位址设定为预设型态位址;以及将储存在储存此结束标记的逻辑位址中的数值设定为对应此预设型态位址的预设值。
本发明另一实施例提出一种记忆体控制器,其包括记忆体介面、记忆体管理电路与主机介面。记忆体介面电性连接至记忆体管理电路,并且用于电性连接至上述非挥发性记忆体模组。主机介面电性连接至记忆体管理电路并且用于电性连接至主机系统。记忆体管理电路单元用于执行上述资料存取方法。
本发明再一实施例提出一种记忆体储存系统,其包括连接器、上述非挥发性记忆体模组与电性连接至此非挥发性记忆体模组的记忆体控制器。在此,此记忆体控制器用于执行上述资料存取方法。
在本发明的实施例中,每一上述实体区块具有多个实体页面并且此些实体页面可独立地被写入且同时地被抹除。
本发明又一实施例提出一种记忆体储存系统,其包括连接器、非挥发性记忆体模组与记忆体控制器。连接器用于电性连接至主机系统。记忆体模组具有资料区、备用区与系统区,并且此资料区、此备用区与此系统区分别地具有多个实体区块。记忆体控制器电性连接至连接器与非挥发性记忆体模组,用于配置多个逻辑位址并且将此些逻辑位址分组为多个逻辑区块以映射资料区的实体区块,其中此些逻辑位址被格式化为一分割区,此分割区至少具有一档案配置表区与一目录区。并且,此些逻辑位址包括一写入保护区与一可写入区,此档案配置表区具有对应目录区至少二个登录值,储存此二个登录值的其中一的逻辑位址属于写入保护区并且储存此二个登录值的其中另一的逻辑位址属于可写入区。在此,上述此二个登录值的其中另一为对应目录区的一结束标记。
基于上述,本发明的实施例能够在档案系统所划分的一个分割区中设定部分的储存位址为写入保护区、将其他部分的储存位址设定为可写入区并且在可写入区中新增目录或档案。
为让本发明上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1A为本发明实施例使用记忆体储存装置的主机系统;
图1B为本发明实施例电脑、输入/输出装置与记忆体储存装置的示意图;
图1C为根据本发明实施例主机系统与记忆体储存装置的示意图;
图2为图1A中记忆体储存装置的结构框图;
图3为本发明实施例记忆体控制器与记忆体晶片的结构框图;
图4与图5为本发明实施例管理记忆体晶片的示意图;
图6~图8为本发明实施例写入资料至记忆体晶片的示意图;
图9为本发明实施例以档案系统格式化记忆体模组之逻辑位址的示意图;
图10A与10B为本发明范例实施例档案配置表与档案描述区块的示意图;
图10C为本发明实施例档案配置表区的示意图;
图11A与11B为本发明实施例一将逻辑位址设定为属于写入保护区的示意图;
图12为本发明另一将逻辑位址设定为属于写入保护区的示意图;
图13为本发明实施例资料存取方法中设定写入保护区与预设型态位址的流程图;
图14为本发明实施例资料存取方法中执行写入或抹除指令的流程图;
图15为本发明实施例资料存取方法中执行读取指令的流程图。
主要附图标记说明
1000:主机系统; 1100:电脑;
1102:微处理器; 1104:随机存储器;
1106:输入/输出装置; 1108:系统汇流排;
1110:资料传输介面; 1112:主储存装置;
1200:作业系统; 1202:鼠标;
1204:键盘; 1206:显示器;
1208:打印机; 1212:随身碟;
1214:记忆卡; 1216:硬盘;
1310:数码相机; 1312:SD卡;
1314:MMC卡; 1316:记忆棒;
1318:CF卡; 1320:嵌入式储存装置;
100:记忆体储存装置; 102:连接器;
104:记忆体控制器; 106:记忆体模组;
304(0)~304(R):实体区块; 202:记忆体管理电路;
204:主机介面; 206:记忆体介面;
252:缓冲记忆体; 254:电源管理电路;
256:错误检查与校正电路; 402:资料区;
404:备用区; 406:系统区;
408:取代区; 510(0)~510(H):逻辑区块;
600(0)~600(W):丛集; 900:分割区;
902:主引导磁区; 904:档案配置区;
906:目录区; 908:档案区;
1002:档案配置表; 1002a:丛集索引栏位;
1002b:登录值栏位; 1004:档案描述区块;
1004a:档案名称栏位; 1004b:起始位址栏位;
700(0)~700(M+K):扇区;
S1301、S1303、S1305、S1307、S1309:资料存取方法的步骤;
S1401、S1403、S1405、S1407、S1409、S1411:资料存取方法的步骤;
S1501、S1503、S1505、S1507、S1509、S1511:资料存取方法的步骤。
具体实施方式
一般而言,记忆体储存装置(亦称,记忆体储存系统,)包括记忆体晶片与记忆体控制器(亦称,控制电路)。通常记忆体储存装置会与主机系统一起使用,以使主机系统可将资料写入至记忆体储存装置或从记忆体储存装置中读取资料。另外,亦有记忆体储存装置是包括嵌入式记忆体与可执行于主机系统上以实质地作为此嵌入式记忆体之控制器的软体。
图1A为本发明实施例使用记忆体储存装置的主机系统。图1B为本发明实施例电脑、输入/输出装置与记忆体储存装置的示意图。图1C为根据本发明实施例主机系统与记忆体储存装置的示意图。
请参照图1A,主机系统1000一般包括电脑1100与输入/输出(input/output,I/O)装置1106。电脑1100包括微处理器1102、随机存储器(random access memory,RAM)1104、系统汇流排1108、资料传输介面1110与主储存装置1112。输入/输出装置1106包括如图1B的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图1B所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其他装置。
在本发明实施例中,记忆体储存装置100是通过资料传输介面1110与主机系统1000的其他元件电性连接。通过微处理器1102、随机存储器1104、输入/输出装置1106与安装于主储存装置1112中作业系统1200的运作可将资料写入至记忆体储存装置100或从记忆体储存装置100中读取资料。例如,记忆体储存装置100可以是如图1B所示的随身碟1212、记忆卡1214或硬盘(Solid State Drive,SSD)1216等的非挥发性记忆体储存装置。
一般而言,主机系统1000可实质地为可储存资料的任意系统。虽然在本范例实施例中,主机系统1000是以电脑系统来作说明,然而,在本发明另一范例实施例中主机系统1000可以是数码相机、摄影机、通信装置、音讯播放器或视讯播放器等系统。例如,在主机系统为数码相机(摄影机)1310时,记忆体储存装置则为其所使用的SD卡1312、MMC卡1314、记忆棒(memory stick)1316、CF卡1318或嵌入式储存装置1320(如图1C所示)。嵌入式储存装置1320包括嵌入式多媒体卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒体卡是直接电性连接于主机系统的基板上。
图2为图1A中记忆体储存装置的结构框图。请参照图2,记忆体储存装置100包括连接器102、记忆体控制器104与记忆体模组106。
在本范例实施例中,连接器102为安全数位(secure digital,SD)介面连接器。然而,必须了解的是,本发明不限于此,连接器102亦可以是通用序列汇流排(Universal Serial Bus,USB)连接器、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394连接器、高速周边零件连接介面(Peripheral ComponentInterconnect Express,PCI Express)连接器、序列先进附件(SerialAdvanced Technology Attachment,SATA)连接器、记忆棒(Memory Stick,MS)介面连接器、多媒体储存卡(Multi Media Card,MMC)介面连接器、小型快闪(Compact Flash,CF)介面连接器、整合式驱动电子介面(Integrated Device Electronics,IDE)连接器或其他适合的连接器。
记忆体控制器104用于执行以硬体型式或韧体型式实作的多个逻辑闸或控制指令,并且根据主机系统1000的指令在记忆体模组106中进行资料的写入、读取与抹除等运作。特别是,记忆体控制器104用于执行根据本范例实施例的资料存取方法与记忆体管理方法。
记忆体模组106是电性连接至记忆体控制器104,并且用于储存主机系统1000所写入的资料。记忆体模组106包括实体区块304(0)~304(R)。各实体区块分别具有复数个页面,其中属于于同一个实体区块的实体页面可被独立地写入且被同时地抹除。更详细来说,实体区块为抹除的最小单位。亦即,每一实体区块含有最小数目之一并被抹除的记忆胞。实体页面为程式化的最小单元。即,实体页面为写入资料的最小单元。
在本范例实施例中,记忆体模组106为可复写式非挥发性记忆体。例如,记忆体模组106为多层记忆胞(Multi Level Cell,MLC)NAND快闪记忆体模组。然而,本发明不限于此,记忆体模组106亦可是单层记忆胞(Single Level Cell,SLC)NAND快闪记忆体模组、其他快闪记忆体模组或其他具有相同特性的记忆体模组。
图3为本发明实施例记忆体控制器与记忆体晶片的结构框图。请参照图3,记忆体控制器104包括记忆体管理电路202、主机介面204与记忆体介面206。
记忆体管理电路202用于控制记忆体控制器104的整体运作。具体来说,记忆体管理电路202具有多个控制指令,并且在记忆体储存装置100运作时,此些控制指令会被执行以根据本范例实施例的资料存取方法与记忆体管理方法来管理记忆体模组106。此资料存取方法与记忆体管理方法将于以下配合图式作详细说明。
在本范例实施例中,记忆体管理电路202的控制指令是以韧体型式来实作。例如,记忆体管理电路202具有微处理器单元(未绘示)与唯读记忆体(未绘示),并且此些控制指令是被烧录至此唯读记忆体中。当记忆体储存装置100运作时,此些控制指令会由微处理器单元来执行以完成根据本发明实施例的资料存取方法与记忆体管理方法。
在本发明另一范例实施例中,记忆体管理电路202的控制指令亦可以程式码型式储存于记忆体模组106的特定区域(例如,记忆体晶片中专用于存放系统资料的系统区)中。此外,记忆体管理电路202具有微处理器单元(未绘示)、唯读记忆体(未绘示)及随机存储器(未绘示)。特别是,此唯读记忆体具有驱动码段,并且当记忆体控制器104被致能时,微处理器单元会先执行此驱动码段来将储存于记忆体模组106中的控制指令载入至记忆体管理电路202的随机存储器中。之后,微处理器单元会运转此些控制指令以执行本发明范例实施例的资料存取方法与记忆体管理方法。此外,在本发明另一范例实施例中,记忆体管理电路202的控制指令亦可以一硬体型式来实作。
主机介面204是电性连接至记忆体管理电路202并且用于接收与识别主机系统1000所传送的指令与资料。也就是说,主机系统1000所传送的指令与资料会通过主机介面204来传送至记忆体管理电路202。在本范例实施例中,主机介面204是对应连接器102为SD介面。然而,必须了解的是本发明不限于此,主机介面204亦可以是PATA介面、USB介面、IEEE 1394介面、PCI Express介面、SATA介面、MS介面、MMC介面、CF介面、IDE介面或其他适合的资料传输介面。
记忆体介面206是电性连接至记忆体管理电路202并且用于存取记忆体模组106。也就是说,欲写入至记忆体模组106的资料会经由记忆体介面206转换为记忆体模组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会根据此错误检查与校正码对所读取的资料执行错误校正程序。
图4与图5为本发明实施例管理记忆体晶片的示意图。必须了解的是,在此描述记忆体模组106实体区块的运作时,以“提取”、“交换”、“分组”、“轮替”等词来操作实体区块是逻辑上的概念。也就是说,记忆体模组106之实体区块的实际位置并未更动,而是逻辑上对记忆体模组106的实体区块进行操作。
请参照图4,记忆体管理电路202会将记忆体模组106的实体区块304(0)~304(R)逻辑地分组为资料区402、备用区404、系统区406与取代区408。
资料区402与备用区404的实体区块是用于储存来自于主机系统1000的资料。具体来说,资料区402是已储存资料的实体区块,而备用区404的实体区块是用于替换资料区402的实体区块。因此,备用区404的实体区块为空或可使用的实体区块,即无记录资料或标记为已没用的无效资料。也就是说,在备用区中的实体区块已被执行抹除运作,或者当备用区中的实体区块被提取用于储存资料之前所提取的实体区块会被执行抹除运作。因此,备用区的实体区块为可被使用的实体区块。
逻辑上属于系统区406的实体区块是用于记录系统资料,其中此系统资料包括关于记忆体晶片的制造商与型号、记忆体晶片的实体区块数、每一实体区块的实体页面数等。
逻辑上属于取代区408中的实体区块是替代实体区块。例如,记忆体模组106于出厂时会预留4%的实体区块作为更换使用。也就是说,当资料区402、备用区404与系统区406中的实体区块损毁时,预留于取代区408中的实体区块是用于取代损坏的实体区块(即,坏实体区块(badblock))。因此,倘若取代区408中仍存有正常的实体区块且发生实体区块损毁时,记忆体管理电路202会从取代区408中提取正常的实体区块来更换损毁的实体区块。倘若取代区408中无正常的实体区块且发生实体区块损毁时,则记忆体管理电路202会将整个记忆体储存装置100宣告为写入保护(write protect)状态,而无法再写入资料。
特别是,资料区402、备用区404、系统区406与取代区408的实体区块的数量会根据不同的记忆体规格而有所不同。此外,必须了解的是,在记忆体储存装置100的运作中,实体区块关联至资料区402、备用区404、系统区406与取代区408的分组关系会动态地变动。例如,当备用区中的实体区块损坏而被取代区的实体区块取代时,则原本取代区的实体区块会被关联至储存区。
请参照图5,如上所述,资料区402与备用区404的实体区块是以轮替方式来储存主机系统1000所写入的资料。在本范例实施例中,记忆体管理电路202会配置逻辑位址给主机系统1000以利于在以上述轮替方式来储存资料的实体区块中进行资料存取。特别是,记忆体管理电路202会将所提供的逻辑位址分组为逻辑区块510(0)~510(H),并且将逻辑区块510(0)~510(H)映射至资料区402的实体区块。例如,当记忆体储存装置100被作业系统1200以档案系统(例如,FAT 32)格式化时,逻辑区块510(0)~510(H)分别地映射至资料区402的实体区块304(0)~304(D)。也就是说,一个逻辑区块会映射资料区402中的一个实体区块。在此,记忆体管理电路202会建立逻辑区块-实体区块映射表(logical block-physical block mapping table),以记录逻辑区块与实体区块之间的映射关系。
图6~图8为本发明实施例写入资料至记忆体晶片的示意图。请同时参照图6~图8,例如,在逻辑区块510(0)是映射至实体区块304(0)的映射状态下,当记忆体控制器104从主机系统1000中接收到写入指令而欲写入资料至属于逻辑区块510(0)的逻辑位址时,记忆体管理电路202会根据逻辑区块-实体区块映射表识别逻辑区块510(0)目前是映射至实体区块304(0)并且从备用区404中提取实体区块304(D+1)作为替换实体区块来轮替实体区块304(0)。然而,当记忆体管理电路202将新资料写入至实体区块304(D+1)的同时,记忆体管理电路202不会立刻将实体区块304(0)中的所有有效资料搬移至实体区块304(D+1)而抹除实体区块304(0)。具体来说,记忆体管理电路202会将实体区块304(0)中欲写入实体页面之前的有效资料(即,实体区块304(0)的第0实体页面与第1实体页面中的资料)复制至实体区块304(D+1)的第0实体页面与第1实体页面中(如图6所示),并且将新资料写入至实体区块304(D+1)的第2实体页面与第3实体页面中(如图7所示)。此时,记忆体管理电路202即完成写入的运作。因为实体区块304(0)中的有效资料有可能在下个操作(例如,写入指令)中变成无效,因此立刻将实体区块304(0)中的有效资料搬移至实体区块304(D+1)可能会造成无谓的搬移。此外,资料必须依序地写入至实体区块内的实体页面,因此,记忆体管理电路202仅会先搬移欲写入实体页面之前的有效资料。
在本范例实施例中,暂时地维持此等母子暂态关系(即,实体区块304(0)与实体区块304(D+1))的运作称为开启(open)母子区块,并且原实体区块称为母实体区块而替换实体区块称为子实体区块。
之后,当需要将实体区块304(0)与实体区块304(D+1)的内容真正合并时,记忆体管理电路202才会将实体区块304(0)与实体区块304(D+1)的资料整并至一个实体区块,由此提升实体区块的使用效率。在此,合并母子区块的运作称为关闭(close)母子区块。例如,如图8所示,当进行关闭母子区块时,记忆体管理电路202会将实体区块304(0)中剩余的有效资料(即,实体区块304(0)的第4实体页面~第(K)实体页面中的资料)复制至替换实体区块304(D+1)的的第4实体页面~第(K)实体页面中,然后将实体区块304(0)抹除并关联至备用区404,同时,将实体区块304(D+1)关联至资料区402。也就是说,记忆体管理电路202会在逻辑区块-实体区块映射表中将逻辑区块510(0)重新映射至304(D+1)。此外,在本范例实施例中,记忆体管理电路202会建立备用区实体区块表(未绘示)来记录目前被关联至备用区的实体区块。值得一提的是,在开启母子区块时记忆体管理电路202需使用更多缓冲记忆体252的储存空间来储存管理变数,以记录更详细的储存状态。例如,此些管理变数会记录属于逻辑区块510(0)的有效资料被分散地储存在实体区块304(0)与实体区块304(D+1)的哪些实体页面中(如图7所示)。基此,在记忆体储存装置100运作期间,母子区块的组数是有限的。因此,当记忆体储存装置100接收到来自于主机系统1000的写入指令时,倘若已开启母子区块的组数达到上限时,记忆体管理电路202需关闭至少一组目前已开启的母子区块(即,执行关闭母子区块运作)以执行此写入指令。
图9为本发明实施例以档案系统格式化记忆体模组之逻辑位址的示意图。在本范例实施例中,主机系统1000的作业系统1200使用档案系统将逻辑区块510(0)~510(H)的逻辑位址格式化成一个分割区(partition)900(如图9所示)。分割区900包括主引导磁区902、档案配置表区904、目录区906与档案区908。
属于主引导磁区902的储存位址是用于储存记忆体储存装置100的可储存空间的系统资讯。
属于档案配置表区904的储存位址是用于储存档案配置表。档案配置表是用于记录储存档案的逻辑位址的登录值。例如,档案配置表区中会储存两个档案配置表,其中一个档案配置表为正常存取所使用,而另一个档案配置表为备份档案配置表。
属于目录区906的储存位址是用于储存档案描述区块(FileDescription Block,FDB),其用于记录目前储存于记忆体储存装置100中的档案与目录的属性资讯。特别是,档案描述区块会记录用于储存此些档案的起始储存位址(即,起始丛集)。
属于档案区908的储存位址是用于实际地储存档案的内容。
在本范例实施例中,一个逻辑位址的大小为一个扇区(sector)。在主引导磁区902、档案配置表区904与目录区906中是以扇区为存取单位。
具体来说,磁碟储存最小单位为扇区,每一个扇区包含了512位元组(byte)的资讯内容。然而,使用扇区当单位来储存时,主机系统1000的效率会很差。一般来说,主机系统1000的作业系统1200不会以一个扇区当作存取档案的单位,而是以丛集为一基本档案单位。每一个丛集是架构在扇区的2次方倍数上。假定连续的8个扇区构成一个丛集,则此丛集的大小就为4096位元组。基此,在作业系统1200在存取资料时会以8个扇区连续读取而提升了相对效率。但,丛集并非越大越好。因为当丛集越大时相对的可能会浪费许多储存空间。例如,在一个丛集为4千位元组(kilobyte,KB)的情况下,当主机系统1000所储存的档案内容只有1KB时,此档案还是占用掉一个丛集的空间,剩余3KB的储存空间就浪费掉了。特别是,丛集的总数目会受限于记忆体模组106的容量与档案配置表型态而有所不同。以FAT16来说,根据定义其本身最大的丛集数目必须介于4048个~65526个之间,所以当格式化一张128MB的记忆卡,其每一个丛集至少必须要包含4个扇区,不然会超出65526个cluster的限制(127,901,696/512/4=62,452clusters)。所以每一丛集的大小为2KB。类似地,在FAT32中,最大的丛集数目必须介于65526个~4177918个之间。值得一提的是,在FAT16中,目录区906的大小是固定的。而在FAT32中,目录区906会被放在档案区908来一起管理。
例如,在本范例实施例中,分割区(partition)900是符合FAT32规范的分割区。因此,属于目录区906与档案区908的扇区会被分组为丛集(cluster)600(0)~600(W)。在此假设丛集600(0)是被配置为目录区906的起始丛集。
图10A与10B为本发明范例实施例档案配置表与档案描述区块的示意图。
请参照图10A,在此范例中档案配置表1002的丛集索引栏位1002a与登录值(entry value)栏位1002b依序地记录每一丛集对应的登录值,其中记录于登录值栏位1002b中的登录值是以特殊字元来表示所对应丛集的状态。例如,在FAT32中,“0000000h”表示此丛集为闲置逻辑位址(即,未储存资料),“FFFFFF8h”-“FFFFFFFh”表示此丛集为储存档案的最后一个逻辑位址等。在此,“FFFFFF8h”-“FFFFFFFh”亦称为结束标记(End Of Clusterchain Mark,EOC Mark)
请参照图10B,档案描述区块1004的档案名称栏位1004a与起始位址栏位1004b是用于记录在记忆体储存装置100中所储存的档案的档案名称及储存此档案的起始逻辑位址。必须了解的是,档案描述区块1004仅为一范例,实际上档案描述区块1004还包括档案长度等其他属性栏位来描述所储存档案的资讯。
请同时参照图10A与图10B,从档案描述区块1004中的空间资讯可以得知,记忆体储存装置100中储存有“f1.exe”与“f2.dll”两个档案,其中储存“f1.exe”的起始逻辑位址为丛集600(1)而储存“f2.dll”的起始逻辑位址为丛集600(4)。此外,从档案配置表1002中的登录值还可得知“f1.exe”的内容是依序地被储存在丛集600(1)、丛集600(2)与丛集600(3)中,并且“f2.dll”的内容是被储存在丛集600(4)中。
此外,值得一提的是,在FAT 32中,由于目录区906是与档案区908一起管理。因此,属于目录区906的丛集是可被动态地扩充以记录更多档案描述区块,而使得记忆体储存装置100可储存档案数量不受限制。具体来说,在档案配置表1002中会记录目录区的起始丛集对应的下一个登录值。例如,如图10A所示,当记忆体储存装置100被格式化时,丛集600(0)是目录区的起始丛集并且丛集600(0)的登录值为“FFFFFFFh”。也就是说,目前档案描述区块1004仅由丛集600(0)所储存。之后,当丛集600(0)的储存空间已被填满时,作业系统1200会根据档案配置表1002从档案区908中选择一个空的丛集来继续存放新增的档案描述区块1004并且在档案配置表1002中将丛集600(0)的登录值更新为所选择的丛集。
图10C为本发明实施例档案配置表区的示意图。请同时参照图10A与图10C,档案配置表区904包括扇区700(M)~扇区700(M+K)。扇区700(M)的前2个登录值(即,前8个位元组)会被保留并记录为″F8hFFhFFh0Fh″与″FFhFFhFFh0Fh″。第2个登录值为″FFFFFFFh″以对应丛集600(0)。第3个登录值为″600(2)″以对应丛集600(1)。第4个登录值为″600(3)″以对应丛集600(2)。第5个登录值为″FFFFFFFh″以对应丛集600(3)。第6个登录值为″FFFFFFFh″以对应丛集600(4)。第7个登录值为″0000000h″以对应丛集600(5)。以此类推,对应丛集600(0)~600(W)都会被记录在档案配置表区904的扇区中。
在本范例实施例中,记忆体控制器104会根据档案配置表1002将分割区900的逻辑区块的逻辑位址(即,扇区)划分为第一部分与第二部分。
特别是,当主机系统1000写入资料至第一部分的逻辑区块时,记忆体控制器104不会将资料写入至此逻辑区块所映射的实体区块中并且不会传送错误讯息给主机系统。具体来说,主机系统1000会接收到表示指令已被完成的确认讯息,但实际上资料未被写入至记忆体模组106的实体区块中。
此外,当主机系统1000写入资料至第二部分的逻辑区块时,记忆体控制器104会根据写入指令将资料写入至此逻辑区块所映射的实体区块中。
也就是说,在作业系统1200根据档案系统所格式化的分割区900中,第一部份的逻辑区块会被设定为属于写入保护区,且第二部分的逻辑区块会被设定为属于可写入区。
图11A与11B为本发明实施例一将逻辑位址设定为属于写入保护区的示意图。在此,假设记忆体储存装置100储存“f1.exe”与“f2.dll”两个档案并且使用者(例如,导航机的制造商)欲将用于储存“f1.exe”与“f2.dll”的储存空间设定为写入保护区。
请参照图11A,记忆体控制器104的记忆体管理电路202会根据档案系统中的资讯以扇区为单位来将部分的逻辑区块设定为属于写入保护区(如,斜线部分所示)。
具体来说,由于主引导磁区902储存用于识别分割区900的资讯,因此,记忆体管理电路202会将属于主引导磁区902的扇区700(0)~扇区700(M-1)设定为属于写入保护区。此外,记忆体管理电路202会将用于储存“f1.exe”的丛集600(1)~600(3)和用于储存“f2.dll”的丛集600(4)设定为属于写入保护区。再者,记忆体管理电路202会将档案配置表区904中用于储存关于丛集600(1)~600(4)的登录值的扇区700(M)设定为属于写入保护区,由此避免此些登录值被主机系统1000误删而无法读取“f1.exe”与“f2.dll”。另外,记忆体管理电路202会将在目录区906中已记录档案描述区块的扇区设定为属于写入保护区,以避免关于“f1.exe”与“f2.dll”的档案资讯被主机系统1000误删。例如,假设每一丛集是由2个扇区所构成并且在储存档案描述区块的丛集600(0)中用于已储存对应“f1.exe”与“f2.dll”的档案描述区块的扇区会被设定为属于写入保护区。
当主机系统1000写入资料至属于写入保护区的逻辑位址(如图11A的斜线所示)时,记忆体管理电路202不会将资料写入至此逻辑位址所映射的实体区块的实体页面中并且不会传送错误讯息给主机系统1000。也就是说,既使主机系统1000一再写入资料至属于写入保护区的逻辑位址中,储存于属于写入保护区的逻辑位址中的资料都不会被改变。此外,当主机系统1000写入资料至非属于写入保护区(即,可写入区)的逻辑位址(如图11A的空白储存位址所示)时,记忆体管理电路202会将资料写入至此逻辑位址所映射的实体区块的实体页面中。
值得一提的是,为了能够在分割区900中新增档案或目录,在本范例实施例中,由于档案配置表区904的扇区700(M)需被设定为属于写入保护区,因此,在执行上述写入保护区的设定之前,多个虚拟档案会通过工具程式(未绘示)被储存至档案配置表1002的第7个登录值~第127个登录值所对应的丛集(例如,丛集600(5)~丛集600(125)),由此避免作业系统1200使用丛集600(5)~丛集600(125)来储存资料。例如,此些虚拟档案会被设定为隐藏档,以避免主机系统1000显示此些虚拟档。
此外,请参照图11B,为了使目录区906能够继续被扩充以储存所新增的档案的档案描述区块,在执行上述写入保护区的设定之前,在档案配置表1002中用于记录对应目录区906的结束标记的储存位址会被搜寻(即,档案配置表1002的第2个登录值),在档案区908的一个空丛集(例如,丛集600(126))会被作为下一个储存档案描述区块的丛集,并且此丛集的位址会被写入至原先用于记录对应目录区906的结束标记的储存位址中。特别是,在档案配置表1002中对应丛集600(126)的登录值会被写入″FFFFFFFh″,以表示此丛集为目录区906的最后一个丛集。基此,目录区906的最后一个丛集不会被设定在写入保护区,而能够继续被写入资料。然而,在本发明另一范例实施例中,在档案配置表1002中记录对应目录区906的结束标记的储存位址(即,储存第2登录值的储存位址)亦可直接设定在写入保护区(扇区700(M))外,而直接地被设为上述预设型态位址。基此,目录区906的最后一个丛集不会被设定在写入保护区,而能够继续被写入资料。
在本范例实施例中,上述新增虚拟档以及重新设定目录区906的最后一个丛集的运作是通过工具程式(未绘示)来执行。
值得一提的是,在本范例实施例中,记忆体管理电路202会根据档案配置表1002搜寻对应用于储存档案描述区块的逻辑位址的登录值,将用于储存此登录值的结束标记的逻辑位址标记为预设型态位址并且将此逻辑位址上的数值标记为对应此预设型态位址的预设值。在本范例实施例中,此预设值为″FFFFFFFh″,但本发明并不限于此,并且在本发明另一范例实施例中,此预设值可以是任何用于代表结束标记的值。在本范例实施例中,丛集600(0)是目录区的起始丛集并且丛集600(101)亦是目录区的结束丛集。因此,记忆体管理电路202会在档案配置表1002中识别出记录对应丛集600(101)的登录值的储存位址并且将记录对应丛集600(101)的登录值的储存位址标记为预设型态位址。
在本范例实施例中,当主机系统1000对被设定为预设型态位址的逻辑位址下达写入指令或抹除指令时,记忆体管理电路202会根据主机系统1000的指令来更新储存于此逻辑位址所映射的实体区块的实体页面中的值。此外,当主机系统1000对被设定为预设型态位址的逻辑位址下达读取指令时,记忆体管理电路202会判断目前储存于此预设型态位址中的数值是否为空白值。在本范例实施例中,空白值是指实体区块被执行抹除运作之后,记忆胞中所储存的值。在此,空白值会根据不同的快闪记忆体模组而有所不同。例如,空白值可以是″0×FF″或″0×00″。当目前储存于此预设型态位址中的数值为空白值时,记忆体管理电路202会将此预设型态位址所对应的预设值传送给主机系统1000。反之,当目前储存于此预设型态位址中的数值不为空白值时,记忆体管理电路202会将此数值传送给主机系统1000。
也就是说,在档案配置表1002中用于储存对应档案描述区块的结束标记的储存位址会被标记为预设型态位址,并且此逻辑位址中的值具有可修改性与可恢复性。因此,主机系统1000的作业系统1200可于分割区900的可写入区中写入新档案与档案描述区块,并且在档案配置表区中更新对应用于储存档案描述区块的储存位址的登录值与结束标记。基于上述,记忆体管理电路202可在分割区900的可写入区中储存新档案,同时防止写入保护区中的档案被删除。
例如,在本发明范例实施例中,记忆体管理电路202会将关于上述预设型态位址与其对应的预设值的资讯储存于系统区406的实体区块中或者此些资讯亦可以直接写在记忆体控制器104的韧体码中。
值得一提的是,在本范例实施例中,记忆体管理电路202会根据主机系统1000所读取的逻辑位址来判断是否传送预设值给主机系统1000。也就是说,记忆体管理电路202是在执行读取指令时,判断是否提供预设值给主机系统1000。然而,本发明不限于此。在本发明另一范例实施例中,记忆体管理电路202亦可在执行写入指令时,判断是否实际地写入资料至实体区块的实体页面中。例如,当主机系统1000对被设定为预设型态位址的逻辑位址下达写入指令或抹除指令时,记忆体管理电路202会判断欲写入的资料是否为空白值。并且,倘若欲写入的资料为空白值时,则记忆体管理电路202不会更新此逻辑位址所映射的实体区块的实体页面中的值。反之,倘若欲写入的资料不为空白值时,记忆体管理电路202会根据主机系统1000的指令更新此逻辑位址所映射的实体区块的实体页面中的值。也就是说,欲写入的资料为空白值表示主机系统1000欲执行抹除运作,因此记忆体管理电路202不允许储存于预设型态位址中的资料被抹除。而欲写入的资料不为空白值表示主机系统1000欲执行新增档案的运作,因此记忆体管理电路202允许储存于预设型态位址中的资料被更新。之后,当主机系统1000下达读取指令时,则记忆体管理电路202会将所读取的值传送给主机系统1000。
值得一提的是,在本发明范例实施例中,在执行上述写入保护区的设定之前,在档案配置表1002中记录对应目录区906的结束标记的储存位址会被调整(如图11B所示)。然而,在本发明另一范例实施例中,在档案配置表1002中记录对应目录区906的结束标记的储存位址(即,储存第2登录值的储存位址)亦可不被调整,而直接地被设为上述的预设型态位址。基此,既使在扇区700(M)被设定为属于写入保护区下,记忆体管理电路202仍可根据上述运作来修改或回复用于储存第2登录值的储存位址中的数值。
在本发明范例实施例中,记忆体管理电路202是以扇区为单元来设定记忆体模组106的哪些逻辑位址是属于写入保护区。但本发明不限于此,在本发明另一范例实施例中,记忆体管理电路202亦可以位元组为单位来设定记忆体模组106的哪些逻辑位址是属于写入保护区。
图12为本发明另一将逻辑位址设定为属于写入保护区的示意图。其中写入保护区是以位元组为单位来被设定。
请参照图12,类似地,由于主引导磁区902储存用于识别分割区900的资讯,因此,记忆体管理电路202会将属于主引导磁区902的扇区700(0)~扇区700(M-1)设定为属于写入保护区。此外,记忆体管理电路202会将用于储存“f1.exe”的丛集600(1)~600(3)和用于储存“f2.dll”的丛集600(4)设定为属于写入保护区。再者,记忆体管理电路202会将档案配置表区904中用于储存前2个登录值(如图10C所示的第0个登录值与第1个登录值)的储存位址和用于储存关于丛集600(1)~600(4)的登录值(如图10C所示的第2个登录值~第6个登录值)的储存位址设定为属于写入保护区,由此避免此些登录值被主机系统1000误删而无法读取“f1.exe”与“f 2.dll”。另外,记忆体管理电路202会将在目录区906中已记录档案描述区块的储存位址扇区设定为属于写入保护区,以避免关于“f1.exe”与“f2.dll”的档案资讯被主机系统1000误删。例如,假设每一丛集是由2个扇区所构成并且在储存档案描述区块的丛集600(0)中用于已储存对应“f1.exe”与“f2.dll”的档案描述区块的扇区会被设定为属于写入保护区。此外,在目录区906假设丛集600(0)的第4位元组~第19位元组记录了对应“f1.exe”与“f2.dll”的登录值,则记忆体管理电路202会将丛集600(0)的第4位元组~第19位元组设定为属于写入保护区。另外,记忆体管理电路202会将在目录区的丛集中已记录档案描述区块的逻辑位址(如图11A中丛集600(0)的斜线部分所示)设定为属于写入保护区,以避免关于“f1.exe”与“f2.dll”的档案资讯被主机系统1000误删。
值得一提的是,主机系统1000是以扇区为单位来写入资料,因此记忆体管理电路202会解析主机系统1000所写入的逻辑位址中哪些位元组已被设定为属于写入保护区。
图13为本发明实施例资料存取方法中设定写入保护区与预设型态位址的流程图。请参照图13,在步骤S1301中,记忆体管理电路202将实体区块304(0)~304(R)分组为资料区402、备用区404、系统区406与取代区408。然后,在步骤S 1303中记忆体管理电路202会配置多个逻辑位址并且将逻辑位址分组为多个逻辑区块以映射资料区402的实体区块。
之后,在步骤S1305中主机系统1000的作业系统1200会使用档案系统将逻辑位址格式化为一个分割区,在档案区的逻辑位址中储存档案与对应此档案的档案描述区块,并且在档案配置表的逻辑位址中储存对应储存此档案描述区块的逻辑位址的登录值。在此,当作业系统1200于逻辑位址中写入资料时,记忆体管理电路202会如图6~图8所示的运作将资料实际地写入至实体区块中。
接着,在步骤S1307中,记忆体管理电路202会根据档案配置表1002分别地将逻辑位址设定为属于写入保护区或可写入区(如图11所示)。
然后,在步骤S1309中,记忆体管理电路202会根据档案配置表1002搜寻对应目录区的结束标记,将储存此结束标记的逻辑位址设定为预设型态位址,并且将储存于此逻辑位址中的数值设定为对应此预设型态位址的预设值。例如,记忆体管理电路202会将关于预设型态位址与其预设值的资讯写入至系统区406的实体区块中。
图14为本发明实施例资料存取方法中执行写入或抹除指令的流程图。参照图14,在步骤S1401中记忆体管理电路202从主机系统1000中接收写入指令(或抹除指令)与对应的资料。
接着,在步骤S1403中记忆体管理电路202会判断所接收的写入指令(或抹除指令)对应的逻辑位址是否属于资料保护区。具体来说,记忆体管理电路202会根据图13所述的设定来判断主机系统1000是否欲写入资料至属于写入保护区的逻辑位址中。
倘若所接收的写入指令(或抹除指令)对应的逻辑位址非属于资料保护区时,则在步骤S1405中记忆体管理电路202会将所接收的资料写入至此逻辑位址所映射的实体区块的实体页面中。
倘若所接收的写入指令(或抹除指令)对应的逻辑位址属于资料保护区时,则在步骤S1407中记忆体管理电路202会判断所接收的写入指令(或抹除指令)对应的逻辑位址是否为预设型态位址。具体来说,记忆体管理电路202会根据图13所述的设定来判断主机系统1000是否欲写入资料至预设型态位址中。例如,记忆体管理电路202通过比对储存于系统区406中的关于预设型态位址与其预设值的资讯来判断欲写入的逻辑位址是否属于预设型态位址。
倘若所接收的写入指令(或抹除指令)对应的逻辑位址非为预设型态位址时,则在步骤S1409中记忆体管理电路202不会将所接收的资料写入至此逻辑位址所映射的实体区块的实体页面中并且不会传送错误讯息给主机系统1000。具体来说,记忆体管理电路202会在未实际地执行写入动作下而回应确认讯息给主机系统1000,以表示已完成写入指令。也就是说,记忆体管理电路202不会回应失败讯息。
倘若所接收的写入指令(或抹除指令)对应的逻辑位址为预设型态位址时,则在步骤S1411中记忆体管理电路202会将所接收的资料写入至此逻辑位址所映射的实体区块的实体页面中。
图15为本发明实施例资料存取方法中执行读取指令的流程图。请参照图15,在步骤S1501中记忆体管理电路202从主机系统1000中接收读取指令。
接着,在步骤S1503中记忆体管理电路202会从对应此读取指令的逻辑位址所映射的实体区块的实体页面中读取资料。
然后,在步骤S1505中记忆体管理电路202会判断所接收的读取指令所对应的逻辑位址是否为预设型态位址。具体来说,记忆体管理电路202会根据图13所述的设定来判断主机系统1000是否欲读取预设型态位址中的资料。例如,记忆体管理电路202通过比对储存于系统区406中的关于预设型态位址与其预设值的资讯来判断欲读取的逻辑位址是否属于预设型态位址。
倘若所接收的读取指令所对应的逻辑位址非为预设型态位址时,则在步骤S1507中记忆体管理电路202会将在步骤S 1503中所读取的资料传送给主机系统1000。
倘若所接收的读取指令所对应的逻辑位址为预设型态位址时,则在步骤S1509中记忆体管理电路202会判断在步骤S1503中所读取的资料是否为空白值。
倘若所读取的资料不为空白值时,则在步骤S1507会被执行。
倘若所读取的资料为空白值时,则在步骤S1511中记忆体管理电路202会将对应此逻辑位址的预设值传送给主机系统1000。
综上所述,本发明范例实施例的资料存取方法将部分储存位址设定为预设型态位址并记录其预设值,由此使得此预设型态位址具有可修改性与可恢复性。此外,通过将属于档案配置表区的逻辑位址设定预设型态位址,本发明范例实施例的资料存取方法能够在档案系统所划分的一个分割区中将部分的储存位址设定为写入保护区并且另一部份的储存位址设定为可写入区。基此,本发明范例实施例的资料存取方法能够使得一张记忆卡能够同时具有写入保护区与可写入区,由此储存于记忆卡的重要档案可有效地被保护。
虽然本发明已以实施例揭露如上,然其并非用于限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明之精神和范围内,当可作些许之更动与润饰,故本发明的保护范围当视后附之申请专利范围所界定者为准。
Claims (21)
1.一种资料存取方法,用于存取一非挥发性记忆体模组,其特征在于,该非挥发性记忆体模组具有多个实体区块,该资料存取方法包括:
将所述多个实体区块至少分组为一资料区、一备用区与一系统区;
配置多个逻辑位址并且将所述多个逻辑位址分组为多个逻辑区块以映射该资料区的实体区块;
使用一档案系统将所述多个逻辑位址格式化为一个分割区,该分割区具有一档案及对应该档案的一档案描述区块,并且该分割区具有至少一档案配置表以储存对应用于储存该档案描述区块的逻辑位址的至少一登录值;
根据该档案配置表搜寻该至少一登录值中的一结束标记;
将储存该档案配置表的逻辑位址中储存该结束标记的至少一逻辑位址设定为至少一预设型态位址;以及
将储存在储存该结束标记的该至少一逻辑位址中的至少一数值设定为对应该至少一预设型态位址的至少一预设值。
2.根据权利要求1所述的资料存取方法,其特征在于,还包括:
在该系统区的实体区块中储存关于该至少一预设型态位址与该至少一预设值的资讯。
3.根据权利要求1所述的资料存取方法,其特征在于,还包括:
从一主机系统中接收对应该至少一预设型态位址的一读取指令;
判断储存于该至少一预设型态位址中的数值是否为一空白值;
当储存于该至少一预设型态位址中的数值为该空白值时,传送对应该至少一预设型态位址的该至少一预设值给该主机系统;以及
当储存于该预设型态位址中的数值不为该空白值时,传送储存于该至少一预设型态位址中的数值给该主机系统。
4.根据权利要求1所述的资料存取方法,其特征在于,还包括:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为一第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为一第二部分;
当一该主机系统中接收对应该第一部份的逻辑位址的一第一写入指令与对应该第一写入指令的至少一第一资料时,判断该第一写入指令所欲写入的逻辑位址是否对应该至少一预设型态位址,
其中当该第一写入指令所欲写入的逻辑位址为对应该至少一预设型态位址时,将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中,
其中当该第一写入指令所欲写入的逻辑位址非对应该至少一预设型态位址时,不将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统。
5.根据权利要求4所述的资料存取方法,其特征在于,还包括:
当从该主机系统中接收对应该第二部份的逻辑位址的一第二写入指令与对应该第二写入指令的至少一第二资料时,将该至少一第二资料写入至该第二写入指令所欲写入的逻辑位址中。
6.根据权利要求1所述的资料存取方法,其特征在于,还包括:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分;
在所述多个逻辑位址中写入至少一虚拟档案;以及
以一扇区为单位将所述多个逻辑位址之中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分。
7.根据权利要求1所述的资料存取方法,其特征在于,还包括:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分;以及
以一位元组为单位将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分。
8.根据权利要求1所述的资料存取方法,其特征在于,在该档案区中储存该档案的储存位址为连续的。
9.根据权利要求1所述的资料存取方法,其特征在于,还包括:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为一第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为一第二部分;
当从一主机系统中接收对应该第一部份的逻辑位址的一第一写入指令与对应该第一写入指令的至少一第一资料时,判断该第一写入指令所欲写入的逻辑位址是否对应该至少一预设型态位址,
其中当该第一写入指令所欲写入的逻辑位址为对应该至少一预设型态位址时,判断该至少第一资料是否为一空白值,
其中当该至少一第一资料非为该空白值时,将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中,
其中当该至少一第一资料为该空白值时,不将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统,
其中当该第一写入指令所欲写入的逻辑位址非对应该至少一预设型态位址时,不将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统。
10.一种记忆体控制器,用于管理一非挥发性记忆体模组,其特征在于,该非挥发性记忆体模组具有多个实体区块,该记忆体控制器包括:
一主机介面,用于电性连接至一主机系统;
一记忆体介面,用于电性连接至该非挥发性记忆体模组;以及
一记忆体管理电路,电性连接至该主机介面与该记忆体介面,其中该记忆体管理电路用于执行至少下列程序:
将所述多个实体区块至少分组为一资料区、一备用区与一系统区;
配置多个逻辑位址并且将所述多个逻辑位址分组为多个逻辑区块以映射该资料区的实体区块;
使用一档案系统将所述多个逻辑位址格式化为一个分割区,该分割区具有一档案及对应该档案的一档案描述区块,并且该分割区具有至少一档案配置表以储存对应用于储存该档案描述区块的逻辑位址的至少一登录值;
根据该档案配置表搜寻该至少一登录值中的一结束标记;
将储存该档案配置表的逻辑位址中储存该结束标记的至少一逻辑位址设定为至少一预设型态位址;
将储存在储存该结束标记的该至少一逻辑位址中的至少一数值设定为对应该至少一预设型态位址的至少一预设值;
在该系统区的实体区块中储存关于该至少一预设型态位址与该至少一预设值的资讯;以及
当从一主机系统中接收对应该至少一预设型态位址的一读取指令时,从该系统区的实体区块中读取对应该至少一预设型态位址的该至少一预设值并传送给该主机系统。
11.根据权利要求10所述的记忆体控制器,其特征在于,该记忆体管理电路所执行的当从该主机系统中接收对应该至少一预设型态位址的该读取指令时,从该系统区的实体区块中读取对应该至少一预设型态位址的该至少一预设值并传送给该主机系统的程序包括:
判断储存于该至少一预设型态位址中的数值是否为一空白值;
当储存于该至少一预设型态位址中的数值为该空白值时,传送对应该至少一预设型态位址的该至少一预设值给该主机系统;以及
当储存于该预设型态位址中的数值不为该空白值时,传送储存于该至少一预设型态位址中的数值给该主机系统。
12.根据权利要求10所述的记忆体控制器,其特征在于,该记忆体管理电路还用于执行下列程序:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为一第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为一第二部分;
当从该主机系统中接收对应该第一部份的逻辑位址的一第一写入指令与对应该第一写入指令的至少一第一资料时,判断该第一写入指令所欲写入的逻辑位址是否对应该至少一预设型态位址,
其中当该第一写入指令所欲写入的逻辑位址为对应该至少一预设型态位址时,将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中,
其中当该第一写入指令所欲写入的逻辑位址非对应该至少一预设型态位址时,将不写入该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统。
13.根据权利要求12所述的记忆体控制器,其特征在于,该记忆体管理电路还用于当从该主机系统中接收对应该第二部份的逻辑位址的一第二写入指令与对应该第二写入指令的至少一第二资料时,将该至少一第二资料写入至该第二写入指令所欲写入的逻辑位址中。
14.根据权利要求10所述的记忆体控制器,其特征在于,该记忆体管理电路还用于执行下列程序:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为一第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为一第二部分;
当从该主机系统中接收对应该第一部份的逻辑位址的一第一写入指令与对应该第一写入指令的至少一第一资料时,判断该第一写入指令所欲写入的逻辑位址是否对应该至少一预设型态位址,
其中当该第一写入指令所欲写入的逻辑位址为对应该至少一预设型态位址时,判断该至少第一资料是否为一空白值,
其中当该至少一第一资料非为该空白值时,将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中,
其中当该至少一第一资料为该空白值时,不将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统,
其中当该第一写入指令所欲写入的逻辑位址非对应该至少一预设型态位址时,不将该至少一第一资料写入至该第一写入指令所欲写入的逻辑位址中且不传送一错误讯息给该主机系统。
15.一种记忆体储存系统,其特征在于,包括:
一连接器,用于电性连接至一主机系统;
一非挥发性记忆体模组,多个实体区块;以及
一记忆体控制器,电性连接至该连接器与该非挥发性记忆体模组,并且用于执行至少下列程序:
将所述多个实体区块至少分组为一资料区、一备用区与一系统区;
配置多个逻辑位址并且将所述多个逻辑位址分组为多个逻辑区块以映射该资料区的实体区块;
使用一档案系统将所述多个逻辑位址格式化为一个分割区,该分割区具有一档案及对应该档案的一档案描述区块,并且该分割区具有至少一档案配置表以储存对应用于储存该档案描述区块的逻辑位址的至少一登录值;
将该档案配置表的逻辑位址中储存一结束标记的至少一逻辑位址设定为至少一预设型态位址;
将储存在储存该结束标记的该至少一逻辑位址中的至少一数值设定为对应该至少一预设型态位址的至少一预设值;
当从一主机系统中接收对应该至少一预设型态位址的一读取指令时,判断储存于该至少一预设型态位址中的数值是否为一空白值;
当储存于该至少一预设型态位址中的数值为该空白值时,传送对应该至少一预设型态位址的该至少一预设值给该主机系统;以及
当储存于该预设型态位址中的数值不为该空白值时,传送储存于该至少一预设型态位址中的数值给该主机系统。
16.根据权利要求15所述的记忆体储存系统,其特征在于,该记忆体控制器还用于在该系统区的实体区块中储存关于该至少一预设型态位址与该至少一预设值的资讯。
17.根据权利要求15所述的记忆体储存系统,其特征在于,该记忆体控制器还用于执行下列程序:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分;
在所述多个逻辑位址所对应的所述多个实体区块中写入至少一虚拟档案;以及
以一扇区为单位将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分。
18.根据权利要求15所述的记忆体储存系统,其特征在于,该记忆体控制器还用于执行下列程序:
将该分割区中的所述多个逻辑位址至少划分为一主引导磁区、一档案配置表区与一档案区;
将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分;
以一位元组为单位将所述多个逻辑位址中储存该主引导磁区、该档案、该档案描述区块与该至少一登录值的逻辑位址分组为该第一部份并且将所述多个逻辑位址中的其他逻辑位址分组为该第二部分。
19.根据权利要求18所述的记忆体储存系统,其特征在于,在该档案区中储存该档案的储存位址为连续的。
20.根据权利要求15所述的非挥发性记忆体储存系统,其特征在于,每一实体区块具有多个实体页面并且所述多个实体页面可独立地被写入且同时地被抹除。
21.一种记忆体储存系统,其特征在于,包括:
一连接器,用于电性连接至一主机系统;
一非挥发性记忆体模组,具有一资料区、一备用区与一系统区,并且该资料区、该备用区与该系统区分别地具有多个实体区块;以及
一记忆体控制器,电性连接至该连接器与该非挥发性记忆体模组,用于配置多个逻辑位址并且将所述多个逻辑位址分组为多个逻辑区块以映射该资料区的实体区块,其中所述多个逻辑位址被格式化为一分割区,该分割区至少具有一档案配置表区与一目录区,
其中所述多个逻辑位址包括一写入保护区与一可写入区,
其中该档案配置表区具有对应该目录区至少二个登录值,储存该至少二个登录值的其中之一的逻辑位址属于该写入保护区并且储存该至少二个登录值的其中另一的逻辑位址属于该可写入区,
其中该至少二个登录值的其中另一为对应该目录区的一结束标记。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010138302.7A CN102200946B (zh) | 2010-03-22 | 2010-03-22 | 资料存取方法、记忆体控制器与储存系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010138302.7A CN102200946B (zh) | 2010-03-22 | 2010-03-22 | 资料存取方法、记忆体控制器与储存系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102200946A true CN102200946A (zh) | 2011-09-28 |
CN102200946B CN102200946B (zh) | 2014-11-19 |
Family
ID=44661636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010138302.7A Active CN102200946B (zh) | 2010-03-22 | 2010-03-22 | 资料存取方法、记忆体控制器与储存系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102200946B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455444A (zh) * | 2012-05-30 | 2013-12-18 | 群联电子股份有限公司 | 文件保护方法与系统及其存储器控制器与存储器存储装置 |
CN105094690A (zh) * | 2014-05-09 | 2015-11-25 | 纬创资通股份有限公司 | 储存丛集化系统与提供对丛集式储存的存取的方法 |
CN103870209B (zh) * | 2012-12-18 | 2016-12-28 | 群联电子股份有限公司 | 工作模式切换方法、存储器控制器与存储器储存装置 |
TWI638263B (zh) * | 2017-07-26 | 2018-10-11 | 大陸商深圳大心電子科技有限公司 | 資料備份方法、資料恢復方法以及儲存控制器 |
CN110597454A (zh) * | 2018-06-13 | 2019-12-20 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI561981B (en) * | 2015-12-14 | 2016-12-11 | Phison Electronics Corp | Data reading method, memory control circuit unit and memory storage apparatus |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271432A (zh) * | 2007-03-19 | 2008-09-24 | 亮发科技股份有限公司 | 快闪记忆装置及其控制方法 |
CN101510168A (zh) * | 2008-11-07 | 2009-08-19 | 慧帝科技(深圳)有限公司 | 一种快闪记忆体的存取方法和记忆体装置 |
US20100017559A1 (en) * | 2008-04-11 | 2010-01-21 | Richard Matthew Fruin | Memory device operable in read-only and write-once, read-many (WORM) modes of operation |
-
2010
- 2010-03-22 CN CN201010138302.7A patent/CN102200946B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271432A (zh) * | 2007-03-19 | 2008-09-24 | 亮发科技股份有限公司 | 快闪记忆装置及其控制方法 |
US20100017559A1 (en) * | 2008-04-11 | 2010-01-21 | Richard Matthew Fruin | Memory device operable in read-only and write-once, read-many (WORM) modes of operation |
CN101510168A (zh) * | 2008-11-07 | 2009-08-19 | 慧帝科技(深圳)有限公司 | 一种快闪记忆体的存取方法和记忆体装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455444A (zh) * | 2012-05-30 | 2013-12-18 | 群联电子股份有限公司 | 文件保护方法与系统及其存储器控制器与存储器存储装置 |
CN103455444B (zh) * | 2012-05-30 | 2016-04-20 | 群联电子股份有限公司 | 文件保护方法与系统及其存储器控制器与存储器存储装置 |
CN103870209B (zh) * | 2012-12-18 | 2016-12-28 | 群联电子股份有限公司 | 工作模式切换方法、存储器控制器与存储器储存装置 |
CN105094690A (zh) * | 2014-05-09 | 2015-11-25 | 纬创资通股份有限公司 | 储存丛集化系统与提供对丛集式储存的存取的方法 |
TWI638263B (zh) * | 2017-07-26 | 2018-10-11 | 大陸商深圳大心電子科技有限公司 | 資料備份方法、資料恢復方法以及儲存控制器 |
CN110597454A (zh) * | 2018-06-13 | 2019-12-20 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
CN110597454B (zh) * | 2018-06-13 | 2022-09-13 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102200946B (zh) | 2014-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI425355B (zh) | 資料存取方法、記憶體控制器與儲存系統 | |
US8312554B2 (en) | Method of hiding file at data protecting mode for non-volatile memory module, memory controller and portable memory storage apparatus | |
US8230160B2 (en) | Flash memory storage system and flash memory controller and data processing method thereof | |
CN104679437B (zh) | 数据写入方法、存储器控制电路单元与存储器储存装置 | |
CN103377143B (zh) | 存储器管理方法、存储器控制器与存储器存储装置 | |
CN102053796A (zh) | 闪存储存系统、闪存控制器与数据处理方法 | |
US9389998B2 (en) | Memory formatting method, memory controller, and memory storage apparatus | |
CN102200946B (zh) | 资料存取方法、记忆体控制器与储存系统 | |
CN106469122A (zh) | 有效数据合并方法、存储器控制器与存储器储存装置 | |
CN102890655B (zh) | 存储器储存装置、其存储器控制器与有效数据识别方法 | |
CN103593296B (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
CN102968385B (zh) | 数据写入方法、存储器控制器与储存装置 | |
CN103136111A (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102446137B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102375781B (zh) | 数据保护方法、存储器控制器及可携式存储器储存装置 | |
CN105988950A (zh) | 存储器管理方法、存储器控制电路单元与存储器存储装置 | |
CN103389941B (zh) | 存储器格式化方法、存储器控制器及存储器存储装置 | |
CN102467460B (zh) | 资料管理方法、存储器控制器与存储器储存装置 | |
CN102467459B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN103019952B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102650971B (zh) | 存储器管理方法、存储器控制器与存储器储存装置 | |
CN102110056B (zh) | 闪存管理方法、闪存控制器与闪存存储系统 | |
CN102736985B (zh) | 数据合并方法、控制器与储存装置 | |
CN102779551B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102043724A (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 |