首页> 中国专利> 半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法

半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法

摘要

在半导体存储卡内设置主信息存储器,保持从访问装置提供的数据写入开始地址和数据尺寸。空物理区生成单元在根据数据写入开始地址和数据尺寸写入数据时,决定是否清除非易失性存储器的无效块以及所清除的块数。在清除的情况下,对于不同的存储器芯片同时执行数据写入和无效块的清除。由此,优化数据的清除处理,能够实现从访问装置对于半导体存储卡的高速访问。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2008-02-27

    授权

    授权

  • 2006-09-20

    实质审查的生效

    实质审查的生效

  • 2006-04-19

    公开

    公开

说明书

技术领域

本发明涉及半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法。

背景技术

在记录音乐内容或者视频数据等数字数据的记录媒体中,存在磁盘、光盘、光磁盘等多种类型。这些记录媒体类型之一的半导体存储卡,作为记录元件使用闪速ROM等半导体存储器,由于能够谋求减小记录媒体的体积,因此以数字静态照相机或者便携电话终端等小型的便携设备为中心正在迅速地普及。

保存在半导体存储卡中的数据由文件系统管理,用户能够容易地把所保存的数据处理为文件。作为以往使用的文件系统,有ISO/IEC9293,“Information Technology-Volume and file structure of diskcartridges for information”,1994年,所示的FAT文件系统。另外,还存在OSTA Universal Disk Format Specification Revision 1.50,1997年中记载的UDF(Universal Disk Format)或者NTFS(NewTechnology File System)等。由这些文件系统管理数据的半导体存储卡由于能够在解释相同的文件系统的设备之间共用文件,因此能够在设备之间收发数据。

在文件系统中,在进行数据的改写时,需要暂时清除数据然后写入数据这两个阶段的动作,存在至改写完全结束为止花费大量时间的问题。

以往,作为解决这种问题的方法,例如已知特开平11-191297号公报的半导体存储装置。该发明具有多个非易失性存储器,在进行第1非易失性存储器的写入时在第2非易失性存储器中进行清除,通过并行处理这些存储器可在短时间内改写数据。然而,在以往技术中,与写入到存储器芯片中的数据尺寸无关并行地进行清除处理。清除时间例如在NAND型闪速存储器中,一个清除块(通常是16KB)的清除中例如需要2.0mSec。从而,在数据尺寸小的情况下存在清除时花费时间,改写整体的时间反而加长这样的缺点。

发明内容

本发明是为解决上述的问题点而完成的。本发明是与访问装置连接使用的半导体存储卡,具备对于上述访问装置发送控制信号以及数据,接收来自上述访问装置的信号的主接口单元;包括多个非易失性存储器芯片,把多个连续的扇区分组为数据清除的最小单位的块的非易失性存储器;控制对于上述非易失性存储器的数据进行的清除、写入和读出的存储器控制器;暂时存储从上述访问装置提供的数据写入开始地址和数据尺寸的主信息存储器,其中,上述存储器控制器具有:根据暂时保持在上述主信息存储器中的数据写入开始地址和数据尺寸的值,决定是否清除上述非易失性存储器的无效块,在清除上述无效块时,同时处理对于一个非易失性存储器芯片的数据的写入和对于其它非易失性存储器芯片的块的清除的空物理区生成单元。

另外,本发明是与在半导体存储卡内使用的,具备对于上述访问装置发送控制信号以及数据,接收来自上述访问装置的信号的主接口单元;控制对于上述非易失性存储器的数据进行的清除、写入和读出的存储器控制器;暂时存储从上述访问装置提供的数据写入开始地址和数据尺寸的主信息存储器,其中,上述存储器控制器具有:根据暂时保持在上述主信息存储器中的数据写入开始地址和数据尺寸的值,决定是否清除上述非易失性存储器的无效块,在清除上述无效块时,同时处理对于一个非易失性存储器芯片的数据的写入和对于其它非易失性存储器芯片的块的清除的空物理区生成单元。

另外,该半导体存储器控制方法是具有在包括多个非易失性存储器芯片,把多个连续的扇区分组为数据清除的最小单位的块的非易失性存储器的半导体存储卡中的半导体存储器控制方法,其特征在于:在主信息存储器中暂时存储从访问装置提供的数据写入开始地址和数据尺寸,根据暂时保持在上述主信息存储器中的数据写入开始地址和数据尺寸的值,决定是否清除上述非易失性存储器的无效块,在清除上述无效块时,同时处理对于一个非易失性存储器芯片的数据的写入和对于其它非易失性存储器芯片的块的清除。

如果依据本发明,则根据从访问装置得到的写入开始地址和写入尺寸决定清除块的清除块数,与数据写入相一致,把清除块清除。因此,不会显现清除时间,能够不降低处理性能地进行清除,能够增加空块。由此,能够实现对于半导体存储卡的高速访问。

附图说明

