CN1702776A - 存储卡、半导体装置和半导体存储器的控制方法 - Google Patents
存储卡、半导体装置和半导体存储器的控制方法 Download PDFInfo
- Publication number
- CN1702776A CN1702776A CNA2005100738469A CN200510073846A CN1702776A CN 1702776 A CN1702776 A CN 1702776A CN A2005100738469 A CNA2005100738469 A CN A2005100738469A CN 200510073846 A CN200510073846 A CN 200510073846A CN 1702776 A CN1702776 A CN 1702776A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- data
- write
- zone
- address
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Credit Cards Or The Like (AREA)
Abstract
半导体装置具备:具有规定的擦除块尺寸的半导体存储器;以及控制器,在对上述半导体存储器中已写入了数据的第1块内的某个区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
Description
相关的申请的相互参照
本申请基于先有的日本专利申请第2004-157541号的权利要求书和优先权,该申请的全部内容引用于此作为参考。
技术领域
本发明涉及安装了非易失性半导体存储器的存储卡,特别是涉及安装了具有规定的擦除块尺寸的非易失性半导体存储器的存储卡、在该卡上安装的半导体装置和半导体存储器的控制方法。
背景技术
作为在存储卡上安装的非易失性存储器,大多采用NAND型闪存器。在NAND型闪存器中,将某一定的数目的存储单元归纳在一起构成了页这样的单位,将某一定的数目的页归纳在一起构成了块这样的单位。
此外,对于NAND型闪存器来说,在其结构方面,不能对写入了一次数据的单元单纯地再次写入数据。为了再次写入数据,必须进行擦除。在此,只能以块单位进行擦除。此外,一般来说,以页单位进行读出或写入。特别是在写入中,必须从物理块内的开头页起按顺序写入数据。
例如,考虑NAND型闪存器内的控制器根据来自使用NAND型闪存器的主机的写入要求对已写入了数据的第1块内的某个区域(例如页)的数据增加变更的情况。在该情况下,控制器在探寻了数据已擦除完毕的第2块后,从开头页起按顺序在第2块中写入(复制)从第1块的开头页到成为变更对象的页之前的页为止的数据,接着,在第2块中写入成为变更对象的页的数据,最后,将从成为变更对象的页之后的页到最终页为止的数据复制到第2块中。
再有,在日本国特开2002-133877号公报中公开了可进行高速的块擦除的NAND型EEPROM。
但是,按照现有的写入方法,在对某个块内的开头页进行了写入后对另外的块内的最终页进行写入那样的情况下,2个写入的时间间隔变得最大。在这样的情况下,如果在存储卡的规格中确定了时间的制约,则产生不满足该时间的制约的事态,存在工作中产生不良情况的危险。即使在上述文献中也引起同样的问题。
根据这样的情况,希望实现满足关于写入的时间制约的工作。
发明内容
与本发明的实施例有关的半导体装置具备:具有规定的擦除块尺寸的半导体存储器;以及控制器,在对上述半导体存储器中已写入了数据的第1块内的某个区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
此外,与本发明的实施例有关的存储卡具备:具有规定的擦除块尺寸的非易失性半导体存储器;以及控制器,在对上述非易失性半导体存储器中已写入了数据的第1块内的某个区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
此外,与本发明的实施例有关的半导体存储器的控制方法是具有规定的擦除块尺寸的半导体存储器的控制方法,在该方法中,接受对上述半导体存储器中已写入了数据的第1块内的某个区域的数据写入要求,与上述区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
附图说明
图1是示出与本发明的一实施例有关的存储卡上安装的器件类的概略结构的立体图;
图2是示出包含主机和上述存储卡的结构的框图;
图3是示出主机20设想了的闪存器与实际上使用的闪存器的数据配置的差别的图;
图4是示出主机侧系统和存储卡(大块卡)的各信息交换层次的图;
图5A和图5B是示出从主机侧发送来的指令的格式的图;
图6是对比主机侧设想了的块写入操作和存储卡(大块卡)侧实际上进行的写入处理而示出的图;
图7是示出大块卡内的闪存器的块格式(作为擦除单位的256千字节物理块部分)的图;
图8是示出主机对本实施例的存储卡进行写入时的该存储卡的I/O引脚和R/B引脚的信号的例子的时序图;
图9是示出存储卡内的控制器对本实施例的存储卡内的非易失性存储器进行写入时的该存储卡内的非易失性存储器的I/O引脚和R/B引脚的信号的例子的时序图;
图10是用于说明NAND型闪存器中的数据写入的顺序的图;
图11是用于说明现有技术的基本的数据写入方法的一例的图;
图12是用于说明本实施例的基本的数据写入方法的一例的图;
图13是用于说明现有技术的数据写入方法的具体例的图;以及
图14是用于说明本实施例的数据写入方法的具体例的图。
具体实施方式
以下参照附图,说明本发明的一实施例。
图1是示出与本发明的一实施例有关的存储卡上安装的器件类的概略结构的立体图。
对于与本实施例有关的存储卡1来说,如图示那样,在PCB(印刷电路板)基板上配置了NAND型闪存器3和控制器4。在上述控制器4中安装了CPU(中央处理单元)8或ROM(只读存储器)9等的功能块。在后面叙述各器件的细节。再有,NAND型闪存器3可以是在1个存储单元中存储1比特的信息的2值存储器,也可以是在1个存储单元中存储比1比特多的信息(例如2比特)的多值存储器。此外,在图1中,示出了在PCB基板上配置了NAND型闪存器3和控制器4的情况,但也可在同一LSI(大规模集成电路)基板上配置NAND型闪存器3和控制器4。
在以下的说明中使用的术语「逻辑块地址」、「物理块地址」分别意味着块本身的逻辑地址、物理地址。此外,「逻辑地址」、「物理地址」主要意味着块本身的逻辑地址、物理地址,但有时也表示相当于比块单位细的分辨率的单位的地址。
图2是示出包含主机和上述存储卡的结构的框图。再有,对与图1为共同的要素附以同一符号。
主机设备(以下称为主机)20具备对被连接的存储卡进行存取用的硬件和软件(系统)。该主机20管理存储卡内部的物理状态(在哪个物理块地址中包含了第几逻辑扇区地址数据,或哪个块为擦除状态),作为直接控制存储卡内的闪存器的主机而被构筑。
此外,主机20以使用擦除时的擦除块尺寸被确定为16千字节的NAND型闪存器为前提,以16千字节单位进行逻辑、物理地址的分配,在大多数的情况下,关于16千字节部分的逻辑地址,顺序地进行写的访问或读的访问(发出相应的指令)。
存储卡1在连接到主机20上时接受电源供给而工作,进行与来自主机20的访问对应的处理。该存储卡1如上所述,具有NAND型闪存器3和控制器4。
NAND型闪存器3是擦除时的擦除块尺寸(擦除单位的块尺寸)被确定为256千字节的非易失性存储器,例如以16千字节单位进行写入、读出。该NAND型闪存器3例如使用0.09μm工艺技术来制作。即,NAND型闪存器3的设计规则为不到0.1μm。
控制器4除了上述的CPU8和ROM9外,还安装了存储器界面部5、主机界面部6、缓冲器7和RAM(随机存取存储器)10。
存储器界面部5进行控制器4与NAND型闪存器3之间的界面处理。主机界面部6进行控制器4与主机20之间的界面处理。
缓冲器7在将从主机20发送来的数据写入到NAND型闪存器3中时,暂时地存储一定量的数据(例如1页部分),在对主机20送出从NAND型闪存器3读出的数据时,暂时地存储一定量的数据。
CPU8管理存储卡1整体的工作。该CPU8例如在存储卡1接受了电源供给时,通过将ROM9中被存储了的程序包(控制程序)装载到RAM10上来执行规定的处理,在RAM10上作成各种表,或从主机20接受写入指令、读出指令、擦除指令以执行对于NAND型闪存器3上的该相当的区域的访问,或控制通过缓冲器7的数据传送处理。
ROM9是存储由CPU8使用的控制程序等的存储器。RAM10作为CPU8的作业区来使用,是存储控制程序或各种表的存储器。
图3示出了主机20设想了的闪存器与实际上使用的闪存器(即,存储卡1内的NAND型闪存器3)的数据配置的差别。
在主机20设想了的闪存器中,各页具有528字节(512字节部分的数据存储部+16字节部分的冗余部),32页部分成为1个擦除单位(即,16千字节+0.5千字节(在此,k为1024))。以下,有时将安装了这样的闪存器的卡称为「小块卡」。
另一方面,在实际上使用的闪存器3中,各页具有2112字节(512字节部分的数据存储部×4+10字节部分的冗余部×4+24字节部分的管理数据存储部),128页部分成为1个擦除单位(即,256千字节+8千字节)。以下,有时将安装了这样的闪存器3的卡称为「大块卡」。再有,在以下的说明中,为了方便起见,将小块卡的擦除单位称为16千字节,将大块卡的擦除单位称为256千字节。
此外,主机20设想了的闪存器和实际上使用的闪存器3分别具备进行对闪存器的数据输入输出用的页缓冲器。在主机20设想了的闪存器中具备的页缓冲器的存储容量为528字节(512字节+16字节)。另一方面,在实际上使用的闪存器3中具备的页缓冲器的存储容量为2112字节(2048字节+64字节)。在数据写入等时,各页缓冲器以相当于自身的存储容量的1页部分的单位执行对闪存器的数据输入输出处理。
在图3的例子中,示出了实际上使用的闪存器3的擦除块尺寸是主机20设想了的闪存器的擦除块尺寸的16倍的情况,但本发明不限定于此,只要大致是整数倍就行,也可构成为另外的倍率。
为了将大块卡作成实用上有效的制品,希望图3中示出的闪存器3的存储容量大于等于1G比特。在闪存器3的存储容量例如是1G比特的情况下,256千字节块(擦除单位)的数目为512个。
此外,在图3中例示了擦除单位是256千字节块的情况,但将擦除单位例如构筑为128千字节的块在实用上也是有效的。在该情况下,128千字节的块的数目为1024个。
此外,在图3的例子中,示出了实际上使用的闪存器3的擦除块尺寸比主机20设想了的闪存器的擦除块尺寸大的情况,但本发明不限定于此,也可构成为实际上使用的闪存器3的擦除块尺寸比主机20设想了的闪存器的擦除块尺寸小。
图4是示出主机20侧系统和存储卡1(大块卡)的各信息交换层次的图。
主机20侧的系统具有应用软件21、文件系统22、驱动软件23和小块卡物理存取层24。另一方面,存储卡1(大块卡)具有小块卡物理存取层11、小块卡物理、小块卡逻辑变换层12、小块卡逻辑、大块卡物理变换层13和大块卡物理存取层14。
例如,如果主机20侧的应用软件21对文件系统22要求文件的写入,则文件系统22根据小块卡的逻辑块地址,对驱动软件23指示顺序的扇区写入。驱动软件23接受该指示后,在实现基于小块卡的逻辑块地址的每个16千字节块的顺序的写入时,进行逻辑、物理块变换,通过小块卡物理存取层24对大块卡发出按小块卡的物理块地址进行的随机的写入指令,进行数据传送。
再有,在写的访问中,在小块卡的情况下也好、在大块卡的情况下也好,在协议方面都以按(1)指令、(2)页地址(行地址)、(3)列地址、(4)数据、(5)程序确认指令这样的顺序进行信息的授受为前提。
如果大块卡侧中的小块卡物理存取层11从主机20接受按小块卡的物理块地址的写入指令,则除了取得物理块地址或数据外,还取得附加在其上的附加数据中包含的逻辑块地址。
小块卡物理、小块卡逻辑变换层12具有在数据读出等时进行从小块卡的物理块地址(对应于16千字节块部分)至小块卡的逻辑块地址(对应于16千字节块部分)的变换处理用的第1表。变换层12在小块卡物理存取层11接受写入指令并取得了小块卡的逻辑块地址时,将其反映在上述第1表中。关于物理块地址,也将其反映在上述第1表中。
小块卡逻辑、大块卡物理变换层13具有在数据读出等时进行从小块卡的逻辑块地址(对应于顺序的16千字节块×16个部分)至大块卡的物理块地址(对应于256千字节物理块部分)的变换处理用的第2表。变换层12在小块卡物理存取层11接受写入指令并取得了小块卡的逻辑块地址时,将其反映在上述第2表中。
大块卡物理存取层14根据小块卡物理存取层11接受写入指令并取得了的小块卡的逻辑块地址决定闪存器3内部的数据配置,在256千字节物理块内以2千字节(1页)单位顺序地写入16千字节部分的数据。此外,大块卡物理存取层14在闪存器3内部的管理数据区域内的规定的区域中存储已取得的小块卡的逻辑块地址或物理块地址。
这样,由于主机20发出基于小块卡的物理块地址的指令,故在大块卡侧,以知道与小块卡的物理块地址对应的数据存在于哪个256千字节物理块中的方式来管理。具体地说,在每个16千字节块中管理小块卡的逻辑、物理块地址的对应关系,同时以知道与小块卡的连续的256千字节部分的逻辑块地址对应的数据被存储在大块卡内的哪个256千字节物理块中的方式来管理。
图5A和图5B是示出从主机20侧发送来的指令的格式的图;
从主机20侧发送来的指令的包,如图5A中所示,包含了指令类别信息(在此是「写入」)、地址(物理块地址)、数据(内容等的实际数据和附加数据(512字节+16字节))这样的各种信息。
在这样的格式的包中,如图5B中所示,在附加数据16字节中的规定的位置上配置了小块卡的「逻辑块地址」(与成为存取对象的16字节块对应的逻辑地址)。大块卡除了取得指令类别信息、物理块地址、数据外,还特别取得上述「逻辑块地址」。再有,在读出指令的情况下,不附加该「逻辑块地址」。
图6是对比主机20侧设想了的块写入操作和存储卡1(大块卡)侧实际上进行的写入处理而示出的图。
在主机20侧(该图的左侧),在基于小块卡的逻辑地址的16千字节块单位的顺序的写入操作的发生时,进行按小块卡的物理块地址的16千字节块单位的随机的写入操作。
另一方面,在大块卡侧(该图的右侧),在从主机20侧接收了写入指令的情况下,在闪存器3内顺序地写入基于小块卡的逻辑块地址的16千字节块单位的数据。
如上所述,主机20进行按小块卡的物理地址的16字节单位的随机的写入操作。在这样的随机的写入操作中,一般来说,较多地发生只改写大块(256千字节)的一部分用的处理。在NAND型闪存器中,由于只能以块单位进行擦除,故在只改写块的一部分的情况下,必须在已擦除完毕的新块中写入被改写的新数据,将未被改写的剩下的数据从包含被改写为新数据的旧数据的旧块复制到新块中。这样,由于只改写块的一部分的处理伴随未被改写的数据的复制工作(以下,称为「牵连数据复制」),故如果较多地发生只改写块的一部分的处理,则辅助操作的量非常地大。因此,在本实施例中,按照从主机20侧能得到的逻辑地址的顺序,通过在大块卡侧再次分配物理地址,减少了只是块的一部分的写入的发生,抑制了辅助操作的量的增大。
图7是示出大块卡内的NAND型闪存器3的块格式(作为擦除单位的256千字节物理块部分)的图。
在大块卡中,在作为擦除单位的256千字节物理块中包含了16个部分的写入相当于作为主机20侧管理的单位的16千字节的数据用的块(以下称为主机管理块)。在数据写入时,按照小块卡的逻辑块地址的顺序配置各自的数据。
各主机管理块由8个页构成。各页包含4个部分的512字节数据区,同时包含了与各数据区对应的10字节ECC区域。此外,在页中的最后的512字节数据区(第4个512字节数据区)之后也设置24字节管理数据区。因此,页中的最后的10字节ECC区域成为与第4个512字节数据区和24字节管理数据区这两者相对应的结构。
作为擦除单位的256千字节物理块中包含的128个24字节管理数据区中,例如在最后的24字节管理数据区中归纳地存储了与由从主机20侧送来的指令取得的物理块地址相当的地址信息(以下称为「主机管理物理地址」)和与逻辑块地址相当的地址信息(以下称为「主机管理逻辑块地址」)。
在各256千字节块内被存储了的「主机管理物理地址」和「主机管理逻辑块地址」在作成图4中已说明的小块卡物理、小块卡逻辑变换层12具有的第1表和小块卡逻辑、大块卡物理变换层13具有的第2表时被使用。
图8是示出主机20对本实施例的存储卡1进行写入时的该存储卡1的I/O引脚和R/B引脚的信号的例子的时序图。
主机20假定存储卡是具有16千字节的擦除块尺寸的非易失性存储器并控制存储卡。例如在对存储卡的写入时,主机20对I/O引脚1~8输入串行数据输入指令80H(H表示16进制)。其次,主机20对I/O引脚1~8输入列地址C/A和页地址P/A。再有,在此,列地址C/A和页地址P/A是主机20对存储卡1设想了的假想物理地址空间中的列地址和页地址。
进而,主机20对I/O引脚1~8的每一个输入528次写入数据。具体地说,主机20一边定时528次对写启动引脚的输入信号,一边依次对各自的I/O引脚移入528比特(按全部的I/O引脚合计为528字节)的数据。如果数据的移入结束,则主机20对I/O引脚1~8输入程序指令10H。响应于此,存储卡对其R/B引脚输出低电平的信号,显示出存储卡处于”忙”的状态。其后,在规定的期间后,通过对R/B引脚输出高电平的信号,显示出存储卡处于”准备好”的状态。
但是,图8中的R/B引脚的状态始终是对主机20显示出存储卡1处于怎样的状态。即,在图8中,即使响应于程序指令10H的输入,显示出R/B引脚处于”忙”的状态(即输出低电平),也不一定在内部实际上进行了对NAND型闪存器3的写入工作(即,从页缓冲器对存储单元阵列的数据传送)。此外,即使R/B引脚复归到”准备好”的状态,也不一定在内部实际上结束了对NAND型闪存器3的写入工作。
图9是示出存储卡1内的控制器4对本实施例的存储卡1内的NAND型闪存器3进行写入时的NAND型闪存器3的I/O引脚和R/B引脚的信号的例子的时序图。
控制器4识别了NAND型闪存器3是具有256千字节的擦除块尺寸的非易失性存储器。例如,在对NAND型闪存器3的写入时,控制器4对I/O引脚1~8输入串行数据输入指令80H(H表示16进制)。其次,控制器4对I/O引脚1~8输入列地址C/A和页地址P/A。再有,在此,列地址C/A和页地址P/A是控制器4对NAND型闪存器3设想了的实际物理地址空间中的列地址和页地址。因而,图8中的列地址C/A和页地址P/A不一定一致。
进而,控制器4对I/O引脚1~8的每一个输入2112次写入数据。具体地说,控制器4一边定时2112次对写启动引脚的输入信号,一边依次对各自的I/O引脚移入2112比特(按全部的I/O引脚合计为2112字节)的数据。如果数据的移入结束,则控制器4对I/O引脚1~8输入程序指令10H。响应于此,存储卡对其R/B引脚输入低电平的信号,显示出存储卡处于”忙”的状态。其后,在规定的期间后,通过对R/B引脚输出高电平的信号,显示出存储卡处于”准备好”的状态。图9中的R/B引脚的状态显示出对控制器4来说NAND型闪存器3实际上处于怎样的状态。
再有,在上述的图8和图9中,分别以1个循环示出了列地址C/A和页地址P/A的输入,但根据存储卡1的容量或NAND型闪存器3的容量,也有适当地为大于等于2个循环的情况。
如上述图8和图9可知,由于存储卡在”忙”的状态下存在的时间有限制,故必须在其间进行数据写入,在规定的期间后,在主机侧显示出该存储卡成为”准备好”的状态。此外,在NAND型闪存器中,在对某个物理块内的各页写入数据时,关于写入顺序也存在制约。即,NAND型闪存器必须成为从物理块内的开头页(相当于图10中示出的开头字线WL0上的单元)起顺序地写入数据的结构。在本实施例中,利用后述的方法,既满足上述的各自的制约又实现有效的数据写入。
其次,参照图11和图12,将本实施例的基本的数据写入方法与现有技术的数据写入方法进行对比来说明。
在此,举出在NAND型闪存器3上对用已写入了数据的块A内的LBA8表示的第9个区域(即图7中的“主机管理块”8(由8个页部分构成的区域))发生了数据写入要求时的对数据擦除完毕的块B的写入工作作为例子。再有,在块A内,假定未发生对该第9个区域以外的区域的数据写入要求。该情况下的写入工作在本实施例中由控制器4(参照图1、图2)来控制,具体地说,通过执行从ROM9装载到RAM10上的控制程序的CPU8或存储器界面部5来控制。
在图11中示出的现有技术的数据写入方法中,在对块A内的第9个区域(LBA8)发生了数据写入要求的情况下,首先,将块A内的第1~8个区域(LBA0~LBA7)的数据复制到块B内的第1~8个区域中(步骤S11)。
接着,在块B内的第9个区域中写入对块A内的第9个区域(LBA8)要求了写入的新数据(步骤S12)。
最后,将块A内的第10~16个区域(LBA9~LBA15)的数据复制到块B内的第10~16个区域中(步骤S13)。
另一方面,在图12中示出的本实施例的数据写入方法中,在对块A内的第9个区域(LBA8)发生了数据写入要求的情况下,首先,将对该第9个区域(LBA8)要求了写入的新数据写入到块B内的第1个(开头)区域中(步骤S21)。此时,与成为写入要求的对象的区域的地址(例如块地址或页地址)的值n无关地将要求了写入的新数据写入到块B的开头区域中,同时在共同的页上的冗余部中写入该地址的值n。
接着,将块A内的第10~16个区域(LBA9~LBA15)的数据复制到块B内的与开头区域后续的第2~8个区域中(步骤S22)。此时,将地址的值n+1~m也分别写入到共同的页上的冗余部中。
最后将块A内的第1~8个区域(LBA0~LBA7)的数据复制到块B内的第9~16个区域中(步骤S23)。此时,将地址的值0~n-1也分别写入到共同的页上的冗余部中。
再有,在对块B的数据写入结束了后,擦除块A上的数据。也可在显示出存储卡成为”准备好”的状态后进行该擦除。
通过在每当发生数据写入要求时进行上述的步骤S21~S23中示出的处理,可防止从某个写入到其次的写入为止的时间间隔的增大,可解决在现有技术中已说明的时间的制约的问题。此外,满足了必须从各物理块内的开头区域起顺序地写入数据这样的制约。
另一方面,在进行了上述步骤S21~S23中示出的处理后,在对块B内的某个区域发生了数据读出要求的情况下,控制器4根据在块B内的开头区域中被写入了的地址n,可求出写入了数据读出对象的数据的位置。在该情况下,根据地址n和读出要求的地址,计算出被进行了读出要求的数据相当于块B内的哪个地址即可。
其次,参照图13和图14,说明本实施例的数据写入方法与现有技术的数据写入方法的差别显著地呈现的一例。
在此,举出在NAND型闪存器3上对用已写入了数据的块C内的LBA0表示的开头区域发生了数据写入要求且对块D内的LBA31表示的最终区域发生了数据写入要求的情况的对数据擦除完毕的块E和块F的写入工作作为例子。
在图13中示出的现有技术的数据写入方法中,首先,将对块C内的第1个区域(LBA0)要求了写入的新数据写入到块E内的第1个区域中(步骤S31)。
接着,将块C内的第2~16个区域(LBA1~LBA15)的数据复制到块E内的第2~16个区域中(步骤S32)。
接着,将块D内的第1~15个区域(LBA16~LBA30)的数据复制到块F内的第1~15个区域中(步骤S33)。
最后,将对块D内的第32个区域(LBA31)要求了写入的新数据写入到块F内的第32个区域中(步骤S34)。
在该例中,由于从步骤S31的写入到步骤S34的写入为止的时间间隔非常长,故存在不能满足在现有技术中已说明的时间的制约的可能。
另一方面,在图14中示出的本实施例的数据写入方法中,首先,将对块C内的第1个区域(LBA0)要求了写入的新数据写入到块E内的第1个(开头)区域中(步骤S41)。此时,与成为写入要求的对象的区域的地址的值n无关地将要求了写入的新数据写入到块E的开头区域中,同时在共同的页上的冗余部中写入该地址的值(在此省略图示)。
接着,将块C内的第2~16个区域(LBA1~LBA15)的数据复制到块E内的第2~16个区域中(步骤S42)。此时,将相当的地址的值(在此省略图示)也分别写入到共同的页上的冗余部中。
其次,将对块D内的第16个区域(LBA31)要求了写入的新数据写入到块F内的第1个(开头)区域中(步骤S43)。此时,与成为写入要求的对象的区域的地址的值n无关地将要求了写入的新数据写入到块F的开头区域中,同时在共同的页上的冗余部中写入该地址的值(在此省略图示)。
最后,将块D内的第1~15个区域(LBA16~LBA30)的数据复制到块F内的第2~16个区域中(步骤S44)。此时,将相应的地址的值(在此省略图示)也分别写入到共同的页上的冗余部中。
再有,在对块E的数据写入结束了后,擦除块C上的数据。同样,在对块F的数据写入结束了后,擦除块D上的数据。也可归纳在一起一次进行这些擦除。此外,也可在显示出存储卡成为”准备好”的状态后进行这些擦除。
如从该图14的例子可知,与图13的情况不同,由于可缩短从步骤S41的写入到步骤S44的写入为止的时间间隔,故可满足关于写入的时间的制约。
再有,在以上的说明中,示出了按步骤S41~步骤S42~步骤S43~步骤S44的顺序进行处理的例子,但也可代之以按步骤S41~步骤S43~步骤S42~步骤S44的顺序进行处理。即,也可在进行了对块E的开头区域的新数据的写入后,进行对块F的开头区域的新数据的写入,其后进行对块E的剩下的区域的数据复制,最后进行对块F的剩下的区域的数据复制。在该情况下,也满足了必须从各物理块内的开头区域顺序地写入数据这样的制约。
此外,在上述图12和图14的数据写入方法中,示出了以大块卡为对象的例子,但也可以小块卡为对象来实施。在该情况下,将图中的各LBA看作1个页来处理即可。
这样,按照本实施例,可缩短从某个写入到其次的写入为止的时间间隔,可实现满足由存储卡的规格等确定了的时间的制约等的写入工作。
在上述实施例的说明中,举出控制器4进行对实际上使用的半导体存储器的数据读出、写入的控制(包含图12和图14中示出的处理的控制)的情况作为例子,但也可代之以构筑为主机20侧的驱动软件23等进行该控制。在该情况下,关于主机20设想了的半导体存储器中的地址与在实施中使用的半导体存储器的地址的对应关系的管理等,也可构筑为在主机20侧进行。
此外,在上述实施例的说明中,示出了实际上使用的闪存器3的擦除块尺寸比主机20设想了的闪存器的擦除块尺寸大的情况,但当然实际上使用的闪存器3的擦除块尺寸也可以与主机20设想了的闪存器的擦除块尺寸相同。
此外,在上述实施例的说明中,作为非易失性存储器,举出NAND型闪存器为例进行了说明,但非易失性存储器不限于NAND型闪存器,也可应用其它的种类的存储器。
如以上详细地说明的那样,按照本发明,可实现满足关于写入的时间的制约的工作。
Claims (16)
1.一种半导体装置,其特征在于,具备:
具有规定的擦除块尺寸的半导体存储器;以及
控制器,在对上述半导体存储器中已写入了数据的第1块内的某个区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
2.如权利要求1中所述的半导体装置,其特征在于:
上述控制器在上述第2块的开头区域中与上述写入要求的数据一起写入上述地址。
3.如权利要求2中所述的半导体装置,其特征在于:
上述控制器在对上述第2块内的某个区域发生了数据读出要求的情况下,根据在该第2块内的上述开头区域中被写入了的上述地址,求出写入了数据读出对象的数据的位置。
4.如权利要求1中所述的半导体装置,其特征在于:
如果对上述第1块内的其它的区域没有数据写入要求,则上述控制器将除了成为上述写入要求的对象的区域的数据外的上述第1块内的数据复制到上述第2块内的上述开头区域以外的区域中。
5.一种存储卡,其特征在于,具备:
具有规定的擦除块尺寸的非易失性半导体存储器;以及
控制器,在对上述非易失性半导体存储器中已写入了数据的第1块内的某个区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
6.如权利要求5中所述的存储卡,其特征在于:
上述控制器包含:
存储上述控制器的工作用的程序的ROM;以及
执行在上述ROM中存储了的程序的CPU。
7.如权利要求5中所述的存储卡,其特征在于:
上述非易失性半导体存储器是NAND型闪存器。
8.如权利要求5中所述的存储卡,其特征在于:
上述非易失性半导体存储器的设计规则为不到0.1μm。
9.如权利要求5中所述的存储卡,其特征在于:
上述非易失性半导体存储器的存储容量为大于等于1G比特。
10.一种半导体装置,其特征在于:
具备:
具有第1擦除块尺寸的半导体存储器;以及
对上述半导体存储器执行存取的控制器,
上述控制器管理具有上述第1擦除块尺寸的半导体存储器中的第1地址与具有比上述第1擦除块尺寸小的第2擦除块尺寸的半导体存储器中的第2地址的对应关系,
在对上述半导体存储器中已写入了数据的第1块内的与上述第2擦除块尺寸相当的区域发生了数据写入要求的情况下,与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
11.如权利要求10中所述的半导体装置,其特征在于:
上述第2地址包含逻辑块地址,
如果对上述第1块内的其它的区域没有数据写入要求,则上述控制器将除了成为上述写入要求的对象的区域的数据外的上述第1块内的数据复制到上述第2块中,使得上述逻辑块地址对于在上述第2块的开头区域中被写入了的数据是连续的。
12.一种具有规定的擦除块尺寸的半导体存储器的控制方法,其特征在于:
接受对上述半导体存储器中已写入了数据的第1块内的某个区域的数据写入要求,
与上述区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据。
13.如权利要求12中所述的半导体存储器的控制方法,其特征在于:
在上述第2块的开头区域中与上述写入要求的数据一起写入上述地址。
14.如权利要求13中所述的半导体存储器的控制方法,其特征在于:
在对上述第2块内的某个区域发生了数据读出要求的情况下,根据在该第2块内的上述开头区域中被写入了的上述地址,求出写入了数据读出对象的数据的位置。
15.如权利要求12中所述的半导体存储器的控制方法,其特征在于:
如果对上述第1块内的其它的区域没有数据写入要求,则将除了成为上述写入要求的对象的区域的数据外的上述第1块内的数据复制到上述第2块内的开头区域以外的区域中。
16.一种具有第1擦除块尺寸的半导体存储器的控制方法,其特征在于:
管理具有上述第1擦除块尺寸的半导体存储器中的第1地址与具有比上述第1擦除块尺寸小的第2擦除块尺寸的半导体存储器中的第2地址的对应关系,
在对上述半导体存储器中已写入了数据的第1块内的与上述第2擦除块尺寸相当的区域发生了数据写入要求的情况下,进行用来与该区域的地址的值无关地在数据已擦除完毕的第2块的开头区域中写入上述写入要求的数据的控制。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004157541A JP4253272B2 (ja) | 2004-05-27 | 2004-05-27 | メモリカード、半導体装置、及び半導体メモリの制御方法 |
JP2004157541 | 2004-05-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1702776A true CN1702776A (zh) | 2005-11-30 |
Family
ID=35426729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005100738469A Pending CN1702776A (zh) | 2004-05-27 | 2005-05-24 | 存储卡、半导体装置和半导体存储器的控制方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US7278001B2 (zh) |
JP (1) | JP4253272B2 (zh) |
KR (1) | KR100687151B1 (zh) |
CN (1) | CN1702776A (zh) |
TW (1) | TWI280585B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944386A (zh) * | 2009-07-03 | 2011-01-12 | 群联电子股份有限公司 | 识别闪速存储器中错误数据的控制电路及存储系统与方法 |
US8055873B2 (en) | 2008-02-05 | 2011-11-08 | Phison Electronics Corp. | Data writing method for flash memory, and controller and system using the same |
CN101996140B (zh) * | 2009-08-12 | 2013-08-21 | 群联电子股份有限公司 | 用于闪速存储器的数据写入方法及其控制电路与储存系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100784862B1 (ko) | 2006-01-09 | 2007-12-14 | 삼성전자주식회사 | 더미 셀을 포함하는 플래시 메모리 장치 |
JP2007233838A (ja) * | 2006-03-02 | 2007-09-13 | Toshiba Corp | メモリシステムの制御方法 |
JP2007249662A (ja) * | 2006-03-16 | 2007-09-27 | Toshiba Corp | メモリカード及びメモリカードの制御方法 |
JP5002201B2 (ja) * | 2006-06-30 | 2012-08-15 | 株式会社東芝 | メモリシステム |
KR100843135B1 (ko) * | 2006-11-20 | 2008-07-02 | 삼성전자주식회사 | 비휘발성 메모리 관리 방법 및 장치 |
JP2008152464A (ja) * | 2006-12-15 | 2008-07-03 | Toshiba Corp | 記憶装置 |
EP2377129A4 (en) * | 2008-12-09 | 2013-05-22 | Rambus Inc | NON-VOLATILE MEMORY DEVICE FOR SIMULTANEOUS AND OVERLAP MEMORY OPERATIONS |
TWI399643B (zh) * | 2009-12-31 | 2013-06-21 | Phison Electronics Corp | 快閃記憶體儲存系統及其控制器與資料寫入方法 |
TWI409633B (zh) * | 2010-02-04 | 2013-09-21 | Phison Electronics Corp | 快閃記憶體儲存裝置、其控制器與資料寫入方法 |
JP5010723B2 (ja) * | 2010-09-22 | 2012-08-29 | 株式会社東芝 | 半導体記憶制御装置 |
US10031845B2 (en) | 2016-04-01 | 2018-07-24 | Intel Corporation | Method and apparatus for processing sequential writes to a block group of physical blocks in a memory device |
US10019198B2 (en) | 2016-04-01 | 2018-07-10 | Intel Corporation | Method and apparatus for processing sequential writes to portions of an addressable unit |
JP2018092654A (ja) * | 2018-02-20 | 2018-06-14 | 株式会社ニコン | 電子機器 |
KR20200076403A (ko) * | 2018-12-19 | 2020-06-29 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치, 컨트롤러, 이들을 포함하는 저장 장치 및 그들의 동작 방법 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907856A (en) * | 1995-07-31 | 1999-05-25 | Lexar Media, Inc. | Moving sectors within a block of information in a flash memory mass storage architecture |
US5845313A (en) * | 1995-07-31 | 1998-12-01 | Lexar | Direct logical block addressing flash memory mass storage architecture |
US5745418A (en) * | 1996-11-25 | 1998-04-28 | Macronix International Co., Ltd. | Flash memory mass storage system |
US6034897A (en) * | 1999-04-01 | 2000-03-07 | Lexar Media, Inc. | Space management for managing high capacity nonvolatile memory |
US6763424B2 (en) | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
KR100389867B1 (ko) * | 2001-06-04 | 2003-07-04 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
JP2002133877A (ja) | 2001-09-03 | 2002-05-10 | Toshiba Corp | 不揮発性半導体記憶装置 |
US6678785B2 (en) | 2001-09-28 | 2004-01-13 | M-Systems Flash Disk Pioneers Ltd. | Flash management system using only sequential write |
JP2004062328A (ja) | 2002-07-25 | 2004-02-26 | Renesas Technology Corp | Nand型フラッシュメモリを搭載したフラッシュストレージメディア |
EP1533702A4 (en) | 2002-08-29 | 2007-05-23 | Matsushita Electric Ind Co Ltd | SEMICONDUCTOR MEMORY AND METHOD FOR RECORDING DATA IN A FLASH MEMORY |
JP2004133677A (ja) | 2002-10-10 | 2004-04-30 | Renesas Technology Corp | 記憶装置 |
-
2004
- 2004-05-27 JP JP2004157541A patent/JP4253272B2/ja not_active Expired - Fee Related
- 2004-12-22 US US11/018,808 patent/US7278001B2/en active Active
-
2005
- 2005-05-18 TW TW094116103A patent/TWI280585B/zh not_active IP Right Cessation
- 2005-05-24 CN CNA2005100738469A patent/CN1702776A/zh active Pending
- 2005-05-26 KR KR1020050044374A patent/KR100687151B1/ko not_active IP Right Cessation
-
2007
- 2007-08-27 US US11/845,603 patent/US7814264B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8055873B2 (en) | 2008-02-05 | 2011-11-08 | Phison Electronics Corp. | Data writing method for flash memory, and controller and system using the same |
CN101944386A (zh) * | 2009-07-03 | 2011-01-12 | 群联电子股份有限公司 | 识别闪速存储器中错误数据的控制电路及存储系统与方法 |
CN101944386B (zh) * | 2009-07-03 | 2013-11-13 | 群联电子股份有限公司 | 识别闪速存储器中错误数据的控制电路及存储系统与方法 |
CN101996140B (zh) * | 2009-08-12 | 2013-08-21 | 群联电子股份有限公司 | 用于闪速存储器的数据写入方法及其控制电路与储存系统 |
Also Published As
Publication number | Publication date |
---|---|
TWI280585B (en) | 2007-05-01 |
JP2005339231A (ja) | 2005-12-08 |
US20070300011A1 (en) | 2007-12-27 |
US7278001B2 (en) | 2007-10-02 |
TW200620305A (en) | 2006-06-16 |
KR100687151B1 (ko) | 2007-02-27 |
JP4253272B2 (ja) | 2009-04-08 |
KR20060046181A (ko) | 2006-05-17 |
US7814264B2 (en) | 2010-10-12 |
US20050268026A1 (en) | 2005-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1702776A (zh) | 存储卡、半导体装置和半导体存储器的控制方法 | |
TWI289257B (en) | Memory card having a storage cell and method of controlling the same | |
US7937523B2 (en) | Memory system with nonvolatile semiconductor memory | |
TWI394160B (zh) | 用於重映射記憶體裝置之儲存位址的方法及系統 | |
CN1795437A (zh) | 用于块内页面分组的方法及设备 | |
US7840617B2 (en) | Host device and memory system | |
US8880483B2 (en) | System and method for implementing extensions to intelligently manage resources of a mass storage system | |
TWI437441B (zh) | 多庫記憶體裝置之儲存位址重映射之方法及系統 | |
JP5756335B2 (ja) | 半導体メモリ装置のブロック併合方法 | |
CN101069163A (zh) | 存储器系统以及写入非易失性半导体存储器中的方法 | |
TWI409633B (zh) | 快閃記憶體儲存裝置、其控制器與資料寫入方法 | |
CN1171150C (zh) | 数据管理装置、数据管理方法和存贮数据的存贮卡 | |
CN1652253A (zh) | 存储卡和半导体器件 | |
US7404031B2 (en) | Memory card, nonvolatile semiconductor memory, and method of controlling semiconductor memory | |
US20070033325A1 (en) | Non-volatile memory with scheduled reclaim operations | |
CN1201231C (zh) | 数据存储器、数据处理系统和方法 | |
CN1705936A (zh) | 用于分割一逻辑块的方法及设备 | |
CN1873619A (zh) | 存储装置 | |
US20090164745A1 (en) | System and Method for Controlling an Amount of Unprogrammed Capacity in Memory Blocks of a Mass Storage System | |
US9454475B2 (en) | Control device, storage device, and data writing method | |
WO2007019198A2 (en) | Non-volatile memory with scheduled reclaim operations | |
CN1473296A (zh) | 非易失性存储装置及其控制方法 | |
TW202024924A (zh) | 資料儲存裝置與資料處理方法 | |
US20220342811A1 (en) | Method and apparatus for page validity management and related storage system | |
JP4332132B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination |