CN102097125A - Pcm的写操作方法 - Google Patents
Pcm的写操作方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000002035 prolonged effect Effects 0.000 abstract description 2
- 238000007781 pre-processing Methods 0.000 abstract 2
- 230000007704 transition Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种PCM的写操作方法,包括:S1:将要写回PCM存储单元中的待写数据块作预处理,得到预处理后的数据块;S2:从PCM的存储单元中读取与所述待写数据块对应的原始数据块;S3:计算待写数据块或所述预处理后的数据块与所述原始数据块之间的汉明距离,并选取与所述原始数据块汉明距离最小值对应的数据块写回原始数据块的存储单元,并将所述预处理标志写回所述存储单元中。本发明的方法减小了对PCM存储单元的写操作次数,从延长了PCM的使用寿命。
Description
技术领域
本发明涉及计算机存储技术领域,特别涉及一种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,则将数据块与所述辅助常数做同或运算后读出。
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)
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)
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 | 北京飞天诚信科技有限公司 | 一种在存储设备中修改数据的方法和装置 |
-
2010
- 2010-12-07 CN CN 201010584091 patent/CN102097125B/zh active Active
Patent Citations (2)
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)
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 |