一种延长相变存储器寿命的数据编码方法及系统技术方案

技术编号:36907753 阅读:54 留言:0更新日期:2023-03-18 09:26
本发明专利技术公开了一种延长相变存储器寿命的数据编码方法及系统,设计重复法与统计法两种方法计算得到数据特点的相似单元,通过相似单元表示缓存块内数据,实现数据编码;当统计法与重复法的计算结果相同时,设置一个相似单元通过异或操作进行数据编码;当统计法与重复法的计算结果不同时,考虑同时采用两个相似单元进行数据编码。判断编码后的数据是否超长,最终选择一种对存储单元按位更新数目最少的形式作为最终的数据形式写入相变存储器中。通过充分利用缓存块内数据相似的特点,采用相似单元作为数据特点表示缓存块内其他数据,减少了写入操作中需要对存储单元更新的数目,能够显著克服由于写操作导致的相变存储器寿命较短、使用能耗较高的不足。使用能耗较高的不足。使用能耗较高的不足。

【技术实现步骤摘要】
一种延长相变存储器寿命的数据编码方法及系统


[0001]本专利技术属于新型非易失存储
,具体涉及一种延长相变存储器寿命的数据编码方法及系统。

技术介绍

[0002]当今社会已经进入大数据时代,数据的产生形式多种多样,数据量正以指数形式增长。为了满足当前数据密集型应用不断攀升的需求,存储系统必须从容量、性能、能耗以及效率等多方面进行升级。内存作为存储系统的主要组成部分之一,在容量以及能耗方面也面临着巨大挑战。针对上述问题,研究人员开展了一系列工作,逐步推动内存技术从以动态随机存取存储器(Dynamic Random Access Memory,DRAM)为主的电易失性存储向以相变存储器(Phase Change Memory,PCM)为代表的新型非易失内存(Non

volatile Memory,NVM)转化。
[0003]新型NVM技术拥有集成密度大、无需刷新操作的特点而逐步发展为更大容量、更低能耗的内存技术。新型NVM技术通常利用材料在不同温度下的阻值、磁性等特征存储数据,普遍具有较高的存储密度。且由于不使用电容存储数据,没有静态能耗的开销,实现了数据的非易失性。因此,多种新型NVM技术得到学术界与工业界的广泛关注。PCM是新型NVM技术的典型代表之一,其数据存储原理基于可逆相变材料(如硫系玻璃等)的相变特性,在晶态与非晶态两种状态下,相变材料分别表现出低阻与高阻的特点,两种状态之间的转换可以通过施加脉冲改变温度实现。由于PCM的性能接近于DRAM,且能够按字节寻址,有望成为新一代的内存技术,但以下两点问题仍制约着其进一步应用:
[0004](1)PCM的存储单元耐久性较差。PCM中数据写入通过对存储单元施加脉冲使相变材料发生状态转换实现,对PCM存储具有一定破坏性。普遍认为PCM存储单元可承受108次写入,当对其存储单元的写入次数超出可承受上限后,存储单元将出现故障。
[0005](2)PCM的写能耗较高。虽然PCM无刷新操作带来的静态能耗,但是由于PCM的写入操作需要对存储单元施加脉冲改变相变材料状态,导致其相较于DRAM写能耗更大,且高能耗写入产生的高热量将对存储单元的寿命带来负面影响。

技术实现思路

[0006]本专利技术所要解决的技术问题在于针对上述现有技术中的不足,提供一种延长相变存储器寿命的数据编码方法及系统,用于解决现有存储单元耐用性差,以及存储单元寿命低的技术问题。
[0007]本专利技术采用以下技术方案:
[0008]一种延长相变存储器寿命的数据编码方法,包括以下步骤:
[0009]S1、在写操作中,对最后一级缓存中每条缓存块内数据,采用重复法与统计法提取缓存块内数据的数据特点,计算得到缓存块内的相似单元simiunit0与simiunit1,记数据编码前对存储单元写入的数目为N0;
[0010]S2、判断步骤S1得到的simiunit0是否等于simiunit1;
[0011]S3、当步骤S2中simiunit0等于simiunit1,采用一个相似单元进行编码,以编码后数据能够对最少的存储单元进行写入作为标准,从simiunit0与simiunit1中择优选择一种,同时记编码后数据对存储单元写入的数目为N1;
[0012]S4、当步骤S2中simiunit0不等于simiunit1,采用两个相似单元进行编码,记编码后数据对存储单元写入的数目为N2;
[0013]S5、对步骤S3和步骤S4编码后N1和N2的数据长度进行检查,若数据长度超过512bit,更新对应形式对存储单元写入的数目为512;若数据长度未超过512bit,对应编码结果有效;
[0014]S6、比较步骤S1得到的N0和步骤S5得到的N1和N2,选择最小值对应的数据形式作为最终的写入形式,完成数据编码。
[0015]具体的,步骤S1中,每条缓存块长度为512bit,相似单元的备选长度为16bit、32bit、64bit、128bit。
[0016]进一步的,统计法计算相似单元时,设置与相似单元等长的数组A作为统计数组,对缓存块以L bit为粒度进行分段,得到个子缓存块;
[0017]遍历每个缓存块,在统计数组A中记录各个子缓存块中每bit的内容,若子缓存块中某bit内容为1,则统计数组对应位置的内容加1;若子缓存块某bit为0,统计数组对应位置的内容加0;
[0018]完成遍历后,对统计数组A进行处理,若A中某元素大于等于表示至少一半的子缓存块在该处内容为1,将A中该元素重置为1;反之,若某元素小于则将对应元素重置为0;
[0019]将统计数组A经过整理后的内容作为相似单元长度为L bit时,统计法的计算结果。
[0020]进一步的,重复法计算相似单元时,以相似单元长度L bit为粒度对缓存块分段,统计每个子缓存块出现的次数,将重复出现次数最多的子缓存块作为相似单元长度为L bit时,重复法的计算结果。
[0021]具体的,步骤S3中,将缓存块按照相似单元长度进行分段,使每个子缓存块与相似单元异或,若异或结果为0,对应子块与相似单元内容相同,设置对应标志位为0;若异或结果不为0,对应子块与相似单元内容不同,设置对应标志位为1;选择编码后结果对存储单元写入最少的作为采用一个相似单元编码的最终结果。
[0022]进一步的,相似单元的备选长度共4种,数据编码后被组织为:前缀+相似单元+标志位+异或结果非0内容的形式,前缀表示相似单元长度。
[0023]进一步的,若simiunit0与simiunit1相等,将simiunit0直接作为结果。
[0024]具体的,步骤S4中,将缓存块按照相似单元长度进行分段,以重复法结果simiunit0作为主相似单元,对不等于simiunit0的剩余子缓存块采用统计法计算得到新的simiunit1作为辅相似单元;通过将simiunit0与各个子缓存块异或计算得到与simiunit0相同的子块,在tag0中设置其对应的标志位为0;对于不等于simiunit0的子块,分别与统计
法获得的simiunit1进行异或操作,标记出与simiunit1相等的子块,在tag1中设置对应的标志位为0;选择编码后对存储单元写入最少的作为采用两个相似单元编码的最终结果。
[0025]进一步的,相似单元的备选长度共4种,数据编码后将被组织为:前缀+主相似单元+tag0+辅相似单元+tag1+与辅相似单元异或结果非0内容的形式,前缀表示相似单元长度。
[0026]第二方面,本专利技术实施例提供了一种延长相变存储器寿命的数据编码系统,包括:
[0027]提取模块,在写操作中,对最后一级缓存中每条缓存块内数据,采用重复法与统计法提取缓存块内数据的数据特点,计算得到缓存块内的相似单元simiunit0与simiunit1,记数据编码前对存储单元写入的数目为N0;
[0028]判断模块,判断提取模块得到的simiunit0是否等于simi本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种延长相变存储器寿命的数据编码方法,其特征在于,包括以下步骤:S1、在写操作中,对最后一级缓存中每条缓存块内数据,采用重复法与统计法提取缓存块内数据的数据特点,计算得到缓存块内的相似单元simiunit0与simiunit1,记数据编码前对存储单元写入的数目为N0;S2、判断步骤S1得到的simiunit0是否等于simiunit1;S3、当步骤S2中simiunit0等于simiunit1,采用一个相似单元进行编码,以编码后数据能够对最少的存储单元进行写入作为标准,从simiunit0与simiunit1中择优选择一种,同时记编码后数据对存储单元写入的数目为N1;S4、当步骤S2中simiunit0不等于simiunit1,采用两个相似单元进行编码,记编码后数据对存储单元写入的数目为N2;S5、对步骤S3和步骤S4编码后N1和N2的数据长度进行检查,若数据长度超过512bit,更新对应形式对存储单元写入的数目为512;若数据长度未超过512bit,对应编码结果有效;S6、比较步骤S1得到的N0和步骤S5得到的N1和N2,选择最小值对应的数据形式作为最终的写入形式,完成数据编码。2.根据权利要求1所述的延长相变存储器寿命的数据编码方法,其特征在于,步骤S1中,每条缓存块长度为512bit,相似单元的备选长度为16bit、32bit、64bit、128bit。3.根据权利要求2所述的延长相变存储器寿命的数据编码方法,其特征在于,统计法计算相似单元时,设置与相似单元等长的数组A作为统计数组,对缓存块以L bit为粒度进行分段,得到个子缓存块;遍历每个缓存块,在统计数组A中记录各个子缓存块中每bit的内容,若子缓存块中某bit内容为1,则统计数组对应位置的内容加1;若子缓存块某bit为0,统计数组对应位置的内容加0;完成遍历后,对统计数组A进行处理,若A中某元素大于等于表示至少一半的子缓存块在该处内容为1,将A中该元素重置为1;反之,若某元素小于则将对应元素重置为0;将统计数组A经过整理后的内容作为相似单元长度为L bit时,统计法的计算结果。4.根据权利要求2所述的延长相变存储器寿命的数据编码方法,其特征在于,重复法计算相似单元时,以相似单元长度L bit为粒度对缓存块分段,统计每个子缓存块出现的次数,将重复出现次数最多的子缓存块作为相似单元长度为L bit时,重复法的计算结果。5.根据权利要求1所述的延长相变存储器寿命的数据编码方法,其特征在于,步骤S3中,将缓存块按照相似单元长度进行分段,使每个子缓存块与相似单元异或,若异或结果为0,对应子块与相似单元内容相同,设置对应标志位为0;若异或结果不为0,对应子块与相似单元内容不同,设置对应标志位为1;...

【专利技术属性】
技术研发人员:董小社米珏惠祖明王龙翔陈维多
申请(专利权)人:西安交通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1