图1是表示本发明实施例1中的半导体存储卡以及访问装置的说明图。

图2是表示本发明实施例1中的逻辑物理变换控制单元的表的说明图。

图3是表示本发明实施例1中的清除块的结构的说明图。

图4是表示对于本发明实施例1中的半导体存储卡的数据写入处理的流程。

图5是表示本发明实施例1中的子程序(1)的处理的流程。

图6是表示本发明实施例1中的子程序(2)的处理的流程。

图7是表示本发明实施例1中的数据写入和清除块的清除处理的时序图。

图8是表示共用本发明实施例1的存储器控制器和非易失性存储器的总线时的对于存储器芯片进行的写入处理和清除处理的时序图。

图9是表示本发明实施例2中的半导体存储卡以及访问装置的说明图。

图10是表示本发明实施例2中的非易失性存储器的结构的说明图。

图11是表示本发明实施例2中的高速模式下的写入处理的时序图。

图12是表示本发明实施例2中的低速模式下的写入处理的时序图。

图13是表示本发明实施例3中的半导体存储卡以及访问装置的说明图。

图14是表示本发明实施例3中的逻辑物理变换控制单元的表的说明图。

图15是表示本发明实施例3中的去除标志(deflag)处理的说明图。

图16是表示本发明实施例3中的去除标志处理的流程图。

图17是表示本发明实施例4中的半导体存储卡以及访问装置的说明图。

图18是表示本发明实施例4中的非易失性存储器的结构的说明图。

图19是表示以往例中的数据的记录处理的时序图。

图20是表示本发明实施例4中的数据的记录处理的时序图。

具体实施方式

以下,参照附图说明本发明的半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法的实施例。

(实施例1)

图1是表示本发明实施例1的半导体存储卡和访问装置的方框图。图1中,在访问装置100上连接半导体存储卡111。半导体存储卡111包括主接口(I/F)单元112、CPU113、RAM114、ROM115、存储器控制器116、非易失性存储器117以及主信息存储器118。主接口单元112是与访问装置100收发控制信号以及数据的接口,在ROM115中保存控制半导体存储卡111的程序。该程序把RAM14作为暂存区使用,在CPU113上动作。存储器控制器116是控制非易失性存储器117的元件。非易失性存储器117是半导体存储卡111内的数据存储区。存储器控制器116包括逻辑物理变换控制单元120、空物理区生成单元121以及非易失性存储器访问单元123。逻辑物理变换控制单元120如后所述,包括逻辑物理变换表131和入口列表132。

另外,空物理区生成单元121根据从访问装置100发送来的数据写入开始地址和数据尺寸,决定是否清除非易失性存储器117的无效块。

当清除无效块时,与数据写入同时进行清除。非易失性存储器访问单元123从存储器控制器116直接访问非易失性存储器117,进行数据的写入、读出以及清除。另外,半导体存储卡中的除去非易失性存储器117的所有块构成半导体存储器控制装置。

非易失性存储器117由两个闪速存储器的存储器芯片A、B构成,各个非易失性存储器芯片具有例如16MB的数据容量。非易失性存储器117如后所述,由地址管理区和数据区构成。两个存储器芯片A、B用独立的双向总线与存储器控制器116连接。

另外,主信息存储器118暂时保持从访问装置100提供的以扇区为单位的数据写入的开始扇区地址SA和以扇区为单位的写入尺寸L。

图2是表示逻辑物理变换控制单元120的说明图。逻辑物理变换控制单元120由逻辑物理变换表131和入口列表132构成。逻辑物理变换表131是表示根据从访问装置100指定的逻辑扇区地址LSA向物理扇区地址PSA进行变换的表。设非易失性存储器117作为逻辑空间具有2N个扇区空间,存储器芯片A与存储器芯片B的逻辑扇区地址在逻辑上是连续的。在逻辑物理变换表131中,前半部分即逻辑扇区地址O~N-1的部分是与非易失性存储器芯片A相对应的表区,后半部即逻辑扇区地址N~2N-1的部分是与非易失性存储器芯片B相对应的表区。图2中,如果设各逻辑扇区具有512B的用户数据区,存储器芯片A、B分别具有16MB的数据容量时,图2所示逻辑扇区地址N成为215。这里,由32个扇区形成一个物理块。从而,各物理块具有16KB的容量,由于该物理块也是能够选择性地清除的单位,因此称为清除块。

入口列表132是表示关于物理块地址为PBA0~2M-1的各物理块的状态的表,对于各物理块由2比特的数据构成。这里,00表示记录了有效数据的有效块,11表示虽然记录了数据,然而是无效数据的无效块,10表示不良的块,01表示清除完毕的块。入口列表132中,前半部分即物理块地址为0~M-1的部分也是与非易失性存储器芯片A相对应的表区,后半部分即物理块地址M~2M-1的部分也是与非易失性存储器芯片B相对应的表区。这两个表131、132分别记录在RAM等易失性存储器中。

