一种面向相变存储的非均匀纠错方法及相变存储装置的制造方法

文档序号:9668744阅读:594来源:国知局
一种面向相变存储的非均匀纠错方法及相变存储装置的制造方法
【技术领域】
[0001 ]本申请涉及相变存储领域,尤其涉及一种面向相变存储的非均匀纠错方法及相变 存储装置。
【背景技术】
[0002] 相变存储器(PhaseChangeMemory:PCM)是一种基于硫系化合物(例如Ge2Sb2Te5, 以下简称GST)作为相变材料的非易失型存储器。如图1所示,为一种相变存储器存储单元的 典型结构,其主要包括顶部电极、相变材料、热绝缘体、电阻(加热器)、底部电极。数据存储 在位于中间的相变材料中。相变材料顶部通过顶部电极连接到位线(bit-1ine,BL),底部电 极连接到控制端。当被持续时间不同、幅度不同的电流脉冲加热时,相变材料可以在晶态和 非晶态之间转化。当相变材料处于晶态时,其电阻值较低;当相变材料处于非晶态时,其电 阻值较高。这两个不同状态的电阻值之间相差数个数量级,同时掉电以后仍然会保持相应 状态,这使相变存储器成为优良的非易失存储器。
[0003]因此,在相变存储器中,数据的存储是通过对相变材料的配置来实现的,存储在相 变存储器中的数据"〇"和"Γ就是利用相变材料在晶态和非晶的阻值差异来进行区分的,通 过对相变材料施加不同幅值与宽度的电流和电压脉冲使其在晶态和非晶态之间转变。然后 通过测量其阻值,并与参考阈值电阻比较得到其存储的信息。又由于晶态和非晶态电阻存 在着数个数量级的电阻值的差异,因此可以通过不完全结晶化实现一个存储单元中存储多 位数据(MultilevelPerCell,MLC)〇
[0004]相变存储器存在读写串扰、结晶化、耐久性失效和阻值漂移等问题。实际读写中, 运用纠错技术进行纠错以保证数据读写和存储的可靠性。一般使用存储控制器完成纠错、 存储驱动、接口适配等功能,如图2所示。
[0005]实际存储中,阻值漂移是影响相变存储的主要问题,其会使得相变存储器中相变 材料的阻值会随着时间的推移而发生变化。这时,相邻存储状态所对应的阻值范围会出现 一定交叠,存储时间越长,交叠部分越大,当读取的阻值位于交叠区域时,不能直接判定其 存储状态,从而影响数据读取的可靠性。因此阻值漂移会给相变存储器的应用带来不利的 影响,主要表示为对相变存储器的数据读取时误码率的增加,读出值判定错误等。在相变存 储器中表示多位信息的存储单元中(即多值存储单元),由于其有效阻值范围被划分成多个 小的区域来表示多个信息值,每个信息值对应的阻值范围成倍缩小,因此相对二值存储单 元,阻值漂移现象对其造成的影响将更为显著,故而一个存储单元中存储的比特数越多则 由于阻值漂移信息其造成的误码率越大。
[0006]目前针对上述问题提出的纠错方法有很多,其中一个纠错效果较好的方法是基于 时称感知纠错的软判决方法,具体如下:
[0007]对待存入数据进行编码,将编码后的数据写入相变存储器中,同时保存写入时间, 在读取数据时,通过上述写入时间计算出数据存储时间,根据存储时间计算出阻值分布的 概率密函数,从而将整个阻值范围划分成大小相同的若干纠错区域以完成阻值量化,计算 每一个数据比特的对数似然比,根据对数似然比进行纠错译码。
[0008] 上述方法是将阻值分布范围均匀划分成若干范围大小相同的纠错区域(均匀量化 纠错),为了保证在交叠比较大的部分也能够正常读取数据,保证误码率低于一可接接受的 范围,需要将阻值分布范围均匀划分成数量较多的若干范围大小相同的纠错区域。因此,软 判决译码需要的对数似然比信息也需要对相变存储单元进行高精度的阻值量化读取,从而 导致相变存储器阵列与存储控制器之间传输延迟的增大。

【发明内容】

[0009] 为解决上述均匀量化纠错的问题,本申请提供一种面向相变存储的非均匀纠错方 法及相变存储装置。
[0010] 根据本申请的第一方面,一种实施例提供一种面向相变存储的非均匀纠错方法, 其包括以下步骤:
[0011] 对待存入相变存储器的数据进行纠错编码;
[0012] 将经过纠错编码的数据以及数据写入时间写入相变存储器;
[0013] 当读取数据时,读取数据对应的写入时间;
[0014] 根据写入时间计算出数据在相变存储器中的存储时间;
[0015] 根据存储时间计算各存储状态的阻值分布的交叠边界,以确定阻值交叠区域;
[0016] 计算各阻值交叠区域的熵;
[0017] 将所有阻值交叠区域划分成熵大致相等的若干纠错区域,其中非阻值交叠区域为 非纠错区域;
[0018] 计算各纠错区域的对数似然比;
[0019] 判断读取的数据的阻值位于哪一区域,当位于纠错区域时,根据此纠错区域的对 数似然比,对读取的数据进行纠错译码;当位于非纠错区域时,对读取的数据不进行纠错。
[0020] 另一种实施例还提供另一种面向相变存储的非均匀纠错方法,包括以下步骤:
[0021 ]预先设置若干存储时间;
[0022] 对于每一个预先设置的存储时间:根据此存储时间计算各存储状态的阻值分布的 交叠边界,以确定阻值交叠区域;计算各阻值交叠区域的熵;将所有阻值交叠区域划分成熵 大致相等的若干纠错区域,其中非阻值交叠区域为非纠错区域;计算各纠错区域的对数似 然比;
[0023] 对待存入相变存储器的数据进行纠错编码;
[0024] 将经过纠错编码的数据以及数据写入时间写入相变存储器;
[0025] 当读取数据时,读取数据对应的写入时间;
[0026] 根据写入时间计算出数据在相变存储器中的存储时间;
[0027] 将所述计算出的存储时间,与预先设置的若干存储时间比较,得到一与所述计算 出的存储时间最接近的预先设置的存储时间,并依此获得对应的纠错区域范围;
[0028] 判断读取的数据的阻值位于所述最接近的预先设置的存储时间下的哪一区域,当 位于纠错区域时,根据此纠错区域的对数似然比,对读取的数据进行纠错译码;当位于非纠 错区域时,对读取的数据不进行纠错。
[0029] 根据本申请的第二方面,一种实施例提供一种相变存储装置,包括:
[0030]纠错编码器,用于对待存入相变存储器的数据进行纠错编码;
[0031]存储控制器,用于将经过纠错编码的数据以及数据写入时间写入一相变存储器; [0032]存储时间计算单元,用于当读取数据时读取数据对应的写入时间,以根据写入时 间计算出数据在相变存储器中的存储时间;
[0033]阻值交叠区确定单元,用于根据存储时间计算各存储状态的阻值分布的交叠边 界,以确定阻值交叠区域;
[0034]熵计算单元,用于计算各阻值交叠区域的熵;
[0035]纠错区域划分单元,用于将所有阻值交叠区域划分成熵大致相等的若干纠错区 域,其中非阻值交叠区域为非纠错区域;
[0036]对数似然比计算单元,用于计算各纠错区域的对数似然比;
[0037]阻值量化单元,用于判断读取的数据的阻值位于哪一区域;
[0038]纠错译码器,用于当判断的结果为读取的数据的阻值位于纠错区域时,根据此纠 错区域的对数似然比,对读取的数据进行纠错译码;当位于非纠错区域时,对读取的数据不 进行纠错。
[0039]另一实施例提供另一种相变存储装置,包括:
[0040]纠错编码器,用于对待存入相变存储器的数据进行纠错编码;
[0041]存储控制器,用于将经过纠错编码的数据以及数据写入时间写入一相变存储器;
[0042]存储时间计算单元,用于当读取数据时读取数据对应的写入时间,以根据写入时 间计算出数据在相变存储器中的存储时间;
[0043]存储时间判断单元,预先设置若干存储时间,用于将所述计算出的存储时间,与预 先设置的若干存储时间比较,得到一与所述计算出的存储时间最接近的预先设置的存储时 间;
[0044]第一查找表,存储有每一个预先设置的存储时间下的纠错区域范围,其中,纠错区 域范围通过以下方式计算:对于每一个预先设置的存储时间:根据此存储时间计算各存储 状态的阻值分布的交叠边界,以确定阻值交叠区域;计算各阻值交叠区域的熵;将所有阻值 交叠区域划分成熵大致相等的若干纠错区域,其中非阻值交叠区域为非纠错区域;
[0045]第二查找表,存储有与第一查找表中每一个预先设置的存储时间下的各纠错区域 范围对应的对数似然比;
[0046]阻值量化单元,用于判断读取的数据的阻值位于所述第一查找表中所述最接近的 预先设置的存储时间下的哪一区域;
[0047]纠错译码器,用于当判断的结果为读取的数据的阻值位于纠错区域时,根据所述 第二查找表中此纠错区域的对数似然比,对读取的数据进行纠错译码;当位于非纠错区域 时,对读取的数据不进行纠错。
[0048]本申请的有益效果是:
[0049]依上述实施的面向面向相变存储的非均匀纠错方法及相变存储装置,通过计算确 定阻值交叠区域以及各交叠区域的熵,将所有阻值交叠区域划分成熵大致相等的若干纠错 区域,从而使得熵较大的交叠区域划分有较多的纠错区域,熵较小的交叠区域划分有较少 的纠错区域,因此在相同误码率性能的要求下,本申请非均匀量化纠错所需的纠错区域少 于均匀量化纠错,阻值量化后的数据长度更短,使得相同误码率性能的要求下,本申请延迟 较小,同时硬件开销也小。
[0050]依上述实施的面
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1