An Performance Optimization Scheme for Flash Memory System in 6G Mobile Network: Bit Remapping
-
摘要: 第6代移动通信技术(6G)网络所产生的海量数据对数据存储带来了全新挑战,推动着存储技术的迅猛发展。与非门(NAND)闪存存储器具有读写速度快,可靠性高等优点,故在6G网络中具有广泛的应用前景。为了提高NAND闪存的可靠性,针对两种不同位线结构的错误特性,该文分别提出基于全位线结构的等精度重映射方案和基于奇偶位线结构的不等精度的重映射方案。仿真结果表明,两种新型比特重映射方案有效提升了闪存的误码性能。基于此,该文所提重映射技术可被视作6G网络中可靠而高效的存储优化技术。Abstract: The massive data generated by the sixth generation mobile communication technology (6G) network brings new challenges to data storage, which promotes further the rapid development of storage technology. Not AND (NAND) flash memory has the advantages of fast reading/writing speed and high reliability, and hence it possesses a wide application prospect in the 6G network. To improve the reliability of NAND flash memory, according to the error characteristics of two different bit-line structures, an all-bit-line-structure-aided equal-precision remapping scheme and an odd-even-bit-line-structure-aided unequal-precision remapping scheme are proposed. Simulation results show that the two new remapping schemes improve effectively the bit error performance of flash memory. Therefore, the remapping technology proposed in this paper can be regarded as a reliable and efficient storage optimization technology for 6G network.
-
Key words:
- 6G network /
- Data storage /
- All bit-line structure /
- Odd-even bit-line structure /
- Bit remapping
-
1. 引言
6G 技术可以实现更快的网络速率、更低的接入时延以及更广的通信规模,但是该技术的产生也给存储设备带来了巨大的挑战。随着新一代移动通信技术的快速发展和各种应用场景的出现,产生了海量的应用数据,对存储设备的容量和可靠性都提出了更高的要求。与非门(Not AND, NAND)闪存作为一种高效的存储介质已广泛应用于各种存储设备。随着芯片封装尺寸的不断缩小以及多级电平单元(Multi-Level Cell, MLC)技术的发展,闪存遭受了更为复杂的噪声和干扰[1]。这些噪声主要包括编程噪声、随机电报噪声(Random Telegraph Noise, RTN)、数据持久性噪声(Data Retention Noise, DRN)以及单元间干扰(Cell to Cell Interference, CCI),严重影响了闪存的可靠性和耐用性[2,3]。
为了提高数据存储的可靠性,差错控制编码(Error Control Codes, ECCs)技术被应用于提升闪存系统的误码性能。作为一种逼近容量限的差错控制编码,低密度奇偶校验码(Low Density Parity Check Code, LDPC)在置信度传播(Belief Propagation, BP)译码下可获得优异的纠错性能,故已被广泛地应用在闪存系统中[4]。
准确的对数似然比(Log Likelihood Ratio, LLR)信息是保证BP译码成功的前提条件[5,6]。然而NAND闪存存在各种噪声和干扰,对LLR信息的准确性产生了极大影响。为了提高LLR信息的可靠性,Aslam等人[7]提出了持久性感知置信度传播译码算法(Retention-Aware Belief-Propagation, RABP)。Zhang等人[8]提出了一种噪声特性辅助的LLR校正方法。但以上方案仅考虑了闪存单元遭受噪声和干扰后的LLR优化,并未考虑特定状态单元的抗干扰特性。
实际上,数据持久性噪声和单元间干扰与闪存单元阈值电压状态密切相关。存储低电压状态的单元发生电子泄露的概率较小,其遭受数据持久性噪声影响也就比较轻。同时,存储低电压状态的单元在编程时阈值电压偏移更小,所导致的单元间干扰也就更小。因此,更多存储单元处于低电压状态能够有效降低数据持久性噪声和单元间干扰对存储可靠性造成的影响[9,10]。
为了提高存储单元中低电压状态的比例,Guo等人[11]提出了一种数据模式错误感知(Data-Pattern-Aware, DPA)预防方案对原始数据进行重映射处理,该方案的基本思想是通过相邻字节之间的异或操作或者多项式拟合来增加数据中1的比例,从而降低闪存的误码率。Wei等人[12]提出了一种新的半字节重映射编码方案(Nibble Remapping Coding, NRC),该方案基于实际数据中半字节短码组合出现的频率来设计重映射方案,但是该方案需要针对每一段数据设置相应的映射规则表。Qin等人[13]提出了一种状态重映射策略(Cell State Remapping, CeSR)以降低MLC闪存中的原始误码率,但是该方案未针对其最低有效位数据设计更合理的重映射方案,也未考虑不同闪存结构中干扰的差异。
基于此,本文设计了两种新颖的重映射方案,分别是基于全位线结构的等精度重映射方案和基于奇偶位线结构的不等精度的重映射方案。通过分析闪存全位线结构和奇偶位线结构中噪声与干扰的错误特性,从而引入比特重映射技术,本技术通过调整原始数据中1的比例来增加低阈值电压状态的概率。实验结果表明,所提出的比特重映射方案能有效提高闪存的误码率性能。所提出的比特重映射方案可为6G移动通信中实现数据可靠存储提供一种高效技术方案。
2. MLC闪存信道模型
本文以MLC闪存作为信道模型。在MLC闪存信道中,编程噪声、单元间干扰、数据持久性噪声和随机电报噪声是读写过程的主要噪声来源[14-17]。在加入这些加性噪声分量后,闪存单元的阈值电压可通过式(1)计算
Vth=vw+nu+np+nd+nc+nr (1) 其中,
vw∈{vs0,vs1,vs2,vs3} 是理想状态下的阈值电压,nu 和np 是依赖于状态的编程噪声分量,nd ,nc 和nr 分别代表数据持久性噪声、单元间干扰和随机电报噪声。基于以上描述,MLC闪存信道模型如图1所示。2.1 编程噪声
为了使得闪存编程时产生的干扰最小化,增量步进脉冲编程(Incremental Step Pulse Programming, ISPP)被用来配置电子数。因此,ISPP噪声(
nu )出现在编程单元中。MLC闪存的第k (k∈{1,2,3}) 个编程状态下的阈值电压可被建模为[Vp, Vp+ΔVpp] 上的均匀分布[14-16]P(k)nu(v)={1ΔVPP ,VP≤x≤VP+ΔVPP0 ,其他 (2) 其中,
Vp 为理想阈值电压,ΔVpp 是ISPP步进电压增量。编程噪声
np 可用零均值的高斯分布函数进行建模为[14,15]Pnp(v)={N(0, σ2e) ,vw∈{vs0}N(0, σ2p),vw∈{vs1, vs2, vs3} (3) 其中,
σ2e 和σ2p 是编程噪声阈值电压分布的方差参数。2.2 数据持久性噪声
数据持久性噪声是一种非平稳噪声,它不仅受PE周期的影响,而且与数据保持时间T有关。随着PE循环次数的增加,晶体管中氧化层的绝缘能力降低,加速了其电子泄露,并且随着数据保持时间的增加,存储在闪存单元中的电子数量进一步减少,闪存单元的阈值电压分布向左偏移。数据持久性噪声的阈值电压分布可以被建模为[15,16]
Pud(v)=N(μd, σ2d) (4) 其中,平均值
μd 和方差σ2d 是随时间T和PE循环动态变化的参数,其计算如式(5)和式(6)所示[15]μd=(vw−x0)⋅[At(PE)αi+Bt(PE)αo]⋅lg(1+T) (5) σd=0.3|μd| (6) 2.3 单元间干扰
单元间干扰是由寄生电容的耦合效应引起的,会显著影响单元的阈值电压。根据文献[16,17],当对闪存单元进行编程时,受干扰单元的CCI强度
nc 可以表示为VCCI=∑kΔVk⋅γk (7) 其中,
ΔVk 表示闪存单元编程前后的阈值电压改变量;γk 被定义为电容耦合比。在闪存系统中,通常采用预失真技术[18]或后补偿技术[19]来消除单元间干扰。2.4 随机电报噪声
RTN噪声(
nr )的出现是由闪存PE循环导致的电荷捕获现象引起的,因此它也是一个非平稳变量。它可以用对称指数分布函数来估计。在实际应用中,它通常由零均值高斯分布函数近似[15],如式(8)所示Pnr(v)=1σr√2πe−x22σ2r (8) 其中,方差
σ2r 是PE周期的幂函数,表示为σr=0.00027(PE)0.62 。3. 新型重映射方案
本节分析了格雷映射场景下MLC闪存的错误模式,设计了重映射方案的整体实现框架,提出了基于全位线结构的等精度重映射方案和基于奇偶位线结构的不等精度重映射方案,以调整原始数据中的单元状态比例。
3.1 错误模式分析
MLC闪存中,一个单元存储2 bit的信息,共有4种不同的阈值电压状态,分别是擦除状态
S0 和编程状态S1, S2, S3 。基于LDPC码的自交织特性,当LDPC码应用在MLC闪存系统时,可以将其视为4脉冲幅度调制(4-Pulse Amplitude Modulation, 4PAM)比特交织编码调制(Bit Interleaved Coded Modulation, BICM)系统[20]。为了获得优异的性能,通常将格雷映射应用于此类系统中,闪存单元4种阈值电压状态分别代表数据符号11, 10, 00, 01,相邻的阈值电压状态之间存在1 bit的差距。图2描述了格雷映射下的MLC闪存的阈值电压分布,可以看出当闪存单元的阈值电压状态发生改变时,大概率只会发生1个比特的错误。实际上,由噪声引起的单元状态变化几乎只出现在相邻的状态上。由于数据持久性噪声会导致阈值电压分布向左偏移,因此在MLC中由于持久性噪声而产生的最常见的错误模式为
01→00 和00→10 ,对于处于11和10这两种低电压状态的单元,遭受数据持久性噪声干扰的概率可以忽略不计[21]。另一方面,单元间干扰则会造成闪存的阈值电压分布向右移动,最常见的错误模式为11→10 和10→00 [21]。由式(7)可知,受干扰单元所受CCI强度可被表示为VCCI=∑kΔVk⋅γk ,其中ΔVk 为相邻编程单元相较于初始状态的阈值电压改变量,γk 为电容耦合比。而受干扰单元相对某一位置的编程单元,其γk 是确定的。由此可见,当ΔVk 越小时,受影响单元所受的单元间干扰越小。因此,当更多的闪存单元处于低电压状态时,闪存单元的阈值电压受噪声影响就更轻。在格雷映射场景下,闪存的低电压状态表示数据符号11和10,显然这两种数据符号的共同特点是含有较多的1。图3 给出了两种不同闪存位线结构在数据中1的比例不同的情况下的信道互信息。由此可见,当数据中1的比例越高时,信道条件越好。
3.2 比特重映射框架
为了提高闪存的原始误码率(Raw Bit Error Rate, RBER)性能,可采用重映射技术提高原始数据中1的比例,从而使更多的闪存单元处于低电压状态。通过分析单元状态和干扰强度之间的关系以及两种结构中主要干扰源的差异,提出了两种重映射方案。方案主要由3部分组成:(1)数据分割;(2)比特翻转;(3)记录标志位。图4给出了比特重映射方案的整体实现框架,其中,计算逻辑用于数据分割,重映射逻辑用于执行比特翻转操作,片内控制逻辑用于保存用户数据和标志位。
(1)数据分割。比特重映射技术的处理单元是通过分割数据获得的数据段。因此,进行数据重映射首先需要将一页数据划分为几个数据段。每个数据段的长度
LS 可通过划分的数据段数N 和原始数据长度LRD 计算得到,具体为LS=LRDN (9) 其中,
N 是一个正整数。随着N 增加(N 的最大值等于原始数据长度LRD ,此时数据段的长度应设置为1),数据段的长度越小,数据中1和0的检测精度越高。对于分割完成的数据段,需要使用计数逻辑统计段中MSB页和LSB页数据上0和1的相对比例以便执行每个数据段最优的比特翻转方案获得更多低电压状态的闪存单元。特别地,为了适应奇偶位线结构的错误特性,需要分别对奇单元和偶单元中的数据进行统计。
(2)比特翻转。对于每个数据段,检测数据中0和1的相对比例,判断是否需要执行相应的比特翻转方案。值得注意的是,对MLC闪存而言,为了获得更多电压相对较低的单元,要求增加每个数据段中11组合的数量并尽可能避免01,故需要分别对闪存的最高有效位(Most Significant Bit, MSB)和最低有效位(Least Significant Bit, LSB)页数据进行比特翻转处理。由图2可知,对于MSB页数据,低电压状态的显著特征是含有更多的1,故对于此页数据,1为MSB最佳值,希望通过比特翻转操作获得更多的1。对于LSB页数据则需要根据对应的MSB页数据进行处理:当MSB页数据为1时,由于11的电压值比10低,此时1为LSB最佳值,故希望通过比特翻转操作在对应LSB页中得到更多的1;同理,当MSB页数据为0时,由于00的电压值比01低,此时0为LSB最佳值,故希望通过比特翻转操作在对应LSB页中得到更多的0。
(3)记录标志位。每个数据段执行完比特翻转操作后,需要使用标志位记录其翻转情况以便译码后选择适当的逆翻转操作恢复原始数据,保存数据时标志位可作为带外数据被片内控制逻辑保存在闪存系统中。为了实现完整的读写过程,接收端需要在译码后执行比特逆映射以恢复原始数据,因此在发送端执行比特翻转操作后需要记录对应的标志位以表明数据段所选用的方案:使用标志位“1”代表数据段执行比特翻转,标志位“0”代表数据段不执行比特翻转,并在发送端将标志位记录在带外数据区,保存在内存中。
3.3 基于不同结构的重映射方案
本节将提出两种不同结构的重映射技术,进而通过提高闪存系统中存储数据上1的比例,降低闪存的原始误码率。图5描述了两种不同的闪存位线结构。对于全位线结构而言,每个单元会受到来自垂直和对角方向的干扰;对于奇偶位线结构而言,闪存单元不仅会受到垂直和对角方向的干扰,还会受到同一字线水平方向上相邻单元的干扰。因此,本文设计了不同的重映射方案来适应两种不同位线结构所受单元间干扰的差异。
需要指明的是,本文所提比特重映射算法的主要思想是通过提高闪存中低电压状态单元的数量来降低闪存信道中的噪声和干扰,而MLC闪存中单元的电压状态可被视作4PAM系统,其所对应的4个数据符号可由从高到低的4个电压状态来表示,因此对于其他格雷映射的场景,同样可通过调整数据中符号的比例来提高低电压单元的数量,从而减少噪声对单元状态的影响。
3.3.1 基于全位线结构的等精度重映射方案
针对全位线结构和奇偶位线结构中闪存单元的存储数据,本文设计了等精度检测和不等精度检测两种方案来实现比特重映射操作。如图5(a)所示,在全位线结构中,闪存的奇单元和偶单元所受干扰强度相同,因此无论是提高奇单元中低电压状态比例以降低单元间干扰的影响或是提高偶单元中低电压状态的比例以减轻单元间干扰的影响,在相同的检测精度上其所能达到的效果是一致的,故针对全位线结构使用等精度检测。表1给出了基于全位线结构的等精度重映射方案详细步骤。在此算法中,首先,将存储在全位线结构闪存中长度为
LRD 的原始数据DR 均匀划分为N 个数据段S1, S2,⋯, SN 。对于数据段Sn (n∈{1, 2,⋯, N}) ,首先,检测出MSB页上1的比例,记为RMSB 。若Sn 中RMSB 小于50%,则对此数据段中MSB页上的数据执行比特翻转操作,否则不执行比特翻转操作。其次,检测对应MSB页数据分别为1和0时LSB页上1的比例,记为LMSB = 1 和LMSB = 0 。若LMSB = 1 小于50%,则对MSB=1 对应的LSB页数据执行比特翻转操作,否则不执行比特翻转操作;若LMSB = 0 大于50%,则对MSB=0 对应的LSB页数据执行比特翻转操作,否则不执行比特翻转操作。执行上述算法后,得到的数据即为重映射后的数据D′R 。表 1 新型全位线结构重映射方案(算法1)输入:原始数据DR 输出:重映射后的数据D′R (1) 获取原始数据DR; (2) 将DR划分成N个数据段S1, S2,⋯, SN; (3) for 数据段Sn (n∈{1, 2,⋯, N}) do (4) 统计MSB页上1的比例:RMSB; (5) if RMSB<50%,then (6) 对MSB页上的数据执行比特翻转操作; (7) 分别统计对应MSB页为1和0时LSB页上1的比例:
LMSB = 1,LMSB = 0;(8) if LMSB = 1<50%,then (9) 对MSB=1对应的LSB页数据执行比特翻转操作; (10) if LMSB = 0>50%,then (11) 对MSB=0对应的LSB页数据执行比特翻转操作; (12) 记录标志位 (13) end (14) 输出重映射后的数据D′R; (15) 结束 3.3.2 基于奇偶位线结构的不等精度重映射算方案
如图5(b)所示,对奇偶位线结构而言,闪存中的奇单元的主要干扰来源是位于下一字线垂直方向上的奇单元,偶单元的主要干扰来源是位于同一字线水平方向上的相邻奇单元,由此可知奇偶位线结构闪存中奇偶单元对单元间干扰的影响程度并不相同,对奇单元使用更高精度检测显然能更有效地降低信道中单元间干扰的影响,故针对奇偶位线结构使用不等精度检测。基于此,提出了基于奇偶位线结构的不等精度重映射方案,具体步骤如表2所示。
表 2 新型奇偶位线结构重映射方案(算法2)输入:原始数据DR 输出:重映射后的数据D′R (1) 获取原始数据DR,其中偶单元中的数据为DevenR,奇单元的
数据为DoddR;(2) 将DevenR划分成N个数据段:Seven1, Seven2,⋯, SevenN,将
DoddR划分成M (M>N)个数据段Sodd1, Sodd2,⋯, SoddM;(3) for Sevenn (n∈{1, 2,⋯, N}) do (4) 统计MSB页上1的比例Mevenn; (5) if Mevenn<50%,then (6) 对MSB页数据执行比特翻转操作; (7) 统计对应MSB页为1和0时LSB页上1的比例
LMSB = 1,LMSB = 0(8) if LMSB = 1<50%,then (9) 对MSB = 1对应的LSB页数据执行比特翻转操作; (10) if LMSB = 0>50%,then (11) 对MSB = 0对应的LSB页数据执行比特翻转操作; (12) 记录标志位 (13) end (14) for Soddm (m∈{1, 2,⋯, M}) do (15) 统计MSB页上1的比例Moddm; (16) if Moddm<50%,then (17) 对MSB页数据执行比特翻转操作; (18) 统计对应MSB页为1和0时LSB页上1的比例
LMSB = 1,LMSB = 0(19) if LMSB = 1<50%,then (20) 对MSB = 1对应的LSB页数据执行比特翻转操作; (21) if LMSB = 0>50%,then (22) 对MSB = 0对应的LSB页数据执行比特翻转操作; (23) 记录标志位 (24) end (25) 输出重映射后的数据D′R; (26) 结束 在此算法中,首先将存储在奇偶位线闪存中长度为
LRD 的原始数据DR 提取分别得到存储在偶单元的数据DevenR 和存储在奇单元的数据DoddR ,再将DevenR 均匀划分为N 个数据段Seven1, Seven2,⋯, SevenN , 将DoddR 均匀划分为M 个数据段Sodd1, Sodd2,⋯, SoddM ,其中M>N 。对于偶单元数据段Sevenn (n∈{1, 2,⋯, N}) ,检测出各个数据段中MSB页上1的比例,标记为Mevenn 。若数据段Sevenn 中Mevenn 小于50%,则对此数据段中MSB页上的数据执行比特翻转操作,否则不执行比特翻转操作。其次,检测奇单元数据段Soddm (m∈{1, 2,⋯, M}) 中MSB页上1的比例,标记为Moddm 。若数据段Soddm 中Moddm 小于50%,则对此数据段中MSB页上的数据执行比特翻转操作,否则不执行比特翻转操作。最后,检测各个Sevenn 和Soddm 中对应MSB页数据分别为1和0时LSB页上1的比例,记为LMSB = 1 和LMSB = 0 。若LMSB = 1 小于50%,则对MSB = 1 对应的LSB页数据执行比特翻转操作,否则不执行比特翻转操作;若LMSB = 0 大于50%,则对MSB = 0 对应的LSB页数据执行比特翻转操作,否则不执行比特翻转操作。执行上述算法后,得到的数据即为重映射后的数据D′R 。4. 仿真结果分析
本节为了验证所提出的基于全位线结构的等精度重映射方案和基于奇偶位线结构的不等精度重映射方案的优越性,在MLC闪存系统中对原始数据、CeSR方案[13]和所提出的方案进行仿真分析,该仿真是在MATLAB平台实现的。在仿真中,信道编码采用的是码率为8/9的AR4JA原模图LDPC码,译码采用BP算法且最大迭代次数设置为50[22]。此外,闪存信道参数设置如下:写电压水平
vw∈{1.4, 2.6, 3.2, 3.93} ,CCI耦合系数s=1.5 ,σe=0.35 ,σp=0.05 ,At=0.000035 ,Bt=0.000235 ,αo=0.3 ,αi=0.62 ,步进电压增量为ΔVpp=0.3 V ,测试中,使用的原始数据长度LRD=3960 ,并且假设数据保留时间T为500 h。此外,MLC闪存读取过程的LLR计算采用非均匀量化的方法,阈值电压分布设置6个参考电压电平,具体读参考电压数值根据上述所设的信道参数通过求解输入和输出之间的最大互信息(Maximum Mutual Information, MMI)来获取。
4.1 全位线结构误码性能对比
图6给出了原始数据(1的比例为41.73%)、经过CeSR方案和等精度重映射方案(即算法1)处理后的数据在全位线MLC闪存信道中的误码率对比曲线。由图6可知,所提出的等精度重映射方案的误码率性能优于原始数据和CeSR方案。具体来说,相对原始数据,等精度重映射方案能够带来约1700次的编程/擦除循环次数的改进;相对CeSR方案,等精度重映射方案能带来约800次编程/擦除循环次数的改进。因此,等精度重映射方案能够有效地提升全位线结构闪存的可靠性。
4.2 奇偶位线结构误码性能对比
相较于全位线结构,奇偶位线结构的闪存面临更复杂的噪声干扰,但由于其奇偶单元所受干扰程度的差异特性,表2所提出的不等精度重映射方案相较于CeSR方案和等精度重映射方案仍能获得更优的性能。图7给出了奇偶位线结构MLC信道下各种方案的误码率性能对比曲线。可以看出,所提出的不等精度重映射方案可获得最优的误码性能。具体而言,相对原始数据(1的比例为39.56%),等精度重映射方案能够带来约3600次的编程/擦除循环次数的性能增益;相对CeSR方案,等精度重映射方案能带来约2600次编程/擦除循环次数的性能增益;相对表1所提出的等精度重映射方案,不等精度重映射方案能带来约1400次编程/擦除循环次数的性能增益。
5. 结论
为了在闪存系统中获得良好的译码性能,本文提出基于全位线结构的等精度重映射和基于奇偶位线结构的不等精度重映射方案。具体而言,对于全位线结构,通过对原始数据进行等精度的比特翻转来提高原始数据中低电压状态的比例。对于奇偶位线结构,提出了奇偶单元不等精度重映射方案,以适应奇偶单元所受干扰的强度差异性。所设计的比特重映射方案能有效地提升闪存中低电压状态单元的比例,使得闪存单元的电压偏移降低,因此能够有效地减少单元间干扰的影响。此外,由于闪存中存储电子发生泄露所引起的数据持久性噪声主要发生在高电压状态单元中,故提高低电压单元状态的比例能够降低数据持久性噪声发生的概率。因此,所提出的比特重映射技术能有效地抑制单元间干扰和数据持久性噪声对闪存信道的影响,延长存储使用寿命。仿真结果表明,所提出的两种比特重映射方案有效改善了闪存的误码性能。因此,所提出的闪存系统性能优化方案可为6G移动通信网络中海量数据的可靠存储提供有效技术解决途径。
-
表 1 新型全位线结构重映射方案(算法1)
输入:原始数据DR 输出:重映射后的数据D′R (1) 获取原始数据DR; (2) 将DR划分成N个数据段S1, S2,⋯, SN; (3) for 数据段Sn (n∈{1, 2,⋯, N}) do (4) 统计MSB页上1的比例:RMSB; (5) if RMSB<50%,then (6) 对MSB页上的数据执行比特翻转操作; (7) 分别统计对应MSB页为1和0时LSB页上1的比例:
LMSB = 1,LMSB = 0;(8) if LMSB = 1<50%,then (9) 对MSB=1对应的LSB页数据执行比特翻转操作; (10) if LMSB = 0>50%,then (11) 对MSB=0对应的LSB页数据执行比特翻转操作; (12) 记录标志位 (13) end (14) 输出重映射后的数据D′R; (15) 结束 表 2 新型奇偶位线结构重映射方案(算法2)
输入:原始数据DR 输出:重映射后的数据D′R (1) 获取原始数据DR,其中偶单元中的数据为DevenR,奇单元的
数据为DoddR;(2) 将DevenR划分成N个数据段:Seven1, Seven2,⋯, SevenN,将
DoddR划分成M (M>N)个数据段Sodd1, Sodd2,⋯, SoddM;(3) for Sevenn (n∈{1, 2,⋯, N}) do (4) 统计MSB页上1的比例Mevenn; (5) if Mevenn<50%,then (6) 对MSB页数据执行比特翻转操作; (7) 统计对应MSB页为1和0时LSB页上1的比例
LMSB = 1,LMSB = 0(8) if LMSB = 1<50%,then (9) 对MSB = 1对应的LSB页数据执行比特翻转操作; (10) if LMSB = 0>50%,then (11) 对MSB = 0对应的LSB页数据执行比特翻转操作; (12) 记录标志位 (13) end (14) for Soddm (m∈{1, 2,⋯, M}) do (15) 统计MSB页上1的比例Moddm; (16) if Moddm<50%,then (17) 对MSB页数据执行比特翻转操作; (18) 统计对应MSB页为1和0时LSB页上1的比例
LMSB = 1,LMSB = 0(19) if LMSB = 1<50%,then (20) 对MSB = 1对应的LSB页数据执行比特翻转操作; (21) if LMSB = 0>50%,then (22) 对MSB = 0对应的LSB页数据执行比特翻转操作; (23) 记录标志位 (24) end (25) 输出重映射后的数据D′R; (26) 结束 -
[1] SANDELL M and ISMAIL A. Machine learning for LLR estimation in flash memory with LDPC codes[J]. IEEE Transactions on Circuits and Systems II:Express Briefs, 2021, 68(2): 792–796. doi: 10.1109/TCSII.2020.3016979 [2] LEE W, KANG M, HONG S, et al. Interpage-based endurance-enhancing lower state encoding for MLC and TLC flash memory storages[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2019, 27(9): 2033–2045. doi: 10.1109/TVLSI.2019.2912228 [3] YU D K H and HSIEH J W. A management scheme of multi-level retention-time queues for improving the endurance of flash-memory storage devices[J]. IEEE Transactions on Computers, 2020, 69(4): 549–562. doi: 10.1109/TC.2019.2954398 [4] LEE H C, SHY J H, CHEN Y M, et al. LDPC coded modulation for TLC flash memory[C]. 2017 IEEE Information Theory Workshop (ITW), Kaohsiung, China, 2017: 204–208. [5] SHI Zhifang, FANG Yi, BU Yingcheng, et al. Convolutional neural network (CNN)-based detection for multi-level-cell NAND flash memory[J]. IEEE Communications Letters, 2021, 25(12): 3883–3887. doi: 10.1109/LCOMM.2021.3112908 [6] CUI Lanlan, WU Fei, LIU Xiaojian, et al. Improving LDPC decoding performance for 3D TLC NAND flash by LLR optimization scheme for hard and soft decision[J]. ACM Transactions on Design Automation of Electronic Systems, 2022, 27(1): 5. doi: 10.1145/3473305 [7] ASLAM C A, GUAN Yongliang, and CAI Kui. Retention-aware belief-propagation decoding for NAND flash memory[J]. IEEE Transactions on Circuits and Systems II:Express Briefs, 2017, 64(6): 725–729. doi: 10.1109/TCSII.2016.2602359 [8] ZHANG Meng, WU Fei, DU Yajuan, et al. CooECC: A cooperative error correction scheme to reduce LDPC decoding latency in NAND flash[C]. 2017 IEEE International Conference on Computer Design (ICCD), Boston, USA, 2017: 657–664. [9] PARK Y, LEE J, CHO S S, et al. Scaling and reliability of NAND flash devices[C]. 2014 IEEE International Reliability Physics Symposium, Waikoloa, USA, 2014: 2E. 1.1–2E. 1.4. [10] CAI Yu, HARATSCH E F, MUTLU O, et al. Threshold voltage distribution in MLC NAND flash memory: Characterization, analysis, and modeling[C]. 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE), Grenoble, France, 2013: 1285–1290. [11] GUO Jie, WANG Danghui, SHAO Zili, et al. Data-pattern-aware error prevention technique to improve system reliability[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2017, 25(4): 1433–1443. doi: 10.1109/TVLSI.2016.2642055 [12] WEI Debao, DENG Libao, ZHANG Peng, et al. NRC: A nibble remapping coding strategy for NAND flash reliability extension[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2016, 35(11): 1942–1946. doi: 10.1109/TCAD.2016.2533861 [13] QIN Hongwei, ZHAO Yutong, FENG Dan, et al. CeSR + assisted LDPC: A holistic strategy to improve MLC NAND flash reliability[J]. IEEE Access, 2020, 8: 63239–63254. doi: 10.1109/ACCESS.2020.2985291 [14] BU Yingcheng, FANG Yi, ZHANG Guohua, et al. Achievable-rate-aware retention-error correction for multi-level-cell NAND flash memory[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, To be published. [15] MEI Zhen, CAI Kui, and HE Xuan. Deep learning-aided dynamic read thresholds design for multi-level-cell flash memories[J]. IEEE Transactions on Communications, 2020, 68(5): 2850–2862. doi: 10.1109/TCOMM.2020.2974723 [16] SUN Wenhao and ZHENG Jianping. A low-complexity retention noise parameter estimation for MLC NAND flash memory[C]. The ICC 2019-2019 IEEE International Conference on Communications (ICC), Shanghai, China, 2019: 1–6. [17] 张司琪, 孔令军, 张顺外, 等. MLC型NAND闪存中基于MI异构的Polar码优化[J]. 应用科学学报, 2020, 38(3): 431–440. doi: 10.3969/j.issn.0255-8297.2020.03.009ZHANG Siqi, KONG Lingjun, ZHANG Shunwai, et al. Optimization design of polar codes based on MI heterogeneity in MLC NAND flash channel[J]. Journal of Applied Sciences, 2020, 38(3): 431–440. doi: 10.3969/j.issn.0255-8297.2020.03.009 [18] KIM T, KONG G, XI Weiya, et al. Cell-to-cell interference compensation schemes using reduced symbol pattern of interfering cells for MLC NAND flash memory[J]. IEEE Transactions on Magnetics, 2013, 49(6): 2569–2573. doi: 10.1109/TMAG.2013.2251417 [19] DONG Guiqiang, LI Shu, and ZHANG Tong. Using data postcompensation and predistortion to tolerate cell-to-cell interference in MLC NAND flash memory[J]. IEEE Transactions on Circuits and Systems I:Regular Papers, 2010, 57(10): 2718–2728. doi: 10.1109/TCSI.2010.2046966 [20] FANG Yi, BU Yingcheng, CHEN Pingping, et al. Irregular-mapped protograph LDPC-coded modulation: A bandwidth-efficient solution for 6G-enabled mobile networks[J]. IEEE Transactions on Intelligent Transportation Systems, To be published. [21] CAI Yu, HARATSCH E F, MUTLU O, et al. Error patterns in MLC NAND flash memory: Measurement, characterization, and analysis[C]. 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, 2012: 521–526. [22] DAI Lin, FANG Yi, YANG Zhaojie, et al. Protograph LDPC-coded BICM-ID with irregular CSK mapping in visible light communication systems[J]. IEEE Transactions on Vehicular Technology, 2021, 70(10): 11033–11038. doi: 10.1109/TVT.2021.3106053 -