非挥发性存储器装置及其操作方法

文档序号:10654371阅读:315来源:国知局
非挥发性存储器装置及其操作方法【专利摘要】一种非挥发性存储器装置及其操作方法。非挥发性存储器装置包括非挥发性储存电路、主存储器以及控制器。逻辑块地址群组的每一个包括多个逻辑块地址。这些逻辑块地址群组的每一个被分配有群组读取计数值。这些群组读取计数值的调整是由主机的读指令所触发。当这些群组读取计数值中的一个读取计数值超出预设范围时,控制器对读取计数值的对应逻辑块地址群组所对应的非挥发性储存电路的非挥发性储存块进行扫描操作,以检查错误比特数量。控制器依据扫描操作的结果而决定是否将对应逻辑块地址群组所对应的非挥发性储存块进行储存块数据搬移操作。【专利说明】非挥发性存储器装置及其操作方法
技术领域
[0001]本发明是有关于一种存储器装置,且特别是有关于一种非挥发性存储器装置及其操作方法。【
背景技术
】[0002]—般固态硬盘(solidstatedisk/drive,SSD)或随身盘(memorydisk)在操作过程中,需要使用映射表(mappingtable)来记录逻辑地址(logicaladdress)至物理地址(physicaladdress)的映射关系(或转换关系)。所述逻辑地址可能包括逻辑块地址(logicalblockaddress,LBA)及/或逻辑页地址(logicalpageaddress),而所述物理地址可能包括物理块地址(physicalblockaddress,PBA)及/或物理页地址(physicalpageaddress)。主机(host)通常依据页面映射(PageMapping)、区块映射(BlockMapping)、置换区块(ReplacementBlock)或日志区块(LogBlock)等模式对固态硬盘或随身盘内的数据进行存取。尽管不同模式对应的映射表所存储的内容各不相同,但当固态硬盘或随身盘接收主机的存取指令时,固态硬盘或随身盘均须依据映射表而将该存取指令的逻辑地址转换为固态硬盘或随身盘中快闪存储器(FLASHmemory)的物理地址,然后对转换获得的物理地址所指的物理存储器(物理块或物理页)执行该存取指令。[0003]在不断执行主机的众多存取指令的过程中,逻辑地址与物理地址的对应关系可能会被对应地改变,因此映射表的内容可能会被不断地更新。通常映射表被储存在动态随机存取存储器(dynamicrandomaccessmemory,DRAM)中,以便加快存取速度。当固态硬盘或随身盘进行断电(power-off)程序时,映射表会被保存于固态硬盘或随身盘内的快闪存储器中,以确保不会因为断电而佚失了映射表的内容。当供电给固态硬盘或随身盘时,固态硬盘会进行初始化程序。于初始化程序中,固态硬盘或随身盘可以从快闪存储器读出映射表,以及将该映射表写回动态随机存取存储器。[0004]—般而言,当快闪存储器的某一个存储单元(memorycell)被读取时,快闪存储器的读取方式会导致在同一区块中相近于所述某一个存储单元的其他存储单元的比特数据可能发生非预期地改变。这即是所谓的数据读取干扰(datareaddisturbance)。对于快闪存储器的一个物理页而言,在多次对此物理页进行读取操作的情形下,随着时间的增加(或随着读取次数的增加),此物理页发生错误的比特数量随之增加。一般而言,快闪存储器配置有错误检查和纠正(ErrorCheckingandCorrecting,ECC)机制。当数据中每单位比特量(例如IKBytes,或一个物理页的比特数量)发生错误的比特数量小于某个容忍数量时,ECC机制可以修正这些发生错误的比特,因此快闪存储器可以提供正确数据给主机。当数据中每单位比特量发生错误的比特数量大于所述某个容忍数量时,则所述ECC机制就无法修正这些发生错误的比特。错误比特太多而无法被ECC机制修复,此表示数据遗失。【
发明内容】[0005]本发明提供一种非挥发性存储器装置及其操作方法,以弹性决定扫描操作的时机,以及依据扫描操作的结果而动态决定是否进行储存块数据搬移操作,以避免数据遗失。[0006]本发明的实施例提供一种非挥发性存储器装置,包括非挥发性储存电路、主存储器以及控制器。非挥发性储存电路具有由多个物理块地址所定址的多个非挥发性储存块。主存储器用以存放映射表,其中映射表用以记录多个逻辑块地址与这些物理块地址的转换关系。控制器耦接至主存储器与非挥发性储存电路。控制器将这些逻辑块地址分群为多个逻辑块地址群组,而这些逻辑块地址群组的每一个包括多个逻辑块地址。这些逻辑块地址群组的每一个被分配有一个群组读取计数值。这些群组读取计数值的调整是由主机的读指令所触发。当这些群组读取计数值中的一个读取计数值超出预设范围时,控制器对读取计数值所对应的对应逻辑块地址群组的逻辑块地址所对应的非挥发性储存块进行扫描操作,以检查错误比特数量。控制器依据扫描操作的结果而决定是否将对应逻辑块地址群组的逻辑块地址所对应的非挥发性储存块的其中一个储存块进行储存块数据搬移操作。[0007]本发明的实施例提供一种非挥发性存储器装置的操作方法。此操作方法包括:配置非挥发性储存电路,其中非挥发性储存电路具有由多个物理块地址所定址的多个非挥发性储存块;配置主存储器以存放映射表,其中映射表用以记录多个逻辑块地址与这些物理块地址的转换关系;由控制器将这些逻辑块地址分群为多个逻辑块地址群组,其中这些逻辑块地址群组的每一个包括多个逻辑块地址,以及这些逻辑块地址群组的每一个被分配有一个群组读取计数值;依据主机的读指令而触发这些群组读取计数值的调整;当这些群组读取计数值中的一个读取计数值超出预设范围时,由控制器对读取计数值所对应的对应逻辑块地址群组的逻辑块地址所对应的非挥发性储存块进行扫描操作,以检查错误比特数量;以及由控制器依据扫描操作的结果而决定是否将对应逻辑块地址群组的逻辑块地址所对应的非挥发性储存块的其中一个储存块进行储存块数据搬移操作。[0008]基于上述,本发明实施例所述非挥发性存储器装置及其操作方法可以记录多个逻辑块地址群组各自的群组读取计数值。控制器可以依照这些群组读取计数值来弹性决定扫描操作的时机。依据扫描操作的结果,控制器可以动态决定是否进行储存块数据搬移操作,以避免数据遗失。[0009]为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。【附图说明】[0010]图1是依照本发明实施例说明一种非挥发性存储器装置的电路方块示意图。[0011]图2是依照本发明一实施例说明图1所示非挥发性存储器装置的操作方法示意图。[0012]图3是依照本发明另一实施例说明图1所示非挥发性存储器装置的操作方法示意图。[0013]图4是依照本发明一实施例说明储存块数据搬移操作的操作方法示意图。[0014]图5是依照本发明一实施例说明图1所示非挥发性储存电路的部份非挥发性储存块(物理块)的示意图。[0015]附图元件说明[0016]10:主机[0017]100:非挥发性存储器装置[0018]110:控制器[0019]120:主存储器[0020]130:非挥发性储存电路[0021]Block_A、Block_B、Block_C:非挥发性储存块[0022]MT:映射表[0023]Page_A0、Page_Al、Page_A2、Page_A3、Page_A255、Page_B0、Page_Bl、Page_B2、Page_B3、Page_B255、Page_C0、Page_Cl、Page_C2、Page_C3、Page_C255:物理页[0024]S210?S250、S251?S255、S310?S320、S410?S420:步骤[0025]SMT_l、SMT_2、SMT_n:子映射表【具体实施方式】[0026]在本申请说明书全文(包括权利要求)中所使用的「耦接(或连接)」一词可指任何直接或间接的连接手段。举例而言,若文中描述第一装置耦接(或连接)于第二装置,则应该被解释成该第一装置可以直接连接于该第二装置,或者该第一装置可以通过其他装置或某种连接手段而间接地连接至该第二装置。另外,凡可能之处,在附图及实施方式中使用相同标号的元件/构件/步骤代表相同或类似部分。不同实施例中使用相同标号或使用相同用语的元件/构件/步骤可以相互参照相关说明。[0027]图1是依照本发明实施例说明一种非挥发性存储器(non-volatilememory,NVM)装置100的电路方块示意图。非挥发性存储器装置100耦接至主机10。非挥发性存储器装置100的例子包括个人计算机存储卡国际协会(PersonalComputerMemoryCardInternat1nalAssociat1n,PCMCIA)卡、小型快闪(compactflash,CF)卡、智能媒体卡(smartmediacard,SM,SMC)、随身盘(memorystick)、多媒体卡(multimediacard’MMC、RS-MMC、MMC-micro)、安全数字卡(securitycard,SD,miniSD,microSD,SDHC)、通用快闪储存(universalflashstorage,UFS)装置、固态硬盘(solidstatedisk/drive,SSD)等等。依照不同的应用情境,非挥发性存储器装置100可以储存音频、影像及/或视频数据。[0028]主机10的例子包括计算机、手持式电子装置或其他电子装置。例如,主机10可以是个人计算机、手持式计算机、个人数字助理(personaldigitalassistant,PDA)、可携式媒体播放器(portablemediaplayer,PMP)、MP3播放器、智能手机(smartphone)、数字相机、摄录机(camcorders)、录音机、游戏机、传真机、扫描器、打印机等等。[0029]主机10与非挥发性存储器装置100可利用任一种标准化接口予以有效地相互连接。例如,所述标准化接口包括小型计算机系统接口(smallcomputersysteminterface,SCSI)、串行连接小型计算机系统接口(SerialAttachedSCSI,SAS)、增强型小型磁盘接口(EnhancedSmallDiskInterface,ESDI)、串行先进技术连接(serialadvancedtechnologyattachment,SATA)、快速夕卜围元件互连(peripheraIcomponentinterconnectexpress,PC1-express)、集成驱动电子装置(integrateddriveelectronics,IDE)接口、通用串行总线(universalserialbus,USB)、雷电(Thunderbolt)接口或其他接口。本发明并未局限于主机10与非挥发性存储器装置100之间的接口结构。[0030]非挥发性存储器装置100包括控制器110、主存储器120以及非挥发性储存电路130。控制器110通过上述标准化接口耦接至主机10。控制器110耦接至主存储器120与非挥发性储存电路130。主存储器120的例子包括动态随机存取存储器(dynamicrandomaccessmemory,DRAM)、静态随机存取存储器(staticrandomaccessmemory,SRAM)或是其他挥发性存储器(volatilememory)。非挥发性储存电路130举例而言是快闪存储器(FLASHmemory)。非挥发性储存电路130具有由多个物理块地址所定址的多个非挥发性储存块。主存储器120具有映射表(mappingtable)MT,其中映射表MT用以记录多个逻辑块地址与非挥发性储存电路130的物理块地址的转换关系。非挥发性存储器装置100的控制器110依据主存储器120内的映射表MT,将主机10的存取指令(例如「写」指令、「读」指令或是其他指令)的逻辑地址转换为非挥发性储存电路130的物理地址。[0031]由于数据读取干扰(datareaddisturbance)的影响,在多次对快闪存储器(非挥发性储存电路130)的某一物理页/物理块进行读取操作的情形下,随着时间的增加(或随着读取次数的增加),此物理页/物理块发生错误的比特数量随之增加。当一个物理页中发生错误的比特数量小于某个容忍数量时,错误检查和纠正(ErrorCheckingandCorrecting,ECC)机制可以修正这些发生错误的比特,因此非挥发性储存电路130可以提供正确数据给主机10。当一个物理页中发生错误的比特数量大于所述某个容忍数量时,则所述ECC机制就无法修正这些发生错误的比特。错误比特太多而无法被ECC机制修复,将造成数据的遗失。因此必须有一种机制,在物理页的数据还能被ECC机制修正回来的情况下,SP时地将错误比特很多的物理页(或物理块)的数据搬移/复制到另一个物理页(或物理块)。[0032]图2是依照本发明一实施例说明图1所示非挥发性存储器装置100的操作方法示意图。请参照图1与图2,于步骤S210中配置非挥发性储存电路130、主存储器120与控制器110于非挥发性存储器装置100。控制器110进行步骤S220,以便将主机端的多个逻辑地址(例如,逻辑块地址(logicalblockaddress,LBA))分群为多个逻辑块地址群组,其中这些逻辑块地址群组的每一个包括多个逻辑块地址。例如,假设共有10000个逻辑块地址,则步骤S220可以将这些逻辑地址分群为400个逻辑块地址群组,其中每一个逻辑块地址群组各自具有25个逻辑块地址。上述逻辑块地址的数量以及逻辑块地址群组的数量,可以依据实际设计需求而决定。[0033]上述分群的方式,可以依据实际设计需求而决定。在一些实施例中,逻辑块地址的分群方式可以依照逻辑块地址值的顺序。例如,假设每一个逻辑块地址群组各自具有30个逻辑地址,则步骤S220可以将逻辑块地址O?29分群为逻辑块地址群组0,将逻辑块地址30?59分群为逻辑块地址群组I,其余依此类推。在另一些实施例中,基于平均磨损(wear-1eveIing)的考量或是其他考量,步骤S220可以用不连续的方式对逻辑块地址进行分群。例如,假设将10000个逻辑块地址分群为400个逻辑块地址群组且每一个逻辑块地址群组各自具有25个逻辑块地址,则步骤S220可以将逻辑块地址O、400、800、1200、1600……分群为第I个逻辑块地址群组,将逻辑块地址1、401、801、1201、1601……分群为第2个逻辑块地址群组,其余依此类推,最后将逻辑块地址399、799、1199、1599、1999……分群为第400个逻辑块地址群组。在其他实施例,步骤S220可以用散列函数(hashfunct1n)对逻辑块地址进行分群。[0034]在一些实施例中,控制器110还可以在步骤S220中将在主存储器120内的映射表MT分割为多个子映射表,例如分割为图1所示的η个子映射表SMT_1、SMT_2、…、SMT_n。也就是说,将主机10的逻辑块地址分为多个群组,且依据这些群组将映射表MT分割为多个子映射表SMT_1?SMT_n。这些子映射表SMT_1?SMT_n的逻辑块地址不重迭,对应的物理块地址(physicalblockaddress,PBA)也不重迭。依据步骤S220将逻辑块地址分群后,每个子映射表对应的逻辑块地址可以是固定的,而对应的物理块地址是动态分配的。非挥发性储存电路130中所有尚未被分配的自由块(FreeBlock)被放在一个自由块池(FreeBlockPool)中。当某个子映射表需要额外的非挥发性储存块(物理块)时,控制器110可以从自由块池申请一个自由块给所述某个子映射表。前述从自由块池申请一个自由块,可以根据平均磨损(Wearleveling)的策略进行分配。[0035]这些逻辑块地址群组(或这些子映射表SMTj?SMT_n)的每一个被分配有一个群组读取计数值。例如,第一个逻辑块地址群组(或子映射表SMT_1)被分配有一个群组读取计数值RC_1,第二个逻辑块地址群组(或子映射表SMT_2)被分配有一个群组读取计数值RC_2,而第η个逻辑块地址群组(或子映射表SMT_n)被分配有一个群组读取计数值RC_n。这些群组读取计数值RC_1?1^_11的初始值可以依照设计需求来决定。举例来说,在一些实施例中,这些群组读取计数值RC_1?1^_11的初始值可以是_15、0、10或是其他实数。这些群组读取计数值RCj?RC_n*别表示这些逻辑块地址群组(或这些子映射表SMT_1?SMT_n)被读取数据的次数。控制器110可以依据主机10的「读」指令而触发这些群组读取计数值RC_1?1^_11的调整(步骤S230)。[0036]在一些实施例中,当主机10发出「读」指令给控制器110时,控制器110依照主存储器120的映射表MT将此「读」指令的目标逻辑块地址转换为目标物理块地址,然后依照此「读」指令存取非挥发性储存电路130中由目标物理块地址所定址的非挥发性储存块(物理块)。在非挥发性储存块(物理块)完成数据读取操作后,控制器110可以在步骤S230中将这些群组读取计数值RC_1?RC_n中所述目标逻辑块地址所对应的读取计数值增加一个步阶值。所述步阶值可以视设计需求来决定。举例来说,所述步阶值可以是I或其他实数。[0037]举例来说,假设主机10所发出「读」指令的逻辑块地址属于第η个逻辑块地址群组(或子映射表SMT_n),因此控制器110依照主存储器120的子映射表SMT_n将此「读」指令的目标逻辑块地址转换为目标物理块地址,然后依照此「读」指令存取非挥发性储存电路130中由目标物理块地址所定址的非挥发性储存块(物理块)。在非挥发性储存块(物理块)完成数据读取操作后,控制器110可以将所述目标逻辑块地址所对应的群组读取计数值RC_n增加一个步阶值。[0038]于步骤S240中,控制器110可以检查这些群组读取计数值RCj?RC_n是否超出预设范围。所述预设范围可以视设计需求来决定。若这些群组读取计数值RC_1?RC_n都没有超出预设范围,则控制器110可以回到步骤S230,以便等待主机10所发出的下一个「读」指令。当这些群组读取计数值RC_1?RC_n*的一个读取计数值超出预设范围时,控制器110可以进行步骤S250,以对该读取计数值所对应的某一个对应逻辑块地址群组的逻辑块地址所对应的非挥发性储存块进行扫描操作,以检查错误比特数量。举例来说(但不限于此),控制器110可以在步骤S240中比较这些群组读取计数值RC_1?RC_n与一个阈值,以判断这些群组读取计数值RC_1?RC_n与该预设范围的关系。所述阈值可以视设计需求来决定。假设控制器110发现第I个逻辑块地址群组(或子映射表SMT_1)的群组读取计数值RCj大于该阈值,因此控制器110可以对群组读取计数值RCj所对应的第I个逻辑块地址群组(或子映射表SMT_1)的逻辑块地址所对应的一个或多个非挥发性储存块(非挥发性储存电路130的物理块)进行扫描操作,以检查错误比特数量。[0039]步骤S230与步骤S240的实现方式不应受限于上述。例如,在另一些实施例中,当主机10发出「读」指令给控制器110时,控制器110依照主存储器120的映射表MT将此「读」指令的目标逻辑块地址转换为目标物理块地址,然后依照此「读」指令存取非挥发性储存电路130中由目标物理块地址所定址的非挥发性储存块(物理块)。在非挥发性储存块(物理块)完成数据读取操作后,控制器110可以在步骤S230中将这些群组读取计数值RC_1?RC_n*所述目标逻辑块地址所对应的读取计数值减少一个步阶值。举例来说,假设主机10所发出「读」指令的逻辑块地址属于第η个逻辑块地址群组(或子映射表SMT_n),因此控制器110依照主存储器120的子映射表SMT_n将此「读」指令的目标逻辑块地址转换为目标物理块地址,然后依照此「读」指令存取非挥发性储存电路130中由目标物理块地址所定址的非挥发性储存块(物理块)。在非挥发性储存块(物理块)完成数据读取操作后,控制器110可以将所述目标逻辑块地址所对应的群组读取计数值%_11减少一个步阶值。于步骤S240中,控制器110可以比较这些群组读取计数值RC_1?RC_n与一个阈值,以判断这些群组读取计数值RC_1?RC_n与该预设范围的关系。所述阈值可以视设计需求来决定。假设控制器110发现第I个逻辑块地址群组(或子映射表SMT_1)的群组读取计数值RC_1小于该阈值,因此控制器110可以对群组读取计数值RC_1所对应的第I个逻辑块地址群组(或子映射表SMT_1)的逻辑块地址所对应的一个或多个非挥发性储存块(非挥发性储存电路130的物理块)进行扫描操作(步骤S250),以检查错误比特数量。[0040]控制器110还可以在步骤S250中依据该扫描操作的结果而决定是否将对应逻辑块地址群组的逻辑块地址所对应的一个或多个非挥发性储存块进行一储存块数据搬移操作。举例来说,假设该扫描操作的结果表示群组读取计数值RC_1所对应的第I个逻辑块地址群组(子映射表SMT_1)所对应的一个非挥发性储存块(非挥发性储存电路130的某一个物理块,在此称为可疑储存块)的错误比特数量太多。控制器110可以在步骤S250中将第I个逻辑块地址群组(子映射表SMT_1)所对应的所述可疑储存块进行储存块数据搬移操作。控制器110可以将所述可疑储存块的数据搬移至一个闲置储存块(亦即从自由块池申请一个自由块),以及控制器110可以将所述可疑储存块所对应的群组读取计数值RC_1重置为初始值。所述初始值可以视设计需求来决定。举例来说,所述初始值可以是O或其他实数。在将可疑储存块的数据搬移至闲置储存块后,子映射表SMT_1被更新,以便将所述闲置储存块取代所述可疑储存块,并将所述可疑储存块释放回自由块池中。[0041]因此,本实施例所述非挥发性存储器装置100及其操作方法可以记录多个逻辑块地址群组(或子映射表SMT_1?SMT_n)各自的群组读取计数值RC_1?RC_n。这些群组读取计数值RC_1?RC_n可以表示这些逻辑块地址群组被进行读取操作的次数。在长时间(多次)对一个物理块进行读取操作的情形下,随着时间(读取次数)的增加,此物理块发生错误的比特数量随之增加。控制器110可以依照这些群组读取计数值RC_1?RC_n来弹性决定扫描操作的时机,以便适时地检查对应储存块(物理块)发生错误的比特数量。依据扫描操作的结果,控制器可以动态决定是否进行储存块数据搬移操作,以避免储存块(物理块)数据遗失。[0042]图3是依照本发明另一实施例说明图1所示非挥发性存储器装置100的操作方法示意图。一般而言,控制器110在处理完主机10的目前指令后,控制器110会进入闲置期间来等待主机10的下一个指令。请参照图1与图3,在进入闲置期间后,控制器110可以进行步骤S310,以便从多个逻辑块地址群组(或子映射表SMT_1?SMT_n)各自的群组读取计数值RC_1?RC_n中找出最大者。于步骤S320中,控制器110可以检查步骤S310所找出的最大读取计数值是否超出阈值。所述阈值可以视设计需求来决定。当步骤S310所找出的最大读取计数值没有超出阈值时,结束图3所示流程(等待下一个闲置期间)。当步骤S310所找出的最大读取计数值超出阈值时,表示此最大读取计数值所对应的一个或多个非挥发性储存块(非挥发性储存电路130的物理块)的数据曾被多次读取。储存在物理块的数据曾被多次读取,意味着此物理块发生错误的比特数量可能太多。因此,控制器110可以进行步骤S250,以对步骤S310所找出的最大读取计数值所对应的某一个对应逻辑块地址群组所对应的非挥发性储存块(非挥发性储存电路130的物理块)进行扫描操作。扫描操作可以进一步确认非挥发性储存块(非挥发性储存电路130的物理块)的错误比特数量。图3所示步骤S320与步骤S250可以参照图2所示步骤S240与步骤S250的相关说明而类推。[0043]于图3所示实施例中,步骤S250所述扫描操作包括子步骤S251?S255。于步骤S251中,控制器110可以将对应逻辑块地址群组(亦即步骤S310所找出最大读取计数值所对应的群组)所对应的非挥发性储存块(非挥发性储存电路130的物理块)进行粗略扫描。于步骤S252中,控制器110可以从粗略扫描的结果而获知物理页的错误比特数量是否大于第一阈值。所述第一阈值可以视设计需求来决定。举例来说(但不限于此),假设步骤S310所找出最大读取计数值是群组读取计数值RC_1,因此控制器110可以于步骤S251中随机地(或依某一规则)从第一个逻辑块地址群组(或子映射表SMT_1)所对应的多个非挥发性储存块(非挥发性储存电路130的物理块)中选择一个物理页,以及检查此经选择物理页的错误比特数量。当此经选择物理页的错误比特数量小于第一阈值时,图3所示流程会被结束(等待下一个闲置期间)。当此经选择物理页的错误比特数量大于第一阈值时,表示此经选择物理页所属的非挥发性储存块(非挥发性储存电路130的物理块)是可疑储存块,因此控制器110可以进行步骤S253以进行细扫描。[0044]控制器110可以依照粗略扫描的结果来决定是否将对应逻辑块地址群组所对应的非挥发性储存块的其中一个可疑储存块进行细扫描。于步骤S253中,控制器110可以对此可疑储存块进行细扫描(或检查此可疑储存块的全部物理页)。在一实施例中,控制器110可以仅对此可疑储存块的有效物理页进行细扫描。上述有效物理页地址与逻辑地址的对应关系可被记录于一表格(table)中,也就是说,存储器的每一有效物理页地址皆可被对应至某一逻辑地址。举例来说,可借由查表先得知此可疑储存块的有效物理页地址,再对上述有效物理页进行细扫描。于步骤S254中,控制器110可以从细扫描的结果而获知物理页的错误比特数量是否大于第二阈值。所述第二阈值可以视设计需求来决定。举例来说(但不限于此),假设步骤S310所找出最大读取计数值是群组读取计数值RC_2,计数值RC_2对应的物理块其中有一物理页的错误比特数量大于第一阈值(满足步骤S252与S253)。当步骤S254判断此可疑储存块的所有物理页的错误比特数量均小于第二阈值时,则图3所示流程会被结束(等待下一个闲置期间),此时计数值RC_2尚未被重置。控制器110可以依照细扫描的结果来决定是否对可疑储存块进行储存块数据搬移操作,以将可疑储存块的数据搬移至闲置储存块。当步骤S254判断此可疑储存块中有某一个物理页的错误比特数量大于第二阈值时,表示此可疑储存块的错误比特太多,因此控制器110可以进行步骤S255以准备进行储存块数据搬移操作,以及将所述可疑储存块所对应的群组读取计数值重置为初始值。[0045]—般而言,闲置期间是很短暂的。为了避免影响非挥发性存储器装置100的操作效率,步骤S255是将此可疑储存块的「储存块数据搬移标记」的值设为「真」(例如逻辑值I),而不是真正对此可疑储存块进行储存块数据搬移操作。完成步骤S255后,图3所示流程会被结束(等待下一个闲置期间)。图4是依照本发明一实施例说明储存块数据搬移操作的操作方法示意图。请参照图1与图4,在进入闲置期间后,控制器110可以进行步骤S410,以便检查非挥发性储存电路130的所有物理块(非挥发性储存块)的「储存块数据搬移标记」。当控制器110在步骤S410判断非挥发性储存电路130的所有物理块的「储存块数据搬移标记」的值均不为「真」时,图4所示流程会被结束(等待下一个闲置期间)。当控制器110在步骤S410判断有一个物理块(非挥发性储存块,在此称为可疑储存块)的「储存块数据搬移标记」的值为「真」时,控制器110可以进行步骤S420,以将此可疑储存块的数据搬移至闲置储存块。在将可疑储存块的数据搬移至闲置储存块后,所述可疑储存块将被所述闲置储存块取代,并将所述可疑储存块释放回自由块池中。完成步骤S420后,图4所示流程会被结束(等待下一个闲置期间)。[0046]图5是依照本发明一实施例说明图1所示非挥发性储存电路130的部份非挥发性储存块(物理块)的示意图。在此假设图2所示步骤S240(或图3所示步骤S320)判断群组读取计数值RC_1超出预设范围(例如大于阈值),因此将群组读取计数值RC_1的第一逻辑块地址群组(或子映射表SMT_1)所对应的非挥发性储存块(物理块)81001^_4、81001^_8与81001^_(:绘示于图5。图5虽绘示三个非挥发性储存块犯001^_4、81001^8与81001^(:,但在其他实施例中,一个逻辑块地址群组所对应的非挥发性储存块的数量可能是2个、4个或更多个。举例来说,非挥发性储存块Block_A具有物理页Page_A0、Page_Al、Page_A2、Page_A3、…、Page_A255,非挥发性储存块Block_B具有物理页Page_B0、Page_Bl、Page_B2、Page_B3、."、Page_B255,而非挥发性储存块Block_C具有物理页Page_C0、Page_Cl、Page_C2、Page_C3、。[0047]请参照图1、图3与图5,在一些实施例中,步骤S251所述粗略扫描可能包括下述操作。控制器110可以在步骤S251中使用一个页指针,此页指针可以指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯001^_4、81001^_8与81001(:其中一个储存块的一个物理页。例如,此页指针可以指向非挥发性储存块Block_A的一个物理页Page_A0。在步骤S251中,控制器110可以检查页指针所指的物理页Page_A0的错误比特数量。当页指针所指的物理页Page_A0的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块Block_A、Block_B与Block_C其中另一个储存块的物理页(例如非挥发性储存块Block_B的一个物理页Page_B0)。控制器110可以检查页指针所指的物理页Page_B0的错误比特数量。当页指针所指的物理页Page_B0的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块中另一个储存块的物理页(例如非挥发性储存块Block_C的一个物理页Page_C0)。控制器110可以检查页指针所指的物理页Page_C0的错误比特数量。当页指针所指的物理页Page_CO的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯001^_4、81001^_8与81001(:其中另一个储存块的物理页(例如非挥发性储存块Block_A的一个物理页Page_Al)。在目前的闲置期间,当物理页Page_A0、Page_B0与Page_C0的错误比特数量都小于第一阈值时,步骤S252的判断结果为「否」,使得图3所示流程会被结束(等待下一个闲置期间)。以此类推,当进入下一个闲置期间,控制器110可以接续检查物理页?&86_41、?&86_131与?386_(:1的错误比特数量。当物理页Page_Al、Page_Bl与Page_Cl的错误比特数量都小于第一阈值时,步骤S252的判断结果为「否」,使得图3所示流程会被结束(等待再下一个闲置期间)。以此类推,直到群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块Block_C的所有物理页都完成检查,且非挥发性储存块犯0(^_4、810(^_8与810(^_(:的所有物理页的错误比特数量都小于第一阈值,则所述粗略扫描即被完成。当群组读取计数值RC_I的对应逻辑块地址群组所对应的非挥发性储存块81001^_4、81001^_8与81001(:的所有物理页均完成粗略扫描时,亦即当非挥发性储存块81%1^_4、810(^_8与810(^_(:的所有物理页的错误比特数量都小于第一阈值时,则控制器110可以将群组读取计数值RC_1重置为初始值。[0048]在进行粗略扫描的过程中,当发现群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯0(^_4、810(^_8与810(^_(:的一个物理页的错误比特数量大于第一阈值时,亦即步骤S252的判断结果为「是」,则控制器110可以对此物理页所属的可疑储存块进行细扫描(步骤S253)。举例来说,当页指针所指的物理页Page_Al的错误比特数量大于第一阈值时,由控制器110可以将物理页Page_Al所属的储存块Block_A进行细扫描。[0049]步骤S251所述粗略扫描的实施方式不应受限于上述内容。举例来说,在另一些实施例中,步骤S251所述粗略扫描可能包括下述操作。控制器110可以在步骤S251中使用一个页指针,此页指针可以指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯001^_4、81001^8与81001(:其中一个储存块的一个物理页。例如,此页指针可以指向非挥发性储存块81%1^8的一个物理页?&86_81。在步骤5251中,控制器110可以检查页指针所指的物理页Page_Bl以及至少一个邻近物理页的错误比特数量。所述至少一个邻近物理页是邻近于页指针所指的物理页Page_Bl的一个或多个其他物理页。依照设计需求,当页指针指向物理页Page_Bl时,所述至少一个邻近物理页可以包括物理页Page_B0、物理页Page_B2、物理页Page_B3与/或其他物理页。举例来说,当页指针指向物理页Page_Bl时,所述至少一个邻近物理页可以包括物理页Page_B0与物理页Page_B2。当页指针所指的物理页Page_Bl与所述至少一个邻近物理页(例如Page_B0与Page_B2)的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RCj的对应逻辑块地址群组所对应的非挥发性储存块犯001^_4、810(^_8与810(^_(:其中另一个储存块的物理页(例如非挥发性储存块Block_C的一个物理页Page_Cl)。控制器110可以检查页指针所指的物理页?&86_(:1与所述至少一个邻近物理页(例如Page_C0与Page_C2)的错误比特数量。当页指针所指的物理页Page_Cl与所述至少一个邻近物理页(例如Page_C0与Page_C2)的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块810(^_4、810(^_8与810(^_(:其中另一个储存块的物理页(例如非挥发性储存块犯0(^_4的一个物理页?&86_42)。控制器110可以检查页指针所指的物理页Page_A2与所述至少一个邻近物理页(例如Page_Al与Page_A3)的错误比特数量。当页指针所指的物理页Page_A2与所述至少一个邻近物理页(例如Page_Al与Page_A3)的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯0(^_4、810(^_8与810(^_(:其中另一个储存块的物理页(例如非挥发性储存块Block_B的一个物理页Page_B2)。以此类推,直到群组读取计数值RC_I的对应逻辑块地址群组所对应的非挥发性储存块81001^_4、81001^_8与81001(:的所有物理页都完成检查,且非挥发性储存块犯001^_4、810(^_8与810(^_(:的所有物理页的错误比特数量都小于第一阈值,则所述粗略扫描即被完成。当群组读取计数值RCj的对应逻辑块地址群组所对应的非挥发性储存块犯0(^_4、810(^_8与810(^_(:的所有物理页均完成粗略扫描时,控制器110可以将群组读取计数值RCj重置为初始值。在进行粗略扫描的过程中,当页指针所指的物理页与所述至少一个邻近物理页的错误比特数量大于第一阈值时,控制器110可以将此页指针所指的物理页所属的可疑储存块进行细扫描(步骤S253)。[0050]在一些实施例中,步骤S251所述粗略扫描还可能包括下述操作。上述页指针将依据一查表指向非挥发性储存块中的物理页(该些物理页可为相邻,也可为不相邻,然不以此为限),上述查表中定义了非挥发性储存块中需进行粗略扫描的物理页。在一实施例中,上述查表可定义至少一非挥发性储存块的多个物理页,也可定义多个非挥发性储存块的多个物理页。举例来说,控制器110可依据查表Tablel(未绘示)依序检查非挥发性储存块Block_A中物理页的错误比特数量。依据查表Tablel,当页指针所指的非挥发性储存块Block_A*物理页的错误比特数量小于第一阈值时,控制器110可以将页指针改指向群组读取计数值RC_1的对应逻辑块地址群组所对应的非挥发性储存块犯0(^_8的物理页。以此类推,直到非挥发性储存块81%1^_4、810(^_8与810(^_(:的所有物理页的错误比特数量都小于第一阈值,则所述粗略扫描即被完成。在另一实施例中,每一非挥发性储存块亦可具有各自的查表,用以定义了各自非挥发性储存块中需进行粗略扫描的物理页。举例来说,控制器110可依据查表Table2(未绘示)依序检查非挥发性储存块Block_B中物理页的错误比特数量,控制器110可依据查表Table3(未绘示)依序检查非挥发性储存块Block_C中物理页的错误比特数量。[0051]步骤S253所述细扫描可能包括下述操作。控制器110可以在步骤S253中检查该页指针所指的物理页Page_Al所属的储存块Block_A的所有物理页Page_A0?Page_A255,以获得物理页Page_A0?Page_A255的有效数据的错误比特数量。当页指针所对应的储存块Block_A所属的所有物理页Page_A0?Page_A255各自的有效数据的错误比特数量均小于第二阈值时,步骤S254的判断结果为「否」,则结束图3所示流程(等待下一个闲置期间)。当页指针所对应的储存块Block_A所属的所有物理页Page_A0?Page_A255的其中一个物理页(例如物理页Page_A3)的有效数据的错误比特数量大于第二阈值时,控制器110可以将页指针所对应的储存块Block_A进行「储存块数据搬移操作」(步骤S255)以将储存块犯0(^_八的数据搬移至闲置储存块。在完成「储存块数据搬移操作」后,控制器110可以将对应逻辑块地址群组(或子映射表SMT_1)所对应的群组读取计数值RC_1重置为初始值。[0052]本申请所述「扫描操作」的实现方式不应限于图3所述。例如在另一些实施例中,所述「扫描操作」可能包括下述操作。在此假设群组读取计数值RC_1超出预设范围(例如大于阈值),因此群组读取计数值RC_1的第一逻辑块地址群组(或子映射表SMT_1)所对应的非挥发性储存块(物理块)810(^_六、810(^_8与810(^_(:被绘示于图5。因为群组读取计数值RC_1大于阈值,所以第一逻辑块地址群组(或子映射表SMT_1)所对应的非挥发性储存块(物理块)810(^_六、810(^_8与810(^_(:将会进行「扫描操作」。请参照图1与图5,控制器110可以使用一个页指针,此页指针指向对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_I)所对应的非挥发性储存块其中一个储存块的物理页。例如,此页指针可以指向非挥发性储存块Block_A的一个物理页Page_A0。控制器110可以检查页指针所指的物理页?886_六0的错误比特数量。当页指针所指的物理页Page_AO的错误比特数量小于第一阈值时,控制器110可以将页指针改指向非挥发性储存块810(^_4、810(^_8与810(^_(:其中另一个储存块的物理页(例如非挥发性储存块Block_B的一个物理页Page_BO)。控制器110可以检查页指针所指的物理页Page_B0的错误比特数量。当页指针所指的物理页Page_B0的错误比特数量小于第一阈值时,控制器110可以将页指针改指向非挥发性储存块犯0(^_4、810(^_8与810(^_C其中另一个储存块的物理页(例如非挥发性储存块Block_C的一个物理页Page_C0)。控制器110可以检查页指针所指的物理页Page_C0的错误比特数量。当页指针所指的物理页Page_C0的错误比特数量小于第一阈值时,控制器110可以将页指针改指向非挥发性储存块81001^_4、81(^1^_8与81001^_(:其中另一个储存块的物理页(例如非挥发性储存块一个物理页Page_Al)。以此类推,当对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_1)所对应的非挥发性储存块犯0(^_4、810(^_8与810(^_(:的所有物理页均完成扫描操作时,也就是当非挥发性储存块犯0(^_4、810(^_8与810(^_(:的所有物理页的错误比特数量都小于第一阈值时,控制器110可以将对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_1)所对应的群组读取计数值RC_1重置为初始值。当页指针所指的物理页(例如物理页Page_C0)的错误比特数量大于阈值时,控制器110可以将该物理页所属的储存块(例如储存块Block_C)进行「储存块数据搬移操作」,以将储存块的数据搬移至闲置储存块。在一实施例中,当该物理页所属的储存块(例如储存块Block_C)的数据被搬移后,该储存块(例如储存块Block_C)所对应的群组读取计数值RC_1重置为初始值。[0053]在又一些实施例中,所述「扫描操作」可能包括下述操作。在此假设群组读取计数值RCj超出预设范围(例如大于阈值),因此群组读取计数值RCj的第一逻辑块地址群组(或子映射表SMT_1)所对应的非挥发性储存块(物理块)810(^_4、810(^_8与810(^_(:被绘示于图5。因为群组读取计数值RCj大于阈值,所以第一逻辑块地址群组(或子映射表SMT_1)所对应的非挥发性储存块(物理块)810(^_4、810(^_8与810(^_(:将会进行「扫描操作」。请参照图1与图5,控制器110可以使用一个块指针,此块指针指向对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_1)所对应的非挥发性储存块其中一个储存块。例如,此块指针可以指向非挥发性储存块(物理块)810^^_4、81001^_8与810^^_(:其中一个储存块Block_A。控制器110可以检查块指针所指的储存块犯0(^_4的全部物理页的错误比特数量。当块指针所指的储存块Block_A的错误比特数量小于阈值时,控制器110可以将块指针改指向非挥发性储存块其中另一个储存块(例如储存块Block_B)。控制器110可以检查块指针所指的储存块扮0(^_8的全部物理页的错误比特数量。当块指针所指的储存块Block_B的错误比特数量小于阈值时,控制器110可以将块指针改指向非挥发性储存块81001^_4、81001^_8与81001^_(:其中另一个储存块(例如储存块Block_C)。控制器110可以检查块指针所指的储存块Block_(^^全部物理页的错误比特数量。当块指针所指的储存块Block_C的错误比特数量小于阈值时,控制器110可以将块指针改指向非挥发性储存块810^^_4、810^^_8与810^^_(:其中另一个储存块(例如储存块Block_A)。[0054]当对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_1)所对应的非挥发性储存块81%1^4、810(^_8与810(^_(:均完成扫描操作时,也就是当非挥发性储存块81001^_4、810018与81001(:的错误比特数量都小于阈值时,控制器110可以将对应逻辑块地址群组(第一逻辑块地址群组,或子映射表SMT_1)所对应的群组读取计数值RCj重置为初始值。当块指针所指的储存块(例如物理页储存块Block_C)的错误比特数量大于阈值时,控制器110可以将块指针所指的储存块Block_C进行「储存块数据搬移操作」,以将储存块Block_C的数据搬移至闲置储存块。在一实施例中,当上述储存块(例如物理页储存块Block_C)的数据被搬移后,该储存块(例如物理页储存块Block_C)所对应的群组读取计数值RC_1重置为初始值。[0055]在另一些实施例中,在某一物理块完成数据读取操作后,控制器110可以将这些群组读取计数值RC_1?RC_n中所述某一物理块所对应的读取计数值「减少」一个步阶值。因此在另一些实施例中,图3所示一个或多个步骤可以被对应改变。例如,在进入闲置期间后,控制器110可以在步骤S310中从多个逻辑块地址群组(或子映射表SMT_1?SMT_n)各自的群组读取计数值RCj?RC_n中找出「最小者」。控制器110可以于步骤S320中检查步骤S310所找出的「最小读取计数值」是否「小于」阈值。所述阈值可以视设计需求来决定。当步骤S310所找出的「最小读取计数值」没有「小于」阈值时,结束图3所示流程(等待下一个闲置期间)。当步骤S310所找出的「最小读取计数值」「小于」阈值时,表示此「最小读取计数值」所对应的一个或多个非挥发性储存块(非挥发性储存电路130的物理块)的数据曾被多次读取。因此,控制器110可以进行步骤S250,以对步骤S310所找出的「最小读取计数值」所对应的某一个对应逻辑块地址群组所对应的非挥发性储存块(非挥发性储存电路130的物理块)进行扫描操作。[0056]值得注意的是,在不同的应用情境中,控制器110与/或主存储器120的相关功能可以利用一般的编程语言(programminglanguages,例如C或C++)、硬件描述语言(hardwaredescript1nlanguages,例如VerilogHDL或VHDL)或其他合适的编程语言来实现为软件、固件或硬件。可执行所述相关功能的软件(或固件)可以被布置为任何已知的计算机可存取介质(computer_accessibIemedias),例如磁带(magnetictapes)、半导体(semiconductors)存储器、磁盘(magneticdisks)或光盘(compactdisks,例如CD-ROM或DVD-ROM),或者可通过互联网(Internet)、有线通信(wiredcommunicat1n)、无线通信(wirelesscommunicat1n)或其它通信介质传送所述软件(或固件)。所述软件(或固件)可以被存放在计算机的可存取介质中,以便于由计算机的处理器来存取/执行所述软件(或固件)的编程代码(programmingcodes)。另外,本发明的装置和方法可以通过硬件和软件的组合来实现。[0057]综上所述,本发明诸实施例所述非挥发性存储器装置100及其操作方法可以记录多个逻辑块地址群组(或子映射表SMT_1?SMT_n)各自的群组读取计数值RC_1?RC_n。这些群组读取计数值RC_1?RC_n可以表示这些逻辑块地址群组被进行读取操作的次数。在长时间(多次)对一个物理块进行读取操作的情形下,随着时间(读取次数)的增加,此物理块发生错误的比特数量将随之增加。非挥发性存储器装置100的控制器110可以依照这些群组读取计数值RC_1?RC_n来弹性决定扫描操作的时机,以便适时地检查非挥发性储存电路130的部份储存块(物理块)发生错误的比特数量。每次所进行扫描操作的对象不是非挥发性储存电路130的全部储存块,因此可以避免影响非挥发性存储器装置100的运作效能。依据扫描操作的结果,控制器可以动态决定是否进行储存块数据搬移操作,以避免储存块(物理块)数据遗失。[0058]虽然本发明已以实施例公开如上,然其并非用以限定本发明,任何本领域普通技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视后附的权利要求所限定者为准。【主权项】1.一种非挥发性存储器装置,包括:一非挥发性储存电路,具有由多个物理块地址所定址的多个非挥发性储存块;一主存储器,用以存放一映射表,其中该映射表用以记录多个逻辑块地址与该些物理块地址的转换关系;以及一控制器,耦接至该主存储器与该非挥发性储存电路,其中该控制器将该些逻辑块地址分群为多个逻辑块地址群组,而该些逻辑块地址群组的每一个包括多个逻辑块地址;该些逻辑块地址群组的每一个被分配有一个群组读取计数值;该些群组读取计数值的调整是由一主机的读指令所触发;当该些群组读取计数值中的一个读取计数值超出一预设范围时,该控制器对该读取计数值所对应的一对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行一扫描操作以检查错误比特数量;以及该控制器依据该扫描操作的结果而决定是否对该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块的其中一个储存块进行一储存块数据搬移操作。2.如权利要求1所述的非挥发性存储器装置,其中当该主机发出该读指令给该控制器时,该控制器依照该映射表将该读指令的一目标逻辑块地址转换为一目标物理块地址,依照该读指令存取该目标物理块地址所定址的一非挥发性储存块,以及将该些群组读取计数值中该目标逻辑块地址所对应的一读取计数值增加一步阶值。3.如权利要求1所述的非挥发性存储器装置,其中当该主机发出该读指令给该控制器时,该控制器依照该映射表将该读指令的一目标逻辑块地址转换为一目标物理块地址,依照该读指令存取该目标物理块地址所定址的一非挥发性储存块,以及将该些群组读取计数值中该目标逻辑块地址所对应的一读取计数值减少一步阶值。4.如权利要求1所述的非挥发性存储器装置,其中该控制器比较该些群组读取计数值与一阈值以判断该些群组读取计数值与该预设范围的关系;当该些群组读取计数值中的一个读取计数值大于该阈值时,该控制器对该读取计数值所对应的该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行该扫描操作以检查错误比特数量。5.如权利要求1所述的非挥发性存储器装置,其中该控制器比较该些群组读取计数值与一阈值以判断该些群组读取计数值与该预设范围的关系;当该些群组读取计数值中的一个读取计数值小于该阈值时,该控制器对该读取计数值所对应的该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行该扫描操作以检查错误比特数量。6.如权利要求1所述的非挥发性存储器装置,其中该扫描操作包括:由该控制器对该对应逻辑块地址群组所对应的该些非挥发性储存块进行一粗略扫描;由该控制器依照该粗略扫描的结果来决定是否对该对应逻辑块地址群组所对应的该些非挥发性储存块的其中一个可疑储存块进行一细扫描;以及由该控制器依照该细扫描的结果来决定是否对该可疑储存块进行该储存块数据搬移操作,以将该可疑储存块的数据搬移至一闲置储存块。7.如权利要求6所述的非挥发性存储器装置,其中该粗略扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页以及至少一邻近物理页的错误比特数量;以及当该页指针所指的该物理页与所述至少一邻近物理页的该错误比特数量小于一第一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。8.如权利要求7所述的非挥发性存储器装置,其中当该页指针所指的该物理页与所述至少一邻近物理页的该错误比特数量大于该第一阈值时,该控制器将该物理页所属的该储存块进行该细扫描。9.如权利要求6所述的非挥发性存储器装置,其中该粗略扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页的错误比特数量;以及当该页指针所指的该物理页的该错误比特数量小于一第一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。10.如权利要求9所述的非挥发性存储器装置,其中当该页指针所指的该物理页的该错误比特数量大于该第一阈值时,由该控制器将该物理页所属的该储存块进行该细扫描。11.如权利要求6所述的非挥发性存储器装置,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块的所有物理页均完成该粗略扫描时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。12.如权利要求6所述的非挥发性存储器装置,其中该细扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页所属的该储存块的有效物理页各自的错误比特数量;以及当该页指针所对应的该储存块所属的有效物理页各自的该错误比特数量均小于一第二阈值时,该控制器不重置该对应逻辑块地址群组所对应的该读取计数值。13.如权利要求6所述的非挥发性存储器装置,其中该细扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页所属的该储存块的所有物理页各自的错误比特数量;以及当该页指针所对应的该储存块所属的所有物理页各自的该错误比特数量均小于一第二阈值时,该控制器不重置该对应逻辑块地址群组所对应的该读取计数值。14.如权利要求6所述的非挥发性存储器装置,其中当该可疑储存块的其中一个物理页的该错误比特数量大于一第二阈值时,由该控制器将该可疑储存块进行该储存块数据搬移操作以将该可疑储存块的数据搬移至该闲置储存块,以及由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为该初始值。15.如权利要求1所述的非挥发性存储器装置,其中该扫描操作包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页的错误比特数量;以及当该页指针所指的该物理页的该错误比特数量小于一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。16.如权利要求15所述的非挥发性存储器装置,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块的所有物理页均完成该扫描操作时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。17.如权利要求15所述的非挥发性存储器装置,其中当该页指针所指的该物理页的该错误比特数量大于该阈值时,由该控制器将该物理页所属的该储存块进行该储存块数据搬移操作,以将该储存块的数据搬移至一闲置储存块。18.如权利要求1所述的非挥发性存储器装置,其中该扫描操作包括:由一块指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块;由该控制器检查该块指针所指的该储存块的错误比特数量;以及当该块指针所指的该储存块的该错误比特数量小于一阈值时,由该控制器将该块指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块。19.如权利要求18所述的非挥发性存储器装置,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块均完成该扫描操作时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。20.如权利要求18所述的非挥发性存储器装置,其中当该块指针所指的该储存块的该错误比特数量大于该阈值时,由该控制器将该块指针所指的该储存块进行该储存块数据搬移操作,以将该储存块的数据搬移至一闲置储存块。21.—种非挥发性存储器装置的操作方法,包括:配置一非挥发性储存电路,其中该非挥发性储存电路具有由多个物理块地址所定址的多个非挥发性储存块;配置一主存储器以存放一映射表,其中该映射表用以记录多个逻辑块地址与该些物理块地址的转换关系;由一控制器将该些逻辑块地址分群为多个逻辑块地址群组,其中该些逻辑块地址群组的每一个包括多个逻辑块地址,以及该些逻辑块地址群组的每一个被分配有一个群组读取计数值;依据一主机的读指令而触发该些群组读取计数值的调整;当该些群组读取计数值中的一个读取计数值超出一预设范围时,由该控制器对该读取计数值所对应的一对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行一扫描操作,以检查错误比特数量;以及由该控制器依据该扫描操作的结果而决定是否对该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块的其中一个储存块进行一储存块数据搬移操作。22.如权利要求21所述的非挥发性存储器装置的操作方法,其中所述依据该主机的读指令而触发该些群组读取计数值的调整的步骤包括:当该主机发出该读指令给该控制器时,由该控制器依照该映射表将该读指令的一目标逻辑块地址转换为一目标物理块地址,依照该读指令存取该目标物理块地址所定址的一非挥发性储存块,以及将该些群组读取计数值中该目标逻辑块地址所对应的一读取计数值增加一步阶值。23.如权利要求21所述的非挥发性存储器装置的操作方法,其中所述依据该主机的读指令而触发该些群组读取计数值的调整的步骤包括:当该主机发出该读指令给该控制器时,由该控制器依照该映射表将该读指令的一目标逻辑块地址转换为一目标物理块地址,依照该读指令存取该目标物理块地址所定址的一非挥发性储存块,以及将该些群组读取计数值中该目标逻辑块地址所对应的一读取计数值减少一步阶值。24.如权利要求21所述的非挥发性存储器装置的操作方法,更包括:由该控制器比较该些群组读取计数值与一阈值,以判断该些群组读取计数值与该预设范围的关系;当该些群组读取计数值中的一个读取计数值大于该阈值时,由该控制器对该读取计数值所对应的该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行该扫描操作,以检查错误比特数量。25.如权利要求21所述的非挥发性存储器装置的操作方法,更包括:由该控制器比较该些群组读取计数值与一阈值,以判断该些群组读取计数值与该预设范围的关系;当该些群组读取计数值中的一个读取计数值小于该阈值时,由该控制器对该读取计数值所对应的该对应逻辑块地址群组的该些逻辑块地址所对应的该些非挥发性储存块进行该扫描操作以检查错误比特数量。26.如权利要求21所述的非挥发性存储器装置的操作方法,其中该扫描操作包括:由该控制器对该对应逻辑块地址群组所对应的该些非挥发性储存块进行一粗略扫描;由该控制器依照该粗略扫描的结果来决定是否对该对应逻辑块地址群组所对应的该些非挥发性储存块的其中一个可疑储存块进行一细扫描;以及由该控制器依照该细扫描的结果来决定是否对该可疑储存块进行该储存块数据搬移操作,以将该可疑储存块的数据搬移至一闲置储存块。27.如权利要求26所述的非挥发性存储器装置的操作方法,其中该粗略扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页与至少一邻近物理页的错误比特数量;以及当该页指针所指的该物理页与所述至少一邻近物理页的该错误比特数量小于一第一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。28.如权利要求27所述的非挥发性存储器装置的操作方法,其中当该页指针所指的该物理页与所述至少一邻近物理页的该错误比特数量大于该第一阈值时,由该控制器将该物理页所属的该储存块进行该细扫描。29.如权利要求26所述的非挥发性存储器装置的操作方法,其中该粗略扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页的错误比特数量;以及当该页指针所指的该物理页的该错误比特数量小于一第一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。30.如权利要求29所述的非挥发性存储器装置的操作方法,其中当该页指针所指的该物理页的该错误比特数量大于该第一阈值时,由该控制器将该物理页所属的该储存块进行该细扫描。31.如权利要求26所述的非挥发性存储器装置的操作方法,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块的所有物理页均完成该粗略扫描时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。32.如权利要求26所述的非挥发性存储器装置的操作方法,其中该细扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页所属的该储存块的有效物理页各自的错误比特数量;以及当该页指针所对应的该储存块所属的有效物理页各自的该错误比特数量均小于一第二阈值时,该控制器不重置该对应逻辑块地址群组所对应的该读取计数值。33.如权利要求26所述的非挥发性存储器装置的操作方法,其中该细扫描包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页所属的该储存块的所有物理页各自的错误比特数量;以及当该页指针所对应的该储存块所属的所有物理页各自的该错误比特数量均小于一第二阈值时,该控制器不重置该对应逻辑块地址群组所对应的该读取计数值。34.如权利要求26所述的非挥发性存储器装置的操作方法,其中当该可疑储存块的其中一个物理页的该错误比特数量大于一第二阈值时,由该控制器将该可疑储存块进行该储存块数据搬移操作以将该可疑储存块的数据搬移至该闲置储存块,以及由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为该初始值。35.如权利要求21所述的非挥发性存储器装置的操作方法,其中该扫描操作包括:由一页指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块的一物理页;由该控制器检查该页指针所指的该物理页的错误比特数量;以及当该页指针所指的该物理页的该错误比特数量小于一阈值时,由该控制器将该页指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块的一物理页。36.如权利要求35所述的非挥发性存储器装置的操作方法,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块的所有物理页均完成该扫描操作时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。37.如权利要求35所述的非挥发性存储器装置的操作方法,其中当该页指针所指的该物理页的该错误比特数量大于该阈值时,由该控制器将该物理页所属的该储存块进行该储存块数据搬移操作,以将该储存块的数据搬移至一闲置储存块。38.如权利要求21所述的非挥发性存储器装置的操作方法,其中该扫描操作包括:由一块指针指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中一个储存块;由该控制器检查该块指针所指的该储存块的错误比特数量;以及当该块指针所指的该储存块的该错误比特数量小于一阈值时,由该控制器将该块指针改指向该对应逻辑块地址群组所对应的该些非挥发性储存块其中另一个储存块。39.如权利要求38所述的非挥发性存储器装置的操作方法,其中当该对应逻辑块地址群组所对应的该些非挥发性储存块均完成该扫描操作时,由该控制器将该对应逻辑块地址群组所对应的该读取计数值重置为一初始值。40.如权利要求38所述的非挥发性存储器装置的操作方法,其中当该块指针所指的该储存块的该错误比特数量大于该阈值时,由该控制器将该块指针所指的该储存块进行该储存块数据搬移操作,以将该储存块的数据搬移至一闲置储存块。【文档编号】G06F11/10GK106021013SQ201610292306【公开日】2016年10月12日【申请日】2016年5月5日【发明人】黄胜辉,赖义麟【申请人】威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1