CN101019098A - 格式化非易失性半导体存储器的文件存储装置、主机设备、方法,以及在非易失性半导体存储器中写数据的方法 - Google Patents

格式化非易失性半导体存储器的文件存储装置、主机设备、方法,以及在非易失性半导体存储器中写数据的方法 Download PDF

Info

Publication number
CN101019098A
CN101019098A CNA2005800309989A CN200580030998A CN101019098A CN 101019098 A CN101019098 A CN 101019098A CN A2005800309989 A CNA2005800309989 A CN A2005800309989A CN 200580030998 A CN200580030998 A CN 200580030998A CN 101019098 A CN101019098 A CN 101019098A
Authority
CN
China
Prior art keywords
write
semiconductor memory
nonvolatile semiconductor
information
size
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.)
Pending
Application number
CNA2005800309989A
Other languages
English (en)
Inventor
伊藤隆文
坂本广幸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of CN101019098A publication Critical patent/CN101019098A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Static Random-Access Memory (AREA)

Abstract

一种文件存储装置,包括由主机设备的文件系统存取的非易失性半导体存储器。所述非易失性半导体存储器具有用户数据区域。所述用户数据区域可由所述文件系统存取。装置信息指示所述非易失性半导体存储器是非易失性半导体存储器并且被写入所述用户数据区域。

Description

格式化非易失性半导体存储器的文件存储装置、 主机设备、方法,以及在非易失性 半导体存储器中写数据的方法
相关申请的交叉引用
本申请基于并要求2004年9月15日提交的在先日本专利申请No.2004-268723的优先权利益,其全部内容在此结合作为参考。
技术领域
本发明涉及控制非易失性半导体存储器的方法,特别是涉及控制具有预定大小的将要擦除的块的非易失性半导体存储器的方法。
背景技术
已经存在使用利用闪存(flash memory)(非易失性半导体存储器)的存储器卡作为音乐数据或视频数据的记录介质。分配数据到可记录区域而无论可记录区域的地址如何的FAT文件系统被用作存储器卡的文件系统。日本专利申请KOKAI公开No.7-141479公开了FAT文件系统被采用在用于闪存的文件系统中。
NAND flashTM存储器可以典型地用作在存储器卡中使用的闪存的例子。在NAND flashTM存储器中,数据仅可以以块单位为基础被擦除。由此,为了仅仅重写存储在块中的数据的一部分,需要将新的写数据写入一个新擦除的块并将不要重写的数据从包含旧数据(其将被改变为新数据)的旧块拷贝到该新块。这种处理称为“移动伴随写(涉及数据拷贝)”。移动伴随写(move accompanying write)包含拷贝不要重写的数据的操作。结果,频繁的移动伴随写操作急剧增大了开销。
在FAT文件系统中,在每次文件的簇数据被重写时发生FAT数据的重写。因此,当采用FAT文件系统用于文件管理NAND flashTM存储器时,每次簇数据被重写时,发生移动写,并且文件重写速度降低。
发明内容
根据本发明的第一方面,提供一种文件存储装置,其包括可由主机设备的文件系统存取的非易失性半导体存储器,该非易失性半导体存储器具有可由该文件系统存取的用户数据区域,并且在用户数据区域中写入了指示该非易失性半导体存储器为非易失性半导体存储器的装置信息。
根据本发明的第二方面,提供一种主机设备,在该主机设备中插入了具有其数据通过擦除块擦除的非易失性半导体存储器的文件存储装置,该非易失性半导体存储器装置具有可由管理该非易失性半导体存储器的数据的文件系统存取的用户数据区域,该主机设备根据该文件系统逻辑格式化该非易失性半导体存储器,从该文件存储装置读取擦除块的大小的信息、以及在逻辑格式化期间将指示该擦除块的大小的块大小信息写入该用户数据区域。
根据本发明的第三方面,提供一种格式化非易失性半导体存储器的方法,其中数据通过写页面写入并通过擦除块擦除,并且其具有可由文件系统存取的用户数据区域,该方法包括:从该非易失性半导体存储器读取该擦除块的大小信息;以及根据该文件系统将指示该擦除块的大小的块大小信息写入该用户数据区域中。
根据本发明的第四方面,提供一种在非易失性半导体存储器中写数据的方法,其中数据通过包括写入区域的擦除块擦除,并且其中存储了指示该擦除块的大小的擦除块大小信息,该方法包括:读取该擦除块大小信息;以及根据该擦除块大小信息将数据写入在写入区域中。
附图说明
图1是用示意图示意根据本发明的实施例安装于存储器卡中的装置的配置的透视图;
图2是示意根据本发明的实施例包括主机设备和存储器卡的构成的框图;
图3是示意根据本发明的实施例的闪存的数据排列的图解;
图4是示意根据本发明的实施例的BPB中的参数的图解;
图5是示意根据本发明的实施例当主机格式化存储器卡时的时刻的操作的流程图;
图6是示意根据本发明的实施例的文件的写处理过程的流程图;
图7是示意根据本发明的实施例的写处理过程的流程图;
图8是示意根据本发明的实施例的恢复处理过程的流程图;
图9是示意存储装置的区域划分的概要,以及当从主机设备端看时存储装置内部的存储区域划分的图解;
图10是示意根据本发明的实施例的数据移动的解释性视图;
图11是示意根据本发明的实施例的性能曲线的图解;
图12是示意根据本发明的实施例在实时记录期间文件系统更新的实例的图解;以及
图13是示意根据本发明的实施例有关存储器区域的AU分类的实例的图解。
具体实施方式
在下文中将参考附图描述本发明的实施例。
[1]配置
图1是用示意图示意根据本发明的实施例安装于存储器卡中的装置的配置的透视图。
存储器卡1具有印刷电路板(PCB)2,并且在PCB 2上排列有NAND型闪存3和控制器4。诸如中央处理单元(CPU)8的功能块和只读存储器(ROM)9安装在控制器4之内。后面将详细描述这些装置。
NAND型闪存(下面称为闪存)3可以是在一个存储单元内存储1位信息的二进制存储器或者是在一个存储单元内存储2位或多位信息的多值存储器。对照图1中所示的例子,闪存3和控制器4可以排列在同一个大规模集成电路(LSI)基片之上。
图2是示意包括主机和存储器卡的配置的框图。图1和图2公共的元素由相同的参考数字表示。
主机(下面称为主机)20包括用于执行对插入的存储器卡1的存取的硬件和软件(系统)。
当连接到主机20时,存储器卡1被提供电源以相应来自主机20的存取操作和执行处理。存储器卡1具有之前描述的NAND型闪存3和控制器4。
闪存3是一个非易失性半导体存储器,对于其每个擦除单元(块)的大小指定为256kB,并且其例如每16-kB进行写入和读取。闪存3是利用例如0.09-μm过程技术制造的。也就是说,对于闪存3的设计规则小于0.1μm。
控制器4具有用于管理闪存3的内部物理状态(闪存3中的物理地址和扇区地址数据的序号或者什么块处于擦除状态)的功能。除了CPU 8和ROM 9之外,在控制器4中还安装有存储器接口部分5、主机接口部分6、缓冲区7、以及随机存取存储器(RAM)10。
存储器接口部分5在控制器4和闪存3之间执行接口处理。主机接口部分6在控制器4和主机20之间执行接口处理。
缓冲区7在当通过主机20传送的数据被写到闪存3以及当从闪存3读出的数据被传送到主机20时临时存储固定数量的数据(例如,一页)。
CPU 8负责整个存储器卡1的操作。当例如存储器卡1加电时,CPU 8加载存储在ROM 9中的固件(后面描述的控制程序)到RAM10中以执行预定的处理。根据控制程序,CPU 8在RAM 10上创建各种表格(后面描述)并从主机20接收写命令、读命令、以及擦除命令以在闪存3之上执行预定的处理或者通过缓冲区7控制数据转移处理。
ROM 9存储例如由CPU 8控制的控制程序。RAM 10用作CPU8的工作区域以存储控制程序和各种表格。
图3是示意闪存(即,存储器卡1中的NAND型闪存)和数据排列的图解。闪存3内的每个页面(记录单元区域)具有2112B(512B的数据存储部分×4+10B的冗余部分×4+24B的管理数据存储部分)。一个擦除单元(即,256kB+8kB)由128个页面组成。为方便起见,在下面的描述中闪存的擦除单元为256kB。
此外,闪存3具有用于从闪存3输入和输出数据到闪存3的页缓冲区。页缓冲区具有2112B(2048B+64B)的存储容量。在数据写操作或者类似的操作期间,页缓冲区以一个页面单位从闪存输入数据或者输出数据到闪存,这对应于页面存储器的存储容量。
为了提供实际有效的存储器卡,期望图3所示的闪存3具有至少1Gbit的存储容量。如果闪存3具有例如1Gbit的存储容量,其具有512个256-kB块。
尽管图3示意擦除单元是256-kB块,构成擦除单位为例如16-kB的闪存在现实意义上是有效的。在此情况下,每个页面有528B(512B的输出存储部分+16B的冗余部分)。一个擦除单元(即,16kB+0.5kB(k为1024))相应于32个页面。
其中写入了数据的闪存的区域根据所保存的数据被分类为各区域。闪存3具有用户数据区域24、管理数据区域21、机密数据区域22、以及受保护数据区域23作为数据被写入的区域。
用户数据区域24是主机20中的文件系统可以自由存取和存储用户数据的区域。
受保护数据区域23存储重要的数据并且仅当主机20通过了存储器卡1和连接到存储器卡1的主机20之间的相互验证时才可存取。
管理数据区域21主要存储诸如安全性信息和介质ID的关于存储器卡1的管理信息和存储器卡1的卡信息。
机密数据区域22是保存用于密码计算的密钥信息和用于身份验证的机密数据的区域,并且其可以通过主机20存取。
当主机20格式化存储装置(存储器卡1等)的存储介质(闪存3等)时,主机20(文件系统)写入存储介质的物理参数(属性)作为BIOS参数块(BPB)的一部分。BPB是用于管理的数据,其被写入存储介质的引导扇区并由文件系统使用。文件系统在引导时读取BPB,并且识别存储介质的各参数。在图2所示的存储器卡1中,BPB被写入用户数据区域24的引导扇区24a中。
图4示意了根据本发明的一个实施例的BPB中的参数。图4示出了当文件系统为FAT 32时的BPB。作为BPB,写入了以下参数:OEM名称,扇区大小,扇区号/簇,保留扇区号,FAT的数量,介质描述符,扇区号/FAT,扇区号/道,头号,隐藏扇区号,总的大扇区号,大扇区号/FAT,扩展标志,文件系统版本,路由的第一个簇,文件系统信息扇区位置,备份引导扇区位置,驱动器ID,扩展引导符号,序列号,卷名称,文件系统类型,快速设备标志(flash device flag:FDF),擦除块大小(EBS),写页面大小,记录单元(RU)大小,分配单元(AU)大小,写性能Pw,以及数据移动性能Pm。
传统的BPB中并不写入快速设备标志、擦除块大小、写页面大小、RU大小、AU大小、写性能Pw、以及数据移动性能Pm。快速设备标志指示存储参数的存储介质是否是具有擦除块和写页面大小的闪存装置。例如,当快速设备标志为“0”,则指示存储介质不是闪存装置(软盘(注册商标)、硬盘等)。当快速设备标志为“1”,则指示存储介质是具有擦除块和写页面大小的闪存装置。
当存储介质为闪存装置时,擦除块大小例如通过512 B示出了擦除块的大小。在使用擦除块大小为512kB的NAND flashTM存储器的SDTM存储器卡中,这个字段的值为1024。
当存储介质为闪存装置时,写页面大小例如通过512B示出了页面大小。在使用页面大小为2kB的NAND flashTM存储器的SDTM存储器卡中,这个字段的值为4。
后面将描述RU大小、AU大小、写性能Pw、以及数据移动性能Pm的定义。
[2]当主机格式化存储器卡时的操作
当主机20格式化存储器卡时的一个操作将参考图5来描述。
当存储器卡1被插入到主机20的一个插槽中,主机20识别到存储器卡1已被插入(步骤ST101)。
接着,主机20从存储器卡1读出FAT文件系统使用的管理数据(步骤ST102)。如果没有读出用于该FAT文件系统的管理数据,即,闪存3尚未格式化,则主机20在部署在主机20内的显示器内显示一个指示是否格式化闪存3的选择对话框(步骤ST103)。当用户选择了格式化闪存3时,主机20开始格式化闪存3。注意,即使当闪存2已被格式化了,用户也能够命令主机20格式化存储器。
接着,主机20保护闪存3的用户数据区域34中的引导扇区、目录区域、FAT区域、以及数据区域的安全(步骤ST104)。
接着,主机20写引导扇区中的BPB(步骤ST105)。执行与传统技术相同的操作以获取以下参数:OEM名称、扇区大小、扇区号/簇、保留扇区号、FAT的数量、介质描述符、扇区号/FAT、扇区号/道、头号、隐藏扇区号、总的大扇区号、大扇区号/FAT、扩展标志、文件系统版本、路由的第一个簇、文件系统信息扇区位置、备份引导扇区位置、驱动器ID、扩展引导符号、序列号、卷名称、以及文件系统类型。
现在将描述获取快速设备标志(FDF)、擦除块大小(EBS)、写页面大小、写性能Pw、以及数据移动性能Pm等参数的方法。
主机20发送获取存储器卡1中的闪存3的信息的命令到存储器卡1。这个命令根据在当存储器卡1为SDTM存储器卡时的标准被准备。
当主机从存储器卡1接收到闪存3的信息,主机20从所接收到的信息得到擦除块大小、写页面大小、写性能Pw、以及数据移动性能Pm等的信息。主机20使用所获取的信息以写入擦除块大小、写页面大小、写性能Pw、以及数据移动性能Pm作为引导扇区内的BPB的一部分。
如果存储装置不支持任何命令以发送擦除块大小、存储器的写页面大小、写性能Pw、以及数据移动性能Pm到主机20,则格式化软件的用户手动设置这些值到主机20,然后格式化软件设置这些值到BPB。
现在将描述如何设置RU大小和AU大小的参数。RU和AU是主机20用于闪存3之上执行管理(诸如写入数据)的思想。因此,RU和AU的大小已经在主机20设置了并且主机20知道这些值。当其格式化闪存3时主机20设置这些值到BPB。
[3]文件写操作
文件写处理将参考图6描述。
主机20查阅BPB的快速设备标志(FDF),并检查存储介质是否为快速设备(步骤ST201)。
当存储介质不是快速设备时,主机20(主机20中的文件系统软件)以通常的软盘(注册商标)或硬盘中的相同方式执行随机写处理而无需考虑擦除块大小或类似的参数(步骤ST202)。
当存储介质是闪存时,主机20以下述的方法执行文件写入。
主机20获取BPB的擦除块大小和写页面大小的信息(步骤ST203)。
主机20根据BPB告知的擦除块大小搜索FAT以查找不包含任何使用过的簇的块(干净块)(步骤ST204)。
在优先分配文件数据到干净块的同时主机20执行文件写(步骤ST205)。在写期间,文件系统优选以与BPB内描述的写页面大小同样大小的整数倍的数据大小写文件数据。因此,可以防止文件系统在擦除块中随机页面写,并且改进了数据写速度。
[4]使得能够恢复的文件写操作
接下来,将描述当在FAT文件系统中未完成实时写入流文件时使得能够恢复文件的写入方法和恢复方法。
主机20在文件写期间以下述的过程写文件。写处理的过程将参考图7的流程图描述。
主机20基于BPB中登记的擦除块大小和FAT从仅包含连续的干净块的区域搜索最大的一个(最大连续区域)(步骤ST301)。
当所搜索的最大连续区域的大小足够大以用于写入流文件时,确定将流文件写入到该最大连续区域中,并且此外预先写入用于将要写入的流文件的临时(tentative)FAT(步骤ST302)。
如果最大连续区域的大小不足以写入流文件,则可以改变转换表以使得空白区域的逻辑地址连续以便保证用于写流文件的区域的安全。
主机20从较低地址扇区到较高地址扇区连续写入文件实体(步骤ST303)。在写期间,没有FAT被更新。这可以防止伴随FAT更新的写速度下降。在写入时刻,存储器卡1在页面中的冗余区域内记录下指示数据已经在该页面中写入的标志。
当实时流写入结束(步骤ST304),文件大小被确定(步骤ST305)。临时FAT基于所确定的文件大小被重写并且关闭写文件(步骤ST306)。
当由于某种类型或者其它因素的原因(硬件故障等)文件写未完成时,即,当最终FAT的写入未完成,主机20以下述过程恢复文件。恢复处理的过程将参考图8描述。
根据临时FAT识别文件实体的簇的起始位置(步骤ST311)。
主机20根据已写/未写标志识别已写入区域的最后位置(步骤ST312)。
主机确定从簇起始位置到在步骤ST312中识别的最后写位置的范围的区域作为恢复文件的大小(步骤ST313)。
临时FAT基于所确定的文件大小被更新到正式的FAT(步骤ST314)。
根据上述的写处理和恢复处理,即使由于主机设备的硬件故障或者类似的原因而没有完成实时流文件写入(诸如通过摄像机进行动态图片照相),并且文件结构变得不完全,文件也能够恢复到至少一个所记录的位置。
注意,在步骤ST301之前可能执行碎片整理过程以保证用于写流文件的连续区域。当执行了碎片整理过程时,可以改进写控制的效率。
[5]性能参数
主机20中的文件系统可以利用RU大小、AU大小、写性能Pw、以及数据移动性能Pm来计算文件写参数。现在将描述这些性能参数和利用这些性能参数的计算。SDTM存储器卡将被描述作为存储器卡1的例子。
[5-1]性能曲线的定义
[5-1-1]存储区域的划分
首先,下面将解释通过主机20和存储器卡1的存储区域的划分。因为这是解释用于指定性能参数的性能曲线所需要的。
主机20将存储区域划分为称为16kB记录单元(RU)的单元以便为每个RU写入诸如视频数据的数据。特别地,RU(写单元区域)等同于通过一次多块写命令写入的单元。
例如,RU同由SDTM文件系统定义的簇一样,或者具有该簇的整数倍的大小。RU的单元可以设置为32 kB、64 kB、128 kB等。
图9示出了通过主机20假定的闪存3的存储区域的划分,以及通过存储器卡1的存储区域的实际划分。图9的左侧对应于通过主机20假定的存储区域的划分。另一方面,图9的右侧对应通过存储器卡1的存储区域的实际划分。
如由图9可看出,当从主机20的视角看RU 32是存储单元。分配单元(AU)31被定义为几个RU 32的集合。AU(管理单元区域)是管理单元,并且被定义为用于将存储器卡1的所有存储区域划分为AU大小SAU的单元。
页面34和RU 32无需相互对应。RU 32可被设置为页面34的整数倍。同样地,AU大小SAU是RU大小的整数倍。AU 31可以设置为块33的整数倍。
[5-1-2]如何确定性能曲线
假定下述的情况作为例子,下面将参考图10描述性能曲线。也就是,主机20从存储区域中的位置A到位置B连续写RU单元数据。
典型地,从A到B的区域对应于AU 31。在下面的描述中,数据新写入到AU(包括已用RU 31作为例子)。如图10所示,AU 31的逻辑地址被设置为LA。当数据新被写入AU 31的每个RU 32时,下述的工作是实际需要的。首先,在现有物理块PAA中持有数据的RU 32(由图10中“已用”示意)的数据被写入另一个物理块PAB的RU 32中。接着,新的写入数据必须被写入到那里。于是,物理块PAB被最新映射到逻辑地址LA之上。
新写入数据到最初没有持有数据的RU 32(由图10中的“空闲”示意)的时间对应写入时间。写入时间定义为写性能Pw。
另一方面,当已经写入的数据被拷贝到另一个RU 32时,除了写入数据到新的物理块PAB的RU 32(例如,RU 32b)的时间之外还需要花费时间从旧的RU 32(例如,RU 32a)中读出数据。
当旧的物理块PAA中存在已用RU 32时,已用RU 32被跳过并且数据被写入到空闲的RU 32(例如,具有“数据3”的RU)。已用RU 32中的数据在新的数据被写入之前需要被写入到目标RU 32(例如,RU 32b)。在移动已用RU 32中的数据的时候新数据的写入停止。该操作所花费的时间定义为数据移动性能Pm。由此,用于写入新数据的总时间花费是总写入时间和总移动时间之和。
根据前面的解释,当以公式表示平均性能P(Nu)时,得到下述的数学表达式1。
[数学表达式1]
平均性能:P(Nu)
=[Sc×(Nt-Nu)]/[Sc×(Nt-Nu)]/Pw+Sc×Nu/Pm]
=[(Nt-Nu)×Pm×Pw]/[(Nt-Nu)×Pm+Nu×Pw]
其中:
Sc:RU的大小
Nt:从A到B连续写入的RU的总数(形成AU的RU的数量)
Nu:A和B之间已用RU的数量(包括在AU中的已用RU的数量)
Pw:写性能(单位:MB/sec)
Pm:移动性能(单位:MB/sec)
写性能Pw依赖于存储器卡1(闪存3)的程序时间变化。此外,写性能Pw定义为当对构成空闲RU 32的AU 31的所有RU 32连续执行写入时性能的平均的最低值。
移动性能Pm定义为平均移动性能的最低值。当连续的RU 32被移动以形成一个完整的AU 31时移动性能Pm被计算为平均值。移动时间在后端一侧定义。如果存储器卡1无需移动RU 32,则移动性能Pm被定义为无穷大。这被表示为“1/Pm=0”。
此外,除了闪存3的程序时间之外,移动性能Pm还依赖于后面描述的读时间和数据移动而变化。
当谈及读性能时定义下面的两个值:
1)相对于数据的读性能
相对于数据的读性能(下文中称为读性能)Pr定义为当通过RU32随机读取数据时性能的平均的最低值。该平均值可以基于RU 32的256次随机读取计算。此外,应考虑利用纠错码(ECC)相对于每个块33作出修正所花费的时间的最坏的情况。读性能Pr必须大于或者至少等于写性能Pw。
2)文件系统(FAT)的读时间
诸如文件分配表(FAT)的文件系统的读时间TFR(4kB)被定义为当读取4kB的FAT时的最大时间。在此情况下,在AU写期间FAT读必须是可能的。这是因为考虑到实时记录的情况,主机20在AU写入之间必须读出FAT。此外,应考虑利用ECC相对于每个块33作出修正所花费的时间的最坏的情况。相对于文件系统大小(FR大小)SFR的FAT读时间利用下面的CEIL函数表示。
相对于文件系统大小SFR[kB]的FAT读时间:TFR(SFR)
Figure A20058003099800161
Figure A20058003099800162
表示将小数x转换为大于或等于x的最小整数的CEIL函数。
图11示出了根据数学表达式1计算的存储器卡1的性能。在图11中,示出了当形成AU 31的RU 32的数量Nt被设置为16时的性能。
如由图11可看出,为每个已用RU比例r(横轴)确定性能(纵轴)。然后,连接每个已用RU比例r的性能,并由此获得一条性能曲线。
该性能曲线是利用写性能Pw和移动性能Pm指定的。写性能Pw等同于当已用RU比例r=0时的完整性能。
已用RU比例r利用AU 31的RU 32的数量Nt和已用RU 32的数量Nu表示为下述的数学表达式。
r=Nu/Nt
这个等式也可如下表示:
Nu=r×Nt
已用RU比例r在从0到1的范围内变化。当r=0,意味着所有的RU 32都是未使用的。另一方面,当r=1,意味着所有的RU 32都已用,即,性能为0;换句话说,给定了P(1)=0。
可以看出的是任何性能曲线都经过点(1,0)。当利用“r”重写数学表达式1时,获得下述的数学表达式2。
[数学表达式2]
平均性能曲线:P(r)
=[(1-r)×Pw×Pm]/[r×Pw+(1-r)×Pm]
其中,0≤r≤1
利用表达式3绘制性能,并且由此获得图11所示的性能曲线。
[5-2]与记录期间的文件系统更新有关的参数
文件系统更新被插入到写序列中,并由此一般(实际获得的)写性能降低。由于这个缘故,当如后面描述计算存储器卡1的性能时主机20需要有关文件系统更新的参数。主机20能够计算由于文件系统更新被插入到写序列的影响的实际性能降低。
图12示出了实时记录期间文件系统更新的典型序列。在下面的描述中,FAT被用作文件系统的典型例子。
文件系统(FAT)的更新可能发生在任何对RU 32的写入之后。FAT是周期性更新的。在特定的文件系统更新和下一次文件系统更新之间写入的RU 32的数量由文件系统更新周期TFU指定。在文件系统更新之间写入的RU 32的数量为Nd。
FAT写周期包括三个写操作。在图12中,FAT1和FAT2分别表示利用一个多块写命令对FAT1和FAT2的FAT信息写入。文件系统(FAT)写可从任意的字节地址开始,并且可被定义为从16 kB到任意长度范围的写入。
在图12中,DIR表示目录项。DIR在记录之前生成,并且仅对具有变化目录项的512B部分写入。文件系统写时间TFW定义为文件系统写周期的总时间,即,FAT1、FAT2和DIR的总的写时间。文件系统写时间TFW依赖于控制器4的规范而改变。
[5-2-1]测量平均文件系统写时间TFW的条件
文件系统写时间TFW被定义为从某些测量值的平均获得的值。下述的数学表达式3被用于指定平均文件系统写时间TFW(ave.)。如从下述的数学表达式3可看出,任意8次文件系统写周期的平均值的最坏值被用作平均文件系统写时间TFW(ave.)。
[数学表达式3]
平均文件系统写时间:(TFW(ave.))
=[max(TFW(1)+TFW(2)+...TFW(7)+TFW(8))]/8
[5-3]当执行实时记录时主机的操作序列和要求
[5-3-1]当执行实时记录时主机的操作序列
当执行实时记录时,主机20在利用性能曲线、类别和参数根据下述的序列执行计算时进行写操作。优选地,主机20在执行实时记录时完成下述序列。
(1)确定从包含在主机20中的应用请求的性能(下文中称为应用性能)Pa。
(2)选择文件系统更新之间写RU的适当数量Nd。
(3)考虑文件系统更新,确定实现应用性能Pa要求的卡性能Pc;
(4)确定最大已用RU比例r(Pc)。
(5)将AU 31分类为AUfast和AUslow
(6)估计可用的记录时间Trec
(7)调整在文件系统更新之间写入的RU的数量Nd。当在文件系统更新之间RU写入的数量Nd较大时,性能改进。
(8)当在这些计算之后未能获得足够的性能和足够的可用记录时间,则需要卡擦除。
下面将描述实现操作(1)到(8)的特定方法和主机20的要求。
[5-3-2]带文件系统更新的性能计算方法
实时记录中的典型的文件系统(FAT)更新周期序列如图12所示。最好是主机20执行文件系统更新中的序列。
[5-3-2-1]考虑文件系统更新的卡性能条件
主机20从应用性能Pa和平均文件系统写时间TFW确定满足Pa所要求的卡性能Pc。如上所述,文件系统写序列被插入,并且由此总的写性能恶化。因此,主机20需要给出总体上卡性能Pc高于应用性能Pa的卡。
应用性能Pa和满足Pa要求的卡性能Pc(下文中称为卡性能)分别由下述的数学表达式4和5表示。
[数学表达式4]
应用请求的性能:Pa
=(Sc×Nd)/(Sc×Nd/Pc+TFW)
[数学表达式5]
满足Pc所要求的卡性能Pc:
=(Sc×Nd×Pa)/(Sc×Nd-Pa×TFW)
卡性能Pc依赖于文件系统更新之间写RU的数量Nd而变化。如由图12可看出,文件系统更新之间写RU的数量Nd依赖于文件系统更新频率而变化。由此,文件系统更新的频率影响卡性能Pc。确定文件系统更新频率的方法将在下述的[5-3-2-2]中描述。
[5-3-2-2]文件系统更新周期的条件
文件系统(FAT)更新时间(从文件系统更新到下一次文件系统更新)是通过在数据传送中插入文件系统写序列决定的。因此,文件系统更新周期依赖于写速度;而时间精度并不重要。可采用一个简单的方法以便主机20只是计算文件系统更新周期。文件系统更新周期利用下述的数学表达式6表示。
[数学表达式6]
文件系统更新周期:TPF
=Sc×Nd/Pa
=Sc×Nd/Pc+TFW(ave.)
主机20可考虑由文件系统写导致的卡性能降低而调整在文件系统更新之间写入的RU的数量。在此情况下,文件系统更新周期TPF最好是1秒或1秒以上。
当选择了数量较大的RU时,卡性能Pc接近应用性能Pa。通过如此做,具有较低性能的存储器卡1能够满足应用性能Pa。
[5-3-3]分配单元(AU)的分类
主机20确定哪个AU 31可用于实时记录。换句话说,主机20确定每个AU 31是否满足所请求的卡性能Pc。每个AU 31的性能依赖于如由图11可看出的已用RU比例改变。因此,利用已用RU比例作为阈值确定每个AU 31。
[5-3-3-1]最大已用RU比例
如图10所示,如果写开始位置A和写结束位置B位于AU 31的边界,则利用数学表达式2计算AU 31的性能。
由此,能够从卡性能Pc导出最大已用RU比例r(Pc)作为数学表达式2的逆函数。
具有小于最大已用RU比例r(Pc)的已用RU比例r的AU 31是满足卡性能Pc的RU 31。AU 31的已用RU比例r越小,则越适合于实时记录。AU 31被使用最大已用RU比例r(Pc)作为边界分类为AUfast和AUslow,如上所述。
利用以下的数学表达式7表示最大已用RU比例r(Pc)。
[数学表达式7]
最大已用RU比例:r(Pc)
=[(Pw-Pc)×Pm]/[(Pw-Pm)×Pc+Pw×Pm]
[5-3-3-2]将AU分类为两类
主机20将AU 31分类为两类。一类是AUfast(自适应管理单元区域)。这种AU 31具有足以用卡性能Pc执行实时记录的速率。另一类是AUslow(非自适应管理单元区域)。这种AU 31不适合于实时记录,因为存储区域碎片太多。
主机20为每个AU 31计数已用RU的数量Nu,之后根据已用RU的数量Nu计算已用RU比例r。利用以下的数学表达式8确定AU是AUfast还是AUslow
[数学表达式8]
如果Nu/Nt<r(Pc),则AU为AUfast
如果Nu/Nt≥r(Pc),则AU为AUslow
具体来说,如果(已用RU的数量Nu)/(AU中RU总数Nt)小于最大已用RU比例r(Pc),则AU被分类为AUfast。另一方面,如果Nu/Nt等于或大于最大已用RU比例r(Pc),则AU被分类为AUslow
图13示出了AU 31在存储区域中的分配,并且示出了AU 31在两种存储区域中的分布。最上位置的AU 31包括文件系统;因此,其是不适合于实时记录的区域。因此,最上位置的AU 31被分类为AUslow。此外,不应在AU 31记录数据中创建目录项。
然而,AU1和AU4不包含文件系统;但是,由于(已用RU的数量Nu)/(AU中RU总数Nt)大于最大已用RU比例r(Pc),故可以确定它们的碎片太多。
[5-3-4]可用记录时间
主机20可以利用以下的数学表达式9计算实时记录的可用的时间。在该表达式中,Nr表示被确定为AUfast的所有AU 31的可用RU32的数量Nr。如果没有准备足够的可用记录时间,则主机20给予用户指令以将所记录数据转移到另一位置,或者重新格式化存储器卡19。
[数学表达式9]
可用记录时间:TREC
=Sc×Nr/Pa
主机20在设置文件系统更新之间的写RU的数量Nd时,即文件系统更新周期TPF较大时,再次计算可用记录时间。这是因为文件系统更新之间的RU的较大数量Nd改进了性能。换言之,最大已用RU比例r(Pc)增大,并且AUfast的数量增大;因此,可用记录时间增大。
擦除块大小不必是NAND flashTM存储器芯片的大小。即,可以使用一组大小作为单位。
BPB中的另一地址已经被分配给指示快速设备的标志,而指示介质类型的介质描述符(介质ID)的ID类型可以另行分配。
在本实施例中,诸如快速设备标志(FDF)、擦除块大小(EBS)、写页面大小、记录单元(RU)大小、分配单元(AU)大小、写性能Pw、以及数据移动性能Pm的参数被存储在FAT的BPB中。然而,本方法并不局限于该实施例。具体来说,这些参数可以在不同于FAT文件系统的文件系统(文件格式)中存储在除引导扇区的BPB以外的区域中。
上面已经描述了FAT文件系统的实例,但是本发明还可以应用于具有类似的文件存取系统的另一种文件系统。
应指出,在本实施例中上述的格式化处理和写处理中,可以由计算机执行的程序可存储并分布在诸如磁盘(软盘(注册商标)、硬盘等)、光盘(CD-ROM、DVD等)、磁光盘(MO)以及半导体存储器的存储介质中。
此外,该存储介质可以具有任意存储格式,只要该存储介质能够存储该程序而且能够被计算机读取。
此外,用于实现本实施例的每一处理的一部分可以基于从存储介质安装到计算机的程序的指令通过运行在计算机上的诸如操作系统(OS)的中间件(MW)、数据库管理软件或网络软件执行。
另外,存储介质并不局限于独立于计算机的介质,而且包括其中下载和存储或临时存储经由LAN、因特网等传输的程序的存储介质。
此外,存储介质的数量并不局限于一个,本实施例中的处理从多个介质执行的情形也包含在该存储介质中,而且介质构成也可以具有任意构成。
应指出,计算机基于存储介质中存储的程序执行本实施例中的每个处理,而且可以具有诸如由一个个人计算机等构成的装置、其中多个装置经由网络相连的系统等的任意构成。
此外,计算机并不局限于个人计算机,并且包括包含信息处理设备、微型计算机等的计算处理装置,而且可以根据程序实现本发明的功能的设备或装置通常被称为计算机。
本领域的技术人员很容易想到其它优点和修正。因此,本发明在其广义上并不局限于在此显示和描述的具体细节和代表性实施例。因此,可以不偏离由所附权利要求书和它们的等同物所限定的总发明概念的精神和范围进行各种修正。

Claims (19)

1.一种文件存储装置,包括由主机设备的文件系统存取的非易失性半导体存储器,所述非易失性半导体存储器具有可由文件系统存取的用户数据区域,在所述用户数据区域中写入了指示所述非易失性半导体存储器是非易失性半导体存储器的装置信息。
2.根据权利要求1的装置,其中所述装置信息被写入用户数据区域中的引导扇区。
3.根据权利要求1的装置,其中所述非易失性半导体存储器中的数据通过擦除块擦除,以及
指示所述擦除块的大小的块大小信息被写入用户数据区域。
4.根据权利要求3的装置,其中所述块大小信息被写入用户数据区域中的引导扇区。
5.根据权利要求1的装置,其中数据通过写页面被写入所述非易失性半导体存储器中,以及
指示所述写页面的大小的页面大小信息被写入用户数据区域。
6.根据权利要求5的装置,其中所述页面大小信息被写入用户数据区域中的引导扇区。
7.根据权利要求1的装置,其中:
数据通过写页面写入所述非易失性半导体存储器中,
所述非易失性半导体存储器从存取所述非易失性半导体存储器的主机设备通过包括写页面的写单元接收写命令,
所述非易失性半导体存储器由主机设备通过包括写页面的管理单元管理,
性能参数信息被写入用户数据区域,
所述性能参数信息包括下述的至少其中之一:所述写单元的大小、所述管理单元的大小、指示所述非易失性半导体存储器写数据有多快的写性能、以及所述非易失性半导体存储器在所述非易失性半导体存储器内移动数据有多快。
8.根据权利要求7的装置,其中所述性能参数信息被写入用户数据区域中的引导扇区。
9.一种主机设备,其中插入了具有非易失性半导体存储器的文件存储装置,所述非易失性半导体存储器的数据通过擦除块擦除,所述非易失性半导体存储器具有可由管理所述非易失性半导体存储器的数据的文件系统存取的用户数据区域,所述主机设备根据所述文件系统逻辑格式化所述非易失性半导体存储器,从所述文件存储装置中读取所述擦除块的大小的信息,以及在逻辑格式化期间将指示所述擦除块的大小的块大小信息写入用户数据区域。
10.根据权利要求9的主机设备,其中所述块大小信息被写入用户数据区域中的引导扇区。
11.根据权利要求9的主机设备,其中所述非易失性半导体存储器通过写页面写入数据,
所述主机设备还包括从所述文件存储装置读取所述写页面的大小的信息,并在逻辑格式化期间将指示所述写页面的大小的页面大小信息写入用户数据区域的功能。
12.根据权利要求11的主机设备,其中所述页面大小信息被写入用户数据区域中的引导扇区。
13.一种用于格式化非易失性半导体存储器的方法,在所述非易失性半导体存储器中,数据通过写页面被写入并且通过擦除块被擦除,并且所述非易失性半导体存储器具有可由文件系统存取的用户数据区域,所述方法包括:
从所述非易失性半导体存储器读取所述擦除块的大小的信息;以及
根据所述文件系统将指示所述擦除块的大小的块大小信息写入用户数据区域。
14.根据权利要求13的方法,其中所述块大小信息被写入所述用户数据区域中的引导扇区。
15.根据权利要求13的方法,还包括:
从所述非易失性半导体存储器读取所述写页面的大小的信息;以及
将指示所述写页面的大小的页面大小信息写入用户数据区域。
16.根据权利要求15的方法,其中所述页面大小信息被写入用户数据区域中的引导扇区。
17.一种用于在非易失性半导体存储器中写入数据的方法,在所述非易失性半导体存储器中,数据通过包括写入区域的擦除块被擦除,并且在所述非易失性半导体存储器中存储了指示所述擦除块的大小的擦除块大小信息,所述方法包括:
读取所述擦除块大小信息;以及
根据所述擦除块大小信息将数据写入在所述写入区域中。
18.根据权利要求17的方法,其中每个所述写入区域包含第一区域和第二区域,其中在第一区域中写入数据,在第二区域中写入指示数据被写入到第一区域中的写入完成信息,以及
将数据写入在所述写入区域中包括,在将数据写入所述第一区域时,将所述写入完成信息写入在包含在所述写入区域中的所述第二区域中,所述写入区域包含在其中写入数据的所述第一区域。
19.根据权利要求18的方法,还包括:
参考管理所述非易失性半导体存储器的数据、所述擦除块大小信息以及所述写入完成信息的文件系统,从擦除块搜索其中没有写入所述写入完成信息的非写入块,其中
将数据写入在所述写入区域中包括,在找到所述非写入块时,优先从所述非写入块的所述写入区域写入数据。
CNA2005800309989A 2004-09-15 2005-09-15 格式化非易失性半导体存储器的文件存储装置、主机设备、方法,以及在非易失性半导体存储器中写数据的方法 Pending CN101019098A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004268723A JP2006085380A (ja) 2004-09-15 2004-09-15 ファイルストレージデバイス、プログラム、及び不揮発性半導体メモリの書込方法
JP268723/2004 2004-09-15

Publications (1)

Publication Number Publication Date
CN101019098A true CN101019098A (zh) 2007-08-15

Family

ID=35457863

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005800309989A Pending CN101019098A (zh) 2004-09-15 2005-09-15 格式化非易失性半导体存储器的文件存储装置、主机设备、方法,以及在非易失性半导体存储器中写数据的方法

Country Status (4)

Country Link
US (1) US7822931B2 (zh)
JP (1) JP2006085380A (zh)
CN (1) CN101019098A (zh)
WO (1) WO2006030966A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104798063A (zh) * 2012-10-30 2015-07-22 株式会社东芝 存储设备和主机设备

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285669A (ja) 2005-03-31 2006-10-19 Toshiba Corp ホスト機器
JP4663577B2 (ja) * 2006-05-16 2011-04-06 株式会社バッファロー データ記憶装置およびこの初期化方法
WO2008042467A1 (en) 2006-09-28 2008-04-10 Sandisk Corporation End of life recovery and resizing of memory cards
US7596656B2 (en) 2006-09-28 2009-09-29 Sandisk Corporation Memory cards with end of life recovery and resizing
JP2008152415A (ja) * 2006-12-15 2008-07-03 Matsushita Electric Ind Co Ltd アクセス装置、メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
KR100923990B1 (ko) * 2007-02-13 2009-10-28 삼성전자주식회사 플래시 저장 장치의 특성을 기반으로 한 컴퓨팅 시스템
JP2010026933A (ja) * 2008-07-23 2010-02-04 Toshiba Corp メモリシステム、ホスト装置
US20100161952A1 (en) * 2008-12-18 2010-06-24 Texas Instruments Incorporated Performance optimizations by dynamic reduction of file allocation tables
US9015401B2 (en) 2011-04-28 2015-04-21 Seagate Technology Llc Selective purge of confidential data from a non-volatile memory
CN103412822B (zh) * 2013-07-26 2017-06-06 华为技术有限公司 操作非易失性内存和数据操作的方法和相关装置
CN104468745A (zh) * 2014-11-24 2015-03-25 惠州Tcl移动通信有限公司 一种基于网络的文件传输方法及系统
US10303401B2 (en) * 2017-01-26 2019-05-28 International Business Machines Corporation Data caching for block storage systems

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0779403A (ja) * 1993-06-25 1995-03-20 Nikon Corp 電子スチルカメラ
JPH07105053A (ja) * 1993-10-07 1995-04-21 Olympus Optical Co Ltd 情報取り扱い装置
JPH07141479A (ja) 1993-11-18 1995-06-02 Toshiba Corp Icメモリカードおよびそのicメモリカードを使用したファイル管理システム
JP3798438B2 (ja) * 1994-08-31 2006-07-19 富士写真フイルム株式会社 メモリカードインタフェース装置
JPH08212019A (ja) * 1995-01-31 1996-08-20 Mitsubishi Electric Corp 半導体ディスク装置
US6978342B1 (en) * 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
JPH09252447A (ja) * 1996-03-15 1997-09-22 Ricoh Co Ltd デジタルスチルビデオカメラ
US5887198A (en) * 1997-04-07 1999-03-23 The United States Of America As Represented By The Secretary Of The Navy Programmable stand-alone drive apparatus for interfacing a host computer with PCMCIA memory cards having multiple formats
JP2000010743A (ja) * 1998-06-19 2000-01-14 Canon Inc 印刷装置および印刷装置のメモリ資源情報検出方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
US6601140B1 (en) * 1999-04-07 2003-07-29 Sony Corporation Memory unit, data processing unit, and data processing method using memory unit type
JP2001250387A (ja) * 2000-03-03 2001-09-14 Casio Comput Co Ltd データ処理装置、及び記憶媒体
JP2002268907A (ja) * 2001-03-12 2002-09-20 Ricoh Co Ltd メモリ制御装置
NO20014148A (no) * 2001-08-27 2003-02-03 Elkem As Fremgangsmåte for fjerning av forurensinger fra silisiuminneholdende residuer
JP2003296177A (ja) * 2002-04-03 2003-10-17 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
JP4206688B2 (ja) 2002-04-15 2009-01-14 ソニー株式会社 データ処理装置及びデータ処理方法
US6895464B2 (en) * 2002-06-03 2005-05-17 Honeywell International Inc. Flash memory management system and method utilizing multiple block list windows
WO2004021191A1 (ja) * 2002-08-29 2004-03-11 Matsushita Electric Industrial Co., Ltd. 半導体メモリ装置、及び、フラッシュメモリへのデータ書き込み方法
CN100422956C (zh) 2003-08-06 2008-10-01 松下电器产业株式会社 半导体存储卡、存取装置和存取方法
US7461259B2 (en) * 2004-06-30 2008-12-02 Nokia Corporation Method and apparatus to provide secure mobile file system
JP2006285669A (ja) 2005-03-31 2006-10-19 Toshiba Corp ホスト機器

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104798063A (zh) * 2012-10-30 2015-07-22 株式会社东芝 存储设备和主机设备
US9983794B2 (en) 2012-10-30 2018-05-29 Toshiba Memory Corporation Memory device and host device
CN104798063B (zh) * 2012-10-30 2019-01-11 东芝存储器株式会社 存储设备和主机设备
US10353586B2 (en) 2012-10-30 2019-07-16 Toshiba Memory Corporation Memory device and host device
US10976930B2 (en) 2012-10-30 2021-04-13 Toshiba Memory Corporation Memory device and host device
US11573701B2 (en) 2012-10-30 2023-02-07 Kioxia Corporation Memory device and host device