图3是表示在各存储器芯片A、B中排列的清除块的结构的说明图。1个清除块全部用32个扇区构成。各扇区区域具有528字节的区域,由所谓的写入用户数据的数据区512字节和写入地址管理信息的管理区(MR)16字节构成。在地址管理信息中,包括相对应的逻辑地址,或者表示保存在相对应的数据区中的数据有效还是无效,或表示不良块的标志等。而且,在电源刚接通的初始化时,CPU113读出保存在存储器芯片A、B的各清除块的管理区MR中的信息,在逻辑物理变换控制单元120的RAM上生成图2的逻辑物理变换表131或者入口列表132。

使用图4~图6的流程图以及图7、图8的时序图说明这样构成的半导体存储卡的写入时的动作。在写入时,首先,与写入命令一起,访问装置100向半导体存储卡111转送写入的开始扇区地址SA和写入尺寸L。开始扇区地址SA和写入尺寸L暂时存储在主信息存储器118中。存储器控制器116根据暂时存储在主信息存储器118中的开始扇区地址SA和写入尺寸L,以及表示非易失性存储器117的前半区与后区域的边界的参数(扇区地址N),判别SA是否小于N(步骤S101)。另外,在SA小于N的情况下,判断SA+L是否超过N(步骤S102)。由此,判断是仅对于前半区(存储器芯片A)的写入,还是仅对于后半区(存储器芯片B)的写入,或者跨接两部分的写入。

如果是仅对于前半区的写入,则进入到步骤S103,使指针m成为L。指针m表示对于各存储器芯片的写入尺寸。然后执行子程序(1)的处理(步骤S104),结束处理。另外,如果在步骤S101中N大于等于SA,则由于是仅对于后半区的写入,因此在步骤S105中使指针m成为L,在步骤S106中进行子程序(2)的处理(步骤S106),然后结束处理。另外,如果是从前半部分向后半部分的写入即跨接两个存储器芯片A和B的写入,则在步骤S107中,使指针m成为N-SA,通过子程序(1)进行对于存储器芯片A的写入处理(步骤S108)。

接着,在步骤S109中,使指针m成为L-m,在步骤S110通过子程序(2)进行向存储器芯片B的写入处理(步骤S111)。

图5是表示子程序(1)的处理的流程图。在该流程图中,如果开始动作,则首先在步骤S111中,检查m×512B是否超过4KB。在本实施例1中,当写入数据尺寸是4KB时,需要2mSec的写入时间。空物理区生成单元121根据写入数据的尺寸是否是以512B为单位进行8次即是否大于等于4KB,判断是否清除作为写入对象的存储器芯片以外的存储器芯片(这里是存储器芯片B)。在清除的情况下发出清除指令。在步骤S111中,在该值超过了4KB的情况下,在步骤S112中,进行(m×512B)/4KB的运算。这里,n为商中的整数。然后,进入到步骤S113,与地址管理信息一起写入向存储器芯片A的空块送来的数据。另外,与此同时,清除存储器芯片B的n个无效块。根据在入口列表132中是否记录了11判断是否是无效快。清除以后,入口列表对于该块更新为01即清除完毕块。如果无效块小于等于n个,则清除所有的无效块,如果没有无效块则不需要清除。另外,在步骤S111中,如果写入数据的尺寸小于4KB,则在存储器芯片A的空块中仅进行写入,然后结束处理。

其次,图6是表示子程序(2)的流程图。该流程图中,如果开始动作,则首先在步骤S121中,检查m×512B是否超过4KB。在本实施例1中,以写入数据尺寸是4KB时需要2mSec的写入时间为例,空物理区生成单元121根据写入数据的尺寸是否是以512B单位进行8次即大于等于4KB,判断是否清除作为写入对象的存储器芯片以外的存储器芯片(这里是存储器芯片A)。在清除的情况下发送清除指令。在步骤S121中,在该值超过了4KB的情况下,在步骤S122中,进行(m×512B)/4KB的运算。这里,n为商中的整数。然后,进入到步骤S123,与地址管理信息一起写入向存储器芯片B的空块送来的数据。另外,与此同时,清除存储器芯片A的n个无效块。根据在入口列表132中是否记录了11进行判断是否是无效块。清除以后,入口列表对于该块更新为01即清除完毕块。如果无效块小于等于n个,则清除所有的无效块,如果没有无效块则不需要清除。另外,在步骤S121中,如果写入数据的尺寸小于等于4KB,则在存储器芯片B的空块中仅进行写入,然后结束处理。

