一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

半导体存储装置的制作方法

2022-03-13 18:34:11 来源:中国专利 TAG:

半导体存储装置
1.相关申请
2.本技术享有以日本专利申请2020-152510号(申请日:2020年9月11日)为基础申请的优先权。本技术通过参照该基础申请而包含基础申请的全部内容。
技术领域
3.本发明的实施方式涉及一种半导体存储装置。


背景技术:

4.由于无法获得足够的用于半导体存储装置的不良分析的数据,所以有时难以进行不良分析。


技术实现要素:

5.实施方式提供一种能够保存用于不良分析的数据的半导体存储装置。
6.实施方式的半导体存储装置具有:存储单元阵列,包含多个区块,能够存储第1数据;定序器,控制基于读出动作的序列,所述读出动作是基于从存储器控制器接收的读出指令,从所述存储单元阵列读出所述第1数据;及列解码器,包含感测放大器及数据锁存电路,所述感测放大器进行从所述存储单元阵列读出所述第1数据时所需的感测动作,所述数据锁存电路存储所述第1数据;且所述多个区块中的至少一个区块具有第1及第2选择晶体管、以及串联连接在所述第1及第2选择晶体管之间的多个非易失性存储单元,所述定序器控制如下的所述序列:接收所述读出指令及地址信号,接收所述读出指令及所述地址信号后,将就绪/忙碌信号从就绪变更为忙碌,将所述就绪/忙碌信号变更为所述忙碌后,使用所述感测放大器从所述存储单元阵列读出所述第1数据,将所述第1数据存储到所述数据锁存电路,将所述第1数据存储到所述数据锁存电路后,将所述就绪/忙碌信号从所述忙碌变更为所述就绪,将所述就绪/忙碌信号变更为所述就绪后,接收数据输出指令,接收所述数据输出指令后,将所述数据锁存电路中存储的所述第1数据输出到所述存储器控制器,当第1条件发生时,将包含所述数据锁存电路中存储的所述第1数据的日志数据写入到所述存储单元阵列的存储区域。
附图说明
7.图1是表示第1实施方式的存储器系统的构成的框图。
8.图2是表示第1实施方式的存储单元阵列的构成的电路图。
9.图3是表示第1实施方式的nand(与非)型闪存的存储单元阵列的存储区域的内存映射。
10.图4是表示第1实施方式的相隔地配置有多个日志数据存储区域的特定存储区域的例子的内存映射。
11.图5是表示第1实施方式的执行数据读出时在存储器控制器与nand型闪存间收发
数据的时序的时序图。
12.图6是表示第1实施方式的数据的读出指令序列的图。
13.图7是表示第1实施方式的接收到ecc(error check and correction,错误检查与校正)错误发生信息时定序器进行的日志数据保存处理的一例的流程图。
14.图8是表示第1实施方式的发生读出错误时向特定存储区域保存日志数据的流程的图。
15.图9是表示第2实施方式的执行数据写入时在控制器与nand型闪存间收发数据的时序的时序图。
16.图10是表示第2实施方式的数据的写入指令序列的图。
17.图11是表示第2实施方式的发生写入错误时定序器进行的日志数据保存处理的一例的流程图。
18.图12是表示第2实施方式的发生写入错误时向特定存储区域保存日志数据的流程的图。
19.图13是表示第2实施方式的变化例的执行数据写入时在控制器与nand型闪存间收发数据的时序的时序图。
20.图14是表示第2实施方式的变化例的发生写入错误时定序器进行的日志数据保存处理的一例的流程图。
21.图15是表示第3实施方式的发生错误时定序器进行的日志数据保存处理的一例的流程图。
22.图16是表示第3实施方式的发生某些错误时向特定存储区域保存日志数据的流程的图。
具体实施方式
23.以下,参照附图对实施方式进行说明。
24.(第1实施方式)
25.对第1实施方式的存储器系统进行说明。以下,列举具备nand型闪存的存储器系统进行说明。
26.[存储器系统的整体构成]
[0027]
首先,使用图1对本实施方式的存储器系统的大体的整体构成进行说明。
[0028]
图1是表示本实施方式的存储器系统的构成的框图。如图所示,存储器系统1具备nand型闪存(以下,称为nand存储器)100及存储器控制器(以下,也简称为控制器)200。nand存储器100与控制器200形成于例如1个衬底上。存储器系统1被用于例如sd(secure digital,安全数码)卡之类的存储卡或ssd(solid state drive,固态硬盘)等。
[0029]
nand存储器100是非易失性存储器。nand存储器100具备多个存储单元,非挥发地存储数据。控制器200通过nand总线而与nand存储器100连接。控制器200通过主机总线而与主机机器300(点线所示)连接。而且,控制器200是对nand存储器100进行控制并响应于从主机机器300接收的要求而对nand存储器100进行存取的存储器控制器。主机机器300例如为数码相机或个人计算机等,主机总线是遵循例如sd接口的总线。nand总线是遵循nand接口的进行信号收发的总线。
[0030]
经由nand接口(i/f)电路250而在nand存储器100与控制器200间收发各种信号。从控制器200向nand存储器100供给芯片使能信号cen、指令锁存使能信号cle、地址锁存使能信号ale、写入使能信号wen、读出使能信号ren及写入保护信号wpn。从nand存储器100向控制器200供给就绪/忙碌信号rbn。在控制器200与nand存储器100之间收发输入输出信号i/o及数据选通信号dqs/dqsn。
[0031]
芯片使能信号cen是用于使nand存储器100启用的信号,在低电平被生效。指令锁存使能信号cle及地址锁存使能信号ale是向nand存储器100通知输入输出信号i/o分别为指令及地址的信号。写入使能信号wen在低电平被生效,是向nand存储器100通知将输入输出信号i/o写入到nand存储器100的信号。读出使能信号ren也在低电平被生效,是用于使来自nand存储器100的读出数据输出到输入输出信号i/o的信号。写入保护信号wpn是用于向nand存储器100指示禁止数据写入及抹除的信号。数据选通信号dqs/dqsn是用于控制输入输出信号i/o的输入输出时序的信号。
[0032]
就绪/忙碌信号rbn是表示nand存储器100为就绪状态(能够接收来自控制器200的命令的状态)或忙碌状态(无法接收来自控制器200的命令的状态)的信号,低电平表示忙碌状态。输入输出信号i/o例如为8比特的信号。而且,输入输出信号i/o是在nand存储器100与控制器200之间收发的数据的实体,为指令、地址、写入数据及读出数据等。
[0033]
[控制器的构成)
[0034]
其次,对控制器200的详细构成进行说明。如图1所示,控制器200是具备主机接口(i/f)电路210、随机存取存储器(以下,称为ram)220、具有中央处理器(cpu)的处理器230、缓冲存储器240、nand接口电路250及ecc(error checking and correcting)电路260的电路。
[0035]
主机接口电路210经由主机总线而与主机机器300连接,将从主机机器300接收的要求及数据分别传输到处理器230及缓冲存储器240。另外,响应于处理器230的指令,将缓冲存储器240内的数据传输到主机机器300。
[0036]
ram220例如为dram(dynamic random access memory,动态随机存取存储器)或sram(static random access memory,静态随机存取存储器)等半导体存储器。ram220被用作处理器230的作业区域。而且,ram220保存用于管理nand存储器100的固件或管理信息mi。管理信息mi是查找表(lut)、转换表信息(tbl)等。转换表信息tbl包含转换信息。转换信息是用于在控制器200执行数据读出处理时转换数据读出电平的信息。
[0037]
处理器230对控制器200整体的动作进行控制。例如,处理器230在从主机机器300接收到数据读出要求时,响应于数据读出要求而对nand接口电路250发出读出指令。在接收到来自主机机器300的数据写入要求及数据抹除要求时,处理器230也同样地对nand接口电路250发出与所接收的要求对应的指令。另外,处理器230执行损耗均衡等用于管理nand存储器100的各种处理。
[0038]
缓冲存储器240暂时保存写入数据或读出数据。
[0039]
nand接口电路250经由nand总线而与nand存储器100连接,管理与nand存储器100的通信。而且,nand接口电路250基于从处理器230接收的指令,将包含指令、数据等的各种信号发送到nand存储器100,另外,从nand存储器100接收各种信号及数据。
[0040]
nand接口电路250基于从处理器230接收的指令,将芯片使能信号cen、指令锁存使
能信号cle、地址锁存使能信号ale、写入使能信号wen及读出使能信号ren输出到nand存储器100。另外,在写入数据时,nand接口电路250将由处理器230发出的写入指令及缓冲存储器240内的写入数据以输入输出信号i/o的形式传输到nand存储器100。进而,在读出数据时,nand接口电路250将由处理器230发出的读出指令以输入输出信号i/o的形式传输到nand存储器100,进而,以输入输出信号i/o的形式接收从nand存储器100读出的数据,并将其传输到缓冲存储器240。
[0041]
ecc电路260进行与nand存储器100中存储的数据相关的错误检测及错误订正处理。即,ecc电路260在写入数据时产生错误订正符号,并将其赋予到写入数据,在读出数据时,订正错误,同时解码数据。ecc电路260在解码读出数据失败时,向处理器230通知ecc错误。
[0042]
[nand型闪存的构成]
[0043]
其次,对nand存储器100的构成进行说明。如图1所示,nand存储器100具备存储单元阵列110、行解码器120、驱动电路130、列解码器140、地址寄存器150、指令寄存器160、定序器170、寄存器单元180及温度传感器190。
[0044]
存储单元阵列110具备多个区块blk,所述多个区块blk包含与行及列建立对应的多个非易失性存储单元。区块blk被用作例如数据的抹除单位。在图1中,图示4个区块blk0~blk3作为一例。而且,存储单元阵列110非挥发地存储由控制器200提供的数据。
[0045]
行解码器120基于地址寄存器150内的区块地址ba,选择区块blk0~blk3的任一个,进而,选择所选区块blk中的字线wl。
[0046]
驱动电路130基于地址寄存器150内的页地址pa,经由行解码器120对所选区块blk供给电压。
[0047]
列解码器140包含数据锁存电路xdl及感测放大器sa。感测放大器sa包含多个感测放大器电路。感测放大器sa在读出数据时,进行感测动作。感测动作是感测从存储单元阵列110读出的数据,并进行必要的运算。数据锁存电路xdl包含用于数据的输入输出的多个锁存电路。而且,列解码器140经由其数据锁存电路xdl将读出数据dat输出到控制器200。列解码器140在写入数据时,在数据锁存电路xdl已接收从控制器200接收的写入数据dat后,执行对存储单元阵列110的写入动作。
[0048]
读出数据及写入数据是用户数据。数据锁存电路xdl具有用户数据存储部。用户数据存储部是能够存储用户数据的电路部分。数据锁存电路xdl还具有也可存储下述地址信息等的冗余部。即,数据锁存电路xdl中能够存储读出数据及写入数据以及地址信息等。
[0049]
此外,在本实施方式及其它实施方式中,对用户数据存储部及冗余部设置在数据锁存电路xdl的例子进行说明,但也可设置在其它数据锁存电路,例如数据锁存电路adl、bdl。即,也可使用数据锁存电路adl、bdl或cdl作为暂时存储下述日志数据的数据锁存电路。
[0050]
地址寄存器150保存从控制器200接收的地址add。该地址add中包含所述区块地址ba及页地址pa。即,地址寄存器150存储地址信息。指令寄存器160保存从控制器200接收的指令cmd。
[0051]
定序器170是基于指令寄存器160中保存的指令cmd来控制nand存储器100整体的动作的控制电路。
[0052]
定序器170基于来自控制器200的指令cmd,执行数据读出、数据写入及数据抹除。
[0053]
进而,定序器170以如下方式执行日志数据保存处理。因此,定序器170能够从地址寄存器150获取地址。进而,定序器170能够将数据传输到列解码器140。
[0054]
寄存器单元180包含多个寄存器。寄存器单元180中能够存储温度传感器190的温度码等。
[0055]
温度传感器190产生表示nand存储器100的温度的温度码。定序器170周期性(例如,以各动作为单位)地获取温度码。温度码是nand存储器100的温度信息。温度码是nand存储器100的使用状态数据。
[0056]
其次,使用图2对所述区块blk的构成进行说明。图2是表示本实施方式的存储单元阵列的构成的电路图。如图所示,一个区块blk包含例如4个串单元su(su0~su3)。另外,各串单元su包含多个nand串6。
[0057]
nand串6各自包含例如8个存储单元晶体管mt(mt0~mt7)及2个选择晶体管st1、st2。各存储单元晶体管mt具备控制栅极及电荷存储层,非挥发地保存数据。而且,多个(例如8个)存储单元晶体管mt串联连接于选择晶体管st1的源极与选择晶体管st2的漏极之间。
[0058]
各串单元su0~su3中的选择晶体管st1的栅极分别与选择栅极线sgd0~sgd3连接。相对于此,各串单元su0~su3中的选择晶体管st2的栅极共通连接于例如选择栅极线sgs。当然,各串单元su0~su3中的选择晶体管st2的栅极也可以串单元为单位连接于不同的选择栅极线sgs0~sgs3。另外,位于同一区块blk内的存储单元晶体管mt0~mt7的控制栅极分别共通连接于字线wl0~wl7。
[0059]
另外,存储单元阵列110内位于同一列的多个nand串6的选择晶体管st1的漏极共通连接于位线bl(bl0~bl(k-1),其中,k为2以上的自然数)。即,位线bl在多个区块blk间将多个nand串6共通连接。进而,多个选择晶体管st2的源极共通连接于源极线sl。
[0060]
即,各串单元su包含与互不相同的多个位线bl连接且与同一选择栅极线sgd连接的多个nand串6。另外,各区块blk包含多个串单元su。而且,存储单元阵列110是共通连接有各位线bl的多个区块blk的集合体。
[0061]
图3是表示nand存储器100的存储单元阵列110的存储区域的内存映射。
[0062]
存储单元阵列110中,除了供存储用户数据的存储区域以外,还具有不会写入用户数据的特定存储区域pma。特定存储区域pma是与供存储用户数据的存储区域不同的存储区域。由此,用户数据不被写入到特定存储区域pma。
[0063]
特定存储区域pma包含多个日志数据存储区域pmap。各日志数据存储区域pmap具有能够存储多个日志数据ld的数据大小。
[0064]
日志数据ld具有包含下述错误发生数据的数据部分dp及包含地址信息(包含包括区块地址ba及页地址pa的信息)的冗余部分rp。包含错误发生数据的数据部分dp与数据锁存电路xdl的用户数据存储部对应,包含地址信息(区块地址ba及页地址pa)的冗余部分rp与数据锁存电路xdl的冗余部对应。
[0065]
在图3中,特定存储区域pma具有多个日志数据存储区域pmap。各日志数据存储区域pmap包含至少一个区块blk。各区块blk包含多个页。从存储单元阵列110读出数据及向存储单元阵列110写入数据是以多比特的数据的集合即页为单位进行。各页能够用页地址pa指定。各页中能够存储1个日志数据ld。由此,在特定存储区域pma中的一个区块blk中的1个
页中存储1个日志数据ld。在一个区块blk内,日志数据ld依序存储在连续的多个页中。在各日志数据存储区域pmap包含多个区块blk时,如果在一个区块blk内的全部页中存储日志数据ld,则在特定存储区域pma内的下一区块blk存储日志数据ld。由此,通过保存日志数据ld后逐个增加例如特定存储区域pma中的页地址pa,能够保存已保存的日志数据ld,同时存储下一日志数据ld。保存下一日志数据ld的地址是由定序器170所管理的地址指标指定。此处,保存1个日志数据ld后,逐个增加地址指标所表示的页地址pa,但也可以2个为单位或者以3个为单位等以特定数为单位增加地址指标所表示的页地址pa,而变更表示保存下一日志数据ld的地址的页地址pa。
[0066]
图4是表示相隔地配置有多个日志数据存储区域pmap的特定存储区域pma的例子的内存映射。
[0067]
在图4中,2个日志数据存储区域pmap相隔而设置。在日志数据存储区域pmap的各区块blk内,在每次存储日志数据ld时增加一个页地址pa,由此可保存已保存的日志数据ld,同时存储下一日志数据ld。如果在一个区块blk内的全部页中存储日志数据ld,则在保存日志数据ld后,逐个增加例如区块编号,由此能够保存已保存的日志数据ld,同时在下一区块blk中存储下一日志数据ld。如果在一个日志数据存储区域pmap内的全部区块blk的全部页中存储日志数据ld,则指定另一日志数据存储区域pmap的区块地址ba及页地址pa,将日志数据ld存储到另一日志数据存储区域pmap中。
[0068]
[读出错误时的日志数据保存处理]
[0069]
如上所述,定序器170基于来自控制器200的指令cmd,执行数据读出、数据写入及数据抹除。本实施方式是关于发生读出错误时的日志数据ld的保存。
[0070]
图5是表示执行数据读出时在控制器200与nand存储器100间收发数据的时序的时序图。
[0071]
从控制器200向nand存储器100发出读出指令后,定序器170执行读出动作(p1)。即,定序器170根据读出指令从nand存储器100读出数据,将所读出的数据存储到数据锁存电路xdl。读出动作(p1)期间,就绪/忙碌信号成为忙碌状态,且寄存器单元180内的状态寄存器也被设定为表示忙碌的状态。读出动作结束后,就绪/忙碌信号成为就绪状态(p1a),且状态寄存器也被设定为表示就绪的状态。控制器200可通过发出状态读出指令而确认状态寄存器的状态。控制器200以就绪/忙碌信号或者状态寄存器的状态,判断读出动作已完成。
[0072]
控制器200将数据输出指令向nand存储器100发出。定序器170根据数据输出指令,将数据锁存电路xdl的数据输出到控制器200。即,定序器170将所读出的数据输出到存储器控制器200。
[0073]
在控制器200中,通过ecc电路260对接收到的数据进行错误检测及错误订正。如果在接收到的数据中检测出错误且错误订正失败时,处理器230向nand存储器100发出ecc错误发生信息。
[0074]
处理器230在发生ecc错误时,进行将发生ecc错误的区块设为坏块(不良区块)的处理。
[0075]
定序器170如果接收到ecc错误发生信息,则执行禁止受理特定指令的禁止处理(p2)。此处,特定指令是伴有由存储器控制器200更新数据锁存电路xdl中存储的数据的情况的指令。执行禁止处理p2后,在数据锁存电路xdl中依然保存所读出的数据。定序器170执
行日志数据保存处理(p3)。
[0076]
如上所述,定序器170在接收到读出错误的通知时,进行禁止数据锁存电路xdl的数据更新的处理后,将特定数据写入到特定存储区域pma。
[0077]
图6是表示数据的读出指令序列的图。在读出指令序列中,定序器170首先输出预约指令「c01」。输出预约指令「c01」后,输出指令「c02」。指令「c02」是通知执行读出动作。输出指令「c01」及「c02」时,指令锁存使能信号cle成为高电平(high)。指令「c01」及「c02」的输出结束后,指令锁存使能信号cle成为低电平(low)。输出指令「c02」后,输出包含2个列地址「ca1」、「ca2」及3个行地址「ra1」、「ra2」、「ra3」的地址数据。输出地址数据「ca1」、「ca2」、「ra1」、「ra2」、「ra3」时,地址锁存使能信号ale成为高电平。地址数据的输出结束后,地址锁存使能信号ale成为低电平。继地址数据之后,输出指示执行读出动作的指令「c03」。输出指令「c03」时,指令锁存使能信号cle成为高电平。指令「c03」的输出结束后,指令锁存使能信号cle成为低电平。输出指令「c03」后,就绪/忙碌信号rbn成为低电平。
[0078]
就绪/忙碌信号rbn成为高电平后,控制器200输出数据输出指令。首先,先输出指令「c04」。指令「c04」是通知执行数据输出动作。输出指令「c04」时,指令锁存使能信号cle成为高电平。指令「c04」的输出结束后,指令锁存使能信号cle成为低电平。输出指令「c04」后,输出5个地址数据。输出地址数据时,地址锁存使能信号ale成为高电平。地址数据的输出结束后,地址锁存使能信号ale成为低电平。继地址数据之后,输出指示执行数据输出动作的指令「c05」。输出指令「c05」时,指令锁存使能信号cle成为高电平。指令「c05」的输出结束后,指令锁存使能信号cle成为低电平。输出指令「c05」后,定序器170输出数据锁存电路xdl的数据。
[0079]
以所述方式执行读出指令,控制器200能够从nand存储器100读出数据。
[0080]
图7是表示接收到ecc错误发生信息时的定序器170的日志数据保存处理的一例的流程图。
[0081]
定序器170判定是否接收到ecc错误发生信息(s1)。如果接收到ecc错误发生信息,则定序器170执行s2以下的处理。如果未接收到ecc错误发生信息(s1:否),则定序器170不执行s2以下的处理。
[0082]
如果接收到ecc错误发生信息(s1:是),则定序器170执行特定禁止处理p2(s2)。特定禁止处理p2是禁止受理伴有数据锁存电路xdl的更新的指令的禁止处理。
[0083]
禁止处理p2例如使就绪/忙碌信号rbn成为低电平,并从nand存储器100供给至控制器200。就绪/忙碌信号rbn为低电平时,控制器200不向nand存储器100输出指令。
[0084]
s2后,定序器170将发生ecc错误的地址信息写入到数据锁存电路xdl的冗余部(s3)。
[0085]
s3后,定序器170将发生ecc错误的数据(即错误发生数据)及地址信息从数据锁存电路xdl传输到特定存储区域pma的一个数据存储区域(s4)。即,定序器170从存储器控制器200接收读出错误的通知后,将特定数据写入到特定存储区域pma。该特定数据包含读出数据及读出指令相关的地址信息。具体来说,定序器170将数据锁存电路xdl的数据作为日志数据ld写入到特定存储区域pma的一个数据存储区域。
[0086]
定序器170增加特定存储区域pma的地址指标的地址(s5)。地址指标的地址信息存储在特定存储区域pma中。
[0087]
如上所述,特定存储区域pma具有多个日志数据存储区域pmap。定序器170管理地址指标。地址指标表示特定存储区域pma中存储下一日志数据ld的日志数据存储区域pmap的地址。定序器170在将日志数据ld写入到日志数据存储区域pmap后,增加日志数据存储区域pmap的地址。地址指标的值(地址)通过增加1个而变更,在已写入一次日志数据ld的日志数据存储区域pmap中,数据不被覆写。结果,日志数据ld得以被保存。
[0088]
如上所述,定序器170在将特定数据写入到特定存储区域pma后,执行保护写入到特定存储区域pma的特定数据的处理。
[0089]
在日志数据存储区域pmap中存储错误发生数据及地址信息(区块地址ba及页地址pa)。
[0090]
图8是表示发生读出错误时向特定存储区域pma保存日志数据的流程的图。
[0091]
控制器200在无法对读出数据进行ecc订正时,将ecc错误发生信息输出到nand存储器100。定序器170将数据锁存电路xdl的日志数据ld保存到存储单元阵列110中的特定存储区域pma中。
[0092]
日志数据ld存储在存储区域pma中的地址指标所表示的地址的存储区域中。
[0093]
如上所述,根据所述第1实施方式,在存储器系统1中,发生读出错误时,定序器170自主地将日志数据ld存储到nand存储器100的特定存储区域pma中。日志数据ld包含读出错误相关的错误发生数据及其地址信息(区块地址ba及页地址pa)。由此,能够使用nand存储器100中的日志数据ld进行不良分析。
[0094]
(第2实施方式)
[0095]
在第1实施方式中,在发生读出错误时,保存日志数据ld,但在第2实施方式中,在发生写入错误时,将日志数据ld保存到特定存储区域pma中。
[0096]
第2实施方式的存储器系统的构成与第1实施方式的存储器系统1的构成相同,nand存储器100的构成及存储器控制器200的构成也分别与第1实施方式的nand存储器100的构成及存储器控制器200的构成相同。由此,相同构成要素使用相同符号并省略说明。
[0097]
[写入错误时的日志数据保存处理]
[0098]
图9是表示执行数据写入时在控制器200与nand存储器100间收发数据的时序的时序图。
[0099]
从控制器200向nand存储器100发出写入指令后,定序器170执行写入动作(p11)。写入动作包含编程动作及验证动作。编程动作是通过将电子注入到电荷存储层而使阈值上升(或禁止注入以维持阈值)的动作。验证动作是通过在编程动作后读出数据来判定存储单元晶体管mt的阈值是否达到目标电平的动作。
[0100]
写入动作(p11)期间,就绪/忙碌信号成为忙碌状态,且寄存器单元180内的状态寄存器也设定为表示忙碌的状态。写入动作结束后,就绪/忙碌信号成为就绪状态(p11a),且状态寄存器也设定为表示就绪的状态。控制器200向nand存储器100发出状态读出指令。定序器170根据状态读出指令,执行状态读出处理(p12)。状态读出处理是读出表示写入动作成功或失败的状态数据的处理。
[0101]
定序器170在写入动作失败(即写入错误)时,执行禁止受理特定指令的禁止处理(p13)。此处,特定指令是伴有由存储器控制器200更新数据锁存电路xdl中存储的数据的情况的指令。禁止处理p13后,数据锁存电路xdl中保存写入数据(期望值)即发生写入错误的
数据不变。
[0102]
定序器170向控制器200输出状态数据。
[0103]
定序器170在写入动作失败时,在输出状态数据后,执行日志数据保存处理(p14)。
[0104]
如上所述,定序器170在发生写入错误时,进行禁止数据锁存电路xdl的数据更新的处理后,将特定数据写入到特定存储区域pma。
[0105]
图10是表示数据的写入指令序列的图。在写入指令序列中,定序器170首先输出预约指令「c01」。输出预约指令「c01」后,输出指令「c11」。指令「c11」是通知执行写入动作。输出指令「c01」及「c11」时,指令锁存使能信号cle成为高电平。指令「c01」及「c11」的输出结束后,指令锁存使能信号cle成为低电平。输出指令「c11」后,输出包含2个列地址「ca1」、「ca2」及3个行地址「ra1」、「ra2」、「ra3」的地址数据。输出地址数据「ca1」、「ca2」、「ra1」、「ra2」、「ra3」时,地址锁存使能信号ale成为高电平。地址数据的输出结束后,地址锁存使能信号ale成为低电平。继地址数据之后,输出写入数据。定序器170保存写入到数据锁存电路xdl数据。继写入数据之后,输出指示执行写入动作的指令「c12」。输出指令「c12」时,指令锁存使能信号cle成为高电平。指令「c12」的输出结束后,指令锁存使能信号cle成为低电平。输出指令「c12」后,就绪/忙碌信号rbn成为低电平,直至写入结束为止。
[0106]
以所述方式执行写入指令,控制器200能够将数据写入到nand存储器100中。
[0107]
图11是表示发生写入错误时的定序器170的日志数据保存处理的一例的流程图。
[0108]
定序器170判定是否发生写入错误(s11)。基于状态数据判定是否发生写入错误。在写入动作中,在编程动作后的验证动作中,判定存储单元晶体管mt的阈值未达到目标电平时,发生写入错误。
[0109]
如果发生写入错误时,则定序器170执行s12以下的处理。如果未发生写入错误,则定序器170不执行s12以下的处理。
[0110]
如果发生写入错误(s11:是),则定序器170执行特定禁止处理p13(s12)。特定禁止处理p13是禁止受理伴有数据锁存电路xdl的更新的指令的处理。
[0111]
禁止处理p13例如使就绪/忙碌信号rbn成为低电平,并从nand存储器100供给至控制器200。就绪/忙碌信号rbn为低电平时,控制器200不向nand存储器100输出指令。
[0112]
s12后,定序器170将发生写入错误的地址信息写入到数据锁存电路xdl的冗余部(s13)。
[0113]
s13后,定序器170将发生写入错误的数据(即错误发生数据)及地址信息从数据锁存电路xdl传输到特定存储区域pma的一个数据存储区域(s14)。即,定序器170根据写入指令将数据写入到nand存储器100中。定序器170在发生数据写入错误时,将特定数据写入到特定存储区域pma。该特定数据包含写入数据及写入指令相关的地址信息。具体来说,定序器170将数据锁存电路xdl的数据作为日志数据ld写入到特定存储区域pma的一个数据存储区域。
[0114]
定序器170增加特定存储区域pma的地址指标的地址(s15)。
[0115]
如上所述,特定存储区域pma具有多个日志数据存储区域pmap。定序器170管理表示特定存储区域pma中存储下一日志数据ld的日志数据存储区域pmap的地址的地址指标。日志数据ld被写入到日志数据存储区域pmap后,增加日志数据存储区域pmap的地址。通过增加1个地址,在已写入一次日志数据ld的日志数据存储区域pmap中,数据不被覆写。结果,
日志数据ld得以被保存。
[0116]
如上所述,定序器170将特定数据写入到特定存储区域pma后,执行保护写入到特定存储区域pma的特定数据的处理。
[0117]
在日志数据存储区域pmap中存储错误发生数据及地址信息(区块地址ba及页地址pa)。
[0118]
图12是表示发生写入错误时向特定存储区域pma保存日志数据ld的流程的图。
[0119]
定序器170在存在写入错误时,将数据锁存电路xdl的日志数据ld保存到存储单元阵列110中的特定存储区域pma中。
[0120]
日志数据ld存储在地址指标所表示的地址的存储区域pma中。
[0121]
由此,在nand存储器100中,在发生写入错误时,定序器170自主地将日志数据ld存储到特定存储区域pma。日志数据ld包含写入错误相关的错误发生数据及其地址信息(区块地址ba及页地址pa)。由此,能够使用nand存储器100中的日志数据ld进行不良分析。
[0122]
其次,对变化例进行说明。
[0123]
在所述第2实施方式中,在发生写入错误时,将错误发生数据及其地址信息存储到特定存储区域pma中,但也可在每次执行写入时将错误发生数据及其地址信息存储到特定存储区域pma中,在发生写入错误时使特定存储区域pma的数据无法更新。
[0124]
图13是表示变化例中的执行数据写入时在控制器200与nand存储器100间收发数据的时序的时序图。
[0125]
从控制器200向nand存储器100发出写入指令后,定序器170执行向由控制器200指定的地址的写入动作(p21)。
[0126]
定序器170执行日志数据保存处理(p22)。日志数据保存处理(p22)与日志数据保存处理(p14)相同。
[0127]
写入动作(p22)期间,就绪/忙碌信号成为忙碌状态,且寄存器单元180内的状态寄存器也设定为表示忙碌的状态。写入动作结束后,就绪/忙碌信号成为就绪状态(p22a),且状态寄存器也设定为表示就绪的状态。控制器200向nand存储器100发出状态读出指令。定序器170基于状态数据,判定是否发生写入错误。
[0128]
如果发生状态失败(p23),则向控制器200输出写入失败的状态数据。
[0129]
如果发生状态失败(p23),则定序器170在输出状态数据后,执行覆写禁止处理(p24)。在覆写禁止处理(p24)中,增加特定存储区域pma的地址指标的地址。所谓覆写禁止,还包含限制一定期间或者一定次数的覆写的情况。
[0130]
图14是表示发生写入错误时的定序器170的日志数据保存处理的一例的流程图。
[0131]
定序器170执行向由控制器200指定的地址的写入动作(s21)。
[0132]
s21后,定序器170将地址信息写入到数据锁存电路xdl的冗余部(s22)。
[0133]
s22后,定序器170将错误发生数据及地址信息从数据锁存电路xdl传输到特定存储区域pma的一个数据存储区域(s23)。
[0134]
定序器170判定s21中的写入动作的执行中是否发生写入错误(s24)。如果发生写入错误,则定序器170增加特定存储区域pma的地址指标的地址(s25)。如果未发生写入错误,则定序器170进入到s21的处理。
[0135]
在每次连续执行写入动作时,如果未发生写入错误(s24:否),则对特定存储区域
pma覆写新的数据(写入数据)及地址信息。如果发生写入错误(s24:是),则定序器170增加特定存储区域pma的地址(s25)。由此,存储有数据(即错误发生数据)及地址信息的日志数据存储区域pmap不被覆写。
[0136]
如上所述,根据所述第2实施方式及变化例,在nand存储器100中,在发生写入错误时,在特定存储区域pma存储日志数据ld。日志数据ld包含写入错误相关的错误发生数据及其地址信息(区块地址ba及页地址pa)。由此,能够使用日志数据ld进行不良分析。
[0137]
此外,在存储单元晶体管mt为能够存储3比特的数据的tlc(triple level cell,三层单元)、能够存储4比特的数据的qlc(quad level cell,四层单元)等时,特定存储区域pma优选为pslc(pseudo single level cell,伪单层单元)区域。pslc区域是以slc模式写入数据的区域。slc模式是向tlc或qlc之类的能够存储多值数据的存储单元晶体管mt中以1比特数据的形式存储数据的模式。定序器170在向pslc区域写入日志数据ld时,以slc模式写入数据。
[0138]
例如,在tlc时,如图2中单点链线所示,各字线wl的多个存储单元晶体管mt中能够保存3页的数据。在写入有上位页的数据时,保存在pslc的第1日志数据存储区域中,在写入有中位页的数据时,保存在pslc的第2日志数据存储区域中,在写入有下位页的数据时,保存在pslc的第3日志数据存储区域中。
[0139]
(第3实施方式)
[0140]
在第1实施方式中,在发生读出错误时,保存日志数据ld,在第2实施方式中,于写入错误时,保存日志数据,但在第3实施方式中,在发生某些错误时,将nand存储器100的使用状态或动作状态相关的日志数据ld保存到特定存储区域pma中。
[0141]
第3实施方式的存储器系统的构成与第1实施方式的存储器系统1的构成相同,nand存储器100的构成及存储器控制器200的构成也分别与第1实施方式的nand存储器100的构成及存储器控制器200的构成相同。由此,相同构成要素使用相同符号并省略说明。
[0142]
图15是表示发生错误时的定序器170的日志数据ld的保存处理的一例的流程图。在本实施方式中,日志数据ld中包含温度传感器190的温度码。温度码是由定序器170获取,并作为温度信息存储在寄存器单元180中的温度码寄存器中。
[0143]
发生读出错误时,定序器170从控制器200接收ecc错误信息。写入错误或者抹除错误在定序器170中被检测出。
[0144]
定序器170判定是否发生读出错误等某些错误(s31)。
[0145]
如果检测出某些错误(s31:是),则定序器170执行s32以后的处理。如果未检测出某些错误(s31:否),则定序器170不执行s32以后的处理。
[0146]
如果检测出某些错误(s31:是),则定序器170禁止受理特定指令(p32)。此处,特定指令是伴有由存储器控制器200更新数据锁存电路xdl中存储的数据的情况的指令。
[0147]
s32后,定序器170将温度传感器190的温度信息作为使用状态数据写入到数据锁存电路xdl的冗余部(s33)。
[0148]
s33后,定序器170将温度信息从数据锁存电路xdl传输到特定存储区域pma(s34)。错误发生数据及温度信息存储在数据锁存电路xdl中。定序器170将数据锁存电路xdl的数据写入到特定存储区域pma。
[0149]
如上所述,定序器170将温度传感器190的温度信息写入到特定存储区域pma。
[0150]
s34后,定序器170增加特定存储区域pma的地址指标的地址(s35)。
[0151]
如上所述,根据所述第3实施方式,在存储器系统1中,如果发生某些错误,则将温度信息作为日志数据ld存储到特定存储区域pma。由此,能够使用日志数据ld进行不良分析。
[0152]
此外,在所述实施方式中,如果发生某些错误,则保存包含温度信息的日志数据ld,但也可在日志数据ld中包含温度信息以外的信息。例如,也可将抹除次数或者读出次数的信息与温度信息一起作为nand存储器100的动作状态信息包含在日志数据ld中。抹除次数或者读出次数的信息是出厂后到发生某些错误的时点为止的累积次数。
[0153]
而且,此外也可使set feature指令所含的移位量等动作条件相关的信息作为动作状态信息包含在日志数据ld中。
[0154]
即,也可使定序器170将nand存储器100的动作状态的信息写入到特定存储区域pma。
[0155]
抹除次数是定序器170根据所述接收到的指令而执行的抹除动作的执行次数。抹除次数在每次执行抹除指令时由定序器170按区块计数,并存储到寄存器单元180中的抹除次数寄存器中。抹除次数的计数也可包含客户方所实施的动作测试中的抹除次数。
[0156]
读出次数是定序器170根据接收到的指令而执行的读出动作的执行次数。读出次数在每次执行读出指令时由定序器170按每一区块计数,并存储到寄存器单元180中的读出次数寄存器。读出次数的计数也可包含客户方所实施的动作测试中的读出次数。
[0157]
移位量等动作条件相关的信息是设定用于执行接收到的指令的动作条件的信息。动作条件相关的信息存储在寄存器单元180中。例如,每次接收set feature指令时,撷取set feature指令相关的移位量等动作条件相关的数据,存储到feature寄存器中。
[0158]
图16是表示发生某些错误时向特定存储区域pma保存日志数据的流程的图。
[0159]
发生某些错误时,定序器170将温度码寄存器、抹除次数寄存器、读出次数寄存器及feature寄存器的至少一个中存储的数据写入到数据锁存电路xdl的冗余部。
[0160]
数据锁存电路xdl的日志数据ld被保存在存储单元阵列110中的特定存储区域pma中。
[0161]
此外,也可将表示发生的错误为读出错误、写入错误或抹除错误的错误码信息也包含在日志数据ld中。
[0162]
如上所述,根据所述第3实施方式,在存储器系统1中,如果发生某种错误,则定序器170自主地将使用状态或动作状态的数据作为日志数据ld而存储到特定存储区域pma中。由此,能够使用日志数据ld进行不良分析。
[0163]
(第4实施方式)
[0164]
在第3实施方式中,在存储器系统1中,如果发生某种错误,则无论错误的种类如何,都将使用状态或动作状态相关的日志数据ld存储在特定存储区域pma。第4实施方式中,当发生读出错误时,将包含错误发生数据、地址信息(区块地址ba及页地址pa)、以及与使用状态及动作状态的至少一个相关的信息的日志数据ld存储在特定存储区域pma中。
[0165]
第4实施方式的存储器系统的构成与第1实施方式的存储器系统1的构成相同,nand存储器100的构成及存储器控制器200的构成也分别与第1实施方式的nand存储器100的构成及存储器控制器200的构成相同。由此,对于相同构成要素使用相同符号并省略说
明。
[0166]
在第1实施方式中,发生读出错误时,日志数据ld中包含错误发生数据及地址信息(区块地址ba及页地址pa)。错误发生数据存储在日志数据ld中的数据部分dp中。
[0167]
相对于此,在第4实施方式中,发生读出错误时,向数据锁存电路xdl的冗余部写入地址信息(区块地址ba及页地址pa)及使用状态或动作状态的信息。结果,地址信息及温度信息等使用状态或动作状态的信息包含在日志数据ld中的冗余部分rp中。
[0168]
即,定序器170所接收的指令是来自控制nand存储器100的存储器控制器200的读出指令。定序器170根据读出指令而从nand存储器100读出数据。定序器170将所读出的数据作为读出数据输出到存储器控制器200。定序器170从存储器控制器200接收读出错误的通知后,将特定数据写入到特定存储区域pma。该特定数据包含读出数据、读出指令相关的地址信息、及nand存储器100的使用状态或动作状态的信息。
[0169]
如上所述,根据所述第4实施方式,在存储器系统1中,发生读出错误时,定序器170自主地将日志数据ld存储到nand存储器100的特定存储区域pma中。该日志数据ld包含读出错误相关的错误发生数据、其地址信息(区块地址ba及页地址pa)、及使用状态或动作状态的信息。由此,能够使用nand存储器100中的日志数据ld进行不良分析。
[0170]
(第5实施方式)
[0171]
在第3实施方式中,在存储器系统1中,如果发生某些错误,则无论错误的种类如何,都将使用状态或动作状态相关的日志数据ld存储到特定存储区域pma中。在该第5实施方式中,在发生写入错误时,将包含错误发生数据、地址信息(区块地址ba及页地址pa)以及与使用状态及动作状态的至少一个相关的信息的日志数据ld存储到特定存储区域pma中。
[0172]
第5实施方式的存储器系统的构成与第1实施方式的存储器系统1的构成相同,nand存储器100的构成及存储器控制器200的构成也分别与第1实施方式的nand存储器100的构成及存储器控制器200的构成相同。由此,相同构成要素使用相同符号并省略说明。
[0173]
在第2实施方式中,在发生写入错误时,日志数据ld中包含错误发生数据及地址信息。错误发生数据存储在日志数据ld中的数据部分dp中。
[0174]
相对于此,在第5实施方式中,在发生写入错误时,向数据锁存电路xdl的冗余部写入地址信息(区块地址ba及页地址pa)及使用状态或动作状态的信息。结果,地址信息及温度信息等使用状态或动作状态的信息包含在日志数据ld中的冗余部分rp中。
[0175]
如上所述,根据所述第5实施方式,在存储器系统1中,在发生写入错误时,定序器170自主地将日志数据ld存储到nand存储器100的特定存储区域pma中。该日志数据ld包含写入错误相关的错误发生数据、其地址信息(区块地址ba及页地址pa)、及使用状态或动作状态的信息。由此,能够使用nand存储器100中的日志数据ld进行不良分析。
[0176]
即,定序器170所接收的指令是来自控制nand存储器100的存储器控制器200的写入指令。定序器170根据写入指令而将数据写入到nand存储器100中。定序器170在发生数据的写入错误时,将特定数据写入到特定存储区域pma。该特定数据包含写入数据、写入指令相关的地址信息、及nand存储器100的使用状态或动作状态的信息。
[0177]
此外,第2实施方式的变化例也可适用于该第5实施方式。即,也可在每次执行数据的写入时将包含错误发生数据、地址信息、及与使用状态或动作状态的至少一个相关的信息的日志数据ld存储到特定存储区域pma中,在发生写入错误时使特定存储区域pma的数据
无法更新。
[0178]
如上所述,根据所述各实施方式,定序器170能够从控制针对nand存储器100的数据读出动作及写入动作的存储器控制器200接收指令。定序器170在与所接收的指令相应的动作(读出动作、写入动作、抹除动作)发生错误时,将特定数据写入到nand存储器100的特定存储区域pma。
[0179]
由此,根据所述各实施方式,能够提供一种能够保存用于不良分析的数据的半导体存储装置。
[0180]
所述实施方式及变化例也可在可能的范围内相互组合。例如,第2实施方式的变化例可与第3实施方式组合。
[0181]
已对本发明的若干实施方式进行了说明,但这些实施方式是作为例子所例示的,并不意图限定发明的范围。这些新颖的实施方式可以其它各种形态实施,可在不脱离发明主旨的范围内进行各种省略、置换、变更。这些实施方式或其变化包含在发明的范围或主旨中,且包含在权利要求书所记载的发明及其均等的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献