固态储存装置及其相关控制方法与流程

文档序号:19179109发布日期:2019-11-20 00:49阅读:176来源:国知局
本发明涉及一种固态储存装置及其相关控制方法,且特别涉及一种固态储存装置及运用预测模型(predictionmodel)来控制固态储存装置的方法。
背景技术
::众所周知,固态储存装置(solidstatestoragedevice,简称ssd)已经非常广泛的应用于各种电子产品,例如sd卡、固态硬碟等等。一般来说,固态储存装置中包括一非挥发性记忆体(non-volatilememory)。当数据写入非挥发性记忆体后,一旦固态储存装置的电源被关闭,数据仍可保存在非挥发性记忆体中。请参照图1,其所绘示为现有固态储存装置示意图。固态储存装置10包括:控制电路101以及非挥发性记忆体105。其中,非挥发性记忆体105中更包含记忆胞阵列(memorycellarray)109。再者,记忆胞阵列109由多个记忆胞(memorycell)所组成。一般而言,记忆胞阵列被划分成多个区块(block),每个区块再分成多页(page)。固态储存装置10经由一外部总线12连接至主机(host)14,其中外部总线12可为usb总线、sata总线、pcie总线、m.2总线或者u.2总线等等。再者,控制电路101经由一内部总线113连接至非挥发性记忆体105,用以根据主机14所发出的写入命令进一步将主机14的写入数据存入记忆胞阵列109,以及根据主机14所发出的读取命令由记忆胞阵列109中取得读取数据,经由控制电路101传递至主机14。基本上,控制电路101中有一组预设读取电压组(defaultreadvoltageset)。于读取周期(readcycle)时,控制电路101经由内部总线113,传送操作指令到非挥发性记忆体105令其利用此预设读取电压组来读取非挥发性记忆体105中记忆胞阵列109之前所存入的数据。再者,控制电路101中的错误校正码电路(简称ecc电路)104用来更正读取数据中的错误位元(errorbits),并且于更正完成后将正确的读取数据传递至主机14。另外,当ecc电路104无法成功地校正读取数据中所有的错误位元时,则无法输出正确的读取数据至主机14。此时,控制电路101另提供其他多组重试读取电压组(readretryvoltageset),使控制电路101采用重试读取电压组来对非挥发性记忆体105进行读取重试(readretry)。详细说明如下:根据每个记忆胞所储存的数据量,可进一步区分为每个记忆胞储存一位元的单层记忆胞(single-levelcell,简称slc记忆胞)、每个记忆胞储存二位元的多层记忆胞(multi-levelcell,简称mlc记忆胞)、每个记忆胞储存三位元的三层记忆胞(triple-levelcell,简称tlc记忆胞)以及每个记忆胞储存四位元的四层记忆胞(quad-levelcell,简称qlc记忆胞)。因此,记忆胞阵列109可为slc记忆胞阵列、mlc记忆胞阵列、tlc记忆胞阵列或者qlc记忆胞阵列。在记忆胞阵列109里,每个记忆胞内皆包括一浮动栅极晶体管(floatinggatetransistor),而控制热载子(hotcarrier)注入浮动栅极(floatinggate)的数量,即可控制浮动栅极晶体管的储存状态。换言之,一个记忆胞内的浮动栅极晶体管可记录二种储存状态即为slc记忆胞;一个记忆胞内的浮动栅极晶体管可记录四种储存状态即为mlc记忆胞;一个记忆胞内的浮动栅极晶体管可记录八种储存状态即为tlc记忆胞;一个记忆胞内的浮动栅极晶体管可记录十六种储存状态即为qlc记忆胞。请参照图2a,其所绘示为tlc记忆胞的储存状态示意图。tlc记忆胞的一个记忆胞可以根据热载子的注入量而呈现八个储存状态“erase”、“a”~“g”。在未注入热载子时,记忆胞可视为储存状态“erase”,而随着热载子注入的量的增加,可再区分为其他七种储存状态“a”~“g”。举例来说,储存状态“g”的记忆胞具有最高的临限电压准位,储存状态“erase”的记忆胞具有最低的临限电压准位。再者,当记忆胞经过抹除动作(eraseaction)之后,皆会回复至未注入热载子的储存状态“erase”。一般而言,于编程周期(programcycle)时,若将多个记忆胞编程为相同的储存状态时,并非每个记忆胞的临限电压都会相同,而是会呈现一分布曲线(distributioncurve),且其分布曲线可对应至一中位临限电压。由图2a可知,储存状态“erase”的中位临限电压为ver,储存状态“a”的中位临限电压为va、储存状态“b”的中位临限电压为vb、储存状态“c”的中位临限电压为vc、储存状态“d”的中位临限电压为vd,储存状态“e”的中位临限电压为ve、储存状态“f”的中位临限电压为vf、储存状态“g”的中位临限电压为vg。举例来说,在统计储存状态“a”的所有记忆胞的临限电压后,中位临限电压va的记忆胞数目最多。如图2a所示,根据tlc记忆胞中各个储存状态的分布曲线即可据以产生七个读取电压vra~vrg作为预设读取电压组(defaultreadvoltageset)。于读取周期时,控制电路101即提供预设读取电压组至非挥发性记忆体105,以检测记忆胞阵列109中tlc记忆胞的储存状态。如图2a所示,预设读取电压组vra~vrg是用来决定tlc记忆胞储存状态的重要依据。举例来说,非挥发性记忆体105提供读取电压vrg至记忆胞阵列109。临限电压大于读取电压vrg而无法被开启的记忆胞即可被判定为储存状态“g”,而临限电压小于读取电压vrg而被开启的记忆胞即被判定为不是储存状态“g”。换言之,运用预设读取电压组vra~vrg的七个读取电压即可判断出tlc记忆胞的八种储存状态。同理,运用预设读取电压组的三个读取电压即可判断出mlc记忆胞的四种储存状态。而运用一个预设读取电压即可判断出slc记忆胞的二种储存状态。如图2b所示,其所绘示为tlc记忆胞的储存状态偏移示意图。固态储存装置10在实际使用的时候会遇到各种不同的操作条件。例如重复抹写(cycling)、高温/常温放置时间长短(high/roomtemperaturebaking)、重复读取(readdisturb)的情况。上述的各种情况也会造成记忆胞阵列109中的记忆胞的分布曲线偏移(shift)。另外,当tlc记忆胞中的储存数据放置时间过久(例如储存数据放置1个月以上)时,也可能会造成分布曲线偏移。如图2b所示,当tlc记忆胞的分布曲线偏移后,储存状态“erase”的中位临限电压为ver',储存状态“a”的中位临限电压为va’、储存状态“b”的中位临限电压为vb’、储存状态“c”的中位临限电压为vc’、储存状态“d”的中位临限电压为vd’,储存状态“e”的中位临限电压为ve’、储存状态“f”的中位临限电压为vf’、储存状态“g”的中位临限电压为vg’。因此,利用预设读取电压组vra~vrg来决定tlc记忆胞储存状态时,将会造成读取数据中的错误位元(errorbits)增加。当ecc电路104无法成功地校正读取数据中所有的错误位元,使得控制电路101无法输出正确的读取数据至主机14时,控制电路101需要提供其他的重试读取电压组vra'~vrg'来进行读取重试(readretry)。请参照图3,其所绘示为现有固态储存装置的错误更正流程示意图。于读取周期时,控制电路101先进行解码流程(decodingprocess)a,其为利用预设读取电压组来进行硬式解码(harddecoding)。于进行解码流程a时,控制电路101提供预设读取电压组至非挥发记忆体105,并利用ecc电路104中的硬式解码(harddecodingmethod)来校正读取数据。当读取数据中的错误位元可以被更正时,代表通过(pass)解码流程a而解码成功。因此,控制电路101即可将正确的读取数据传递至主机14。反之,当读取数据中的错误位元无法被更正时,将无法获得正确的读取数据,代表解码流程a失败(fail),因此控制电路101进入读取重试(readretry)。再者,当控制电路101进入读取重试时,先进行解码流程b。解码流程b,其为利用重试读取电压组来进行硬式解码。举例来说,控制电路101提供一笔重试读取电压组vra’~vrg’至非挥发记忆体105并获得读取数据。接着,利用ecc电路104中的硬式解码来校正读取数据。当读取数据中的错误位元可以被更正时,代表通过(pass)解码流程b而解码成功,并可将正确的读取数据传递至主机14。反之,当读取数据中的错误位元无法被更正时,代表无法通过(fail)解码流程b。由于控制电路101中一般会预先储存多个重试读取电压组(例如m个重试读取电压组)。只要控制电路101利用其中的一个重试读取电压组而能够解码成功时,即代表通过(pass)解码流程b。反之,如果使用了全部的m个重试读取电压组后仍无法解码成功时,即代表解码流程b失败(fail)。因此,控制电路101进行解码流程c。明显地,解码流程b所需的时间大于解码流程a。控制电路101进行解码流程c,其为利用重试读取电压组来进行软式解码(softdecoding)。相较于硬式解码,软式解码具有更佳的错误更正能力,但是需要同时利用多笔重试读取电压组才能够获得一笔读取数据。因此,软式解码会更耗时,意即解码流程c所需的时间大于解码流程b。同理,只要控制电路101能够解码成功时,即代表通过(pass)解码流程c,并可将正确的读取数据传递至主机14。反之,如果控制电路101无法解码成功时,即代表解码流程c失败(fail)。因此,控制电路101确定无法获得正确的读取数据,并且回复主机14解码失败。由以上固态储存装置的错误更正流程可知,当解码流程a失败后,控制电路101会进入读取重试(readretry)。而读取重试时,控制电路101需要先进行解码流程b。再者,于确认解码流程b失败后,控制电路101继续进行解码流程c。另外,当控制电路101确认解码流程c失败后,回复主机14解码失败。由以上的说明可知,如果控制电路101无法在解码流程a时获得读取数据,则控制电路101必须进行进入读取重试(readretry)的解码流程b或者解码流程c。然而,一但控制电路101进入读取重试,将导致整个固态储存装置10的错误更正流程耗费相当长的时间,使得固态储存装置10的读取速度(readspeed)大幅度地下降。技术实现要素:本发明有关于一种固态储存装置连接至一主机。该固态储存装置包括:一控制电路连接至该主机,该控制电路包括一错误校正码电路与一预测模型储存电路,其中该预测模型储存电路中储存一预测模型;以及一非挥发性记忆体,包括一记忆胞阵列,且该记忆胞阵列中包括多个区块,且每一该区块皆有对应的一状态参数;其中,该控制电路由该记忆胞阵列中决定一选定数据区块,并根据该选定数据区块的状态参数以及该预测模型,判断是否对该选定数据区块进行一特定操作。本发明有关于一种固态储存装置的控制方法,包括下列步骤:在一非挥发性记忆体中决定一选定数据区块;将该选定数据区块的状态参数输入一预测函数,以获得一实际预测数值,其中该预测函数对应于用以预测一预测指标的一预测模型,该预测指标设定有一目标值,且该目标值可根据该预测模型对应至一临限预测数值;以及根据该实际预测数值以及该临限预测数值的关系决定是否执行一特定操作。以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。附图说明图1为现有固态储存装置示意图;图2a为tlc记忆胞的储存状态示意图;图2b为tlc记忆胞的储存状态偏移示意图;图3为现有固态储存装置的错误更正流程示意图;图4为本发明固态储存装置示意图;图5a为信息表的一个实施例;图5b为错误预测数值分别与读取重试率以及新增编程/抹除率的关系示意图;图5c为本发明应用预测模型的控制方法;图6为本发明实施例应用错误预测模型的控制方法;图7为本发明实施例根据出厂后的时间长短来动态调整错误预测模型的目标值的示意图;图8为错误预测函数中的补偿值修正示意图。具体实施方式下面结合附图对本发明的结构原理和工作原理作具体的描述:本发明提出一种固态储存装置及其相关控制方法。首先,于固态储存装置出厂之前,可对非挥发性记忆体搜集所有区块的各种状态参数,并利用机器学习演算法(machinelearningalgorithm)找出关于非挥发性记忆体的多个预测模型,并记录于固态储存装置中。当固态储存装置出厂之后,根据即时的状态参数搭配预测模型,使得固态储存装置的非挥发性记忆体具有较低的读取重试率(readretryrate),并维持较高的读取速度。请参照图4,其所绘示为本发明固态储存装置示意图。相较于图1,本发明的固态储存装置30内的控制电路301中包括一错误校正码电路(ecc电路)304与一预测模型储存电路(predictionmodelstoringcircuit)306。其中,ecc电路304可用来更正读取数据中的错误位元(errorbits)。另外,预测模型储存电路306中储存多个预测模型(predictionmodel)。以下介绍预测模型的建立以及运用方法。当固态储存装置30出厂后,非挥发性记忆体105中的记忆胞阵列109经过多次的读取、编程与抹除之后,记忆胞的性能会逐渐劣化,并使得记忆胞的储存状态被误判而进入读取重试。针对非挥发性记忆体105中记忆胞阵列109的各种状况,固态储存装置30的设计者于出厂前搜集记忆胞阵列109内各个区块(block)的多个状态参数,并形成一非挥发性记忆体105的信息表(informationtable)作为数据库,而设计者可根据信息表的内容来获得多个预测模型。其中,状态参数可为区块中所记录的编程次数(programcount)、抹除次数(erasecount)、编程时间(programtime)、抹除时间(erasetime)、错误位元(errorbit)、环境温度、读取次数(readcount)、直方图参数(histogramparameter)及读取电压间隔等等,其中直方图参数是指在两个读取电压之间的记忆胞数目,读取电压间隔是指该两个读取电压之间的大小差异。另外,于建立非挥发性记忆体的信息表105的同时,控制电路301亦可将每个区块对应的解码流程作为状态参数。请参照图5a,其所绘示为信息表的一个实施例。其中,状态参数仅列出编程时间(pt)、抹除时间(et)、错误位元(eb)、读取次数(rc)与解码流程(dp),但本发明不以此为限,状态参数还可以包含编程次数、抹除次数、环境温度、直方图参数及读取电压间隔等等。如图5a所示,于固态储存装置30出厂之前,设计者搜集非挥发性记忆体105中n个区块所对应的状态参数。基本上,区块数目n数字越高,建立的预测模型会具备较佳的预测结果。而本发明至少搜集了数万至数百万个区块的状态参数。以第一区块(block_1)为例来做说明,第一区块(block_1)的编程时间为1876(μs)、抹除时间为5980(μs)、错误位元为55、读取次数为580次、以解码流程a可获得读取数据。相同地,利用上述的方式也可以建立其他区块(block_2~block_n)的状态参数,并完成非挥发性记忆体的信息表。当非挥发性记忆体的信息表建立完成后,即可利用机器学习演算法(machinelearningalgorithm)来找预测模型。一般在利用机器学习演算法建立预测模型前,会先设定一预测指标,再通过大量的参数数据利用机器学习演算法得出一预测函数以建立该预测模型。预测模型建立完成后,将相关状态参数输入预测函数后,便可得出一预测数值。此预测数值与预测指标具有一定的对应关系。预测模型用预测函数表示与预测指标的关系。在后续应用预测模型的操作中,可设定预测指标的一目标值,并根据对应关系找出对应该目标值的预测数值。之后,便可根据得出的预测数值来决定是否须执行对应操作。以错误预测模型为例,可将未来n天的读取重试机率(readretryrate,rrrate)作为是否需进行刷新操作的预测指标。接着,将编程时间(pt)、抹除时间(et)、错误位元(eb)、读取次数(rc)作为输入项(inputterm),并利用线性回归法(linearregression)来获得错误预测函数ei(pt,et,eb,rc),以建立错误预测模型并记录于预测模型储存电路306中。当固态储存装置30出厂之后,将非挥发性记忆体105中区块即时的编程时间(pt)、抹除时间(et)、错误位元(eb)与读取次数(rc)输入错误预测函数ei(pt,et,eb,rc)后,即可得到一错误预测数值(errorindicator,ei)。当然,本发明也可以使用其他状态参数作为输入项,并利用其他机器学习演算法来获得错误预测函数。由于此例是使用读取重试机率(rrrate)作为是否需进行刷新操作的预测指标,因此错误预测数值(ei)与读取重试机率(rrrate)具有一定的对应关系。此错误预测模型用错误预测函数ei(pt,et,eb,rc)表示与读取重试机率的关系。如图5b所示,其为错误预测数值(ei)分别与读取重试率(rrrate)以及新增编程/抹除率(additionalp/ecount)的关系示意图。其中,实线(i)为错误预测数值(ei)与读取重试率(rrrate)的关系曲线。即以读取重试率作为预测指标的错误预测模型。在另一实施例中,亦可使用新增编程/抹除率(additionalp/ecount)作为是否需进行刷新操作的预测指标,此时错误预测数值(ei)与新增编程/抹除率(additionalp/ecount)具有一定的对应关系,如图5b的虚线(ii)所示,虚线(ii)为错误预测数值(ei)与新增编程/抹除率(additionalp/ecount)的关系曲线。即以新增编程/抹除率作为预测指标的错误预测模型。在此例中,错误预测函数(ei)为编程时间(pt)、抹除时间(et)、错误位元(eb)与读取次数(rc)的函数。亦即,ei(pt,et,eb,rc)=c1·pt+c2·et+c3·eb+c4·rc,且c1、c2、c3、c4为系数。当然,本发明并不限定于利用线性回归法来获得错误预测函数ei(pt,et,eb,rc)。也可以利用类神经网络回归法(neuralnetworkregression)或者决策树回归法(decisionforestregression)等来获得错误预测函数ei(pt,et,eb,rc)。通过将非挥发性记忆体105中区块即时的编程时间(pt)、抹除时间(et)、错误位元(eb)与读取次数(rc)输入错误预测函数ei(pt,et,eb,rc)后,可得到一错误预测数值(ei)。错误预测数值(ei)可代表区块未来的错误程度。在此例中,当固态储存装置30出厂之后,控制电路301根据非挥发性记忆体105中区块内即时的状态参数,搭配错误预测函数ei(pt,et,eb,rc)即可得出该区块的错误预测数值(ei),并通过错误预测数值(ei)与读取重试机率(rrrate)的实线(i)对应关系,便可预测出该区块未来的读取重试率(rrrate)。举例来说,将非挥发性记忆体105中区块内即时的编程时间(pt)、抹除时间(et)、错误位元(eb)与读取次数(rc)输入错误预测函数ei(pt,et,eb,rc)后,输出的错误预测数值(ei)为80。而根据图5b的错误预测数值与读取重试率的的实线(i)曲线即可获得该区块未来的读取重试率约为2%。请参照图5c,其所绘示为本发明应用预测模型的控制方法。首先,根据预测指标设定一目标值,并根据预测模型(例如,实线i)得出对应该目标值的一临限预测数值(步骤s502)。之后,控制电路301在非挥发性记忆体105中决定一选定数据区块(selectedblock)(步骤s504),其中选定数据区块中储存有效数据(validdata)。接着,将该选定数据区块的状态参数输入一预测函数,以获得一实际预测数值(步骤s506)。于步骤s508中,控制电路301根据实际预测数值与临限预测数值的关系决定是否执行一特定操作。请参照图6,其所绘示为本发明实施例应用错误预测模型的控制方法。首先,根据读取重试率设定一目标值,并根据错误预测模型得出对应该目标值的临限错误预测数值(eith1)(步骤s602)。如前所述,假设此错误预测模型是将未来n天的读取重试机率(readretryrate,rrrate)作为是否需进行刷新操作的预测指标,且假设控制电路301须控制区块的读取重试率小于2%,则可设定读取重试率的目标值为2%。接着,根据错误预测模型中实线i所示读取重试率(rrrate)与错误预测数值(ei)间的对应关系,如图5b所示,可得出临限错误预测数值(eith1)为80。之后,控制电路301在非挥发性记忆体105中决定一选定数据区块(selectedblock)(步骤s604),其中选定数据区块中储存有效数据(validdata)。接着,将该选定数据区块的状态参数输入一错误预测函数,以获得一实际错误预测数值(eia1)(步骤s606)。于步骤s608中,当实际错误预测数值(eia1)未大于临限错误预测数值(eith1)时,控制电路301不进行任何动作并回到步骤s604。反之,当实际错误预测数值(eia1)大于临限错误预测数值(eith1)时,控制电路301刷新(refresh)该选定数据区块中的数据(步骤s618),之后回到步骤s604。其中,刷新该选定数据区块的数据将储存于该选定数据区块的数据搬移至非挥发性记忆体105中的一空白区块(blankblock)。在一实施例中,控制电路301可每隔一预设时间,例如1分钟,检查非挥发性记忆体105中的一个区块。当然,本发明并不限定于固定时间来检查非挥发性记忆体105中的区块。也可以在固态储存装置30未执行指令的闲置状态(idle)时,检查非挥发性记忆体105中的区块。如此,可降低固态储存装置30的负载(loading)。在上述实施例中,假设实际错误预测数值(eia1)大于临限错误预测数值(eith1)时,代表该选定数据区块未来n天的读取重试率可能会大于2%,因此控制电路301刷新(refresh)该选定数据区块中的数据。再者,假设实际错误预测数值(eia1)未大于临限错误预测数值(eith1)时,代表该选定数据区块未来n天的读取重试率将不会大于2%,因此控制电路301不进行任何动作。根据图6的实施例,当刷新操作完成后,原来选定数据区块内的数据已经另外搬移至非挥发性记忆体105中新的区块。换言之,新区块在写入数据后,控制电路301读取该数据时,其读取重试率会大幅降低。因此,本发明可以利用刷新操作来使非挥发性记忆体105的读取重试率维持在特定的比率之下,并使得固态储存装置30维持在较高的读取速度。在一般应用预测模型的控制方法中,一旦预测模型建立完成,其预测函数便不会再更动。同样地,在设定好对应目标值的临限预测数值后,目标值及临限预测数值亦不会再更动。换句话说,当固态储存装置30出厂之后,控制电路301将使用预建的预测模型进行后续的操作控制。然而,随着固态储存装置30出厂后的时间长短、使用频率、使用状况等因素的影响,预建的预测模型的预测结果可能会产生误差,或已经不符合当下的固态储存装置30的状态。因此,本发明一实施例提出可动态调整预测模型的方法。在一实施例中,本发明可根据固态储存装置30的状况,例如出厂后的时间长短、使用频率、使用状况等,来动态调整预测模型的目标值。请参照图7,其所绘示为本发明根据出厂后的时间长短来动态调整错误预测模型的目标值的实施例示意图。举例来说,在固态储存装置30新出出厂阶段(beginoflife),由于非挥发性记忆体105中的区块特性尚佳,亦即区块具有较低的读取重试率(rr)以及较高的新增编程/抹除率(pec)。因此可以设定较低的读取重试率(rr)以及较高的新增编程/抹除率(pec)作为目标值,亦即作为是否需进行刷新操作的判断基准。例如设定读取重试率(rr)小于0.1%且/或新增编程/抹除率(pec)小于10%时需进行刷新操作。如此,可避免不必要的刷新操作,使固态储存装置30可以具备较高的读写速度。当固态储存装置30出厂后的中期阶段(middleoflife),例如2年之后,非挥发性记忆体105中的区块特性已逐渐劣化,因此可以增加读取重试率以及降低新增编程/抹除率作为目标值,亦即作为是否需进行刷新操作的判断基准。例如设定读取重试率(rr)小于5%且/或新增编程/抹除率(pec)小于5%时需进行刷新操作。再者,当固态储存装置30出厂很久的后期阶段(endoflife),例如5年之后,非挥发性记忆体105中的区块特性已经不佳,亦即区块具有较高的读取重试率(rr)以及较低的新增编程/抹除率(pec)。因此可以继续增加读取重试率以及继续降低新增编程/抹除率作为目标值,亦即作为是否需进行刷新操作的判断基准。例如设定读取重试率(rr)小于20%且/或新增编程/抹除率(pec)小于1%时需进行刷新操作。在上述实施例中,预测模型可根据固态储存装置30的状况设定对应的目标值来进行应用预测模型的控制方法,特别是作为是否需进行特定操作的判断基准。如此,预测模型可以随着固态储存装置30的实际状况产生更合适的操作判断,并有效地延长固态储存装置30的寿命。再者,除了上述根据固态储存装置30的状况来动态调整预测模型的目标值的实施例之外,在另一实施例中,本发明提出可动态调整预测模型的预测函数。当预测模型的预测结果产生误差时,本发明通过在预测函数加入一补偿值来达到可动态调整预测模型,以确保预测模型的预测结果的正确性。其中,补偿值可由临限预测数值与其对应的预定目标值以及其实际目标值之间的关系而得出。以错误预测函数ei(pt,et,eb,rc)为例,如图5b所示,假设控制电路301设定临限错误预测数值(eith1)为80,由于其对应的预定读取重试率为2%,因此在应用错误预测模型的控制方法下,可以预期非挥发性记忆体105的读取重试率会低于2%的预定读取重试率(rrp)。然而,由于非挥发性记忆体105的工艺偏移,或者操作环境的差异,可能使预设的错误预测模型产生误差,造成在相同的错误预测数值下,非挥发性记忆体105的实际读取重试率已非对应的预定读取重试率。例如,在错误预测数值为80的状况下,非挥发性记忆体105的实际读取重试率已变成大于2%。为了改善此现象,本发明实施例通过修正错误预测函数ei(pt,et,eb,rc)来确保错误预测模型的正确性。以下详细说明之。根据本发明的实施例,将错误预测函数修改为ei(pt,et,eb,rc)=c1·pt+c2·et+c3·eb+c4·rc+c0,其中c0为补偿值(compensationvalue)。当固态储存装置30出厂时,补偿值c0设定为0。图8为错误预测函数中的补偿值修正示意图。当固态储存装置30操作一段时间后,在错误预测数值为80的状况下,控制电路301计算区块的实际读取重试率为10%,而非对应的预定读取重试率2%。因此,控制电路301需要修正错误预测函数中的补偿值c0。由于在临限错误预测数值(eith1)为80时,非挥发性记忆体105的实际读取重试率为10%,其与预定读取重试率(rrp)2%差异为-8%(2%-10%)。再者,根据以读取重试率作为预测指标的错误预测模型可知,于临限错误预测数值及预定读取重试率附近区域的斜率(drr/dei)为+0.01。换句话说,在此例中,错误预测模型的临限错误预测数值与预定读取重试率的关系已产生负向偏移,即-8的偏移值。因此,为了补偿此偏移值,控制电路301可以得出补偿值c0为+8,而错误预测函数ei(pt,et,eb,rc)即修改为ei(pt,et,eb,rc)=c1·pt+c2·et+c3·eb+c4·rc+8。如此,通过补偿值c0的修正,当修正后错误预测函数得出错误预测数值为80时,其对应的读取重试率可回到与预定读取重试率相同的2%。如此,固态储存装置30根据修正后错误预测模型进行操作后,固态储存装置30的读取重试率即可以回复为2%的预定读取重试率。除了通过在预测函数加入一补偿值来达到可动态调整预测模型,在另一实施例中,亦可将补偿值改为加入至临限错误预测数值。此两个实施例的补偿值的差异仅在于正负值的差异。假设如上述例子,在临限错误预测数值(eith1)为80时,非挥发性记忆体105的实际读取重试率为10%,而预定读取重试率(rrp)为2%。经过计算,错误预测模型的临限错误预测数值与预定读取重试率的关系已产生负向偏移,即-8的偏移值。在此实施例中,补偿值为-8,亦即临限错误预测数值由80修正为72。根据上述可动态调整预测模型的方法,固态储存装置30可设定于运作一段时间之后(例如运作一个星期7天,或者进行1万次读取动做)后,控制电路301统计实际的目标值是否符合于预定目标值。于实际的目标值不符合预定目标值时,进行预测模型的动态调整。以使用读取重试率作为预测指标的错误预测模型为例,固态储存装置30可设定于运作一段时间之后(例如运作一个星期7天,或者进行1万次读取动做)后,控制电路301统计实际的读取重试率是否符合于预定读取重试率。于实际的读取重试率不符合预定读取重试率时,进行错误预测模型的动态调整,以确保读取重试率维持在预定读取重试率。由以上的说明可知,本发明提出一种固态储存装置及其相关控制方法。根据固态储存装置30中所储存的预测模型,并可动态调整预测模型,可以确保固态储存装置30的读取速度并有效地延长固态储存装置30的寿命。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1