半导体存储装置 相关申请的交叉引用
本申请基于并要求 2010 年 9 月 22 日提交的日本专利申请 No.2010-212719 的优 先权, 其所有内容通过引用结合于此。
技术领域
本发明涉及半导体存储装置, 例如 NAND 型闪速存储器。 背景技术 NAND 型闪速存储器采用具有浮置栅极 (FG) 的存储单元。 数据的写入中, 通过在该 存储单元的浮置栅极蓄积电荷, 改变阈值电压, 保持数据。在数据的读出时, 读出与阈值电 压即在浮置栅极蓄积的电荷量对应的信息。
存 储 单 元 除 了 1 比 特 ( :″ 0 ″ 或 ″ 1 ″ ) 外, 可以保持多值 ( 例如 2 比特 (″ 11″, ″ 10″, ″ 01″, ″ 00″ )) 的数据。在 2 比特的场合, 在存储单元设定 4 个阈 值电压中的一个。阈值电压的设定中, 要求比存储 1 比特的场合高的精度, 但是, 写入时的 阈值变化量与写入 1 比特的情况相比没有大的改变。因此, 由于存储单元间的电容耦合等,
在某存储单元写入时, 相邻存储单元的阈值偏移, 保持数据发生变化, 即程序干扰的可能性 变高。
另外, 在例如可保持 4 值的数据的存储单元的特性劣化, 各阈值分布扩散的场合 等, 数据的读出不够精细。这样的场合, 无法从 4 值模式变更为 2 值模式。
另外, 存储单元在阈值电压一度上升而保持数据后再写入新数据的场合, 必须进 行删除动作来降低阈值电压。该删除次数有例如 1 万次左右的限制。另外, 删除次数的增 加会促进写入速度的降低, 存储单元的劣化。 发明内容 本发明的实施例是提供可抑制删除次数的增加, 防止写入速度的提高及存储单元 的劣化的半导体存储装置。
本发明的实施例的半导体存储装置, 具备 : 存储单元阵列, 其沿行及列方向形成有 根据读出电平可保持″ 0″或″ 1″的数据的存储单元 ; 控制部, 其对向上述存储单元连续 写入上述数据的次数 N(N 为 0 以上的整数 ) 计数, 根据该次数 N, 向上述存储单元传送可变 的写入电压及读出电压 ; 以及电压发生电路, 其发生上述写入电压, 用上述写入电压向上述 存储单元写入至少″ 1″比特数据, 发生上述读出电压, 从上述存储单元读出至少″ 1″比 特数据 ; 其中, 在对上述存储单元有上述次数的第 N 次 ( ≥ 2) 的写入请求时, 上述控制部使 上述电压发生电路发生与第 (N-1) 次对应的上述读出电压, 根据该读出电压从上述存储单 元读出上述″ 1″比特数据, 根据与上述写入请求对应的上述数据, 使上述电压发生电路发 生向比上述第 (N-1) 次的读出中读出的上述存储单元的阈值电压高的阈值电压转变的上 述写入电压, 在对上述存储单元的上述次数的第 N 次 ( ≥ 2) 的写入请求达到规定值时, 上
述控制部删除上述存储单元保持的上述数据。
根据本发明的实施例, 可抑制半导体存储装置中删除次数的增加, 提高写入速度 及防止存储单元的劣化。 附图说明
图 1 是第 1 实施例的 NAND 闪速存储器的构成例 ; 图 2 是第 1 实施例的存储单元的阈值分布的概念图 ; 图 3 是第 1 实施例的存储单元的保持数据的概念图 ; 图 4 是第 1 实施例的电压发生电路的方框图 ; 图 5 是第 1 实施例的控制部的动作的流程图 ; 图 6 是第 1 实施例的 NAND 闪速存储器的写入动作的时序图 ; 图 7 是第 1 实施例的与读出电压对应的存储单元的保持数据的概念图 ; 图 8 是第 1 实施例的控制部的动作的流程图 ; 图 9 是第 1 实施例的控制部的动作的流程图 ; 图 10 是第 1 实施例的变形例的存储单元的阈值分布的概念图 ; 图 11 是第 1 实施例的变形例的与读出电压对应的存储单元的保持数据的概念 图 12 是第 2 实施例的存储器系统的构成例 ; 图 13 是第 2 实施例的工作存储器的构成例 ; 图 14 是第 3 实施例的存储单元阵列的构成例 ; 图 15 是第 3 实施例的存储单元阵列的详细构成例 ; 图 16 是第 3 实施例的存储单元阵列的立体图 ; 图 17 是第 3 实施例的存储单元阵列的电路图 ; 图 18 是第 3 实施例的存储单元可能转变的阻抗分布图 ; 图 19 是第 3 实施例的存储单元的保持数据的概念图 ; 图 20 是第 3 实施例的写入电压的概念图。图;
具体实施方式
以下, 参照附图说明本发明的实施例。 在以下的说明中, 对所有的附图中的相同部 分附上相同标号。
[ 第 1 实施例 ]
本实施例在向存储单元写入新数据时, 不删除保持数据, 连续写入新数据。即, 每 次写入时使存储单元的阈值电压上升。 读出时, 采用与写入次数对应的读出电平, 通过判断 存储单元的阈值电压比该读出电平低或者高, 读出 1 比特 (″ 0″或″ 1″ ) 数据。然后, 在 写入次数达到规定值后删除数据。 即, 存储单元的写入次数达到规定值之前, 不进行数据删 除, 向同一存储单元写入多次数据。另外, 存储单元的写入次数按后述的块单位管理。这是 因为, 由于删除以块单位进行, 必须使对设置于同一块的存储单元的写入次数全部相同。
< 全体构成例 >
用图 1 说明本实施例的半导体存储装置的构成例。图 1 是本实施例的 NAND 型闪速存储器的一例的方框图。如图 1 所示, NAND 型闪速存储器具备存储单元阵列 1、 行解码器 2、 驱动器电路 3、 读出放大器 4、 ECC 电路 5、 数据输入输出电路 6、 源极线 SL 驱动器 7、 电压 发生电路 8 及控制部 9。
存储单元阵列 1 具备包含多个非易失性的存储单元晶体管 MT、 存储单元 MC 的块 BLK0 至 BLKs(s 是自然数 )。BLK0 至 BLKs 的各个具备与非易失性的存储单元 MC 串联连接 的多个 NAND 串 15。NAND 串 15 的各个具备例如 64 个存储单元 MC 和选择晶体管 ST1、 ST2。
存储单元 MC 设为可保持 2 值以上的数据。本实施例中, 说明保持电平不同的 2 值 数据的情况, 但也可以是 4 值、 8 值, 该值没有限定。
该存储单元 MC 的构造是包含在 p 型半导体基板上隔着栅极绝缘膜形成的浮置栅 极 ( 导电层 ) 和在浮置栅极上隔着栅极间绝缘膜形成的控制栅极的 FG 型。另外, 存储单元 MC 也可以是 MONOS 型。MONOS 型是指具有在半导体基板上隔着栅极绝缘膜形成的电荷蓄积 层 ( 例如绝缘膜 )、 在电荷蓄积层上形成的介电常数比电荷蓄积层高的绝缘膜 ( 以下称为块 层 ) 和进一步在块层上形成的控制栅极的构造。
存储单元 MC 的控制栅极起到字线的功能, 漏极与位线电气连接, 源极与源极线电 气连接。存储单元 MC 是 n 沟道 MOS 晶体管。另外, 存储单元 MC 的个数不限于 64 个, 也可 以是 128 个、 256 个等, 该数不限定。 存储单元 MC 在相邻的单元间共有源极、 漏极。在选择晶体管 ST1、 ST2 间, 该电流 通路以串联连接的方式配置。串联连接的存储单元 MC 的一端侧的漏极区域与选择晶体管 ST1 的源极区域连接, 另一端侧的源极区域与选择晶体管 ST2 的漏极区域连接。
同一行的存储单元 MC 的控制栅极与字线 WL0 ~ WL63 之一共同连接, 同一行的存 储单元 MC 的选择晶体管 ST1、 ST2 的栅极电极分别与选择栅极线 SGD1、 SGS1 共同连接。为 了简化说明, 以下, 在不区别字线 WL0 ~ WL63 的场合, 也简称为字线 WL。另外, 存储单元阵 列 1 中同一列的选择晶体管 ST1 的漏极与任一位线 BL0 ~ BLn 共同连接。以下, 对于位线 BL0 ~ BLn, 在不区别这些的场合, 都称为位线 BL(n 是自然数 )。选择晶体管 ST2 的源极与 源极线 SL 共同连接。
另外, 对与同一字线 WL 连接的多个存储单元 MC 一次写入数据, 将该单位称为页 面。而且, 多个存储单元 MC 按块 BLK 单位一次删除数据。
说明行解码器 2。行解码器 2 在数据的写入动作时、 读出动作时及删除时, 对从控 制部 9 提供的块地址进行解码, 根据结果选择块 BLK。从而, 行解码器 2 选择与所选择的块 BLK 对应的存储单元阵列 1 的行方向。即, 根据从控制部 9 提供的控制信号, 行解码器 2 对 选择栅极线 SGD1、 SGS1 及字线 WL0 ~ WL63 分别施加从驱动器电路 3 提供的电压。
驱动器电路 3 具备逐个选择栅极线 SGD1、 SGS1 设置的选择栅极线驱动器 31、 32 及 逐个字线 WL 设置的字线驱动器 33。本实施例中, 仅仅图示了与块 BLK0 对应的字线驱动器 33、 选择栅极线驱动器 31、 32。 但是实际中, 这些字线驱动器 33、 选择栅极线驱动器 31 及 32 与在块 BLK0 至块 BLKs 设置的例如 64 根字线 WL 及选择栅极线 SGD1、 SGS1 共同连接。
根据从控制部 9 提供的页面地址的解码结果, 选择块 BLK。字线驱动器 33 经由选 择的字线 WL 将从电压发生电路 8 提供的必要电压向该选择块 BLK 内设置的存储单元 MC 的 控制栅极传送。 选择栅极线驱动器 31 通过与选择块 BLK 对应的选择栅极线 SGD1, 将必要的 电压向选择晶体管 ST1 的栅极传送。此时, 选择栅极线驱动器 31 向选择晶体管 ST1 的栅极
传送信号 sgd。 具体地说, 选择栅极线驱动器 31 在数据的写入时、 读出时、 删除时, 而且在数 据的验证时, 经由选择栅极线 SGD1, 例如向选择晶体管 ST1 的栅极传送信号 sgd。另外, 信 号 sgd 在该信号为 L 电平的场合设为 0[V], 在 H 电平的场合设为电压 VDD( 例如, 1.8[V])。
另外, 选择栅极线驱动器 32 通过与选择块 BLK 对应的选择栅极线 SGS1, 在数据的 写入时、 读出时、 数据的验证时, 经由选择栅极线 SGS1 分别向选择晶体管 ST2 的栅极传送必 要的电压。此时, 选择栅极线驱动器 32 向选择晶体管 ST2 的栅极传送信号 sgs。信号 sgs 在该信号为 L 电平的场合设为 0[V], 在 H 电平的场合设为电压 VDD。
接着, 说明读出放大器 4。读出放大器 4 在数据的读出时, 将从与读出对象的存储 单元 MC 连接的位线 BL( 读出对象的位线 BL) 读出的数据读出并放大。
具体地说, 读出放大器 4 将作为读出对象的位线 BL 预充电到规定的电压 ( 例如, 电压 VDD) 后, 通过由行解码器 2 选择的 NAND 串 15 使位线 BL 放电, 读出该位线 BL 的放电 状态。即, 由读出放大器 4 放大位线 BL 的电压, 读出存储单元 MC 具有的数据。然后, 将读 出的数据经由数据线 Dline 向数据输入输出电路 6 传送。另外, 此时, 不是读出对象的位线 BL 固定在电压 VDD。
在数据的写入时, 读出放大器 4 向写入对象的位线 BL 传送写入数据。具体地说, 在″ 0″数据写入的场合, 向位线 BL 传送规定的电压 ( 例如, 电压 VDD), 在″ 1″数据写入 的场合, 向位线 BL 传送例如 OV。另外, 此时, 不是读出对象的位线 BL 固定在电压 VDD。
ECC 电路 5 用于进行数据的纠错 ( 错误纠正 ), 对于读出的页面保持的数据, 也进 行误读出的发生率的计算。 发生率是指例如页面方向中纠正比特数相对于存储单元的全比 特数的比例。
数据输入输出电路 6 经由没有图示的 I/O 端子将从主机 (host) 供给的地址及指 令向控制部 9 输出。数据输入输出电路 6 将写入数据经由数据线 Dline 及没有图示的数据 缓冲器 BF 向读出放大器 4 输出。另外, 数据向主机输出时, 根据控制部 9 的控制, 经由数据 线 Dline 接受读出放大器 4 放大的数据后, 经由 I/O 端子向主机输出。
源极线 SL 驱动器 7 具备 MOS 晶体管 71、 72。 MOS 晶体管 71 的电流通路的一端与源 极线 SL 连接, 另一端接地, 栅极被供给信号 Clamp_S1。MOS 晶体管 72 的电流通路的一端与 MOS 晶体管 71 的电流通路的一端共同连接, 另一端被供给电压 VDD, 栅极被供给信号 Clamp_ S2。
MOS 晶体管 71 设为导通状态时, 源极线 SL 的电位成为 0[V], MOS 晶体管 72 设为 导通状态时, 源极线 SL 的电位成为电压 VDD。另外, 提供给 MOS 晶体管 71、 72 的栅极的信号 Clamp_S1、 S2 由控制部 9 控制。另外, MOS 晶体管 72 设为导通状态是为了进行删除验证的 情况。即, 删除验证时通过将 MOS 晶体管 72 设为导通状态, 从源极线 SL 侧向位线 BL 传送 电压 VDD。
用图 2 说明上述存储单元 MC 保持的阈值电压。图 2 是横轴为阈值分布、 纵轴为存 储单元 MC 的数的曲线图。
如图示, 各存储单元 MC 根据在浮置栅极蓄积的电荷量, 例如保持 5 个状态分 布。即, 存储单元 MC 按照阈值电压 Vth 从低到高的顺序可保持″删除″状态、″ A ″状 态、″ B″状态、″ C″状态及″ D″状态的 5 种状态分布。
存储单元 MC 中的″删除″状态的阈值电压 Vth0 为 Vth0 < V01。″ A ″状态的阈值电压 Vth1 为 V01 < Vth1 < V12。另外, 该″ A ″状态的阈值分布中将下侧电压设为 Vth1_L, 上侧电压设为 Vth1_H。
″ B″状态的阈值电压 Vth2 为 V12 < Vth2 < V23。另外, 该″ B″状态的阈值分 布中将下侧电压设为 Vth2_L, 上侧电压设为 Vth2_H。
″ C″状态的阈值电压 Vth3 为 V23 < Vth3 < V34。另外, 该″ C″状态的阈值分 布中将下侧电压设为 Vth3_L, 上侧电压设为 Vth3_H。
而且,″ D″状态的阈值电压 Vth4 为 V34 < Vth4。另外, 该″ D″状态的阈值分 布中将下侧电压设为 Vth4_L, 上侧电压设为 Vth4_H。这样, 存储单元 MC 设为可根据阈值保 持 5 种状态分布。另外, 电压 V01、 电压 V12、 电压 V23 及电压 V34 是读出电平, 电压 Vth1_L、 电压 Vth1_L、 电压 Vth1_L 及电压 Vth1_L 是与写入次数对应的验证电压。
存储单元 MC 在″删除″状态中, 例如设定成负电压, 写入数据, 通过向浮置栅极 注入电荷而设定成正的阈值电压。
如上所述, 对存储单元 MC 的写入次数达到规定值之前, 覆写数据。 即, 如图 2 所示, 例如通过由第 1 次的写入向浮置栅极注入的电荷, 存储单元 MC 从″删除″状态向″ A ″状 态或″ B″状态的分布转变 ( 迁移 )。即, 保持 1 比特信息。另外, 通过由第 2 次的写入向浮 置栅极注入的电荷, 存储单元 MC 成为″ B″状态或″ C″状态的分布。通过由第 3 次的写 入向浮置栅极注入的电荷, 存储单元 MC 成为″ C″状态或″ D″状态的分布。在后述的数 据的读出时, 根据写入次数, 读出电压的值可变。从而, 读出 1 比特数据, 即″ 0″或″ 1″ 数据。 另外, 存储单元 MC 的阈值电压比读出电压低的场合, 存储单元 MC 保持″ 0″数据, 反 之, 存储单元 MC 的阈值电压比读出电压高的场合, 存储单元 MC 保持″ 1″数据。 该情形用图 3 说明。图 3 是在各写入次数通过采用存储单元 MC 可获得的状态分 布及与该写入次数对应的读出电压来判断存储单元 MC 的保持数据的概念图。
如图 3 所示, 横轴设为写入次数, 纵轴设为存储单元 MC 可保持的阈值分布。如上 所述, 存储单元 MC 在第 1 次的数据写入中, 用后述的写入电压 Vpgml 或电压 Vpgm2, 从″ 删除″状态转变为″ A ″或″ B ″的状态分布。这里, 若读出电平设为 V12( 参照图 2), 则″ A″状态设为数据″ 0″, ″ B″状态设为数据″ 1″。另外, 存储单元 MC 在第 2 次的 数据写入中, 用后述的写入电压 Vpgm3, 向″ B″或者″ C″的状态分布转变。这里, 若读出 电平设为电压 V23( 参照图 2), 则″ B″状态设为数据″ 0″,″ C″状态设为数据″ 1″。 即, 即使是同一状态分布, 存储单元 MC 也根据写入次数而保持不同的数据。
而且, 存储单元 MC 在第 3 次的数据写入中, 用后述的写入电压 Vpgm4, 向″ C ″ 或″ D″的状态分布转变。 这里, 若读出电平设为电压 V34( 参照图 2), 则″ C″状态设为数 据″ 0″, ″ D″状态设为数据″ 1″。这样, 本实施例的存储单元 MC 保持的数据根据写入 次数和其状态分布而设为″ 1″或″ 0″。
电压发生电路 8 具备第 1 电压发生电路 81、 第 2 电压发生电路 82、 第 3 电压发生 电路 83、 第 4 电压发生电路 84 及第 5 电压发生电路 85。
用图 4 说明第 1 电压发生电路 81 至第 5 电压发生电路 85。
如图 4 所示, 第 1 电压发生电路 81 至第 5 电压发生电路 85 具备限制电路 8-0 及 充电泵电路 8-1。 充电泵 8-1 根据控制部 9 发生例如数据的写入动作、 删除动作及读出动作 所必要的电压。上述各电压从节点 N1 输出, 经由驱动器电路 3 供给 NAND 型闪速存储器内
的例如行解码器 2。限制电路 5-0 一边监视节点 N1 的电位, 一边根据该节点 N1 的电位控制 充电泵电路 8-1。即, 节点 N1 的电位若比规定的值高, 则限制电路 8-0 停止充电泵电路 8-1 的充电, 使该节点 N1 的电位降压。
另一方面, 节点 N1 的电位若比规定的值低, 则使充电泵电路 8-1 充电, 使该节点 N1 的电位升压。
接着说明上述第 1 电压发生电路 81 至第 5 电压发生电路 85 发生的电压。第 1 电压发生电路 81 在数据的写入时发生电压 Vpgm1 ~ 4( 以下, 也称为写入电压 Vpgm1 ~ 4)。发生的电压 Vpgm1 ~ 4 向选择字线 WL 传送, 对上述存储单元 MC 的控制栅极施加。电 压 Vpgm1 ~ 4 是指使存储单元 MC 的正下方形成的沟道的电荷注入浮置栅极, 使该存储单元 MC 的阈值向其他电平转变的程度的大小的电压。这里 Vpgm1 ~ 4 满足电压 Vpgm1 < Vpgm2 < Vpgm3 < Vpgm4 的关系。电压 Vpgml 是从图 3 中″删除″状态向″ A″状态即阈值电压 Vth1 转变的电压, 电压 Vpgm2 是从″删除″状态向″ B″状态即阈值电压 Vth2 转变的电压 及从″ A″状态向″ B″状态转变的电压, 电压 Vpgm3 是从″ B″状态向″ C″状态即阈值 电压 Vth3 转变的电压, 电压 Vpgm4 是从″ C″状态向″ D″状态转变的电压。
第 2 电压发生电路 82 发生电压 Vpass, 向非选择字线 WL 传送该电压 Vpass。电压 Vpass 是指将存储单元 MC 设为导通状态的电压。 第 3 电压发生电路 83 发生例如 20[V] 电压 Vera, 向形成存储单元 MC 的阱区域传 送。电压 Vera 是指将向浮置栅极注入的电荷从该浮置栅极抽出的电压。
第 4 电压发生电路 84 发生电压 Vcgr1 ~ 3, 将该电压 Vvgr1 ~ 3 向选择字线 WL 传 送。电压 Vcgr1 ~ 3 是与从存储单元 MC 读出的数据对应的读出电压。电压 Vcgr1 例如是 使电压 Vth1_H <电压 Vcgr1 = V12 < Vth2_L 的值。电压 Vcgr2 是使电压 Vth2_H = V23 <电压 Vcgr2 < Vth3_L 的值。电压 Vcgr3 是使电压 Vth3_H <电压 Vcgr3 = V34 < Vth4_ L 的值。
另外, 第 5 电压发生电路 85 发生电压 Vread, 在数据的读出时向非选择字线 WL 传 送该电压 Vread。电压 Vread 是不依赖于存储单元 MC 保持的数据, 将该存储单元 MC 设为导 通状态的电压。
控制部 9 保持次数数据 91。该次数数据 91 保持向各个块 BLK 内的存储单元 MC 连 续写入数据的次数。控制部 9 按每个块 BLK 进行该连续写入次数的管理。即, 次数数据 91 保持例如向块 BLK1 内设置的存储单元 MC 写入的次数为″ 1″次、 向块 BLK2 内设置的存储 单元 MC 写入的次数为″ 2″次这样的信息。
另外, 控制部 9 在次数数据 91 保持的数据为例如″ 3″时, 在向存储单元 MC 连续 写入数据的次数成为″ 4″次前, 使值复位为″ 0″次。即, 已经写入 3 次数据后从主机发 来新的写入请求时, 控制部 9 对存储单元 MC 执行删除动作。因此, 阈值电压转变为例如″ 删除″状态 ( 参照图 2), 进行新写入数据的写入准备。
控制部 9 可根据存储单元 MC 的特性设定该写入次数。即, 控制部 9 可根据存储单 元的特性设定对存储单元 MC 的数据可覆写次数。 上述中, 该次数设定为″ 3″, 但是存储单 元的特性若良好, 则该值不限定, 例如可以是″ 7″, 也可以是″ 15″。该次数也可以是例 如″ 5″、″ 6″。即可以不是″ 2″的乘方的值。该值用 L 表示, 将连续写入数据的上限 值称为最大可覆写次数 LMAX。
在存储单元 MC 的特性良好且分辨率高, 即相邻的阈值分布明确隔离的场合等, 使 该上限值 LMAX 上升, 设定成高值。即, 例如增大图 2 中的″删除″状态~″ D″状态的 5 个 状态分布, 设定电压比该″ D″状态高的″ E″状态或者″ F″状态。反之, 在分辨率降低, 相邻的状态分布的两端 ( 例如, 图 2 中的 Vth2_L 和 Vth1_H 的电位差 ) 接近的场合, 将该 LMAX 例如设定成减去一的值。具体地说, 根据特性的降低将上述图 2 所示存储单元 MC 可保 持的″ A″状态~″ D″状态的阈值分布设为例如″ A″状态、″ B″状态及″ C″状态。
另外, 控制部 9 可根据需要进行模式的切换。即, 可进行模式切换, 设定成 4 值 (″ 11″, ″ 10″, ″ 01″, ″ 00″ )、 8 值 (″ 111″, ″ 110″, ″ 101″, ″ 100″, ″ 011 ″, ″ 010″, ″ 001″, ″ 000″ ) 等的多值模式 ( 以下, 称为模式 1), 或者像本实施例那样, 设定成虽然阈值电压从例如″ A″状态 ( 与 4 值表现中的″ 11″相当 ) 上升到例如″ D″ 状态 ( 与 4 值表现的″ 00″相当 ), 但是判断数据的读出是″ 0″或″ 1″的 1 比特的模式 ( 以下, 称为模式 2)。
例如模式 1 中, 控制部 9 在例如存储单元 MC 的特性劣化而无法表现 4 比特的场合, 降低比特数, 以 3 比特表现保持数据。
相对地, 例如为模式 2 时, 控制部 9 根据存储单元 MC 的劣化程度, 通过将上述最大 可覆写次数 LMAX = 3 改为上述最大可覆写次数 LMAX = 2, 将当前的″ A″状态~″ D″状态 的阈值分布减去一个状态分布而成为例如状态″ A″、 状态″ B″及状态″ C″。
模式 1 是传统的数据保持的模式, 模式 2 是本实施例的模式。
而且, 控制部 9 控制第 4 电压发生电路 84, 以生成与上述写入次数对应的读出电 压。即, 控制第 4 电压发生电路 84, 在写入次数为″ 1″时, 生成上述电压 Vcgr1, 写入次数 为″ 2″时, 生成电压 Vcgr2, 写入次数为″ 3″时, 生成电压 Vcgr3。
上述控制部 9 控制 NAND 型闪速存储器全体的动作。即, 经由数据输入输出电路 6, 根据从没有图示的主机提供的上述地址及指令, 执行数据的写入动作、 读出动作及″删 除″动作中的动作序列 (sequence)。控制部 9 根据地址及动作序列, 生成块选择信号 / 列 选择信号。
控制部 9 如上所述按每个块 BLK 进行写入次数的管理。在覆写数据时, 读出通过 之前的数据写入在存储单元 MC 保持的数据。 其结果, 保持数据若为″ 0″数据, 则在新数据 写入前, 保持″ 1″数据。即, 转变为上一级的阈值分布。
具体地说, 由于读出电压 Vcgr1 = V12, 通过第 1 次的写入, 存储单元 MC 保持的数 据为″ A″状态, 即″ 0″数据。该场合, 在第 2 次的数据写入前, 将阈值分布从″ A″状态 向″ B″状态转变。即控制部 9 使第 1 电压发生电路 81 向存储单元 MC 施加电压 Vpgm2。
控制部 9 向行解码器 3 输出前述块选择信号。另外, 控制部 9 向读出放大器 4 输 出列选择信号。列选择信号是指选择读出放大器 4 的列方向的信号。
另外, 将从没有图示的存储器供给的控制信号提供给控制部 9。 控制部 9 根据供给 的控制信号, 区别经由没有图示的 I/O 端子从主机 (host) 向数据输入输出电路 6 供给的信 号是地址还是数据。
另外, 在覆写新数据时, 读出通过之前的数据写入在存储单元 MC 保持的数据, 其 结果, 保持数据若为″ 0″数据, 则在新数据写入前, 保持″ 1″数据, 转变为上一级的阈值 分布, 但是不限于此。 即, 也可以在新数据写入前, 使状态分布上升, 不保持″ 1″数据, 将状态分布从与之前的保持数据对应的阈值电压转变为与新写入数据对应的阈值电压。 具体地 说, 接着进行例如第 2 次的数据写入时, 存在例如从因第 1 次的写入转变的″ A″状态通过 第 2 次的写入向″ B″状态或″ C″状态转变的情况和从因第 1 次的写入转变的″ B″状 态通过第 2 次的写入而原样维持该″ B″状态的情况或向″ C″状态转变的情况。另外, 设 为根据电压 Vpgm3 使存储单元的阈值电压从″ A″状态向″ C″状态转变, 根据电压 Vpgm4 使存储单元的阈值电压从″ B″状态向″ D″状态转变。即, 即使是使阈值电压升 2 级的场 合, 也只要采用转变为图 3 所说明的目的的阈值电压所需要的电压即可。
< 写入动作 >
接着, 用图 5 说明本实施例的半导体存储装置的写入动作。图 5 是写入动作的流 程图, 图 6 是图 5 中的步骤 S5( 后述 ) 的写入动作的时序图。这里, 连续写入数据的次数用 N(N : 自然数 ) 表示, 在以下说明中, 设为 N ≥ 2。
从没有图示的主机 (host) 经由数据输入输出电路 6 向控制部 9 传送写入指令、 写 入数据及作为写入对象的存储单元 MC 的地址后, 控制部 9 参照次数数据 91, 确认设置了作 为写入对象的存储单元 MC 的块 BLK 的写入次数 ( 步骤 S0)。
其结果, 判断下一写入为第 N 次时, 控制部 9 使第 4 电压发生电路 84 生成电压 Vcgr(N-1)。用该电压 Vcgr(N-1) 从作为写入对象的块 BLK 内设置的全部存储单元 MC 依次 读出数据, 判断块 BLK 内的全部存储单元 MC 是否为″ 1″数据 (S1, S2)。
其结果, 在设置了作为写入对象的存储单元 MC 的块 BLK 内即使存在一个保持 数据为″ 0 ″的存储单元 MC(S2, 否 ), 也向保持数据为″ 0 ″的存储单元供给写入电压 VpgmN(S3)。 该动作反复进行, 直到块 BLK 内的全部存储单元 MC 的保持数据成为″ 1″ (S3, S1, S2)。
步骤 S2 中, 在判断在设置了作为写入对象的存储单元 MC 的块 BLK 内全部存储单 元 MC 的保持数据为″ 1″时 (S2, 是 ), 控制部 9 从数据输入输出电路 6 经由数据线 Dline 向没有图示的数据缓冲区 BF 存储第 N 次的写入数据 (S4)。
然后, 控制部 9 向选择字线 WL 传送写入电压 Vpgm(N+1), 将与数据缓冲器 BF 存储 的数据对应的值 (″ 0″或″ 1″数据 ) 写入存储单元 MC(S5)。 步骤 S5 的动作用图 6 说明。
如上所述, 图 6 是 NAND 闪速存储器中的″ 0″数据的写入动作的时序图。 如图示, 横轴设为时间, 纵轴设为信号 sgd、 沟道的电位、 选择位线 BL 的电位、 选择字线 WL 的电位及 非选择字线 WL 的电位。另外, 非选择位线 BL 的动作与选择位线 BL 中的″ 0″数据写入相 同, 以下省略说明。
本实施例中, 将作为写入对象的存储单元 MC 的选择字线 WL 设为例如字线 WL32。 因此, 向非选择字线 WL0 ~ 31、 WL33 ~ 63 传送电压 VPASS, 向选择字线 WL32 传送电压 Vpgm(N+1)。
首先, 时刻 t1 中通过由读出放大器 4 传送的预充电电压, 选择位线 BL 的电位从时 刻 t1 上升。
另外, 同时刻 t1 中, 向选择晶体管 ST1 的栅极供给″ H″电平的信号 sgd。即, 该 信号 sgd 上升到例如电压 VDD 后, 选择晶体管 ST1 成为导通状态。从而, 存储单元 MC 的沟 道的电位从时刻 t1 上升。
然后在时刻 t2 中, 选择位线 BL 以及选择位线 BL 的沟道的电位也达到电压 VDD( 饱和 )。即, 时刻 t2 中流过位线 BL 的电流大约成为零。
在时刻 t3, 信号 sgd 下降到零电位。 从而, 选择晶体管 ST1 截止。 而且, 在时刻 t4, 向非选择字线 WL0 ~ 31 及 WL33 ~ 63 传送电压 Vpass。因而, 位线 BL 的电位从电压 VDD 上 升 ( 称为自升压 )。然后在时刻 t5 中, 向选择字线 WL32 传送电压 Vpgm(N+1), 但是沟道的 电位因为上述自升压而上升, 因此, 不向浮置栅极注入产生阈值变动程度的负电荷。即, 若 例如 N = 2, 则图 2 所示阈值电压维持″ B″状态 ( 电压 Vth2)。
另外, 时刻 t1 中, 在通过读出放大器 4 将选择位线 BL 的电位设为零电位的场合, 沟道的电位成为零电位。从而, 时刻 t5 中向选择字线 WL 传送写入电压 Vpgm(N+1) 时, 将产 生阈值变动程度的负电荷注入浮置栅极, 图 2 所示阈值电压向上方的阈值分布 (″ C″状 态 ) 转变。例如若 N = 3, 则从″ C″状态向″ D″状态转变。
另外, 上述中, 作为一例, 在进入下一写入动作前, 向存储单元 MC 进行″ 1″数据 的写入, 但是不限于此。即, 进入下一写入前, 也可以不向在块 BLK 内设置的存储单元 MC 进行″ 1″数据写入。该场合, 也可以例如由第 1 次的写入设为″ A″状态, 由下一写入设 为″ C″状态 (″ 1″数据 )。
另外, N = l 的场合, 写入次数设为第 1 次, 因此在数据的写入前, 存储单元 MC 的阈 值分布成为″删除″状态 ( 参照图 3)。该场合, 省略上述步骤 S1、 S2 的动作, 步骤 S3 中, 进行第 1 次的数据写入时, 首先将存储单元 MC 的状态分布从″删除″状态向″ A″状态转 变。然后, 执行步骤 S4 以下的动作。
另外, 上述中作为一例, 说明了″ 1″及″ 0″数据写入, 但是时刻 t1 到 t2 的动作 与数据的读出动作及验证动作相同。对于数据的读出动作及验证动作, 将时刻 t4、 t5 中向 字线 WL 传送的电压设为电压 Vcgr 及电压 Vread 即可。即在步骤 S1 及 S6, 图 6 中, 时刻 t4、 t5 的字线 WL 的电位设为电压 Vcgr 及电压 Vread。
然后, 第 (N+1) 次的新写入指令从没有图示的主机传送后, 在步骤 S5 中对进行了 写入的存储单元 MC 进行数据的读出 (S6), 进行写入动作, 直到设置了作为写入对象的存储 单元 MC 的块 BLK 内的全部存储单元 MC 的保持数据成为″ 1″ (S5, S6, S7)。即, 块 BLK 内 即使存在一个存储单元 MC 的保持数据为″ 0″ (S7, 否 ), 也要执行步骤 S5 ~ S7 的动作, 直 到保持数据成为″ 1″。
< 读出动作 >
用图 7 说明该情形。图 7 是在数据的读出时, 根据存储单元 MC 保持的电荷量及写 入次数判断该存储单元 MC 的保持数据是″ 0″或″ 1″的概念图。
如图示, 说明上述步骤 S1 中读出数据的情况。这里, N = 2。即, 存储单元 MC 中, 状态成为″ A″状态或″ B″状态。首先, 读出放大器 4 将位线 BL 充电到固定电压。然后, 向字线 WL 施加电压 Vcgr(N-1)。在存储单元 MC 的阈值电压比该电压 Vcgr(N-1) 低的场合, 即, 此时, 存储单元 MC 的阈值电压为 V01(″ A″状态 ) 时, 存储单元 MC 成为导通状态。 即通 过使位线 BL 和源极线 SL 成为导通状态, 使位线 BL 放电。读出放大器 4 通过读出该电压, 判断存储单元 MC 保持″ 0″数据。
相对地, 在存储单元 MC 的阈值电压比读出电平高的场合, 即存储单元 MC 的阈值电 压为 Vth2(″ B″状态 ) 时, 存储单元 MC 成为截止状态。即位线 BL 和源极线 SL 成为非导 通状态。读出放大器 4 读出该位线 BL 的电位, 判断存储单元 MC 保持″ 1″数据。同样, S7 中读出数据时, 向存储单元 MC 传送电压 Vcgr2。此时, 存储单元 MC 的阈 值电压为 V12(″ B″状态 ) 时, 读出放大器 4 判断保持″ 0″数据。相对地, 在存储单元 MC 的阈值电压为 V23(″ C″状态 ) 时, 读出放大器 4 判断保持″ 1″数据。
< 删除动作 >
接着, 用图 8 说明控制部 9 的删除动作。图 8 是控制部 9 的动作的流程图。
如图 8 所示, 控制部 9 发出新写入请求后 (S10, 是 ), 参照次数数据 91, 确认设置了 作为写入该数据的对象的存储单元 MC 的块 BLK 的次数数据 (S11, S12)。
其结果, 在次数数据达到最大可覆写次数 LMAX 的场合 (S12, 是 ), 控制部 9 执行删 除动作, 将存储单元 MC 的阈值电压转变为删除电压或″ A″状态 (S13)。然后, 进行新数据 的写入。
另外, 在次数数据未达到最大可覆写次数 LMAX 的场合 (S12, 是 ), 控制部 9 不执行 删除动作, 执行图 5 所示的写入动作。
< 最大可覆写次数 LMAX 的设定方法 >
接着, 用图 9 说明控制部 9 的动作。图 9 是存储单元 MC 的错误率超过规定值的场 合, 控制部 9 减小保持的 LMAX 的值的动作的流程图。 如图 9 所示, 从没有图示的主机传送数据的读出指令后, 控制部 9 执行如上所述与 写入次数对应的读出动作 ( 步骤 S20)。ECC 电路 5 对读出的数据进行 ECC 纠正处理 (S21)。 ECC 电路 5 的纠正数据由控制部 9 向没有图示的主机传送。
纠错的结果, 错误比特≥规定值 M 的场合 (S22, 是 ), 控制部 9 将错误率高的块 BLK 的数据复制到新块 BLK(S23)。然后, 控制部 9 将该相应的块 BLK 的最大可覆写次数 LMAX 的 值例如减一 (S24)。
另外, 步骤 S22 中, 若错误比特 < 规定值 M(S22, 否 ), 则从该存储单元 MC 读出的数 据在可纠错范围, 因此, 不进行最大可覆写次数 LMAX 的值的减法, 执行下一读出。
< 本实施例的效果 >
本实施例的半导体存储装置可获得以下 (1) ~ (3) 的效果。
(1) 可提高写入速度。
即, 根据本实施例的半导体存储装置, 存储单元 MC 的阈值变动为例如从″删除″ 状态向″ A″状态, 从″ A″状态向″ B″状态, 从″ B″状态向″ C″状态, 而且从″ C″状 态向″ D″状态的逐级转变。这里, 将转变为上一级的阈值分布称为一级上升。
另外, 进行例如从″删除″状态向″ B ″状态, 从″ A ″状态向″ C ″状态, 而且 从″ B″状态向″ D″状态的逐 2 级转变。该场合, 上升的阈值分布为最大 2 级。
相对地, 若进行从″删除″状态向″ D″状态或从″ A″状态向″ D″状态, 即3级 转变的阈值分布的场合, 该转变所需的向存储单元 MC 施加的写入电压的时间变长。
相对地, 本实施例中, 如上所述阈值分布的转变为最大 2 级。即, 阈值分布的变化 量减少。因而, 该转变所必要的对存储单元 MC 的写入电压的施加时间当然比 3 级转变短。 即可期望速度的提高。
对保持多值数据的存储单元 MC 的数据写入中, 例如有从″删除″状态向例如上 3 级的阈值分布转变的情况。该场合, 用于变动阈值分布的写入电压的施加时间变长。相对 地, 为本实施例的半导体存储装置时, 该施加时间与进行 1 比特写入的存储单元 MC 为相同
程度。这样, 可期望写入速度的提高。
(2) 可提高写入速度。
即, 根据本实施例的半导体存储装置, 如上所述数据的写入次数按块 BLK 单位统 一。即, 若按每个块 BLK, 则虽然相邻块 BLK 之间数据的写入次数不同, 但是着眼于某块 BLK 时, 相邻存储单元 MC 间的数据写入次数相同。 即, 例如写入次数为第 1 次时, 虽然成为″ A″ 状态或″ B″状态, 但是不会向多值存储器那样在相邻存储单元 MC 间产生阈值电平的大的 偏移。即, 通过向存储单元 MC 写入数据, 使该存储单元 MC 的阈值电平转变为某期望的阈值 电平, 结果, 可防止相邻存储单元 MC 的阈值分布变动这样的程序干扰。
为了防止该情况, 采用各种各样的对策。例如向存储单元 MC 一次写入数据, 然后 向相邻存储单元 MC 实施数据的写入后, 为了补正阈值分布, 再度向之前的存储单元 MC 施加 写入电压的方法等。
但是, 本实施例本来就可以防止程序干扰, 因此不必如上述方法那样向存储单元 MC 再度施加用于补正变动的阈值分布的写入电压。即, 可加快到写入结束为止的处理。
(3) 可提高写入精度。
根据本实施例的半导体存储装置, 如上所述, 由于按块 BLK 单位统一对存储单元 MC 的写入次数, 因此难以产生程序干扰。 即, 难以产生存储单元 MC 保持的阈值分布的偏移, 可提高数据的写入精度。 (4) 防止存储单元 MC 的劣化
根据本实施例的半导体存储装置, 对同一存储单元 MC 例如执行 3 次数据写入后, 需要再写入数据时, 删除该存储单元 MC 的数据。即, 向存储单元 MC 施加的例如 20V 程度的 删除电压的施加次数减少。从而, 难以产生存储单元 MC 的劣化, 可长期使用存储单元 MC。 即, 可以高状态保持存储单元 MC 具有的特性的可靠性。
< 变型例 >
接着, 用图 10、 图 11 说明上述第 1 实施例的半导体存储装置的变型例。图 10 是 向变型例的存储单元 MC 实施写入时, 该存储单元 MC 具有的阈值分布的概念图。另外, 图 11 是用图 10 所示的存储单元 MC 具有的阈值分布表示根据读出电平读出的数据 ( ″ 0 ″ 或″ 1″ ) 的概念图。
图 10 中, 纵轴设为存储单元 MC 的数, 横轴设为电压。 如图所示, 变形例的存储单元 MC 可取的阈值分布按从小到大的顺序设为″删除″状态、 ″ A″状态、 ″ B″状态、 ″ C″状 态及″ D″状态。该场合中即使″删除″状态设为负电压, 也可以通过向存储单元 MC 的浮 置栅极注入电荷, 设为正电压 (″ A″状态、 ″ B″状态、 ″ C″状态及″ D″状态 )。另外, 与上述第 1 实施例同样, ″ A″状态也可以成为与″删除″状态同一电位。该场合, ″ A″ 状态设为负电压。
如图 10 所示, 变型例的存储单元 MC 与上述第 1 实施例同样, 在第 1 次的数据写入 中设为″ A″状态或″ B″状态的状态分布, 但是在第 2 次的数据写入中, 设为除了″ A″状 态及″ B″状态还增加了″ C″状态的其中一个状态分布。同样在第 3 次的数据写入中, 存 储单元 MC 设为除了″ A″状态、″ B″状态及″ C″状态还增加了″ D″状态的其中一个 状态分布。
即, 在不必在存储单元 MC 保持例如″ 1″数据 ( 阈值电平比保持″ 0″数据的存
储单元 MC 大 ) 的场合, 反而不转变阈值电平, 保持″ 0″数据。
接着用图 11 说明根据上述存储单元 MC 的阈值分布而读出的保持数据的值。 图 11 中纵轴设为存储单元 MC 的阈值电平, 横轴设为写入次数。另外, 与图 7 重复内容的说明省 略。
如图 11 所示, 例如由电压 Vcgr2 读出通过第 2 次的数据写入从″ A″状态或″ B″ 状态向″ A″状态、″ B″状态及″ C″状态之一的状态转变的存储单元 MC。存储单元 MC 的状态分布为″ C″状态 ( 电压 V23) 时, 判断读出放大器 4 为″ 1″数据。
相对地, 存储单元 MC 的状态分布为″ A″状态、″ B″状态 ( 电压 V01, V12) 时, 读出放大器 4 判断为″ 0″数据。
同样, 由例如电压 Vcgr3 读出通过第 3 次的数据写入从″ A″状态、″ B″状态 及″ C ″状态之一向″ A ″状态、″ B ″状态、″ C ″状态及″ D ″状态之一的状态转变 的存储单元 MC。存储单元 MC 的状态分布为状态″ D″ ( 电压 V34) 时, 读出放大器 4 判断 为″ 1″数据。
相对地, 存储单元 MC 的状态分布为″ A″状态、″ B″状态及″ C″状态 ( 电压 V01, V12, V23) 时, 判断读出放大器 4 为″ 0″数据。
< 变形例的效果 >
根据本实施例的变型例的半导体存储装置, 除了上述 (3)、 (4) 的效果, 还可获得 下记的效果。
(5) 可降低消耗功率。
根据本实施例的变型例的半导体存储装置, 如上所述, 各次数的写入时, 在不进 行″ 1″数据写入的场合, 阈值电压不变动。 即, 如上述第 1 实施例所示, 进行下一写入前不 使阈值电平转变为上一级, 仅仅在″ 1″数据写入时转变阈值电平。 即, 如果没有必要, 不必 如上述第 1 实施例所说明向存储单元 MC 施加使阈值电平向例如″ B″状态、 ″ C″状态等 转变的大写入电压。因而存储单元 MC 的阈值电平的变化量变小, 可降低消耗功率。
(6) 可防止存储单元 MC 的特性劣化。
根据本实施例的变型例的半导体存储装置, 如上述图 10、 图 11 所说明,″ 1″数 据写入不必要时, 存储单元 MC 的阈值分布维持原状。即, 在不必要的场合以外, 不向存储单 元 MC 施加大写入电压 Vpgm。因而, 减少了对存储单元 MC 的写入次数, 可防止存储单元 MC 的特性劣化。
< 第 2 实施例 >
接着, 说明第 2 实施例的存储器系统。本实施例的存储器系统是将作为上述第 1 实施例及其变型例的一例的 NAND 型闪速存储器应用于例如具备 SSD(Solid State Drive, 固态驱动器 ) 的个人电脑 (PC)。
< 全体构成例 >
用图 12 说明本实施例的存储器系统。图 12 是本实施例的存储器系统的内部构成 的概念图。如图 12 所示, 存储器系统 60 经由 ATA 接口 (ATA I/F) 等的存储器连接接口与 个人电脑或者 CPU(Central Processing Unit, 中央处理单元 ) 核等的主机装置 61 连接, 起 到主机装置 61 的外部存储器的功能。另外, 存储器系统 60 经由 RS232C 接口 (RS232C I/F) 等的通信接口, 与调试 / 制造检查用设备 62 之间可进行数据收发。存储器系统 60 具备 : 作为上述非易失性半导体存储器的 NAND 型闪速存储器 NAND 型闪速存储器 1 ; 与上述第 1 实施例中的控制部 9 相当, 作为主机控制器的驱动器控制电路 63 ; 作为易失性半导体存储器的工作存储器 (DRAM)64 ; 熔断器 (fuse)65 ; 电源电路 66 ; 状 态显示用 LED67 ; 和检测驱动器内部的温度的温度传感器 68。
电源电路 66 从由主机装置 61 侧的电源电路供给的外部直流电源生成多个不同的 内部直流电源, 将这些内部直流电源供给存储器系统 60 内的各电路。另外, 电源电路 66 检 测外部电源的接通, 生成电源导通复位信号, 供给驱动器控制电路 63。
熔断器 65 设置在主机装置 61 侧的电源电路和存储器系统 60 内部的电源电路 66 之间。在从外部电源电路供给过量电流的场合, 熔断器 65 切断, 防止内部电路的误动作。
存储器系统 60 具备多个 NAND 型闪速存储器 1( 本实施例中作为一例表示了 4 个 NAND 型闪速存储器 1), 4 个 NAND 型闪速存储器 1 通过 4 个沟道 (ch0 ~ ch3) 与驱动器控制 电路 63 连接。4 个 NAND 型闪速存储器 1 可通过 4 个沟道 (ch0 ~ ch3) 进行并行动作、 交错 动作。
工作存储器 64 在主机装置 60 和 NAND 型闪速存储器 1 之间起到数据传送用高速 缓存及操作区域用存储器等的功能。工作存储器 64 的操作区域用存储器存储的内容是例 如 NAND 型闪速存储器 1 存储的各种管理表在启动时等展开的主表 ( 快照 (snapshot), 或者 管理表的变更差分即日志信息等。
另 外, 取 代 工 作 存 储 器 64, 也 可 以 使 用 FeRAM(Ferroelectric RandomAccess Memory, 铁电随机存取存储器 )、 MRAM(MagnetoresistiveRandom Access Memory, 磁阻随机 存取存储器 )、 PCRAM(Phase-ChangeRandom Access Memory 相变随机存取存储器 ) 等的非 易失性随机存取存储器。使用非易失性随机存取存储器的场合, 可省略电源切断时将各种 管理表等向 NAND 型闪速存储器 1 转移的动作的部分或全部。
驱动器控制电路 ( 主机控制器 )63 在主机装置 60 和 NAND 型闪速存储器 1 之间经 由工作存储器 64 进行数据传送控制, 并控制存储器系统 60 内的各模块。另外, 驱动器控制 电路 63 也具备向状态显示用 LED67 供给状态显示用信号, 并接收来自电源电路 66 的电源 导通复位信号, 将复位信号及时钟信号向驱动器控制电路 63 内及存储器系统 60 内的各部 供给的功能。驱动器控制电路 63 对 NAND 型闪速存储器 1 起到主机控制器的作用。即具有 如上所述第 1 实施例中的控制部 9 的功能。具体的功能在上述第 1 实施例中说明, 因此这 里省略。
< 工作存储器 64 的详细 >
接着用图 13 说明上述工作存储器 64 的内部构成例。如图 13 所示, 工作存储器 64 具备数据缓冲器 64-1、 页面变换表 64-2、 块变换表 64-3、 自由块数据 64-4 及写入信息表。
数据缓冲器 64-1 具有暂时地保持数据的功能。
页面变换表 64-2 保持图 13 左中央所示各个页面的逻辑地址及其对应的物理地 址。
块变换表 64-3 保持图 13 左下所示各个块的逻辑地址及其对应的物理地址。
自由块数据 64-4 是可自由存储必要数据的区域。
写入信息表 64-5 保持上述第 1 实施例中控制部 9 具有的信息。具体地说, 保持对 块 BLK 的写入模式 ( 模式 1 或模式 2 的模式信息 )、 该时刻中对块 BLK 的写入次数及最大可覆写次数 (LMAX)。该写入信息表 64-5 与在 NAND 型闪速存储器 1 形成的块 BLK 的数存在同 数。即, 本实施例中, NAND 型闪速存储器设置 4 个, 因此写入信息表 64-5 内的项目数存在 4×BLKs。
< 本实施例的效果 >
本实施例的存储器系统也可以获得上述第 1 实施例及其变形例的效果。即, 如上 所述, 可以获得 (1) ~ (5) 的效果。特别是, 作为本实施例中一例的搭载 SSD 的 PC, 其效果 显著。即, 若为 PC 等处理大量数据的电子设备, 比 SDTM、 MMC 等的存储介质更频繁发生对一 次存储的数据的新数据覆写 ( 更新 )。即, 对存储单元 MC 的数据写入频繁进行。另外, 现状 是处理的数据量也增加。现在, 作为该对策, 开发使用可在一个存储单元 MC 存储大量的数 据的多值存储器, 但是, 如上所述, 使用限度也存在界限。
该状况下, 根据本实施例的存储器系统, 可以在同一存储单元 MC 写入多次的数 据, 直到执行删除动作为止。 因而, 与每次写入新数据时同数进行删除动作和写入动作的存 储单元相比, 难以产生劣化, 具有寿命长的效果。
而且, 根据本实施例的存储器系统, 如上述第 1 实施例所说明, 可以将写入模式根 据存储单元 MC 的特性变更为模式 1 和模式 2。 即, 如上述第 1 实施例所说明, 在以 2 比特 (4 值 )、 3 比特 (8 值 )、 4 比特 (16 值 ) 的多值模式写入的场合, 根据存储单元 MC 的特性即阈 值分布的扩展程度 ( 高电侧和低电压侧的电压差 ), 不将可存储的信息量例如从 3 比特减为 2 比特, 而是变更写入模式, 切换为将与迄今为止的 3 比特表现同数的″ A″状态、 ″ B″状 态、″ C″状态、″ D″状态、″ E″状态、″ F″状态、″ G″状态及″ H″状态中的最 后的″ H″状态减去, 用读出″ A″状态~″ G″状态的电压 Vcgr 及次数数据 91 的写入次 数来判断″ 0″或″ 1″数据的模式。从而, 例如在存储单元 MC 的特性劣化, 读出该存储单 元 MC 保持的阈值分布的分辨率下降的场合, 通过这样切换模式, 可以使存储单元 MC 的数据 保持量不会急剧减少。
< 第 3 实施例 >
接着说明第 3 实施例的半导体存储装置。说明本实施例的半导体存储装置采用例 如阻抗变化型存储器 (Resistance Random Access Memory : ReRAM) 作为上述第 1 实施例及 其变型例一例的 NAND 型闪速存储器的情况。即, 构成上述第 1 实施例说明的 NAND 型闪速 存储器的周边电路, 例如, 行解码器 2、 驱动器电路 3、 电压发生电路 8、 读出放大器 4、 ECC 电 路 5、 数据输入输出电路 6 及控制部 9 在本实施例中采用同一构成, 因此说明省略。
< 全体构成例 >
图 14 是作为本实施例的存储单元 MC 的 ReRAM 的方框图。如图 14 所示, 存储单元 阵列 1 具备 : 沿第 1 方向设置的多个位线 BL ; 沿与第 1 方向正交的第 2 方向设置的多个字 线 WL ; 在位线 BL 和字线 WL 的交点设置的多个存储单元 MC。通过多个存储单元 MC 的集合 体构成称为存储单元组 (MAT)16 的单位。
各个存储单元 MC 具备整流元件 ( 二极管 )DD 和可变阻抗元件 VR。二极管 DD 的阴 极与字线 WL 连接, 二极管 DD 的阳极经由可变阻抗元件 VR 与位线 BL 连接。可变阻抗元件 VR 例如具备在二极管 DD 上依次层叠记录层、 加热层及保护层的构造。
在存储单元阵列 1 中同一行配置的多个存储单元 MC 与同一的字线 WL 连接, 同一 列的多个存储单元 MC 与同一的位线 BL 连接。字线 WL、 位线 BL 及存储单元 MC 沿与第 1、 第2 方向的两方正交的第 3 方向 ( 相对于半导体基板表面的垂线方向 ) 设置多个。即存储单 元阵列具有存储单元 MC 三维地层叠的构造。该三维构造中的存储单元的各层, 以下也称为 存储单元层。
接着, 用图说明上述说明的存储单元阵列 1 的详细构成例。图 15 是存储单元阵列 1 的方框图, 仅仅表示了一个存储单元层。
如图示, 本实施例的存储单元阵列 1 具备矩阵状配置的 (m+1)×(n+1) 个存储单 元组 16。m、 n 分别是 1 以上的自然数。如前述, 存储单元组 16 的各个包含多个存储单元 MC, 这些呈矩阵状配置。例如一个存储单元组 16 包含例如 16 根字线 WL 和 16 根位线 BL。 即, 一个存储单元组 16 内包含 (16×16) 个存储单元 MC。另外, 存储单元阵列 10 内, 包含 16×(m+1) 根位线 BL、 16×(n+1) 个字线 WL。同一行的多个存储单元组 16( 即共用字线 WL 的存储单元组 16) 构成块 BLK。因而, 存储单元阵列 10 由块 BLKO ~ BLKn 构成。以下, 不区 别块 BLK0 ~ BLKn 的场合, 仅仅称为块 BLK。
本实施例说明了一个存储单元层具备多个存储单元组 16 的情况, 但是存储单元 组 16 的数也可以是一个。另外, 一个存储单元组 16 内所包含的存储单元 MC 的数不限于 (16×16) 个。而且, 行解码器 11 及读出放大器 12 可以按存储单元组 16 设置, 也可以在多 个存储单元组 16 间共用。以下, 以后者的场合为例进行说明。
图 16 是存储单元阵列 1 的一部分区域的立体图, 表示了上述构成的存储单元阵列 1 三维地构成的情形。 如图示, 本实施例的存储单元阵列 1 在半导体基板的基板面垂直方向 ( 第 3 方向 ) 上层叠多层 ( 第 1 存储单元层, 第 2 存储单元层, ...)。图 16 的例中, 按照字 线 WL/ 存储单元 MC/ 位线 BL/ 存储单元 MC/ 字线 WL/... 的顺序形成, 但是, 字线 WL/ 存储 单元 MC/ 位线 BL 的组也可以隔着层间绝缘膜层叠。
图 17 是上述存储单元阵列 1 的电路图, 特别是表示了一个存储单元层中与图 2 的 区域 A1 相当的区域。
如图示, 存储单元阵列 1 中, 以通过多个存储单元组 16 间的方式形成了多个位线 BL 和字线 WL。
如上所述, 存储单元组 16 包含 16 根位线 BL 和 16 根字线 WL。另外, 如上所述, 存 储单元组 16 仅仅为 (m+1)×(n+1) 个。即, 在某块 BLKi 形成字线 WL(16i) ~ WL(16i+15)。 某块 BLK 所包含的多个存储单元组 16 的各个中, 形成位线 BL(16j) ~ BL(16j+15)。其中, i = 0 ~ n, j = 0 ~ m。
在位线 BL 和字线 WL 的交点分别形成存储单元 MC。
上述字线 WL 与没有图示的行解码器 2 连接。另一方面, 位线 BL0 ~ BLn 与没有图 示的读出放大器 4 连接。
接着, 用图 18 说明上述存储单元 MC 的特性。图 18 所示存储单元 MC 保持与可变 阻抗元件 VR 的阻抗值 ( 例如电阻值 ) 对应的数据。可变阻抗元件 VR 可取为阻抗值 1k ~ 10kΩ 的低阻抗状态和阻抗值为 100k ~ 1MΩ 的高阻抗状态。
高阻抗状态是上述第 1 实施例中的, 例如保持″ A″状态、″ B″状态、″ C″状 态及″ D″状态之一的状态, 是写入了数据的状态 ( 程序电平 )。即, 例如在 100k ~ 1MΩ 的阻抗值间, 设定上述″ A″状态、″ B″状态、″ C″状态及″ D″状态。与该阻抗值相 应的电流流过存储单元 MC。低阻抗状态是上述第 1 实施例中的″删除″状态 ( 删除电平 ), 是数据删除的状 态。另外, 与上述第 1 实施例同样,″ A″状态和″删除″状态也可以是同一电平。
接着, 用图 19 说明上述存储单元 MC 保持的数据。图 19 是表示存储单元 MC 的阻 抗值、 根据该阻抗值而流过可变阻抗元件 VR 的电流及根据该电流及对存储单元 MC 的写入 次数而在存储单元 MC 保持的数据值的概念图的曲线图。
如上所述, 存储单元 MC 根据写入次数, 保持″ A″状态、″ B″状态、″ C″状态 及″ D″状态之一的状态。如图 19 所示, 在表示″ A″状态的 R1 的阻抗值的场合, 电流 I1 流过该可变阻抗元件 VR。在表示″ B″状态的 R2 的阻抗值的场合, 电流 I2 流过该可变阻 抗元件 VR。在表示″ C″状态的 R3 的阻抗值的场合, 电流 I3 流过该可变阻抗元件 VR。在 表示″ D″状态的 R4 的阻抗值的场合, 电流 I4 流过该可变阻抗元件 VR。这些电流 I1 ~电 流 I4 满足电流 I1 >电流 I2 >电流 I3 >电流 I4。
即, 例如进行一次写入的场合, 存储单元 MC 设为″ A″状态或″ B″状态的阻抗 值。读出放大器 4 在电流 I1 流过该存储单元 MC 的可变阻抗元件 VR 的场合, 判断存储单元 MC 保持″ 0″数据, 电流 I2 流过的场合, 判断保持″ 1″数据。
另外, 例如, 即使电流 I2 流过存储单元 MC 的可变阻抗元件 VR, 但对存储单元 MC 的 写入为第 2 次的场合, 判断该数据为″ 0″数据。 根据其他写入次数和与该次数相应地流过 的电流值对存储单元 MC 保持的数据的判断方法也同样, 因此说明省略。
接着用图 20 说明向上述存储单元 MC 施加的写入电压。如上所述, 存储单元的阻 抗值因写入电压的大小、 其施加时间 ( 脉冲宽度 ) 而变化。另外, 以下, 着眼于电压进行说 明, 但是, 也可以使流过可变阻抗元件 VR 的电流值变化, 使该阻抗值变化。
如图 20 所示, 写入电压设为电压 Vpgm1 ~电压 Vpgm4。例如通过以脉冲宽度 w1 向存储单元 MC 施加电压 Vpgm1, 设为″ A″状态, 通过以脉冲宽度 w1 向存储单元 MC 施加电 压 Vpgm2, 设为″ B″状态, 通过以脉冲宽度 w1 向存储单元 MC 施加电压 Vpgm3, 设为″ C″ 状态, 通过以脉冲宽度 w1 向存储单元 MC 施加电压 Vpgm4, 设为″ D″状态。另外, 该电压 Vpgm1 ~电压 Vpgm4 的值可以是与上述第 1 实施例中的写入电压 Vpgm1 ~电压 Vpgm4 相同 的值, 也可以是不同的值。
另外, 例如通过以比 w1 宽的脉冲宽度向存储单元 MC 施加电压 Vpgm1, 也可以将存 储单元 MC 的阻抗值设为″ B″状态~″ D″状态之一。
< 本实施例的效果 >
本实施例的半导体存储装置也可以获得上述第 1 实施例及其变型例的效果。即, 本实施例也可以获得上述 (1) ~ (6) 的效果。即, 本实施例中通过存储单元 MC 具有的可变 阻抗元件 VR 的阻抗值获取多个阈值分布。向该可变阻抗元件施加某电压, 结果, 读出放大 器 4 可检测流过存储单元 MC 的电流, 从而识别存储单元 MC 的保持数据。根据本实施例, 转 变的阈值分布的等级与上述第 1 实施例及其变型例同样, 由于仅仅转变 1 级或 2 级, 因此可 以减小向可变阻抗元件 VR 施加的写入电压, 期待消耗功率的降低及该写入时间的高速化。
另外, 上述第 1 实施例及其变型例中, ″删除″状态和″ A″状态也可以是同一的 阈值电压。该场合,″ A″状态设为负电压。
该场合, 上述第 1 实施例的图 5 中的步骤 S3 的动作可省略。这是因为, ″删除″ 状态和″ A″状态是同一阈值, 因此, 没有必要将写入电压 Vprm1 向存储单元 MC 传送, 从″删除″状态向″ A″状态转变。
另外, 也可以向某块 BLK 通过本方式 ( 模式 2) 写入数据, 而其他块 BLK 中通过传 统方式 ( 模式 1) 写入。换言之, 在多个块 BLK 间, 也可以混合不同的写入模式。
虽然说明了特定的实施例, 但是这些实施例仅仅用于示例, 而不是限定本发明的 范围。这些实施例可以以不同的方式具体化。在不脱离本发明的精神的范围, 可以进行各 种各样的省略、 替代和变更。所附权利要求书及其等同物旨在包括落在本发明精神范围内 的这些方式和变更。