存储器装置及其操作方法
文献发布时间:2023-06-19 10:19:37
本申请要求于2019年9月19日提交的韩国专利申请号10-2019-0115350的优先权,其全部内容通过引用并入本文。
技术领域
本公开涉及电子装置,并且更具体地涉及存储器装置及其操作方法。
背景技术
存储装置是用于在诸如计算机或智能电话的主机装置的控制下存储数据的装置。存储装置可以包括用于存储数据的存储器装置和用于控制存储器装置的存储器控制器。存储器装置被分类为易失性存储器装置和非易失性存储器装置。
易失性存储器装置是仅在供电时用于存储数据并且在电源断开时丢失所存储的数据的装置。易失性存储器装置包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置在即使在断电时也不会丢失所存储的数据。非易失性存储器装置包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存等。
发明内容
本公开的实施例提供了更有效地利用训练数据的存储器装置及其操作方法。
根据本公开的实施例,一种执行训练操作和正常操作的存储器装置包括:训练操作控制器,被配置为在向存储器装置供电时,利用对存储器装置进行控制的存储器控制器来执行训练操作;训练缓冲器,被配置为存储由训练操作控制器在训练操作期间使用的训练数据;以及正常操作控制器,被配置为在训练操作完成之后,在存储器控制器的控制下执行正常操作。正常操作控制器在正常操作期间,根据存储器控制器的请求将训练缓冲器中存储的训练数据输出到存储器控制器。
根据本公开的实施例,一种操作执行训练操作和训练操作之后的正常操作的存储器装置的方法,包括:在向存储器装置供电时,响应于从对存储器装置进行控制的存储器控制器接收的训练命令来执行训练操作;在训练操作期间,将从存储器控制器提供的训练数据存储在训练缓冲器中;以及在训练操作完成之后,在存储器控制器的控制下,使用训练缓冲器中存储的训练数据来执行正常操作。
根据本公开的实施例,一种操作存储器装置的方法,该方法包括:执行训练操作,以将训练数据存储到训练缓冲器中;对页缓冲器执行正常操作,以临时存储从存储器单元阵列读取的数据或待存储到存储器单元阵列中的数据;以及对训练缓冲器执行正常操作,以利用其他数据来覆盖训练缓冲器中存储的一些或全部训练数据,从训练缓冲器中读取一些或全部训练数据,或者从训练缓冲器中擦除一些或全部训练数据,其中在训练操作完成之后执行正常操作。
根据本技术的存储器装置及其操作方法提供了改进的训练数据可用性。
通过以下结合附图的详细描述,本公开的这些和其他特征和优点对本发明的技术人员将变得显而易见。
附图说明
图1是图示根据本公开的一些实施例的存储装置的框图。
图2图示了根据本公开的一些实施例的存储装置的训练操作和正常操作。
图3是图示根据本公开的一些实施例的执行训练操作和正常操作的存储器装置的配置的框图。
图4图示了根据本公开的一些实施例的存储器装置。
图5图示了根据本公开的一些实施例的图4的存储器块BLKi。
图6是图示根据本公开的一些实施例的对训练数据的正常操作的时序图。
图7图示了根据本公开的一些实施例的利用安全密钥数据来执行训练的存储装置。
图8图示了根据本公开的一些实施例的利用映射数据来执行训练的存储装置。
图9图示了根据本公开的一些实施例的利用识别数据来执行训练的存储装置。
图10是图示根据本公开的一些实施例的训练操作和正常操作的流程图。
图11是图示根据本公开的一些实施例的在训练操作之后的正常操作的流程图。
图12是图示根据本公开的一些实施例的包括存储装置的存储器卡系统的框图。
图13是图示根据本公开的实施例的包括存储装置的固态驱动器(SSD)系统的框图。
图14是图示根据本公开的实施例的包括存储装置的用户系统的框图。
具体实施方式
根据本说明书或申请中公开的概念的实施例的具体结构或功能描述被示出仅用于描述根据本公开的概念的实施例。根据本公开的概念的实施例可以以各种形式来执行,并且描述不限于在本说明书或申请中描述的实施例。
在下文中,将参考附图来描述本公开的实施例,使得本领域技术人员可以容易地实现本公开的技术精神。
图1是图示根据本公开的一些实施例的存储装置的框图。
参考图1,存储装置50可以包括存储器装置100和用于控制存储器装置100的操作的存储器控制器200。
存储装置50可以在诸如蜂窝电话、智能电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视、平板电脑或车载信息娱乐系统的主机300的控制下存储数据。
根据用于与主机300通信的主机接口,存储装置50可以被制造为各种类型的存储装置中的任一个。例如,存储装置50可以被配置为各种类型的存储装置中的任一个,包括诸如SSD、MMC、eMMC、RS-MMC和micro-MMC的多媒体卡、诸如SD、mini-SD和micro-SD的安全数字卡、通用串行总线(USB)存储装置、通用闪存(UFS)装置、诸如个人计算机存储器卡国际协会(PCMCIA)卡的存储装置、诸如外围部件互连(PCI)卡的存储装置、诸如PCI快速(PCI-E)卡、紧凑式闪存(CF)卡、智能媒体卡和记忆棒的存储装置。
存储装置50可以被制造为各种类型的封装中的任一个。例如,存储装置50可以被制造为各种类型的封装类型中的任一个,诸如叠层封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板载芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
存储器装置100可以存储数据。存储器装置100可以响应于存储控制器200的控制而操作。存储器装置100可以包括存储器单元阵列,存储器单元阵列包括用于存储数据的多个存储器单元。
每个存储器单元可以被配置为存储一个数据位的单级单元(SLC)、存储两个数据位的多级单元(MLC)、存储三个数据位的三级单元(TLC)或存储四个数据位的四级单元(QLC)。
存储器单元阵列可以包括多个存储器块。每个存储器块可以包括多个存储器单元。每个存储器块可以包括多个页。在本公开的实施例中,页可以指示用于在存储器装置100中存储数据或读取存储器装置100中存储的数据的基本单位。存储器块可以是用于擦除数据的基本单位。
在本公开的一个实施例中,存储器装置100可以是双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功率双倍数据速率4(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功耗DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪存、垂直NAND闪存、NOR闪存装置、电阻式随机存取存储器(RRAM)、相变存储器(PRAM)、磁阻式随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、自旋转移力矩随机存取存储器(STT-RAM)等。在本文中,为了便于描述,假定存储器装置100是NAND闪存。
存储器装置100可以从存储器控制器200接收命令和地址。存储器装置100可以被配置为访问由存储器单元阵列中所接收的地址选择的区域。访问选定区域可以指示在选定区域上执行与所接收的命令相对应的操作。例如,存储器装置100可以执行写入操作(编程操作)、读取操作和擦除操作。在编程操作期间,存储器装置100可以将数据编程到由所接收的地址选择的区域。在读取操作期间,存储器装置100可以从由所接收的地址选择的区域读取数据。在擦除操作期间,存储器装置100可以擦除由所接收的地址选择的区域中存储的数据。
在本公开的实施例中,存储器装置100可以包括训练操作控制器110、正常操作控制器120和训练缓冲器130。
训练操作控制器110可以在存储器装置100和存储器控制器200之间执行训练操作。例如,训练操作可以包括占空比校正训练操作、读取训练操作和写入训练操作。训练操作可以指示对存储器装置100和存储器控制器200之间交换的信号的相位、振幅等进行优化,使得存储器装置100和存储器控制器200可以在没有错误的情况下交换数据的操作。训练操作控制器110可以在训练操作期间,将从存储器控制器200接收的训练数据存储到训练缓冲器130中。训练数据可以在训练操作期间或在完成训练操作之后被存储到训练缓冲器130中。训练数据可以包括用于占空比校正(DCC)训练操作、读取训练操作或写入训练操作的同步数据,或者用于在完成训练操作之后执行的正常操作的正常数据。同步数据可以具有存储器控制器200和存储器装置100之间的训练操作所需的数据模式。同步数据可以具有存储器控制器200和存储器装置100已知的预定数据模式,以将存储器控制器200和存储器装置100之间交换的信号同步。
正常操作控制器120可以在完成训练操作之后执行正常操作。正常操作可以包括编程操作、读取操作和擦除操作。正常操作控制器120可以对训练缓冲器130中存储的训练数据执行正常操作。例如,在编程操作期间,一些或全部训练数据可以利用来自存储器控制器200的其他数据来被覆盖。备选地,可以执行将一些或全部训练数据传送到存储器控制器200的读取操作。备选地,可以执行擦除训练缓冲器130中存储的一些或全部训练数据的擦除操作。
正常操作控制器120可以独立于存储器装置100中包括的存储器单元阵列的单元操作而对训练缓冲器130中存储的训练数据执行正常操作。在本文中,术语“单元操作”可以指示在正常操作控制器120的控制下,将待编程到存储器单元阵列中的数据或从存储器单元阵列读取的数据临时存储到页缓冲器中。因此,不管页缓冲器是用于临时存储待被编程到存储器单元阵列中的数据还是存储从存储器单元阵列中读取的数据,正常操作控制器120可以对训练缓冲器130中存储的训练数据执行正常操作。具体地,正常操作控制器120可以对训练数据的同步数据或正常数据执行正常操作。
由于训练数据被存储到训练缓冲器130中,即使在完成训练操作之后重置页缓冲器,也可以根据存储器控制器200的请求来使用训练数据。
存储器控制器200可以控制存储装置50的整体操作。
当向存储装置50供电时,存储器控制器200可以执行固件(FW)。固件FW可以包括接收从主机300输入的请求或向主机300输出响应的主机接口层(HIL)、管理主机300的接口与存储器装置100的接口之间的操作的闪存转换层(FTL)、以及向存储器装置100提供命令或从存储器装置100接收响应的闪存接口层(FIL)。
存储器控制器200可以从主机300接收数据和逻辑地址(LA),并且可以将逻辑地址(LA)转换为物理地址(PA),物理地址(PA)指示存储器装置100中包括的数据被存储的存储器单元的地址。LA可以是逻辑块地址(LBA),并且PA可以是物理块地址(PBA)。
存储器控制器200可以根据主机300的请求来控制存储器装置100执行编程操作、读取操作或擦除操作。在编程操作期间,存储器控制器200可以向存储器装置100提供编程命令、PBA和数据。在读取操作期间,存储器控制器200可以向存储器装置100提供读取命令和PBA。在擦除操作期间,存储器控制器200可以向存储器装置100提供擦除命令和PBA。
存储器控制器200可以独立于来自主机300的请求来控制存储器装置100执行编程操作、读取操作或擦除操作。例如,存储器控制器200可以控制存储器装置100来执行用于执行后台操作(例如,损耗均衡、垃圾收集或读取回收)所需的编程操作、读取操作或擦除操作。
在本公开的一个实施例中,存储器控制器200可以包括训练管理器210。
训练管理器210可以执行训练操作,使得可以在不受工艺、电压和温度的影响的情况下,在存储器控制器200和存储器装置100之间正确地传送数据。训练操作可以指示对存储器装置100和存储器控制器200之间交换的信号的相位、振幅等进行优化使得存储器装置100和存储器控制器200可以在没有错误的情况下交换正确的数据的操作。训练管理器210可以生成训练数据来执行训练操作。
训练管理器210可以执行DCC训练操作、读取训练操作或写入训练操作。训练管理器210可以控制存储器装置100在训练操作期间或在完成训练操作之后将训练数据存储到训练缓冲器130中。存储器控制器200可以控制存储器装置100以在完成训练操作之后,使用训练缓冲器130中存储的训练数据来执行正常操作。
主机300可以使用各种通信方法(例如,通用串行总线(USB)、串行AT附件(SATA)、串行附件SCSI(SAS)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、外围部件互连(PCI)、PCI Express(PCIe)、非易失性存储器Express(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储模块(DIMM)、注册的DIMM(RDIMM)和减载DIMM(LRDIMM))中的至少一个与存储装置50通信。
图2图示了根据本公开的一些实施例的存储装置的训练操作和正常操作。
参考图2,存储器装置100中执行的操作可以被分类为训练操作和正常操作。训练操作可以指示对存储器装置100和存储器控制器200之间交换的信号的相位、振幅等进行优化使得存储器装置100和存储器控制器200可以在没有错误的情况下交换数据的操作。训练操作可以包括DCC训练、读取训练和写入训练。当向存储装置50供电时,存储器控制器200和存储器装置100可以执行训练操作来正确地交换数据。正常操作可以在完成训练操作之后执行。正常操作可以包括编程操作、读取操作和擦除操作。
在DCC训练期间,存储器控制器可以布置外部时钟信号、内部时钟信号、数据选通信号DQS、写入使能信号WE、读取使能信号RE或数据信号DQ的占空比。例如,占空比可以被布置为使得外部时钟信号、内部时钟信号、数据选通信号DQS、写入使能信号WE、读取使能信号RE和数据信号DQ中的至少两个之间的相位差可以变为0°、45°、90°或任何角度。
读取训练可以是对存储器控制器200和存储器装置100之间交换的信号进行优化使得存储器装置100中存储的数据和从存储器装置100读取的数据可以相同。在读取训练期间,存储器控制器200可以执行从存储器装置100的页缓冲器读取数据的操作。通过读取训练,外部时钟信号、内部时钟信号、数据选通信号DQS、读取使能信号RE或数据信号DQ可以被布置。
写入训练可以是对存储器控制器200和存储器装置100之间交换的信号进行优化使得存储器装置100中编程的数据和从存储器装置100读取的数据可以相同。在写入训练期间,训练管理器210可以执行将数据编程到存储器装置100的页缓冲器中的操作。通过写入训练,外部时钟信号、内部时钟信号、数据选通信号DQS、写入使能信号WE或数据信号DQ可以被布置。在写入训练期间,训练管理器210可以将训练数据写入存储器装置100的页缓冲器,并且再次从存储器装置100的页缓冲器读取训练数据。训练管理器210可以在写入训练期间将训练数据写入存储器装置100的页缓冲器。训练数据可以从主机接收或由存储器控制器200生成。存储器控制器200可以将写入页缓冲器的训练数据存储到训练缓冲器130中。
当训练操作完成时,存储器控制器200和存储器装置100可以交换数据并执行正常操作。正常操作可以包括编程操作、读取操作和擦除操作。当执行正常操作时,数据可以被传送到页缓冲器。具体地,待被编程到存储器装置100中包括的存储器单元阵列中的数据可以被传送到页缓冲器。备选地,从存储器单元阵列读取的数据可以被传送到页缓冲器。在将新数据传送到页缓冲器之前,可以重置页缓冲器。由于页缓冲器的重置,可能无法使用已临时存储在页缓冲器中的现有训练数据。相反,即使页缓冲器被重置,训练缓冲器130中存储的训练数据也可以是可用的。因此,即使在完成训练操作之后,存储器控制器200也可以使用在训练操作中使用的训练数据。例如,即使在完成训练操作之后,存储器控制器200也可以从训练缓冲器130读取训练数据。当训练缓冲器130被配置为易失性存储器时,存储器控制器200可以将新数据覆盖到训练缓冲器130。
图3是图示根据本公开的一些实施例的执行训练操作和正常操作的存储器装置100的配置的框图。
参考图3,存储器装置100可以包括训练操作控制器110、正常操作控制器120和缓冲器组150。缓冲器组150可以包括页缓冲器140和训练缓冲器130。
训练操作控制器110可以执行对与存储器控制器200交换的信号的相位、振幅等进行优化以便在没有错误的情况下与存储器控制器200交换数据的训练操作。训练操作可以包括DCC训练、读取训练和写入训练。
训练操作控制器110可以在训练操作期间,将从存储器控制器200接收的训练数据临时存储到页缓冲器140中。训练操作控制器110可以通过将临时存储在页缓冲器140中的训练数据传送到存储控制器200来执行训练操作。
训练操作控制器110可以将暂时存储在页缓冲器140中的训练数据存储到训练缓冲器130中。训练操作控制器110可以在训练操作期间或在完成训练操作之后,将训练数据存储在训练缓冲器130中。
正常操作控制器120可以在完成训练操作之后执行正常操作。正常操作可以包括编程操作、读取操作和擦除操作。正常操作可以在页缓冲器140或训练缓冲器130上执行。例如,正常操作控制器120可以将从存储器控制器200接收的编程数据临时存储到页缓冲器140中,并且将临时存储的数据编程到存储器单元阵列中。正常操作控制器120可以将从存储器单元阵列读取的数据临时存储到页缓冲器140中,并且将临时存储的读取数据传送到存储器控制器200。
正常操作可以在训练缓冲器130上执行。例如,正常操作控制器120可以将训练缓冲器130中存储的训练数据传送到存储器控制器200。正常操作控制器120可以利用从存储器控制器200接收的其他数据来覆盖训练缓冲器130中存储的一些或全部训练数据。正常操作控制器120可以擦除训练缓冲器130中存储的一些或全部训练数据。
图4是用于描述根据本公开的一些实施例的存储器装置100的图。
参考图4,存储器装置可以包括存储器单元阵列410、外围电路420和控制逻辑430。
存储器单元阵列410可以包括多个存储器块BLK1至BLKz。多个存储器块BLK1至BLKz可以通过行线RL连接到行解码器421。存储器块BLK1至BLKz可以通过位线BL1至BLn连接到页缓冲器140。多个存储器块BLK1至BLKz中的每一个可以包括多个存储器单元。根据本公开的一个实施例,多个存储器单元可以被配置为非易失性存储器单元。连接到同一字线的存储器单元可以被限定为一个页。因此,一个存储器块可以包括多个页。
行线RL可以包括至少一个源极选择线、多个字线和至少一个漏极选择线。
存储器单元阵列410中包括的每个存储器单元可以被配置为用于存储一个数据位的单级单元(SLC)、用于存储两个数据位的多级单元(MLC)、用于存储三个数据位的三级单元(TLC)或用于存储四个数据位的四级单元(QLC)。
外围电路420可以被配置为在控制逻辑430的控制下对存储器单元阵列410的选定区域执行编程操作、读取操作或擦除操作。外围电路420可以驱动存储器单元阵列410。例如,外围电路420可以在控制逻辑430的控制下,将各种操作电压施加到行线RL和位线BL1至BLn或释放所施加的电压。
外围电路420可以包括行解码器421、电压生成器422、页缓冲器组150、列解码器424、输入/输出电路425以及感测电路426。
行解码器421可以经由行线RL连接到存储器单元阵列410。行线RL可以包括至少一个源极选择线、多个字线和至少一个漏极选择线。在本公开的一个实施例中,字线可以包括正常字线和伪字线。在本公开的一个实施例中,行线RL可以进一步包括管道选择线。
行解码器421可以被配置为响应于控制逻辑430的控制而操作。行解码器421可以从控制逻辑430接收行地址RADD。
行解码器421可以被配置为对行地址RADD进行解码。行解码器421可以根据经解码的地址,在存储器块BLK1至BLKz之中选择至少一个存储器块。另外,行解码器421可以选择被选择为根据经解码的地址将电压生成器422生成的电压施加到至少一个字线WL的存储器块的至少一个字线。
例如,在编程操作期间,行解码器421可以将编程电压施加到选定字线,并且将比编程电压的电平低的电平的编程通过电压施加到未选择字线。在编程验证操作期间,行解码器421可以将验证电压施加到选定字线,并且将高于验证电压的验证通过电压施加到未选择字线。在读取操作期间,行解码器421可以将读取电压施加到选定字线,并且将高于读取电压的读取通过电压施加到未选择字线。
在本公开的实施例中,可以针对每个存储器块来执行存储器装置100的擦除操作。在擦除操作期间,行解码器421可以根据经解码的地址来选择一个存储器块。在擦除操作期间,行解码器421可以将接地电压施加到与选定存储器块连接的字线。
电压生成器422可以响应于控制逻辑430的控制而操作。电压生成器422可以被配置为使用提供给存储器装置的外部电源电压来生成多个电压。具体地,电压生成器422可以响应于操作信号OPSIG而生成在编程、读取和擦除操作中使用的各种操作电压Vop。例如,电压生成器422可以响应于控制逻辑430的控制而生成编程电压、验证电压、通过电压、读取电压、擦除电压等。
根据本公开的一些实施例,电压生成器422可以通过调节外部电源电压来生成内部电源电压。由电压生成器422生成的内部电源电压可以用作存储器装置100的操作电压。
根据本公开的一些实施例,电压生成器422可以使用外部电源电压或内部电源电压来生成多个电压。
例如,电压生成器422可以包括接收内部电源电压的多个泵浦电容器,并且响应于控制逻辑430的控制而选择性地激活多个泵浦电容器来生成多个电压。
所生成的多个电压可以由行解码器421提供给存储器单元阵列410。
缓冲器组150可以包括训练缓冲器130和页缓冲器140。
训练缓冲器130可以存储训练数据。可以独立于存储器单元阵列410的单元操作而将训练缓冲器130中存储的训练数据传送到存储控制器200。例如,即使在将页缓冲器140中临时存储的数据编程到存储器单元阵列410中时,也可以在正常操作控制器120的控制下将训练缓冲器130中存储的训练数据传送到存储器控制器200。训练缓冲器130可以是易失性存储器。因此,仅在供电时才可以存储训练数据,并且在切断电源时可能会丢失所存储的训练数据。训练缓冲器130可以是静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)。
页缓冲器140可以包括第一页缓冲器PB1至第n页缓冲器PBn(未示出)。第一页缓冲器PB1至第n页缓冲器PB1至PBn可以分别通过第一位线BL1至第n位线BLn连接到存储器单元阵列410。第一页缓冲器PB1至第n页缓冲器PBn可以在控制逻辑430的控制下操作。具体地,第一页缓冲器PB1至第n页缓冲器PBn可以响应于页缓冲器控制信号PBSIGNALS而操作。例如,第一页缓冲器PB1至第n页缓冲器PBn可以临时存储通过第一位线BL1至第n位线BLn接收的数据,或者可以在读取或验证操作期间感测位线BL1至BLn的电压或电流。
具体地,在编程操作期间,当将编程脉冲提供给选定字线时,第一页缓冲器PB1至第n页缓冲器PBn可以经由第一位线BL1至第n位线BLn,将从数据输入/输出电路425接收的数据DATA传送到选定的存储器单元。可以根据所传送的数据DATA来对选定页的存储器单元进行编程。连接到施加有编程许可电压(例如,接地电压)的位线的存储器单元可以具有增加的阈值电压。连接到施加有编程禁止电压(例如,电源电压)的位线的存储器单元的阈值电压可以被维持。在编程验证操作期间,第一页缓冲器PB1至第n页缓冲器PBn可以通过第一位线BL1至第n位线BLn从选定的存储器单元读取页数据。
在读取操作期间,第一页缓冲器PB1至第n页缓冲器PBn可以通过第一位线BL1至第n位线BLn从选定页的存储器单元读取数据DATA,并且可以在列解码器424的控制下将读取数据DATA输出到数据输入/输出电路425。
在擦除操作期间,第一页缓冲器PB1至第n页缓冲器PBn可以使得第一位线BL1至第n位线BLn浮置。
列解码器424可以响应于列地址CADD而在输入/输出电路425和页缓冲器140之间传送数据。例如,列解码器424可以通过数据线D1与第一页缓冲器PB1至第n页缓冲器PBn交换数据,或者可以通过列线CL与输入/输出电路425交换数据。
输入/输出电路425可以将从参考图1描述的存储器控制器200接收的命令CMD和地址ADDR传送到控制逻辑430,或者可以与列解码器424交换数据DATA。输入/输出电路425可以通过数据信号DQ从存储器控制器200接收命令、地址和数据。
感测电路426可以在读取操作或验证操作期间,响应于许可位信号VRYBIT而生成参考电流,并且可以将从页缓冲器140接收的感测电压VPB与由参考电流生成的参考电压进行比较来输出通过信号PASS或失败信号FAIL。
控制逻辑430可以响应于命令CMD和地址ADDR而输出操作信号OPSIG、行地址RADD、页缓冲器控制信号PBSIGNALS和许可位信号VRYBIT来控制外围电路420。另外,控制逻辑430可以响应于通过信号PASS或失败信号FAIL来确定验证操作是通过还是失败。
控制逻辑430可以包括训练操作控制器110和正常操作控制器120。训练操作控制器110和正常操作控制器120可以执行参考图3所描述的训练操作和正常操作。控制逻辑430可以接收命令锁存使能信号CLE和地址锁存使能信号ALE。命令锁存使能信号CLE可以将通过数据信号DQ从存储器控制器200接收的信息控制为命令CMD。例如,当命令锁存使能信号CLE为高状态时,可以通过数据信号DQ来接收命令CMD。地址锁存使能信号ALE可以将通过数据信号DQ从存储器控制器200接收的信息控制为地址ADDR。例如,当地址锁存使能信号ALE为高状态时,可以通过数据信号DQ来接收地址ADDR。控制逻辑430可以根据存储器单元阵列410的单元操作来生成就绪/繁忙(RB)信号。例如,当从存储器单元阵列410读取数据时,控制逻辑430可以生成R/B信号并根据存储器控制器200的请求来传送R/B信号。备选地,当对存储器单元阵列410执行编程操作或擦除操作时,控制逻辑430可以生成R/B信号并根据存储器控制器200的请求来传送R/B信号。
图5是用于描述根据本公开的一些实施例的图4的存储器块BLKi的图。
参考图5,存储器块BLKi可以连接到在第一选择线和第二选择线之间彼此平行布置的多个字线。在本文中,第一选择线可以指示源极选择线SSL,并且第二选择线可以指示漏极选择线DSL。更具体地,存储器块BLKi可以包括连接在位线BL1至BLn与源极线SL之间的多个串ST。位线BL1至BLn可以分别连接到串ST,并且源极线SL可以共同连接到串ST。由于串ST可以被配置为彼此相同,因此,作为示例,下面将具体描述连接到第一位线BL1的串ST。
串ST可以包括串联连接在源极线SL和第一位线BLl之间的源极选择晶体管SST、多个存储器单元MCl至MC16以及漏极选择晶体管DST。一个串ST可以包括源极选择晶体管SST和漏极选择晶体管DST中的至少一个或多个,并且存储器单元MC1至MC16的数目可以大于图中所示的数目。
源极选择晶体管SST的源极可以连接至源极线SL,并且漏极选择晶体管DST的漏极可以连接至第一位线BL1。存储器单元MC1至MC16可以串联连接在源极选择晶体管SST和漏极选择晶体管DST之间。不同串ST中包括的源极选择晶体管SST的栅极可以连接至源极选择线SSL,漏极选择晶体管DST的栅极可以连接至漏极选择线DSL,并且存储器单元MC1至MC16的栅极可以连接到多个字线WL1至WL16。在不同串ST中包括的存储器单元之中,连接到相同字线的存储器单元组可以被称为物理页(PG)。因此,存储器块BLKi可以包括与字线WL1至WL16的数目相对应的PG。
一个存储器单元可以存储一位数据。通常将其称为单级单元(SLC)。在这种情况下,一个PG可以存储一个逻辑页(LPG)数据。一个LPG数据可以包括与一个PG中包括的单元数目相对应的数据位。另外,一个存储器单元可以存储两位或更多位的数据。在这种情况下,一个PG可以存储两个或更多个LPG数据。
图6是图示根据本公开的一些实施例的对训练数据的正常操作的时序图。
参考图6,当R/B信号为高时,存储器装置100可以使用页缓冲器140来执行正常操作。具体地,当命令锁存使能信号CLE为高时,可以通过数据信号DQ来接收正常命令CMD_n。正常命令CMD_n可以是用于控制存储器装置100以执行正常操作的命令。正常命令CMD_n可以包括编程命令、读取命令和擦除命令。当地址锁存使能信号ALE为高时,可以通过数据信号DQ来接收正常地址ADDR_n。正常地址ADDR_n可以包括存储器单元阵列410中包括的至少一个存储器单元的物理地址。在通过数据信号DQ接收到正常地址ADDR_n之后,可以接收数据DATA。所接收的数据DATA可以被临时存储到页缓冲器140中,然后被编程到与正常地址ADDR_n相对应的存储器单元中。当正常操作是读取操作或擦除操作时,可以不接收数据DATA。
在训练操作期间或完成训练操作之后,可以将训练数据存储到训练缓冲器130中。当R/B信号为低时,存储器装置100可以使用训练缓冲器130来执行正常操作。具体地,当命令锁存使能信号CLE为高时,可以通过数据信号DQ来接收正常命令CMD_n。正常命令CMD_n可以是用于控制存储器装置100以执行正常操作的命令。正常命令CMD_n可以包括编程命令、读取命令和擦除命令。正常命令CMD_n可以是获取参数命令或获取特征命令。
当地址锁存使能信号ALE为高时,可以通过数据信号DQ来接收训练地址ADDR_t。训练地址ADDR_t可以指示训练缓冲器130中的存储空间。在通过数据信号DQ接收训练地址ADDR_t之后,可以接收数据DATA。可以将所接收的数据DATA存储到训练缓冲器130中。当正常命令CMD_n是读取命令时,可以不接收数据DATA,并且可以将训练缓冲器130中存储的训练数据传送到存储器控制器200。当正常命令CMD_n是擦除命令时,可以不接收数据DATA,并且可以擦除训练缓冲器130中存储的一些或全部训练数据。
图7图示了根据本公开的一些实施例的利用安全密钥数据来执行训练的存储装置。
参考图7,存储器控制器200_1可以包括安全密钥生成器710。安全密钥生成器710可以生成用于确定对存储器装置100访问是否可能的安全密钥数据。具体地,当从存储器控制器200_1接收的安全密钥数据不同于存储器装置100的唯一安全密钥数据时,存储器装置100可以忽略所接收的输入命令、地址或数据。安全密钥数据可以与输入到存储器装置100的命令、地址或数据一起被传输。
训练管理器210可以从安全密钥生成器710接收安全密钥数据,并使用安全密钥数据,结合存储器装置100来执行训练操作。由于上面参考图1至图4描述了训练操作,因此将省略其详细描述。在训练操作完成之后,安全密钥数据可以被存储到训练缓冲器130中。正常操作控制器120可以使用训练缓冲器130中存储的安全密钥数据来执行正常操作。例如,正常操作控制器120可以根据从存储器控制器200_1接收的正常命令来将安全密钥数据传送到存储器控制器200_1。存储器装置100可以进一步包括安全密钥比较器(未示出)。当从存储器控制器200_1接收的安全密钥数据与训练缓冲器130中存储的安全密钥数据不同时,安全密钥比较器可以忽略所接收的输入命令、地址或数据。
图8图示了根据本公开的一些实施例的利用映射数据来执行训练的存储装置。
参考图8,存储器控制器200_2可以包括映射数据生成器810。映射数据生成器810可以在由主机请求的逻辑地址与存储器装置100中存储的数据的物理地址之间生成映射数据。训练管理器210可以从映射数据生成器810接收映射数据,并且使用映射数据,结合存储器装置100来执行训练操作。由于上面参考图1至图4描述了训练操作,因此将省略其详细描述。
在训练操作完成之后,映射数据可以被存储到训练缓冲器130中。正常操作控制器120可以使用训练缓冲器130中存储的映射数据来执行正常操作。例如,正常操作控制器120可以根据从存储器控制器200_2接收的正常命令来将映射数据传送到存储器控制器200_2。备选地,正常操作控制器120可以将从存储器控制器200_2接收的新映射数据存储到训练缓冲器130中。备选地,正常操作控制器120可以根据从存储器控制器200_2接收的命令来擦除训练缓冲器130中存储的映射数据。
图9图示了根据本公开的一些实施例的利用识别数据来执行训练的存储装置。
参考图9,存储器控制器200_3可以包括识别数据生成器910。识别数据生成器910可以生成用于识别多个存储器装置之中的特定存储器装置的识别数据。存储装置50_3可以进一步包括存储器装置识别器920。存储器装置识别器920可以从存储器控制器200_3接收识别数据,并且可以根据识别数据来识别多个存储器装置之中的特定的存储器装置。存储器装置识别器920可以将从存储器控制器200_3接收的命令、地址或数据传送到所识别的存储器装置100。
训练管理器210可以从识别数据生成器910接收识别数据,并且使用识别数据,结合存储器装置100来执行训练操作。由于以上参考图1至图4描述了训练操作,因此将省略其详细描述。
在训练操作完成之后,识别数据可以被存储到训练缓冲器130中。正常操作控制器120可以使用训练缓冲器130中存储的识别数据来执行正常操作。例如,正常操作控制器120可以根据从存储器控制器200_3接收的正常命令来将识别数据传送到存储器控制器200_3。
图10是图示根据本公开的一些实施例的训练操作和正常操作的流程图。
参考图10,在步骤S1001中,当向存储器装置100供电时,训练操作控制器110可以响应于从存储器控制器200接收的训练命令来执行训练操作。例如,训练操作可以包括占空比校正(DCC)训练操作、读取训练操作和写入训练操作。训练操作可以对存储器装置100和存储器控制器200之间交换的信号的相位、振幅等进行优化,使得存储器装置100和存储器控制器200可以在没有错误的情况下交换数据。训练操作可以对诸如存储器装置100和存储器控制器200之间交换的信号的相位和振幅的参数进行优化,使得可以在不受来自工艺、电压和温度的影响而没有错误的情况下,在存储器装置100和存储器控制器200之间传送数据。
在步骤S1003中,训练操作控制器110可以将在训练操作期间从存储器控制器200接收的训练数据存储在训练缓冲器130中。训练操作控制器110可以在训练操作期间或在完成训练操作之后,将训练数据存储到训练缓冲器130中。
在步骤S1005中,当训练操作完成时,正常操作控制器120可以使用训练缓冲器130中存储的训练数据来执行正常操作。正常操作可以包括编程操作、读取操作和擦除操作。当执行存储器单元阵列410的单元操作时,可以使用训练缓冲器130中存储的训练数据来执行正常操作。具体地,在将从存储器单元阵列410读取的数据临时存储到页缓冲器140中时,可以将训练缓冲器130中存储的训练数据传送到存储器控制器200。正常操作控制器120可以对存储有训练数据的训练缓冲器130执行正常操作,并且同时对用于临时存储待编程到存储器单元阵列的数据或从存储器单元阵列读取的数据的页缓冲器执行正常操作。
图11是图示根据本公开的一些实施例的在训练操作之后的正常操作的流程图。
参考图11,在步骤S1101中,在完成训练操作之后,正常操作控制器120可以将在训练操作中使用的训练数据维持在训练缓冲器130中。即,在正常操作期间,训练缓冲器130中存储的训练数据可以不被重置。正常操作控制器120可以重置页缓冲器140。然后,正常操作控制器120可以将数据临时存储到经重置的页缓冲器中,并且将临时存储的数据编程到存储器单元阵列410中。正常操作控制器120可以读取存储器单元阵列410中存储的数据,以将数据临时存储到经重置的页缓冲器140中,并且将临时存储的数据传送到存储器控制器200。
在步骤S1103中,正常操作控制器120可以对存储器装置100中包括的存储器单元阵列410执行单元操作。具体地,通过向连接至存储器单元阵列410的字线或位线施加电压,正常操作控制器120可以将临时存储在页缓冲器140中的数据编程到存储器单元阵列410中,或者可以从存储器单元阵列410读取数据,以临时存储到页缓冲器140中。
在步骤S1105中,正常操作控制器120可以在对存储器单元阵列410的单元操作被执行时,将训练缓冲器130中存储的训练数据输出到存储器控制器200。具体地,在R/B信号由于存储器单元阵列410上的单元操作而指示繁忙状态的时段期间,可以在存储有训练数据的训练缓冲器130上执行正常操作。例如,当临时存储在页缓冲器140中的数据被编程到存储器单元阵列410中时,正常操作控制器120可以响应于正常命令CMD_n、获取参数命令或获取特征命令而将训练缓冲器130中存储的训练数据输出到存储器控制器200。
图12是图示根据本公开的一些实施例的包括存储装置的存储器卡系统的框图。
参考图12,存储器卡系统2000包括存储器控制器2100、存储器装置2200和连接器2300。
存储器控制器2100连接到存储器装置2200。存储器控制器2100被配置为访问存储器装置2200。例如,存储器控制器2100可以被配置为控制存储器装置2200的读取、写入、擦除和后台操作。存储器控制器2100被配置为在存储器装置2200和主机Host之间提供接口。存储器控制器2100被配置为驱动用于控制存储器装置2200的固件。存储器控制器2100可以等同地实现为参考图1描述的存储器控制器200。
作为示例,存储器控制器2100可以包括诸如随机存取存储器(RAM)、处理器、主机接口、存储器接口和纠错器的部件。
存储器控制器2100可以通过连接器2300与外部装置通信。存储器控制器2100可以根据特定的通信标准与外部装置(例如,主机)通信。作为示例,存储器控制器2100被配置为通过各种通信标准(例如,通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(MCM)、外围部件互连(PCI)、PCI快速(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、集成驱动电子装置(IDE)、FireWire、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe)中的至少一个与外部装置进行通信。作为示例,连接器2300可以由上述各种通信标准中的至少一个来定义。
作为示例,存储器装置2200可以被配置为各种非易失性存储器元件,诸如电可擦除可编程ROM(EEPROM)、NAND闪存、NOR闪存、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)和自旋扭矩磁性RAM(STT-MRAM))。
存储器控制器2100和存储器装置2200可以被集成到一个半导体装置中,以构成存储器卡。例如,存储器控制器2100和存储器装置2200可以集成到一个半导体装置中以构成诸如PC卡(个人计算机存储器卡国际协会(PCMCIA))、紧凑型闪存卡(CF)、智能媒体卡(SM或SMC)、记忆棒、多媒体卡(MMC、RS-MMC、MMCmicro或eMMC)、SD卡(SD、miniSD、microSD或SDHC)和通用闪存(UFS)的存储器卡。
图13是图示根据本公开的一些实施例的包括存储装置的固态驱动(SSD)系统的框图。
参考图13,SSD系统3000包括主机3100和SSD 3200。SSD 3200可以通过信号连接器3001与主机3100交换信号SIG,并且通过功率连接器3002接收功率PWR。SSD 3200包括SSD控制器3210、多个闪存3221至322n、辅助电源装置3230和缓冲存储器3240。
根据本公开的一些实施例,SSD控制器3210可以执行参考图1描述的存储器控制器200的功能。
SSD控制器3210可以响应于从主机3100接收的信号SIG而控制多个闪存3221至322n。作为示例,信号SIG可以是基于主机3100和SSD 3200之间的接口的信号。例如,信号SIG可以是由诸如通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(MCM)、外围部件互连(PCI)、PCI快速(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、集成驱动电子装置(IDE)、FireWire、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe的接口中的至少一个定义的信号。
辅助电源装置3230通过功率连接器3002连接到主机3100。辅助电源装置3230可以从主机3100接收功率PWR并且可以进行充电。当来自主机3100的功率供应不平稳时,辅助电源装置3230可以提供SSD 3200的功率。作为示例,辅助电源装置3230可以位于SSD 3200中或者可以位于SSD 3200外部。例如,辅助电源装置3230可以位于主板上并且可以向SSD3200提供辅助功率。
缓冲存储器3240用作SSD 3200的缓冲存储器。例如,缓冲存储器3240可以临时存储从主机3100接收的数据或从多个闪存3221至322n接收的数据,或者可以临时存储闪存3221至322n的元数据和映射数据。缓冲存储器3240可以包括诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器,或者诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器。
图14是图示根据本公开的一些实施例的包括存储装置的用户系统的框图。
参考图14,用户系统4000包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400和用户接口4500。
应用处理器4100可以驱动用户系统4000中包括的部件、操作系统(OS)、用户程序等。作为示例,应用处理器4100可以包括控制用户系统4000中包括的部件的控制器、接口、图形引擎等。应用处理器4100可以被提供为片上系统(SoC)。
存储器模块4200可以用作用户系统4000的主存储器、操作存储器、缓冲存储器或高速缓存存储器。存储器模块4200可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3SDRAM、LPDDR SDARM、LPDDR2 SDRAM和LPDDR3 SDRAM的易失性随机存取存储器或诸如PRAM、ReRAM、MRAM和FRAM的非易失性随机存取存储器。作为示例,应用处理器4100和存储器模块4200可以基于叠层封装(POP)来封装,并且提供为一个半导体封装。
网络模块4300可以与外部装置通信。作为示例,网络模块4300可以支持无线通信,诸如码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进、Wimax、WLAN、UWB、蓝牙和Wi-Fi。作为示例,网络模块4300可以被包括在应用处理器4100中。
存储模块4400可以存储数据。例如,存储模块4400可以存储从应用处理器4100接收的数据。备选地,存储模块4400可以将存储模块4400中存储的数据传输到应用处理器4100。作为示例,存储模块4400可以被实现为非易失性半导体存储器元件(例如,相变RAM(PRAM)、磁RAM(MRAM)、电阻式RAM(RRAM)、NAND闪存、NOR闪存和三维NAND闪存)。作为示例,存储模块4400可以被提供作为用户系统4000的诸如存储器卡的可移除存储装置(可移除驱动器)和外部驱动器。
作为示例,存储模块4400可以包括多个非易失性存储器装置,并且多个非易失性存储器装置可以与参考图1描述的存储器装置100等同地操作。存储模块4400可以与参考图1描述的存储装置50等同地操作。
用户接口4500可以包括用于向应用处理器4100输入数据或指令或者用于向外部装置输出数据的接口。作为示例,用户接口4500可以包括用户输入接口,诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、相机、麦克风、陀螺仪传感器、振动传感器和压电元件。用户接口4500可以包括用户输出接口,诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和电机。
根据本公开,即使在训练完成之后,通过单独地包括存储训练数据的训练缓冲器,也可以使用训练数据。
- 非易失性存储器装置、操作方法及存储器控制器操作方法
- 存储器单元、存储器单元编程方法、存储器单元读取方法、存储器单元操作方法及存储器装置