固态硬盘装置与相关的固态硬盘控制电路的制作方法

文档序号:18089391发布日期:2019-07-06 10:41阅读:201来源:国知局
固态硬盘装置与相关的固态硬盘控制电路的制作方法

本发明涉及固态硬盘(solid-statedrive,ssd),尤指一种可弹性调整数据编程模式(programscheme)的固态硬盘装置与相关的固态硬盘控制电路。



背景技术:

固态硬盘装置中包含许多快闪存储器块,这些块通常会被划分为预留空间块(overprovisionblock,opblock)与数据块。预留空间块的数量会影响固态硬盘装置的操作性能,而数据块的数量则会影响固态硬盘装置的数据储存容量。当任一块中无法使用的实体页超过一定数量时,传统固态硬盘装置的控制电路便会将该块整个标识为坏块(badblock),而不再使用该块中的任何实体页来储存数据。

另一方面,传统固态硬盘装置的控制电路是以整个块为单位来设置每一块的数据编程模式。因此,倘若某一块有部分实体页出现瑕疵而不适用该种数据编程模式,便容易发生数据出错的情况,或是增加该块被传统控制电路判定为坏块(badblock)的可能性,进而降低固态硬盘装置的可用储存空间。

很明显地,传统固态硬盘装置的控制机制无法充分运用快闪存储器块的储存能力,而且在快闪存储器块的使用上也缺乏弹性,所以也难以有效改善固态硬盘装置的操作性能。



技术实现要素:

有鉴于此,如何减轻或消除上述传统固态硬盘装置的缺失,实为有待解决的问题。

本说明书提供一种固态硬盘装置的实施例,其包含:固态硬盘,包含有多个快闪存储器块,其中,该多个快闪存储器块包含目标块,且该目标块中包含多条字元线与多条位元线;传输接口,设置成接收待写入固态硬盘的数据;以及固态硬盘控制电路,该固态硬盘控制电路包含:存取电路,耦接于该固态硬盘;以及快闪存储器控制电路,耦接于该存取电路与该传输接口,且设置成进行以下操作:在第一时间点控制该存取电路以第一编程模式,将第一数据写入该目标块的第一字元线所耦接的一个或多个实体页;以及在第二时间点控制该存取电路以第二编程模式,将第二数据写入该目标块的第二字元线所耦接的一个或多个实体页,使得该第一数据与该第二数据同时存在于该目标块中。

本说明书另提供一种用于控制固态硬盘的固态硬盘控制电路的实施例。该固态硬盘包含有多个快闪存储器块与传输接口,其中,该多个快闪存储器块包含目标块,该目标块中包含多条字元线与多条位元线,且该传输接口设置成接收待写入固态硬盘的数据,该固态硬盘控制电路包含:存取电路,用于耦接该固态硬盘;以及快闪存储器控制电路,耦接于该存取电路并用于耦接该传输接口,且设置成进行以下操作:在第一时间点控制该存取电路以第一编程模式,将该第一数据写入该目标块的第一字元线所耦接的一个或多个实体页;以及在第二时间点控制该存取电路以第二编程模式,将该第二数据写入该目标块的第二字元线所耦接的一个或多个实体页,使得该第一数据与该第二数据同时存在于该目标块中。

上述实施例的优点之一,是快闪存储器控制电路以字元线为单位来设置单独快闪存储器块中的不同部分的数据编程模式,可大幅提升写入数据至快闪存储器块时的数据编程模式选择弹性,有利于充分运用快闪存储器块的储存能力,进而可在不增加快闪存储器块数量的情况下等效增加固态硬盘装置的储存空间。

上述实施例的另一优点,是快闪存储器控制电路会对同一块中的不同类型的字元线采用不同的数据编程模式来写入数据,所以能够提升块中的数据可靠度。

本发明的其他优点将搭配以下的说明和图式进行更详细的说明。

附图说明

图1为本发明第一实施例的固态硬盘装置简化后的功能方框图。

图2为本发明一实施例的字元线分类记录简化后的示意图。

图3至图5为固态硬盘装置中的一个快闪存储器块在不同情境下的数据写入方式的一实施例简化后的示意图。

图6为本发明另一实施例的字元线分类记录简化后的示意图。

图7为本发明第二实施例的固态硬盘装置简化后的功能方框图。

【附图标记列表】

100固态硬盘装置(ssddevice)

110固态硬盘(ssd)

112、114、116快闪存储器块(flashmemoryblock)

121~129字元线(wordline)

131~139位元线(bitline)

140传输接口(communicationinterface)

150非挥发性储存电路(non-volatilestoragecircuit)

152字元线分类记录(word-linecategoryrecord)

160固态硬盘控制电路(ssdcontrollercircuit)

162存取电路(accesscircuit)

164快闪存储器控制电路(flashmemorycontrolcircuit)

210~290、630、650数据输入(dataentry)

具体实施方式

以下将配合相关图式来说明本发明的实施例。在图式中,相同的标号表示相同或类似的元件或方法流程。

图1为本发明第一实施例的固态硬盘装置100简化后的功能方框图。固态硬盘装置100包含固态硬盘110、传输接口140、非挥发性储存电路150、以及固态硬盘控制电路160。

固态硬盘110中包含多个快闪存储器块(flashmemoryblock),例如,图1中的示例性块112、114、与116。如图1所示,每个快闪存储器块中都包含多条字元线与多条位元线。例如,块112中包含示例性的字元线121、122、与123、以及示例性的位元线131、132、与133;块114中包含示例性的字元线124、125、与126、以及示例性的位元线134、135、与136;块116中包含示例性的字元线127、128、与129、以及示例性的位元线137、138、与139。

在各快闪存储器块中,每一字元线与每一位元线的相交处都设置有储存单元(storagecell),可用于储存数据。因此,每个快闪存储器块中都会包含许多储存单元。为了降低图面复杂度起见,这些储存单元并未绘示于图1中。

前述固态硬盘110中的块112、114、与116皆可用一阶储存单元(single-levelcell,slc)晶片、多阶储存单元(multi-levelcell,mlc)晶片、三阶储存单元(triple-levelcell,tlc)晶片、四阶储存单元(quad-levelcell,qlc)晶片、或是更高阶的储存单元晶片来实现。

传输接口140设置成与主控装置(hostdevice,未绘示于图1中)进行数据通信。实际上,传输接口140可用相容于各种序列式先进附加技术(serialadvancedtechnologyattachment,sata)系列传输标准、快速周边组件互连(peripheralcomponentinterconnectexpress,pcie)系列传输标准、和/或通用串行总线(universalserialbus,usb)系列传输标准的接口电路来实现。

储存电路150用于储存固态硬盘110的单独块中的所有字元线的分类结果。

固态硬盘控制电路160包含存取电路162以及快闪存储器控制电路164。存取电路162耦接于固态硬盘110。快闪存储器控制电路164耦接于传输接口140与储存电路150,设置成通过存取电路162对固态硬盘110进行存取。当需要写入数据至固态硬盘110时,快闪存储器控制电路164可从固态硬盘110中挑选合适的块,并根据储存电路150所储存的字元线的分类结果,来决定选定块中的单独字元线所连接的储存单元的数据编程方式。

实际上,储存电路150可独立设置于固态硬盘控制电路160之外,也可以整合到固态硬盘控制电路160中。为了说明上的方便,在图1中并未绘示固态硬盘装置100中的其他元件及相关的连接与实施方式。

在固态硬盘110的制造或组装过程中,制造商可对固态硬盘110中的所有快闪存储器块进行各种电路特性检测,以判断单独块的主阵列(mainarray)的瑕疵程度和/或瑕疵分布状况。固态硬盘110的制造商可根据前述检测的结果判断各块中的不同部位的硬件品质、数据读取可靠度、数据长期保留能力、和/或耐用度等电路特性,并根据判断结果将该块中的不同部位以字元线为单位进行分类。

例如,在固态硬盘110中的块是以四阶储存单元晶片实现的实施例中,制造商可将各块中的不同字元线区分为q类、t类、m类、与s类四个类型。s类(s-type)代表字元线所连接的多数储存单元只适合用每储存单元一位元(one-bit-per-cell,1bpc)的编程模式(以下简称一位元模式,1bpcscheme)来写入数据。m类(m-type)代表字元线所连接的多数储存单元可以用每储存单元两位元(two-bit-per-cell,2bpc)的模式(以下简称两位元模式,2bpcscheme)来写入数据,也可以用一位元模式来写入数据。t类(t-type)代表字元线所连接的多数储存单元可以用每储存单元三位元(three-bit-per-cell,3bpc)的模式(以下简称三位元模式,3bpcscheme)来写入数据,也可以用两位元模式或是一位元模式来写入数据。q类(q-type)代表字元线所连接的多数储存单元可以用每储存单元四位元(four-bit-per-cell,4bpc)的模式(以下简称四位元模式,4bpcscheme)来写入数据,也可以用三位元模式、两位元模式、或是一位元模式来写入数据。

前述的分类方式在某种程度上代表m类字元线所连接的储存单元的整体瑕疵少于s类字元线,t类字元线所连接的储存单元的整体瑕疵少于m类字元线,而q类字元线所连接的储存单元的整体瑕疵又少于t类字元线。换言之,q类字元线所连接的储存单元的整体电路品质比其他类型的字元线来得好。

又例如,在固态硬盘110中的块是以三阶储存单元晶片实现的实施例中,制造商可将各块中的字元线区分为前述的t类、m类、与s类三个类型。

又例如,在固态硬盘110中的块是以多阶储存单元晶片实现的实施例中,制造商可将各块中的字元线区分为前述的m类与s类两个类型。

由前述说明可知,一位元模式可适用于s类字元线、m类字元线、t类字元线、或q类字元线所连接的储存单元。二位元模式只适用于m类字元线、t类字元线、或q类字元线所连接的储存单元,而不适用于s类字元线所连接的储存单元。三位元模式只适用于t类字元线或q类字元线所连接的储存单元,而不适用于m类字元线与s类字元线所连接的储存单元。四位元模式只适用于q类字元线所连接的储存单元,而不适用于t类字元线、m类字元线、与s类字元线所连接的储存单元。

请注意,前述的q类、t类、m类、与s类等用语,只是为了方便区别不同的类型,实际上可用任何合适的名称、代码、数字、或索引值来表达不同的字元线类型。

制造商可将固态硬盘110的各块中的字元线分类结果,预先储存在固态硬盘装置100中。例如,在本实施例中,可将固态硬盘110的各块中的字元线分类结果,以合适的形式预先记录在前述的储存电路150中,以作为一字元线分类记录。

例如,图2所绘示为本发明一实施例的字元线分类记录152简化后的示意图。字元线分类记录152包含固态硬盘110中的多个块的字元线分类结果。例如,字元线分类记录152中的数据输入210、220、与230,分别代表块112中的字元线121、122、与123的字元线类型(word-linetype);数据输入240、250、与260分别代表块114中的字元线124、125、与126的字元线类型;而数据输入270、280、与290则分别代表块116中的字元线127、128、与129的字元线类型。

从图2实施例中的数据输入210~290的内容可以得知,块112中的字元线121属于s类字元线;块112中的字元线122与123、以及块114中的字元线126都属于m类字元线;块114中的字元线124属于t类字元线;块114中的字元线125以及块116中的字元线127、128、与129都属于q类字元线。

由前述的字元线分类方式可知,q类字元线所连接的储存单元在数据编程模式的选择上具有最大的弹性、t类字元线次之、m类字元线再次之。

因此,当需要写入数据至固态硬盘110时,快闪存储器控制电路164可从固态硬盘110中挑选出合适的块,并根据字元线分类记录152的内容选用相应的编程模式,以将数据写入选定块中的单独字元线所连接的一个或多个实体页(page)。

以下将进一步说明固态硬盘控制电路160对于固态硬盘110的存取方式。为了方便说明起见,在此假设快闪存储器控制电路164选择块114做为要写入数据的块。

当快闪存储器控制电路164要在某一时间点t1将数据d1写入块114中的字元线124所对应的实体位置时,快闪存储器控制电路164可从图2的字元线分类记录152中查询字元线124的分类,并得知字元线124属于t类字元线。

如前所述,t类代表字元线所连接的储存单元可以用三位元模式、两位元模式、或是一位元模式来写入数据。快闪存储器控制电路164可根据当时采用的块管理策略选择合适的编程模式,并控制存取电路162采用选定的编程模式将数据d1写入字元线124所连接的一个或多个实体页。

例如,假设当时的块管理策略为容量优先模式(capacity-take-priorityapproach),则存取电路162可采用三位元模式来写入数据d1。

又例如,假设当时的块管理策略为性能优先模式(performance-take-priorityapproach),则存取电路162可采用一位元模式来写入数据d1。

又例如,假设当时的块管理策略为平衡模式(balanceapproach),则存取电路162可采用三位元模式或两位元模式来写入数据d1。

当快闪存储器控制电路164要在另一时间点t2将另一数据d2写入块114中的字元线125所对应的实体位置时,快闪存储器控制电路164可从图2的字元线分类记录152中查询字元线125的分类,并得知字元线125属于q类字元线。

如前所述,q类代表字元线所连接的储存单元可以用四位元模式、三位元模式、两位元模式、或是一位元模式来写入数据。快闪存储器控制电路164可根据当时的块管理策略选择合适的编程模式,并控制存取电路162采用选定的编程模式将数据d2写入字元线125所连接的一个或多个实体页。

例如,假设当时的块管理策略为容量优先模式,则存取电路162可采用四位元模式来写入数据d2。

又例如,假设当时的块管理策略为性能优先模式,则存取电路162可采用一位元模式来写入数据d2。

又例如,假设当时的块管理策略为平衡模式,则存取电路162可采用三位元模式或两位元模式来写入数据d2。

当快闪存储器控制电路164要在另一时间点t3将另一数据d3写入块114中的字元线126所对应的实体位置时,快闪存储器控制电路164可从图2的字元线分类记录152中查询字元线126的分类,并得知字元线126属于m类字元线。

如前所述,m类代表字元线所连接的储存单元可以用两位元模式或是一位元模式来写入数据。快闪存储器控制电路164可根据当时的块管理策略选择合适的编程模式,并控制存取电路162采用选定的编程模式将数据d3写入字元线126所连接的一个或多个实体页。

例如,假设当时的块管理策略为容量优先模式,则存取电路162可采用两位元模式来写入数据d3。

又例如,假设当时的块管理策略为性能优先模式,则存取电路162可采用一位元模式来写入数据d3。

又例如,假设当时的块管理策略为平衡模式,则存取电路162可采用两位元模式来写入数据d3。

由前述说明可知,固态硬盘控制电路160可根据不同字元线的电路特性,对同一块114中的不同字元线采用不同的数据编程模式。因此,块114中的不同字元线所连接的储存单元的数据编程模式在同一时间点可能会有所不同。

例如,如图3所示,在快闪存储器控制电路164采用容量优先模式管理固态硬盘110的情况下,存取电路162可在时间点t1采用三位元模式将数据d1写入字元线124所连接的一个或多个实体页、在时间点t2采用四位元模式将数据d2写入字元线125所连接的一个或多个实体页、并在时间点t3采用两位元模式将数据d3写入字元线126所连接的一个或多个实体页。如此一来,块114中便会同时存在以三位元模式写入的数据d1、以四位元模式写入的数据d2、以及以两位元模式写入的数据d3。

对于固态硬盘110中的其他块,固态硬盘控制电路160都能根据字元线分类记录152的内容,来选择单独字元线所连接的储存单元的数据编程模式。

随着时间的经过,快闪存储器控制电路164可以在适当的时机将块114中所储存的数据抹除,以使块114能够用来储存其他的数据。

另外,在操作的过程中,快闪存储器控制电路164可以依照固态硬盘110的剩余储存空间、待写入数据的数据属性、主控装置的要求、用户的设置、或是当时固态硬盘装置100的操作环境,动态调整块管理模式。

例如,一般可将会被经常存取的数据称为热数据,并将较不会被经常存取的数据称为冷数据。在块114被抹除之后,倘若快闪存储器控制电路164需要将属于热数据的新数据d4、d5、与d6分别写入块114中的字元线124、125、与126所对应的实体位置,则快闪存储器控制电路164可采用性能优先模式来存取块114。在此情况下,如图4所示,快闪存储器控制电路164可在时间点t4控制存取电路162采用一位元模式将数据d4写入字元线124所连接的一个或多个实体页、在时间点t5采用一位元模式将数据d5写入字元线125所连接的一个或多个实体页、并在时间点t6采用一位元模式将数据d6写入字元线126所连接的一个或多个实体页。如此一来,块114中所储存的数据d4、d5、与d6便会具有相同的编程模式,亦即,一位元模式。

又例如,在块114被抹除之后,倘若主控装置或用户要求快闪存储器控制电路164将块管理策略改为平衡模式、且快闪存储器控制电路164需要将新数据d7、d8、与d9分别写入块114中的字元线124、125、与126所对应的实体位置,则快闪存储器控制电路164可采用平衡模式来对存取块114。在此情况下,如图5所示,快闪存储器控制电路164可在时间点t7控制存取电路162采用三位元模式将数据d7写入字元线124所连接的一个或多个实体页、在时间点t8采用三位元模式将数据d8写入字元线125所连接的一个或多个实体页、并在时间点t9采用两位元模式将数据d9写入字元线126所连接的一个或多个实体页。如此一来,块114中便会同时存在以三位元模式写入的数据d7与d8、以及以两位元模式写入的数据d9。

由前述说明可知,对于块114中的同一条字元线所连接的实体页而言,固态硬盘控制电路160在不同的时间点可以采用不同的数据编程模式来写入数据。例如,在前述的实施例中,块114中的字元线124所对应的数据编程模式有时候是三位元模式、有时候则是一位元模式;字元线125所对应的数据编程模式有时候是四位元模式、有时候是一位元模式、有时候则是三位元模式;字元线126所对应的数据编程模式有时候是两位元模式、有时候则是一位元模式。

由前述说明可知,快闪存储器控制电路164是以字元线为单位来设置相关实体页的数据编程模式,因此能大幅提升写入数据至快闪存储器块时的数据编程模式选择弹性。

前述的块使用方式有利于充分运用每个快闪存储器块的储存能力,进而能够在不增加固态硬盘110中的快闪存储器块数量的情况下等效增加固态硬盘装置100的储存空间。

另一方面,由于快闪存储器控制电路164会对同一块中的不同类型的字元线适应性采用不同的数据编程模式来写入数据,所以能够提升单独块中的数据可靠度。

随着数据写入或抹除次数的增加,单独字元线所连接的储存单元的电路瑕疵可能会加、或是数据可靠度可能会有所降低。因此,快闪存储器控制电路164可以在操作的过程中,根据各字元线所连接的实体页的数据写入次数或抹除次数,动态调整前述字元线分类记录152中的相应数据输入的内容。快闪存储器控制电路164也可以采用各种合适的测试方式对各字元线所连接的实体页进行可靠度测试,并根据测试的结果动态调整前述字元线分类记录152中的相应数据输入的内容。

例如,如图6所示,当快闪存储器控制电路164判定块112中的字元线123所连接的多数储存单元变成只适合用一位元模式来写入数据时,快闪存储器控制电路164可将字元线分类记录152中原先的数据输入230修改为新的数据输入630,使得字元线123的类型从m类变成s类。

又例如,当快闪存储器控制电路164判定块114中的字元线125所连接的多数储存单元变成只适合用三位元模式、两位元模式、或是一位元模式来写入数据,而不再适合用四位元模式来写入数据时,快闪存储器控制电路164可将字元线分类记录152中原先的数据输入250修改为新的数据输入650,使得字元线125的类型从q类变成t类。

