存储装置及其操作方法与流程

文档序号:25542432发布日期:2021-06-18 20:38阅读:136来源:国知局
存储装置及其操作方法与流程

相关申请的交叉引用

本申请要求于2019年12月17日提交的申请号为10-2019-0169113的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。

本公开的各个实施例总体涉及一种电子装置,并且更特别地,涉及一种存储装置以及操作存储装置的方法。



背景技术:

通常,存储装置在诸如计算机、智能手机或智能平板的主机装置的控制下存储数据。存储装置可以是将数据存储在磁盘中的硬盘驱动器(hdd),或者是将数据存储在半导体存储器、特别是非易失性存储器中的诸如固态驱动器(ssd)或存储卡的半导体装置。

存储装置可以包括数据所存储的存储器装置,以及被配置成将数据存储在存储器装置中的存储器控制器。存储器装置可以是易失性类型或非易失性类型。非易失性存储器装置的代表性示例包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)、闪速存储器、相变随机存取存储器(pram)、磁阻ram(mram)、电阻式ram(rram)和铁电ram(fram)。



技术实现要素:

本公开的各个实施例涉及一种能够在不输出状态检查命令的情况下基于读取数据来确定存储器装置的状态的方法。

本公开实施例可提供一种存储装置,包括存储器装置和被配置成控制存储器装置的存储器控制器。存储器装置可包括读取数据生成器,被配置成生成新读取数据,该新读取数据包括对应于从存储器控制器接收的读取命令的读取数据和指示存储器装置的状态的信息两者。存储器控制器可包括:状态信息确定器,被配置成基于从读取数据生成器接收的新读取数据来确定存储器装置的状态并生成状态信息;以及命令生成器,被配置成基于状态信息生成待输出到存储器装置的命令。

本公开实施例可提供一种存储装置,包括存储器装置和被配置成控制存储器装置的存储器控制器。存储器装置包括读取数据生成器,被配置成在与从存储器控制器接收的读取命令相对应的读取操作期间,在字线放电的同时,将与读取操作相对应的读取数据输出到存储器控制器。

本公开实施例可提供一种操作存储装置的方法,包括:由存储装置的存储器控制器生成与来自主机的读取请求相对应的读取命令;由存储装置的存储器装置生成新读取数据,该新读取数据包括与读取命令相对应的数据和存储器装置的第一状态信息两者;基于新读取数据,由存储器控制器确定存储器装置的状态,并且由存储器控制器生成第二状态信息;以及基于第二状态信息,由存储器控制器生成待被输出到存储取装置的命令。

本公开实施例可提供一种包括存储器装置和控制器的存储器系统的操作方法。存储器系统的操作方法包括:由控制器将读取命令提供到存储器装置;在感测到读取数据后,立即由存储器装置响应于读取命令,在对字线进行放电的同时提供读取数据以及存储器装置的状态;以及根据存储器装置的状态,由控制器提供后续命令。

附图说明

图1是示出根据本公开实施例的存储装置的框图。

图2是示出诸如图1的存储器装置的存储器装置的配置的示图。

图3是示出根据本公开实施例的存储块的示图。

图4是示出诸如图1的存储器装置的存储器装置的引脚配置的示图。

图5是用于描述基于由存储器装置执行的操作通过就绪线/忙碌线输出的信号的示图。

图6是用于描述减少执行读取操作所花费的时间的实施例的示图。

图7是用于描述在随机读取期间由于减少数据输出时间而产生的效果的示图。

图8是用于描述在顺序读取和随机读取期间由于减少数据输出时间而产生的效果的示图。

图9是用于描述在常规读取操作期间存储器控制器和存储器装置之间的通信方法的示图。

图10是用于描述根据本公开的读取操作期间存储器控制器和存储器装置之间的通信方法的示图。

图11是用于描述在相关联的存储器装置已输出新读取的数据之后的存储器控制器的操作的示图。

图12是用于描述在字线放电完成之前完成数据输出时存储器装置的状态检查的示图。

图13是用于描述根据本公开实施例的存储器装置的操作的示图。

图14是用于描述根据本公开实施例的存储器控制器的操作的示图。

图15是示出图1的存储器控制器的示例的示图。

图16是示出根据本公开实施例的应用了存储装置的存储卡系统的框图。

图17是示出根据本公开实施例的应用了存储装置的固态驱动器(ssd)系统的框图。

图18是示出根据本公开实施例的应用了存储装置的用户系统的框图。

具体实施方式

本文中提供的具体结构和功能描述针对本公开的实施例。然而,本发明的各个方面可以与本文所公开不同地配置或布置。因此,本发明不受所公开的任意实施例的限制。

下面参照附图更全面地描述本公开的各个实施例,使得本领域技术人员能够容易地实施并实践本发明。在整个说明书中,对“实施例”、“另一实施例”等的参考不一定仅指一个实施例,对任意此类短语的不同参考不一定指同一实施例。

图1是示出根据本公开实施例的存储装置50的框图。

参照图1,存储装置50可包括存储器装置100和存储器控制器200。

存储装置50可被配置成在诸如以下的主机300的控制下存储数据:蜂窝电话、智能电话、mp3播放器、膝上型计算机、台式计算机、游戏机、tv、平板pc或车载信息娱乐系统。

根据作为与主机300通信的通信系统的主机接口,存储装置50可被配置成各种类型的存储装置中的任意一种。例如,数据存储装置50可被配置成ssd,mmc、emmc、rs-mmc或微型mmc类型的多媒体卡,sd、迷你sd、微型sd类型的安全数字卡,通用串行总线(usb)存储装置,通用闪存(ufs)装置,个人计算机存储卡国际协会(pcmcia)卡型存储装置,外围组件互连(pci)卡型存储装置,高速pci(pci-e)型存储装置,紧凑型闪存(cf)卡,智能媒体卡和/或记忆棒。

存储装置50可以以各种封装类型中的任意一种的形式来制造。例如,存储装置50可被制造为堆叠式封装(pop)类型、系统级封装(sip)类型、片上系统(soc)类型、多芯片封装(mcp)类型、板上芯片(cob)类型、晶圆级制造封装(wfp)类型和/或晶圆级堆叠封装(wsp)类型。

存储器装置100可将数据存储在其中。存储器装置100可在存储器控制器200的控制下操作。存储器装置100可包括存储器单元阵列,该存储器单元阵列包括被配置成将数据存储在其中的多个存储器单元。存储器单元阵列可包括多个存储块。每个存储块可包括多个存储器单元。多个存储器单元可形成多个页面。在实施例中,每个页面可以是将数据存储在存储器装置100中或从存储器装置100读取所存储的数据的单位。每个存储块可以是擦除数据的单位。

在实施例中,存储器装置100可以是双倍数据速率同步动态随机存取存储器(ddrsdram)、低功耗双倍数据速率第四代(lpddr4)sdram、图形双倍数据速率(gddr)sdram、低功率ddr(lpddr)、rambus动态随机存取存储器(rdram)、nand闪速存储器、垂直nand闪速存储器,nor闪速存储器、电阻随机存取存储器(rram)、相变随机存取存储器(pram)、磁阻随机存取存储器(mram)、铁电随机存取存储器(fram)或自旋转移力矩随机存取存储器(stt-ram)。在本说明书中,通过示例的方式,在存储器装置100是nand闪速存储器的背景下对本发明进行描述。

存储器装置100可以以二维阵列结构或三维阵列结构来实施。本发明不限于任意特定结构的存储器装置;可采用与本文教导一致的任意合适的结构。本公开不仅可应用于由导电浮栅(fg)形成电荷存储层的闪速存储器,还可应用于由绝缘层形成电荷存储层的电荷撷取闪存(ctf)存储器。

在实施例中,存储器装置100可以以每个存储器单元中存储一个数据位的单层单元(slc)方式操作。可选地,存储器装置100可以以每个存储器单元中存储至少两个数据位的方式操作。例如,存储器装置100可以以每个存储器单元中存储两个数据位的多层单元(mlc)方式、每个存储器单元中存储三个数据位的三层单元(tlc)方式或每个存储器单元中存储四个数据位的四层单元(qlc)方式操作。

存储器装置100可从存储器控制器200接收命令和地址,并且访问存储器单元阵列中由地址选择的的区域。换言之,存储器装置100可对由地址选择的区域执行与命令相对应的操作。例如,存储器装置100可响应于所接收的命令执行写入(编程)操作、读取操作或擦除操作。例如,当接收到编程命令时,存储器装置100可将数据编程在由地址选择的区域中。如果接收到读取命令,则存储器装置100可从由地址选择的区域读取数据。如果接收到擦除命令,则存储器装置100可从由地址选择的区域擦除数据。

存储器装置100可包括读取数据生成器150。读取数据生成器150可生成新读取数据,该新读取数据是通过向从配置成存储数据的存储器单元阵列输出的数据添加附加数据而获得的。换言之,新读取数据不仅可包括通过读取设置在特定区域中的存储器单元而获得的数据,还可包括其他数据。新读取数据中包括的附加数据可包括存储器装置100的状态信息(就绪信息/忙碌信息)。

响应于从存储器控制器200接收的读取命令,存储器装置100可将新读取数据输出到存储器控制器200。换言之,虽然常规存储器装置100仅输出与来自存储器控制器200的读取命令相对应的读取数据,但根据本公开实施例的存储器装置100可将新读取数据输出到存储器控制器200,该新读取数据通过将附加数据添加到读取数据而获得。

存储器控制器200可控制存储装置50的全部操作。

当电源电压被施加到存储装置50时,存储器控制器200可运行固件(fw)。在存储器装置100是闪速存储器装置的情况下,存储器控制器200可运行用于控制主机300和存储器装置100之间的通信的诸如闪存转换层(ftl)的固件。

在实施例中,存储器控制器200可包括从主机300接收数据和逻辑块地址(lba),并且将lba转换为物理块地址(pba)的固件,该pba指示数据待被存储在存储器单元中的地址,存储器单元包括在存储器装置100中。存储器控制器200可将逻辑-物理地址映射表存储在缓冲存储器中,该逻辑-物理地址映射表指示逻辑块地址lba和物理块地址pba之间的映射关系。

存储器控制器200可响应于来自主机300的请求控制存储器装置100执行编程操作、读取操作或擦除操作。例如,如果从主机300接收到编程请求,则存储器控制器200可将编程请求改变为编程命令,并且将编程命令、pba和数据提供到存储器装置100。如果与lba一起从主机300接收到读取请求,则存储器控制器200可将读取请求改变为读取命令,选择与lba相对应的pba,并且将读取命令和pba提供到存储器装置100。如果与lba一起从主机300接收到擦除请求,则存储器控制器200可将擦除请求改变为擦除命令,选择与lba相对应的pba,并且将擦除命令和pba提供到存储器装置100。

在实施例中,存储器控制器200可在没有来自主机300的请求的情况下自主地生成编程命令、地址和数据,并且将编程命令、地址和数据传输到存储器装置100。例如,存储器控制器200可将命令、地址和数据提供到存储器装置100,以执行诸如用于损耗均衡的编程操作和用于垃圾收集的编程操作的后台操作。

存储器控制器200可包括命令生成器210。命令生成器210可生成与从主机300接收的请求相对应的命令。例如,命令生成器210可生成与从主机300接收的编程请求、读取请求或擦除请求相对应的编程命令、读取命令或擦除命令。

在实施例中,命令生成器210可基于存储器装置100的状态信息来确定待被输出到存储器装置100的命令。例如,如果在存储器装置100执行读取操作时接收到指示存储器装置100处于忙碌状态的状态信息,则命令生成器210可输出用于检查存储器装置100的状态的状态检查命令,而不是将后续读取命令输出到存储器装置100。另一方面,如果接收到指示存储器装置100处于就绪状态的状态信息,则命令生成器210可将后续读取命令输出到存储器装置100。

存储器控制器200可包括状态信息确定器220。状态信息确定器220可基于从存储器装置100接收的新读取数据中包括的附加数据,来确定存储器装置100的状态。新读取数据中的附加数据可包括关于存储器装置100的状态的信息。

在实施例中,状态信息确定器220可确定存储器装置100的状态,然后将指示存储器装置100的状态的状态信息输出到命令生成器210。从状态信息确定器220输出的状态信息可包括关于存储器装置100是处于就绪状态还是忙碌状态的信息。

在实施例中,从状态信息确定器220输出的状态信息可包括关于存储器装置100是处于高温状态、需要备份状态还是需要恢复状态的信息。

在实施例中,存储装置50可进一步包括缓冲存储器(未示出)。存储器控制器200可控制主机300和缓冲存储器之间的数据交换。可选地,存储器控制器200可将用于控制存储器装置100的系统数据临时存储在缓冲存储器中。例如,存储器控制器200可将由主机300输入的数据临时存储到缓冲存储器,然后将临时存储在缓冲存储器中的数据传输到存储器装置100。

在各个实施例中,缓冲存储器可用作存储器控制器200的工作存储器或高速缓存存储器。缓冲存储器可存储待由存储器控制器200运行的代码或命令。可选地,缓冲存储器可存储待由存储器控制器200处理的数据。

在实施例中,缓冲存储器可利用sram或诸如双倍数据速率同步动态随机存取存储器(ddrsdram)、ddr4sdram、低功率双倍数据速率第四代(lpddr4)sdram、图形双倍数据速率(gddr)sdram、低功率ddr(lpddr)或rambus动态随机存取存储器(rdram)的dram来实现。

在各个实施例中,缓冲存储器可在存储装置50的外部。在这种情况下,存储装置50外部的易失性存储器装置可执行缓冲存储器的功能。

在实施例中,存储器控制器200可控制两个或更多个存储器装置。在这种情况下,存储器控制器200可以以交织方式控制存储器装置以便提高操作性能。