Also Published As

Publication number Publication date
WO2006030966A3 (en) 2006-11-30
US20070226404A1 (en) 2007-09-27
JP2006085380A (ja) 2006-03-30
US7822931B2 (en) 2010-10-26
WO2006030966A2 (en) 2006-03-23

Similar Documents

Publication Publication Date Title
CN101019098A (zh) 格式化非易失性半导体存储器的文件存储装置、主机设备、方法,以及在非易失性半导体存储器中写数据的方法
US8024507B2 (en) Transaction-safe FAT file system improvements
US7849253B2 (en) Method for fast access to flash-memory media
US8156165B2 (en) Transaction-safe FAT files system
US7395384B2 (en) Method and apparatus for maintaining data on non-volatile memory systems
JP5603997B2 (ja) ストレージ装置及びデータ制御方法
US7543103B2 (en) Host apparatus
US6587915B1 (en) Flash memory having data blocks, spare blocks, a map block and a header block and a method for controlling the same
EP1782176B1 (en) Systems, methods, computer readable medium and apparatus for memory management using nvram
JP4773342B2 (ja) 不揮発性記憶装置及びデータ書込み方法
JP4633802B2 (ja) 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法
US6865658B2 (en) Nonvolatile data management system using data segments and link information
CN100527097C (zh) 存储器系统以及写入非易失性半导体存储器中的方法
EP2088509A2 (en) Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewriteable memory
WO2005124530A2 (en) Method for controlling memory card and method for controlling nonvolatile semiconductor memory
KR20070060070A (ko) 최적화된 순차적인 클러스터 관리용 에프에이티 분석
JP2005242897A (ja) フラッシュディスク装置
WO2003056433A1 (fr) Dispositif a memoire et appareil d'enregistrement/reproduction utilisant ledit dispositif
JP2006040264A (ja) メモリカードの制御方法および不揮発性半導体メモリの制御方法
CN108431783A (zh) 访问请求处理方法、装置及计算机系统
CN107239526A (zh) 文件系统实现方法、碎片整理方法、操作位置定位方法
JP4157501B2 (ja) 記憶装置
CN116010113B (zh) 用于管理智能卡内存的方法及智能卡
JP2002222120A (ja) メモリ・アクセス管理装置並びに管理方法
CN101689390A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20070815