众所周知,传统的快闪存储器控制电路对于整个块中的所有实体页都是采用相同的数据编程模式,但这种做法没有考虑到块中的不同部位的电路特性可能有所差异。因此,当传统的快闪存储器控制电路采用较高阶的数据编程模式写入数据至某一块、但该块中的部分实体位置因具有电路瑕疵而无法支援较高阶的数据编程模式时,便容易发生数据出错的情况,或是增加该块被传统的快闪存储器控制电路判定为坏块(badblock)的可能性。一旦块被标识为坏块的可能性增加,便会降低整体固态硬盘的可用储存空间。

不同于传统的坏块管理机制,只要固态硬盘110中的任一块中还有足够数量的字元线所连接的实体页能够支援较低阶的数据编程模式,本实施例中的快闪存储器控制电路164便会根据前述的方式来使用该块,而不会将该块标识为坏块。只有在某一块内的全部字元线或超过预定数量的字元线所连接的实体页都不适合再被用来储存数据时,快闪存储器控制电路164才会将该块标识为坏块。如此一来,便可降低块被判定为坏块的可能性,进而增加固态硬盘110中的可用储存空间并延长固态硬盘110的使用期限。

在某些实施例中,前述的快闪存储器控制电路164还可弹性调整固态硬盘110中的单独块的用途。在实际应用中,可以将固态硬盘110的部份块划分为预留空间块(overprovisionblock,opblock)并将其他块划分为数据块(datablock)。如前所述,预留空间块的数量会影响固态硬盘装置100的操作性能,而数据块的数量则会影响固态硬盘装置100的数据储存容量。

因此,在操作的过程中,快闪存储器控制电路164可按照预定的管理策略、固态硬盘110的剩余储存空间、主控装置的要求、用户的设置、或是当时固态硬盘装置100的操作环境,弹性调整固态硬盘110中的部份块的用途。

例如,快闪存储器控制电路164可在需要固态硬盘110提供较多数据储存空间的第一时段p1中,将块114设置成数据块使用,并在快闪存储器控制电路164需要提升固态硬盘110的存取性能的第二时段p2中,则可将块114设置成预留空间块使用。换言之,固态硬盘110中的部份块(例如,前述的块114)可以在不同的时段扮演不同的用途。

如此一来,便可大幅提升固态硬盘110中的块用途的调整弹性,进而有效增加固态硬盘装置100的操作弹性与使用弹性。

请注意,前述图1中的电路架构只是示范性的实施例,并非局限本发明的实际实施方式。

例如,图7为本发明第二实施例的固态硬盘装置简化后的功能方框图。在图7的实施例中,前述的字元线分类记录152是储存在固态硬盘110的某一块中,例如,块112。

在某些实施例中,亦可将前述的字元线分类记录152分成多个区段分别储存在固态硬盘110的不同块中。

在说明书及权利要求书中使用了某些词汇来指称特定的元件,而本领域内的技术人员可能会用不同的名词来称呼同样的元件。本说明书及权利要求书并不以名称的差异来作为区分元件的方式,而是以元件在功能上的差异来作为区分的基准。在说明书及申请专利范围中所提及的“包含”为开放式的用语,应解释成“包含但不限定于”。另外,“耦接”一词在此包含任何直接及间接的连接手段。因此,若文中描述第一元件耦接于第二元件,则代表第一元件可通过电性连接或无线传输、光学传输等信号连接方式而直接地连接于第二元件,或通过其它元件或连接手段间接地电性或信号连接至第二元件。

在说明书中所使用的“和/或”的描述方式,包含所列举的其中一个项目或多个项目的任意组合。另外,除非说明书中特别指明,否则任何单数的用语都同时包含复数的含义。

以上仅为本发明的较佳实施例,但需要注意的是,这些描述并非用以限制本发明。相反地,此发明涵盖了所属技术领域中的技术人员显而易见的修改与相似设置。所以,本申请的保护范围当以权利要求所界定者的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1