其次,使用时序图说明步骤S113的存储器芯片A的写入和存储器芯片B的清除处理。图7表示仅向前半区(存储器芯片A)写入的情况下,写入尺寸为4KB时的时序图。图7的上部表示对于存储器芯片A的访问。发送写指令WC的期间,是向非易失性存储器芯片A转送写入指示和写入目的地地址的期间。数据转送(DATA)的期间是把写入数据向存储器芯片A转送的期间。另外,程序忙期间(BUSY)是实际上把写入数据写入存储器芯片A的期间。实际上由非易失性存储器访问单元123发送写指令。接着,在数据转送时,进行一个扇区部分的512B的写入数据和与其相对应的管理区的16B的信息即528B的数据转送。该期间大约是50μs。接着,写入时间建立忙标志(BUSY)。该期间大约是200μs。这样,如果对于最初扇区的写入(W1)结束,则在以下扇区的写入中反复进行同样的处理。这样,通过写入8个扇区部分的数据,能够写入一个物理块部分即4KB部分的数据。该4KB部分数据的写入时间需要250×8(μs),即大约2ms的时间。

另一方面,与此同步,对于存储器芯片B进行需要几乎相同时间的清除处理。该存储器芯片B的成为清除对象的块是在入口列表132中表现为无效块(在二进制中是11)的物理块。对于该物理块发送清除指令EC。如果这样做,则可以在清除过程中的期间得到清除忙信号(BUSY),在该期间进行清除。

这里,作为非易失性存储器使用了NAND闪速存储器时,相对于程序忙时间(200μs),清除忙时间更长一些(例如2mSec)。

通过以上的处理,在对于存储器芯片A的写入尺寸大于等于4KB的情况下,通过与存储器芯片B清除的同时进行写入处理,由于不显现清除时间,因此能够使总体的处理性能合理。进而,通过计算与写入尺寸L相当的清除块数,能够不降低处理性能,能够清除尽可能多的扇区。

另外,图7中表示了同时执行对于存储器芯片A的写入和存储器芯片B的清除的例子,而如图6的流程图的步骤S123所示那样,在对于存储器芯片B的写入和清除存储器芯片A的情况下,只是使存储器芯片A、B颠倒,就能够进行相同的动作。另外,在跨接存储器芯片A和B进行写入的情况下,也能够顺序执行这些处理。

另外,在该实施例中,非易失性存储器117的存储器芯片A、B用独立的总线连接到存储器控制器116,而也可以用一条总线共同连接。其中,这种情况下,为了使图7的写入指令与清除指令不产生总线竞争,空物理区生成单元121在时间上错开写指令WC以及数据转送时间和清除指令的发送定时。即如图8所示,在使用总线的写指令发送期间WC、数据转送期间(DATA)以后,发送清除指令EC。而且在发送了清除指令以后如果结束BUSY状态则进行下一个扇区的写指令和接在其后面的数据转送。如果这样做,则能够用一条总线共同连接多个存储器芯片与存储器控制器。

另外,在该实施例中,在要求与清除块的清除时间相当的写入时间的情况下,并行处理清除与写入。这里示出的数值是一个例子,根据写入时间和清除时间,这些数值能够适当地选择。

另外,图2所示的逻辑物理变换表也可以是用于以块为单位进行变换的变换表。另外,还可以按照把多个清除块作为一组为单位进行变换。进而,在该实施例中,作为非易失性存储器使用了两个存储器芯片,而也能够使用多个任意的存储器芯片来构成。

(实施例2)

图9表示本发明实施例2中的半导体存储卡。本图中,在访问装置100上连接半导体存储卡111。半导体存储卡111包括主接口(I/F)单元112、CPU113、RAM114、ROM115、存储器控制器141、非易失性存储器117以及主信息存储器142。主接口单元112是与访问装置100收发控制信号以及数据的接口。在ROM115中保存控制半导体存储卡111的程序。该程序把RAM14作为暂存区使用,在CPU113上进行动作。存储器控制器116是控制非易失性存储器117的元件。

非易失性存储器117是半导体存储卡111内的数据存储区。存储器控制器141包括逻辑物理变换控制单元143以及非易失性存储器访问单元144。逻辑物理变换控制单元143包括逻辑物理变换表和入口列表。非易失性存储器访问单元144从存储器控制器141直接访问非易失性存储器117,进行数据的写入、读出以及清除。

非易失性存储器117由两个闪速存储器的存储器芯片A、B构成,各个非易失性存储器芯片具有例如16MB的数据容量。非易失性存储器117如后所述,由地址管理区和数据区构成。两个存储器芯片A、B用独立的双向总线No.0、No.1与存储器控制器141连接。

主信息存储器142保持从访问装置100传送的访问速度,保持高速模式以及低速模式的某一种状态。非易失性存储器访问单元144在设定为高速模式的情况下,由于允许峰值电流大的访问,因此在访问非易失性存储器117时高速地进行访问。另外,控制成在设定为低速模式的情况下,在访问非易失性存储器117时,减小峰值电流,减轻对于电源的负荷。

