存储器系统的制作方法

文档序号:24339872发布日期:2021-03-19 12:21阅读:100来源:国知局
存储器系统的制作方法

[相关申请案]

本申请案享有以日本专利申请案2019-170691号(申请日:2019年9月19日)为基础申请案的优先权。本申请案通过参考该基础申请案而包含基础申请案的所有内容。

本实施方式总体来说涉及存储器系统。



背景技术:

已知有包含存储装置与控制存储装置的控制器的存储器系统。



技术实现要素:

本发明要解决的课题在于提供一种高性能的存储器系统。

实施方式的存储器系统具备包含存储单元晶体管的存储装置、及控制器。控制器构成为,设为不将存储单元晶体管中的第1数据删除则无法从存储器系统的外部参考第1数据的状态。控制器构成为,在决定对存储单元晶体管写入数据之前,使存储单元晶体管的阈值电压上升。控制器构成为,在决定对存储单元晶体管写入第2数据之后,降低来自存储单元晶体管的阈值电压设为删除状态。控制器构成为,在使存储单元晶体管为删除状态之后,对存储单元晶体管写入第2数据。

附图说明

图1是表示第1实施方式的存储器系统中的要素及连接、以及关联的要素的框图。

图2表示第1实施方式的区块的要素及连接的示例。

图3表示第1实施方式的区块的一部分的构造。

图4表示第1实施方式的存储单元晶体管的阈值电压的分布与数据的映射。

图5表示第1实施方式的地址转换表的示例。

图6表示第1实施方式的区块状态管理表的示例。

图7表示第1实施方式的存储器控制器的动作的流程。

图8表示第1实施方式的预编程的指示之间的输入输出信号的示例。

图9表示施加至第1实施方式的编程之间的若干要素的电压。

图10表示施加至第1实施方式的预编程之间的若干要素的电压。

图11表示第1实施方式的区块中的存储单元晶体管的2个时间点的阈值电压的分布的示例。

图12表示参考用的存储器控制器的动作的流程。

图13将通过参考用的动作的流程在存储单元晶体管会产生的若干状态按照时间依次表示。

图14将通过第1实施方式的动作的流程在存储单元晶体管中会产生的若干状态按照时间依次表示。

具体实施方式

以下,参考附图来描述实施方式。在以下描述中,存在具有大致相同的功能及构成的构成要素标注相同符号,并省略重复的说明的情况。或者,关于某实施方式的描述只要未全部明示地或者自明地排除,则也作为其它实施方式的描述应用。

各功能区块能够将硬件、计算机软件的任一者或者两者组合来实现。因此,以明确各功能区块也为这些任一者的方式,大概地从它们的功能的观点来描述。或者,并非必须将各功能区块像以下的示例一样加以区分。例如,一部分的功能也可以由与例示的功能区块不同的功能区块来执行。

或者,实施方式的方法的流程中的任一步骤均不限定于例示的顺序,只要未表示为并非如此,则能够按照与例示的顺序不同的顺序进行及(或)与其它步骤并行地进行。

在本说明书及权利要求书中,所谓某第1要素“连接”于其它第2要素,包含第1要素直接地或者始终或选择性地经由导电性要素连接于第2要素。

1.第1实施方式

1.1.构造(构成)

图1表示第1实施方式的存储器系统中的要素及连接、以及关联的要素。如图1所示,存储器系统5由主机装置3控制,包含存储装置1及存储器控制器2。存储器系统5例如能够为ssd(solidstatedrive,固态驱动器)或者sdtm卡等。

存储装置1由存储器控制器2控制。存储器控制器2从主机装置3接收命令,基于所接收到的命令控制存储装置1。

1.1.1.存储器控制器

存储器控制器2包含主机接口21、cpu(centralprocessingunit,中央处理器)22、ram(randomaccessmemory,随机存取存储器)23、rom(readonlymemory,只读存储器)24、存储器接口25、以及ecc(errorcorrectioncode,错误校正码)电路26。通过将储存在rom24且载入至ram23上的固件(程序)由cpu22执行,存储器控制器2执行各种动作、及主机接口21以及存储器接口25的功能的一部分。ram23进而暂时保存数据,作为缓冲存储器及高速缓冲存储器发挥功能。ram23还保存地址转换表、及区块状态管理表。关于地址转换表、及预编程管理表将在下文叙述。

主机接口21经由总线而与主机装置3连接,掌管存储器控制器2与主机装置3的通信。存储器接口25与存储装置1连接,掌管存储器控制器2与存储装置1的通信。

ecc电路26对写入至存储装置1的数据及从存储装置1读取的数据,进行错误的检测及订正所需要的处理。具体来说,ecc电路26对写入至存储装置1的数据(实际写入数据)进行错误订正编码处理。包含错误订正编码后的冗长数据的数据作为写入数据写入至存储装置1。另外,ecc电路26检测从存储装置1读取的数据的中的错误,在存在错误的情况下尝试订正错误。

1.1.2.存储装置

存储装置1经由nand(notand,与非)总线而与存储器控制器2连接。nand总线传送多个控制信号及8比特的宽度的输入输出信号dq。控制信号包含信号-ce、cle、ale、-we、-re、-wp、数据选通信号dqs及-dqs、以及就绪/忙碌信号rb。符号“-”表示反转逻辑。

存储装置1接收输入输出信号dq,发送输入输出信号dq。输入输出信号dq包含命令(cmd)、写入数据或者读取数据(dat)、地址信息(add)、及状态(sta)。

信号-ce使存储装置1使能。信号cle通知存储装置1利用输入输出信号dq发送命令。信号ale通知存储装置1利用输入输出信号dq发送地址信号。信号-we指示存储装置1获取输入输出信号dq。信号-re指示存储装置1输出输入输出信号dq。就绪/忙碌信号rb表示存储装置1为就绪状态还是忙碌状态,利用低电平表示忙碌状态。存储装置1如果处于就绪状态,会受理命令,如果处于忙碌状态,不会受理命令。

存储装置1包含存储单元阵列10、命令寄存器11、地址寄存器12、定序器13、驱动器14、行解码器15、及感测放大器16等要素。

存储单元阵列10包含多个存储器区块(区块)blk(blk0、blk1、…)。各区块blk为多个串单元su(su0、su1、…)的集合。各串单元su为多个nand串(串)ns(未图示)的集合。各串ns包含多个存储单元晶体管mt。

命令寄存器11保存由存储器控制器2接收的命令cmd。命令cmd对定序器13指示包含数据读取、数据写入、及数据删除的各种动作。

地址寄存器12保存由存储器控制器2接收的地址信息add。地址信息add例如包含区块地址bad、页地址pad、及列地址cad。区块地址bad、页地址pad、及列地址cad分别用于选择区块blk、字线wl、及位线bl。

定序器13控制存储装置1整体的动作。定序器13基于从命令寄存器11接收的命令cmd控制驱动器14、行解码器15、及感测放大器16,执行包含数据读取、数据写入、数据删除等的各种动作。

驱动器14产生存储装置1的动作所需要的各种电位,将多个电位中的所选择的电位供给至行解码器15。

行解码器15基于从地址寄存器12接收到的区块地址bad对所选择的1个区块blk传输从驱动器14供给的电位。

感测放大器16感测存储单元晶体管mt的状态,基于感测的状态产生读取数据,或者,将写入数据传输至存储单元晶体管mt。

1.1.3.存储单元阵列

图2表示第1实施方式的存储单元阵列10中的若干要素及连接的示例,表示1个区块blk0的要素及连接、以及关联的要素。多个区块blk,例如所有区块blk包含图2所示的要素及连接。

1个区块blk包含多个(例如4个)串单元su0~su3。

m(m为自然数)根位线bl0~bl(m-1)分别在各区块blk中,与分别来自串单元su0~su3的1个nand串ns连接。

各串ns包含1个选择栅极晶体管st、多个(例如8个)存储单元晶体管mt(mt0~mt7)、及1个选择栅极晶体管dt(dt0、dt1、dt2、或者dt3)。晶体管st、mt、及dt按照该顺序串联地连接于源极线celsrc与1条位线bl之间。

存储单元晶体管mt包含控制栅极电极(字线wl)、及与周围绝缘的电荷蓄积层,能够基于电荷蓄积层中的电荷的量非易失地保存数据。各串ns也可以包含未用于保存数据的虚设晶体管。与虚设晶体管连接的字线wl被称为虚设字线dwl,与字线wl加以区分。

与不同的多条位线bl分别连接的多个串ns构成1个串单元su。在各串单元su中,存储单元晶体管mt0~mt7的控制栅极电极与字线wl0~wl7分别连接。在1个串单元su中共有字线wl的存储单元晶体管mt的组被称为单元组cu。

晶体管dt0~dt3(在图2中,dt2、dt3未图示)分别属于串单元su0~su3。串单元su0的多个串ns的各自的晶体管dt0的栅极连接于选择栅极线sgdl0。同样地,串单元su1、su2、及su3的各自的多个串ns的各自的晶体管dt1、dt2、及dt3的栅极连接于选择栅极线sgdl1、sgdl2、及sgdl3。

各区块blk可具有图3所示的构造。图3概略性地表示第1实施方式的存储单元阵列的一部分的构造。如图3所示,衬底sub沿着xy面扩展。在衬底sub的上方设置着导电体cc。导电体cc作为源极celsrc发挥功能。在导电体cc的上方,设置着多个串ns。

各串ns包含存储器柱mp。存储器柱mp包含半导体的柱(柱)pl、隧道绝缘体(层)it、电荷蓄积层ca、及阻挡绝缘体(层)ib。

柱pl沿着z轴延伸,在下端与导电体cc相接,作为供晶体管mt、dt、及st的通道形成的通道区域以及主体发挥功能。隧道绝缘体it覆盖柱pl的侧面。电荷蓄积层ca为绝缘性或导电性,覆盖隧道绝缘体it的侧面。阻挡绝缘体ib覆盖隧道绝缘体it的侧面。若干柱pl的上端经由导电性的插塞cp而与导电体ct连接。导电体ct沿着x轴延伸,作为1条位线bl发挥功能,与在y轴上位于其它座标的导电体ct具有间隔。

在导电体cc的上方,设置着1个导电体cs、多个(例如8个)导电体cw、及导电体cd。导电体cs、cw、及cd按照该顺序具有间隔且沿着z轴排列,沿着y轴延伸。导电体cs、cw、及cd分别作为各串ns的选择栅极线sgsl、字线wl0~wl7、及选择栅极线sgdl发挥功能。导电体cw在yz面中分断,包含被分断的各部分的区域相当于1个区块blk。在各区块blk中,导电体cd在yz面中分断,包含被分断的各部分的区域相当于1个串单元su。

柱pl、隧道绝缘体it、电荷蓄积层ca、及阻挡绝缘体ib中的与导电体cs、cw、及cd相交的部分分别作为选择栅极晶体管st、存储单元晶体管mt、及选择栅极晶体管dt发挥功能。

导电体cc上的区域中未设置图示的要素的部分设置着层间绝缘体。

1.1.4.单元晶体管

存储装置1在1个存储单元晶体管mt中能够保存2比特以上的数据。图4表示第1实施方式的存储器系统的每1个存储单元晶体管mt保存3比特的数据的存储单元晶体管mt的阈值电压的分布与数据的映射,作为示例。各存储单元晶体管mt的阈值电压具有与所保存的数据对应的值。在每个存储单元晶体管mt存储3比特的情况下,各存储单元晶体管mt能够处于8个状态中的与阈值电压对应的1个状态。8个状态被称为“er”状态、“a”状态、“b”状态、“c”状态、“d”状态、“e”状态、“f”状态、及“g”状态。处于“er”、“a”、“b”、“c”、“d”、“e”、“f”、及“g”状态的存储单元晶体管mt按照该顺序具有更高的阈值电压。“er”状态相当于删除状态。处于若干状态的存储单元晶体管mt具有负阈值电压。作为示例,处于“er”状态或者“a”状态的存储单元晶体管mt具有负阈值电压。

通过数据写入,写入对象的存储单元晶体管mt基于写入的数据,维持为“er”状态,或移至“a”状态、“b”状态、“c”状态、“d”状态、“e”状态、“f”状态、及“g”状态的任一者。

能够对各状态以任意的形式分配3比特的数据。各状态例如作为具有以下的3比特数据的状态处理。以下描述的“abc”表示a、b、及c分别为上、中、及低的比特的值。

“er”状态:“111”

“a”状态:“110”

“b”状态:“100”

“c”状态:“000”

“d”状态:“010”

“e”状态:“011”

“f”状态:“001”

“g”状态:“101”

即便为保存某相同的3比特数据的多个存储单元晶体管mt,也会起因于存储单元晶体管mt的特性的不均等,而具有相互不同的阈值电压。

为了调出由数据读取对象的存储单元晶体管(选择存储单元晶体管)mt保存的数据,而判断选择存储单元晶体管mt的状态。将选择存储单元晶体管mt的阈值电压处于哪种范围用于该选择存储单元晶体管mt的状态的调出。为了调出选择存储单元晶体管mt的阈值电压的范围,而使用读取电压va、vb、vc、vd、ve、vf、及vg。

1个单元组cu的存储单元晶体管mt的相同的位置(位数)的比特的数据的组构成1个页。各单元组cu的存储单元晶体管mt的最上位(第1位数)的比特的数据的组被称为上页。从各单元组cu的存储单元晶体管mt的最上位起第2位数的比特的数据的组被称为中页。各单元组cu的存储单元晶体管mt的最下位(第3位数)的比特的数据的组被称为低页。

通过数据删除,降低删除对象的单元晶体管的阈值电压,向“er”状态移。

1.2.动作

1.2.1.利用ram的表的保存

存储器控制器2使用任意的构造,管理利用存储装置1保存数据的状态。管理至少包含将标注着由主机装置3分配的第1类型的地址的数据保存在存储装置1的哪里的管理。

主机装置3将由存储器系统5提供的存储空间分割为多个逻辑区域,对各逻辑区域标注固有的第1类型地址,使用第1类型地址管理存储器系统5的存储空间。存在第1类型地址被称为逻辑地址的情况。主机装置3当决定为将写入对象的数据保存在某逻辑区域时,将所决定的逻辑地址分配至写入对象数据。而且,主机装置3将写入对象数据向由逻辑地址特定的逻辑区域的写入指示给存储器控制器2。

存储器控制器2当从主机装置3请求写入标注着某逻辑地址的数据时,将写入请求对象的数据写入至存储装置1。另一方面,存储器控制器2使用与逻辑地址不同的地址体系来管理存储装置1的存储空间。存储器控制器2利用任意的方法管理在存储装置1中写入了写入请求对象的数据的区域与写入请求对象数据的逻辑地址的关系。

关于来自主机装置3的数据读取请求与数据删除请求也相同。存储器控制器2当从主机装置3接收标注着某逻辑地址的数据的读取的请求时,从在存储装置1中保存有读取请求对象的数据的区域读取数据。存储器控制器2当接收数据删除请求时,将删除请求对象的数据从存储装置1中删除。但是,存储装置1中的数据删除并不限定于响应来自主机装置3的数据删除请求即时进行。也就是说,存储器控制器2不将删除请求对象的数据实际从存储装置1删除,而将删除请求对象数据的逻辑地址设为未分配。通过这样处理,主机装置3识别为该逻辑地址的数据不存在。因此,该逻辑地址的数据无法从存储器系统5的外部参考。以下,将这样的对主机装置3而言,也就是说在存储器系统5中不存在(被删除)但在存储装置1中保存的数据在以下称为无效数据。另一方面,将对主机装置3而言,也就是说在存储器系统5中存在(保存)标注着有效的逻辑地址的数据称为有效数据。

像以上一样的管理例如能够使用图5所示的表来实现。图5表示由第1实施方式的存储器控制器2保存的地址转换表31的示例。地址转换表31如图5所示包含相互建立关联的数据的组。

地址转换表31具有多个条目。各条目包含逻辑地址、及与该逻辑地址建立关联的第2类型的地址。存在第2类型的地址被称为物理地址的情况。存储器控制器2当从主机装置3接收请求写入标注着某逻辑地址的数据时,存储器控制器2从存储装置1中的数据未写入的区域之中,决定写入了写入请求数据的区域。而且,存储器控制器2制成请求写入的数据的逻辑地址用的条目,对所制成的条目写入表示所决定的写入目的地的物理地址。物理地址为存储装置1中的地址。1个物理地址特定1个区块blk、1个串单元su、1个单元组cu、及1个页。在地址转换表31中,能够使用区块blk的地址,作为物理地址。以下的描述基于该例。

存储器控制器2当请求读取标注着某逻辑地址的数据时,参考地址转换表,知晓与该逻辑地址建立关联的物理地址,从该物理地址的区块blk读出数据。

存储器控制器2当请求删除标注着某逻辑地址的数据时,将地址转换表中的包含请求删除的数据的逻辑地址的条目删除。结果,请求删除的数据的逻辑地址与保存着该逻辑地址的数据的物理地址的关联被解除。而且,从主机装置3请求删除的数据成为无效数据。

存储器控制器2在ram23中,进而保存图6所示的表。图6表示由第1实施方式的存储器控制器2保存的区块状态管理表32的示例。

区块状态管理表32包含保存仅无效数据的(不保存有效数据的)区块(无效数据区块)blk的地址。如上所述,存在如下情况:并不限定于从主机装置3请求删除的数据马上从存储装置1实际删除,而作为无效数据在存储装置1中继续保存。无效数据必须在数据向保存无效数据的区块blk写入之前实际删除。基于该情况,存储器控制器2使用区块状态管理表32,管理保存仅无效数据的区块blk。存储器控制器2当成是成为保存仅无效数据的状态的区块blk时,将该区块blk的条目重新设置于区块状态管理表32。另一方面,存储器控制器2当将区块状态管理表32中的某区块blk中的数据实际删除时,将该区块blk从区块状态管理表32删除。

各条目包含表示是否执行预编程的信息(预编程旗标)。预编程旗标表示关于该旗标所属的条目的无效数据区块blk的信息。在第1实施方式中,对仅包含无效数据的区块blk执行预编程。预编程是指对于对象的区块blk中的所有单元组cu执行与数据的保存无关的编程,将在下文叙述。预编程也并不限定于对来自主机装置3的数据删除请求马上执行。

存储器控制器2使用区块状态管理表32,管理仅保存无效数据的区块blk中未预编程的区块blk。存储器控制器2利用区块状态管理表32中的各条目,管理该条目的区块blk是否预编程的信息。因此,区块状态管理表32包含预编程旗标。存储器控制器2如果对区块状态管理表32追加条目,那么利用该条目保存表示未执行的值的预编程旗标。如果对区块状态管理表32中所包含的区块blk中某区块blk执行预编程,那么存储器控制器2将关于该区块blk的预编程旗标更新为表示已经执行的值。

1.2.2.数据删除及数据写入

图7表示第1实施方式的存储器控制器2的动作的流程。图7表示与某1个区块blks相关的流程。在图7的流程的开始的时间点,区块blks中的各单元组cu处于写入了数据的状态。

通过区块blks转为仅保存无效数据的状态(不保存有效数据的状态)的处理开始,而开始流程。在步骤st1中,存储器控制器2进行用来使区块blks中的数据为无效数据的处理。步骤st1会因各种原因产生,根据区块blks因什么样的理由成为无效数据的详细情况,第1实施方式并不限定。具体来说,步骤st1会基于来自主机装置3的特定的请求而产生。更具体来说,当存储器控制器2从主机装置3接收删除保存在区块blks中的数据的请求时则产生步骤st1。步骤st1也会根据无用单元收集而产生。无用单元收集例如是指根据来自主机装置3的请求开始,用来消除存储装置1中的片段化的处理。也就是说,在某第1区块blk包含有效数据与无效数据的情况下,通过仅将有效数据复制至其它第2区块blk,会在连续的区域保存有效数据,而消除有效数据的片段化。与有效数据对应的逻辑地址在地址管理表中以与第2区块blk建立关联的方式被更新,结果,第1区块blk成为仅保存无效数据的状态。

或者,步骤st1会不基于来自主机装置3的请求产生。这样的示例包含所谓巡检。巡检是指由存储器控制器2执行,用来改善存储装置1中的数据的保存状态的数据的移动。也就是说,由于制造工序的不均等而在存储器系统5的使用开始时间点特定的单元组cu的特性已经较低,或因由特定的单元组cu的使用所致的特性的劣化等为原因,而某单元组cu具有较低的数据保存特性。通过检测这样的单元组cu,将数据移至数据保存特性更高的其它单元组cu,能够提高存储器系统5中的数据保存特性。随着数据的移动,地址转换表31被更新。也就是说,在将某第1逻辑地址的数据由某第1区块blk保存时表示在地址转换表31的情况下,通过巡检,将第1逻辑地址的数据保存在移动目的地的第2区块blk,地址转换表被更新。结果,根据巡检也会产生保存无效数据的区块blks。

在步骤st2中,存储器控制器2将区块状态管理表32以包含区块blks的方式更新。也就是说,存储器控制器2在区块状态管理表32制成区块blks的条目,在该条目中,将预编程执行旗标设定为表示未执行的值。

在步骤st3中,存储器控制器2对区块blks执行预编程。存储器控制器2以产生步骤st1为契机执行步骤st3。存储器控制器2只要在对区块blks写入数据的决定(下述步骤st4)之前进行,则能够将步骤st3在步骤st2以后的任意时序进行。例如,存储器控制器2能够在无从主机装置3请求的未完成的处理的期间执行步骤st3。例如,存储器控制器2能够在步骤st2之后即刻,也就是说,在区块blks成为仅保存无效数据的状态之后迅速,例如,之后即刻,执行步骤st3。存储器控制器2能够在步骤st2与步骤st3之间执行任意的处理。

步骤st3与来自主机装置3的某些请求无关地进行。也就是说,步骤st3利用存储器控制器2自发地开始。为了执行步骤st3,存储器控制器2参考区块状态管理表32。区块状态管理表32应在区块blks用的条目中,包含未执行的值的预编程旗标。基于该情况,存储器控制器2对区块blks执行预编程。存储器控制器2当对于区块状态管理表32中的某区块blk的预编程完成时,将关于该区块blk的预编程执行旗标更新为表示已经执行的值。为了执行区块blks的预编程,存储器控制器2对存储装置1指示预编程。预编程的指示包含预编程用的命令与对预编程对象的区块blks进行特定的地址的发送。

在步骤st4中,存储器控制器2决定对区块blks写入数据。数据向区块blks的写入的决定会因各种理由而产生。根据步骤st4因什么样的理由产生,第1实施方式并不限定。具体来说,步骤st4根据来自主机装置3的数据写入的请求而产生。更具体来说,当存储器控制器2接收来自主机装置3的数据写入请求时,存储器控制器2决定将该写入请求对象数据写入至未分配的区块blks。作为其它示例,存储器控制器2为了执行无用单元收集或巡检,决定对区块blks写入数据。后续步骤st5及步骤st6以执行步骤st4为契机而产生。

在步骤st5中,存储器控制器2删除区块blks中的数据。因此,存储器控制器2对存储装置1指示区块blks的数据删除。数据删除的指示包含数据删除用的命令与对区块blks进行特定的地址的发送。当数据删除完成时,存储器控制器2删除区块状态管理表32中的区块blks的条目。

在步骤st6中,存储器控制器2执行向在步骤st4中决定的区块blks写入数据。因此,存储器控制器2对存储装置1指示将在步骤st4中决定写入至区块blks的数据(写入数据)写入至区块blks。数据写入的指示包含数据写入用的命令、对区块blks进行特定的地址、对区块blks中的单元组及页进行特定的地址的发送。存储器控制器2还在地址转换表中制成写入数据的逻辑地址的条目,将区块blks的地址记入至所制成的条目。由于步骤st5作为执行步骤st6的准备进行,所以步骤st6在执行步骤st5之后迅速地执行,而不会经过长时间。例如,步骤st6在步骤st5之后即刻进行。

当步骤st6完成时,流程结束。

1.2.3.预编程

图8表示第1实施方式的预编程的指示之间的输入输出信号dq的示例。如图8所示,存储器控制器2发送命令xxh、地址信号dd、及命令yyh。命令xxh表示预编程的指示与地址后续。地址信息add表示预编程对象的区块blks的地址,可遍及多个循环发送。图8表示3个循环中的发送作为示例。命令yyh指示预编程的执行。

存储器控制器2当接收命令yyh时,以就绪/忙碌信号ry/by表示忙碌状态,并且对区块blks执行预编程。预编程类似于数据写入(编程)。数据写入包含多个编程回路的重复,各编程回路包含进行编程的阶段与进行验证的阶段。编程包含通过对编程对象的存储单元晶体管mt的电荷蓄积层ca注入电子来使编程对象的存储单元晶体管mt的阈值电压上升,及通过禁止注入电子来维持阈值电压。验证包含来自编程对象的存储单元晶体管mt的数据读取,及判断编程对象的存储单元晶体管mt是否达到目标的状态。

图9表示施加至第1实施方式的编程之间的若干要素的电压。编程仅以包含数据写入对象的单元组(选择单元组)cu的1个串单元(选择串单元)su为对象。因此,如图9所示,仅选择串单元su的选择栅极线sgdl施加选择用的电压vsgd。另一方面,选择串单元su以外的串单元su的选择栅极线sgdl持续施加电压vss(例如,0v)。

另外,与选择单元组cu中使阈值电压上升的存储单元晶体管mt连接的位线bl施加编程执行用的低电压(例如,电压vss),与未使阈值电压上升的存储单元晶体管mt连接的位线bl则施加编程禁止用的高电压(例如,电位vdd)。对源极线celsrc的电压及选择栅极线sgsl持续施加电压vss。

对与选择单元组cu连接的字线(选择字线)wl施加编程电压vpgm。对选择字线wl以外的字线wl施加比编程电压vpgm低的编程通路电压vpass。为了避免存储单元晶体管mt的阈值电压过剩地上升,而使用最初的编程回路中的编程电压vpgm较低,每次编程回路时比上次的编程回路中的编程电压vpgm稍微高的编程电压vpgm。这样一来,选择单元组cu中的阈值电压上升的对象的存储单元晶体管mt的阈值电压当每次编程回路时逐渐上升至目标的状态。

图10表示施加至第1实施方式的预编程之间的若干要素的电压。预编程例如仅包含1个编程阶段,及(或)不包含验证阶段。在预编程中,将对象的区块blks的所有串单元su的所有单元组cu设为对象。因此,对所有选择栅极线sgdl施加选择用的电压vsgd,对所有位线bl施加编程用的电压vss。进而,对所有字线wl施加编程电压vpgm。预编程中的编程vpgm例如能够使用编程中的第1回路中的编程电压vpgm。与编程的情况不同,预编程中的编程电压vpgm例如遍及比编程中的时间更长的时间施加。编程电压vpgm例如具有使负阈值电压上升至0v附近的大小,及(或)遍及使负阈值电压上升至0v附近的程度的期间而施加。该期间例如比在编程阶段中的1个回路中施加电压vpgm的期间更长。

图11表示第1实施方式的区块blks中的存储单元晶体管mt的2个时间点的阈值电压的分布的示例。图11在上部表示预编程前的状态,在下部表示预编程后的状态。上部表示图7的流程的步骤st1或者st2中的状态。下部表示图7的流程的步骤st3完成之后至步骤st5开始之前的状态。

如上部所示,区块blks中的各存储单元晶体管mt处于“er”、“a”、“b”、“c”、“d”、“e”、“f”、及“g”状态的任一者。

如下部所示,若干存储单元晶体管mt的阈值电压从预编程前的状态上升。尤其,预编程前为负的阈值电压上升。因此,处于“er”状态或者“a”状态的存储单元晶体管mt过渡至其它状态。以下,将该状态称为中性状态。在预编程中,编程电压vpgm遍及将处于比中性状态靠下的状态的存储单元晶体管mt移至中性状态的程度的期间而施加。通过预编程处于“er”或者“a”状态的存储单元晶体管mt、及处于“b”、“c”、或者“d”状态的存储单元晶体管mt的阈值电压上升。结果,处于“er”、“a”、“b”、“c”、或者“d”状态的存储单元晶体管mt的阈值电压形成中性状态的分布。例如,处于中性状态的存储单元晶体管mt的阈值电压从“b”状态遍及“d”状态分布。

另一方面,在预编程前处于“e”、“f”、或者“g”状态的存储单元晶体管mt的阈值电压几乎或者完全不上升。因此,预编程后的“e”、“f”、及“g”状态的阈值电压分布与预编程前的“e”、“f”、及“g”状态的阈值电压分布大致相同。

1.3.优点(效果)

根据第1实施方式,能够提供具有较高的数据保存性能的存储器系统5。一边使用参考用的示例一边描述该情况。

图12表示参考用的存储器控制器100的动作的流程。如图12所示,步骤st2继续于步骤st4,步骤st4继续于步骤st11。在步骤st11中,存储器控制器100与图7的步骤st3同样地,对区块blks进行预编程。但是,与存储器控制器2不同,步骤st11的预编程像先行的步骤st4一样以向区块blks的数据写入的决定为契机进行。换句话说,只要不产生步骤st4,则存储器控制器100不对区块blks进行预编程。利用像图12一样的流程,在处于某种状态的存储单元晶体管mt中,会产生像参考图13所描述一样的现象。

图13将通过图12的流程在存储单元晶体管mt会产生的若干状态按照时间依次表示。图13的状态11对仅包含无效数据的某区块blka中的某存储单元晶体管mta表示。存储单元晶体管mta处于“er”状态,基于该情况,存储单元晶体管mta在电荷蓄积层ca中包含电洞。

状态12对从状态11直接经过时间之后的存储单元晶体管mta表示。在放置的期间利用电荷蓄积层ca中的电洞吸引电子,将电子捕获至隧道绝缘体it中。状态11及状态12遍及图12的流程的步骤st1至步骤st4之前的期间而产生。

存储器控制器100在步骤st4中,决定向区块blka写入数据,作为其准备,进行步骤st11中的向区块blka的预编程。预编程的结果,以至存储单元晶体管mta具有状态13。在状态13中,存储单元晶体管mta在电荷蓄积层ca中包含电子。在状态13中,所捕获的电子保持原状。

状态14表示进行了步骤st5(数据删除)之后的存储单元晶体管mta。通过数据删除,存储单元晶体管mta在电荷蓄积层ca中会包含电洞。在状态14中,所捕获的电子也保持原状。

状态15表示进行了步骤st6(数据写入)之后的存储单元晶体管mta。通过数据写入,存储单元晶体管mta向目标状态移,在电荷蓄积层ca中会包含电子。在状态15中,所捕获的电子也保持原状。存储单元晶体管mta的验证在电子被捕获的状态下通过。因此,存储单元晶体管mta停留于目标状态,所以隧道绝缘体it必须包含电子。

状态16表示从完成步骤st6之后的状态(状态15)直接放置之后的存储单元晶体管mta。随着步骤st6完成之后的时间经过,受到来自电荷蓄积层ca中的电子的斥力,被捕获的电子从隧道绝缘体it脱离(电子脱捕获)。于是,存在存储单元晶体管mta的阈值电压降低,而不停留于目标的状态的情况。该情况是指图12的流程可未意料地抑制存储单元晶体管mta的数据保存特性。

至此为止的描述关系到存储单元晶体管mta以“er”状态放置的示例,但在存储单元晶体管mta以在电荷蓄积层中包含电洞的其它状态放置的情况下,虽然所捕获的电子的数量不同,但是也产生相同的现象。

根据第1实施方式,存储器控制器2无论是否对仅包含无效数据的某区块blk决定向该区块blk写入数据,均对该区块blk进行预编程。通过这样的流程,存储单元晶体管mt的数据保存特性较高。该情况将参考图14描述。

图14将通过第1实施方式的图7的流程会在存储单元晶体管mt中产生的若干状态按照时间依次表示。状态1及状态2与图13的状态11及状态12分别相同。

状态3表示进行了步骤st3(预编程)之后的存储单元晶体管mta。通过预编程,存储单元晶体管mta在电荷蓄积层ca中包含电子。在状态3中,所捕获的电子保持原状。

状态4表示从步骤st3完成之后的状态(状态3)直接放置之后的存储单元晶体管mta。随着步骤st3完成之后的时间经过,受到来自电荷蓄积层ca中的电子的斥力,隧道绝缘体it中的电子脱捕获。

状态5表示进行了步骤st5(数据删除)之后的存储单元晶体管mta。通过数据删除,存储单元晶体管mta在电荷蓄积层ca中包含电洞。

状态6表示进行了步骤st6(数据写入)之后的存储单元晶体管mta。通过数据写入,存储单元晶体管mta向目标状态移,在电荷蓄积层ca中包含电子。另一方面,由于步骤st5及st6继续(不经过长时间的放置)进行,所以电子几乎或完全不被隧道绝缘体it捕获。存储单元晶体管mta的验证在电荷蓄积层ca不包含电子的状态下进行。因此,存储单元晶体管mta的目标状态主要由电荷蓄积层ca中的电子的数量维持。

即便将存储单元晶体管mta从步骤st6完成之后放置,电子的脱捕获也几乎或完全不产生。因此,能够抑制起因于脱捕获的存储单元晶体管mta的阈值电压的未意料的降低。因此,根据第1实施方式,能够提供具有较高的数据保存性能的存储器系统5。

1.4.变化例

至此为止的描述与多个存储单元晶体管mt共有电荷蓄积层ca的示例有关。第1实施方式并不限定于该例。各存储单元晶体管mt也可以具有独立的电荷蓄积层ca。在该例中,电荷蓄积层ca可为导电体(所谓浮游栅极电极)。

至此为止的描述与为数据删除的单位并且由地址转换表管理的单位为区块blk的示例有关。第1实施方式并不限定于该例,也可以仅对1个存储单元晶体管mt执行像图7一样的流程。也就是说,存储器控制器2在步骤st1中,能够设为最低1个某存储单元晶体管mts具有无效数据的状态。存储器控制器2在步骤st3中,能够对存储单元晶体管mts执行预编程。存储器控制器2在步骤st4中,能够决定对存储单元晶体管mts写入数据。存储器控制器2在步骤st5中,能够删除存储单元晶体管mts的数据。存储器控制器2在步骤st6中,能够对存储单元晶体管mts写入数据。

对本发明的若干实施方式进行了说明,但这些实施方式是作为示例而提出的,并不旨在限定发明的范围。这些实施方式能够以其它各种形态实施,在不脱离发明的主旨的范围内,能够进行各种省略、置换、变更。这些实施方式或其变化包含在发明的范围或主旨中,同样地包含在权利要求书中所记载的发明及其均等的范围内。

[符号的说明]

1存储装置

2存储器控制器

3主机装置

5存储器系统

10存储单元阵列

11命令寄存器

12地址寄存器

13定序器

14驱动器

15行解码器

16感测放大器

21主机接口

22cpu

23ram

24rom

25存储器接口

26ecc电路

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