CN111312315B - 半导体存储装置及存储系统 - Google Patents

半导体存储装置及存储系统 Download PDF

Info

Publication number
CN111312315B
CN111312315B CN201910589709.2A CN201910589709A CN111312315B CN 111312315 B CN111312315 B CN 111312315B CN 201910589709 A CN201910589709 A CN 201910589709A CN 111312315 B CN111312315 B CN 111312315B
Authority
CN
China
Prior art keywords
data
cell
circuit
cells
wdl
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910589709.2A
Other languages
English (en)
Other versions
CN111312315A (zh
Inventor
船附里英子
佐佐木贵彦
黑沢智纪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kioxia Corp
Original Assignee
Kioxia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kioxia Corp filed Critical Kioxia Corp
Publication of CN111312315A publication Critical patent/CN111312315A/zh
Application granted granted Critical
Publication of CN111312315B publication Critical patent/CN111312315B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/08Control thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant

Abstract

实施方式提供一种能高速执行写入动作的半导体存储装置及存储系统。实施方式的半导体存储装置具有多个记忆胞、将第1数据转换为与所述多个记忆胞的阈值的排列顺序相关的第2数据的第1电路、及根据所述第2数据对所述多个记忆胞进行写入的第2电路。

Description

半导体存储装置及存储系统
[相关申请]
本申请享有以日本专利申请2018-231802号(申请日:2018年12月11日)为基础申请的优先权。本申请通过参照该基础申请而包含该基础申请的全部内容。
技术领域
实施方式涉及一种半导体存储装置及存储系统。
背景技术
作为半导体存储装置,已知有NAND型闪速存储器。
发明内容
实施方式提供一种能高速执行写入动作的半导体存储装置及存储系统。
实施方式的半导体存储装置具有将第1数据转换为与所述多个记忆胞的阈值的排列顺序相关的第2数据的第1电路、及根据所述第2数据对所述多个记忆胞进行写入的第2电路。
附图说明
图1是表示半导体存储装置的存储方式的一例的图。
图2是表示半导体存储装置的另一存储方式的一例的图。
图3是采用半导体存储装置的另一存储方式时记忆胞的阈值分布。
图4是存储系统的框图。
图5是半导体存储装置的框图。
图6是记忆胞阵列的电路图。
图7是表示列解码器的框图。
图8是表示行解码器的框图。
图9是表示实施方式的半导体存储装置的存储方式的一例的图。
图10是表示数据与记忆胞的阈值的顺序的关系的图。
图11是表示顺位数据的结构的图。
图12是表示数据与顺位数据的关系的图。
图13是表示锁存器电路中存储的数据的图。
图14是表示锁存器电路中存储的数据的图。
图15是表示实施方式中的非易失性半导体存储装置的数据写入的概况的图。
图16是表示第1实施方式中的非易失性半导体存储装置的数据写入的流程图。
图17是表示数据与胞(cell)的顺位的关系的图。
图18是表示第1实施方式中的非易失性半导体存储装置的数据写入的波形图。
图19是表示第1实施方式中的非易失性半导体存储装置的数据写入的波形图。
图20A是表示半导体存储装置的存储方式的一例的图。
图20B是表示实施方式中的半导体存储装置的存储方式的一例的图。
图21是表示第2实施方式中的比较例中的半导体存储装置的感测放大器模块的结构的框图。
图22是表示第2实施方式中的半导体存储装置的感测放大器模块的结构的框图。
图23是表示复用器的结构的电路图。
图24是表示第3实施方式中的半导体存储装置的感测放大器模块的结构的框图。
图25是表示第3实施方式中的半导体存储装置的感测放大器模块的结构的电路图。
图26是表示第3实施方式中的半导体存储装置的感测放大器模块的结构的电路图。
图27是表示程序循环中的记忆胞的阈值的变动的图。
图28是表示第4实施方式中的半导体存储装置的第2写入的流程图。
图29是表示第2写入方法中的动作波形的波形图。
图30是表示程序循环中的记忆胞的阈值的变动的图。
图31是表示程序循环中的记忆胞的阈值的变动的图。
图32是表示程序循环中的记忆胞的阈值的变动的图。
图33是表示第4写入方法中的动作波形的波形图。
图34是表示程序循环中的记忆胞的阈值的变动的图。
图35是表示第4写入方法中的动作波形的波形图。
图36是表示第4写入方法中的动作波形的波形图。
图37是表示程序循环中的记忆胞的阈值的变动的图。
图38是表示程序循环中的记忆胞的阈值的变动的图。
图39是表示第5写入方法中的动作波形的波形图。
图40是表示第6写入方式的具体例的图。
图41是表示第7写入方式的具体例的图。
图42是存储系统的另一例的框图。
具体实施方式
以下,参照图式对实施方式的详情进行说明。进行说明时,对于所有图中的共通的部分标注共通的参照符号。
<1>第1实施方式
<1-1>概况
首先,说明第1实施方式的概况。
作为非易失性半导体存储装置的存储方式之一,有通过将记忆胞的阈值设为规定的电压而存储数据的方式。
例如,如图1所示,当在一个记忆胞中存储1位(2值)数据时,将记忆胞的阈值设为“Er”级、或者“A”级(标准值AV以上)中的任一个阈值。这样,当在一个记忆胞中存储1位数据时,能充分确保“Er”级的阈值分布与“A”级的阈值分布的间隔。
然而,要求在一个记忆胞中存储多位(多值)数据。如图1所示,当在一个胞中存储多位(例如2位)数据时,设有多个标准值(AV、BV、CV)。因此,要求以比在一个记忆胞中存储1位数据时窄的阈值分布写入数据。
然而,随着半导体存储装置的微细化的进步,记忆胞间的差异增大,并且受到干扰或温度变化的影响,从而阈值分布的宽度有时会变大。该情况下,如图1所示,邻接的阈值分布会重叠,或阈值分布会低于标准值。
而且,随着多值化,需要改变读出电位进行多次读出动作,从而读出时间增加。
对此,作为非易失性半导体存储装置的存储方式之一,考虑到将多个记忆胞(例如n个(n为任意的整数))设为1个群组,根据1个群组内的记忆胞的阈值的顺序决定数据的方式(参照图2)。
如图2所示,当1个群组中含有n个记忆胞时,记忆胞的阈值的顺序为n!。也就是说,能以1个群组定义n!值的数据。
在图1所示的方式中,存在如图3的虚线所示的4个分布。然而,在图2所示的方式中,与图1中说明的方式不同,并未针对每个数据设定阈值。因此,若以图2所示的方式观察记忆胞的阈值分布,则如图3所示,可见一个分布。
以下,对于采用图2所说明的方式的半导体存储装置进行说明。
<1-2>结构
首先,对于第1实施方式的半导体存储装置的结构进行说明。
<1-2-1>存储系统的整体结构
使用图4对第1实施方式中的存储系统的结构例进行说明。图4是表示第1实施方式中的存储系统的结构的一例的框图。存储系统100例如与外部的主机设备200进行通信。存储系统100保存来自主机设备200的数据,且将数据读出到主机设备200。
如图4所示,存储系统100具有存储控制器10及半导体存储装置(NAND闪速存储器)20。存储控制器10从主机设备200接收命令,按照所接收的命令控制半导体存储装置20。具体而言,存储控制器10将由主机设备200指示了写入的数据写入到半导体存储装置20,并从半导体存储装置20读出由主机设备200指示了读出的数据并将其发送到主机设备200。存储控制器10通过NAND总线连接于半导体存储装置20。半导体存储装置20具有多个记忆胞,非易失地存储数据。
NAND总线对于基于NAND接口的各个信号/CE、CLE、ALE、/WE、/RE、/WP、/RB、及I/O<7:0>经由个别的配线进行收发。信号/CE是用于使半导体存储装置20可启用的信号。信号CLE通知半导体存储装置20在信号CLE为“H(High)”级期间半导体存储装置20上流动的信号I/O<7:0>为命令。信号ALE通知半导体存储装置20在信号ALE为“H”级期间半导体存储装置20上流动的信号I/O<7:0>为地址。信号/WE指示在信号/WE为“L(Low)”级期间将半导体存储装置20上流动的信号I/O<7:0>取入到半导体存储装置20。信号/RE指示将信号I/O<7:0>输出到半导体存储装置20。信号/WP向半导体存储装置20指示禁止数据的写入及删除。信号/RB表示半导体存储装置20处于就绪状态(接受来自外部的命令的状态)、还是处于忙碌状态(不接受来自外部的命令的状态)。信号I/O<7:0>例如为8位信号。信号I/O<7:0>是在半导体存储装置20与存储控制器10之间收发的数据的实体,包括命令CMD、地址ADD、及数据DAT。数据DAT包括写入数据及读出数据。
<1-2-2>控制器的结构
接着,利用图4,对第1实施方式中的存储系统的控制器进行说明。存储控制器10具有处理器(CPU:Central Processing Unit,中央处理器)11、内置存储器(RAM:RandomAccess Memory,随机存取存储器)12、ECC(Error Check and Correction,错误检查与纠正)电路13、NAND接口电路14、缓冲存储器15、及主机接口电路16。
处理器11控制存储控制器10整体的动作。处理器11例如响应从主机设备200接收的数据的读出命令,将基于NAND接口的读出命令发送给半导体存储装置20。此动作在写入及删除时也同样如此。而且,处理器11具有对来自半导体存储装置20的读出数据执行各种运算的功能。
内置存储器12例如为DRAM(Dynamic RAM,动态RMA)等半导体存储器,用作处理器11的作业区域。内置存储器12保存用于管理半导体存储装置20的固件、及各种管理表等。
ECC电路13进行错误检测及错误纠正处理。更具体而言,在写入数据时,根据从主机设备200接收的数据,针对某些数据的组而产生ECC符号。而且,在读出数据时,根据ECC符号进行ECC解码,检测有无错误。并且,当检测到错误时,指定其比特位置并纠正错误。
NAND接口电路14经由NAND总线与半导体存储装置20连接,负责与半导体存储装置20通信。NAND接口电路14基于处理器11的指示,将命令CMD、地址ADD、及写入数据发送到半导体存储装置20。而且,NAND接口电路14从半导体存储装置20接收读出数据。
缓冲存储器15暂时保存由存储控制器10从半导体存储装置20及主机设备200接收到的数据等。缓冲存储器15用作例如暂时保存来自半导体存储装置20的读出数据、及与读出数据对应的运算结果等的存储区域。
主机接口电路16与主机设备200连接,负责与主机设备200的通信。主机接口电路16例如将从主机设备200接收到的命令及数据分别传输到处理器11及缓冲存储器15。
<1-2-3>半导体存储装置的结构
接着,利用图5,对第1实施方式的半导体存储装置的结构例进行说明。图5是表示第1实施方式的半导体存储装置的结构的一例的框图。
半导体存储装置20具有记忆胞阵列21、输入输出电路22、逻辑控制电路23、寄存器24、序列产生器25、电压产生电路26、驱动器组件27、行解码器28、及感测放大器模块29。
记忆胞阵列21具有多个区块BLK。区块BLK包含与字线及位线相关联的多个非易失性记忆胞晶体管(未图示)。区块BLK例如成为数据的删除单位,同一区块BLK内的数据可一次性删除。各区块BLK具有多个串单元SU。各串单元SU是NAND串NS的集合。NAND串NS包括多个记忆胞晶体管。以下,记忆胞晶体管也简单地记为“记忆胞”或者“胞”。而且,将同一字线上连接的多个记忆胞晶体管单位记为群组GP。本实施方式中的半导体存储装置中,以群组为单位存储数据。另外,记忆胞阵列21内的区块数、1区块BLK内的串单元数、1串单元SU内的NAND串数、及1个群组内的记忆胞晶体管数可设定为任意数。尤其是群组与记忆胞晶体管的关系例如存储在输入输出电路22中。
输入输出电路22与存储控制器10收发信号I/O<7:0>。输入输出电路22将信号I/O<7:0>内的命令CMD及地址ADD传输给寄存器24。输入输出电路22与感测放大器模块29收发写入数据及读出数据。输入输出电路22具有转换电路22a。转换电路22a在接收信号I/O<7:0>后,以1个群组能存储的位(1个群组由4个胞构成时,为4位)为单位转换为顺位数据。所谓顺位数据是指用于规定顺位信息(胞的阈值的排列顺序)的数据格式。
逻辑控制电路23从存储控制器10接收信号/CE、CLE、ALE、/WE、/RE、及/WP。而且,逻辑控制电路23将信号/RB传输给存储控制器10后将半导体存储装置20的状态通知给外部。
寄存器24保存命令CMD及地址ADD。寄存器24将地址ADD传输给行解码器28及感测放大器模块29,且将命令CMD传输给序列产生器25。
序列产生器25接收命令CMD,根据基于所接收的命令CMD的序列而控制整个半导体存储装置20。
电压产生电路26根据来自序列产生器25的指示,产生数据的写入、读出、及删除等动作所需的电压。电压产生电路26将所产生的电压供给到驱动器组件27。
驱动器组件27包含多个驱动器,根据来自寄存器24的地址将来自电压产生电路26的各种电压供给到行解码器28及感测放大器模块29。驱动器组件27例如根据地址中的行地址,向行解码器28供给各种电压。
行解码器28从寄存器24接收地址ADD中的行地址,根据例如该行地址内的区块地址选择区块BLK等。并且,经由行解码器28,将来自驱动器组件27的电压传输到所选择的区块BLK。
感测放大器模块29在读出数据时,感测从记忆胞晶体管读出到位线的读出数据,并将感测到的读出数据传输到输入输出电路22。感测放大器模块29在写入数据时,将经由位线写入的写入数据传输到记忆胞晶体管。而且,感测放大器模块29从寄存器24接收地址ADD中的列地址,输出基于该列地址的列的数据。
<1-2-4>记忆胞阵列的结构
接着,利用图6,对第1实施方式的半导体存储装置的记忆胞阵列的结构进行说明。图6是用于说明第1实施方式的半导体存储装置的记忆胞阵列的结构的电路图的一例。
如图6所示,NAND串NS各自具有例如8个记忆胞晶体管MT(MT1~MT8)、选择晶体管ST1及选择晶体管ST2。另外,记忆胞晶体管MT的个数并不限于8个,也可为16个、32个、64个、96个、128个等,其数量并无限定。记忆胞晶体管MT具有包含控制栅极及电荷蓄积层的叠层栅极。各记忆胞晶体管MT串联连接于选择晶体管ST1及ST2之间。另外,以下的说明中所谓的“连接”还包括其间介有其他可导电的要素的情况。
而且,如图6所示,一个群组GP包含连接着同一字线WL的多个(例如4个)记忆胞晶体管。此处,针对每个群组存储数据。
记忆胞阵列的结构也可为其他结构。也就是说,记忆胞阵列的结构例如记载于2009年3月19日申请的美国专利申请12/407,403号“三维叠层非易失性半导体存储器”中。而且,记载于2009年3月18日申请的美国专利申请12/406,524号“三维叠层非易失性半导体存储器”、2010年3月25日申请的美国专利申请12/679,991号“非易失性半导体存储装置及其制造方法”、2009年3月23日申请的美国专利申请12/532,030号“半导体存储器及其制造方法”中。这些专利申请全部以参照的形式沿用在本申请说明书中。
<1-2-5>感测放大器模块的结构
利用图7,对第1实施方式的半导体存储装置的感测放大器模块的结构进行说明。
如图7所示,第1实施方式的半导体存储装置的感测放大器模块29具有多个感测部291(291_1~291_k)及锁存器部292(292_1~292_k)。
各感测部291针对每根位线设置与一个群组GP相关的感测放大器SA与锁存器电路SDL的组合。
感测放大器SA经由位线BL从记忆胞读出数据,并将数据存储于锁存器电路SDL。
锁存器电路SDL存储由感测放大器SA读出的数据、或者要写入到记忆胞中的数据。
各锁存器部292具有多个锁存器电路WDL及RDL。
锁存器电路WDL存储用于向记忆胞写入数据的数据。下文中将对存储于各锁存器电路WDL中的数据进行说明。另外,锁存器电路WDL设有nC2个(n为每1个群组中的胞数)。
锁存器电路RDL存储从记忆胞读出的信息。下文中将对存储于各锁存器电路RDL的数据进行说明。而且,锁存器电路RDL设有nC2个(n为每1个群组中的胞数)。
<1-2-6>行解码器的结构
接着,利用图8,对第1实施方式的半导体存储装置的行解码器的结构进行说明。
如图8所示,行解码器28包含多个传输开关组51及多个区块解码器52。
一个传输开关组51及一个区块解码器52被分配给例如一个区块BLK。图8的示例中,传输开关组51-0及区块解码器52-0被分配给区块BLK0,传输开关组51-1及区块解码器52-1被分配给区块BLK1。以下的说明中,将作为写入、读出、及删除的对象的区块BLK称为“选择区块BLK”,将选择区块BLK以外的区块BLK称为“非选择区块BLK”。
传输开关组51包含例如10个传输晶体管TTr(TTr10、TTr1~TTr9)。
传输晶体管TTr1~TTr8分别将从驱动器组件27供给到配线CG(CG1~CG8)的电压传输到选择区块BLK的字线WL1~WL8。传输晶体管TTr1~TTr8分别包含连接于对应的区块BLK的字线WL1~WL8的第1端、连接于配线CG1~CG8的第2端、及共通连接于节点BLKSEL的栅极。
传输晶体管TTr9将从驱动器组件27供给到配线SGDL的电压传输到选择区块BLK的选择栅极线SGD。传输晶体管TTr9分别包含连接于对应的区块BLK的选择栅极线SGD的第1端、连接于配线SGDL的第2端、及共通地连接于节点BLKSEL的栅极。
传输晶体管TTr10将从驱动器组件27供给到配线SGSL的电压传输到选择区块BLK的选择栅极线SGS。传输晶体管TTr10包含连接于对应的区块BLK的选择栅极线SGS的第1端、连接于配线SGSL的第2端、及连接于节点BLKSEL的栅极。
区块解码器52在进行数据的写入、读出、及删除时,将从寄存器24接收到的区块地址信号解码。区块解码器52进行解码后,当判断与该区块解码器52对应的区块BLK为选择区块BLK时,将“H”级的信号输出到节点BLKSEL。而且,区块解码器52在判断对应的区块BLK并非选择区块BLK时,将“L”级的信号输出到节点BLKSEL。被输出到节点BLKSEL的信号使传输晶体管TTr1~TTr10在“H”级为开启状态,在“L”级为关闭状态。
驱动器组件27按照从寄存器24接收到的地址ADD向配线CG、SGDL、及SGSL供给电压。配线CG、SGDL、及SGSL将从驱动器组件27供给的各种电压传输到各个传输开关组51-0、51-1、……。也就是说,从驱动器组件27供给的电压经由与选择区块BLK对应的传输开关组51内的传输晶体管TTr1~TTr10而传输到选择区块BLK内的字线WL、选择栅极线SGD及SGS。
<1-3>动作
<1-3-1>数据存储方式
此处,将对本实施方式中的非易失性半导体存储装置的存储方式进行说明。
如上所述,本实施方式中的非易失性半导体存储装置的存储方式是对于1页,将每多个胞(例如4个胞)分为1个群组,按照1个群组内的多个胞的阈值的顺位来决定数据的方式。将此种数据记为顺位数据。
如图9及图10所示,例如,当由4个胞形成1个群组时,胞的排列方式有如4!(24)的(16值)的排列方式。若将此排列方式换算为位数,则为Log224=4.58位。而且,若将其换算为一个胞的位数,则为1.15位/1胞。此成为相当于所谓SLC(Single level cell,单级胞)的存储密度。若增加1个群组内的胞数量,则1胞的位数增大。
<1-3-2>数据格式
如图11所示,本例中的顺位数据是通过按每2胞的阈值的大小关系划分而产生。1个群组含有4个胞(胞1~胞4)时的顺位数据中,在第1位规定了胞1与胞4的阈值的大小,在第2位规定了胞1与胞3的阈值的大小,在第3位规定了胞1与胞2的阈值的大小,在第4位规定了胞2与胞4的阈值的大小,在第5位规定了胞2与胞3的阈值的大小,在第6位规定了胞3与胞4的阈值的大小。
如图11所示,当胞1的阈值小于胞4的阈值时,第1位的值成为“0”。当胞1的阈值大于胞4的阈值时,第1位的值成为“1”。
如图11所示,当胞1的阈值小于胞3的阈值时,第2位的值成为“0”。当胞1的阈值大于胞3的阈值时,第2位的值成为“1”。
如图11所示,当胞1的阈值小于胞2的阈值时,第3位的值成为“0”。当胞1的阈值大于胞2的阈值时,第3位的值成为“1”。
如图11所示,当胞2的阈值小于胞4的阈值时,第4位的值成为“0”。当胞2的阈值大于胞4的阈值时,第4位的值成为“1”。
如图11所示,当胞2的阈值小于胞3的阈值时,第5位的值成为“0”。当胞2的阈值大于胞3的阈值时,第5位的值成为“1”。
如图11所示,当胞3的阈值小于胞4的阈值时,第6位的值成为“0”。当胞3的阈值大于胞4的阈值时,第6位的值成为“1”。
图12中表示16值的数据与顺位数据的对应关系。具体而言,若输入“1”数据,则输入输出电路22产生“000000”作为顺位数据。同样,若输入2~16的数据,则输入输出电路22根据所述规则产生顺位数据。
<1-3-3>顺位数据与锁存器电路WDL
如上所述,为了写入4个胞的顺位数据,需要4C2(=6)个锁存器电路WDL。
如图13所示,本实施方式中的非易失性半导体存储装置中,具有6个锁存器电路WDL。锁存器电路WDL(1_4)存储顺位数据的第1位。锁存器电路WDL(1_3)存储顺位数据的第2位。锁存器电路WDL(1_2)存储顺位数据的第3位。锁存器电路WDL(2_4)存储顺位数据的第4位。锁存器电路WDL(2_3)存储顺位数据的第5位。锁存器电路WDL(3_4)存储顺位数据的第6位。
另外,此处,将对锁存器电路WDL(X_Y)这一表述进行说明。“锁存器电路WDL(X_Y)”中的“X”及“Y”相当于某群组中的胞的编号。例如,当胞X的阈值小于胞Y的阈值时,“锁存器电路WDL(X_Y)”中存储“0”。以及,当胞X的阈值大于胞Y的阈值时,“锁存器电路WDL(X_Y)”中存储“1”。
<1-3-4>顺位数据与锁存器电路RDL
如上所述,为了读出4个胞的顺位数据,需要4C2(=6)个锁存器电路RDL。
如图14所示,本实施方式中的非易失性半导体存储装置中具有6个锁存器电路RDL。锁存器电路RDL(1_4)存储顺位数据的第1位。锁存器电路RDL(1_3)存储顺位数据的第2位。锁存器电路RDL(1_2)存储顺位数据的第3位。锁存器电路RDL(2_4)存储顺位数据的第4位。锁存器电路RDL(2_3)存储顺位数据的第5位。锁存器电路RDL(3_4)存储顺位数据的第6位。
另外,此处,将对锁存器电路RDL(X_Y)这一表述进行说明。“锁存器电路RDL(X_Y)”中的“X”及“Y”相当于某群组中的胞的编号。例如,当胞X的阈值小于胞Y的阈值时,“锁存器电路RDL(X_Y)”中存储“0”。以及,当胞X的阈值大于胞Y的阈值时,“锁存器电路RDL(X_Y)”中存储“1”。
<1-4>动作
<1-4-1>数据写入
<1-4-1-1>概况
此处,利用图15,对本实施方式中的非易失性半导体存储装置的数据写入的概况进行说明。此处,为求简便,使用4胞/群组的示例,但实际上考虑设为9胞/群组或20胞/群组,此时的原理也相同。
如图15所示,从存储控制器10的NAND接口电路14向半导体存储装置20供给数据(S1)。
输入输出电路22将从NAND接口电路14接收到的数据以每4位进行区分(S2)。并且,输入输出电路22将已区分的数据转换为胞的顺位(S3)。而且,输入输出电路22根据胞的顺位产生顺位数据(S4)。并且,序列产生器25根据顺位数据向记忆胞进行写入。结果,1个群组中,按照基于顺位数据的排列顺序设定记忆胞的阈值(S5)。
<1-4-1-2>流程
利用图16,对本实施方式中的非易失性半导体存储装置的数据写入的流程进行说明。另外,数据的写入大概具有2个动作。第1个动作是改变记忆胞的阈值的程序。第2个动作是确认程序结果的程序验证。以下,对于通过反复执行程序及程序验证而写入数据的方法进行说明。
[步骤S101]
序列产生器25根据锁存器电路WDL中存储的顺位数据执行第1程序。作为第1程序,序列产生器25将3级的脉冲分别施加到相应的胞,进行写入以使各群组内的胞的阈值成为各个排名。另一方面,应写入到群组内的最下位的胞(第1胞)的阈值最低,因此无需进行写入。因此,该第1程序中,对于第1胞(非写入的胞)以外的胞执行程序。执行程序时的锁存器电路的动作等将于下文叙述。
[步骤S102]
序列产生器25在步骤S101之后执行程序验证动作。
[步骤S103]
作为检验1,序列产生器25检查应写入到各群组内的最下位的胞(第1胞)的排名是否正确,若在容许值以上的群组中正确,则步骤S103通过(失败的群组的容许值可任意设定)。另外,进行检验1时的锁存器电路的动作等将于下文叙述。
[步骤S104]
序列产生器25在判定检验1失败(步骤S103失败)时,对作为写入对象的胞执行第1循环程序。
[步骤S105]
序列产生器25在第1循环程序之后,对作为写入对象的胞执行第2循环程序。
[步骤S106]
序列产生器25在第2循环程序之后,对作为写入对象的胞执行第3循环程序。之后,步骤S102中,执行程序验证动作。
[步骤S107]
序列产生器25在判定检验1通过(步骤S103通过)时,进行检验2。检验2中,检查应写入到各群组内的从下方起第2个的胞(第2胞)的排名是否正确,若在容许值以上的群组中正确,则通过。
[步骤S108]
序列产生器25在判断检验2未通过验证时(步骤S107失败),执行第2循环程序。
[步骤S109]
序列产生器25在第2循环程序之后,执行第3循环程序。
[步骤S110]
序列产生器25在步骤S109之后进行程序验证。并且,之后,反复实施步骤S107。
[步骤S111]
序列产生器25在判定检验2通过程序验证时(步骤S107通过),进行检验3。
检验3中,检查应写入到最上位的胞(第4胞)的排名是否正确,若在容许值以上的群组中正确,则通过。
序列产生器25在通过检验3后,结束写入动作。
[步骤S112]
序列产生器25在判定检验3失败时(步骤S111失败),执行第3循环程序。
[步骤S113]
序列产生器25在步骤S112之后,进行程序验证。之后,反复实施步骤S111。
<1-4-1-3>具体例
接着,对本实施方式中的非易失性半导体存储装置的数据写入的具体例进行说明。以下,着重对动作波形、锁存器电路的动作的具体例进行说明。
此处,对于写入从存储控制器10接收到的数据“1100”的情况进行说明。
输入输出电路22在从存储控制器10接收“1100”时,将其转换为数据“12”。就数据“12”而言,胞1~胞4的排列顺序如图17所示,从低到高依序为胞4、胞1、胞3、胞2。表示此种胞1~胞4的排列方式的顺位数据为“100111”。另外,此处,为求简便,胞1~胞4各自所属的位线BL设为位线BL1~BL4。
顺位数据“100111”存储于锁存器电路WDL。更具体而言,锁存器电路WDL(1_4)存储顺位数据的第1位(定义胞1与胞4的阈值的大小的位)的“1”。锁存器电路WDL(1_3)存储顺位数据的第2位(定义胞1与胞3的阈值的大小的位)的“0”。锁存器电路WDL(1_2)存储顺位数据的第3位(定义胞1与胞2的阈值的大小的位)的“0”。锁存器电路WDL(2_4)存储顺位数据的第4位(定义胞2与胞4的阈值的大小的位)的“1”。锁存器电路WDL(2_3)存储顺位数据的第5位(定义胞2与胞3的阈值的大小的位)的“1”。锁存器电路WDL(3_4)存储顺位数据的第6位(定义胞3与胞4的阈值的大小的位)的“1”。
之后,将所有锁存器电路SDL设为“0”。
以下,利用图18及图19,对本具体例中的动作波形进行说明。图18及图19中,表示选择字线WL、位线BL1~BL4的电压。
[时刻T1~T6]
如图18所示,序列产生器25在时刻T1~T6执行第1程序(步骤S101)。序列产生器25在执行第1程序时,将第1脉冲、第2脉冲、第3脉冲施加到选择字线WL。第1脉冲是指对第2~4胞施加电压VPGM(1)的动作。第2脉冲是指对第3、第4胞施加电压VPGM(2)(VPGM(1)<VPGM(2))的动作。第3脉冲是指对第4胞施加电压VPGM(3)(VPGM(2)<VPGM(3))的动作。
如上所述,胞1~胞4分别连接于位线BL1~BL4。而且,胞的顺位从低到高依序为胞4、胞1、胞3、胞2。
此处,胞4的阈值Vth4设为最低状态,因此,胞4不执行第1程序。因此,在第1~第3脉冲时,位线BL4被施加非写入(禁止写入(禁止))用的电压VDDSA。换而言之,为了进行禁止,只要控制相应胞的位线BL为电压VDDSA即可。此处,对于使位线BL4为非写入的方法进行说明。利用锁存器电路WDL中存储的数据进行运算。关于运算,进行下述运算1~运算4。运算1的结果存储于位线BL1上的锁存器电路SDL(SDL1),运算2的结果存储于位线BL2上的锁存器电路SDL(SDL2),运算3的结果存储于位线BL3上的锁存器电路SDL(SDL3),运算4的结果存储于位线BL4上的锁存器电路SDL(SDL4)。另外,以下的运算1~运算4所示的“SDLx<-WDLy”这一表述是指将锁存器电路WDLy的数据存储于锁存器电路SDLx。而且,“~WDLy”这一表述是指使锁存器电路WDLy的数据反转。而且,“WDLy&WDLz”这一表述是指对锁存器电路WDLy的数据与锁存器电路WDLz的数据进行AND运算。
(运算1)SDL1<-~WDL(1_2)&~WDL(1_3)&~WDL(1_4)
(运算2)SDL2<-WDL(1_2)&~WDL(2_3)&~WDL(2_4)
(运算3)SDL3<-WDL(1_3)&WDL(2_3)&~WDL(3_4)
(运算4)SDL4<-WDL(1_4)&WDL(2_4)&WDL(3_4)
与存储“1”的锁存器电路SDL相关的位线BL是非写入的位线BL,被传输非写入用的电压VDDSA。本例中,锁存器电路SDL1~SDL3中存储“0”,锁存器电路SDL4中存储“1”。通过进行所述运算,仅使相应的锁存器电路SDL4成为数据“1”。结果,位线BL1~BL3成为写入对象,仅位线BL4成为非写入对象。
而且,胞1的阈值Vth1是从下起的第2个。因此,胞1上未施加第2、第3脉冲。因此,在第2、第3脉冲时,位线BL1上施加有非写入用的电压VDDSA。此处,将对使位线BL1为非写入的方法进行说明。利用锁存器电路WDL中存储的数据进行运算。作为运算,进行下述运算5~运算8。另外,以下的运算5~运算8所示的“SDLx|WDLy”这一表述是指对锁存器电路WDLy的数据与锁存器电路SDLx的数据进行OR运算。
(运算5)RDL(1_2)<-((~WDL(1_2)|SDL2)&(~WDL(1_3)|SDL3)&(~WDL(1_4)|SDL4))|SDL1
(运算6)RDL(1_3)<-((WDL(1_2)|SDL1)&(~WDL(2_3)|SDL3)&(~WDL(2_4)|SDL4))|SDL2
(运算7)RDL(1_4)<-((WDL(1_3)|SDL1)&(WDL(2_3)|SDL2)&(~WDL(3_4)|SDL4))|SDL3
(运算8)RDL(2_3)<-((WDL(1_4)|SDL1)&(WDL(2_4)|SDL2)&(WDL(3_4)|SLD3))|SDL4
此处,为了避免在运算的途中锁存器电路SDL的数据被重写,使用一部分锁存器电路RDL。运算5的结果存储于例如锁存器电路RDL(1_2),运算6的结果存储于例如锁存器电路RDL(1_3),运算7的结果存储于例如锁存器电路RDL(1_4),运算8的结果存储于例如锁存器电路RDL(2_3)。本例中,锁存器电路RDL(1_2)及RDL(2_3)中存储数据“1”,锁存器电路RDL(1_3)及RDL(1_4)中存储数据“0”。运算结束后,将锁存器电路RDL的数据复制到锁存器电路SDL。由此,锁存器电路SDL2及SDL3中存储“0”,锁存器电路SDL1及SDL4中存储“1”。结果,位线BL2、BL3成为写入对象,位线BL1、BL4成为非写入对象。
而且,胞3的阈值Vth3是从下起的第3个。因此,胞3上未施加第3脉冲。因此,在第3脉冲时,位线BL3上施加非写入对象用的电压VDDSA。而且,胞2的阈值Vth2最高。因此,胞2上被施加第1~第3脉冲。因此,在第1~第3脉冲时,位线BL2上被施加写入用的电压VSS。此处,对于使位线BL3为非写入的方法进行说明。利用锁存器电路WDL中存储的数据进行运算。作为运算,进行所述运算5~运算8。由此,锁存器电路SDL2中存储“0”,锁存器电路SDL1、SDL3及SDL4中存储“1”。结果,位线BL2成为写入对象,位线BL1、BL3、BL4成为非写入对象。
[时刻T7~T11]
此处,主要对于第1程序中无法按照预想的顺序进行写入的情况进行说明。例如,对于虽然想按照胞4、胞1、胞3、胞2的顺序写入,但却是按照胞4、胞3、胞1、胞2的顺序写入的情况进行说明。
首先,在程序验证的最初,将锁存器电路RDL与锁存器电路SDL重置为“0”。之后,序列产生器25进行程序验证(步骤S102)。此时,序列产生器25对选择字线WL施加程序验证用的电压VSWE。该电压VSWE例如从0V缓缓上升(扫描)到正的第1电压。通过扫描到选择字线WL,从阈值电压低的记忆胞起依序成为开启状态,流动有胞电流。结果,位线的电位从充电电压VDDx下降到VSSx。感测放大器SA判定各位线BL的电压下降到VSSx的时间点(timing)。在这样的程序验证中,下降到VSSx的时间点越早,意味着阈值越低。读出结果存储于锁存器电路RDL中。具体而言,锁存器电路RDL(1_2)中存储“0”,锁存器电路RDL(1_2)中存储“0”,锁存器电路RDL(1_3)、(1_4)、(2_3)、(2_4)、(3_4)中存储“1”。
接着,在检验1的状态下,探测各群组的最下位的胞的顺序是否正确记入。对锁存器电路WDL中存储的写入数据与锁存器电路RDL中存储的程序验证结果进行XNOR运算,并回写到锁存器电路RDL。
具体而言,对锁存器电路WDL(1_2)与锁存器电路RDL(1_2)进行XNOR运算。此处,锁存器电路WDL(1_2)为“0”,锁存器电路RDL(1_2)为“0”,因此,锁存器电路RDL(1_2)中存储“1”。
同样,对锁存器电路WDL(1_3)与锁存器电路RDL(1_3)进行XNOR运算。此处,锁存器电路WDL(1_3)为“0”,锁存器电路RDL(1_3)为“1”,因此,锁存器电路RDL(1_3)中存储“0”。
对锁存器电路WDL(1_4)与锁存器电路RDL(1_4)进行XNOR运算。此处,锁存器电路WDL(1_4)为“1”,锁存器电路RDL(1_4)为“1”,因此,锁存器电路RDL(1_4)中存储“1”。
对锁存器电路WDL(2_3)与锁存器电路RDL(2_3)进行XNOR运算。此处,锁存器电路WDL(2_3)为“1”,锁存器电路RDL(2_3)为“1”,因此,锁存器电路RDL(2_3)中存储“1”。
对锁存器电路WDL(2_4)与锁存器电路RDL(2_4)进行XNOR运算。此处,锁存器电路WDL(2_4)为“1”,锁存器电路RDL(2_4)为“1”,因此,锁存器电路RDL(2_4)中存储“1”。
对锁存器电路WDL(3_4)与锁存器电路RDL(3_4)进行XNOR运算。此处,锁存器电路WDL(3_4)为“1”,锁存器电路RDL(3_4)为“1”,因此,锁存器电路RDL(3_4)中存储“1”。
通过进行该运算,在写入数据与读出数据不一致的锁存器电路RDL中保存“0”。接着,进行将比较数据传输到锁存器电路SDL的作业。在程序验证后,锁存器电路SDL中存储“1”。
此处,进行下述运算。
(运算9)SDL1<-~(RDL(1_2)&RDL(1_3)&RDL(1_4))
(运算10)SDL2<-~(RDL(1_2)&RDL(2_3)&RDL(2_4))
(运算11)SDL3<-~(RDL(1_3)&RDL(2_3)&RDL(3_4))
(运算12)SDL4<-~(RDL(1_4)&RDL(2_4)&RDL(3_4))
由此,在阈值的排名与期待值不同的位线上的锁存器电路SDL中保存“1”。本例中,锁存器电路SDL1及SDL3中存储“0”,锁存器电路SDL2及SDL4中存储“0”。该数据被传输到连接于锁存器电路SDL的感测放大器SA内的未图示的锁存器电路。该数据用于对与期待值不同的感测放大器SA标注表示“检验失败”的失败标记(flag)。具体而言,向连接于锁存器电路SDL1的感测放大器SA1传输“0”。同样,向连接于锁存器电路SDL2的感测放大器SA2传输“0”。向连接于锁存器电路SDL3的感测放大器SA3传输“1”。向连接于锁存器电路SDL4的感测放大器SA4传输“0”。
并且,进行下述运算。另外,运算13~16中使用运算9~12中运算出的锁存器电路SDL1~SDL4的数据进行运算。
(运算13)SDL1<-((~WDL(1_2)|SDL2)&(~WDL(1_3)|SDL3)&(~WDL(1_4)|SDL4))|SDL1
(运算14)SDL2<-((WDL(1_2)|SDL1)&(~WDL(2_3)|SDL3)&(~WDL(2_4)|SDL4))|SDL2
(运算15)SDL3<-((WDL(1_3)|SDL1)&(WDL(2_3)|SDL2)&(~WDL(3_4)|SDL4))|SDL3
(运算16)SDL4<-((WDL(1_4)|SDL1)&(WDL(2_4)|SDL2)&(WDL(3_4)|SLD3))|SDL4另外,此时,运算前的锁存器电路WDL(1_2)、及(1_3)存储“0”,WDL(1_4)、(2_3)、(2_4)、及(3_4)存储“1”。而且,锁存器电路SDL1、及SDL3存储“0”,SDL2及SDL4存储“1”。因此,在所述运算13~运算16之后,在锁存器电路SDL1、SDL2、及SDL4中存储“1”,在锁存器电路SDL3中存储“0”。
接着,将锁存器电路SDL与锁存器电路RDL重置为“0”后,进行
(运算17)SDL1<-~WDL(1_2)&~WDL(1_3)&~WDL(1_4)
(运算18)SDL2<-WDL(1_2)&~WDL(2_3)&~WDL(2_4)
(运算19)SDL3<-WDL(1_3)&WDL(2_3)&~WDL(3_4)
(运算20)SDL4<-WDL(1_4)&WDL(2_4)&WDL(3_4)
运算17~运算20,在第1胞的锁存器电路SDL中存储“1”。
该情况下,阈值Vth4最小,因此在锁存器电路SDL4中存储“1”。
之后,为了反映感测放大器SA中保存的失败标记的信息,以感测放大器SA及锁存器电路SDL进行运算,存储于锁存器电路RDL中。
另外,此时,感测放大器SA1及SA3中存储“1”,感测放大器SA2及SA4中存储“0”。而且,锁存器电路SDL1、SDL2、及SDL3中存储“0”,锁存器电路SDL4中存储“1”。
当以感测放大器SA及锁存器电路SDL进行运算,锁存器电路RDL中哪怕只有1个“1”时,也为“失败”。在本次的假设中,锁存器电路RDL全部存储的是“0”,因此为“通过”。
检验1通过后,转移到检验2的状态。检验2中,进行(运算5)~(运算8)。
状态为,锁存器电路SDL1~SDL3中存储“0”,锁存器电路SDL4中存储“1”。而且,状态为,锁存器电路WDL(1_2)、及(1_3)中存储“0”,锁存器电路WDL(1_4)、(2_3)、(2_4)、及(3_4)中存储“1”。因此,通过运算5~运算8,使得状态成为,锁存器电路RDL(1_3)、及(1_4)中存储“0”,锁存器电路WDL(1_2)、及(2_3)中存储“1”。
之后,将锁存器电路RDL的数据复制到锁存器电路SDL。另外,序列产生器25的未图示的存储部中预先存储着将6个锁存器电路RDL中的哪4个锁存器电路RDL的数据复制到4个锁存器电路SDL。
结果,状态为,锁存器电路SDL2、及SDL3中存储“0”,锁存器电路SDL1、及SDL4中存储“1”。
之后,与检验1时相同,为了反映失败标记的结果,进行锁存器电路SDl&感测放大器SA的运算,将运算结果保存在锁存器电路RDL中。
感测放大器SA2、及SA4中存储“0”,感测放大器SA1、及SA3中存储“1”。因此,锁存器电路RDL(1_2)中存储“1”,锁存器电路RDL(1_3)、(1_4)、及(2_3)中存储“0”。
此处,因存在存储“1”的锁存器电路RDL,所以检验2失败,向下一个第2循环程序的状态转移。
[时刻T20~T21]
如图19所示,序列产生器25在时刻T20~T21执行第2循环程序(步骤S108)。另外,此时,锁存器电路SDL2、及SDL3存储着“0”。也就是说,位线BL2、及BL3的电位成为VSS,位线BL1、及BL4的电位成为VDDSA。由此,向锁存器电路SDL2、及SDL3的胞2、及胞3施加程序电压。
[时刻T22~T23]
接着,向第3循环程序的状态转移。此处,为了筛选非写入胞与写入胞,也与第2循环程序时同样地进行运算5~运算8。
状态为,锁存器电路SDL2、及SDL3中存储“0”,锁存器电路SDL1、及SDL4中存储“1”。而且,状态为,锁存器电路WDL(1_2)、及(1_3)中存储“0”,锁存器电路WDL(1_4)、(2_3)、(2_4)、及(3_4)中存储“1”。因此,通过运算5~运算8,状态成为,锁存器电路RDL(1_3)中存储“0”,锁存器电路RDL(1_2)、(1_4)、及(2_3)中存储“1”。
之后,使锁存器电路RDL的数据向锁存器电路SDL移动。也就是说,状态为,锁存器电路SDL2中存储“0”,锁存器电路SDL1、SDL3、及SDL4中存储“1”。也就是说,位线BL1、BL3、及BL4成为非写入状态。也就是说,序列产生器通过之后施加脉冲,能仅对胞2施加写入电压从而使阈值上升。
[时刻T24~T29]
第3循环程序结束后,进行程序验证。
此处,对于在所述的第2循环程序及第3循环程序中按照期待值的顺序完成记入的情况进行说明。该情况下,使检验1、检验2、检验3全部Pass(通过),完成写入。若检验1、检验2、检验3中的任一检验失败,则施加各种脉冲,反复写入,直至4个胞的阈值顺序全部成为期待值为止。
<1-5>效果
根据所述实施方式,将多个胞设为1个群组,根据群组内的胞的阈值的顺位来决定数据。由此,能高速进行数据写入。
以下,为了便于理解本实施方式的效果,对比较例进行说明。如使用图1所作的说明所述,作为比较例中的存储方式之一,有通过将记忆胞的阈值设为规定的电压而进行数据存储的方式。
就比较例中的存储方式而言,随着半导体存储装置的微细化、多值化,有时邻接的阈值分布会重叠,阈值分布会低于标准值。结果,在写入数据时,需要细致的控制,从而存在数据写入所需的时间增加的问题。例如,当阈值分布有4个时,须以处于该阈值分布范围内的方式执行写入动作。例如,阈值越高则阈值越难变动,从而可能需要施加更多脉冲。具体而言,如图20A所示,例如,当写A级时,以在电压AV~BV的范围内的方式进行写入。而且,当写B级时,以在电压BV~CV的范围内的方式进行写入。并且,当写C级时,以在电压CV以上的方式进行写入。
然而,根据所述实施方式,不同于比较例中的存储方式,无需考虑到阈值分布。根据所述实施方式,如图20B所示,只要能使1个群组内的胞(胞a~胞d)的阈值按照针对每个数据所决定的顺序进行排列即可。因此,根据所述实施方式,无需如比较例中的存储方式那样的高精度的写入。结果,根据所述实施方式,与比较例中的存储方式相比,可进行粗写入,因此能更高速地进行数据写入。
而且,根据所述实施方式,也期待读出、验证的高速化。就比较例中的存储方式而言,对于选择字线WL,须保持为某标准级而执行读出动作。当以比较例中的存储方式进行读出时,也考虑到使选择字线WL的电压呈阶梯状上升的读出。例如,当使选择字线WL的电压呈8段阶梯状上升时,在各种电压下执行感测动作。因此,须在各种电压下等待字线WL、及位线BL的稳定化时间。因此,即便在比较例中运用此种读出方法,也无法期待缩短时间的效果。
然而,根据本实施方式,在读出时,无须将选择字线WL保持为某标准电压,因此,可一面完全地扫描选择字线WL的电压,一面通过一次扫描读多级。因此,当记忆胞多值化时,读出时间、及验证时间(即写入时间)均可缩短。
<2>第2实施方式
第2实施方式进行说明。第2实施方式中,对感测放大器模块进行说明。并且,第2实施方式中的装置的基本的结构及基本的动作与上文所述的第1实施方式中的装置相同。因此,省略所述第1实施方式中说明的事项及根据所述第1实施方式可容易类推的事项的相关说明。
<2-1>结构
<2-1-1>比较例的感测放大器模块的结构
利用图21,对第2实施方式的比较例中的半导体存储装置的感测放大器模块的结构进行说明。此处,作为一例,对于1个群组由9个记忆胞构成的情况进行说明。
如图21所示,第2实施方式的比较例中的半导体存储装置的感测放大器模块29具有多个感测部291(291_1~291_k)及锁存器部292(292_1~292_k)。
各感测部291针对每根位线设置与一个群组GP相关的感测放大器SA与锁存器电路SDL的组合。也就是说,感测放大器SA与锁存器电路SDL是按照位线BL的根数而设。
各锁存器部292具有多个锁存器电路WDL及RDL。多个锁存器电路WDL及RDL分别设有nC2个(n为1个群组内的胞数)。本例中,假设1个群组内有9个记忆胞,那么,锁存器电路WDL及RDL分别有36个。
这样,顺位存储方式中,锁存器电路WDL及RDL的个数是由1个群组内的胞数(存储密度)而决定,密度越高则数据锁存器个数越增加。
<2-1-2>第2实施方式的感测放大器模块的结构
利用图22,对第2实施方式的半导体存储装置的感测放大器模块的结构进行说明。本例中,与所述比较例相比,将每1次存取的数据限制为比较例的一半,由此,能使锁存器电路WDL及RDL的个数减为一半左右,这样就能抑制面积的增加。
如图22所示,第2实施方式的比较例中的半导体存储装置的感测放大器模块29具有多个感测部291(291_1~291_k)、锁存器部292(292_1~292_k)、及多个运算部293(293_1~293_k)。
本例中,也与比较例相同,1个群组内存中9个记忆胞。然而,不同于比较例,各群组大致分为2种。一种是奇数位线BL相关的群组,另一种是偶数位线BL相关的群组。
运算部293具有复用器2930,该复用器2930连接着奇数位线BL或者偶数位线BL,根据所选择的群组来选择连接于感测部291的位线BL。也就是说,当选择奇数位线BL相关的群组时,运算部293使奇数位线BL连接于感测部291并活性化。并且,运算部293使偶数位线BL成为非活性状态。而且,当选择偶数位线BL相关的群组时,运算部293使偶数位线BL连接于感测部291并活性化。并且,运算部293使奇数位线BL成为非活性状态。
各感测部291的感测放大器SA及锁存器电路SDL是按照连接于运算部293的位线BL的一半的根数而设。也就是说,一个感测部291中所含的感测放大器SA及锁存器电路SDL的组合、与感测部291相关的位线BL的对应关系是1对2。运算部293_1连接着10根位线BL。因此,在与运算部293_1对应的感测部291_1,设有5组感测放大器SA及锁存器电路SDL。而且,运算部293_2连接着8根位线BL。因此,在与运算部293_2对应的感测部291_2,设有4组感测放大器SA及锁存器电路SDL。
各锁存器部292具有多个锁存器电路WDL及RDL。多个锁存器电路WDL及RDL分别设有nC2/2个(n为1个群组内的胞数)。也就是说,一个锁存器部292中所含的锁存器电路WDL及RDL、与1个群组内的胞数的对应关系是nC2/2对n。本例中,假设为1个群组中有9个记忆胞的情况,因此,锁存器电路WDL及RDL分别有18个。此处,为求简便未图示,但邻接的2个锁存器部292彼此电连接,能互相传递数据。
接着,对复用器2930进行说明。如图23所示,复用器2930具有NMOS晶体管Treh、Tre、Troh、及Tro。
晶体管Treh根据偶数位线选择信号ESEL_H而电连接偶数位线与感测放大器SA,并使偶数位线活性化。
晶体管Tre根据偶数位线非选择信号ESEL而向偶数位线传输非选择电压,并使偶数位线非活性化。非选择电压是由驱动器组件27供给。
晶体管Troh根据奇数位线选择信号OSEL_H而电连接奇数位线与感测放大器SA,并使偶数位线活性化。
晶体管Tro根据奇数位线非选择信号OSEL向奇数位线传输非选择电压,并使奇数位线非活性化。
偶数位线选择信号ESEL_H、偶数位线非选择信号ESEL、奇数位线选择信号OSEL_H、及奇数位线非选择信号OSEL受序列产生器25控制。
序列产生器25在选择偶数位线BL相关的群组时,将偶数位线选择信号ESEL_H设为“H”级、将偶数位线非选择信号ESEL设为“L”级、将奇数位线选择信号OSEL_H设为“L”级、将奇数位线非选择信号OSEL设为“H”级。由此,偶数位线BL连接于感测放大器SA(即活性化),而奇数位线BL非活性化。
而且,序列产生器25在选择奇数位线BL相关的群组时,将偶数位线选择信号ESEL_H设为“L”级、将偶数位线非选择信号ESEL设为“H”级、将奇数位线选择信号OSEL_H设为“H”级、将奇数位线非选择信号OSEL设为“L”级。由此,奇数位线BL连接于感测放大器SA(即活性化),而偶数位线BL非活性化。
<2-2>效果
根据所述实施方式,一个锁存器部292中所含的锁存器电路WDL及RDL、与1个群组内的胞数的对应关系是nC2/2对n。由此,与比较例相比,能抑制锁存器部292的面积。
<3>第3实施方式
将对第3实施方式进行说明。第3实施方式中,对感测放大器模块进行说明。并且,第3实施方式中的装置的基本的结构及基本的动作与上文所述的第1实施方式中的装置相同。因此,省略所述第1实施方式中说明的事项及根据所述第1实施方式可容易类推的事项的相关说明。
<3-1>第3实施方式的感测放大器模块的结构
利用图24~图26,对第3实施方式的半导体存储装置的感测放大器模块的结构进行说明。
如图24所示,第3实施方式的半导体存储装置的感测放大器模块29还具有多个组合电路组294(294_1~294_k)。组合电路组294是用于进行如第1实施方式中说明的、锁存器电路SDL、WDL、及RDL等所进行的运算的结构。
利用图25及图26,对组合电路组294进行更详细的说明。
如图25所示,组合电路组294具有NOR电路G1-1、G1-2、G1-3、G1-4、G2―1a、G2―1b、G2―1c、G2―1d、G2―2a、G2―2b、G2―2c、G2―2d、G2―3a、G2―3b、G2―3c、G2―3d、G2―4a、G2―4b、G2―4c、及G2―4d、及NAND电路G2―1e、G2―2e、G2―3e、及G2―4e。
NOR电路G1-1根据来自锁存器电路WDL(1_2)、锁存器电路WDL(1_3)、及锁存器电路WDL(1_4)的非反转输入进行NOR运算,并产生输出信号Q1―1。
NOR电路G1-2根据来自锁存器电路WDL(1_2)的反转输入、来自锁存器电路WDL(1_3)及锁存器电路WDL(1_4)的非反转输入进行NOR运算,并产生输出信号Q1―2。
NOR电路G1-3根据来自锁存器电路WDL(1_2)及锁存器电路WDL(1_3)的反转输入、及来自锁存器电路WDL(1_4)的非反转输入进行NOR运算,并产生输出信号Q1―3。
NOR电路G1-4根据来自锁存器电路WDL(1_2)、锁存器电路WDL(1_3)、及锁存器电路WDL(1_4)的反转输入进行NOR运算,并产生输出信号Q1―4。
NOR电路G2-1a根据来自锁存器电路WDL(1_2)的反转输入、及信号IN2―2的非反转输入进行NOR运算。
NOR电路G2-1b根据来自锁存器电路WDL(1_3)的反转输入、及信号IN2―3的非反转输入进行NOR运算。
NOR电路G2-1c根据来自锁存器电路WDL(1_4)的反转输入、及信号IN2―4的非反转输入进行NOR运算。
NOR电路G2-1d根据来自NOR电路G2-1a、G2-1b、及G2-1c的非反转输入进行NOR运算。
NAND电路G2-1e根据来自NOR电路G2-1d的非反转输入、及信号IN1―1的反转输入进行NAND运算,并产生输出信号Q2-1。
NOR电路G2-2a根据来自锁存器电路WDL(1_2)的非反转输入、及信号IN2―1的非反转输入进行NOR运算。
NOR电路G2-2b根据来自锁存器电路WDL(2_3)的反转输入、及信号IN2―3的非反转输入进行NOR运算。
NOR电路G2-2c根据来自锁存器电路WDL(2_4)的反转输入、及信号IN2―4的非反转输入进行NOR运算。
NOR电路G2-2d根据来自NOR电路G2-2a、G2-2b、及G2-2c的非反转输入进行NOR运算。
NAND电路G2-2e根据来自NOR电路G2-2d的非反转输入、及信号IN1―2的反转输入进行NAND运算,并产生输出信号Q2-2。
NOR电路G2-2a根据来自锁存器电路WDL(1_2)的非反转输入、及信号IN2―1的非反转输入进行NOR运算。
NOR电路G2-2b根据来自锁存器电路WDL(2_3)的反转输入、及信号IN2―3的非反转输入进行NOR运算。
NOR电路G2-2c根据来自锁存器电路WDL(2_4)的反转输入、及信号IN2―4的非反转输入进行NOR运算。
NOR电路G2-2d根据来自NOR电路G2-2a、G2-2b、及G2-2c的非反转输入进行NOR运算。
NAND电路G2-2e根据来自NOR电路G2-2d的非反转输入、及信号IN1―2的反转输入进行NAND运算,并产生输出信号Q2-2。
NOR电路G2-3a根据来自锁存器电路WDL(1_3)的非反转输入、及信号IN2―1的非反转输入进行NOR运算。
NOR电路G2-3b根据来自锁存器电路WDL(2_3)的非反转输入、及信号IN2―2的非反转输入进行NOR运算。
NOR电路G2-3c根据来自锁存器电路WDL(3_4)的反转输入、及信号IN2―4的非反转输入进行NOR运算。
NOR电路G2-3d根据来自NOR电路G2-3a、G2-3b、及G2-3c的非反转输入进行NOR运算。
NAND电路G2-3e根据来自NOR电路G2-3d的非反转输入、及信号IN1―3的反转输入进行NAND运算,并产生输出信号Q2-3。
NOR电路G2-4a根据来自锁存器电路WDL(1_4)的反转输入、及信号IN2―1的非反转输入进行NOR运算。
NOR电路G2-4b根据来自锁存器电路WDL(2_4)的反转输入、及信号IN2―2的非反转输入进行NOR运算。
NOR电路G2-4c根据来自锁存器电路WDL(3_4)的反转输入、及信号IN2―3的非反转输入进行NOR运算。
NOR电路G2-4d根据来自NOR电路G2-4a、G2-4b、及G2-4c的非反转输入进行NOR运算。
NAND电路G2-4e根据来自NOR电路G2-4d的非反转输入、及信号IN1―4的反转输入进行NAND运算,并产生输出信号Q2-4。
如图26所示,组合电路组294还具有ExOR电路G3-1、G3-2、G3-3、G3-4、G3-5、及G3-6、NAND电路G4-1、G4-2、G4―3、及G4-4、AND电路G5a、G5b、G5c、及G5d、以及OR电路G5e。
ExOR电路G3-1根据来自锁存器电路RDL(1_2)、及WDL(1_2)的非反转输入进行ExOR运算,并产生输出信号Q3-12
ExOR电路G3-2根据来自锁存器电路RDL(1_3)、及WDL(1_3)的非反转输入进行ExOR运算,并产生输出信号Q3-13。
ExOR电路G3-3根据来自锁存器电路RDL(1_4)、及WDL(1_4)的非反转输入进行ExOR运算,并产生输出信号Q3-14。
ExOR电路G3-4根据来自锁存器电路RDL(2_3)、及WDL(2_3)的非反转输入进行ExOR运算,并产生输出信号Q3-23。
ExOR电路G3-5根据来自锁存器电路RDL(2_4)、及WDL(2_4)的非反转输入进行ExOR运算,并产生输出信号Q3-24。
ExOR电路G3-6根据来自锁存器电路RDL(3_4)、及WDL(3_4)的非反转输入进行ExOR运算,并产生输出信号Q3-34。
NAND电路G4-1根据信号Q3―12、Q3―13、及Q3―14的非反转输入进行NAND运算,并产生输出信号Flag1。
NAND电路G4-2根据信号Q3―12、Q3―23、及Q3―24的非反转输入进行NAND运算,并产生输出信号Flag2。
NAND电路G4-3根据信号Q3―13、Q3―23、及Q3―34的非反转输入进行NAND运算,并产生输出信号Flag3。
NAND电路G4-4根据信号Q3―14、Q3―24、及Q3―34的非反转输入进行NAND运算,并产生输出信号Flag4。
AND电路G5a根据信号Flag1的非反转输入、及来自锁存器电路SDL1的非反转输入进行AND运算。
AND电路G5b根据信号Flag2的非反转输入、及来自锁存器电路SDL2的非反转输入进行AND运算。
AND电路G5c根据信号Flag3的非反转输入、及来自锁存器电路SDL3的非反转输入进行AND运算。
AND电路G5d根据信号Flag4的非反转输入、及来自锁存器电路SDL4的非反转输入进行AND运算。
OR电路G5e根据来自AND电路G5a、G5b、G5c、及G5d的非反转输入进行OR运算,作为运算结果,产生失败标记Fail。
<3-2>具体例
接着,利用图25及图26,对第3实施方式的半导体存储装置的组合电路组的动作的具体例进行说明。
以下,对在所述<1-4-1-3>中说明的具体例中运用组合电路组294的情况进行说明。
如上所述,具体例中,为了对胞按照阈值从低到高的顺序依序记为胞4、胞1、胞3、胞2,而对胞1、胞3、胞2执行第1程序。第1程序结束后,胞的阈值的顺序为胞4、胞3、胞1、胞2。因此,检验2中失败,对胞3、胞2执行第2循环程序,对胞2执行第3循环程序。这样,能将某群组内的4个胞的阈值的顺序按照阈值从低到高的顺序依序排列为胞4、胞1、胞3、胞2。
此处,将对此种具体例中的组合电路组294的动作说明。另外,具体例中,关于各锁存器电路中存储的值,请参照第1实施方式中说明的值。
步骤S101的第1程序的第1脉冲时,为了使胞4为非写入,须在锁存器电路SDL4中存储“1”。此时,组合电路组294的、NOR电路G1-1~G1-4的NOR电路的输出结果为,将Q1-1~Q1-4传输到锁存器电路SDL1~SDL4。之后,在锁存器电路SDL1~SDL3中存储“0”,在锁存器电路SDL4中存储“1”。之后,施加第1脉冲。结果,胞4成为非写入对象,未施加第1脉冲。
接着,在第1程序的第2脉冲时,为了除胞4外,还使胞1为非写入,而在锁存器电路SDL1中存储“1”。
首先,在施加第1脉冲后的数据集的时间点,使NOR电路G2-1a~G2-1c、G2-2a~G2-2c、G2-3a~G2-3c、G2-4a~G2-4c的输入中反映锁存器电路SDL1~SDL4的结果。也就是说,作为信号IN2―1~IN2―4,传输第1脉冲时使用的锁存器电路SDL1~SDL4的结果。结果,信号Q2-2及Q2―3成为“0”,信号Q2-1及Q2―4成为“1”。并且,将信号Q2-1~Q2-4的值传输到锁存器电路SDL1~SDL4。结果,锁存器电路SDL2及SDL3成为“0”,锁存器电路SDL1及SDL4成为“1”。之后,施加第2脉冲。结果,胞1及胞4成为非写入对象,未施加第2脉冲。
接着,在第1程序的第3脉冲时,为了除胞4外,还使胞3为非写入,而在锁存器电路SDL3中存储“1”。
在施加第2脉冲后的数据集的时间点,使NOR电路G2-1a~G2-1c、G2-2a~G2-2c、G2-3a~G2-3c、G2-4a~G2-4c的输入反映锁存器电路SDL1~SDL4的结果。也就是说,作为信号IN2―1~IN2―4,传输第1脉冲时使用的锁存器电路SDL1~SDL4的结果。结果,信号Q2-2成为“0”,信号Q2-1、Q2-3、及Q2―4成为“1”。并且,将信号Q2-1~Q2-4的值传输到锁存器电路SDL1~SDL4。结果,锁存器电路SDL2成为“0”,锁存器电路SDL1、SDL3、及SDL4成为“1”。之后,施加第3脉冲。结果,胞1、胞3及胞4成为非写入对象,未施加第3脉冲。这样,完成第1程序。
关于程序验证,与第1实施方式同样,当以胞4、胞3、胞1、胞2的顺序记入时,在程序验证后,锁存器电路RDL中存储规定的数据。具体而言,锁存器电路RDL(1_2)中存储“0”,锁存器电路RDL(1_3)、(1_4)、(2_3)、(2_4)、及(3_4)中存储“1”。
之后,利用ExOR电路G3―1~G3―6、及NAND电路G4-1~G4―4,运算出读出结果是否与期待值一致的标记。另外,NAND电路G4-1~G4―4的输出结果即信号Flag1~Flag4分别对应于胞1~胞4。读出数据与写入数据不一致的胞所对应的信号Flag1~Flag4成为“1”。
之后,重置锁存器电路SDL1~SDL4,将信号Q1―1~Q1-4传输到锁存器电路SDL1~SDL4。
之后,若AND电路G5a~G5d、OR电路G5e的运算结果为“1”,则检验失败。本例中,未标注Fail标记(“0”),检验1通过,向检验2转移。
检验2中,执行与第2脉冲时相同的动作。具体而言,将检验1中的锁存器电路SDL1~SDL4的数据传输到信号IN2-1~IN2―4,确定信号Q2―1~Q2―4。并且,之后,将信号Q2―1~Q2―4传输到锁存器电路SDL1~SDL4。结果,锁存器电路SDL1中存储“1”。此处,信号Flag2、Flag4的结果成为“0”,信号Flag1、Flag3的结果成为“1”。因此,OR电路G5e的结果即Fail标记成为“1”,检验2判定为失败,向第2循环程序转移。
第2循环程序中,是以检验2结束时的锁存器电路SDL1~SDL4的状态执行。之后,为了第3循环程序,更新锁存器电路SDL1~SDL4的值。该情况下,向信号IN2―1~IN2―4传输最新的锁存器电路SDL1~SDL4的值,并将由此产生的信号Q2-1~Q2-4传输到锁存器电路SDL1~SDL4。结果,锁存器电路SDL1、SDL3、SDL4中存储“1”,锁存器电路SDL2中存储“0”。因此,仅胞2成为写入对象。并且,在此状态下执行第3循环程序。
第3循环程序之后,再次进行程序验证。
此处,所述的第2循环程序及第3程序中,按期待值的顺序完成记入。
若检验1、检验2、检验3中的任一者失败,则施加各种脉冲,反复进行写入,直至4个胞的阈值顺序全部成为期待值为止。
<3-3>效果
根据所述实施方式,设有仅用于进行数据运算的电路。当利用锁存器电路进行运算时,必须考虑到不删除锁存器电路的数据,从而难以高效运算。然而,根据本实施方式,不删除锁存器电路的数据也能进行运算,因此能高效且高速地进行运算。
<4>第4实施方式
将对第4实施方式进行说明。第4实施方式中,对写入方法进行说明。并且,第4实施方式中的装置的基本的结构及基本的动作与上文所述的第1实施方式中的装置相同。因此,省略所述第1实施方式中说明的事项及根据所述第1实施方式可容易类推的事项的相关说明。
<4-1>比较例
首先,在对第4实施方式的半导体存储装置的写入方法进行说明之前,先说明采用第1实施方式中说明的写入方法时的过度编程的顾虑进行说明。
第1实施方式中说明的写入方法(也记为第1写入方法)中,在程序验证之后进行检验,根据检验的结果,将程序脉冲施加给作为写入对象的胞。
认为,在该情况下,因胞特性的差异,各个群组所需要的程序脉冲的次数不同。然而,是使用一个序列产生器25对所有群组进行写入。因此,将同一次数的脉冲施加给各群组。程序电压根据程序次数(循环次数)上升。因此,写入慢的胞被拖入所需的群组,整体上的程序电压也上升。第1实施方式的写入方式中,程序验证的次数少,因此可实现写入动作的高速化,但另一方面也有过度编程的顾虑。
利用图27,对过度编程的顾虑进行说明。此处,对1个群组内有9个胞的情况进行说明。图27的示例中,须按1~9的顺序对记忆胞进行写入。
另外,关于基本的写入动作的流程,在第1实施方式所说明的动作中分9级写入,所以仅程序脉冲的次数与检验数不同。
首先,一面利用第1程序使选择字线WL的级别阶梯式地上升一面施加8次程序脉冲。结果,此群组中,完成第1~7排名(参照图27)。然而,若其他群组中只完成第1~4排名(未图示),则序列产生器25为了完成其他排名而一面使选择字线WL的级别上升一面施加5次脉冲。此时,完成写入的胞成为写入禁止状态(禁止)。因此,未有效地对该胞施加写入电压。然而,选择字线WL的电共通地压受序列产生器25控制。因此,不论哪个群组都按照规则上升。
在所述5次脉冲之后,其他群组也完成第1~7排名。该情况下,为了写入第8及第9胞,将第1~8胞设为禁止状态,向应设为第9排名的胞施加写入电压。此时,选择字线WL的电压已经上升,对该群组的应设为第9排名的胞施加急剧变大的写入电压。结果,根据胞特性,可能会引起阈值大幅上升(参照图27)。这样的大幅的阈值上升称为过度编程等。若群组内多次发生该过度编程,则有时无法在既定的阈值内分9级写入。1个群组中所含的胞数越多,则该问题越明显。
<4-2>第2写入方法
<4-2-1>流程
接着,利用图28,对第4实施方式的半导体存储装置的第2写入方法进行说明。第2写入方法是为了抑制过度编程而对每1脉冲进行程序验证的方法。
[步骤S301]
序列产生器25根据锁存器电路WDL中存储的顺位数据执行程序。感测放大器模块29会区分要执行程序的胞与要禁止(写入禁止)的胞。
最初,仅群组内的应写入到最下位的胞禁止。对最下位以外的胞施加写入电压,胞的阈值上升。
[步骤S302]
序列产生器25在步骤S301之后,进行程序验证动作。
[步骤S303]
作为检验,序列产生器25检查步骤S301中应写入的胞的排名是否正确,若在容许值以上的群组中为正确,则步骤S303通过。该情况下,写入动作结束。
[步骤S304]
序列产生器25在判定检验失败时(步骤S303为失败),对选择字线WL的写入电压施加偏置值(ΔVPGM)。
由此,步骤S301中,可对比前一程序脉冲大偏置值的程序脉冲施加作为程序对象的胞。
<4-2-2>波形
接着,对第2写入方法中的动作波形进行说明。图29中表示选择字线WL、写入对象位线BL、禁止位线BL的电压。
如图29所示,在第2写入方法中,交替进行程序脉冲的施加与程序验证。禁止位线BL被施加电压VDDSA,写入对象位线BL被施加电压VSS。并且,被施加在选择字线WL的写入电压会根据脉冲的次数而以ΔVPGM为单位增加。
<4-2-3>效果
根据第2写入方法,针对每1脉冲进行程序验证。这样,程序验证的次数比第1写入方法有所增加,因此写入所需的时间也增加。另一方面,根据第2写入方法,如图30所示,能从最下位的胞起依序执行程序,从而能抑制如上所述的过度编程。
<4-3>第3写入方法
<4-3-1>比较例
利用图31,对比较例(第2写入方法)进行说明。
图31中表示在施加某程序脉冲后的、某群组的各个阈值状态。图31中,表示第6胞及第9胞的写入慢的情况。第2写入动作中,当第6胞的排名不同于期待值时,对其之后的胞、及第7、第8、第9胞也一并施加程序脉冲。之后的程序验证能确认第1~8排名正确,在下一程序脉冲中,仅使第9胞的阈值进一步上升。
第2写入方法中,上位的胞(本例中,第7、第8、第9胞)也与第6胞同时写入。由此,在尚有大部分胞处于低阈值的程序循环的初期有助于程序速度的高速化,另一方面,随着程序循环的进行,上位的胞的阈值有可能过度上升。
<4-3-2>第3写入方法的动作
利用图32,对第3写入方法进行说明。
第3写入方法中,并非对排名不同于期待值的胞及在该胞上位的胞施加程序脉冲,而是仅对排名不同于期待值的胞施加程序脉冲。
<4-3-3>效果
根据第3写入方法,仅对排名不同于期待值的胞施加程序脉冲。结果,不写入已排名的胞,能抑制最终的阈值分布的扩展。
<4-4>第4写入方法
<4-4-1>概况
接着,对第4写入方式进行说明。第4写入方式中,采用能以1次程序脉冲执行多个级别的写入的多级程序。
<4-4-2>波形
利用图33~图36表示多级程序的动作波形。图33、图35、图36中,表示选择字线WL、非选择字线WL、第1~4个以后的胞的位线BL的电压。
最初施加程序脉冲时,进行分开写入第1胞、2胞、3胞、第4个以后的胞的动作。
多级程序中,当使非选择字线WL的电压上升时,根据期待级,控制将各个胞相连的位线BL的电压设置为电压VDDSA的时间点,由此,能多级地控制有效施加的写入电压级。
如图33所示,为了使第1胞成为禁止状态,在使非选择字线WL的电压上升前(时刻T30),将第1胞的位线BL设为电压VDDSA。对于第2胞的位线BL,在刚使非选择字线WL上升后(时刻T31),在第1时间点(时刻T32)设为电压VDDSA。对于第3胞的位线BL,在刚使非选择字线WL上升后,在第2时间点(时刻T33)设为电压VDDSA。对于第4个以后的胞的位线BL,固定维持电压VSS。通过这样控制,有效施加的写入电压为第1胞<第2胞<第3胞<第4个以后的胞。
通过这样进行写入,胞的阈值如图34所示变动。当施加程序脉冲后,进行程序验证动作,若第1~4胞的排名正确,则向下一程序脉冲转移。下一程序脉冲中,也与最初的程序脉冲同样,利用将与各个胞相连的位线BL的电压设为电压VDDSA的时间点,来控制有效的写入电压。
第1~4胞全部完成写入。因此,如图35所示,为了设为禁止状态,在使非选择字线WL的电压上升之前(时刻T40),将第1~4胞的位线BL设为电压VDDSA。刚使非选择字线WL上升后(时刻T41),首先,将第5胞的位线BL设为电压VDDSA,隔某任意时间后(时刻T43),将第6胞的位线BL设为电压VDDSA。关于第7个以后的胞的位线BL,固定维持电压VSS。如图34所示,通过这样控制,第1~4胞的阈值不变,而第5个以后的胞的阈值变动,其变动量依序为第5胞<第6胞<第7个以后的胞。之后,进行程序验证动作,若第7胞为止的排名正确,则向下一程序脉冲转移。
最后的程序脉冲中,记入第8胞及第9胞。如图36所示,第1~7胞的位线BL从起初开始(时刻T50)设为电压VDDSA,成为禁止状态。开始使非选择字线WL上升(时刻T51),途中将第8胞的位线BL设为电压VDDSA,将第9排名的胞的位线BL固定为电压VSS,由此,分开写入第8与第9胞。最后,进行程序验证,若所有排名正确,则完成程序。
<4-4-3>效果
利用所述多级程序,能以1次程序脉冲对多个阈值进行写入,从而能飞跃性地提升写入速度。
<4-5>第5写入方法
<4-5-1>概况
接着,对第5写入方式进行说明。第5写入方式中,仅对排名不正确的胞进行有效写入。
<4-5-2>比较例
利用图37,对比较例(第4写入方式)的具体例进行说明。如图37所示,第5胞与第4胞的阈值的差值小,因此,对第5个以后的胞施加程序脉冲。
然而,该情况下,对第5个以后的排名正确的胞施加写入电压,最终的写入级可能上升。
<4-5-3>具体例
利用图38、图39,对第5写入方式的具体例进行说明。
如图38所示,第5写入方式中,进行控制以仅对排名不正确的胞施加有效写入电压。
具体而言,假设第5胞的写入速度慢。如图39所示,该情况下,当程序验证结束后,施加到选择字线WL的写入电压与前一个程序脉冲相同,将第5胞以外的胞设为禁止状态(时刻T60),对于第5胞的位线BL,非选择字线WL上升(时刻T61),在第2时间点(时刻T62)设为电压VDDSA,由此,仅对第5胞进行写入。
<4-5-4>效果
关于第5胞,在前一程序脉冲中,非写入字线WL上升且在最初的时间点将位线BL设为VDDSA。该情况下,本次的程序脉冲中,在第2时间点设为电压VDDSA,由此,能在维持选择字线WL的级别相同的情况下,使有效施加给第5胞的写入电压大于前一程序脉冲。通过如此控制,不会对第6个以后的胞过度施加写入电压,能仅对第5胞追加写入,从而能抑制过度写入。
<4-6>第6写入方法
<4-6-1>概况
接着,对第6写入方式进行说明。第6写入方式中,采用分割写入。分割写入中,将一个群组分为任意数量的子群组SGP,针对每个子群组SGP执行程序。
<4-6-2>具体例
利用图40,对第6写入方式的具体例进行说明。
图40的示例中,表示将9个胞以3个胞为一组分为3个子群组SGP的示例。将第1~3胞所属的群组设为子群组SGP1,将第4~6胞所属的群组设为子群组SGP2,将第7~第9胞所属的群组设为子群组SGP3。
首先,在第1阶段大致记入子群组SGP。
之后,在第2阶段,将各个子群组SGP中的胞记入各级。
具体而言,在第1阶段中,在子群组SGP1的胞为禁止的状态下,对选择字线WL施加写入电压VPGM2,将子群组SGP2及子群组SG P3的胞大致记入某一级。
之后,在子群组SGP1与子群组SGP2的胞为禁止的状态下,对选择字线WL施加写入电压VPGM3,将子群组SGP3的胞记入更高级。
之后,转移到第2阶段,细致地分开写入子群组SGP1中的胞。
具体而言,在第1胞为禁止的状态下,对第2及第3胞施加写入电压VPGM1。
接着,在第1胞及第2胞为禁止的状态下对第3胞施加写入电压VPGM1+ΔVPGM1。
这样,子群组SGP1内的3个胞记入各个阈值级。
同样,将子群组SGP2及子群组SGP3内的胞细致地分开记入各个阈值级,完成写入。
<4-6-3>效果
如上所述,预先分为子群组SGP,由此,能在子群组SGP内对写入慢的胞进行调整。因此,能抑制上位的胞的阈值过度上升。
<4-7>第7写入方法
<4-7-1>概况
接着,对第7写入方式进行说明。第7写入方式中,将分割写入与多级程序组合。
<4-7-2>具体例
利用图41,对第7写入方式进行说明。
如图41所示,在第1阶段中,需要增大阈值的变动量,因此无法使用多级程序。因此,在第2阶段使用多级程序。
经过第1阶段,大致记入子群组SGP1、子群组SGP2、子群组SGP3后,作为第2阶段,进行细致地记入子群组SGP1内的胞、子群组SGP2内的胞、子群组SGP3内的胞的作业。第2阶段中,采用多级程序。
<4-7-3>效果
通过在分割写入中组合多级程序,能实现写入速度的高速化。
另外,第1~第6写入方式可根据胞的特性而分别组合使用。
<5>其他
另外,所述实施方式中,半导体存储装置20中具有将信号I/O<7:0>转换为顺位数据的转换电路。然而,也可如图42所示,是存储控制器10具有将信号转换为顺位数据的转换电路。
以上,虽已说明本发明的实施方式,但本发明并不限于所述实施方式,可在不脱离其宗旨的范围内进行多种变形而实施。而且,所述实施方式中包含各种阶段的发明,可适当组合已公开的结构要件来提取各种发明。例如,只要即便从公开的结构要件中去除若干结构要件也能获得规定的效果,则可作为发明而提取。
[符号的说明]
10 存储控制器
11 处理器
12 内置存储器
13 ECC电路
14 NAND接口电路
15 缓冲存储器
16 主机接口电路
20 半导体存储装置
21 记忆胞阵列
22 输入输出电路
22a 转换电路
23 逻辑控制电路
24 寄存器
25 序列产生器
26 电压产生电路
27 电压产生电路
28 行解码器
29 感测放大器模块
51 传输开关组
52 区块解码器
100 存储系统
200 主机设备
291 感测部
292 锁存器部
293 运算部
294 组合电路组

Claims (4)

1.一种半导体存储装置,具有:
多个记忆胞;
第1电路,将第1数据转换为与所述多个记忆胞的阈值的排列顺序相关的第2数据;及
第2电路,根据所述第2数据对所述多个记忆胞进行写入;
所述第2数据具有多个规定2个记忆胞的阈值的大小的第3数据;
所述第2电路具有存储写入数据的第1锁存器组、存储从记忆胞读出的读出数据的第2锁存器组、及存储由第2锁存器组供给的读出数据的第3锁存器组,并进行根据所述第2数据选择作为写入对象的记忆胞的运算;且
所述第1锁存器组及所述第3锁存器组中所含的锁存器的数量相同,
所述第2锁存器组中所含的锁存器的数量少于所述第1锁存器组及所述第3锁存器组中所含的锁存器的数量。
2.根据权利要求1所述的半导体存储装置,其还具有控制所述第2电路、所述第1锁存器组、所述第2锁存器组、及所述第3锁存器组的序列产生器;
所述序列产生器在将所述第2数据写入多个记忆胞时,
将所述第2数据存储于所述第1锁存器组,
对于多个记忆胞,执行基于所述第2数据的第1程序,
在所述第1程序之后进行验证,
将通过所述验证获得的第4数据存储于所述第2锁存器组,
使用所述第1锁存器组、所述第2锁存器组、及所述第3锁存器组,对所述第2数据及所述第4数据进行运算而选择出作为第2程序的对象的记忆胞,
对于所述作为第2程序的对象的记忆胞执行所述第2程序。
3.根据权利要求2所述的半导体存储装置,其中
所述第2电路还具有用于进行选择所述作为第2程序的对象的记忆胞的运算的第3电路。
4.一种存储系统,具有:
控制器,具有将第1数据转换为与多个记忆胞的阈值的排列顺序相关的第2数据的第1电路;及
半导体存储装置,包含所述多个记忆胞、及根据从所述控制器发送的所述第2数据对所述多个记忆胞进行写入的第2电路;
所述第2数据具有多个规定2个记忆胞的阈值的大小的第3数据;
所述第2电路具有存储写入数据的第1锁存器组、存储从记忆胞读出的读出数据的第2锁存器组、及存储由第2锁存器组供给的读出数据的第3锁存器组,并进行根据所述第2数据选择作为写入对象的记忆胞的运算;且
所述第1锁存器组及所述第3锁存器组中所含的锁存器的数量相同,
所述第2锁存器组中所含的锁存器的数量少于所述第1锁存器组及所述第3锁存器组中所含的锁存器的数量。
CN201910589709.2A 2018-12-11 2019-07-02 半导体存储装置及存储系统 Active CN111312315B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018231802A JP2020095766A (ja) 2018-12-11 2018-12-11 半導体記憶装置
JP2018-231802 2018-12-11

Publications (2)

Publication Number Publication Date
CN111312315A CN111312315A (zh) 2020-06-19
CN111312315B true CN111312315B (zh) 2023-10-03

Family

ID=70970258

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910589709.2A Active CN111312315B (zh) 2018-12-11 2019-07-02 半导体存储装置及存储系统

Country Status (4)

Country Link
US (1) US11200951B2 (zh)
JP (1) JP2020095766A (zh)
CN (1) CN111312315B (zh)
TW (1) TWI740161B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112347001B (zh) * 2020-10-13 2023-09-26 深圳市宏旺微电子有限公司 闪存垃圾回收的校验方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200903494A (en) * 2007-07-04 2009-01-16 Macronix Int Co Ltd Method for accessing memory
CN104064219A (zh) * 2013-03-21 2014-09-24 株式会社东芝 半导体存储装置、控制器、和存储器系统
CN106898379A (zh) * 2015-12-17 2017-06-27 株式会社东芝 半导体存储装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4023953B2 (ja) * 1999-06-22 2007-12-19 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
AU2003201760A1 (en) 2002-04-04 2003-10-20 Kabushiki Kaisha Toshiba Phase-change memory device
US7397705B1 (en) * 2007-02-01 2008-07-08 Macronix International Co., Ltd. Method for programming multi-level cell memory array
JP5142692B2 (ja) 2007-12-11 2013-02-13 株式会社東芝 不揮発性半導体記憶装置
JP2009238874A (ja) 2008-03-26 2009-10-15 Toshiba Corp 半導体メモリ及びその製造方法
JP2009266944A (ja) 2008-04-23 2009-11-12 Toshiba Corp 三次元積層不揮発性半導体メモリ
JP5283960B2 (ja) 2008-04-23 2013-09-04 株式会社東芝 三次元積層不揮発性半導体メモリ
JP2011198440A (ja) 2010-03-24 2011-10-06 Toshiba Corp 不揮発性半導体記憶装置
DE102011056141A1 (de) * 2010-12-20 2012-06-21 Samsung Electronics Co., Ltd. Negativspannungsgenerator, Dekoder, nicht-flüchtige Speichervorrichtung und Speichersystem, das eine negative Spannung verwendet
US10332593B2 (en) * 2015-09-14 2019-06-25 Toshiba Memory Corporation Semiconductor memory device configured to sense memory cell threshold voltages in ascending order
US20170076790A1 (en) 2015-09-14 2017-03-16 Kabushiki Kaisha Toshiba Semiconductor memory device
KR20180080842A (ko) * 2017-01-05 2018-07-13 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
KR20190074890A (ko) * 2017-12-20 2019-06-28 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
JP7051484B2 (ja) * 2018-02-22 2022-04-11 キオクシア株式会社 半導体メモリ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200903494A (en) * 2007-07-04 2009-01-16 Macronix Int Co Ltd Method for accessing memory
CN104064219A (zh) * 2013-03-21 2014-09-24 株式会社东芝 半导体存储装置、控制器、和存储器系统
CN106898379A (zh) * 2015-12-17 2017-06-27 株式会社东芝 半导体存储装置

Also Published As

Publication number Publication date
JP2020095766A (ja) 2020-06-18
CN111312315A (zh) 2020-06-19
US20200185035A1 (en) 2020-06-11
TW202022616A (zh) 2020-06-16
TWI740161B (zh) 2021-09-21
US11200951B2 (en) 2021-12-14

Similar Documents

Publication Publication Date Title
JP4936914B2 (ja) 半導体記憶装置
US7525839B2 (en) Semiconductor memory device capable of correcting a read level properly
US8681543B2 (en) Nonvolatile memory device and related method of programming
JP4912460B2 (ja) 不揮発性メモリの読み出し動作改善における個別サイズマージンのプログラムおよび選択状態時の補償による検知
TWI480878B (zh) 使用字元線耦合之記憶體之多次程式化
US10127104B2 (en) Semiconductor memory device and memory system
JP4510072B2 (ja) 不揮発性半導体記憶装置とその書き込み方法
KR101829208B1 (ko) 반도체 메모리 장치의 동작 방법
KR101150645B1 (ko) 비휘발성 반도체 메모리 장치
KR20190073943A (ko) 반도체 메모리 장치 및 그 동작 방법
US8995211B2 (en) Program condition dependent bit line charge rate
KR100841336B1 (ko) 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리를 구비한 메모리 시스템
KR20120043516A (ko) 불휘발성 메모리 장치 및 이의 동작 방법
US10978165B2 (en) Memory system and non-volatile semiconductor memory
US8331146B2 (en) Flash memory
US9305637B2 (en) Nonvolatile semiconductor memory device
CN111312315B (zh) 半导体存储装置及存储系统
JP2009048750A (ja) 不揮発性半導体記憶装置
US8238156B2 (en) Nonvolatile semiconductor memory device and method of operating the same
KR100938044B1 (ko) 불휘발성 메모리 장치 및 그 멀티 레벨 셀 프로그램 방법
CN111145814A (zh) 非易失性存储器装置和非易失性存储器系统
JP2019149220A (ja) 半導体記憶装置及びメモリシステム
CN116266465A (zh) 存储器系统及半导体存储装置
JP2019160379A (ja) 半導体記憶装置及びメモリシステム
CN114822648A (zh) 页缓冲器、半导体存储器装置及其操作方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Tokyo

Applicant after: Kaixia Co.,Ltd.

Address before: Tokyo

Applicant before: TOSHIBA MEMORY Corp.

GR01 Patent grant
GR01 Patent grant