CN102097125A - Pcm的写操作方法 - Google Patents

Pcm的写操作方法 Download PDF

Info

Publication number
CN102097125A
CN102097125A CN201010584091XA CN201010584091A CN102097125A CN 102097125 A CN102097125 A CN 102097125A CN 201010584091X A CN201010584091X A CN 201010584091XA CN 201010584091 A CN201010584091 A CN 201010584091A CN 102097125 A CN102097125 A CN 102097125A
Authority
CN
China
Prior art keywords
data block
pcm
written
service
storage unit
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
CN201010584091XA
Other languages
English (en)
Other versions
CN102097125B (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN 201010584091 priority Critical patent/CN102097125B/zh
Publication of CN102097125A publication Critical patent/CN102097125A/zh
Application granted granted Critical
Publication of CN102097125B publication Critical patent/CN102097125B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种PCM的写操作方法,包括:S1:将要写回PCM存储单元中的待写数据块作预处理,得到预处理后的数据块;S2:从PCM的存储单元中读取与所述待写数据块对应的原始数据块;S3:计算待写数据块或所述预处理后的数据块与所述原始数据块之间的汉明距离,并选取与所述原始数据块汉明距离最小值对应的数据块写回原始数据块的存储单元,并将所述预处理标志写回所述存储单元中。本发明的方法减小了对PCM存储单元的写操作次数,从延长了PCM的使用寿命。

Description

PCM的写操作方法
技术领域
本发明涉及计算机存储技术领域,特别涉及一种PCM的写操作方法。
背景技术
相变存储器(Phase Change Memory),简称PCM,是一种新型的存储器技术,具有巨大的应用前景。与闪存(Flash)相比具有读写速度快,寿命长等优点。但PCM的存储颗粒同样具有有限的生命周期,可擦写次数为108~109次。由于读写速度和低功耗方面的优势,也可以将PCM作为主存DRAM的替代品,与DRAM相比,PCM具有集成密度高,功耗低,非易失的特点,但其读写速度稍慢,有限的可擦写次数依然是其突出性的问题。如何减少写回PCM的数据成为增强相变存储器存储寿命的一种显著方法。
PCM是按位为单位进行操作的,一个PCM存储单元使用一种叫做相变材质来存储1比特信息。这种介质可以稳定的存在两种状态:非晶体状态和晶体状态。可以用来代表逻辑上的‘0’和‘1’。两种状态可以通过加热来进行状态转换。这种材质还可以通过加热温度的不同来形成多种可以区分的状态来存储更多的信息。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何减少对PCM的写回数据量,以增强相变存储器存储寿命。
(二)技术方案
一种PCM的写操作方法,包括以下步骤:
S1:将要写回PCM存储单元中的待写数据块作预处理,得到预处理后的数据块,所述预处理包括:
将所述待写数据块按位取反,并设定预处理标志01;
将所述待写数据块与辅助常数作异或运算,并设定预处理标志10;
将所述待写数据块与辅助常数作同或运算,并设定预处理标志11;
若未预处理,则预处理标志为00;
S2:从PCM的存储单元中读取与所述待写的数据块对应的原始数据块;
S3:计算待写数据块或所述预处理后的数据块与所述原始数据块之间的汉明距离,并选取与所述原始数据块汉明距离最小值对应的数据块写回原始数据块的存储单元,并将所述预处理标志写回所述存储单元中。
其中,所述步骤S1中的辅助常数存储在PCM控制器中新增的辅助寄存器中。
其中,所述辅助寄存器的长度为数据块的长度,并初始化为“0”和“1”交替的数据。
其中,所述数据块对应有标志位,用于存储所述预处理标志位。
其中,所述步骤S3中计算汉明距离的方式为:。
将两个长度相同数据按位异或,得到另一个长度相同的数据,这个数据中“1”的个数就是它们的汉明距离。
其中,当从PCM存储单元读取数据块时,先查看数据块对应的标志位,
若为00,直接读出;
若为01,则将数据块取反后读出;
若为10,则将数据块与所述辅助常数做异或运算后读出;
若为11,则将数据块与所述辅助常数做同或运算后读出。
(三)有益效果
本发明通过对将要写入PCM的数据做预处理,并对预处理后的数据与原始数据做汉明距离运算,将最小汉明距离的数据写入到原始数据的存储单元中,减小了对PCM存储单元的写操作次数,从延长了PCM的使用寿命。
附图说明
图1是本发明实施例的一种PCM的写操作方法流程图;
图2为PCM的存储单元中的数据块的结构示意图;
图3本发明的在经过减少写回数据量后读出数据的流程示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明提供了一种利用数据变换的思路来进行减少写回数据量的设计,该方法发生在当上层缓存中的数据发生改变需要写回相变存储器PCM的存储单元时,以下步骤主要实现在相变存储器PCM的控制器中。如图1所示,减少写回操作的方法包括:
步骤S101,将要写回PCM存储单元中的待写数据块作预处理,得到预处理后的数据块,所述预处理包括:
将该待写数据块按位取反,并设定预处理标志01;
将该待写数据块与辅助常数作异或运算,并设定预处理标志10;
将该待写数据块与辅助常数作同或运算,并设定预处理标志11;
若未预处理,则预处理标志为00。
其中,在PCM的控制器中增加一个辅助寄存器R1,保存一个与数据块等长的数据,作为辅助运算常量,该寄存器R1初始为为“0”和“1”交替的数据,如0101...0101或1010...1010。
PCM的每个数据块增加两个标志位,如图2所示,本实施例中标志位有两位,可以表示4种数据状态,分别表示:00原始数据,01取反数据,10异或数据,11同或数据,数据写回时置相应的标志位。
步骤S102,从PCM的存储单元中读取与该待写数据块对应的原始数据块。
步骤S103,计算该待写数据块或预处理后的数据块与原始数据块之间的汉明距离。汉明距离的计算方式有很多种,目的在于计算出两个数据块间的最小距离。本实施例中的计算方式为:待写数据块及预处理后的数据块分别与原始数据块按位异或,分别得到另一个长度相同的数据,这个数据中“1”的个数就是它们的汉明距离,“1”的个数越少表示汉明距离越小,即待写数据或预处理后的数据和原始数据比较,相同bit位不同值最少,这样写入时写入次数最少。
用该待写数据块直接与原始数据块计算汉明距离,记为结果1;
该待写数据块经过取反操作后与原始数据块计算汉明距离,记为结果2;
该待写数据块与寄存器R1中的辅助常数的进行异或运算后与原始数据块计算汉明距离,记为结果3;
该待写数据块与寄存器R1中的辅助常数进行同或运算后与原始数据块计算汉明距离,记为结果4。
选取与所述原始数据块汉明距离最小值对应的数据块写回原始数据块的存储单元,并将对应的预处理标志写回数据块对应标志位中。
如图3所示,当从PCM存储单元读取数据块时,先查看数据块对应的标志位:
若为00,直接读出;
若为01,则将数据块取反后读出;
若为10,则将数据块与辅助寄存器R1中的辅助常数做异或运算后读出;
若为11,则将数据块与辅助寄存器R1中的辅助常数做同或运算后读出。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (6)

1.一种PCM的写操作方法,其特征在于,包括以下步骤:
S1:将要写回PCM存储单元中的待写数据块作预处理,得到预处理后的数据块,所述预处理包括:
将所述待写数据块按位取反,并设定预处理标志01;
将所述待写数据块与辅助常数作异或运算,并设定预处理标志10;
将所述待写数据块与辅助常数作同或运算,并设定预处理标志11;
若未预处理,则预处理标志为00;
S2:从PCM的存储单元中读取与所述待写数据块对应的原始数据块;
S3:计算待写数据块或所述预处理后的数据块与所述原始数据块之间的汉明距离,并选取与所述原始数据块汉明距离最小值对应的数据块写回原始数据块的存储单元,并将所述预处理标志写回所述存储单元中。
2.如权利要求1所述的PCM的写操作方法,其特征在于,所述步骤S1中的辅助常数存储在PCM控制器中新增的辅助寄存器中。
3.如权利要求2所述的PCM的写操作方法,其特征在于,所述辅助寄存器的长度为数据块的长度,并初始化为“0”和“1”交替的数据。
4.如权利要求1所述的PCM的写操作方法,其特征在于,所述数据块对应有标志位,用于存储所述预处理标志位。
5.如权利要求1所述的PCM的写操作方法,其特征在于,所述步骤S3中计算汉明距离的方式为:。
将两个长度相同数据按位异或,得到另一个长度相同的数据,这个数据中“1”的个数就是它们的汉明距离。
6.如权利要求1~5中任一项所述的PCM的写操作方法,其特征在于,当从PCM存储单元读取数据块时,先查看数据块对应的标志位,
若为00,直接读出;
若为01,则将数据块取反后读出;
若为10,则将数据块与所述辅助常数做异或运算后读出;
若为11,则将数据块与所述辅助常数做同或运算后读出。
CN 201010584091 2010-12-07 2010-12-07 相变存储器的写操作方法 Active CN102097125B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010584091 CN102097125B (zh) 2010-12-07 2010-12-07 相变存储器的写操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010584091 CN102097125B (zh) 2010-12-07 2010-12-07 相变存储器的写操作方法

Publications (2)

Publication Number Publication Date
CN102097125A true CN102097125A (zh) 2011-06-15
CN102097125B CN102097125B (zh) 2013-03-20

Family

ID=44130181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010584091 Active CN102097125B (zh) 2010-12-07 2010-12-07 相变存储器的写操作方法

Country Status (1)

Country Link
CN (1) CN102097125B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831929A (zh) * 2012-09-04 2012-12-19 中国科学院上海微***与信息技术研究所 一种相变存储器的读写转换***及方法
CN103151072A (zh) * 2013-03-28 2013-06-12 中国科学院微电子研究所 相变存储器的数据写入方法及装置
KR20140051687A (ko) * 2012-10-23 2014-05-02 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
CN104142892A (zh) * 2013-05-09 2014-11-12 华为技术有限公司 一种数据读写方法、装置及***
WO2015032341A1 (zh) * 2013-09-05 2015-03-12 华为技术有限公司 写操作方法及装置
CN112685330A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种Nand闪存

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266296A1 (en) * 2006-05-15 2007-11-15 Conley Kevin M Nonvolatile Memory with Convolutional Coding
CN101650692A (zh) * 2009-07-02 2010-02-17 北京飞天诚信科技有限公司 一种在存储设备中修改数据的方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070266296A1 (en) * 2006-05-15 2007-11-15 Conley Kevin M Nonvolatile Memory with Convolutional Coding
CN101650692A (zh) * 2009-07-02 2010-02-17 北京飞天诚信科技有限公司 一种在存储设备中修改数据的方法和装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831929A (zh) * 2012-09-04 2012-12-19 中国科学院上海微***与信息技术研究所 一种相变存储器的读写转换***及方法
CN102831929B (zh) * 2012-09-04 2015-07-22 中国科学院上海微***与信息技术研究所 一种相变存储器的读写转换***及方法
CN103778961A (zh) * 2012-10-23 2014-05-07 三星电子株式会社 基于存储在待编程存储单元中的数据来编码编程数据
KR20140051687A (ko) * 2012-10-23 2014-05-02 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
CN103778961B (zh) * 2012-10-23 2019-06-04 三星电子株式会社 基于存储在待编程存储单元中的数据来编码编程数据
KR102049281B1 (ko) 2012-10-23 2019-11-27 삼성전자주식회사 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
CN103151072A (zh) * 2013-03-28 2013-06-12 中国科学院微电子研究所 相变存储器的数据写入方法及装置
CN103151072B (zh) * 2013-03-28 2016-05-18 中国科学院微电子研究所 相变存储器的数据写入方法及装置
CN104142892A (zh) * 2013-05-09 2014-11-12 华为技术有限公司 一种数据读写方法、装置及***
US9632708B2 (en) 2013-05-09 2017-04-25 Huawei Technologies Co., Ltd. Method, apparatus, and system for reading and writing data
CN104142892B (zh) * 2013-05-09 2017-08-11 华为技术有限公司 一种数据读写方法、装置及***
WO2015032341A1 (zh) * 2013-09-05 2015-03-12 华为技术有限公司 写操作方法及装置
CN112685330A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种Nand闪存
CN112685330B (zh) * 2019-10-17 2024-01-19 合肥格易集成电路有限公司 一种Nand闪存

Also Published As

Publication number Publication date
CN102097125B (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
CN102097125B (zh) 相变存储器的写操作方法
CN101719099B (zh) 减小固态硬盘写入放大的方法及装置
CN101339537B (zh) 一种以页为单位的nand闪存管理方法
CN101620572B (zh) 非易失性内存及控制方法
US20110010489A1 (en) Logical block management method for a flash memory and control circuit storage system using the same
CN104380262A (zh) 坏块管理机制
TWI434175B (zh) 用來進行區塊管理之方法以及記憶裝置及控制器
CN103246609B (zh) 一种闪存存储设备中冷热数据区分管理的方法及装置
CN106354658B (zh) 一种降低混合映射算法中映射表内存资源占用的方法
CN103164343B (zh) 基于相变存储器的分页、ecc校验及多位预取方法及其结构
CN102135942A (zh) 一种存储设备中实现损耗均衡的方法及存储设备
CN103999057A (zh) 具有开关的相变存储器(pcms)的元数据管理和支持
CN101499315B (zh) 快闪存储器平均磨损方法及其控制器
CN102253901B (zh) 一种基于相变内存的读写区分数据存储替换方法
CN104731515B (zh) 控制存储设备机群磨损均衡的方法及设备
CN101667157A (zh) 闪存数据传输方法、闪存储存***及控制器
CN102609358B (zh) 聚集静态数据的方法及其固态硬盘
CN102999441A (zh) 一种细粒度内存访问的方法
CN103885724A (zh) 基于相变存储器的存储***结构及其损耗均衡算法
CN102043591B (zh) Pram的写操作方法
CN101409108B (zh) 平均磨损方法及使用此方法的控制器
CN102789422B (zh) 固态硬盘的数据写入方法
CN204166522U (zh) 一种高速大容量flash单板存储电路板
CN102662849B (zh) 多通道闪存的区块管理方法
CN105205015A (zh) 一种数据存储方法及存储设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant