CN108536616A - 一种提升pcm数据加密写性能和寿命的映射方法 - Google Patents

一种提升pcm数据加密写性能和寿命的映射方法 Download PDF

Info

Publication number
CN108536616A
CN108536616A CN201810264393.5A CN201810264393A CN108536616A CN 108536616 A CN108536616 A CN 108536616A CN 201810264393 A CN201810264393 A CN 201810264393A CN 108536616 A CN108536616 A CN 108536616A
Authority
CN
China
Prior art keywords
data
word
write
write back
pcm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810264393.5A
Other languages
English (en)
Other versions
CN108536616B (zh
Inventor
童薇
冯丹
刘景宁
杨明顺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201810264393.5A priority Critical patent/CN108536616B/zh
Publication of CN108536616A publication Critical patent/CN108536616A/zh
Application granted granted Critical
Publication of CN108536616B publication Critical patent/CN108536616B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0873Mapping of cache memory to specific storage devices or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/608Details relating to cache mapping
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种提升PCM数据加密写性能和寿命的映射方法,包括:读取PCM内存中数据并通过映射数据恢复方法得到原数据;对原数据和写回数据进行逐字比较,并更新写回数据的修改标识;识别写回数据中的修改字和未修改字,并将修改字映射到数据前部分,将未修改字映射到数据后部分,得到映射后数据;采用LCTR计数器加密映射后数据中的修改字,并采用TCTR计数器加密映射后数据中的未修改字,得到加密后数据;更新循环移动标识,并对加密后数据进行正向循环移动,得到新的写回数据;采用DCW将新的写回数据写入PCM内存中。本发明提升了PCM数据加密的写性能,并降低了写能耗,同时优化了磨损均衡,有效提升了PCM的寿命。

Description

一种提升PCM数据加密写性能和寿命的映射方法
技术领域
本发明属于相变存储器性能优化领域,更具体地,涉及一种提升PCM数据加密写性能和寿命的映射方法。
背景技术
相变存储器(PCM,Phase Change Memory)是一种由硫族化合物材料构成的新型非易失存储器,它利用材料可逆转的物理状态来存储数据信息,具有非易失性、工艺尺寸小、存储密度高、读写速度快、功耗低等优点。
PCM存储单元具有有限的写入次数,一般为107-109次。存储单元存取数据时,硫族化合物材料将频繁地在晶态和非晶态间切换,达到有限切换次数后将会失去相变特性,从而无法通过施加电压改变其所属物理状态,无法继续存取数据。为提升PCM的耐久性和性能,常采用新旧数据比对、翻转写入等方法减少数据量的写入或位翻转。数据比对写入(DCW,Data Comparison Write),通过硬件电路将存储在PCM单元中的数据读取出来,与待写入的数据进行比较,数据不同时才写入,可减少写入PCM的数据量从而提升其写性能、降低写能耗。数据翻转写入(Flip-N-Write),在DCW的基础上,通过将数据按照若干比特划分单元,通过统计比对单元数据、翻转后单元数据与原始单元数据之间修改的比特数目,选择修改比特数目较少的方式写回各单元数据,可减少数据位的翻转从而提升PCM的寿命。
PCM存储介质具有非易失性,当存储介质被回收或者盗取后,存储在PCM介质中的隐私数据可能泄露,带来安全问题。为保障数据存储的隐私性和安全性,常在处理器中集成数据加密引擎,利用数据加密技术加密写回内存中的数据。高级加密标准(AES,AdvancedEncryption Standard)为常用的数据加密技术,AES将数据明文通过字节替代、行移位、列混淆、轮密钥加等阶段反复迭代转换为密文,如图1(a)所示;计数器模式AES加密(Counter-Mode AES)在AES的基础上,将内存地址和相应地址写操作次数作为密钥一部分加密数据明文,如图1(b)所示,增强了加密操作的安全性;一次性填充AES加密(One Time Pad AES,OTPAES)将内存地址和写操作次数作为加密输入产生填充PAD,与待加密的数据明文异或得到最终密文,如图1(c)所示,利用了数据读取和填充PAD生成的可并行性提升了加密性能。
良好的数据加密算法要求具有雪崩效应,也即当明文数据发生少量比特修改时,加密后的密文将发生大量的、不可区分的修改。当数据加密应用在PCM中时,雪崩效应将影响DCW和Flip-N-Write的效果,从而影响PCM寿命和性能。针对PCM数据加密存在的问题,现有方法采用双重计数器加密方案(DEUCE,Dual Counter Encryption)。DEUCE将缓存行中修改与未修改的数据分开加密,限制雪崩效应发生在修改的数据中,同时扩展Start-Gap磨损均衡算法减少缓存行内部写入不均衡,同时保障了PCM的安全和寿命。DEUCE将512比特缓存行大小分为4个128比特的数据块分别进行加密,每次加密操作将128比特数据按照一定粒度划分为字,并通过额外的修改标识区分word是否修改,如图2所示。修改的字采用领头计数器(LCTR,Leading Counter)进行OTP AES加密,LCTR的值为该地址写操作次数,因此对应修改字在每次写操作都会重新加密;未修改的字采用跟随计数器(TCTR,TrailingCounter)进行OTP AES加密,TCTR由LCTR屏蔽低位而来,因此对应未修改字每隔若干次写操作才会加密一次。DEUCE方案需要存储每个512比特内存单元数据的修改标识与当前写操作次数,以实现加解密操作。
由于PCM芯片本身读写机制的限制,写数据传输到芯片内部后到最终写入到PCM阵列中是由多个写单元完成,写操作的性能与能耗取决于写单元的数目。同时研究发现缓存行中修改的数据较少且分散在缓存行的各个字节中,现有的DEUCE方案将缓存行数据写回PCM内存时需要多个写单元。
总体而言,现有方法在PCM数据加密写性能和寿命提升上仍存在优化空间。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种提升PCM数据加密写性能和寿命的映射方法,其目的在于,充分利用缓存行写回数据修改较少、相对分散且写回相同地址的数据中修改字分布具有相似性的特点,通过重映射的方法将缓存行中的修改字集中存储,以减少写回PCM时的写单元数目,提升PCM数据加密的写性能;同时根据重映射后的数据特征进行数据循环移动以改磨损均衡,提升PCM的寿命。
为实现上述目的,按照本发明的一个方面,提供了一种提升PCM数据加密写性能和寿命的映射方法,其特征在于,包括如下步骤:
(1)读取PCM内存中数据并通过映射数据恢复方法得到原数据;
(2)分别将原数据和写回数据划分为多个字,并将原数据与写回数据进行逐字比较,根据比较结果更新写回数据的修改标识M;其中,每个字包含B个比特,B为正整数且为2的整数倍;B的取值根据系统的存储开销限制及重映射的性能要求设定,B取值较小则能更好得指示修改字的分布,但同时会需要较大的存储开销,相反地,B取值较大时,所需的存储开销较小,但不能较好地指示修改字的分布情况,B常取8、16或32;
(3)根据修改标识M识别写回数据中的修改字和未修改字,并将修改字按照其在写回数据中的先后顺序依次映射到数据的前部分,然后将未修改字按照其在写回数据中的先后顺序依次映射到数据的后部分,得到映射后数据;
(4)设置LCTR计数器的值为写操作计数器值C,并设置TCTR计数器的值为写操作计数器值C屏蔽低L位后的数值;对映射后数据中的修改字采用LCTR计数器进行加密,并对映射后数据中的未修改字采用TCTR计数器进行加密,得到加密后数据;其中,L较小时会导致整个数据频繁的进行重加密,较大时会导致某些修改次数较少的字频繁发生加密,都会影响PCM的性能和寿命,常取16或32;
(5)根据写操作计数器值C更新循环移动标识R,并根据循环移动标识R对加密后数据进行正向循环移动,得到新的写回数据;正向循环移动为循环左移或者循环右移;
(6)采用DCW将新的写回数据写入PCM内存中,并更新写回数据所需的平均写单元数目以及写操作计数器值C。
进一步地,步骤(1)中的映射数据恢复方法,包括如下步骤:
(11)读取PCM内存中数据、修改标识M、写操作计数器值C以及循环移动标识R;
(12)根据循环移动标识R将PCM内存中数据逆向循环移动,移动距离为R个写单元大小,逆向循环移动的方向与所述步骤(5)中正向循环移动的移动方向相反;
(13)根据写操作计数器值C,内存地址以及修改标识M解密逆向循环移动后的数据,得到数据明文;
(14)根据修改标识M,识别数据明文中的修改字和未修改字;根据修改标识M中所记录的修改字的位置,按照数据明文中修改字的先后顺序依次将修改字映射到数据中,并根据修改标识M中所记录的未修改字的位置,按照数据明文中未修改字的先后顺序依次将未修改字映射到数据中,得到原数据。
更进一步地,步骤(13)中,解密数据的解密算法为计数器模式OTP AES解密算法。
进一步地,步骤(2)中,将原数据与写回数据进行逐字比较,根据比较结果更新写回数据的修改标识M,包括如下步骤:
(21)读取写回数据当前的修改标识作为旧修改标识M1;旧修改标识M1中每个标志位对应写回数据中的一个字,且修改字对应的标志位为1,未修改字对应的标志位为0;
(22)根据原数据与写回数据逐字比较的结果,得到修改标识M2;修改标识M2中,每个标志位对应写回数据中的一个字,且相对于原数据,写回数据中修改字对应的标志位为1,未修改字对应的标志位为0;
(23)将旧修改标识M1与修改标识M2进行按位或操作,得到按位或结果M12;若M12=M1,则表示修改字分布相同,将修改标识M更新为:M=M1;若M12≠M1,且按位或结果M12中1的数目X12与修改标识M1中1的数目X1满足:则表示修改字分布相似,只增加少数修改字,将修改标识M更新为:M=M12;若M12≠M1,且按位或结果M12中1的数目X12与修改标识M1中1的数目X1满足:则表示修改字分布不同,增加大量修改字,将修改标识M更新为:M=M2
进一步地,步骤(4)中,LCTR计数器对映射后数据中的修改字加密的加密算法,以及TCTR计数器对映射后数据中的未修改字加密的加密算法,均为计数器模式OTP AES加密算法。
进一步地,步骤(5)包括如下步骤:
(51)相对于上一次循环移动操作,若写操作计数器值C增加的次数达到阈值C0,则转入步骤(52);否则,转入步骤(53);阈值C0根据实际的磨损均衡的要求设定,阈值C0设定越小,则短时间内磨损均衡效果越好,但数据循环移动越频繁,会导致最终写回数据与PCM中数据不同,从而带来额外的数据修改写入;相应地,阈值C0设定越大,则数据循环移动越不频繁,但短时间数据中不同比特之间磨损均衡效果较差;
(52)读取当前的循环移动标识作为旧循环移动标识R1,并根据写回数据所需的平均写单元数目计算并更新循环移动标识为:
(53)将加密后数据正向循环移动,移动距离为R个写单元大小。
进一步地,步骤(6)中更新写回数据所需的平均写单元数目包括:若写操作计数器值C和阈值C0满足:C%C0=0,则将写回数据所需的平均写单元数目更新为:否则,读取当前写回数据所需的平均写单元数目作为旧平均写单元数目并将平均写单元数目更新为:
其中,N为采用DCW将新的写回数据写入PCM内存时所需的写单元数目。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明所提供的提升PCM数据加密写性能和寿命的映射方法,充分利用缓存行写回数据修改较少、相对分散且写回相同地址的数据中修改字分布具有相似性的特点,通过重映射的方法将缓存行中的修改字集中存储,有效减少了写回PCM时的写单元数目,提升了PCM数据加密的写性能,并降低了写能耗;
(2)本发明所提供的提升PCM数据加密写性能和寿命的映射方法,在写操作增加的次数达到一定数值后,会对数据进行循环移动,使得修改字的存储位置较为均匀地分布在PCM内存中,从而优化了磨损均衡,有效提升了PCM的寿命;
(3)本发明所提供的提升PCM数据加密写性能和寿命的映射方法,采用读对比写的方式将数据写入PCM内存,可以避免冗余的写操作,从而降低写能耗。
附图说明
图1为现有的AES数据加解密过程以及相关改进策略;(a)为AES加密及解密过程示意图;(b)为计数器模式AES加密及解密过程示意图;(c)为一次性填充AES加密及解密过程示意图;
图2为现有的DEUCE双重计数器加密过程示意图;
图3为本发明实施例提供的实现了本发明所提供的映射方法的存储系统框图;
图4为本发明实施例提供的数据重映射、加密及循环移动过程的示意图;
图5为本发明实施例提供的映射数据恢复过程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图3所示的存储系统,包括CPU、三级缓存、内存控制器以及由PCM存储阵列构成的内存;其内存控制器包括写缓冲、数据重映射加密模块、读缓冲、数据冲映射恢复模块、以及读写控制电路。在存储系统中,上级缓存系统对内存的写以缓存行为单位,典型的缓存行大小为64字节(64B),考虑实施样例示意图描述与解释的方便,本实施例中假定缓存行大小为32字节(32B),写回数据到PCM的写单元大小为8字节(64b)。
在图3所示的存储系统中,当最后一级缓存(L3缓存)向内存控制器发送写缓存行命令时,缓存行的数据会放到写缓冲里面。如果写缓冲队列满了,缓存行中的写回数据会通过本发明所提供的提升PCM数据加密写性能和寿命的映射方法写入PCM内存,如图4所示,具体包括如下步骤:
(1)读取PCM内存中数据并通过映射数据恢复方法得到原数据;
(2)分别将原数据和写回数据划分为多个字,每个字包含16个比特,并将原数据与写回数据进行逐字比较,根据比较结果更新写回数据的修改标识M;具体包括如下步骤:
(21)读取写回数据当前的修改标识作为旧修改标识M1;旧修改标识M1中每个标志位对应写回数据中的一个字,且修改字对应的标志位为1,未修改字对应的标志位为0;如图4所示,写回数据中,修改字为W1、W4、W9、W15,对应地,旧修改标识M1=0100 1000 01000001;
(22)根据原数据与写回数据逐字比较的结果,得到修改标识M2;修改标识M2中,每个标志位对应写回数据中的一个字,且相对于原数据,写回数据中修改字对应的标志位为1,未修改字对应的标志位为0;相对于原数据,写回数据中的修改字为W1、W9、W15,对应地,修改标识M2=0100 0000 0100 0001;
(23)将旧修改标识M1与修改标识M2进行按位或操作,得到按位或结果M12=01001000 0100 0001;由于M12=M1,表明修改字分布相同,将修改标识M更新为:M=M1
(3)根据修改标识M识别写回数据中的修改字为W1、W4、W9、W15,因此将修改字W1、W4、W9、W15依次映射到数据的第一个写单元,而将剩余的未修改数据依次映射到数据的后三个写单元,如图4所示;
(4)设置LCTR计数器的值为写操作计数器值C,并设置TCTR计数器的值为写操作计数器值C屏蔽低L位后的数值;对映射后数据中的修改字采用LCTR计数器通过计数器模式OTP AES加密算法进行加密,并对映射后数据中的未修改字采用TCTR计数器通过计数器模式OTP AES加密算法进行加密,得到加密后数据;
(5)根据写操作计数器值C更新循环移动标识R,在本实施例中,设定阈值C0=100,由于写操作计数器值C=45,未达到阈值C0,因此不更新循环移动标识R,即R=01,如图4所示;根据循环移动标识R对加密后数据进行循环左移,移动距离为R个写单元大小,即1个写单元大小,得到新的写回数据;
(6)采用DCW将新的写回数据写入PCM内存中,并更新写回数据所需的平均写单元数目以及写操作计数器;在本实施例中,写操作计数器值C=45,阈值C0=100,旧平均写单元数目如图4所示,采用DCW将新的写回数据写入PCM内存时所需的写单元数目为N=1,由于操作计数器值C和阈值C0不满足:C%C0=0,因此将平均写单元数目更新为:
并通过取整,得到更新后的写操作计数器值为C=46。
如图5所示,步骤(1)的映射数据恢复方法包括如下步骤:
(11)读取PCM内存中数据、修改标识M、写操作计数器值C以及循环移动标识R;
(12)根据循环移动标识R将PCM内存中数据循环右移,移动距离为R个写单元大小;
(13)根据写操作计数器值C,内存地址以及修改标识M通过计数器模式OTP AES解密算法解密循环右移后的数据,得到数据明文;
(14)根据修改标识M,识别数据明文中的修改字和未修改字;根据修改标识M中所记录的修改字的位置,按照数据明文中修改字的先后顺序依次将修改字映射到数据中,并根据修改标识M中所记录的未修改字的位置,按照数据明文中未修改字的先后顺序依次将未修改字映射到数据中,得到原数据。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种提升PCM数据加密写性能和寿命的映射方法,其特征在于,包括如下步骤:
(1)读取PCM内存中数据并通过映射数据恢复方法得到原数据;
(2)分别将原数据和写回数据划分为多个字,并将原数据与写回数据进行逐字比较,根据比较结果更新写回数据的修改标识M;其中,每个字包含B个比特,B为正整数且为2的整数倍;
(3)根据修改标识M识别写回数据中的修改字和未修改字,并将修改字按照其在写回数据中的先后顺序依次映射到数据的前部分,然后将未修改字按照其在写回数据中的先后顺序依次映射到数据的后部分,得到映射后数据;
(4)设置LCTR计数器的值为写操作计数器值C,并设置TCTR计数器的值为写操作计数器值C屏蔽低L位后的数值;对映射后数据中的修改字采用LCTR计数器进行加密,并对映射后数据中的未修改字采用TCTR计数器进行加密,得到加密后数据;
(5)根据写操作计数器值C更新循环移动标识R,并根据循环移动标识R对加密后数据进行正向循环移动,得到新的写回数据;正向循环移动为循环左移或者循环右移;
(6)采用DCW将新的写回数据写入PCM内存中,并更新写回数据所需的平均写单元数目以及写操作计数器值C。
2.如权利要求1所述的提升PCM数据加密写性能和寿命的映射方法,其特征在于,所述步骤(1)中的映射数据恢复方法,包括如下步骤:
(11)读取PCM内存中数据、修改标识M、写操作计数器值C以及循环移动标识R;
(12)根据循环移动标识R将PCM内存中数据逆向循环移动,移动距离为R个写单元大小,逆向循环移动的方向与所述步骤(5)中正向循环移动的移动方向相反;
(13)根据写操作计数器值C,内存地址以及修改标识M解密逆向循环移动后的数据,得到数据明文;
(14)根据修改标识M,识别数据明文中的修改字和未修改字;根据修改标识M中所记录的修改字的位置,按照数据明文中修改字的先后顺序依次将修改字映射到数据中,并根据修改标识M中所记录的未修改字的位置,按照数据明文中未修改字的先后顺序依次将未修改字映射到数据中,得到原数据。
3.如权利要求2所述的提升PCM数据加密写性能和寿命的映射方法,其特征在于,所述步骤(13)中,解密数据的解密算法为计数器模式OTP AES解密算法。
4.如权利要求1所述的提升PCM数据加密写性能和寿命的映射方法,其特征在于,所述步骤(2)中,将原数据与写回数据进行逐字比较,根据比较结果更新写回数据的修改标识M,包括如下步骤:
(21)读取写回数据当前的修改标识作为旧修改标识M1;旧修改标识M1中每个标志位对应写回数据中的一个字,且修改字对应的标志位为1,未修改字对应的标志位为0;
(22)根据原数据与写回数据逐字比较的结果,得到修改标识M2;修改标识M2中,每个标志位对应写回数据中的一个字,且相对于原数据,写回数据中修改字对应的标志位为1,未修改字对应的标志位为0;
(23)将旧修改标识M1与修改标识M2进行按位或操作,得到按位或结果M12;若M12=M1,则将修改标识M更新为:M=M1;若M12≠M1,且按位或结果M12中1的数目X12与修改标识M1中1的数目X1满足:则将修改标识M更新为:M=M12;若M12≠M1,且按位或结果M12中1的数目X12与修改标识M1中1的数目X1满足:则将修改标识M更新为:M=M2
5.如权利要求1所述的提升PCM数据加密写性能和寿命的映射方法,其特征在于,所述步骤(4)中,LCTR计数器对映射后数据中的修改字加密的加密算法,以及TCTR计数器对映射后数据中的未修改字加密的加密算法,均为计数器模式OTP AES加密算法。
6.如权利要求1所述的提升PCM数据机密写性能和寿命的映射方法,其特征在于,所述步骤(5)包括如下步骤:
(51)相对于上一次循环移动操作,若写操作计数器值C增加的次数达到阈值C0,则转入步骤(52);否则,转入步骤(53);
(52)读取当前的循环移动标识作为旧循环移动标识R1,并根据写回数据所需的平均写单元数目计算并更新循环移动标识为:
(53)将加密后数据正向循环移动,移动距离为R个写单元大小。
7.如权利要求1所述的提升PCM数据加密写性能和寿命的方法,其特征在于,所述步骤(6)中更新写回数据所需的平均写单元数目包括:若写操作计数器值C和阈值C0满足:C%C0=0,则将写回数据所需的平均写单元数目更新为:否则,读取当前写回数据所需的平均写单元数目作为旧平均写单元数目并将平均写单元数目更新为:
其中,N为采用DCW将新的写回数据写入PCM内存时所需的写单元数目。
CN201810264393.5A 2018-03-28 2018-03-28 一种提升pcm数据加密写性能和寿命的映射方法 Active CN108536616B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810264393.5A CN108536616B (zh) 2018-03-28 2018-03-28 一种提升pcm数据加密写性能和寿命的映射方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810264393.5A CN108536616B (zh) 2018-03-28 2018-03-28 一种提升pcm数据加密写性能和寿命的映射方法

Publications (2)

Publication Number Publication Date
CN108536616A true CN108536616A (zh) 2018-09-14
CN108536616B CN108536616B (zh) 2021-10-15

Family

ID=63484204

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810264393.5A Active CN108536616B (zh) 2018-03-28 2018-03-28 一种提升pcm数据加密写性能和寿命的映射方法

Country Status (1)

Country Link
CN (1) CN108536616B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966298A (zh) * 2020-08-24 2020-11-20 深圳三地一芯电子有限责任公司 一种基于Flash存储器的倒序编程实现方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101401444A (zh) * 2005-08-31 2009-04-01 汤姆森特许公司 用于视频测试图案的有效测试生成器
US20120324141A1 (en) * 2011-05-24 2012-12-20 Georgia Tech Research Corporation Systems and methods providing wear leveling using dynamic randomization for non-volatile memory
US20150106556A1 (en) * 2008-06-18 2015-04-16 Super Talent Electronics, Inc. Endurance Translation Layer (ETL) and Diversion of Temp Files for Reduced Flash Wear of a Super-Endurance Solid-State Drive
US20150199268A1 (en) * 2014-01-16 2015-07-16 Pure Storage Data placement based on data retention in a tiered storage device system
CN105955891A (zh) * 2016-04-25 2016-09-21 华中科技大学 一种双层磨损均衡方法及系统
US20170075718A1 (en) * 2010-11-12 2017-03-16 Alibaba Group Holding Limited Method and apparatus of accessing data of virtual machine
CN106980799A (zh) * 2017-03-10 2017-07-25 华中科技大学 一种磨损均衡感知的非易失内存加密系统
CN107239413A (zh) * 2016-03-29 2017-10-10 想象技术有限公司 处理存储器请求
US20180018287A1 (en) * 2014-08-25 2018-01-18 Western Digital Technologies, Inc. Method to generate pattern data over garbage data when encryption parameters are changed
CN107624179A (zh) * 2015-06-26 2018-01-23 英特尔公司 高效固态驱动器数据压缩方案和布局
CN107632939A (zh) * 2016-07-19 2018-01-26 西部数据技术公司 用于存储装置的映射表

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101401444A (zh) * 2005-08-31 2009-04-01 汤姆森特许公司 用于视频测试图案的有效测试生成器
US20150106556A1 (en) * 2008-06-18 2015-04-16 Super Talent Electronics, Inc. Endurance Translation Layer (ETL) and Diversion of Temp Files for Reduced Flash Wear of a Super-Endurance Solid-State Drive
US20170075718A1 (en) * 2010-11-12 2017-03-16 Alibaba Group Holding Limited Method and apparatus of accessing data of virtual machine
US20120324141A1 (en) * 2011-05-24 2012-12-20 Georgia Tech Research Corporation Systems and methods providing wear leveling using dynamic randomization for non-volatile memory
US20150199268A1 (en) * 2014-01-16 2015-07-16 Pure Storage Data placement based on data retention in a tiered storage device system
US20180018287A1 (en) * 2014-08-25 2018-01-18 Western Digital Technologies, Inc. Method to generate pattern data over garbage data when encryption parameters are changed
CN107624179A (zh) * 2015-06-26 2018-01-23 英特尔公司 高效固态驱动器数据压缩方案和布局
CN107239413A (zh) * 2016-03-29 2017-10-10 想象技术有限公司 处理存储器请求
CN105955891A (zh) * 2016-04-25 2016-09-21 华中科技大学 一种双层磨损均衡方法及系统
CN107632939A (zh) * 2016-07-19 2018-01-26 西部数据技术公司 用于存储装置的映射表
CN106980799A (zh) * 2017-03-10 2017-07-25 华中科技大学 一种磨损均衡感知的非易失内存加密系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
冒伟等: "基于相变存储器的存储技术研究综述", 《计算机学报》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111966298A (zh) * 2020-08-24 2020-11-20 深圳三地一芯电子有限责任公司 一种基于Flash存储器的倒序编程实现方法及装置

Also Published As

Publication number Publication date
CN108536616B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
US20230195654A1 (en) Namespace encryption in non-volatile memory devices
US20210165571A1 (en) Memory system and method of controlling nonvolatile memory
US11657163B2 (en) Memory system and method of controlling nonvolatile memory
US10540100B2 (en) Mapping-based wear leveling for non-volatile memory
US8756376B2 (en) Mitigate flash write latency and bandwidth limitation with a sector-based write activity log
US9396136B2 (en) Cascaded data encryption dependent on attributes of physical memory
JP5662037B2 (ja) 不揮発性メモリに対してデータの読み出しおよび書き込みを行うためのデータホワイトニング
US8332572B2 (en) Wear leveling mechanism using a DRAM buffer
TWI476780B (zh) 具有揮發性及非揮發性記憶體之混合固態記憶體系統
CN104137084B (zh) 提高耐久性和抗攻击性的用于pcm缓存的有效动态随机化地址重映射
US8209463B2 (en) Expansion slots for flash memory based random access memory subsystem
US9058296B2 (en) Data processing method, memory storage device and memory control circuit unit
CN104424016B (zh) 用于自加密驱动器的虚拟带集中
CN112445721B (zh) 提高效率的经混淆逻辑到物理映射管理
US8352671B2 (en) Partial allocate paging mechanism using a controller and a buffer
KR20120136197A (ko) 비휘발성 메모리에 대한 웨어 레벨링 방법
JP6806819B2 (ja) メモリ装置、メモリシステム及びプログラム
US20180196598A1 (en) Memory control scheme for flash memory devices
CN108536616A (zh) 一种提升pcm数据加密写性能和寿命的映射方法
CN104573537B (zh) 数据处理方法、存储器存储装置与存储器控制电路单元
JP6689325B2 (ja) メモリ装置の制御方法
KR101996136B1 (ko) 빠른 판독 다중 레벨 3d nand가 수명 용량 향상시키는 것을 가능하게 하는 데이터 매핑
JP2016126737A (ja) キャッシュメモリ装置及びプログラム
KR20090098276A (ko) 하이브리드 저장 장치
US20200272574A1 (en) Data storage device and control method for non-volatile memory

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant