存储装置的制作方法

未命名 07-12 阅读:94 评论:0

存储装置
1.相关申请的交叉引用
2.本技术要求于2021年12月20日在韩国知识产权局提交的韩国专利申请no.10-2021-0182376和于2022年5月9日在韩国知识产权局提交的韩国专利申请no.10-2022-0056696的优先权,这些韩国专利申请的公开内容通过引用整体地并入本文。
技术领域
3.本发明构思涉及一种包括非易失性存储器的存储装置。


背景技术:

4.半导体存储器可以被分类为易失性存储器件或非易失性存储器件。易失性存储器件在不存在电力的情况下可以丢失存储的数据,而非易失性存储器件甚至在未被提供电力的情况下也可以保持存储的数据。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除且可编程rom(eeprom)、闪存、相变随机存取存储器(pram)、磁性ram(mram)、电阻式ram(rram)、铁电ram(fram)等。
5.在数据被编程到非易失性存储器的存储单元中之后,随着时间流逝,存储单元的阈值电压分布可能劣化,因此,从存储单元读取的数据可能具有较低的可靠性。为了维持所读取的数据的可靠性,存储装置可以驱动非易失性存储器上的防御逻辑。然而,当防御逻辑被太频繁地驱动时,存储装置的性能和所读取的数据的可靠性可能降低。


技术实现要素:

6.本发明构思的示例实施例提供一种存储装置,所述存储装置通过在使所述存储装置的性能降低最小化的同时控制对非易失性存储器的防御逻辑的执行来提高从所述非易失性存储器读取的数据的可靠性。
7.本发明构思的示例实施例提供一种通过使用非易失性存储器的遥测日志来控制防御逻辑的执行的存储装置。
8.根据本发明构思的示例实施例,提供了一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个超级块,其中,每个超级块包括多个非易失性存储器的组中所包括的存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得所述多个超级块当中的第一超级块被擦除以对从主机接收到的数据进行编程,进行控制使得所述数据被编程在所述第一超级块中,进行控制使得所述第一超级块被选择为用于垃圾收集操作的受害超级块,并且进行控制使得在数据持续时间大于阈值时所述存储器件被执行介质扫描操作,其中,所述数据持续时间是第一时间点与第二时间点之间的间隔,在所述第一时间点所述第一超级块被擦除,在所述第二时间点所述第一超级块被选择为所述受害超级块。
9.根据本发明构思的示例实施例,提供了一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个非易失性存储器和多个超级块,其中,每个超级块包括所述多个
非易失性存储器的组中所包括的存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得从所述多个超级块中选择的超级块被擦除以对从主机接收到的数据进行编程,进行控制使得所述数据被编程在被擦除的超级块中,并且进行控制使得所述数据被编程在其中的所述超级块被选择为用于垃圾收集操作的受害超级块,进行控制使得包括关于所述多个超级块的数据持续时间的统计信息的遥测日志基于关于所述多个超级块中的第一超级块的数据持续时间的信息被更新,其中,所述第一超级块的所述数据持续时间是处于一个通电时段中的第一时间点与第二时间点之间的间隔,在所述第一时间点所述第一超级块被擦除,在所述第二时间点所述第一超级块被确定为所述受害超级块,以及进行控制使得用于触发对所述存储器件的介质扫描操作的所述多个超级块的所述数据持续时间的阈值基于所述遥测日志被调整。
10.根据本发明构思的示例实施例,提供了一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得在所述多个存储块当中的某个存储块被擦除并且数据持续时间大于阈值时所述存储器件被执行介质扫描操作,所述数据持续时间对应于在数据被编程到所述存储块中之后直到所述数据失效为止的时间,其中,所述控制器进行控制使得关于所述多个存储块的所述数据持续时间的统计信息被生成,并且其中,所述控制器进行控制使得用于触发所述介质扫描操作的标准基于所述统计信息被调整。
附图说明
11.根据结合附图进行的以下详细描述,将更清楚地理解本发明构思的上述和其他特征:
12.图1是示出了包括根据本发明构思的示例实施例的存储装置的主机-存储系统的图;
13.图2是具体地图示了包括在图1的存储装置中的控制器的图;
14.图3是具体地图示了图1的存储装置的视图;
15.图4和图5是用于更具体地说明非易失性存储器的图;
16.图6和图7是用于说明包括在非易失性存储器中的存储单元的阈值电压分布的图;
17.图8是用于说明介质扫描操作的流程图;
18.图9是用于说明数据持续时间的流程图;
19.图10是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图;
20.图11是用于说明根据本发明构思的示例实施例的遥测日志的更新操作的图;
21.图12是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图;
22.图13a、图13b和图13c是用于说明根据本发明构思的示例实施例的调整用于触发介质扫描操作的标准的方法的流程图;
23.图14是用于说明根据本发明构思的示例实施例的主机-存储系统的操作的流程图;
24.图15a和图15b是用于说明根据本发明构思的示例实施例的遥测日志的示例的图;
25.图16是用于说明包括在非易失性存储器中的存储单元的阈值电压分布的图;
26.图17是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图;
27.图18是用于说明超级块的读取计数和累积读取时间的图;
28.图19是示出了根据本发明构思的示例实施例的主机-存储系统的图;以及
29.图20是示出了使用根据本发明构思的示例实施例的存储装置的系统的图。
具体实施方式
30.以下,将参考附图描述本发明构思的示例实施例。
31.图1是示出了包括根据本发明构思的示例实施例的存储装置的主机-存储系统的图。
32.主机-存储系统10可以包括主机100和存储装置200。另外,存储装置200可以包括控制器210和存储器件220。
33.主机100可以是电子装置,例如,诸如移动电话、运动图像专家组(mpeg)音频第3层(mp3)播放器或膝上型计算机的便携式电子装置,或诸如台式计算机、游戏机、电视(tv)或投影仪的电子装置。主机100可以包括至少一个操作系统(os)。该操作系统可以管理并控制主机100的整体功能和操作。
34.存储装置200可以包括用于基于来自主机100的请求来存储数据的存储介质。例如,存储装置200可以包括固态硬盘(ssd)、嵌入式存储器和可移动外部存储器中的至少一者。当存储装置200是ssd时,存储装置200可以是符合快速非易失性存储(nvme)标准的装置。当存储装置200是嵌入式存储器或外部存储器时,存储装置200可以是符合通用闪存(ufs)标准或嵌入式多媒体卡(emmc)标准的装置。主机100和存储装置200中的每一者可以基于采用的标准协议来生成并发送分组。
35.存储器件220可以在未对其供应电力时维持存储的数据。换句话说,存储器件220可以是非易失性存储器。存储器件220可以通过写入操作来存储从主机100提供的数据,并且可以通过读取操作来输出存储在存储器件220中的数据。存储器件220可以包括多个存储块,该多个存储块包括存储单元。
36.当存储器件220包括闪存时,该闪存可以包括二维(2d)nand存储器阵列或三维(3d)/垂直nand(vnand)存储器阵列。另外地,存储装置200可以包括各种其他类型的非易失性存储器。例如,存储装置200可以包括磁性随机存取存储器(mram)、自旋转移扭矩mram、导电桥式ram(cbram)、铁电ram(feram)、相变ram(pram)、电阻式ram或各种其他类型的存储器。
37.控制器210可以响应于来自主机100的请求来控制存储器件220。例如,控制器210可以使得主机100被提供从存储器件220读取的数据,并且使得从主机100提供的数据被存储在存储器件220中。换句话说,控制器210可以控制对存储器件220执行的读取、编程、擦除等的操作。
38.控制器210可以使得驱动存储器件220上的防御逻辑并且控制读取、编程或擦除的操作。例如,当在数据被编程到存储器件220的存储单元中之后过去较长时间时,存储单元的阈值电压分布可能劣化,因此降低从存储单元读取的数据的可靠性。因此,控制器210可以使得周期性地执行介质扫描操作以维持从存储单元读取的数据的可靠性。例如,介质扫描操作可以是这样的操作,在所述操作中控制器210使得甚至在没有来自主机100的请求的情况下也从存储块中的任意页或预定页读取数据,并且使得当所读取的数据中的错误位数
大于阈值时将存储在存储块中的数据写入到另一存储块。例如,介质扫描操作可以是用于基于存储器件220的物理地址来读取存储块的各页的巡逻读取操作、用于基于存储器件220的逻辑地址来读取存储块的各页的后台介质扫描(bms)操作等。
39.当主机100的工作负载集中在热数据上时,存储在存储装置200中的数据可能被频繁地更新。每当存储在存储装置200中的数据被更新时,在存储单元中编程的现有数据可能失效,并且经更新后的数据可以被编程到其他存储单元中。因此,当主机100的工作负载集中在热数据上时,存储单元的阈值电压分布可能不会显著地劣化,从而维持从存储单元读取的数据的可靠性。
40.另外地,介质扫描操作可以伴随存储块的读取操作。因此,介质扫描操作可能引起存储装置200的数据输入/输出操作中的延迟并且可能引起读取扰动。在这种情况下,如果存储装置200执行介质扫描操作以维持从存储单元读取的数据的可靠性,则介质扫描操作可能降低存储装置200的性能和可靠性。
41.根据本发明构思的示例实施例,存储装置200可以基于数据持续时间来控制介质扫描操作,该数据持续时间是在数据被编程在存储单元中之后失效所花费的时间。例如,控制器210可以基于存储块被擦除以将数据编程到存储块中的时间点以及在存储块中编程的所有数据都失效的时间点来确定数据持续时间。换句话说,控制器210可以基于擦除时间点和编程完成时间点来确定数据持续时间。另外,控制器210可以使得在存储块的数据持续时间大于阈值时对存储器件220执行介质扫描操作,而在存储块的数据持续时间不大于阈值时跳过介质扫描操作。
42.另外,控制器210可以控制遥测日志中的关于存储块的数据持续时间的统计信息的管理,并且基于统计信息来控制用于触发介质扫描操作的阈值。例如,当基于统计信息检测到数据持续时间变得较短的趋势时,控制器210可以使得阈值增大,从而不太频繁地触发介质扫描操作。
43.根据本发明构思的示例实施例,存储装置200可以通过仅通过与主机100的输入/输出操作来维持从存储器件220读取的数据的可靠性而不执行介质扫描操作而具有优化的性能和可靠性。
44.图2是具体地图示了包括在图1的存储装置中的控制器的图。
45.控制器210可以包括命令处理单元211、纠错单元212、垃圾收集单元213、数据持续时间测量单元214、遥测日志管理单元215和介质管理单元216。
46.命令处理单元211可以响应于从主机100接收到的读取命令或写入命令来控制存储器件220的读取操作或写入操作。例如,命令处理单元211可以将连同读取命令或写入命令一起从主机100接收到的逻辑地址转换成存储器件220中使用的物理地址,并且可以控制对由该物理地址指示的存储区域执行的读取操作或写入操作。
47.纠错单元212可以检测并纠正从存储器件220读取的数据中的错误。例如,纠错单元212可以通过对要编程到存储器件220中的数据执行纠错编码来向数据添加奇偶校验。另外,通过使用包括在从存储器件220读取的数据中的奇偶校验来执行纠错解码,纠错单元212可以检测并纠正所读取的数据中的错误。
48.垃圾收集单元213可以执行垃圾收集操作以保证存储器件220的空闲空间。例如,为了克服存储器件220不支持重写操作的限制,控制器210可以使得先前编程的数据失效以
更新在存储器件220中编程的数据,并且使得更新后的数据被编程到另一存储区域中。当存储器件220中的失效数据的量增加时,可能减小其中可以对有效数据进行编程的空闲空间的大小。因此,垃圾收集单元213可以通过以下操作来保证空闲空间:收集分散在存储器件220的受害存储块中的有效数据;将该有效数据编程在另一存储块中;以及擦除受害存储块中的已编程的数据。
49.为了控制介质扫描操作,数据持续时间测量单元214可以确定从当为了写入操作而擦除存储器件220的存储块并且然后将数据编程到存储块中时起直到已编程的数据失效的时间。可以为每个存储块或者为作为存储块的集合的每个超级块确定数据持续时间。在下面参考图3描述超级块,并且参考图9描述确定数据持续时间的方法。
50.遥测日志管理单元215可以收集存储装置200的遥测日志。遥测日志可以包括存储装置200的健康监测信息、性能信息等。遥测日志可以从存储装置200向外部输出,并且可以由存储装置200的制造商获得。遥测日志可以用于提高存储装置200的功能性和可靠性。
51.根据本发明构思的示例实施例,遥测日志管理单元215可以管理有关或关于数据持续时间的统计信息。控制器210可以使得统计信息从存储装置200向外部输出并且可以使用统计信息来调整用于触发介质扫描操作的阈值。
52.介质管理单元216可以驱动用于维持存储在存储器件220中的数据的可靠性的防御逻辑。根据本发明构思的示例实施例,介质管理单元216可以在存储器件220的数据持续时间大于阈值时执行介质扫描操作。
53.命令处理单元211、纠错单元212、垃圾收集单元213、数据持续时间测量单元214、遥测日志管理单元215和介质管理单元216可以被加载到包括在控制器210中的存储器中,并且实现为由包括在控制器210中的处理器驱动的固件。然而,本发明构思不限于此。例如,纠错单元212可以包括用于执行纠错编码和解码的纠错码电路。
54.图3是具体地图示了图1的存储装置的视图。
55.如参考图1所描述的,存储装置200可以包括控制器210和存储器件220。存储器件220可以包括多个非易失性存储器nvm11、nvm12、nvm13、nvm14、nvm21、nvm22、nvm23和nvm24。非易失性存储器nvm11至nvm24中的每一者可以连接到多个通道ch1和ch2中的一者。例如,非易失性存储器nvm11至nvm14可以通过通路w11、w12、w13和w14连接到第一通道ch1,而非易失性存储器nvm21至nvm24可以通过通路w21、w22、w23和w24连接到第二通道ch2。
56.在示例实施例中,非易失性存储器nvm11至nvm24中的每一者可以被实现在可以通过从控制器210接收到的个别命令被操作的存储器的任何单元中。例如,非易失性存储器nvm11至nvm24中的每一者可以作为芯片或祼片被实现,并且本发明构思不限于此。另外,包括在存储装置200中的通道的数目和连接到每个通道的非易失性存储器的数目都不受限制。
57.控制器210可以使得通过多个通道ch1和ch2向存储器件220发送信号以及从存储器件220接收信号。例如,控制器210可以使得通过通道ch1和ch2向存储器件220发送命令、地址和数据或者使得从存储器件220接收数据。
58.控制器210可以使得通过每个通道来选择连接到对应通道的非易失性存储器nvm11至nvm24中的一者,并且使得向所选择的非易失性存储器发送信号以及从所选择的非易失性存储器接收信号。例如,控制器210可以使得从连接到第一通道ch1的非易失性存储
器nvm11至nvm14中选择非易失性存储器nvm11。控制器210可以使得通过第一通道ch1向所选择的非易失性存储器nvm11发送命令、地址和数据或者使得通过第一通道ch1从所选择的非易失性存储器nvm11接收数据。
59.控制器210可以使得通过不同通道并行地向存储器件220发送信号以及从存储器件220接收信号。例如,控制器210可以使得在通过第一通道ch1向存储器件220发送命令的同时通过第二通道ch2向存储器件220发送另一命令。例如,控制器210可以使得在通过第一通道ch1接收来自存储器件220的数据的同时通过第二通道ch2接收来自存储器件220的其他数据。
60.通过相同通道连接到控制器210的每一个非易失性存储器可以并行地执行内部操作。例如,控制器210可以使得通过第一通道ch1将命令和地址依次发送到非易失性存储器nvm11至nvm14。当命令和地址被发送到非易失性存储器nvm11至nvm14时,非易失性存储器nvm11至nvm14中的每一者可以根据命令并行地执行操作。
61.非易失性存储器nvm11至nvm24可以包括多个存储块。图3示出了包括在非易失性存储器nvm11至nvm14中的存储块blk。存储器件220可以包括超级块sb,该超级块sb包括非易失性存储器nvm11至nvm14中包括的存储块blk。控制器210可以使得将连续数据分发并存储在超级块sb中包括的存储块blk中。超级块sb中包括的存储块blk可以被并行地访问,因此,当连续数据被存储在超级块sb中时,会增加数据的写入操作和读取操作的吞吐量。
62.另外地,超级块sb中包括的存储块blk可以几乎被同时地编程和擦除,因此可以以超级块sb为单位管理与存储块blk相关联的管理数据。例如,可以以超级块sb为单位管理诸如存储块的磨损程度、读取计数和数据持续时间等数据。
63.图4和图5是用于更具体地说明非易失性存储器的图。
64.图4是示出了非易失性存储器的示例框图。参考图4,非易失性存储器300可以包括控制逻辑电路320、存储单元阵列330、页缓冲器340、电压生成器350和行译码器360。非易失性存储器300还可以包括用于从外部装置接收命令cmd和地址addr并且与外部装置交换数据data的存储器接口电路,并且还包括列逻辑、预译码器、温度传感器、命令译码器、地址译码器等。
65.控制逻辑电路320可以控制非易失性存储器300中的各种操作。控制逻辑电路320可以响应于来自存储器接口电路的命令cmd和/或地址addr输出各种控制信号。例如,控制逻辑电路320可以输出电压控制信号ctrl_vol、行地址x-addr或列地址y-addr。
66.存储单元阵列330可以包括多个存储块blk1至blkz(这里,z是正整数),并且所述多个存储块blk1至blkz中的每一者可以包括多个存储单元。存储单元阵列330可以通过位线bl连接到页缓冲器340,并且可以通过字线wl、串选择线ssl和接地选择线gsl连接到行译码器360。
67.在示例实施例中,存储单元阵列330可以包括三维存储单元阵列,并且该三维存储单元阵列可以包括多个nand串。每个nand串可以包括各自连接到垂直地堆叠在衬底上的字线的存储单元。描述非易失性存储器件的美国专利no.7,679,133、美国专利no.8,553,466、美国专利no.8,654,587、美国专利no.8,559,235和美国专利申请公开no.2011/0233648通过引用整体地并入本文。在示例实施例中,存储单元阵列330可以包括二维存储单元阵列,并且该二维存储单元阵列可以包括设置在行方向和列方向上的多个nand串。
68.页缓冲器340可以包括多个页缓冲器pb1至pbn(这里,n是3或更大的整数),并且多个页缓冲器pb1至pbn可以各自通过多条位线bl连接到存储单元。页缓冲器340可以响应于列地址y-addr从位线bl中选择至少一条位线。基于操作模式,页缓冲器340可以作为写入驱动器或读出放大器操作。例如,在写入操作期间,页缓冲器340可以对被选位线施加与要编程的数据相对应的位线电压。在读取操作期间,页缓冲器340可以检测被选位线的电流或电压以检测存储在存储单元中的数据。
69.电压生成器350可以基于电压控制信号ctrl_vol来生成用于执行编程操作、读取操作和擦除操作的各种类型的电压。例如,电压生成器350可以生成编程电压、读取电压、编程验证电压、擦除电压等作为字线电压vwl。
70.行译码器360可以响应于行地址x-addr选择多条字线wl中的一条字线wl并且选择多条串选择线ssl中的一条串选择线ssl。例如,行译码器360可以在写入操作期间对被选字线施加编程电压和编程验证电压,并且可以在读取操作期间对被选字线施加读取电压。
71.图5是用于说明可以适用于根据本发明构思的示例实施例的存储装置的三维(3d)v-nand结构的图。当将存储装置的非易失性存储器实现为三维(3d)v-nand型闪存时,包括在非易失性存储器中的多个存储块中的每一个存储块可以由如图5所示的等效电路来表示。
72.图5所示的存储块blki表示具有三维结构并且位于衬底上的三维存储块。例如,包括在存储块blki中的多个存储器nand串可以位于与衬底垂直的方向上。
73.参考图5,存储块blki可以包括连接在位线bl1、bl2和bl3与公共源极线csl之间的多个存储器nand串ns11、ns12、ns13、ns21、ns22、ns23、ns31、ns32和ns33。多个存储器nand串ns11至ns33中的每一者可以包括串选择晶体管sst、多个存储单元mc1、mc2、mc3、mc4、mc5、mc6、mc7和mc8以及接地选择晶体管gst。图5示出了多个存储器nand串ns11至ns33中的每一者包括八个存储单元mc1、mc2、

和mc8,但是本发明构思不限于此。
74.串选择晶体管sst可以连接到对应的串选择线ssl1、ssl2和ssl3。多个存储单元mc1、mc2、

和mc8可以分别连接到对应的栅极线gtl1、gtl2、gtl3、gtl4、gtl5、gtl6、gtl7和gtl8。栅极线gtl1、gtl2、

和gtl8可以对应于字线,并且栅极线gtl1、gtl2、

和gtl8中的一些栅极线可以对应于虚设字线。接地选择晶体管gst可以连接到对应的接地选择线gsl1、gsl2和gsl3。串选择晶体管sst可以连接到所对应的位线bl1、bl2和bl3,并且接地选择晶体管gst可以连接到公共源极线csl。
75.相同高度的字线之间可以共同地彼此连接,并且接地选择线gsl1、gsl2和gsl3以及串选择线ssl1、ssl2和ssl3可以彼此分开。图5示出了存储块blki连接到八条栅极线gtl1、gtl2、

和gtl8以及三条位线bl1、bl2和bl3,但是不一定限于此。
76.图6和图7是用于说明包括在非易失性存储器中的存储单元的阈值电压分布的图。
77.图6示出了理想情况下存储单元的阈值电压分布。
78.当编程电压被施加到存储单元所连接到的字线时,可以将电荷引入到存储单元中,从而增加存储单元的阈值电压。由于多个存储单元的电特性方面的微小差异,被编程有相同数据的存储单元的阈值电压可以在预定范围内形成阈值电压分布。图6示出了当存储单元是存储3位数据的三阶单元(tlc)时的存储单元的阈值电压分布。在图6中,图的水平轴指示阈值电压的幅度,而垂直轴指示存储单元的数目。
79.存储单元可以具有对应于以下中的任一者的阈值电压:擦除状态e以及第一编程状态p1、第二编程状态p2、第三编程状态p3、第四编程状态p4、第五编程状态p5、第六编程状态p6和第七编程状态p7。首先,第一读取电压v1、第二读取电压v2、第三读取电压v3、第四读取电压v4、第五读取电压v5、第六读取电压v6、第七读取电压v7可以是用于将各个状态彼此区分开的读取电压。例如,当第一读取电压v1被施加到存储单元所连接到的字线时,电流可以在阈值电压低于第一读取电压v1的第一存储单元所连接到的位线中平滑地流动。换句话说,第一存储单元可以作为接通单元被读取。另一方面,没有电流可以在阈值电压高于第一读取电压v1的第二存储单元所连接到的位线中流动。换句话说,第二存储单元可以作为关断单元被读取。
80.当第一读取电压v1被施加到存储单元时,可以将擦除状态e和其他状态彼此区分开。类似地,当第二读取电压v2至第七读取电压v7被进一步施加到存储单元时,可以区分所有擦除状态e和编程状态p1至p7。
81.当存储单元是三阶单元(tlc)时,不同的3位数据可以被映射到存储单元的擦除状态e和编程状态p1至p7的阈值电压。3位数据的每个位可以被称为最高有效位(msb)、中央有效位(csb)或最低有效位(lsb)。
82.当在存储单元被编程之后过去一定时间时,引入到存储单元中的电荷可能泄漏并且存储单元可能具有较低的阈值电压。换句话说,阈值电压分布可能劣化。
83.图7示出了存储单元的已劣化的阈值电压分布。
84.在图7中,图的水平轴指示阈值电压的幅度,而垂直轴指示存储单元的数目。在图7中,由实线示出的阈值电压分布可以与参考图6描述的理想阈值电压分布相同,而由虚线示出的阈值电压分布可以是已劣化的阈值电压分布。
85.当存储单元的阈值电压分布劣化时,从存储单元读取的数据的可靠性可能劣化。例如,当阈值电压分布劣化时,在被编程为具有第七编程状态p7的存储单元当中可能出现阈值电压低于第七读取电压v7的存储单元。当第七读取电压v7被施加到存储单元所连接到的字线时,被编程为具有第七编程状态p7的一些存储单元可能被读取为具有第六编程状态p6。换句话说,从存储单元中读取的数据可能包括错误。
86.即使当从存储单元读取的数据包括错误时,错误也可以由控制器210的纠错单元212纠正。然而,当包括在数据中的错误位数大于纠错单元212能够纠正的级别时,错误可能未被纠正,并且控制器210可能无法使得从存储单元读取的数据得以恢复。
87.然而,依照本发明构思的示例实施例,控制器210可以使得在存储单元的阈值电压分布劣化到不可能恢复从存储单元读取的数据的程度之前执行用于恢复存储单元的阈值电压分布的介质扫描操作。
88.图8是用于说明介质扫描操作的流程图。
89.在操作s11中,控制器210可以控制存储器件220读取要被执行介质扫描操作的目标存储块中的预定位置处的页。换句话说,可以读取包括在目标存储块中的一些页。第一读取电压v1至第七读取电压v7中的全部或一些可以被施加到页。例如,来自第一读取电压v1至第七读取电压v7的用于区分最高有效位(msb)的读取电压可以被施加到这些页中的第一页,而来自第一读取电压v1至第七读取电压v7的用于区分最低有效位(lsb)的读取电压可以被施加到这些页中的第二页。
90.在操作s12中,控制器210可以使得执行对从页读取的数据的错误检测和纠正。当控制器210使得执行对数据的错误检测和纠正时,可以确定数据中的错误位数。
91.在操作s13中,控制器210可以确定数据中的错误位数是否大于阈值。阈值可以被确定为不大于纠错单元212能够纠正的最大错误位数。
92.当数据中的错误位数大于阈值(例如,操作s13中的“是”)时,目标存储块的阈值电压分布可能劣化。控制器210可以使得目标存储块的数据被复制到另一存储块。控制器210还可以使得读取来自目标存储块的数据,以及使得所读取的数据中的错误被检测并纠正。另外,控制器210可以控制存储器件220将经纠错的数据编程到另一存储块中。当经纠错的数据被编程在另一存储块中时,已编程的数据可以具有理想的阈值电压分布。
93.当数据中的错误位数不大于阈值(例如,操作s13中的“否”)时,控制器210可以使得跳过操作s14并执行操作s15。
94.在操作s15中,控制器210可以确定对存储器件220的所有目标存储块的扫描操作是否在操作s11至操作s14中完成,并且使得重复地执行操作s11至操作s14,直到对所有目标存储块的扫描操作完成为止。可以将包括在存储器件220中的所有存储块确定为目标存储块,或者可以将包括在存储器件220中的具有劣化的阈值电压的风险的一些存储块确定为目标存储块。
95.如上所述,当在存储器件220中编程的数据的持续时间大于阈值时,可以触发介质扫描操作。可以为每个存储块或者为每个超级块确定数据持续时间。以下,参考图9详细地描述确定超级块的数据持续时间的方法。
96.图9是用于说明数据持续时间的流程图。
97.在操作s21中,控制器210可以使得擦除从包括在存储器件220中的多个超级块中选择的超级块。例如,控制器210可以使得从多个超级块中选择仅存储失效数据的超级块,并且使得擦除所选择的超级块。超级块被擦除的时间点可以被称为第一时间点t1。
98.在操作s22中,控制器210可以使得被擦除的超级块被分配为活动超级块。活动超级块可以是指被分配来对数据进行编程的超级块。换句话说,活动超级块是要在其中写入数据的超级块。
99.在操作s23中,当活动超级块被分配时,控制器210可以控制存储器件220将数据依次编程到活动超级块中,直到活动超级块的所有页都被编程为止。应当理解,依次编程到活动超级块中的数据的逻辑地址不一定是连续的。
100.当活动超级块的一些页仍处于被擦除状态而未被编程时,引入到已编程的页中的存储单元的电荷可能泄漏。例如,电荷可能泄漏到具有擦除状态的页中。因此,当在自第一时间点t1以来过去预定时间(例如,30分钟)之后被擦除页仍然在活动超级块中时,控制器210可以使得在操作s24中通过控制存储器件220将虚设数据编程到被擦除页中来完成对活动超级块的所有页的写入操作。在这种情况下,活动超级块的所有页都将被编程。
101.当活动超级块的所有页都被编程时,在操作s25中,控制器210可以将活动超级块确定为关闭超级块,并且暂时防止数据被编程到超级块中。
102.随着时间流逝,可以增加在关闭超级块中编程的数据当中的失效数据的比率。控制器210可以使得执行垃圾收集操作以保证存储器件220的空闲空间。
103.在操作s26中,控制器210可以将关闭超级块确定为用于垃圾收集(gc)操作的受害
超级块。例如,当关闭超级块中的失效数据的比率大于阈值时,控制器210可以将关闭超级块确定为受害超级块,使得受害超级块中的有效数据被收集,并且使得所收集的有效数据被编程到另一超级块中,从而使得执行垃圾收集操作。关闭超级块被确定为受害超级块的时间点可以被称为第二时间点t2。在第二时间点t2之后,可以选择该超级块作为要被擦除以对其他数据进行编程的超级块。
104.如能够看到的,可以在从超级块被擦除的第一时间点t1起的预定时间内将数据编程到超级块中,并且编程到超级块中的数据可能需要继续被编程直到第二时间点t2为止。根据本发明构思的示例实施例,控制器210可以将第一时间点t1与第二时间点t2之间的间隔确定为超级块的数据持续时间。
105.当主机100的工作负载集中在热数据上时,存储在存储装置200中的数据可以被频繁地更新,并且存储在超级块中的数据可能在短时间内失效。因此,数据持续时间可能缩短,并且存储单元的阈值电压分布可能不会在数据持续时间内显著地劣化。另一方面,当主机100的工作负载集中在冷数据上时,超级块的数据持续时间可以较长,并且存储单元的阈值电压分布可能在数据持续时间内显著地劣化。
106.根据本发明构思的示例实施例,当超级块的数据持续时间大于阈值时,存储装置200可以执行用于维持存储在存储器件220中的数据的可靠性的介质扫描操作。以下,参考图10详细地描述根据本发明构思的示例实施例的存储装置200的操作。
107.图10是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图。
108.在操作s31中,控制器210可以使得从超级块中选择用于垃圾收集(gc)操作的受害超级块。控制器210可以将选择受害超级块的时间点确定为受害超级块的第二时间点t2。
109.在操作s32中,控制器210可以使得受害块的有效数据被收集并且使得将所收集的有效数据移动到要被执行垃圾收集操作的目标超级块,从而使得执行垃圾收集操作。
110.在操作s33中,控制器210可以使得基于受害超级块的数据持续时间来更新遥测日志。遥测日志可以包括有关超级块的数据持续时间的统计信息,并且可以用于调整介质扫描操作的阈值。将在下面参考图11描述用于控制器210使得遥测日志被更新的特定方法的描述。
111.在操作s34中,控制器210可以确定受害超级块的数据持续时间是否大于阈值。
112.当受害超级块的数据持续时间不大于阈值(例如,操作s34中的“否”)时,即使当控制器210不使得执行介质扫描操作时,也能够保证存储在存储器件220中的数据的可靠性。因此,在操作s35中,控制器210可以使得跳过对存储器件220的介质扫描操作。
113.另一方面,当受害超级块的数据持续时间大于阈值(例如,操作s35中的“是”)时,控制器210可以使得在操作s36中对存储器件220执行介质扫描操作。
114.图11是用于说明根据本发明构思的示例实施例的遥测日志的更新操作的图。
115.根据本发明构思的示例实施例,只有当超级块的第一时间点t1和第二时间点t2被包括在一个通电时段中时,控制器210才可以使得通过使用超级块的数据持续时间来更新遥测日志。
116.图11示出了第一时间点t1和第二时间点t2,在第一时间点t1第一超级块sb1、第二超级块sb2和第三超级块sb3被擦除,在第二时间点t2第一超级块sb1至第三超级块sb3随着时间的推移而被选择为受害块。图11示出了其中存储装置200既处于通电状态又处于断电
状态的时间。
117.如图11所示,第一超级块sb1的第一时间点t1和第二时间点t2可以被包括在一个通电时段中。换句话说,第一超级块sb1可以在一个通电时段中被擦除,并且可以在数据被编程之后被选择为受害超级块。控制器210可以使得在第一超级块sb1被擦除时将有关第一时间点t1的信息存储在包括在控制器210中的存储器中,并且在第一超级块sb1被选择为受害超级块时将第一时间点t1与第二时间点t2之间的间隔确定为数据持续时间。另外,控制器210可以使得通过使用第一超级块sb1的数据持续时间来更新遥测日志。类似地,第三超级块sb3的第一时间点t1和第二时间点t2可以被包括在一个通电时段中。控制器210可以使得通过使用第三超级块sb3的数据持续时间来更新遥测日志。
118.另外地,在存储装置200被断电时,存储器件220中的存储单元的阈值电压分布可能完全地劣化。当存储装置200被通电时,控制器210可以使得对存储器件220执行介质扫描操作以恢复存储单元的已劣化的阈值电压分布。
119.在第二超级块sb2被擦除并且然后将数据编程在第二超级块sb2中之后,存储装置200可能在数据被编程在第二超级块sb2中时被断电。不管存储装置200的断电时段的长度如何,都可以在存储装置200被通电之后恢复第二超级块sb2的阈值电压分布。当第二超级块sb2的第一时间点t1和第二时间点t2不属于一个通电时段时,控制器210可以使得不在遥测日志中反映第二超级块sb2的数据持续时间。换句话说,当第二超级块sb2的第一时间点t1和第二时间点t2不属于一个通电时段时,第二超级块sb2的数据持续时间不被包括在遥测日志中。
120.另外地,可以针对包括在存储器件220中的所有超级块收集有关数据持续时间的信息,并且可以针对整个存储器件220整体地管理遥测日志。然而,本发明构思不限于此。
121.例如,控制器210可以使得将存储器件220的存储空间划分成多个命名空间,并且使得将命名空间提供给主机100。命名空间可以是逻辑存储空间,并且可以将主机100上的不同命名空间识别为独立的存储空间。当存储装置200具有多个命名空间时,存储装置200可以针对每个命名空间管理遥测日志。例如,当包括在存储器件220中的某个超级块的数据持续时间被确定之后,可以使用该数据持续时间来更新存储在超级块中的数据的逻辑地址属于的命名空间的遥测日志。
122.另外地,如图10所示,通过以控制器210将超级块的数据持续时间与一个阈值进行比较并且确定是否要执行介质扫描操作的情况为例来描述本发明构思的示例实施例。然而,本发明构思不限于此,并且控制器210可以将超级块的数据持续时间与两个或更多个阈值进行比较,并且使得基于比较结果选择性地执行两种或更多种类型的介质扫描操作。
123.图12是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图。
124.可以以与参考图10描述的操作s31至操作s33相同的方式执行操作s41至操作s43。
125.在操作s44中,控制器210可以确定超级块的数据持续时间是否大于第一阈值。
126.当超级块的数据持续时间不大于第一阈值(例如,操作s44中的“否”)时,控制器210可以使得在操作s45中跳过对存储器件220的介质扫描操作。
127.当超级块的数据持续时间大于第一阈值(例如,操作s44中的“是”)时,控制器210可以在操作s46中确定超级块的数据持续时间是否大于比第一阈值大的第二阈值。
128.当超级块的数据持续时间不大于第二阈值(例如,操作s46中的“否”)时,控制器
210可以使得在操作s47中执行第一扫描操作。换句话说,可以执行第一介质扫描操作。
129.当超级块的数据持续时间大于第二阈值(例如,操作s46中的“是”)时,控制器210可以使得在操作s48中执行第二扫描操作。换句话说,可以执行第二介质扫描操作。
130.第一扫描操作和第二扫描操作可以是不同类型的介质扫描操作。作为第一示例,第二扫描操作可以是用于比第一扫描操作更精确地扫描存储块的介质扫描操作。例如,可以在第一扫描操作中读取目标超级块的页当中的n(这里,n是自然数)个目标页,并且可以在第二扫描操作中读取目标超级块的页当中的m(这里,m是自然数并且大于n)个目标页。
131.作为第二示例,第二扫描操作可以是用于扫描比第一扫描操作的数目更大数目的目标存储块的介质扫描操作。例如,仅数据持续时间大于第一阈值的超级块可以在第一扫描操作中被选择为目标超级块,并且包括在存储器件220中的所有超级块都可以在第二扫描操作中被选择为目标超级块。
132.另外地,如图12所示,通过以控制器210将超级块的数据持续时间与两个阈值进行比较的情况为例来描述本发明构思的示例实施例,但是本发明构思不限于此。控制器210可以使得基于三个或更多个阈值选择性地执行更详细类型的介质扫描操作。
133.控制器210可以使得基于遥测日志来调整用于触发介质扫描操作的标准,例如阈值。
134.图13a至图13c是用于说明根据本发明构思的示例实施例的调整用于触发介质扫描操作的标准的方法的流程图。
135.图13a是示出了有关在特定时间点包括在遥测日志中的数据持续时间的统计信息的图。图的水平轴指示数据持续时间,而垂直轴指示具有对应数据持续时间的超级块的数目。图13a的图示出了用于触发介质扫描操作的数据持续时间的阈值。
136.图13b是示出了在图13a的特定时间点之后的时间点的有关数据持续时间的统计信息的第一示例的图。
137.如图13b所示,与图13a相比,在统计方面具有更长的数据持续时间的超级块的数目可以增加。当超级块的整个数据持续时间变得更长时,存储在存储器件220中的数据的可靠性可以变得更低。因此,可以对存储器件220频繁地执行介质扫描操作。因此,当超级块的平均数据持续时间变得更长时,控制器210可以使得减小数据持续时间的阈值,从而更频繁地执行介质扫描操作。
138.图13c是示出了在图13a的特定时间点之后的时间点的有关数据持续时间的统计信息的第二示例的图。
139.与图13b相反,如图13c所示,与图13a相比,在统计方面具有更短的数据持续时间的超级块的数目的可以增加。当超级块的平均数据持续时间变得更短时,控制器210可以使得增加数据持续时间的阈值,从而不太频繁地执行介质扫描操作。
140.根据本发明构思的示例实施例,控制器210可以使得通过使用遥测日志来调整用于触发介质扫描操作的数据持续时间的阈值。另外,遥测日志还可以被输出给主机100并用于提高存储装置200的功能性和可靠性。控制器210可以使得通过遵循快速非易失性存储器(nvme)接口协议来将遥测日志输出给主机100。
141.另外地,用于触发介质扫描操作的数据持续时间的阈值可以通常适用于整个存储装置200,并且本发明构思不限于此。当存储装置200针对每个命名空间管理遥测日志时,存
储装置200还可以为每个命名空间确定数据持续时间的阈值。例如,在存储热数据的第一命名空间中,超级块的平均数据持续时间可以变得较短,而在存储冷数据的第二命名空间中,超级块的平均数据持续时间可以变得较长。存储装置200可以如参考图13c描述的那样向上调整第一命名空间的数据持续时间的阈值,并且如参考图13b描述的那样向下调整第二命名空间的数据持续时间的阈值。存储装置200可以控制每个命名空间的数据持续时间的阈值,从而针对每个命名空间调整触发介质扫描操作的时段。因此,可以优化存储装置200的性能和可靠性。
142.另外地,存储装置200可以是向主机100委托由控制器210驱动的闪存转换层(ftl)的一些功能的开放通道固态硬盘(ssd)。当存储装置200是开放通道ssd时,还可以通过控制主机100来调整用于触发介质扫描的阈值。
143.图14是用于说明根据本发明构思的示例实施例的主机-存储系统的操作的流程图。
144.在操作s51中,存储装置200可以向主机100输出遥测日志。
145.在操作s52中,主机100可以处理从存储装置200获得的遥测日志。例如,主机100可以分析遥测日志并且使用经分析的遥测日志来提高存储装置200的功能性和可靠性。
146.在操作s53中,主机100可以基于分析遥测日志的结果来更新用于触发介质扫描操作的阈值。
147.在操作s54中,主机100可以根据经更新后的阈值来控制对存储装置200的介质扫描操作。
148.另外地,当基于数据持续时间来更新遥测日志时,控制器210可以使得对数据持续时间应用权重。
149.图15a和图15b是用于说明根据本发明构思的示例实施例的遥测日志的示例的图。
150.参考图15a,控制器210可以使得基于关于包括超级块中所包括的存储块的非易失性存储器的温度的信息来向超级块的数据持续时间指配权重,并且在遥测日志中反映经加权的数据持续时间。
151.存储装置200的温度可以取决于安装在数据中心等中的存储装置200的位置。当在数据被编程在存储单元中之后过去相同时间时,存储单元的阈值电压可以随着非易失性存储器的温度更高而更严重地劣化。根据本发明构思的示例实施例,主机100可以从具有各种安装环境的存储装置200收集有关数据持续时间的标准化信息。另外,存储装置200可以基于安装环境来调整触发介质扫描操作的频率。
152.参考图15b,控制器210可以使得基于超级块的磨损程度来向超级块的数据持续时间指配权重,并且在遥测日志中反映经加权的数据持续时间。超级块的磨损程度可以是超级块的编程/擦除(p/e)循环、擦除计数以及数据被编程在超级块中的次数中的至少一者。
153.当在数据被编程在存储单元中之后过去相同时间时,存储单元的阈值电压可以随着超级块的磨损程度更高而更严重地劣化。根据本发明构思的示例实施例,存储装置200可以基于超级块的磨损程度来调整触发介质扫描操作的频率。
154.根据本发明构思的示例实施例,控制器210可以进一步考虑另一因素以及超级块的数据持续时间来触发介质扫描操作。参考图16至图18详细地描述基于超级块的数据读取历史来触发介质扫描操作的示例实施例。
155.图16示出了存储单元的已劣化的阈值电压分布。
156.当在存储单元被编程之后过去一定时间时,引入到存储单元中的电荷可能泄漏并且存储单元可以具有更低的阈值电压。另一方面,由于当邻近存储单元被读取时电荷被引入到存储单元的读取扰动,存储单元的阈值电压可以变得更高。在图16中,由实线示出的阈值电压分布可以与参考图6描述的理想的阈值电压分布相同,而由虚线示出的阈值电压分布可以是已劣化的阈值电压分布。与理想的阈值电压分布相比,已劣化的阈值电压分布可以横向地变宽。
157.控制器210可以通过进一步考虑超级块的读取历史来触发介质扫描操作。
158.图17是用于说明根据本发明构思的示例实施例的存储装置的操作的流程图。
159.在操作s61中,控制器210可以从主机100接收读取请求。
160.在操作s62中,控制器210可以响应于来自主机100的读取请求控制存储器件220读取超级块。
161.在操作s63中,控制器210可以使得在超级块的数据持续时间范围内更新超级块的有关读取计数的信息和有关累积读取时间的信息。随着读取计数和累积读取时间增加,存储单元可能由于读取扰动而显著地劣化。
162.图18是用于说明超级块的读取计数和累积读取时间的图。
163.图18示出了第一超级块sb1的读取时间点r1、r2、r3、r4、r5和r6以及在第一超级块sb1的数据持续时间范围内由于读取操作而导致的字线放电时间。
164.为了读取包括在存储块中的存储单元,可以对连接到存储单元的被选字线施加读取电压,并且可以对未选字线施加高于读取电压的通过电压。可以对未选字线当中的与被选字线相邻的字线执行由于通过电压引起的通道升压,并且可以将热载流子注入到连接到未选字线的存储单元中。与相邻字线连接的存储单元的阈值电压可以增加以引起阈值电压分布劣化的读取扰动。
165.在读取电压被施加到被选字线并且通过电压被施加到未选字线之后,可能发生读取扰动,直到施加到未选字线的导通电压被放电为止。如图18所示,在第一读取操作r1之后的放电时间期间可能发生读取扰动。
166.图18中的阴影线时间指示读取扰动可能由于通过第一读取操作r1至第六读取操作r6放电的字线而发生的时间。可能发生读取扰动的时间可以被称为累积读取时间。
167.随着读取计数增加,阈值电压分布可能由于读取扰动而更严重地劣化。另外,当读取计数相同时,累积读取时间可以随着读取操作之间的时间间隔变得更大而变得更长,并且阈值电压分布可能因此严重地劣化。因此,控制器210可以通过不仅考虑数据持续时间而且还考虑读取计数和累积读取时间来控制介质扫描操作。
168.再次参考图17,控制器210可以在操作s64中确定超级块的读取计数或累积读取时间是否大于阈值。
169.当读取计数和累积读取时间均不大于阈值(例如,操作s64中的“否”)时,控制器210可以使得跳过介质扫描操作(操作s65)。
170.另一方面,当读取计数或累积读取时间大于阈值(例如,操作s64中的“是”)时,控制器210可以使得执行介质扫描操作(操作s66)。
171.根据本发明构思的示例实施例,控制器210可以考虑存储单元的阈值电压分布劣
化的可能性来优化诸如介质扫描操作的防御逻辑被驱动的频率。例如,控制器210可以在存储单元的阈值电压分布非常可能劣化时触发介质扫描操作,而在阈值电压分布几乎不可能劣化时使得跳过介质扫描操作。根据本发明构思的示例实施例,可以增加存储装置200的数据输入/输出性能,并且在提高从存储器件220读取的数据的可靠性的同时降低存储装置200的功耗。以下,参考图19和图20描述应用了根据本发明构思的示例实施例的存储装置的系统的示例。
172.图19是示出了根据本发明构思的示例实施例的主机-存储系统的图。
173.主机-存储系统40可以包括主机400和存储装置500。另外,存储装置500可以包括存储控制器510和存储器件,例如,非易失性存储器(nvm)520。
174.主机400可以是电子装置并且可以包括至少一个操作系统。主机400可以对应于参考图1描述的主机100。
175.存储装置500可以包括基于来自主机400的请求来存储数据的存储介质。存储装置500可以对应于参考图1描述的存储装置200。
176.存储器件520可以甚至在电力未供应给其时也维持存储的数据。存储器件520可以通过写入操作来存储从主机400提供的数据,并且可以通过读取操作来输出存储在存储器件520中的数据。
177.存储控制器510可以响应于来自主机400的请求控制存储器件520。例如,存储控制器510可以给主机400提供从存储器件520读取的数据,并且将从主机400提供的数据存储在存储器件520中。对于此操作,存储控制器510可以支持存储器件520的诸如读取操作、编程操作和擦除操作的操作。
178.存储控制器510可以包括主机接口511、存储器接口512和中央处理器(cpu)513。另外,存储控制器510还可以包括闪存转换层(ftl)514、分组管理器515、缓冲存储器516、纠错码(ecc)引擎517和高级加密标准(aes)引擎518。存储控制器510还可以包括被加载有闪存转换层(ftl)514的工作存储器,并且对存储器件520的数据写入和读取操作可以由执行闪存转换层的cpu 513控制。
179.主机接口511可以向主机400发送分组以及从主机400接收分组。从主机400向主机接口511发送的分组可以包括要写入到存储器件520的命令或数据,并且从主机接口511向主机400发送的分组可以包括对命令的响应或从存储器件520读取的数据。
180.存储器接口512可以向存储器件520发送要写入到存储器件520的数据或者接收从存储器件520读取的数据。存储器接口512可以被实现为符合诸如toggle或开放nand闪存接口(onfi)的标准约定。
181.闪存转换层514可以执行诸如地址映射、磨损均衡和垃圾收集等的若干功能。地址映射操作可以是将从主机400接收到的逻辑地址改变成用于在存储器件520中实际地存储数据的物理地址的操作。磨损均衡可以是用于通过确保存储器件520中的块被均匀地使用来防止特定块的过度劣化的技术,并且可以例如通过使用用于使物理块的擦除计数平衡的固件技术来实现。垃圾收集可以是用于通过将块的有效数据复制到新块、然后擦除现有块来保证存储器件520中可用的容量的技术。
182.根据本发明构思的示例实施例,闪存转换层514可以确定在数据被编程在存储器件520的超级块中之后直到数据失效为止的数据持续时间,并且在数据持续时间大于阈值
时对存储器件520执行介质扫描操作。闪存转换层514可以生成遥测日志,并且该遥测日志可以包括有关超级块的数据持续时间的统计信息。闪存转换层514可以基于有关数据持续时间的统计信息来调整触发介质扫描操作的阈值。
183.分组管理器515可以根据与主机400协商的接口的协议来生成分组或者从自主机400接收到的分组中解析各种信息。另外,缓冲存储器516可以暂时存储要写入到存储器件520的数据或要从存储器件520读取的数据。缓冲存储器516可以位于存储控制器510中,并且还可以设置在存储控制器510外部。
184.ecc引擎517可以对于从存储器件520读取的读取数据执行错误检测和纠正功能。例如,ecc引擎517可以为将被写入在存储器件520中的写入数据生成奇偶校验位,并且可以将所生成的奇偶校验位与写入数据一起存储在存储器件520中。当从存储器件520读取数据时,ecc引擎517可以通过使用与读取数据一起从存储器件520读取的奇偶校验位来纠正读取数据中的错误,并且输出经纠错的读取数据。
185.aes引擎518可以通过使用对称密钥算法来对输入到存储控制器510的数据执行加密操作和解密操作中的至少一者。
186.图20是示出了使用根据本发明构思的示例实施例的存储装置的系统的图。
187.图20是示出了使用根据本发明构思的示例实施例的存储装置的系统1000的图。图20所示的系统1000可以是诸如移动电话、智能电话、平板个人计算机(pc)、可穿戴装置、卫生保健装置或物联网(iot)装置等的移动系统。然而,图20所示的系统1000不一定限于移动系统,并且可以是个人计算机、膝上型计算机、服务器、媒体播放器或诸如导航装置的汽车装置。
188.参考图20,系统1000可以包括主处理器1100、存储器1200a和1200b以及存储装置1300a和1300b,并且还可以包括图像捕获装置1410、用户输入装置1420、传感器1430、通信装置1440、显示器1450、扬声器1460、供电装置1470和连接接口1480中的至少一者。
189.主处理器1100可以控制系统1000的整体操作,例如,包括在系统1000中的其他部件的操作。可以将主处理器1100实现为通用处理器、专用处理器、应用处理器等。
190.主处理器1100可以包括至少一个cpu核1110,并且还可以包括用于控制存储器1200a和1200b和/或存储装置1300a和1300b的控制器1120。根据示例实施例,主处理器1100还可以包括加速器1130,该加速器1130是用于诸如人工智能(ai)数据操作等的高速数据操作的专用电路。加速器1130可以包括图形处理单元(gpu)、神经处理单元(npu)和/或数据处理单元(dpu),并且可以被实现为相对于主处理器1100的其他部件在物理上独立的单独芯片。
191.存储器1200a和1200b可以被用作系统1000的主存储器件,包括诸如静态随机存取存储器(sram)和/或动态随机存取存储器(dram)等的易失性存储器,以及诸如闪存、相变随机存取存储器(pram)和/或电阻式随机存取存储器(rram)等的非易失性存储器。可以将存储器1200a和1200b实现在与主处理器1100相同的封装件中。
192.存储装置1300a和1300b可以充当不管是否被供应电力都存储数据的非易失性存储装置,并且与存储器1200a和1200b相比可以具有相对大的存储容量。存储装置1300a和1300b可以包括存储控制器1310a和1310b以及在存储控制器1310a和1310b的控制下存储数据的非易失性存储器(nvm)1320a和1320b。非易失性存储器1320a或1320b可以包括具有二
维(2d)结构或三维(3d)/垂直nand(v-nand)结构的闪存,并且可以包括诸如相变随机存取存储器(pram)和/或电阻式随机存取存储器(rram)等的另一类型的非易失性存储器。
193.存储装置1300a和1300b可以通过与主处理器1100物理上分开被包括在系统1000中,或者可以被实现与主处理器1100相同的封装件中。另外,存储装置1300a或1300b可以具有与固态硬盘(ssd)或存储卡相同的形状,因此,可以通过诸如下述连接接口1480的接口与系统1000的其他部件可拆卸地耦合。存储装置1300a或1300b可以是应用了诸如通用闪存(ufs)、嵌入式多媒体卡(emmc)或快速非易失性存储器(nvme)等的标准协议的装置,并且可能不一定限于此。
194.存储装置1300a或1300b可以驱动用于维持存储在其中的数据的可靠性的防御逻辑。存储装置1300a或1300b可以基于作为在数据被编程在其中之后直到数据失效为止的时间间隔的数据持续时间来确定是否驱动防御逻辑,并且只有在存在存储在其中的数据的可靠性劣化的高风险时才驱动防御逻辑。因此,可以优化存储装置1300a或1300b的可靠性和性能。
195.存储装置1300a或1300b可以在遥测日志中管理有关数据持续时间的统计信息并且将遥测日志提供给主处理器1100。提供给主处理器1100的遥测日志可以用于提高存储装置1300a或1300b的可用性和可靠性。通过使用统计信息来调整防御逻辑的触发条件,存储装置1300a或1300b可以进一步提高其可靠性和性能。
196.图像捕获装置1410可以捕获静止图像或运动图像,并且可以是相机、摄像机和/或网络摄像头。
197.用户输入装置1420可以接收从系统1000的用户输入的各种类型的数据,并且可以是触摸板、键区、键盘、鼠标和/或麦克风。
198.传感器1430可以检测可以从电子装置1000外部获得的各种类型的物理量,并且将所检测到的物理量转换成电信号。传感器1430可以是温度传感器、压力传感器、照度传感器、位置传感器、加速度传感器、生物传感器、陀螺仪传感器等。
199.通信装置1440可以根据各种通信协议来与系统1000外部的其他装置发送及接收信号。通信装置1440可以包括天线、收发器和/或调制解调器。
200.显示器1450和扬声器1460可以分别充当用于向系统1000的用户输出视觉信息和听觉信息的输出装置。
201.供电装置1470可以适当地转换从嵌入在系统1000中的电池和/或外部电源供应的电力,并且将经转换后的电力供应给系统1000的每个部件。
202.连接接口1480可以将系统1000与连接到系统1000的外部装置连接并且可以能够与系统1000交换数据。连接接口1480可以使用诸如以下各种接口方法来实现:高级技术附件(ata)、串行ata(sata)、外部sata(e-sata)、小型计算机小型接口(scsi)、串行附连scsi(sas)、外围部件互连(pci)、快速pci(pci-e)、快速非易失性存储器(nvme)、ieee 1394、通用串行总线(usb)、安全数字卡(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、通用闪存(ufs)、嵌入式通用闪存(eufs)、紧凑闪存(cf)卡接口等。
203.如以上所阐述的,根据本发明构思的示例实施例的存储装置可以基于存储在非易失性存储器中的数据的持续时间来减少执行不必要的介质扫描操作的次数。
204.根据本发明构思的示例实施例的存储装置可以通过使用非易失性存储器的遥测
日志来调整用于触发介质扫描操作的标准而具有提高的输入/输出性能和可靠性。
205.虽然已在上面示出并描述了本发明构思的示例实施例,但是对本领域的技术人员而言将清楚的是,在不脱离如由所附权利要求书所阐述的本发明构思的范围的情况下,可能对其做出修改和变化。

技术特征:
1.一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个超级块,其中,每个超级块包括多个非易失性存储器的组中所包括的存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得所述多个超级块当中的第一超级块被擦除以对从主机接收到的数据进行编程,进行控制使得所述数据被编程在所述第一超级块中,进行控制使得所述第一超级块被选择为用于垃圾收集操作的受害超级块,并且进行控制使得在数据持续时间大于阈值时所述存储器件被执行介质扫描操作,其中,所述数据持续时间是第一时间点与第二时间点之间的间隔,在所述第一时间点所述第一超级块被擦除,在所述第二时间点所述第一超级块被选择为所述受害超级块。2.根据权利要求1所述的存储装置,其中,所述控制器通过进行控制使得所述多个超级块当中的所有目标超级块被执行以下操作来进行控制使得所述介质扫描操作被执行:读取所述目标超级块的目标页的操作、检测并纠正从所述目标页读取的数据中的错误的操作、以及在所检测到的错误的数目大于或等于阈值时将经纠错的数据移动到另一超级块的操作。3.根据权利要求2所述的存储装置,其中,所述阈值包括第一阈值和比所述第一阈值大的第二阈值,所述介质扫描操作包括第一扫描操作和第二扫描操作,并且所述控制器进行控制使得在所述第一超级块的所述数据持续时间大于所述第一阈值并且小于或等于所述第二阈值时所述第一扫描操作被执行,并且进行控制使得在所述第一超级块的所述数据持续时间大于所述第二阈值时所述第二扫描操作被执行。4.根据权利要求3所述的存储装置,其中,所述第一扫描操作包括从所述目标超级块读取n个目标页的操作,其中,n是自然数,并且所述第二扫描操作包括从所述目标超级块读取m个目标页的操作,其中,m是自然数并且大于n。5.根据权利要求3所述的存储装置,其中,所述第一扫描操作包括从所述多个超级块中选择一些超级块作为所述目标超级块的操作,并且所述第二扫描操作包括选择所述多个超级块中的所有超级块作为所述目标超级块的操作。6.根据权利要求1所述的存储装置,其中,所述控制器进行控制使得在所述第一超级块的所述数据持续时间小于所述阈值时所述介质扫描操作被跳过。7.根据权利要求1所述的存储装置,其中,所述控制器通过在被擦除页在从所述第一时间点起过去预定时间之后仍然在所述第一超级块中时进行控制使得虚设数据被编程到所述被擦除页中,来进行控制使得对包括在所述第一超级块中的所有页进行编程的操作被完成。8.根据权利要求1所述的存储装置,其中,所述控制器进行控制使得所述存储器件还在所述存储装置被通电时被执行所述介质扫描操作。9.根据权利要求1所述的存储装置,其中,在所述第一超级块的所述第一时间点和所述第二时间点被包括在连续通电时段中时,所述控制器进行控制使得关于所述多个超级块的
所述数据持续时间的统计信息基于所述第一超级块的所述数据持续时间被更新。10.根据权利要求1所述的存储装置,其中,所述控制器进行控制使得在所述第一超级块的所述数据持续时间内当所述第一超级块被读取时所述第一超级块的读取计数和累积读取时间被更新,并且所述控制器进行控制使得所述存储器件还在所述读取计数或所述累积读取时间大于或等于阈值时被执行所述介质扫描操作。11.根据权利要求10所述的存储装置,其中,所述累积读取时间包括在所述第一超级块的所述数据持续时间内连接到所述第一超级块的未选字线由于读取所述第一超级块的操作而被放电的总时间。12.一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个非易失性存储器和多个超级块,其中,每个超级块包括所述多个非易失性存储器的组中所包括的存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得从所述多个超级块中选择的超级块被擦除以对从主机接收到的数据进行编程,进行控制使得所述数据被编程在被擦除的所述超级块中,并且进行控制使得所述数据被编程在其中的所述超级块被选择为用于垃圾收集操作的受害超级块,所述控制器进行控制使得遥测日志基于关于所述多个超级块中的第一超级块的数据持续时间的信息被更新,所述遥测日志包括关于所述多个超级块的数据持续时间的统计信息,其中,所述第一超级块的所述数据持续时间是处于一个通电时段中的第一时间点与第二时间点之间的间隔,在所述第一时间点所述第一超级块被擦除,在所述第二时间点所述第一超级块被确定为所述受害超级块,并且所述控制器进行控制使得用于触发对所述存储器件的介质扫描操作的所述多个超级块的所述数据持续时间的阈值基于所述遥测日志被调整。13.根据权利要求12所述的存储装置,其中,在所述遥测日志被更新时,所述控制器进行控制使得关于所述多个超级块的所述数据持续时间的所述信息基于与所述第一超级块相关联的所述非易失性存储器的温度信息被指配权重。14.根据权利要求12所述的存储装置,其中,在所述遥测日志被更新时,所述控制器进行控制使得关于所述多个超级块的所述数据持续时间的所述信息基于所述第一超级块的磨损程度被指配权重。15.根据权利要求12所述的存储装置,其中,所述控制器进行控制使得所述遥测日志通过使用nvme接口协议被提供给所述主机,所述nvme接口协议即快速非易失性存储器接口协议。16.根据权利要求15所述的存储装置,其中,所述存储装置是开放通道ssd,所述ssd即固态硬盘,并且所述控制器进行控制使得所述阈值基于接收了所述遥测日志的所述主机的控制被调整。17.根据权利要求12所述的存储装置,其中,所述控制器基于关于所述多个超级块的所述数据持续时间的所述统计信息来确定平均数据持续时间,在所述平均数据持续时间增加
时进行控制使得所述阈值被向下调整,以及在某个超级块的所述数据持续时间大于所述阈值时进行控制使得所述介质扫描操作被执行。18.根据权利要求12所述的存储装置,其中,所述控制器基于关于所述多个超级块的所述数据持续时间的所述统计信息来确定平均数据持续时间,在所述平均数据持续时间减少时进行控制使得所述阈值被向上调整,以及在某个超级块的所述数据持续时间大于所述阈值时进行控制使得所述介质扫描操作被执行。19.根据权利要求12所述的存储装置,其中,所述控制器进行控制使得所述数据被编程在其中的所述超级块基于所述数据被编程在其中的所述超级块的失效数据的比率,被选择为所述受害超级块。20.一种存储装置,所述存储装置包括:存储器件,所述存储器件包括多个存储块;以及控制器,所述控制器用于控制所述存储器件,其中,在所述多个存储块当中的某个存储块被擦除并且数据持续时间大于阈值时,所述控制器进行控制使得所述存储器件被执行介质扫描操作,所述数据持续时间对应于在数据被编程到所述存储块中之后直到所述数据失效为止的时间,其中,所述控制器进行控制使得关于所述多个存储块的所述数据持续时间的统计信息被生成,以及其中,所述控制器进行控制使得用于触发所述介质扫描操作的标准基于所述统计信息被调整。

技术总结
一种存储装置包括:存储器件,所述存储器件包括多个超级块,其中,每个超级块包括多个非易失性存储器的组中所包括的存储块;以及控制器,所述控制器用于控制所述存储器件,其中,所述控制器进行控制使得所述多个超级块当中的第一超级块被擦除以对从主机接收到的数据进行编程,进行控制以使得所述数据被编程在所述第一超级块中,进行控制使得所述第一超级块被选择为用于垃圾收集操作的受害超级块,并且进行控制使得在数据持续时间大于阈值时所述存储器件被执行介质扫描操作,其中,所述数据持续时间是第一时间点与第二时间点之间的间隔,在所述第一时间点所述第一超级块被擦除,在所述第二时间点所述第一超级块被选择为所述受害超级块。述受害超级块。述受害超级块。


技术研发人员:李庚德 沈荣燮 罗钟声
受保护的技术使用者:三星电子株式会社
技术研发日:2022.12.16
技术公布日:2023/7/11
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