固态存储设备及包括该固态存储设备的电子系统的制作方法

文档序号:19942647发布日期:2020-02-14 23:22阅读:206来源:国知局
固态存储设备及包括该固态存储设备的电子系统的制作方法

相关申请的交叉引用

本申请要求于2018年8月3日向韩国知识产权局提交的韩国专利申请no.10-2018-0090894的优先权,通过引用将该申请的全部内容并入本文。

本公开涉及电子设备,更具体地,涉及用于存储数据的存储设备的配置和操作。



背景技术:

如今,正在使用各种类型的电子设备。电子设备根据电子设备中包括的电子电路的操作来执行其自身的功能。电子设备可以在单独操作时或在与其他电子设备通信时向用户提供服务。

存储设备是电子设备的一个示例。存储设备被配置为将数据存储在存储设备中包括的存储元件中以及输出所存储的数据。因此,存储设备向用户提供存储服务。

随着电子设备的发展和电子通信的相应发展,各种类型的数据已经多样化并且要存储的数据量也急剧增加。因此,增加了对可靠地存储大量数据以及以高速率性能处理大量数据的存储设备的需求。例如,当多个位的数据被存储在小电路区域上的半导体存储元件中时,这有利于存储大量数据。然而,随着半导体存储元件的电荷泄漏增加以及用于数据确定的电压裕度减小,可能降低数据可靠性。

例如,存储设备可以提供保护操作以防止数据可靠性降低。然而,一些存储设备被配置为在其他电子设备的控制下被动地操作。存储设备的被动操作可能不足以保证数据可靠性。



技术实现要素:

存储设备可以在不需要主机的指令的情况下启动并对包含在其中的非易失性存储器执行维护操作。

本文公开了一种存储设备和包括该存储设备的电子系统。根据一些示例,所述存储设备包括控制器和多个非易失性存储器件。所述多个非易失性存储器件的维护条件由所述存储设备从内部监视。在确定满足维护条件时,所述存储设备通知所述主机。所述控制器可以在几乎不受所述主机干扰的情况下对所述多个非易失性存储器件执行维护操作,并且确保数据由所述多个非易失性存储器件可靠地保持。

根据一些示例,所述固态存储设备包括:接口,所述接口提供与所述主机的通信;多个非易失性半导体存储器件;以及控制器,所述控制器被配置为与所述多个非易失性存储器件通信以访问所述多个非易失性存储器件,并且被配置为与所述接口通信以从所述主机接收命令并与所述主机进行数据通信。

所述固态存储设备可以在正常模式下操作,在所述正常模式下,所述多个非易失性存储器件被开启并接收电力,并且所述控制器以正常功耗水平操作,所述固态存储设备可以在省电模式下操作,在所述省电模式下,所述多个非易失性存储器件被关闭,并且所述控制器以低于所述正常功耗水平的降低的功耗水平操作。

所述控制器包括计时器,所述计时器被配置为在所述固态存储设备进入所述省电模式时启动,并且被配置为确定参考时间是否流逝。所述控制器可以被配置为响应于所述计时器确定所述参考时间流逝,使得所述存储设备向所述主机发送通知,以使所述主机启动所述固态存储设备的所述省电模式的退出。

在一些示例中,所述控制器被配置为响应于所述计时器,启动对所述多个非易失性存储器件中的一个或更多个非易失性存储器件的读取回收操作。

所述固态存储设备可以连接到电源管理器。在所述固态存储设备的正常模式下,所述电源管理器可以向所述固态存储设备提供主电力,并且所述控制器访问所述多个非易失性存储器件,对从所述主机接收的命令做出响应并且在所述主机与所述多个非易失性存储器件之间传输数据。在所述固态存储设备的省电模式下,所述电源管理器向所述固态存储设备提供辅助电力,以仅操作所述固态存储设备的一部分,并且所述多个半导体存储器件不接收任何电力。

在所述固态存储设备的省电模式下,所述控制器被配置为向所述主机发送通知以使所述主机启动所述固态存储设备的所述省电模式的退出,所述通知可以是退出省电模式命令或者可以使所述电源管理器从向所述存储设备供应辅助电力切换到向所述存储设备供应主电力。

在一些示例中,所述控制器包括状态管理器,所述状态管理器被配置为响应于确定所述非易失性存储器件中的一个或更多个非易失性存储器件需要维护,而向所述主机发送维护通知,以提供所述主机不可以访问所述固态存储设备的时间段,在该时间段期间所述控制器可以对所述一个或更多个非易失性存储器件执行一个或更多个维护操作。所述状态管理器可以被配置为监视所述多个非易失性存储器件的存储区域的属性,诸如以下各项中的一项或更多项:每个存储区域的损耗程度、无效存储区域的数量、存储区域的可用容量、每个存储区域的寿命以及每个存储区域的数据存储的可靠性。所述状态管理器可以响应于所监视的属性与阈值的比较来将所述维护通知发送到所述主机。

根据示例实施例,可以提高存储设备的可靠性、性能和管理效率。

附图说明

通过以下参考附图的描述,本公开的上述和其他目的和特征将变得显而易见。

图1是示出了根据一些示例实施例的包括存储设备的电子系统的示例配置的框图。

图2是示出了与图1的存储设备相关联的示例配置的框图。

图3是描述图2的存储设备的示例操作的流程图。

图4至图6是用于描述根据一些示例实施例的图2的存储设备的示例操作的概念图。

图7是描述图4至图6的示例操作的流程图。

图8和图9是用于描述根据一些示例实施例的图2的存储设备的示例操作的概念图。

图10是描述图8和图9的示例操作的流程图。

图11至图14是用于描述根据一些示例实施例的图2的存储设备的示例操作的概念图。

图15是描述图11至图14的示例操作的流程图。

图16和图17是示出了与图2的存储设备相关联的示例配置的框图。

图18是示出了根据一些示例实施例的包括存储设备的电子系统的示例配置的框图。

图19和图20是用于描述图18的存储设备的示例操作的概念图。

具体实施方式

下面,将参考附图详细并且清楚地描述一些示例实施例,使得本领域技术人员能够容易地实现本公开。

图1是示出了根据一些示例实施例的包括存储设备1300的电子系统1000的示例配置的框图。

电子系统1000可以包括主处理器1101、工作存储器1200、存储设备1300、通信块1400、用户接口1500、电源管理器1600和总线1900。例如,电子系统1000可以是台式计算机、膝上型计算机、平板计算机、智能电话、可穿戴设备、视频游戏控制台、服务器、电动车辆、家用电器和/或其他类型的电子设备。

主处理器1101可以控制电子系统1000的整体操作,并且可以执行各种算术/逻辑运算。例如,主处理器1101可以由通用处理器、专用处理器和/或应用处理器实现。主处理器101可以包括一个或更多个处理器核。

工作存储器1200可以存储在电子系统1000的操作中使用的数据。例如,工作存储器1200可以临时存储由主处理器1101处理的或要处理的数据。例如,工作存储器1200可以是诸如静态随机存取存储器(sram)、动态ram(dram)或同步dram(sdram)的易失性存储器(当不向其供电时其不保留数据),和/或诸如相变ram(pram)、磁阻ram(mram)、电阻ram(reram)或铁电ram(fram)的非易失性存储器(当不向其供电时其保留数据)。

无论是否向存储设备1300供电,存储设备1300都可以存储数据。例如,存储设备1300可以是诸如nand或nor闪速存储器、pram、mram、reram或fram的非易失性存储器。例如,存储设备1300可以是诸如固态硬盘(ssd)、存储卡或嵌入式存储器(均可以由形成为半导体芯片内的集成电路的非易失性存储单元形成和/或包括形成为半导体芯片内的集成电路的非易失性存储单元)的固态存储设备。

通信块1400可以支持各种无线/有线通信协议中的至少一种以与相对于电子系统1000的外部设备/系统进行通信。用户接口1500可以包括各种输入/输出接口以仲裁用户与电子系统1000之间的通信。

电源管理器1600可以向电子系统1000的组件供电。电源管理器1600可以从外部电源和/或电池接收电力。电源管理器1600可以包括将所接收的外部电力(例如,外部电压)适当地转换为用于电子系统1000的组件的内部功率(例如,内部电压)的电压转换器。

总线1900可以提供电子系统1000的组件之间的通信路径。电子系统1000的组件可以遵循总线1900的总线格式彼此交换数据。例如,总线格式可以符合诸如通用串行总线(usb)、小型计算机系统接口(scsi)、高速外围组件互连(pcie)、移动pcie(m-pcie)、串行高级技术附件(sata)、串行连接scsi(sas)、高速非易失性存储器(nvme)、通用闪存(ufs)、双倍数据速率(ddr)、低功率ddr(lpddr)等的各种接口协议中的一种或更多种。

可以根据本公开的任意示例实施例来实现存储设备1300。存储设备1300可以在无需主机(例如,主处理器1101)的指令的情况下独立地启动维护操作。将参考图2至图20描述与存储设备1300相关联的示例配置和示例操作。

将在以下描述中提供存储设备1300的示例性细节,但是本发明不限于此。示例实施例可以应用在包括半导体存储元件的任何类型的设备中。提供以下描述是为了便于更好的理解,而不是旨在限制本公开。

图2是示出了与图1的存储设备1300相关联的示例配置的框图。

如参考图1所述,主处理器1101可以通过总线1900与存储设备1300通信。在本公开中,能够访问存储设备1300的外部设备可以被称为“主机”(例如,主机1100)。图1的主处理器1101是主机1100的示例,但是本发明不限于此。

主机1100可以与存储设备1300交换数据dat。存储设备1300可以响应于从主机1100接收的命令cmd向主机1100提供存储服务。诸如数据dat、命令cmd和地址addr的信号可以经由存储设备1300的信号接口1351和在主机1100与存储设备1351之间延伸的一条或更多条信号线(例如,外部总线)在主机1100与存储设备1300之间交换。信号接口1351可以与控制器1330通信(例如,经由存储设备1300的内部总线)以交换这些信号。

例如,主机1100可以向存储设备1300提供写入请求(即,写入命令cmd)和作为写入数据的数据dat。存储设备1300可以响应于写入命令存储所请求的写入数据。例如,主机1100可以向存储设备1300提供读取请求(读取命令cmd)。存储设备1300可以响应于读取命令将所请求的读取数据输出到主机1100。例如,主机可以经由信号接口1351向存储设备1300提供进入省电模式命令,以使存储设备1300进入本文描述的省电模式。在一些示例中,进入省电模式命令可以是电源关闭命令。在一些示例中,主机1100可以经由信号接口1351向存储设备1300提供退出省电模式命令。

存储设备1300可以包括一个或更多个存储器件1310(例如,存储器件1311、1312、……、1319)和控制器1330。存储器件1311、1312、……、1319可以是诸如单独的半导体存储器芯片或单独的半导体封装件(每个半导体封装件包括多个半导体存储器芯片)的单独的设备。应当理解,可以不同地改变或修改存储设备1300中包括的存储器件的数目。存储器件1310和控制器1330可以安装到基板(例如,诸如系统印刷电路板的印刷电路板或封装基板)上,并通过(例如,形成在基板上的)总线连接,以在存储器件1310与控制器1330之间提供信号通信。控制器1330可以经由基板上的总线连接到信号接口1351以与主机1100通信。基板还可以包括布线(并且在一些示例中,包括开关),以将(在电源接口1352处提供的)主电压mnp连接到存储器件1310和控制器1330,并且将(在电源接口1352处提供的)辅助电压连接到形成如本文所描述的存储设备1300的部分器件/电路。存储器件1310、控制器1330、基板及它们的互连可以形成在并密封在存储设备1300的保护壳体内。

存储器件1311、1312、……、1319均可以存储或输出主机1100请求的数据。为此,存储器件1311、1312、……、1319均可以包括用于存储数据的存储区域。例如,存储器件1311、1312、……、1319均可以是或包括可以根据v-nand方案(诸如z-nand方案)实现的nand型闪速存储器半导体芯片。例如,存储器件1311、1312、……、1319均可以是或包括slc(单层单元)nand或mlc(多层单元)nand。slcnand包括每个存储单元仅存储单个数据位的单层单元(slc)存储单元。mlcnand包括每个存储单元存储两位以上的数据的存储单元,例如三层单元(tlc)nand或四层单元(qlc)nand。在一些示例中,mlcnand还可以包括每个存储单元仅存储单个数据位的slc存储单元。

控制器1330可以控制存储设备1300的整体操作。例如,控制器1330可以控制存储器件1311、1312、……、1319,使得数据存储在存储器件1311、1312、……、1319中,或者从存储器件1311、1312、……、1319输出。例如,控制器1330可以对(例如,经由控制器与存储器件1311、1312、……、1319之间的布线,例如总线)与存储器件1311、1312、……、1319交换的数据执行各种数据处理(例如,压缩/解压缩、加密/解密、编码/解码等)。在一些示例中,控制器1330可以由单个半导体芯片形成。在一些示例中,控制器1330可以由多个互连的器件(例如,互连的半导体芯片)形成。

存储器件1311、1312、……、1319和控制器1330可以使用经由电源接口1352从电源管理器1600接收的电力进行操作。例如,控制器1330可以操作以便提供不同的电力模式。不同的电力模式可以提供关于电源的不同的工作状态。经由电源接口1352提供给存储设备1300的主电压mnp和辅助电压auxp可以被传输到如本文其他地方所描述的控制器1330和存储器件1310。信号接口1351和电源接口1352可以包括存储设备1300的端子(例如,引脚、焊料凸块、焊盘等)以提供与其他外部设备的连接。信号接口1351和电源接口1352构成存储设备1300的接口(即,使用的“接口”一般可以指信号接口1351、电源接口1352中的任一个或两者,或存储设备1300的其他端子或其一部分——无论是单独设置的还是单独形成的等)。

例如,第一模式可以是存储器件1311、1312、……、1319和控制器1330在接收全电力(fullpower)时执行全部操作的正常模式。例如,第二模式可以是存储器件1311、1312、……、1319和控制器1330完全或部分地停止某些操作的省电模式。

例如,当需要存储设备1300的存储服务时,存储器件1311、1312、……、1319和控制器1330可以在正常模式下在接收电力时进行操作(例如,控制器1330可以控制存储器件1311、1312、……、1319,使得存储器件1311、1312、……、1319存储或输出数据)。

例如,当存储设备1300在长持续时间期间处于空闲状态时(例如,当未接收或未输出数据dat时),减小存储设备1300的功耗可能是有利的。在这种情况下,控制器1330可以控制存储设备1300使得对存储器件1311、1312、……、1319的供电中断,并且控制器1330的组件完全或部分地停止操作。还可以中断向控制器1330中的停止操作的组件供电。

因此,存储器件1311、1312、……、1319和控制器1330在正常模式下消耗的电力会大于存储器件1311、1312、……、1319和控制器1330在省电模式下消耗的电力。

可以在主机1100和/或控制器1330的控制下提供正常模式与省电模式之间的切换。当主机1100和/或控制器1330确定数据dat已经长时间未被传输时(例如,在预定长度的时间段期间,存储设备1300与诸如主机1100的任何外部设备之间未传输数据dat),存储设备1300的操作状态可以从正常模式切换到省电模式。当主机1100和/或控制器1330确定要启动数据dat的传输时,存储设备1300的操作状态可以从省电模式切换到正常模式。

例如,为了将存储设备1300的操作状态从正常模式切换到省电模式,主机1100可以经由信号接口1351向存储设备1300提供进入省电模式命令cmd,以使得存储设备1300进入本文所述的省电模式。存储设备1300的控制器1330可以从主机1100接收进入省电模式命令并且启动存储设备1300的省电模式(省电模式的启动可以包括将存储设备1300的易失性高速缓冲存储器(未示出)中的数据存储在非易失性存储器件1310中,和/或将存储在控制器1330的易失性存储器中的数据复制到非易失性存储器件1310,诸如本文所述的状态管理器1333和内部存储器1335的数据)。该数据可以包括描述存储器件1310中的部分存储器件的属性的元数据,并且可以包括以下各项中的一项或更多项:逻辑到物理地址映射表、不良块(block)地址(标识缺陷块)、缺陷字线地址、缺陷位线地址、损耗均衡信息(例如,存储器件1310的每个块的擦除计数)、将块标识为空闲(可写入)或脏(dirty)(包含无效数据并且准备被擦除)的信息、将数据页面标识为有效或无效的信息等。控制器1330可以关闭控制器1330的一部分,例如通过从处理器1331向控制器的其他元件提供内部指令,和/或通过切断向控制器的其他元件供电(即,通过操作诸如晶体管的开关)。控制器1330的同步电路(未示出),例如,控制器1330的(一个或多个)延迟锁定环(dll)电路和/或(一个或多个)锁相环(pll)电路,在存储设备1300的省电模式被启动时,可以作为控制器1330的一部分被关闭。这种同步电路可以向信号接口1351提供定时(例如,时钟),以提供控制器1330的输入缓冲器锁存输入信号的定时和/或控制器1330的输出缓冲器输出信号的定时。

存储设备1300的操作状态可以通过主机1100向存储设备1300提供通信而从省电模式切换到正常模式。例如,主机1100可以通过以下操作使存储设备1300进入正常模式:启动主电压mnp的提供,由此可以使主电压mnp被提供给控制器1330和存储器件1310,开启存储设备1300的先前已经关闭的器件(例如,开启控制器1330的先前已经关闭的部分,开启存储器件1310以及开启存储设备1300的高速缓冲存储器(未示出))。在一些示例中,主机1100可以通过以下操作使存储设备1300进入正常模式:经由信号接口1351向控制器1330提供信号,使控制器接通电源以开启存储设备1300的先前已经关闭的器件。

当需要正常模式时,主机1100可以控制电源管理器1600,使得电源管理器1600向存储设备1300提供主电压mnp。在正常模式下,存储器件1311、1312、……、1319和控制器1330可以在接收到主电压mnp时进行操作。另一方面,当需要省电模式时,可以中断向存储设备1300供应主电压mnp(即,不向存储设备1300供应主电压mnp)。主电压mnp可以是存储设备1300的主电源。

在一些示例实施例中,在省电模式下,主机1100可以控制电源管理器1600,使得电源管理器1600停止向存储设备1300供应主电压mnp并向存储设备1300提供辅助电压auxp(例如,辅助电力)。例如,当控制器1330在省电模式下停止存储设备1300的某些操作时,控制器1330的一些组件可以使用所接收的辅助电压auxp继续工作。例如,控制器的所有组件(处理器1331、计时器1332、状态管理器1333、传感器1334、内部存储器1334)和所有存储器件1310可以具有与由电源管理器1600提供的主电压mnp的电力连接(例如,通过一条或更多条电线),使得在正常模式下,所有这些设备都接收主电压mnp。相比之下,仅控制器1330的部分组件可以电连接到辅助电压auxp,而控制器1330的其他组件和存储器件1310与辅助电压auxp不具有任何连接。例如,在根据本文所描述的实施例的省电模式下,非易失性存储器件1311、1312、……、1319可以不接收任何电力。例如,在省电模式下,诸如可以形成存储器件1310的存储器半导体芯片和可以形成存储设备1300的高速缓冲存储器(未示出)的其他半导体芯片(例如,诸如dram芯片、sram芯片等的易失性存储器芯片)的所有存储器半导体芯片不会连接到任何电源,并且因此被关闭。另外,在省电模式下,控制器1330的一个或更多个半导体芯片可以关闭形成在其中的dll电路或pll电路(例如,在该芯片的睡眠模式下)或者可以不连接到任何电源。因此,与正常模式期间控制器1330的正常功耗水平相比,可以降低省电模式期间控制器1330的功耗水平。在一些示例中,在省电模式期间,存储设备1300的任何半导体芯片的所有dll电路或pll电路都是关闭的。因此,在根据一些示例的省电模式中,当主电压mnp未供应给存储设备1300而辅助电压auxp被供应给存储设备1300时,仅控制器1330的部分组件可以接收电力。例如,控制器1330的接收辅助电压auxp的该部分组件可以是计时器1332和/或传感器1334。在一些示例中,存储设备1300可以包括插入在电源管理器1600与控制器1330之间以接收主电压mnp和辅助电压auxp二者的附加电源管理器(未示出),该附加电源管理器基于存储设备是处于正常模式还是省电模式,将主电压mnp和辅助电压auxp分配给存储设备1300的器件。在该实施方式中,该附加电源管理器可以连接到辅助电压auxp,并且控制器的其他组件(例如,计时器1332和/或传感器1334)可以通过该附加电源管理器选择性地连接到辅助电源(例如,在省电模式下选择性地连接到辅助电源)。该附加电源管理器可以用于检测向存储设备1300的供电中断(例如,既未提供主电压mnp也未提供辅助电压auxp),并且用于通过(例如,从诸如电容器的电池)向存储设备1300的正被供电的组件(例如,在检测到供电中断时被供应主电力或辅助电力的组件)提供备用电力,来避免这些组件的供电中断。该附加电源管理器还可以被配置为在除了本文描述的省电模式之外的其他模式下来操作存储设备1300以降低功耗。在一些示例中,电源管理器1600可以被实现为存储设备1300的元件(并且与主机1100和如本文所述的存储设备1300的其余元件一起操作)。在该示例中,位于存储设备1300外部的附加电源管理器不是必要的。下面将描述基于辅助电压auxp的示例操作。

辅助电压auxp可以与主电压mnp分隔开。在一些示例中,辅助电压auxp可以与主电压mnp分开供应(即,辅助电压auxp和主电压mnp均可以经由单独的专用供电线供应给存储设备)。基于辅助电压auxp供应的电力可以小于基于主电压mnp供应的电力。例如,辅助电压auxp的电压大小可以低于主电压mnp的电压大小。或者,辅助电压auxp的电压大小可以与主电压mnp的电压大小相同,但是基于辅助电压auxp流动的电流量可以小于基于主电压mnp流动的电流量。辅助电压auxp可以适于省电模式。

控制器1330可以包括被配置为执行上述操作以及将在下面描述的操作的一个或更多个硬件组件(例如,模拟电路、逻辑电路等)。在该示例中,控制器1330包括处理器1331、计时器1332、状态管理器1333、传感器1334和内部存储器1335(这些组件均可以形成为在一个或更多个半导体芯片内被形成为集成电路的电路、硬件或固件)。

然而,控制器1330的配置不限于图2的图示。控制器1330可以不包括图2中所示的组件中的一个或更多个,和/或还可以包括图2中未示出的组件。

另外,图2示出了控制器1330中包括计时器1332、状态管理器1333和传感器1334,但是本发明不限于此。在一些示例实施例中,计时器1332、状态管理器1333和/或传感器1334中的至少一个可以被设置在控制器1330外部,或者可以是与存储设备1300分隔开的独立组件。提供图2的控制器1330的配置是为了便于更好的理解,而不是为了限制本发明。

处理器1331可以包括一个或更多个处理器核。上面描述的控制器1330的一些操作以及将在下面描述的控制器1330的一些操作可以被实现在固件fw的程序代码和/或配置处理器1331的软件中,并且处理器1331的(一个或多个)处理器核可以运行程序代码的指令集,以提供期望的操作。处理器1331可以处理各种算术/逻辑运算来运行指令集。

计时器1332可以确定参考时间已经流逝(参考时间在本文中可以被称为预定持续时间、预定时间段等)。例如,计时器1332可以包括能够测量时间流逝的硬件电路(例如,计时器电路、计数器电路等)。例如,可以基于处理器1331的控制(根据固件fw的运行)和/或其他装置的控制来设置计时器1332的参考时间。计时器1332可以被配置为在计时器1332确定参考时间流逝或期满时输出信号。

状态管理器1333可以收集和管理与存储设备1300的操作相关联的各种状态的信息。例如,状态管理器1333可以收集和管理存储器件1311、1312、……、1319和控制器1330工作的一个或更多个环境的信息(例如,温度、时钟频率、带宽等)。例如,状态管理器1333可以收集和管理存储器件1311、1312、……、1319中包括的存储区域的属性(例如,损耗程度、无效存储区域的量(诸如存储器件1311、1312、……、1319中的全部存储器件、一些存储器件或一个存储器件的无效存储区域的百分比,或者存储器件1311、1312、……、1319中的全部存储器件、一些存储器件或一个存储器件的无效存储区域与有效存储区域的比率)、可用容量等)的信息。无效存储区域可以包括包含不再有效的旧数据(根据诸如nand闪存之类的一些非易失性存储器类型,在写入之前可能需要擦除的数据)的存储区域。存储区域的可用容量可以表示当前可用于写入数据的存储容量。当存储器件1311、1312、……、1319是nand闪存芯片时,存储区域可以是块,每个块形成nand闪存芯片中的最小擦除单元。

状态管理器1333可以包括能够监视存储设备1300的操作并存储所收集的信息的独立的硬件电路。或者,状态管理器1333可以实现为配置处理器1331的固件fw的一部分,并且因此可以由处理器1331运行。

传感器1334可以感测就存储设备1300的操作而言所出现的各种事件。传感器1334可以包括被配置为感测预期类型的事件的硬件电路。例如,当传感器1334包括用于感测存储器件1311、1312、……、1319和控制器1330工作的温度的温度传感器时,传感器1334可以包括适用于温度感测的硬件电路(例如,带隙基准(bgr)电路)。

内部存储器1335可以存储在控制器1330的操作中使用的数据。例如,内部存储器1335可以包括诸如sram、dram或sdram的易失性存储器和/或诸如pram、mram、reram或fram的非易失性存储器。例如,内部存储器1335可以存储与在存储器件1311、1312、……、1319与控制器1330之间执行的维护操作相关联的信息。

在示例实施例中,维护操作可以包括用于改进存储设备1300的工作环境和特性的各种操作。例如,当存储器件1311、1312、……、1319中存储的数据的可靠性存在降低的风险时,可以执行维护操作以改进和保证数据可靠性。然而,本发明不限于此,并且可以不同地改变或修改维护操作。为了便于更好的理解,下面将描述一些示例性维护操作。

存储设备1300可以是根据主机1100的命令和请求被动操作的设备。然而,当被动地执行维护操作时,可能不足以改进存储设备1300的工作环境和特性,并且可能在存储设备1300的操作中出现错误或故障。

在示例实施例中,存储设备1300可以在无需主机1100的指令或干预的情况下主动地启动和/或执行维护操作。例如,当控制器1330与存储器件1311、1312、……、1319之一进行通信时,可以在控制器1330与存储器件1311、1312、……、1319之间执行维护操作。

例如,即使当主机1100未能识别与存储设备1300的操作相关联的状态或者主机1100忙于控制存储设备1300时,也可以执行维护操作。因此,即使主机1100没有干预,也可以改进存储设备1300的可靠性、性能和管理效率。

在一些示例中,存储设备1300可以向主机1100输出通知ntf以通知主机1100要执行维护操作。例如,通知ntf可以从控制器1330输出,或者可以从包括在控制器1330中的组件输出或者从未包括在控制器1330中的其他组件输出。例如,其他组件可以在控制器1330的控制下(例如,响应于计时器1332确定预定持续时间已经流逝时)直接输出通知ntf,或者控制器1330可以基于其他组件的输出以要传输到主机1100的格式生成通知ntf。通知ntf可以形成唤醒请求,该唤醒请求可以请求主机1100使存储设备1300退出省电模式。

接口协议可以用于主机1100与控制器1330之间的通信。在一些示例实施例中,通知ntf可以使用特定信号或通过接口协议中定义的特定引脚输出,或者可以通过用于交换数据dat的信道输出。在一些示例实施例中,通知ntf可以根据可以以其他方式实现的不与接口协议相对应的单独通信来输出。

然而,提供上述示例是为了便于更好的理解,而不旨在限制本公开。可以对通知ntf进行各种改变或修改,以执行关于执行维护操作的适当处理。

图3是描述图2的存储设备1300的示例操作的流程图。

在一些示例中,图3的方法可以在存储设备1300的一部分进入省电模式时被启动,在省电模式下,控制器1330和存储器件1311、1312、……、1319的操作被部分或完全停止。在其他示例中,图3的方法可以以有规律的时间间隔周期性地启动,例如,在控制器1330的初始启动操作时启动,以及在每次完成图3的方法时重复启动。控制器1330可以确定是否满足维护条件(s130a)。维护条件可以与是否需要维护操作相关联。当尚未满足维护条件时(s130a的否),控制器1330可以继续监视是否满足维护条件。控制器1330可以在无需主机1100干预的情况下,通过使用计时器1332、状态管理器1333等主动地监视维护条件。

例如,控制器1330可以经由状态监视器1333监视与存储器件1311、1312、……、1319相关联的状态。控制器1330可以确定所监视的状态是否满足维护条件。例如,由控制器1330的状态监视器1333监视的状态可以与诸如以下各项的各种属性相关联:每个存储器件1311、1312、……、1319的寿命、存储在每个存储器件1311、1312、……、1319中的数据的可靠性、存储器件1311、1312、……、1319的可用容量等。

当满足维护条件时(s130a的是),这可以表示需要通过在存储设备1300中执行维护操作来改进存储设备1300的工作环境和特性。存储设备1300可能想要启动维护操作来改进存储设备1300的工作环境和特性。

例如,当所监视的状态的数值达到参考值时,控制器1330可以确定所监视的状态满足维护条件。例如,控制器1330可以监视存储器件1311、1312、……、1319的可用容量。当存储器件1311、1312、……、1319的可用容量变得小于参考值时,控制器1330可以确定满足了增加可用容量的维护条件。

在一些示例实施例中,控制器1330可以确定是否满足启动条件(s130b)。启动条件可以与是否启动维护操作相关联。

当尚未满足启动条件时(s130b的否),控制器1330可以不启动维护操作直到满足启动条件。在所监视的状态满足维护条件(s130a的是)之后,可以响应于满足启动条件(s130b的是)来启动和执行维护操作。在一些示例中,可以省略步骤s130b,并且进行到步骤s150的方法不需要满足启动条件。

例如,当存储设备1300提供存储服务以存储并输出数据时,执行维护操作可能成为存储设备1300的负担。因此,例如,启动条件可以与系统资源是否可用于存储器件1311、1312、……、1319和控制器1330执行维护操作相关联。在一些示例中,维护操作可能比存储服务更重要,因而启动条件可以是确定维护操作的优先级高于先前占用可用系统资源的那些操作的优先级。

例如,当在进入省电模式之后(即,在存储器件1311、1312、……、1319和控制器1330已经(完全或部分地)停止操作之后)经过了参考时间时,或者当确定存储设备1300当前未被使用(例如,未被用于与主机交换数据的访问操作中)时,控制器1330可以确定存储器件1311、1312、……、1319和控制器1330可用于执行维护操作。

在满足维护条件之后,响应于满足启动条件,存储设备1300可以将通知ntf输出到主机1100以通知主机1100要执行维护操作(s150)。响应于满足维持条件和启动条件,维护操作可以由控制器1330启动和对存储器件1311、1312、……、1319执行(s170)。

在一些情况下,可能不存在适于执行维护操作的环境。例如,当未接收到主电压mnp时,存储设备1300可能无法执行维护操作。例如,在维护操作中要参考的数据仅可从外部源(例如,从主机1100)获得。在这些情况下,存储设备1300可能需要主电压mnp和/或主机1100的参考数据来执行维护操作。

在一些示例实施例中,主机1100可以响应于通知ntf设置要执行维护操作的环境。例如,响应于通知ntf,主机1100可以控制电源管理器1600,使得主电压mnp被提供给存储设备1300,和/或可以向存储设备1300提供要在维护操作中参考的数据。这样,可以响应于通知ntf,在主机1100的控制下提供适于维护操作的环境。

例如,第一环境可以适于维护操作,但是控制器1330可能处于与第一环境不同的第二环境。当控制器1330处于第二环境时,控制器1330可能确定了所监视的状态满足用于执行维护操作的维护条件(和启动条件)。之后,基于通知ntf,第二环境可以在主机1100的控制下改变为第一环境。因此,可以提供适于维护操作的第一环境。

在所提供的环境下(例如,第一环境),控制器1330可以与存储器件1311、1312、……、1319之一进行通信,以便执行与所监视的状态相关联的维护操作。因此,可以在第一环境下执行维护操作,并且第一环境可以在主机1100的控制下被设置。

可以在无需主机1100干预或控制(除了在需要时基于通知ntf提供合适的环境)的情况下执行维护操作。存储设备1300可以确定是否满足维护条件,并且可以在无需主机1100干预、指令、命令、控制等的情况下自己启动并执行维护操作。主机1100可以仅提供适于维护操作的环境。因此,可以将主机1100用来执行维护操作的资源最小化。

在完成维护操作之后,存储器件1311、1312、……、1319的操作状态和控制器1330的操作状态可以返回到期望的状态,例如,执行维护操作之前的操作状态(s180)。例如,当存储器件1311、1312、……、1319和控制器1330已从省电模式进入正常模式以执行维护操作时,存储器件1311、1312、……、1319和控制器1330可以在维护操作完成后返回省电模式。

例如,当控制器1330为了执行维护操作而暂停监视与存储器件1311、1312、……、1319相关联的状态时,控制器1330可以在维护操作完成之后恢复监视。这样,在完成维护操作之后,可以将适于维护操作的第一环境改变为与第一环境不同的第二环境。

所监视的状态可以在执行维护操作时改变。例如,当执行用于增加可用容量的维护操作时,与执行维护操作之前的可用容量相比,完成维护操作之后的可用容量可以增加。

这样,执行维护操作之前所监视的状态可以与维护操作完成之后所监视的状态不同。可以执行维护操作以改变(例如,改进)与存储器件1311、1312、……、1319相关联的状态。

已经描述了启动条件与维护条件是分离的。然而,一些示例实施例可以被实现为使得不需要监视和/或满足单独的启动条件。在这样的示例实施例中,当在步骤s130b中所监视的状态满足维护条件时,存储设备1300可以输出通知ntf并且可以执行维护操作。

另外,可以容易地理解,上述所监视的状态、维护条件和启动条件仅是一些可能的示例,并且可以进行各种改变或修改,而不限于上述示例。为了便于更好地理解,将参考图4至图15描述一些示例实施例。

图4至图6是用于描述根据一些实施例的图2的存储设备1300的示例操作的概念图。图7是描述图4至图6的示例操作的流程图。为了便于说明,仅示出了从电源管理器1600到存储设备1300的单条电源线,但是可以使用多条电源线(如图2所示)。在描述存储设备1300的示例操作时,本公开中的附图的灰色部分指示存储设备1300的关于这些示例操作是关闭(例如,切断和/或不接收任何电力)的元件。

参考图4,主机1100和/或控制器1330可以确定存储设备1300应当进入省电模式(图7的s210)。在主机1100和/或控制器1330的控制下,存储设备1300的操作状态可以从正常模式切换到省电模式(图4的操作[1])。

响应于从正常模式切换到省电模式,控制器1330(例如,根据固件fw、处理器1331的运行)可以设置计时器1332的参考时间(图4的操作[2],图7的s220),并且启动计时器1332的操作。一旦计时器1332启动,它就可以在无需主机1100干预的情况下,开始测量在计时器1332启动之后流逝的时间并且确定在计时器1332启动之后参考时间的期满。

例如,存储器件1311、1312、……、1319可以是闪存半导体芯片。当闪存的存储单元长时间未被供电时,存储单元的数据可能由于存储单元的电荷存储元件的电荷泄漏而丢失(这可能导致数据可靠性降低)。随着nand闪存单元被配置为存储的位数越多,用于数据确定的电压裕度可能越小。因此,存储多个位的存储单元可能更容易受到电荷泄漏的影响,从而导致对存储在其中的位的错误的数据确定。

例如,可以考虑在不供电时可以保证存储单元的数据可靠性的时长,来选择计时器1332的参考时间。可以在数据丢失之前设置执行用于保证数据可靠性的维护操作(下文中称为数据保留操作)的参考时间。

可以由设计者、制造商和/或用户将参考时间选择成是固定的或可变的。例如,控制器1330可以包括可以被编程为存储从外部源接收的参考时间的可编程寄存器(未示出)。可编程寄存器可以包括非易失性寄存器,该非易失性寄存器可以由主机1100响应于来自主机1100的编程命令而被编程到控制器1330。例如,可编程寄存器可以包括可以在制造期间(例如,使用激光)被编程的熔丝或反熔丝组。例如,参考时间可以是能够由控制器1330根据由状态管理器1333确定的存储器件1311、1312、……、1319的可靠性状态(例如,损耗程度、数据可靠性、寿命等)来调整的。

控制器1330可以通过使用计时器1332来监视与存储器件1311、1312、……、1319相关联的状态。例如,被监视的状态可以包括存储在存储器件1311、1312、……、1319中的数据在存储器件1311、1312、……、1319未接收电力的情况下保留的持续时间。

同时,响应于从正常模式切换到省电模式,存储器件1311、1312、……、1319和控制器1330可以完全或部分(由阴影示出的)地停止操作。然而,在省电模式下,计时器1332仍然可以操作以确定时间流逝是否已经达到参考时间。可以中断供应主电压mnp,但是可以接收辅助电压auxp以操作计时器1332(图4的操作[3]、图7的s220)。

当计时器1332确定参考时间未流逝或未期满时(图7的s230的否),计时器1332可以继续监视参考时间。另一方面,参考图5,当计时器1332监视的参考时间流逝或期满时(图7的s230的是),计时器1332可以输出指示参考时间流逝或期满的信号(图5的操作[4])。

存储设备1300可以基于从计时器1332输出的信号(即,基于参考时间流逝或期满)将通知ntf输出到主机1100(图5的操作[5]、图7的s250)。可以输出通知ntf以通知存在数据将丢失的风险,从而执行数据保留操作。通知ntf可以请求主机1100启动存储设备1300的省电模式的退出(例如,请求唤醒存储设备1300)。

在该示例中,可以理解的是,当在存储器件1311、1312、……、1319存储数据之后从未接收到电力(例如,主电压mnp)起经过了参考时间时,满足维护条件。应当理解,为了输出通知ntf,不必满足启动条件。

在一些示例实施例中,控制器1330可以被配置为根据pcie协议与主机1100通信。在这样的示例实施例中,例如,可以基于pcie协议中定义的wake#(唤醒)信号输出通知ntf。

wake#信号可以用于基于辅助电压auxp来切换存储设备1300的操作状态,因此可以有效地用于在省电模式下与主机1100通信。然而,提供该示例是为了便于更好的理解,并且可以不同地改变或修改如上所述的输出通知ntf的方式。

主机1100可以基于通知ntf控制电源管理器1600,使得主电压mnp被供应给存储设备1300(图5的操作[6])。在主机1100的控制下,存储器件1311、1312、……、1319和控制器1330可以接收主电压mnp以在正常模式下操作(图5的操作[7]、图7的s270a),并且可以中断辅助电压auxp的供应。因此,可以从省电模式切换到正常模式,并且可以提供适于数据保留操作的环境。

在所提供的环境下(例如,在正常模式下),存储器件1311、1312、……、1319和控制器1330可以响应于接收到电力(例如,主电压mnp)而开始维护操作(例如,控制器1330可以响应于开始向存储设备1300提供主电压mnp而启动存储器件1311、1312、……、1319的维护操作)。在一些示例中,向存储设备1300提供主电压mnp(工作电压)是主机1100启动(一个或多个)维护操作所需的唯一动作,而不需要从主机1100向存储设备1300提供单独的命令或(一个或多个)其他信号。当控制器1330与存储器件1311、1312、……、1319通信时,可以使用电力(例如,主电压mnp)在控制器1330与存储器件1311、1312、……、1319之间执行数据保留操作(图5的操作[8]、图7的s270b)。

可以对存储在存储器件1311、1312、……、1319中的数据执行数据保留操作。可以响应于参考时间流逝或期满来执行数据保留操作,使得存储在存储器件1311、1312、……、1319的存储单元中的数据不会丢失。

例如,数据保留操作可以包括读取存储在存储器件1311、1312、……、1319中的数据以及将所读取的数据存储在存储器件1311、1312、……、1319中的操作。这些操作可以称为读取回收操作。根据读取回收操作,与参考值相比较来确定由存储单元存储的数据的存储单元的可调整物理特性,可以被调整以对应于要由存储单元存储的数据。例如,可以对存储单元进行再充电(例如,可以调整存储单元的电荷量)以对应于存储单元的预期数据。例如,可以调整存储单元的电阻值以对应于存储单元的预期数据。例如,关于存储器件(例如,1311、1312、……、1319之一)——均可以是非易失性存储器半导体芯片——的读取回收操作,可以将数据从存储单元(诸如nand闪存单元或其他非易失性存储单元)阵列的一页存储单元读取到存储器件的页面缓冲器。然后,读取回收操作可以执行编程操作,以在不从页面缓冲器传送读取数据和/或不修改页面缓冲器中的数据的情况下,将存储在页面缓冲器中的数据直接写入刚刚从其读取数据的同一页中。在执行编程操作以写入存储在页面缓冲器中的数据时,可以将该页存储单元的与期望水平不对应(例如,在相应的预定水平之上和/或在相应的预定范围内)的存储单元的可调整物理特性(例如,电阻值或电荷存储)调整到相应的期望水平。因此,可以在数据丢失之前保留数据。读取回收操作可以是对存储在非易失性存储器中的数据的刷新操作。然而,本发明不限于此,并且可以不同地改变或修改数据保留操作,使得在数据丢失之前保留数据。例如,作为读取回收操作的一部分,可以使用纠错电路和纠错码来检测和校正读取数据的错误数据位。纠错电路可以是存储设备1300的一部分(例如,控制器1330的一部分),或者可以设置在存储设备1300的外部(例如,作为主机1100的一部分)。在后一种情况下,读取回收操作可以包括将读取数据发送到位于存储设备外部的纠错电路,以及接收要写入存储设备的校正后的数据。在一些情况下,在后一种方法中,读取数据可以保留在页面缓冲器中,以使某些位被校正和/或校正后的数据可以存储在与最初读取数据的页面不同的页面上的存储阵列中。

这样,存储设备1300可以自己确定维护条件,从而可以独立地执行数据保留操作。除了控制主电压mnp的供应以切换到正常模式之外,主机1100可以不干预数据保留操作。因此,可以有效地执行数据保留操作,并且可以改进数据可靠性。

参考图6,在数据保留操作完成之后,控制器1330可以向主机1100提供与数据保留操作的结果相关联的信息。例如,控制器1330可以通知主机1100数据保留操作已完成(图6的操作[9]、图7的s280a)。之后,在主机1100和/或控制器1330的控制下,存储设备1300的操作状态可以从正常模式切换到省电模式(图6的操作[10])。

响应于从正常模式切换到省电模式,可以设置计时器1332的参考时间(图6的操作[11]、图7的s280b),并且计时器1332可以在无需主机1100干预的情况下开始监视参考时间。存储器件1311、1312、……、1319和控制器1330可以完全或部分地停止操作。

可以中断主电压mnp的供应,但是可以接收辅助电压auxp来操作计时器1332(图6的操作[12]、图7的s280b)。因此,存储器件1311、1312、……、1319和控制器1330的操作状态可以返回到执行数据保留操作之前的操作状态。

图8和图9是用于描述根据一些示例实施例的图2的存储设备1300的示例操作的概念图。图10是描述图8和图9的示例操作的流程图。

参考图8,控制器1330可以通过使用状态管理器1333来监视与存储器件1311、1312、……、1319相关联的状态(图8的操作[1]、图10的s305)。例如,所监视的状态可以包括存储器件1311、1312、……、1319中包括的存储区域的损耗程度、存储器件1311、1312、……、1319中包括的存储区域的无效存储区域的比率、存储器件1311、1312、……、1319的可用容量等,但是本发明不限于此。

控制器1330可以通过使用状态管理器1333来确定被监视的状态是否满足维护条件(图10的s330)。例如,当所监视的状态的数值达到相应阈值时,可以满足维护条件。阈值可以在考虑了需要维护操作的状态的程度来进行选择(例如,以编程的方式)。

例如,当存储器件包括具有高损耗程度的存储区域时,存储在存储器件中的数据会变得不可靠。当一个或更多个损耗程度达到第一阈值(例如,变得高于第一阈值)时,可以满足用于保证数据可靠性的维护条件。

例如,当存储器件中包括的存储区域的无效存储区域的比率增加时,对存储器件的访问会变得低效。当无效存储区域的比率达到第二阈值(例如,变得高于第二阈值)时,可以满足用于高效存储器访问的维护条件。

例如,当存储器件1311、1312、……、1319的可用容量减小时,会变得难以存储额外的数据块。当可用容量达到第三阈值(例如,变得低于第三阈值)时,则可以满足用于增加可用容量的维护条件。

当不满足维护条件时(图10的s330的否),控制器1330仍然可以监视与存储器件1311、1312、……、1319相关联的状态。当确定满足了维护条件时(图8的操作[2]、图10的s330的是),存储设备1300可以基于该确定输出通知ntf(图8的操作[3]、图10的s350)。通知ntf可以是这样的维护通知:该维护通知响应于确定一个或更多个非易失性存储器件需要维护被发送到主机100,以提供主机1100不可以访问固态存储设备的时间段,在该时间段期间控制器可以对一个或更多个非易失性存储器件执行一个或更多个维护操作。

可以输出通知ntf以通知要执行用于改进所监视的状态的维护操作(下文中称为管理操作)。例如,可以使用wake#信号来输出通知ntf,或者可以通过用于交换数据dat的信道来输出通知ntf。然而,提供该示例是为了便于更好的理解,并且可以不同地改变或修改如上所述的输出通知ntf的方式。

在一些情况下,可能需要主机1100的命令cmd来执行管理操作。在一些情况下,执行管理操作要参考的数据inf1可以仅存储在主机1100中。在这种情况下,主机1100可以将命令cmd和/或数据inf1提供给存储设备1300(图8的操作[4]、图10的s370a)。例如,inf1可以识别主机1100的空闲时间,在该空闲时间主机1100未被安排访问存储设备1300或以其他方式与存储设备1300通信。控制器1330可以响应空闲时间(作为inf1被接收)来在空闲时间期间对存储器件1311、1312、……、1319执行维护操作,并且在空闲时间期满时停止对存储器件1311、1312、……、1319的维护操作。在一些示例中,数据inf1可以包括存储器件1311、1312、……、1319的块的损耗程度、包括不应该在任何数据写入维护操作中使用的不良块的物理地址的不良块信息、将存储器件1311、1312、……、1319的逻辑地址与物理地址关联的地址映射。因此,在主机1100的控制下,可以提供适于管理操作的环境。另一方面,当执行不需要命令cmd和数据inf1的管理操作时,可以省略关于数据inf1的该过程。

在所提供的环境下(例如,基于命令cmd和/或数据inf1),当控制器1330与存储器件1311、1312、……、1319通信时,可以通过控制器1330对存储器件1311、1312、……、1319执行管理操作(图8的操作[5]、图10的s370b)。

例如,当一个或更多个损耗程度达到参考值时,可以执行管理操作,使得存储器件1311、1312、……、1319的存储区域中的损耗程度达到第一阈值的存储区域的数据迁移到损耗程度未达到第一阈值的存储区域。在这种情况下,数据可以存储在具有低损耗程度的存储区域中(即,提供高可靠性)。

例如,当存储器件中的无效存储区域的比率达到第二阈值时,管理操作可以包括用于移动包括在存储器件或包括在另一存储器件中的存储区域的有效存储区域的数据的垃圾收集操作。在这种情况下,有效存储区域的数据可以存储在最小数目的存储器件中,并且可以获得高效的存储器访问。

例如,当可用容量小于第三阈值时,管理操作可以包括通过通信块1400将存储器件1311、1312、……、1319中存储的数据上传到远程服务器(例如,云存储)的操作以及从存储器件1311、1312、……、1319中删除相应的数据的操作。在这种情况下,可以增加存储器件1311、1312、……、1319的可用容量。

这样,存储设备1300可以自己确定维护条件,从而可以主动地执行管理操作。在该示例中,主机1100除了提供管理操作所需的命令cmd和数据inf1之外,可以不需要参与管理操作。因此,可以有效地执行管理操作,并且可以提高存储设备1300的可靠性、性能和管理效率。

上述管理操作旨在提供一些可能的示例实施例以便于更好的理解,但不旨在限制本发明。可以不同地改变或修改管理操作以改进与存储器件1311、1312、……、1319相关联的状态。可以对两个以上的状态并行(例如,同步或同时)或顺序地执行管理操作。

参考图9,在管理操作完成之后,控制器1330可以向主机1100提供与管理操作的结果相关联的信息(图9的操作[6]、图10的s380a)。例如,控制器1330可以通知主机1100管理操作已完成。

在一些情况下,数据可以在存储器件1311、1312、……、1319之间迁移。在这种情况下,控制器1330可以向主机1100提供信息inf2以通知存储迁移数据的新存储区域的位置(例如,地址)。在管理操作完成之后从主机1100接收的请求(例如,写入/读取请求)可以基于信息inf2被引导到新的存储区域。此外,信息inf2可以包括与管理操作的结果相关联的各种信息。

另一方面,一些管理操作可以不生成要提供给主机1100的信息。在这种情况下,可以省略关于信息inf2的该过程。

之后,控制器1330可以通过使用状态管理器1333来监视与存储器件1311、1312、……、1319相关联的状态(图9的操作[7]、图10的s380b)。因此,存储器件1311、1312、……、1319和控制器1330的操作状态可以返回到执行管理操作之前的操作状态。

图11至图14是用于描述根据一些示例实施例的图2的存储设备1300的示例操作。图15是描述图11至图14的示例操作的流程图。

参考图11,在主机1100和/或控制器1330的控制下,可以提供正常模式的操作(图11的操作[1])。在正常模式下,电源管理器1600可以将主电压mnp提供给存储设备1300,并且可以中断辅助电压auxp的供应(图11的操作[2])。

控制器1330可以基于在正常模式下接收的电力(例如,主电压mnp),通过使用状态管理器1333来监视与存储器件1311、1312、……、1319相关联的状态(图11的操作[3]、图15的s405)。当不满足维护条件时(图15的s430a的否),控制器1330可以继续监视与存储器件1311、1312、……、1319相关联的状态。

在状态监视期间(图15的s405、s430a),控制器1330可以确定所监视的状态满足维护条件(图11的操作[4]、图15的s430a的是)。控制器1330可以确定是否满足启动条件(例如,资源是否可用于存储器件1311、1312、……、1319以及控制器1330执行管理操作)(图15的s431),而不是基于维护条件的确定立即输出通知ntf。

当满足启动条件时(图15的s431的是),可以通过控制器1330对存储器件1311、1312、……、1319执行管理操作(图15的s435)。然而,当不满足启动条件时(例如,当存储设备1300忙时,诸如在主机1100的请求下被访问操作占用)(图15的s431中的否),不立即执行管理操作而是被推迟。在该示例中,可以独立于维护条件来提供启动条件。例如,当未切换到省电模式时(图15的s410的否),不执行管理操作。然而,在一些示例中,当未切换到省电模式时(图15的s410的否),该方法可以返回到步骤s431(以周期性地检查是否满足启动条件)或者可以返回到步骤s405(以继续监视操作状态),稍后周期性检查是否满足启动条件(s431)。在该重复循环操作期间,如果存储设备1300被置于省电模式(s410),该方法可以进行到步骤s420。

参考图12,在主机1100和/或控制器1330的控制下,可以切换到省电模式(图12的操作[5]、图15的s410的是)。响应于切换到省电模式,可以设置计时器1332的参考时间(图12的操作[6]、图15的s420),并且计时器1332可以开始监视参考时间。

同时,可以中断主电压mnp的供应,但是可以接收辅助电压auxp以操作计时器1332(图12的操作[7]、图15的s420)。存储器件1311、1312、……、1319和控制器1330可以完全或部分地停止操作。

当由计时器1332测量的参考时间未流逝或未期满时(图15的s430b的否),计时器1332可以继续监视参考时间。另一方面,参考图13,当参考时间流逝或期满时(图15的s430b的是),计时器1332可以输出指示参考时间流逝或期满的信号(图13的操作[8])。

参考时间可以被选择成适于确定存储设备1300是空闲的。参考时间流逝或期满可以指存储设备1300在参考时间期间是空闲的。因此,参考时间流逝或期满可以被视为满足启动条件。在一些示例中,在由计时器1332监视的参考时间的第一时段期满之前,可以响应于存储设备1300退出省电模式和/或进入正常模式(例如,通过主机1100的命令)而重置计时器1332以监视参考时间的第二时段的期满,并且计时器1332可以开始监视参考时间的第二时段的期满。例如,进入正常模式的命令(例如,通过主机1100)可以使得图15的方法返回到步骤s405并执行重置计时器1332的步骤以监视参考时间的第二时段的期满。

存储设备1300可以基于从计时器1332输出的信号(即,基于参考时间流逝或期满)将通知ntf输出到主机1100(图13的操作[9]、图15的s450)。可以输出通知ntf以通知要执行管理操作。

主机1100可以基于通知ntf控制电源管理器1600,使得主电压mnp被供应到存储设备1300(图13的操作[10])。在主机1100的控制下,存储器件1311、1312、……、1319和控制器1330可以接收主电压mnp以在正常模式下操作(图13的操作[11]、图15的s470a),并且可以中断辅助电压auxp的供应。因此,可以切换到正常模式,并且可以提供用于执行管理操作的环境。

在所提供的环境下(例如,在正常模式下),存储器件1311、1312、……、1319和控制器1330可以使用新供应的电力(例如,主电压mnp)来开始操作。当控制器1330与存储器件1311、1312、……、1319通信时,可以在控制器1330与存储器件1311、1312、……、1319之间执行管理操作(图13的操作[12]、图15的s470b)。

参考图14,在管理操作完成之后,控制器1330可以向主机1100提供与管理操作的结果相关联的信息(图14的操作[13]、图15的s480a)。然后,在主机1100和/或控制器1330的控制下,存储设备1300的操作状态可以切换回省电模式(图14的操作[14])。

响应于切换回省电模式,可以设置计时器1332的参考时间(图14的操作[15]、图15的s480b),并且计时器1332可以在无需主机1100干预的情况下开始测量参考时间。存储器件1311、1312、……、1319和控制器1330可以完全或部分地停止操作。

可以中断主电压mnp的供应,但是可以接收辅助电压auxp以操作计时器1332(图14的操作[16]、图15的s480b)。因此,存储器件1311、1312、……、1319和控制器1330的操作状态可以返回到执行管理操作之前的操作状态。

上面已经描述了示例性维护操作,但是可以容易地理解,可以根据以上示例实施例中对本发明进行各种改变或修改。如上所述,可以根据预定过程执行维护操作。或者,可以根据基于条件从多个过程中选择的过程来执行维护操作。在一些示例实施例中,维护操作的种类和方式可以通过用户或存储设备1300而被更新或修改。

图16是示出了与图2的存储设备1300相关联的示例配置的框图。

传感器1334可以感测各种事件。由传感器1334检测到的事件可以被称为维护条件和/或启动条件。

例如,传感器1334可以包括温度传感器。温度传感器可用于测量或估计存储器件1311、1312、……、1319的温度和/或存储器件1311、1312、……、1319工作的环境温度(例如,存储器件在其中工作的固态存储设备的壳体中的内部空间的温度)。当存储器件的温度高于或等于参考值时,存储器件中存储的数据可能变得不可靠。因此,当由温度传感器测量或估计的温度高于或等于参考值时,可以满足维护条件。

例如,传感器1334可以包括电压/电流传感器(电压传感器和/或电流传感器)。电压/电流传感器可以用于监视(例如,测量)提供给存储器件1311、1312、……、1319的电压和/或电流。当向存储器件提供过大的电压或电流时,存储设备中存储的数据中可能出现错误。因此,当电压/电流传感器测量到的电压和/或电流高于或等于参考值时,可以满足维护条件。

例如,传感器1334可以包括用于检测存储设备1330外部的光的光传感器、用于检测用户眼睛的视觉传感器、用于检测存储设备1300的取向的陀螺仪传感器等。在一些示例实施例中,光传感器、视觉传感器和陀螺仪传感器可以设置在存储设备1300的外部(例如,安装到存储设备1300的壳体的外表面)。

例如,当包括存储设备1300的电子系统1000处于黑暗环境中时,当用户未看向包括存储设备1300的电子系统1000时,或者当包括存储设备1300的电子系统1000在平坦的表面上时,这些可能意味着存储设备1300未被使用(例如,空闲)。

当电子系统1000处于黑暗环境中时,光传感器感测不到光。当用户未看向电子系统1000时,视觉传感器无法感测用户的眼睛。陀螺仪传感器可以感测电子系统1000留在平坦的表面上。因此,光传感器、视觉传感器和陀螺仪传感器可以用于确定是否满足启动条件。

以上示例旨在提供一些可能的示例实施例,但不旨在限制本发明。可以不同地改变或修改传感器1334的配置和操作。

图17是示出了与图2的存储设备1300相关联的示例配置的框图。

内部存储器1335可以存储与维护操作相关联的信息。例如,当如参考图11至图15所述的推迟管理操作时,内部存储器1335可以管理在满足启动条件之后要执行的管理操作的列表。控制器1330可以参考内部存储器1335的信息来执行维护操作。

在一些情况下,可以针对两个以上状态执行维护操作。例如,控制器1330可以监视与存储器件1311、1312、……、1319相关联的第一状态和第二状态。第二状态可以与第一状态不同。

当第一状态满足第一维护条件时,可以执行与第一状态相关联的第一维护操作。另外,当第二状态满足第二维护条件时,可以执行与第二状态相关联的第二维护操作。在控制器1330的控制下,内部存储器1335可以管理第一维护操作和第二维护操作的列表,以管理要执行的第一维护操作和第二维护操作。

当满足第一维护条件和第二维护条件两者时,控制器1330可以安排第一维护操作和第二维护操作的执行顺序,并且可以基于内部存储器中的安排的执行顺序来管理优先级。控制器1330可以参考内部存储器1335的列表,使得基于安排的执行顺序来执行第一维护操作和第二维护操作。

在一些情况下,用于启动第一维护操作的第一启动条件可以与用于启动第二维护操作的第二启动条件不同。控制器1330可以管理内部存储器1335中的用于启动相应维护操作的启动条件。控制器1330可以参考内部存储器1335的列表,以便基于相应的启动条件来执行第一维护操作和第二维护操作。

提供以上实施例是为了便于更好的理解,而不是旨在限制本发明。可以不同地改变或修改在内部存储器1335中管理的信息。

图18是示出了根据一些示例实施例的包括存储设备2301、2302、2303和2304的电子系统2000的示例配置的框图。

电子系统2000可以包括主机2100和多个存储设备2301、2302、2303和2304。例如,电子系统2000可以是诸如工作站或服务器的大型电子设备,或者可以是提供大存储容量的电子设备。

主机2100可以对应于参考图2至图15描述的主机1100。存储设备2301、2302、2303和2304均可以对应于参考图2至图15描述的存储设备1300,并且可以通过总线连接到主机2100。存储设备2301、2302、2303和2304可以分别包括存储器件2311、2312、2313和2314以及控制器2331、2332、2333和2334。图18示出了四个存储设备2301、2302、2303和2304,但是可以容易的理解,可以不同地改变或修改电子系统2000中包括的存储设备的数目。

存储设备2301、2302、2303和2304中的至少一个可以被配置成与存储设备1300基本相同或类似并且与存储设备1300基本相同或类似地操作,并且可以在无需主机2100干预的情况下主动地启动并执行维护操作。可以如参考图2至图17所描述的那样提供存储设备2301、2302、2303和2304的配置和操作,并且为简洁起见,下面将省略多余的描述。

同时,当提供多个存储设备2301、2302、2303和2304时,可以在存储设备2301、2302、2303和2304之间执行维护操作。存储设备2301、2302、2303和2304可以彼此通信来执行维护操作。将参考图19和图20对此进行描述。

主机2100可以提供适于维护操作的环境。然而,除了提供合适的环境之外,主机2100可以不干预维护操作。例如,在提供合适的环境之后,主机2100可以不干预维护操作,直到维护操作完成。

图19是用于描述图18的存储设备2301、2302、2303和2304的示例操作的概念图。

例如,存储设备2301、2302、2303和2304中的一个存储设备2301可以被配置成与存储设备1300基本相同或相似并且与存储设备1300基本相同或相似地操作。存储设备2301可以用作主设备,以便在无需主机2100干预的情况下,在存储设备2301、2302、2303和2304之间执行维护操作。存储设备2301可以负责整体维护操作。然而,本发明不限于此,并且可以不同地改变或修改用作主设备的存储设备的数目。

存储设备2301可以在无需主机2100干预的情况下,监视与存储设备2301、2302、2303和2304的存储器件2311、2312、2313和2314相关联的状态(操作[1])。为此,存储设备2301可以直接访问存储设备2302、2303和2304,或者可以从存储设备2302、2303和2304接收状态信息。

假设与存储设备2303的存储器件2313相关联的状态满足维护条件。例如,随着存储设备2303的性能变差,存储在存储设备2313中的数据可能变得不可靠。存储设备2301可以确定维护条件(操作[2]),并且可以基于该确定将通知ntf输出到主机2100(操作[3])。

主机2100可以基于通知ntf来提供适于维护操作的环境。在所提供的环境下,存储设备2301可以控制存储设备2303,以便执行维护操作(操作[4])。响应于该控制,可以对存储设备2301、2302、2303和2304中的选定存储设备或全部存储设备执行维护操作(操作[5])。

例如,当存储设备2301、2302、2303和2304彼此通信时,可以执行维护操作,使得存储在存储设备2303中的数据迁移到存储设备2301、2302和2304。在执行维护操作后,可以保证数据可靠性。

例如,当电子系统2000是服务器时,在维护操作完成之后,存储设备2301和/或存储设备2303可以通知主机2100或服务器管理人员需要更换存储设备2303。例如,存储设备2303可以通过灯的闪烁、输出警报声等来提供更换通知。

图20是用于描述图18的存储设备2301、2302、2303和2304的示例操作的概念图。

例如,所有存储设备2301、2302、2303和2304可以被配置与存储设备1300基本相同或相似并且与存储设备1300基本相同或相似地操作。存储设备2301、2302、2303和2304均可以用作主设备,使得在无需主机2100干预的情况下在存储设备2301、2302、2303和2304之间执行维护操作。

存储设备2301、2302、2303和2304可以在无需主机2100干预的情况下,监视与存储设备2301、2302、2303和2304的存储器件2311、2312、2313和2314相关联的状态。存储设备2301、2302、2303和2304可以相互共享被监视的状态的信息,并且可以基于共享信息主动地执行维护操作。

例如,存储设备2303可以在无需主机2100干预的情况下,监视与存储器件2313相关联的状态(操作[1])。例如,随着存储设备2303的性能变差,与存储器件2313相关联的状态可能满足维护条件。存储设备2303可以确定维护条件(操作[2]),并且可以基于该确定将通知ntf输出到主机2100(操作[3])。

主机2100可以基于通知ntf来提供适于维护操作的环境。在所提供的环境下,当存储设备2303与存储设备2301、2302和2304通信时,可以在存储设备2301、2302、2303和2304之间执行维护操作(操作[4])。例如,可以执行维护操作,使得存储在存储设备2303中的数据迁移到存储设备2301、2302和2304。

以上描述旨在提供示例配置和操作。除了上述示例实施例之外,本发明可以包括可以通过简单地改变或修改上述示例实施例而获得的实施方式。例如,本文所描述的示例实施例将工作存储器1200和电源管理器1600示为与存储设备1300分离。然而,工作存储器1200和电源管理器1600之一或两者可以被复制和/或构成存储设备1300的一部分(例如,形成在其上还形成有控制器1300和存储器件1310的基板(诸如存储设备1300的印刷电路板)上)。例如,可以形成为存储设备1300的一部分的存储器1200可以是存储设备1300的高速缓冲存储器(例如,与非易失性存储器件1310相比,具有更快的存取时间的诸如dram或sram的易失性存储器,以在将所接收的数据存储在非易失性存储器件1310中之前快速存储所接收的数据)。作为另一示例,可以实现存储设备1300的其他操作模式以降低未完全关闭器件的功耗,例如将存储器件1310置于休眠模式,在该休眠模式存储器件1310接收电力但存储器件1310的某些部分被关闭(诸如,存储器件的用于建立与控制器1330的同步通信的dll电路或pll电路)。控制器1330可以类似地配置为在这种休眠模式下操作。而且,本发明可以包括可以通过用以后开发的设备和组件改变或修改上述示例实施例而实现的实施方式。

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