图10是表示存储器芯片A、B的内部结构的说明图。非易失性存储器117内的存储器芯片A、B的每一个分别分割为存储单元(bank)B0~存储单元B34个存储单元。存储单元B0~B3分别以页单位同时进行写入。各清除块EB(4KB=4224B)分别由页0、页1两页构成。把存储器芯片A、B的每个存储单元中由各1个清除块构成的总共8个清除块作为逻辑段LS。非易失性存储器117的整体由LS0~LS255的256段构成。

以下以图10、图11为中心对于以上那样构成的半导体存储卡以及访问装置说明其动作。首先,在访问装置100接入电源进行初始化时,或者当访问装置100上的开关操作执行时,转送速度模式,保存在主信息存储器142中。非易失性存储器访问单元144参照保存在主信息存储器142中的速度模式,决定访问的形态。

其次,使用图11说明高速模式的情况。在以高速模式进行写入时,如图11所示那样,从访问装置100连续地经由主接口单元112转送写入数据A、B、C、D……。这里写入数据的逻辑地址作为连续的地址。这样转送的数据暂时保持在缓冲器中。该地址由逻辑物理变换控制单元143变换为物理地址。数据以及地址通过总线No.0写入到存储器芯片A。这里,WC表示写指令。另外,T1是数据转送期间,T2是实际上在存储器芯片A中进行写入处理的程序忙时间。如果总线No.0的数据转送结束,则接着对于总线No.1发送写指令,接着在T1期间进行数据B的数据转送。对于存储器芯片B,在T2期间进行数据的写入。在该写入中,如果对于存储器芯片A的写入结束,则从总线No.0进行写指令、数据C的数据转送以及写入。另外,如果对于存储器芯片B的写入结束,则进行写指令、数据D的转送和数据的写入处理。这样,数据A、C的写入与数据B、D的写入时间如图11所示重叠,而通过并行写入,能够进行高速的写入处理。

另一方面,使用图12说明关于设定在主信息存储器142中速度模式是低速模式的情况。写入数据A、B、C、D……的实际写入期间,即程序忙期间与数据转送等相比较是更多地消耗电流的期间。在低速模式下,进行写入控制使得程序忙时间在时间上不重叠。具体地讲,如果对于总线No.0发送写指令WC,进行数据A的转送,则进行存储器芯片A的写入,在该期间成为程序忙(BUSY)。直到该写入处理结束、向非易失性存储器访问单元144通知解除作为写入对象的存储器芯片A的程序忙信号(BUSY)为止,非易失性存储器访问单元144对于访问装置100反馈卡忙信号,停止数据转送。然后,如果解除了停止,则从访问装置100继续转送数据B。然后,对于总线No.1发送写指令WC,进行数据B的数据转送。如果这样做,则在存储器芯片的写入时成为程序忙(BUSY)。在该期间也从访问装置100停止数据的转送。如果写入结束,则转送下一个数据C,反复进行同样的处理。通过这样双向控制,分散更多地消耗电流的程序忙期间,能够抑制峰值电流。

从而,在使用电源供给电路的耐电流值低的访问装置100的情况下,应该选择低速模式,访问装置100在主信息存储器142中设定低速模式。另一方面,在使用电流供给电路的耐电流值高的访问装置100的情况下,要求高速访问时,在主信息存储器142中设定高速模式。

非易失性存储器访问单元144选择图11或者图12所示的访问形态,进行与各种形态相对应的写入控制。

另外,在该实施例中,使用两个存储器芯片A、B分别切换允许数据写入重叠的高速模式和不允许重叠的低速模式。在存储器芯片更多,例如4片的情况下,还能够切换允许两个存储器的重叠写入的低速模式和能够同时进行对于所有存储器芯片的写入的高速模式。另外,还可以在低速模式下允许仅对于某一个存储器芯片的写入,在高速模式下允许对于大于等于两个的存储器芯片的重叠写入。

该实施例的半导体存储卡是连接在访问装置上使用的半导体存储卡,具备:

对于上述访问装置发送控制信号以及数据,接收来自上述访问装置的信号的主接口单元;

包括多个非易失性存储器芯片,把多个连续的扇区分组为作为数据清除的最小单位的块的非易失性存储器;

与上述多个非易失性存储器芯片分别用独立的双向总线连接,控制数据的清除、写入和读出的存储器控制器;

暂时存储从上述访问装置提供的写入速度模式的主信息存储器,

上述存储器控制器具备根据存储在上述主信息存储器中的速度模式,控制对于上述多个非易失性存储器的各个写入定时的同时,对于上述多个非易失性存储器芯片进行写入的非易失性存储器访问单元。

这里,保持在上述主信息存储区中的写入速度模式是高速的情况下,对于上述多个非易失性存储器芯片能够并行地进行写入,

保持在上述主信息存储器中的写入速度模式是低速的情况下,对于上述多个非易失性存储器芯片能够顺序地进行写入。

另外,本实施例的半导体存储器控制方法是在具有包括多个非易失性存储器芯片,把多个连续的扇区分组作为数据清除的最小单位的块的非易失性存储器的半导体存储卡中的控制方法,

根据存储在上述主信息存储器中的速度模式,能够在控制对于上述多个非易失性存储器的各个写入定时的同时,对于上述多个非易失性存储器芯片进行写入。

(实施例3)

其次说明本发明的实施例3。图13是表示该实施例的半导体存储卡的方框图。图13中,在访问装置100上连接半导体存储卡111。半导体存储卡111包括主接口(I/F)单元112、CPU113、RAM114、ROM115、存储器控制器151、非易失性存储器117以及主信息存储器155。主接口单元112是与访问装置100收发控制信号以及数据的接口。在ROM115中保存控制半导体存储卡111的程序。该程序把RAM114作为暂存区使用,在CPU113上进行动作。存储器控制器151是控制非易失性存储器117的元件。非易失性存储器117是半导体存储卡111内的数据存储区。存储器控制器151包括逻辑物理变换控制单元152、空物理区生成单元153以及非易失性存储器访问单元154。逻辑物理变换控制单元152如后所述包括逻辑物理变换表156和入口列表157。空间物理区生成单元153整理非易失性存储器117内的记录状态,使空块(清除完毕块)增加,成为在写入之前不进行清除,任何时候都能够写入的状态。非易失性存储器117既可以是一个半导体芯片,也可以使用多个非易失性存储器。另外,设非易失性存储器117内的清除块与实施例1的图3相同。

这里,空物理区生成单元153在以各清除的块为单位,在大于等于规定阈值Th1的扇区中写入了数据的时刻,把其清除块作为去除标志对象块,登录到后述的逻辑物理变换控制单元152的入口列表中。另外,如后所述,计数入口列表内的空块,当计数值成为小于等于规定的阈值Th2时,向访问装置100发送去除标志请求信号。

图14是表示了逻辑物理变换控制单元152的说明图。逻辑物理变换控制单元152是管理从由访问装置100指定的逻辑物理扇区地址LSA向物理扇区地址PSA的变换处理以及各物理块的状态的表。该表由把逻辑扇区地址LSA变换为物理扇区地址PSA的逻辑物理变换表156和入口列表157构成。入口列表157与各物理块地址PBA0~M-1相对应,保持表示各物理块状态的3比特的信息。这里,000表示有效块,011表示无效块,010表示不良块,001表示空块,即清除完毕块,100表示成为去除标志对象的块。这两个表存储在RAM等易失性存储器中。在电源刚接通后的初始化时,CPU113读出保存在非易失性存储器117的各清除块的管理区中的信息,在逻辑物理变化控制单元152内的RAM上生成逻辑物理变换表156或者入口列表157。

以下,以图15、图16为中心对于以上那样构成的半导体存储卡以及访问装置说明其动作。在访问装置100对于半导体存储卡进行写入等处理中,非易失性存储器117的空块逐渐减少。这里,在本实施例3中,不是像实施例2那样顺序地在清除块内的各扇区(页)写入,访问装置100转送的逻辑扇区与其逻辑扇区地址无关,按照清除块的升序写入。具体地讲,如图15所示,如果有从访问装置100向逻辑扇区LS4、LS0、LS0、LS1、LS3……的写入命令,则在清除块1的扇区号的0、1、2、3……位置升序地写入。另外,N是表示新标志信息的标志,0是表示旧信息的标志。

图16是表示半导体存储卡的处理的流程图。如果开始动作,则首先在步骤S301中检查是否有访问请求,另外,如果不是访问请求,则检查是否是去除标志指示(步骤S302)。如果有访问请求,则在步骤S303中进行卡访问。然后,在步骤S303中,检查所写入的非易失性存储器的清除块中的有效扇区是否超过阈值Th1,如果小于等于阈值Th1,则返回到步骤S301、302的子程序,反复进行同样的处理。在进入卡访问动作,当在清除块内写入了超过阈值Th1的扇区的时刻,空物理区生成单元153把其清除块作为去除标志对象块,登录到图14的入口列表157中(步骤S305)。然后,从入口列表157搜索其它的空块(清除完毕块)将访问装置100随后转送来的逻辑扇区的数据写入其中。通过持续该动作,入口列表中的空块逐渐减少,反之,去除标志对象块增多。空物理区生成单元153在步骤S305中把清除块作为去除标志对象块以后,进入到步骤S306,计数空块数,检查是否小于等于阈值Th2。如果空块数超过阈值Th2则返回到步骤S301、302的循环,反复进行同样的处理。在空块数小于等于阈值的情况下,由于认为通常去除标志对象的块数也很多,因此进入到步骤S307,向访问装置100发送去除标志请求信号。另外,在步骤S306中,也可以不是计数空块数而是计数去除标志对象标志。另外,在步骤S307中,代替去除标志请求信号,也可以向访问装置100发送访问计数值。