主机300可使用诸如以下的各种通信方法中的至少一种与存储装置50通信:通用串行总线(usb)、串行at附件(sata)、串列scsi(sas)、高速芯片间(hsic)、小型计算机系统接口(scsi)、外围组件互连(pci)、高速pci(pcie)、高速非易失性存储器(nvme)、通用闪存(ufs)、安全数字(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、双列直插式存储器模块(dimm)、寄存式dimm(rdimm)和/或低负载dimm(lrdimm)通信方法。

图2是示出图1的存储器装置的配置的示图。

参照图2,存储器装置100可包括存储器单元阵列110、外围电路120和控制逻辑130。

存储器单元阵列110可包括多个存储块blk1至blkz。多个存储块blk1至blkz通过行线rl联接至行解码器121。多个存储块blk1至blkz可通过位线bl1至bln联接至页面缓冲器组123。存储块blk1至blkz中的每一个可包括多个存储器单元。在实施例中,多个存储器单元可以是非易失性存储器单元。联接至相同字线的存储器单元可被定义为一个页面。因此,每个存储块可包括多个页面。

行线rl可包括至少一个源极选择线、多个字线和至少一个漏极选择线。

存储器单元阵列110中包括的存储器单元中的每一个可由能够存储单个数据位的单层单元(slc)、能够存储两个数据位的多层单元(mlc)、能够存储三个数据位的三层单元(tlc)或能够存储四个数据位的四层单元(qlc)形成。

外围电路120可在控制逻辑130的控制下,对存储器单元阵列110的选择区域执行编程操作、读取操作或擦除操作。外围电路120可驱动存储器单元阵列110。例如,外围电路120可在控制逻辑130的控制下将各种操作电压施加到行线rl和位线bl1至bln,或者对所施加的电压放电。

外围电路120可包括行解码器121、电压生成器122、页面缓冲器组123、列解码器124、输入/输出电路125和感测电路126。

行解码器121通过行线rl联接至存储器单元阵列110。行线rl可包括至少一个源极选择线、多个字线和至少一个漏极选择线。在实施例中,字线可包括正常字线和虚设字线。在实施例中,行线rl可进一步包括管道选择线。

行解码器121可解码从控制逻辑130接收的行地址radd。行解码器121可响应于经解码的地址来选择存储块blk1至blkz中的至少一个存储块。行解码器121可响应于经解码的地址选择被选择存储块的至少一个字线wl,使得从电压生成器122生成的电压被施加到该至少一个字线wl。

例如,在编程操作期间,行解码器121可将编程电压施加到被选择字线,并且将小于编程电压的编程通过电压施加到未选择字线。在编程验证操作期间,行解码器121可将验证电压施加到被选择字线,并且将大于验证电压的验证通过电压施加到未选择字线。在读取操作期间,行解码器121可将读取电压施加到被选择字线,并且将大于读取电压的读取通过电压施加到未选择字线。

在实施例中,可基于存储块来执行存储器装置100的擦除操作。在擦除操作期间,行解码器121可响应于经解码的地址选择一个存储块。在擦除操作期间,行解码器121可将接地电压施加到与被选择存储块联接的字线。

电压生成器122可在控制逻辑130的控制下操作。电压生成器122可利用供应到存储器装置100的外部电源电压来生成多个电压。具体地,电压生成器122可响应于操作信号opsig生成用于编程操作、读取操作和擦除操作的各种操作电压vop。例如,电压生成器122可在控制逻辑130的控制下,生成编程电压、验证电压、通过电压、读取电压、擦除电压和用于操作的任意其他电压。

在实施例中,电压生成器122可通过调节外部电源电压来生成内部电源电压。由电压生成器122生成的内部电源电压可用作存储器装置100的操作电压。

在实施例中,电压生成器122可使用外部供电电压或内部供电电压生成多个电压。

例如,电压生成器122可包括用于接收内部电源电压的多个泵电容器,并且在控制逻辑130的控制下通过选择性地激活多个泵电容器来生成多个电压。

生成的电压可通过行解码器121被供应到存储器单元阵列110。

页面缓冲器组123可包括第一至第n页面缓冲器pb1至pbn,该第一至第n页面缓冲器pb1至pbn分别通过第一至第n位线bl1至bln联接至存储器单元阵列110。第一至第n页面缓冲器pb1至pbn可在控制逻辑130的控制下操作。具体地,第一至第n页面缓冲器pb1至pbn可响应于页面缓冲器控制信号pbsignals而操作。例如,第一至第n页面缓冲器pb1至pbn可临时存储通过第一至第n位线bl1至bln接收的数据,或在读取操作或验证操作期间感测第一至第n位线bl1至bln的电压或电流。

具体地,在编程操作期间,当编程电压被施加到被选择字线时,第一至第n页面缓冲器pb1至pbn可通过第一至第n位线bl1至bln将通过输入/输出电路125接收的数据data传输到被选择存储器单元。基于所传输的数据data对被选择页面中的存储器单元进行编程。在编程验证操作期间,第一至第n页面缓冲器pb1至pbn可通过感测经由第一至第n位线bl1至bln从被选择存储器单元接收的电压或电流来读取页面数据。

在读取操作期间,第一至第n页面缓冲器pb1至pbn可在列解码器124的控制下,通过第一至第n位线bl1至bln从被选择页面的存储器单元读取数据data,并且将读取的数据data输出到输入/输出电路125。

在擦除操作期间,第一至第n页面缓冲器pb1至pbn可使第一至第n位线bl1至bln浮置或对第一至第n位线bl1至bln施加擦除电压。

列解码器124可响应于列地址cadd在输入/输出电路125和页面缓冲器组123之间传输数据。例如,列解码器124可通过数据线dl与第一至第n页面缓冲器pb1至pbn交换数据,或者通过列线cl与输入/输出电路125交换数据。

列解码器124可包括读取数据生成器150。

在实施例中,在读取操作期间,读取数据生成器150可生成新读取数据,该新读取数据包括通过数据线dl从页面缓冲器组123传输的数据和关于存储器装置100的当前状态的信息两者。换言之,数据生成器150可响应于从存储器控制器200接收的读取命令而生成包括关于存储器装置100的状态的信息的新读取数据,并且将新读取数据输出到存储器控制器200。

输入/输出电路125可将从参照图1描述的存储器控制器200接收的命令cmd或地址addr传输到控制逻辑130,或者可与列解码器124交换数据data。

在读取操作或验证操作期间,感测电路126可响应于使能位信号vrybit而生成参考电流,并且可将从页面缓冲器组123接收的感测电压vpb与由参考电流生成的参考电压进行比较,并且输出通过信号pass或失败信号fail。

控制逻辑130可响应于命令cmd和地址addr而输出操作信号opsig、行地址radd、页面缓冲器控制信号pbsignals和使能位信号vrybit,从而控制外围电路120。例如,控制逻辑130可响应于子块读取命令和地址来控制被选择存储块的读取操作。此外,控制逻辑130可响应于子块擦除命令和地址来控制被选择的存储块中包括的被选择子块的擦除操作。另外,控制逻辑130可响应于通过信号pass或失败信号fail确定目标存储器单元在验证操作期间是否已通过验证。

根据待被存储在相应存储器单元中的数据,可将存储器单元阵列110中包括的存储器单元中的每一个编程为多个编程状态之中的任意一个编程状态。根据待被存储在存储器单元中的数据,可将存储器单元的目标编程状态确定为多个编程状态中的任意一个。

图3是示出根据本公开实施例的存储块的示图。

图3是示出图2的存储器单元阵列110中包括的多个存储块blk1至blkz的代表性存储块blka的电路图。

存储块blka可与彼此平行地布置的第一选择线、字线和第二选择线联接。例如,字线可彼此平行地布置在第一选择线和第二选择线之间。在此,第一选择线可以是源极选择线ssl,第二选择线可以是漏极选择线dsl。

更具体地,存储块blka可包括联接在位线bl1至bln和源极线sl之间的多个串。位线bl1至bln可分别联接至串,并且源极线sl可共同联接至串。串可具有相同的配置;因此,通过示例的方式详细描述联接至第一位线bl1的串st。

串st可包括彼此串联地联接在源极线sl和第一位线bl1之间的源极选择晶体管sst、多个存储器单元f1至f16和漏极选择晶体管dst。每个串st中可包括至少一个源极选择晶体管sst和至少一个漏极选择晶体管dst,并且在每个串st中可包括比附图中所示的存储器单元f1至f16的数量更多的存储器单元。

源极选择晶体管sst的源极可联接至源极线sl,漏极选择晶体管dst的漏极可联接至第一位线bl1。存储器单元f1至f16可串联地联接在源极选择晶体管sst和漏极选择晶体管dst之间。包括在不同串中的源极选择晶体管的栅极可联接至源极选择线ssl,漏极选择晶体管的栅极可联接至漏极选择线dsl,并且存储器单元f1至f16的栅极可联接至多个字线wl1至wl16。在不同串中包括的存储器单元之中,联接至每个字线的一组存储器单元可被称为物理页面ppg。因此,存储块blka中包括的物理页面的数量可对应于字线wl1至wl16的数量。

每个存储器单元可存储1位数据。该存储器单元通常被称为单层单元(slc)。在这种情况下,每个物理页面ppg可存储单个逻辑页面lpg的数据。每个逻辑页面lpg的数据可包括与单个物理页面ppg中包括的存储器单元的数量相对应的数据位。此外,每个存储器单元可存储2位或更多位数据。该存储器单元通常被称为多层单元(mlc)。在这种情况下,每个物理页面ppg可存储两个或更多个逻辑页面lpg的数据。

虽然mlc通常指能够存储2位或更多位数据的存储器单元,为了区分各种更高容量的单元,在更具体的含义上,术语“mlc”指能够存储2位数据的存储器单元,而能够存储3位或更多位数据的存储器单元被称为三层单元(tlc),能够存储4位或更多位数据的存储器单元被称为四层单元(qlc)。本公开实施例可应用于每个存储器单元中存储2位或更多位数据的存储器系统。

在实施例中,每个存储块可具有三维结构。每个存储块可包括堆叠在衬底上的多个存储器单元。存储器单元沿+x方向、+y方向和+z方向布置。

图4是示出图1的存储器装置100的引脚配置的示图。

参照图4,存储器装置100可通过多个输入/输出线与外部控制器通信。例如,存储器装置100可通过数据输入/输出线dq和控制信号线与外部控制器通信,控制信号线包括芯片使能线ce#、写入使能线we#、读取使能线re#、地址锁存使能线ale、命令锁存使能线cle、写入禁止线wp和就绪/忙碌线rb。

存储器装置可通过芯片使能线ce#从外部控制器接收芯片使能信号。存储器装置可通过写入使能线we#从外部控制器接收写入使能信号。存储器装置可通过读取使能线re#从外部控制器接收读取使能信号。存储器装置可通过地址锁存使能线ale从外部控制器接收地址锁存使能信号。存储器装置可通过命令锁存使能线cle从外部控制器接收命令锁存使能信号。存储器装置可通过写入防止线wp#从外部控制器接收写入禁止信号。

在实施例中,存储器装置100可通过就绪/忙碌线rb将就绪/忙碌信号输出到存储器控制器,该就绪/忙碌信号指示存储器装置100处于就绪状态还是忙碌状态。

芯片使能信号可以是用于选择存储器装置100的控制信号。如果芯片使能信号处于“高”状态并且存储器装置100处于“就绪”状态,则存储器装置100可进入低功率待机状态。

写入使能信号可以是用于控制将命令、地址和待被输入到存储器装置的输入数据存储在锁存器中的操作的控制信号。

读取使能信号可以是用于启用串行数据的输出的控制信号。

地址锁存使能信号可以是由主机使用以指示待被输入到输入/输出线dq的信号的类型是命令、地址还是数据的控制信号中的一个。

命令锁存使能信号可以是由主机使用以指示待被输入到输入/输出线dq的信号的类型是命令、地址还是数据的控制信号中的一个。

例如,如果命令锁存使能信号被启用(例如,到逻辑高电平),地址锁存使能信号被停用(例如,到逻辑低电平),并且写入使能信号被启用(例如,到逻辑低电平)且随后被停用(例如,到逻辑高电平),则存储器装置100可识别通过输入/输出行dq输入的信号是命令。

例如,如果命令锁存使能信号被停用(例如,到逻辑低电平),地址锁存使能信号被启用(例如,到逻辑高电平),并且写入使能信号被启用(例如,到逻辑低电平)且随后被停用(例如,到逻辑高电平),则存储器装置100可识别通过输入/输出线dq输入的信号是地址。

写入禁止信号可以是用于禁止存储器装置100执行编程操作或擦除操作的控制信号。

就绪/忙碌信号可以是用于指示存储器装置100的状态的信号。具有低状态(即低电平)的就绪/忙碌信号可指示存储器装置100处于忙碌状态,换言之,正在执行至少一个操作。具有高状态(即高电平)的就绪/忙碌信号可指示存储器装置100处于就绪状态,换言之,因为其不在执行操作,所以可接收命令。

当存储器装置100执行编程操作、读取操作和擦除操作中的任意一种时,就绪/忙碌信号可处于低状态。在本公开的实施例中,参照图1描述的存储器控制器200可基于就绪/忙碌信号,确定终止编程操作或擦除操作的操作结束时间。

图5是用于描述基于由存储器装置执行的操作而通过就绪/忙碌线输出的信号的示图。

图5示出根据由存储器装置100执行的操作,通过图4的就绪/忙碌线rb输出的就绪/忙碌信号。具有高状态的就绪/忙碌信号可指示存储器装置100处于就绪状态。具有低状态的就绪/忙碌信号可指示存储器装置100处于忙碌状态。

在图5中,假设存储器装置100所执行的操作是读取操作。因此,t1至t4可指示执行读取操作所花费的时间。

在实施例中,在t1之前,存储器装置100可不操作。因此,从存储器装置100输出的就绪/忙碌信号可处于高状态。

然而,如果存储器装置100开始读取操作,则从存储器装置100输出的就绪/忙碌信号可处于低状态。换言之,在t1,存储器装置100可开始读取操作,并且从存储器装置100输出的就绪/忙碌信号可处于低状态。

在读取操作开始之后,在从t1至td时段期间,存储器单元阵列110中存储的数据可被传输到页面缓冲器组123,并且在从td至t2时段期间,即在时段trrc期间,可对字线进行放电。在此,读取时间tr可以包括存储器单元阵列110中存储的数据被传输到页面缓冲器组123的从t1至td的时间以及字线放电时间(trrc)。

在实施例中,在存储器单元阵列110中存储的数据被传输到页面缓冲器组123并且完成字线放电之后,从存储器装置100输出的就绪/忙碌信号可处于高状态。换言之,在字线放电完成之前已处于内部忙碌状态internalbusy的存储器装置100可在字线放电完成之后进入内部就绪状态。如果存储器装置100进入内部就绪状态,则可再次输出具有高状态的就绪/忙碌信号。

然而,从外部的角度来看,存储器装置100可能仅在字线放电之前处于忙碌状态(externalbusy)。换言之,由于对字线进行放电与输出读取数据不直接相关,因此可从读取时间中排除放电时间。当从外部看时,存储器装置可能仅在字线放电之前处于忙碌状态。

因此,在图5中,仅在(通过从读取时间tr减去字线放电时间获得的)从t1至td时段期间,存储器装置100可处于忙碌状态(externalbusy)。在字线放电期间,存储器装置100可处于就绪状态。换言之,只有当存储器装置100将在存储器单元阵列110中存储的数据传输到页面缓冲器组123时,存储器装置100才可处于忙碌状态。这是因为字线放电时间不是输出存储器单元阵列110中存储的数据所花费的时间。此外,这是因为可同时执行字线放电和数据的输出。

因此,如果将数据传输到页面缓冲器组123的操作完成,则存储器装置100可进入外部就绪状态。

在实施例中,如果字线放电完成,则在t2至t3时段期间,存储器装置100可将从存储器单元阵列110传输到页面缓冲器组123的数据输出到存储器控制器200(如dataout所指示)。当存储器装置100将数据输出到存储器控制器200时,存储器装置100可处于就绪状态,并且可输出具有高状态的就绪/忙碌信号。

在数据的输出完成后,在t3至t4时段期间,存储器装置100可从存储器控制器200接收状态检查命令,并且执行与状态检查命令相对应的状态检查操作statuscheck。状态检查操作可以是检查存储器装置100是处于忙碌状态还是就绪状态的操作。

在状态检查操作期间,存储器控制器200可确定存储器装置100的状态,然后确定是否输出后续命令。在实施例中,如果存储器装置100处于就绪状态,则存储器控制器200可将用于执行后续操作的命令输出到存储器装置100。如果存储器装置100处于忙碌状态,则存储器控制器200可通过将状态检查命令输出到存储器装置100来检查存储器装置100的状态,直到存储器装置100进入就绪状态。

图6是用于描述减少执行读取操作所花费的时间的实施例的示图。

这里不再描述与图5的术语和时间段相同的图6的术语和时间段。相反,图6的描述侧重于包括数据输出时间和状态检查操作时间的变化的差异。

在实施例中,在从t1至td的时段期间,存储器装置100可处于外部忙碌状态(externalbusy)。换言之,只有在数据从存储器单元阵列110到页面缓冲器组123的传送完成之前,存储器装置100才可处于忙碌状态。在时刻td之后,存储器装置100可处于就绪状态。因此,从存储器装置100输出的就绪/忙碌信号可在从t1至td时段期间处于低状态,并且在时刻td之后处于高状态。

在实施例中,由于同时执行字线放电和存储器装置100的数据输出,因此可在时刻td同时执行字线放电和数据输出。因此,虽然在参照图5描述的实施例中,在完成字线放电的时刻t2数据输出开始,但图6的实施例中的数据输出可在字线放电开始的时刻td执行。执行状态检查操作statuscheck的时间也可随着数据输出的时间提前而提前。

因此,数据输出开始的时间从t2提前至td,并且执行状态检查操作的时间也提前,由此可减少执行读取操作所花费的时间。在此,减少的时间可对应于执行字线放电所花费的时间,换言之,对应于trrc的时间。

为了减少执行读取操作所花费的时间,不仅可使用数据输出时间提前的方法,还可使用减少数据输出时间的方法。数据输出时间的减少可以是执行数据输出操作和状态检查操作所花费的时间的减少。

参照图7更详细地描述数据输出时间的减少。

图7是用于描述在随机读取期间由于数据输出时间减少而产生的效果的示图。

图7示出对联接至单个通道的多个管芯执行的读取操作。在图7中,假设存储器装置100通过多个通道与存储器控制器200联接,并且图7中所示的第一至第四管芯die1至die4是联接至多个通道中的任意一个通道的管芯。在实施例中,可增加或减少联接至每个通道的管芯的数量。在图7的本实施例中,每个管芯可被定义为与单个存储器装置相同。

在图7中,假设对存储器装置100执行的操作是随机读取操作。另外,假设tr是将数据从存储器单元阵列110传输到页面缓冲器组123所花费的时间,tx是数据输出时间,数据输出时间包括将传输到页面缓冲器组123的数据输出到存储器控制器200所花费的时间和检查存储器装置100的状态所花费的时间两者。

在实施例中,存储器控制器200可控制第一至第四管芯die1至die4,使得对第一至第四管芯die1到die4的读取操作按照从第一管芯die1至第四管芯die4的顺序而顺序地开始。

例如,数据可从第一管芯die1中包括的存储器单元阵列110被传输到页面缓冲器组123,然后传输到页面缓冲器组123的数据可被输出到存储器控制器200。

在实施例中,当来自任意一个管芯的数据的输出终止时,来自另一管芯的数据的输出可开始。

例如,可同时执行将数据从分别包括在第一管芯die1和第二管芯die2中的存储器单元阵列110传输到页面缓冲器组123的操作。然而,在数据输出操作期间,可在来自第一管芯die1的数据的输出已完成之后,开始来自第二管芯的数据的输出。

然而,由于参照图7描述的读取操作是随机读取操作,因此其数据输出时间tx可短于顺序地输出大量数据片段的顺序读取操作的数据输出时间。因此,当输出第一管芯die1的数据时,第二管芯die2的存储器单元阵列110中存储的数据可被传输到页面缓冲器组123。

换言之,即使减少了第一管芯die1的数据输出时间tx,因为将数据从第二管芯的存储器单元阵列110传输到页面缓冲器组123花费大量时间,所以也可能不会显著减少执行读取操作所花费的时间。

图8是用于描述在顺序读取和随机读取期间由于数据输出时间减少而产生的效果的示图。

参照图7和图8,图8示出以与图7的方式相同的方式对联接至单个通道的多个管芯执行的读取操作。然而,与图7不同,图8示出当联接至单个通道的管芯的数量相对较大时的顺序读取操作或随机读取操作。换言之,图8示出当联接至单个通道的所有管芯的数据输出时间tx相对较长时执行读取操作所花费的时间。

在图8中,假设tr是将数据从存储器单元阵列110传输到页面缓冲器组123所花费的时间,tx是数据输出时间,数据输出时间包括将传输到页面缓冲器组123的数据输出到存储器控制器200所花费的时间和检查存储器装置100的状态所花费的时间两者。

在下文参照图8的描述中,不再次描述已经参照图7描述过的内容。

在实施例中,可输出第一管芯die1的数据。此后,如果输出第一管芯die1的所有数据片段,则可输出第二管芯die2的数据。具体地,可顺序输出第一至第四管芯die1至die4的数据。

在输出第一管芯die1的数据之后,数据可再次从第一管芯die1的存储器单元阵列110被传输到页面缓冲器组123。然而,可在输出第四管芯die4的所有数据片段之后,才输出传输到页面缓冲器组123的数据,而不是直接输出。因此,在这种情况下,如果数据输出时间减少,则执行读取操作所花费的整体时间可能快速减少。

图9是用于描述在常规读取操作期间存储器控制器和存储器装置之间的通信方法的示图。

图9示出存储装置响应于来自主机的读取请求而执行的常规读取操作。存储装置可包括存储器控制器和存储器装置。

存储器控制器可从主机接收读取请求,并响应于读取请求将读取命令输出到存储器装置。存储器装置可执行与从存储器控制器接收的读取命令相对应的读取操作。

例如,存储器装置100可从存储器单元阵列读取与连同读取命令一起接收的地址相对应的数据,并且将所读取的数据输出到存储器控制器。

存储器控制器可接收来自存储器装置的读取数据,然后检查存储器装置的状态以运行存储器装置的后续读取命令。从存储器控制器输出以检查存储器装置的状态的命令可以是状态检查命令。

此后,存储器装置可执行与状态检查命令相对应的状态检查操作。状态检查操作可以是输出设置在存储器装置中的状态寄存器中存储的状态信息的操作。

存储器控制器可接收与状态检查命令相对应的状态信息,并且检查存储器装置的状态。

例如,存储器控制器可基于状态信息来确定存储器装置是处于就绪状态还是忙碌状态。存储器控制器可基于状态信息来确定存储器装置是处于高温状态、需要备份状态还是需要恢复状态。

如上所述,在常规读取操作期间,存储器控制器接收与读取命令相对应的读取数据,然后将用于检查存储器装置的状态的单独的状态检查命令输出到存储器装置。

然而,因为由存储器控制器输出用于检查存储器装置的状态的状态检查命令和检查存储器装置的状态的操作,所以可减少读取操作的整体效率。

因此,本公开提出一种状态信息作为附加数据包括在读取数据中,从而通过跳过将状态检查命令输出到存储器装置100的操作来提高读取操作的效率的方法。

图10是用于描述根据本公开的在读取操作期间存储器控制器和存储器装置之间的通信方法的示图。

图10示出根据本公开实施例的响应于来自主机300的读取请求由存储装置50执行的读取操作。存储装置50可包括存储器控制器200和存储器装置100。

在实施例中,存储器控制器200可从主机300接收读取请求,并且响应于读取请求将读取命令输出到存储器装置100。存储器装置100可执行与从存储器控制器200接收的读取命令相对应的读取操作。例如,存储器装置100可从存储器单元阵列110读取与连同读取命令一起接收的地址相对应的数据,并且将所读取的数据输出到存储器控制器200。

然而,与图9的情况不同,图10的存储器装置100可将新读取数据输出到存储器控制器200,该新读取数据包括从存储器单元阵列110读取的读取数据和指示存储器装置100的状态的状态信息两者。针对给定的输出,状态信息可包括存储器装置100的就绪/忙碌状态、高温状态、需要备份状态和需要恢复状态之中的至少一种。

存储器控制器200可从存储器装置100接收新读取数据,然后基于状态信息检查存储器装置100的状态。

例如,在存储器装置100的状态处于就绪状态的情况下,存储器控制器200可将用于对存储器装置100执行后续操作的后续命令输出到存储器装置100。另一方面,在存储器装置100的状态处于忙碌状态的情况下,存储器控制器200可将状态检查命令输出到存储器装置100,直到存储器装置100的状态进入就绪状态。随后,如果存储器装置100进入就绪状态,则存储器控制器200可将后续命令输出到存储器装置100。

因此,存储器控制器200可基于新读取数据或状态信息来检查存储器装置100的状态,以便对存储器装置100执行后续读取命令。

图11是用于描述在存储器装置已输出新读取数据之后存储器控制器的操作的示图。

图11示出根据本公开实施例的新读取数据的输出和与新读取数据相对应的操作。图11的存储器控制器200可包括命令生成器210和状态信息确定器220。存储器装置100可包括读取数据生成器150。

在实施例中,读取数据生成器150可响应于从存储器控制器200接收的读取命令readcmd而生成新读取数据。新读取数据可包括从存储器单元阵列110读取的读取数据和指示存储器装置100的状态的状态信息两者。读取数据生成器150可将新读取数据输出到存储器控制器200。

在实施例中,状态信息确定器220可接收从读取数据生成器150输出的新读取数据。由于新读取数据包括与读取命令readcmd相对应的读取数据和指示存储器装置100的状态的状态信息,因此状态信息确定器220可基于新读取数据来确定存储器装置100的状态。状态信息确定器220可确定存储器装置100的状态并生成状态信息,并且将状态信息提供到命令生成器210。

如果状态信息确定器220指示存储器装置100处于就绪状态,则存储器装置100能够执行后续读取命令readcmd。因此,状态信息确定器220可生成指示存储器装置100可执行后续读取命令readcmd的状态信息,并且将状态信息提供到命令生成器210。命令生成器210可基于从状态信息确定器220接收的状态信息,将后续读取命令readcmd输出到存储器装置100。

但是,如果状态信息确定器220指示存储器装置100处于忙碌状态,则存储器装置100不能执行后续读取命令readcmd。因此,状态信息确定器220可生成指示存储器装置100不能执行后续读取命令readcmd的状态信息,并且将状态信息提供到命令生成器210。命令生成器210可基于从状态信息确定器220接收的状态信息,将状态检查命令statuscheckcmd输出到存储器装置100,直到存储器装置100进入就绪状态。

此后,状态信息确定器220可从存储器装置100接收与状态检查命令statuscheckcmd相对应的状态信息,并且基于状态信息确定存储器装置100的状态。状态信息确定器220可根据存储器装置100的确定状态,生成指示存储器装置100处于就绪状态或忙碌状态的状态信息,并且将生成的状态信息输出到命令生成器210。命令生成器210可基于状态信息,确定是再次输出状态检查命令statuscheckcmd,还是输出后续读取命令readcmd,基于确定的结果生成命令,然后将生成的命令输出到存储器装置100。

图12是用于描述在字线放电完成之前完成数据输出时存储器装置的状态检查的示图。

参照图4、图6和图12,图12示出当与字线放电同时执行数据输出时,通过就绪/忙碌线rb输出的就绪/忙碌信号。除了数据输出时间dataout短于字线放电时间trrc的事实之外,图12的描述与图6的描述相同;因此,这里省略常见的问题。

在实施例中,在时刻t1,存储器装置100可开始与从存储器控制器200接收的读取命令相对应的读取操作,使得可输出具有低状态的就绪/忙碌信号。此后,在时刻td,存储器装置100可在字线放电的同时,将传输到页面缓冲器组123的数据输出到存储器控制器200。在时刻td之后,虽然存储器装置100在内部处于忙碌状态(字线放电),但在外部处于就绪状态。因此,可输出具有高状态的就绪/忙碌信号。

与图6的情况不同,在字线放电完成之前,可完成数据输出。换言之,虽然是在td至t8时段期间执行字线放电,但是可在td至t7相对较短的时段期间执行数据输出。

在本公开的实施例中,由于与读取命令相对应的新读取数据包括存储器装置100的状态信息,因此在时刻t7完成输出的新读取数据可包括指示存储器装置100处于忙碌状态的状态信息。换言之,因为存储器装置100正在执行字线放电,所以存储器装置100可处于忙碌状态。

因此,状态信息确定器220可基于新读取数据中包括的状态信息,输出指示存储器装置100处于忙碌状态的状态信息。命令生成器210可基于从状态信息确定器220接收的状态信息输出状态检查命令。存储器装置100可响应于状态检查命令来执行状态检查操作statuscheck,并且将作为执行结果的状态信息输出到存储器控制器200。

在从t7至t8时段期间,由于字线正在放电,由存储器装置100输出的状态信息可包括指示忙碌状态的信息。因此,在字线放电完成之前,存储器控制器200可将状态检查命令输出到存储器装置100,并且存储器装置100可将状态信息输出到存储器控制器200。

在时刻t8之后,如果从存储器装置100输出的状态信息包括指示就绪状态的信息,则存储器控制器200可将后续命令输出到存储器装置100。

图13是用于描述根据本公开实施例的存储器装置的操作的示图。

参照图13,在步骤s1301中,存储器装置可从存储器控制器接收读取命令。读取命令可对应于从主机接收的读取请求。存储器装置可执行与接收的读取命令相对应的读取操作。读取操作可包括读取存储器单元阵列中存储的数据的操作、字线放电操作和数据输出操作。

在步骤s1303中,存储器装置可将存储器单元阵列中存储的数据片段之中的、与读取命令相对应的数据传输到页面缓冲器组。如果与读取命令相对应的数据被传输到页面缓冲器组,则存储器装置可生成新读取数据,该新读取数据包括传输到页面缓冲器组的数据和指示存储器装置是处于就绪状态还是忙碌状态的信息两者(在步骤s1305中)。

换言之,存储器装置可生成包括读取数据和存储器装置的状态信息的新读取数据,然后将生成的新读取数据输出到存储器控制器(在步骤s1307中)。存储器控制器可基于从存储器装置输出的新读取数据来检查存储器装置的状态,然后确定待被输出到存储器装置的后续命令。

图14是用于描述根据本公开实施例的存储器控制器的操作的示图。

参照图14,在步骤s1401中,存储器控制器可确定存储器装置的状态。存储器控制器可基于从存储器装置接收的新读取数据中包括的状态信息确定存储器装置的状态。存储器装置的状态可以是就绪状态或忙碌状态。在实施例中,存储器装置的状态可以是包括就绪状态和忙碌状态的各种状态中的任意一种。

在步骤s1403中,存储器控制器可确定存储器装置是否处于就绪状态,即是否具有就绪状态。如果存储器装置处于就绪状态(在s1403为是),则存储器控制器可输出后续命令(在步骤s1409中)。后续命令可以是除检查存储器装置的状态的命令之外的命令。

然而,如果存储器装置处于忙碌状态,换言之,如果存储器装置不处于就绪状态(在s1403为否),则存储器控制器可将用于再次检查存储器装置状态的状态检查命令输出到存储器装置(在步骤s1405中)。由于在存储器装置处于就绪状态时,存储器装置可执行后续命令,因此存储器控制器可将状态检查命令输出到存储器装置,直到存储器装置进入就绪状态。

此后,存储器控制器可从存储器装置接收与状态检查命令相对应的状态信息(在步骤s1407中)。如果存储器控制器接收到状态信息,则存储器控制器可再次进行至步骤s1403,并且基于状态信息确定存储器装置是否处于就绪状态。如果存储器装置进入就绪状态,存储器控制器可挂起状态检查的输出,然后输出用于执行后续操作的后续命令。

图15是示出图1的存储器控制器的示例的示图。

存储器控制器1000联接至主机和存储器装置。响应于来自主机的请求,存储器控制器1000可访问存储器装置。例如,存储器控制器1000可控制存储器装置的写入操作、读取操作、擦除操作和后台操作。存储器控制器1000可在存储器装置和主机之间提供接口。存储器控制器1000可驱动用于控制存储器装置的固件。

参照图15,存储器控制器1000可包括处理器1010、存储器缓冲器1020、错误校正码(ecc)电路1030、主机接口1040、缓冲器控制器1050、存储器接口1060和总线1070。

总线1070可在存储器控制器1000的组件之间提供通道。

处理器1010可控制存储器控制器1000的全部操作并且执行逻辑运算。处理器1010可通过主机接口1040与外部主机通信,并且通过存储器接口1060与存储器装置通信。另外,处理器1010可通过缓冲器控制器1050与存储器缓冲器1020通信。处理器1010可通过使用作为工作存储器、高速缓存存储器或缓冲存储器的存储器缓冲器1020来控制存储装置的操作。

处理器1010可执行闪存转换层(ftl)的功能。处理器1010可通过ftl将由主机提供的逻辑块地址(lba)转换为物理块地址(pba)。ftl可接收lba并使用映射表将lba转换为pba。根据映射单元,可以以各种方式修改使用ftl的地址映射方法。代表性地址映射方法可包括页面映射方法、块映射方法和混合映射方法。

处理器1010可使从主机接收的数据随机化。例如,处理器1010可使用随机化种子来使从主机接收的数据随机化。经随机化的数据可被提供到存储器装置以进行存储,并且可被编程到存储器单元阵列。

处理器1010可驱动软件或固件来执行随机化操作或去随机化操作。

在实施例中,处理器1010可基于从存储器装置100接收的新读取数据来确定存储器装置100的状态。由于新读取数据不仅包括存储器装置100中存储的数据,而且还包括关于存储器装置100的状态的信息,因此处理器1010可基于新读取数据来确定存储器装置100的状态。

换言之,由于新读取数据包括存储器装置100的状态信息,因此当确定存储器装置100处于就绪状态时,处理器1010可不向存储器装置100输出状态检查命令。因此,可减少存储器装置100执行读取操作所花费的时间。

处理器1010可基于存储器装置100的确定状态,将后续读取命令或用于检查存储器装置100的状态的状态检查命令输出到存储器装置100。在实施例中,处理器1010可将状态检查命令输出到存储器装置100,直到存储器装置100进入就绪状态。

存储器缓冲器1020可用作处理器1010的工作存储器、高速缓存存储器或缓冲存储器。存储器缓冲器1020可存储待由处理器1010运行的代码和命令。存储器缓冲器1020可存储待由处理器1010处理的数据。存储器缓冲器1020可包括静态ram(sram)或动态ram(dram)。

ecc电路1030可执行错误校正。ecc电路1030可基于待通过存储器接口1060写入存储器装置的数据执行ecc编码操作。经ecc编码的数据可通过存储器接口1060被传输到存储器装置。ecc电路1030可对通过存储器接口1060从存储器装置接收的数据执行ecc解码操作。例如,ecc电路1030可作为存储器接口1060的组件被包括在存储器接口1060中。

主机接口1040可在处理器1010的控制下与外部主机通信。主机接口1040可使用诸如以下的各种通信方法中的至少一种来执行通信:通用串行总线(usb)、串行at附件(sata)、串列scsi(sas)、高速芯片间(hsic)、小型计算机系统接口(scsi)、外围组件互连(pci)、高速pci(pcie)、高速非易失性存储器(nvme)、通用闪存(ufs)、安全数字(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、双列直插式存储器模块(dimm)、寄存式dimm(rdimm)和/或低负载dimm(lrdimm)通信方法。

缓冲器控制器1050可在处理器1010的控制下控制存储器缓冲器1020。

存储器接口1060可在处理器1010的控制下与存储器装置通信。存储器接口1060可通过通道与存储器装置通信命令、地址和数据。

例如,存储器控制器1000可既不包括存储器缓冲器1020又不包括缓冲器控制器1050。

例如,处理器1010可通过使用代码来控制存储器控制器1000的操作。处理器1010可从存储器控制器1000中设置的非易失性存储器装置(例如,只读存储器)加载代码。可选地,处理器1010可通过存储器接口1060从存储器装置加载代码。

例如,存储器控制器1000的总线1070可被划分为控制总线和数据总线。数据总线可在存储器控制器1000中传输数据。控制总线可在存储器控制器1000中传输诸如命令和地址的控制信息。数据总线和控制总线可彼此分离,并且可既不相互干扰,也不相互影响。数据总线可联接至主机接口1040、缓冲器控制器1050、ecc电路1030和存储器接口1060。控制总线可联接至主机接口1040、处理器1010、缓冲器控制器1050、存储器缓冲器1020和存储器接口1060。

图16是示出根据本公开实施例的应用了存储装置的存储卡系统2000的框图。

参照图16,存储卡系统2000可包括存储器控制器2100、存储器装置2200和连接器2300。

存储器控制器2100联接至存储器装置2200。存储器控制器2100可访问存储器装置2200。例如,存储器控制器2100可控制存储器装置2200的读取操作、写入操作、擦除操作和后台操作。存储器控制器2100可在存储器装置2200和主机之间提供接口。存储器控制器2100可驱动用于控制存储器装置2200的固件。存储器装置2200可与参照图2描述的存储器装置100的方式以相同的方式来实现。

在实施例中,存储器控制器2100可包括诸如随机存取存储器(ram)、处理器、主机接口和存储器接口以及ecc电路的组件。

存储器控制器2100可通过连接器2300与外部装置通信。存储器控制器2100可基于特定通信协议与外部装置(例如,主机)通信。在实施例中,存储器控制器2100可通过诸如以下的各种通信协议中的至少一种与外部装置通信:通用串行总线(usb)、多媒体卡(mmc)、嵌入式mmc(emmc)、外围组件互连(pci)、高速pci(pci-e)、高级技术附件(ata)、串行at附件(sata)、并行ata(pata)、小型计算机系统接口(scsi)、增强型小型磁盘接口(esdi)、电子集成驱动器(ide)、火线、通用闪存(ufs)、wi-fi、蓝牙和/或高速非易失性存储器(nvme)协议。在实施例中,连接器2300可由上述各种通信协议中的至少一种来定义。

在实施例中,存储器控制器2100可基于从存储器装置2200接收的新读取数据来确定存储器装置2200的状态。由于新读取数据不仅包括存储器装置2200中存储的数据,而且还包括关于存储器装置2200的状态的信息,所以存储器控制器2100可基于新读取数据来确定存储器装置2200的状态。

换言之,由于新读取数据包括存储器装置2200的状态信息,如果确定存储器装置2200处于就绪状态,则存储器控制器2100可不将状态检查命令输出到存储器装置2200。因此,可减少存储器装置2200执行读取操作所花费的时间。

存储器控制器2100可基于存储器装置2200的确定状态,将用于检查存储器装置2200的状态的后续读取命令或状态检查命令输出到存储器装置2200。在实施例中,存储器控制器2100可将状态检查命令输出到存储器装置2200,直到存储器装置2200进入就绪状态。

在实施例中,存储器装置2200可由诸如以下的各种非易失性存储器装置中的任意一种来实施:电可擦除可编程rom(eeprom)、nand闪速存储器、nor闪速存储器、相变ram(pram)、电阻式ram(reram)、铁电ram(fram)和/或自旋转移力矩磁性ram(stt-mram)。

在实施例中,存储器控制器2100和存储器装置2200可集成到单个半导体装置中以形成诸如以下的存储卡:个人计算机存储卡国际协会(pcmcia)、紧凑型闪存卡(cf)、智能媒体卡(sm或smc)、记忆棒、多媒体卡(mmc、rs-mmc或微型mmc)、sd卡(sd、迷你sd、微型sd或sdhc)或通用闪存(ufs)。

图17是示出根据本公开实施例的应用了存储装置的固态驱动器(ssd)系统3000的框图。

参照图17,ssd系统3000可包括主机3100和ssd3200。ssd3200可通过信号连接器3001与主机3100交换信号sig,并且可通过电源连接器3002接收电力pwr。ssd3200可包括ssd控制器3210、多个闪速存储器3221至322n、辅助电源3230和缓冲存储器3240。

在实施例中,ssd控制器3210可执行上文参照图1描述的存储器控制器200的功能。

ssd控制器3210可响应于从主机3100接收的信号sig来控制多个闪速存储器3221至322n。在实施例中,信号sig可基于主机3100和ssd3200之间的接口。例如,信号sig可由诸如以下的各种接口中的至少一种来定义:通用串行总线(usb)、多媒体卡(mmc)、嵌入式mmc(emmc)、外围组件互连(pci)、高速pci(pci-e)、高级技术附件(ata)、串行ata(sata)、并行ata(pata)、小型计算机系统接口(scsi)、增强型小型磁盘接口(esdi)、电子集成驱动器(ide)、火线、通用闪存(ufs)、wi-fi、蓝牙和/或高速非易失性存储器(nvme)接口。

在实施例中,ssd控制器3210可基于从相应的(多个)闪速存储器或存储器接收的新读取数据确定多个闪速存储器3221至322n中的每一个的状态。由于新读取数据不仅包括在多个闪速存储器3221至322n中的一个或多个中存储的数据,而且还包括关于相应的(多个)闪速存储器或存储器的(多个)状态的信息,因此,ssd控制器3210可基于新读取数据来确定这些闪速存储器的状态。

换言之,由于新读取数据包括关于从中读取数据的(多个)闪速存储器的(多个)状态的信息,因此,ssd控制器3210可不将状态检查命令输出到这些闪速存储器,而是将这些闪速存储器确定为处于就绪状态。因此,可减少多个闪速存储器3221至322n执行读取操作所花费的时间。

ssd控制器3210可基于多个闪速存储器3221至322n的确定状态将后续读取命令或用于检查多个闪速存储器3221至322n的状态的状态检查命令输出到多个闪速存储器3221至322n中的任意一个。在实施例中,ssd控制器3210可将状态检查命令输出到多个闪速存储器3221至322n,直到多个闪速存储器3221至322n进入就绪状态。

辅助电源3230可通过电源连接器3002联接至主机3100。辅助电源3230可被供应以来自主机3100的电力pwr,并且可由电力pwr充电。当来自主机3100的电力供应被不平稳地执行时,辅助电源3230可供应ssd3200的电力。在实施例中,辅助电源3230可位于ssd3200内部或位于ssd3200外部。例如,辅助电源3230可设置在主板中,并且可向ssd3200供应辅助电力。

缓冲存储器3240用作ssd3200的缓冲存储器。例如,缓冲存储器3240可临时存储从主机3100接收的数据或从多个闪速存储器3221至322n接收的数据,或者可临时存储闪速存储器3221至322n的元数据(例如,映射表)。缓冲存储器3240可包括诸如dram、sdram、ddrsdram、lpddrsdram和gram的各种易失性存储器或者诸如fram、reram、stt-mram和pram的各种非易失性存储器中的任意一种。

图18是示出应用了根据本公开实施例的存储装置的用户系统4000的框图。

参照图18,用户系统4000可包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400和用户接口4500。

应用处理器4100可运行用户系统4000中包括的组件、操作系统(os)或用户程序。在实施例中,应用处理器4100可包括用于控制用户系统4000中包括的组件的控制器、接口、图形引擎等。应用处理器4100可被设置为片上系统(soc)。

在实施例中,应用处理器4100可基于从存储模块4400接收的新读取数据来确定存储模块4400的状态。由于新读取数据不仅包括存储模块4400中存储的数据,而且还包括关于存储模块4400的状态的信息,因此应用处理器4100可基于新读取数据来确定存储模块4400的状态。

换言之,由于新读取数据包括存储模块4400的状态信息,如果接收的状态信息指示存储模块4400处于就绪状态,则应用处理器4100可不将状态检查命令输出到存储模块4400。因此,可减少存储模块4400执行读取操作所花费的时间。

应用处理器4100可基于存储模块4400的确定状态将后续读取命令或用于检查存储模块4400的状态的状态检查命令输出到存储模块4400。在实施例中,应用处理器4100可将状态检查命令输出到存储模块4400,直到存储模块4400进入就绪状态。

存储器模块4200可用作用户系统4000的主存储器、工作存储器、缓冲存储器或高速缓存存储器。存储器模块4200可包括诸如dram、sdram、ddrsdram、ddr2sdram、ddr3sdram、lpddrsdarm、lpddr2sdram和lpddr3sdram的易失性ram或者诸如pram、reram、mram和/或fram的非易失性ram。在实施例中,应用处理器4100和存储器模块4200可基于堆叠式封装(pop)进行封装,然后可被设置为单个半导体封装。

网络模块4300可与外部装置通信。例如,网络模块4300可支持诸如以下的无线通信:码分多址(cdma)、全球移动通信系统(gsm)、宽带cdma(wcdma)、cdma-2000、时分多址(tdma)、长期演进(lte)、wimax、wlan、uwb、蓝牙或wi-fi通信。在实施例中,网络模块4300可包括在应用处理器4100中。

存储模块4400可在其中存储数据。例如,存储模块4400可存储从应用处理器4100接收的数据。可选地,存储模块4400可将存储模块4400中存储的数据传输到应用处理器4100。在实施例中,存储模块4400可被实施为诸如以下的非易失性半导体存储器装置:相变ram(pram)、磁阻ram(mram)、电阻ram(rram)、nand闪速存储器、nor闪速存储器或具有三维(3d)结构的nand闪速存储器。在实施例中,存储模块4400可被设置为诸如用户系统4000的存储卡或外部驱动器的可移动存储介质(即,可移动驱动器)。

在实施例中,存储模块4400可包括多个非易失性存储器装置,并且多个非易失性存储器装置中的每一个可与上文参照图2和图3描述的存储器装置100以相同的方式操作。存储模块4400可与上文参照图1描述的存储装置50的方式以相同的方式操作。

用户接口4500可包括用于将数据或指令输入到应用处理器4100或将数据输出到外部装置的接口。在实施例中,用户接口4500可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电装置的用户输入接口。用户接口4500可进一步包括诸如液晶显示器(lcd)、有机发光二极管(oled)显示装置、有源矩阵oled(amoled)显示装置、led、扬声器、监视器等的用户输出接口。

根据本公开的实施例,存储器装置可将包括状态信息的新读取数据输出到存储器控制器,并且存储器控制器可基于新读取数据确定存储器装置的状态,并且基于确定状态的结果输出状态检查命令或后续命令。

本文已公开各个实施例,尽管使用了特定术语,但它们仅在一般和描述性意义上来使用和解释,而非为了限制的目的。在一些情况下,如本领域普通技术人员在提交本申请时所显而易见的,除非另有特别说明,否则结合特定实施例描述的特征、特性和/或元件可单独使用,或者与结合其他实施例描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解的是,可在不脱离如所附权利要求所阐述的本发明的精神和范围的情况下对形式和细节进行各种改变。

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