访问装置100在接收到去除标志请求信号以后,也可以立即把去除标志指示信号转送到半导体存储卡111。另外,当得到了上述计数值时,也可以根据计数值,与随后转送的数据量相对应,在看清了去除标志指示信号的转送时期的基础上,发送去除标志指示信号。如果存储卡从访问装置接收到去除标志请求信号,则从步骤S302进入到步骤S308,把从访问装置100转送来的去除标志指示信号暂时存储在主信息存储器155中。然后,空物理区生成单元153参照该信号,对于非易失性存储器访问单元154发送去除标志处理的指示。

例如,在图15中,清除块EB1和EB5的每一个都是作为去除标志对象块所登录的清除块。这种情况下,观察清除块EB1、EB5的各扇区号码(仅是标记了新标志N的扇区),如在空的清除块9中按照逻辑扇区顺序进行合并处理那样,向非易失性存储器访问单元154发送读写指示。非易失性存储器访问单元154根据该指示,如图15所示,从清除块EB1和EB5,由建立了新标志N的逻辑扇区复制到空清除块EB9。然后,清除块EB1、EB5作为无效块登录在入口列表157中。如果这样做,则与半导体存储卡不是根据来自访问装置的指示进行去除标志的情况相比较,由于根据来自访问装置的指示进行去除标志,因此能够不降低速度,在必要的时期内进行去除标志。

另外,逻辑物理变换表或者入口列表如果比较高速地进行访问,则也可以使用RAM以外的易失性读写存储器。

这里,本实施例的半导体存储卡连接在访问装置上使用,具备:

对于上述访问装置发送控制信号以及数据,接收来自上述访问装置的信号的主接口单元;

包括多个非易失性存储器芯片,把多个连续的扇区分组为数据清除的最小单位的块的非易失性存储器;

控制对于上述非易失性存储器的数据的清除、写入和读出的存储器控制器;

暂时存储从上述访问装置提供的去除标志指示信号的主信息存储器,

上述存储器控制器具有检测上述非易失性存储器的清除完毕块的剩余量,当清除完毕块数小于等于规定数时,对于上述访问装置发送去除标志请求信号,并且当在主信息存储器中暂时存储去除标志指示信号时,执行去除标志的空物理区生成单元。

另外,本实施例的半导体存储器的控制方法是在具有包括多个非易失性存储器芯片,把多个连续的扇区分组为数据清除的最小单位的块的非易失性存储器的半导体存储卡中的半导体存储器控制方法,

把从访问装置提供的去除标志指示信号暂时存储在主信息存储器中,

检测上述非易失性存储器的清除完毕块的剩余量,

当清除完毕块数小于等于规定数时,对于上述访问装置发送去除标志请求信号,

当在主信息存储器中暂时存储了去除标志指示信号时,执行去除标志。

(实施例4)

图17是表示本发明实施例4中的访问装置和半导体存储卡的方框图。在图17中,在访问装置100上连接半导体存储卡111。半导体存储卡111包括主接口(I/F)单元112、CPU113、RAM114、ROM115、存储器控制器161、非易失性存储器164以及主信息存储器165。主接口单元112是与访问装置100收发控制信号以及数据的接口。在ROM115中保存控制半导体存储卡111的程序。该程序把RAM114作为暂存区使用,在CPU113上进行动作。存储器控制器161是控制非易失性存储器164的元件。非易失性存储器164是半导体存储卡111内的数据存储区。存储器控制器161包括逻辑物理变换控制单元162以及非易失性存储器访问单元163。非易失性存储器访问单元163从存储器控制器161直接访问非易失性存储器164,进行数据的写入、读出以及清除。

另外,主信息存储器165暂时保持来自访问装置100的分配表更新指示信号。

图18是表示了非易失性存储器164的内部结构的说明图。非易失性存储器164中的清除块或者页的标准与实施例2的非易失性存储器芯片相同。非易失性存储器164与实施例1~3不同,地址管理信息以逻辑物理变换表或者入口列表的格式形式存储在非易失性存储器164内的分配表(AT)区中。这里,所谓分配表(AT)表示存储器控制器161用于管理非易失性存储器164的表。分配表区(AT区)把作为管理信息的AT汇总记录到与数据区不同的区域中。在存在于非易失性存储器164内的清除块数非常多的情况下,如实施例1~3那样,在初始化时,根据各清除块的管理区的管理信息,如果采取在RAM上生成逻辑物理变换表或者入口列表的方法,则花费比较长的时间。因此,在使用清除块数多的非易失性存储器的情况下,为了缩短初始化时间,采用集中在非易失性存储器164的特定AT区中保持管理信息的AT管理方式(以下,称为集中型保存方式)。

逻辑物理变换控制单元162包括逻辑物理变换表和入口列表。两者都存储在RAM等易失性存储器中。在电源刚接通后的初始化时,CPU113读出非易失性存储器164的AT区上的分配表,在逻辑物理变换控制单元162内的RAM上生成逻辑物理变换表或者入口列表。在AT管理所有数据区的情况下,来自AT的数据读出即AT读出也可以仅是在初始化时进行。

以下,以图18~图20为中心对于如以上那样构成的半导体存储卡以及访问装置说明其动作。图19是表示了以往的非易失性存储器访问单元的访问形态的说明图,图20是表示了非易失性存储器访问单元163的访问形态的说明图。在以往的半导体存储卡中,在每次从访问装置100写入数据时,同时更新逻辑物理变换控制单元162的表。从而,需要把更新了的逻辑物理变换控制单元162的表写回到非易失性存储器164中的处理。图19表示数据写入信息的处理,数据写表示数据的写入期间,AT写表示把逻辑物理变换控制单元162的被更新的表写回到非易失性存储器164的AT区中的处理。

由于在该AT写中需要的时间上的开销(over head),处理性能方面降低。特别是,在数据写的容量小的情况下,对于整体的处理时间(数据写时间+AT写时间)由于AT写时间的比例比较大,因此成为一个问题。

在访问装置100例如连续写入数百KB级尺寸的用户数据,进而访问装置100一侧的FAT更新也以数百KB级进行更新的系统中,AT也可以与其周期相对应进行更新。其理由是,在更新文件·分配表(以下,称为FAT),向非易失性存储器164的写入结束之前,发生了电源断开等的情况下,由于不更新FAT,因此也不需要更新AT。反之,可以说取得FAT更新与AT更新的匹配是合理的。访问装置100根据其使用用途,FAT更新的范围不同。从而,为了根据使用用途进行处理性能的优化,可以从访问装置100一侧控制AT更新的定时,转送AT更新指示信号。因此在本实施例4中,使用访问装置100指示AT更新的AT更新指示信号。

在本实施例中,如图20所示,在写入了多个数据以后,结束FAT写入,然后,从作为主机的访问装置100向半导体存储卡提供AT更新指示信号。AT更新指示信号暂时保持在主信息存储器165中。非易失性存储器访问单元163把被更新的逻辑物理变换控制单元162内的逻辑物理变换表或者变换表的信息作为AT,写入到非易失性存储器164的AT区中。

同样,在清除了多个数据的情况下,也结束FAT的写入,然后,从作为主机的访问装置100向半导体存储块提供AT更新指示信号。AT更新指示信号暂时保持在主信息存储器165中。非易失性存储器访问单元163把被更新的逻辑物理变换控制单元162内的逻辑物理变换表或者变换表的信息作为AT写入到非易失性存储器164的AT区中。如果这样做,则能够减少AT写时的时间上的开销,提高处理性能。

这里,本发明的半导体存储卡连接到访问装置上使用,特征是具备:

对于上述访问装置发送控制信号以及数据,接收来自上述访问装置的信号的主接口单元;

把多个连续的扇区分组为数据清除的最小单位的块,把地址管理信息区和用户数据区分别保持在不同的块中的非易失性存储器,

具有保持地址管理信息的易失性存储器,对于上述非易失性存储器进行数据的清除、写入和读出,在每次进行数据的清除和写入时更新上述易失性存储器的存储器控制器;

暂时存储从访问装置转送来的地址管理信息更新信号的主信息存储器,

上述存储器控制器具有当从上述访问装置提供了写入命令和数据时,把被转送来的数据写入到上述非易失性存储器中,当提供了清除指令时清除所指定的块,并且当在上述主信息存储器中保持上述地址管理信息更新信号时,把保持在上述存储器控制器的易失性存储器中的地址管理信息写入到上述非易失性存储器的地址管理信息区中的非易失性存储器访问单元。

另外,本实施例的半导体存储器的控制方法是在具有把连续多个扇区分组为数据清除的最小单位的块,地址管理信息区和用户数据区分别保持在不同的块中的非易失性存储器的半导体存储器卡中的半导体存储器控制方法,特征是:

具有保持地址管理信息的易失性存储器,在每次对于上述非易失性存储器进行数据清除和写入时,更新上述非易失性存储器,

把从访问装置转送来的地址管理信息更新信号暂时存储在主信息存储器中,

当从上述访问装置提供了写入命令和数据时,把转送来的数据写入到上述非易失性存储器中,

当提供了清除命令时清除所指定的块,

当在上述主信息存储器中保持了上述地址管理信息更新信号时,从保持在上述存储器控制器的易失性存储器中的地址管理信息写入到上述非易失性存储器的地址管理信息区中。

产业上可使用性

本发明的半导体存储卡、半导体存储器控制装置通过优化访问装置一侧、半导体存储卡一侧的某一个或者双方的处理,能够实现对于半导体存储卡的高速访问。这种半导体存储卡以及存储装置或者方法能够在把半导体存储卡作为记录媒体使用的数字AV设备或者便携电话终端、数码照相机和PC等中利用。另外,在记录转送速率高的高品质AV数据的记录媒体以及设备中使用的情况下,能够特别适宜地发挥作用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号