CN104332175B - 一种字块划分的低功耗磁存储器缓存架构设计方法 - Google Patents

一种字块划分的低功耗磁存储器缓存架构设计方法 Download PDF

Info

Publication number
CN104332175B
CN104332175B CN201410531836.4A CN201410531836A CN104332175B CN 104332175 B CN104332175 B CN 104332175B CN 201410531836 A CN201410531836 A CN 201410531836A CN 104332175 B CN104332175 B CN 104332175B
Authority
CN
China
Prior art keywords
block
data
sub
pattern
control bit
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.)
Active
Application number
CN201410531836.4A
Other languages
English (en)
Other versions
CN104332175A (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.)
Beihang University
Original Assignee
Beihang 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 Beihang University filed Critical Beihang University
Priority to CN201410531836.4A priority Critical patent/CN104332175B/zh
Publication of CN104332175A publication Critical patent/CN104332175A/zh
Application granted granted Critical
Publication of CN104332175B publication Critical patent/CN104332175B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1653Address circuits or decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

一种字块划分的低功耗磁存储器缓存架构设计方法,它有四大步骤:一、统计出在L1写回数据和L1读取的数据中出现频率最高的几个块模式,组成一个模式表并,相应配置一个索引值;二、程序运行时,模式表加载到一个特殊的L1级缓存中;当从L2级缓存读取到一个新数据时,计算新数据的模式,并在模式表中查看新数据的模式是否命中;三、当数据需要写回到L2级缓存中时,再次计算数据的模式,将该模式与块的索引位指示的模式相比较,得出控制位;四、将数据写回到L2时,用控制位控制对应子块的写操作,如果控制位为1,则设置对应子块的数据写回控制信号有效,否则对应子块的写使能为无效。

Description

一种字块划分的低功耗磁存储器缓存架构设计方法
技术领域
本发明涉及一种字块划分的低功耗磁存储器缓存架构设计方法,它是一种通过对缓存划分子块,为子块添加数据更改标志位,通过对该标志位识别将子块划分为不同的类别。通过对不同类别子块的写操作进行优化来降低缓存写能耗的磁存储器架构设计方法。属于磁存储器和低功耗设计技术领域。
技术背景
随着工艺尺寸的不断进步,片上晶体管集成度越来越高。为了在给定功耗约束下,大幅度提高处理器性能,多核处理器开始获得广泛应用。随着核数的增加,处理器对片上缓存容量和带宽需求越来越大。随工艺尺寸的减小和容量的增加,传统的基于静态随机存储器(Static Random Access Memory,以下简写为SRAM)的片上缓存技术静态功耗急剧增加。成为当今低功耗设计的一大挑战。
近年来,研究人员提出了自旋转移力矩磁随机存储器(Spin-Transfer TorqueMagnetic Random Access Memory,以下简写为STT-MRAM)。与传统的静态随机存储器(SRAM)相比,该存储器具有如下优势:
1.STT-MRAM利用磁性隧道结(Magnetic Tunnel Junction,以下简写为MTJ)存储数据,是一种非挥发性存储器件,即使断电,数据也不会丢失;
2.STT-MRAM利用磁性材料而非电荷存储数据,几乎没有漏电流,静态功耗极低;
3.STT-MRAM存储单元的面积为SRAM的1/4,因此同样的面积上可以集成更大容量的片上缓存,可以显著提高系统的性能。
因此,许多研究人员提出利用STT-MRAM替代SRAM作为片上缓存。然而STT-MRAM与SRAM相比也有一些缺点。首先,要向STT-MRAM的存储单元中写入数据,需要一个较大的电流(几十至几百微安);其次,写入时间较长(一般为十几到几十纳秒),远远高于SRAM。片上缓存与处理器核心的数据交互最为频繁,如果程序执行的过程中,需要频繁写数据到缓存,会导致基于STT-MRAM技术的片上缓存写功耗非常大,有可能抵消掉采用STT-MRAM所带来的好处。因此,如何对STT-MRAM的写功耗进行优化,是一个非常关键的问题。
发明内容
1、发明目的:本发明提供了一种字块划分的低功耗磁存储器缓存架构设计方法,它是一种利用高速缓存回写数据的特征,将需回写的数据块进行分类,去掉不同类别数据块中冗余数据的回写以降低写能耗的磁存储器架构设计方法。
2、技术方案:本发明提供的方案主要针对缓存中的L1,L2两级缓存。L1级缓存使用SRAM,L2级缓存使用STT-MRAM等写能耗较高的磁存储器作替换。针对STT-MRAM等磁存储器写能耗较高,将L1级缓存中的单个块划分为多个子块并为每个块设置索引值。通过建立数据特征模式表,每次读入数据时查找模式表并记录读入数据的特征,写回该数据时再次匹配写回数据的特征。比较两个特征得到控制信息,根据控制信息将对应子块写回。
综上所述,见图2,本发明一种字块划分的低功耗磁存储器缓存架构设计方法,该方法具体步骤如下:
步骤一:统计出在L1写回数据和L1读取的数据中出现频率最高的几个块模式,这些模式组成一个模式表。在模式表中,每个模式都配置一个索引值。
步骤二:程序运行时,模式表加载到一个特殊的L1级缓存中。当从L2级缓存读取到一个新数据时,计算新数据的模式,并在模式表中查看新数据的模式是否命中。如果命中,则把该模式的索引值记录到对应块的索引位中,如果没有命中,则设置对应块的索引位为0(索引值0在模式表中预留,专门用于表示没有命中)。参见附图1(a)。
步骤三:当数据需要写回到L2级缓存中时,再次计算数据的模式,将该模式与块的索引位指示的模式相比较,得出控制位。控制位的长度与块中子块的数量相同,即一个子块对应一位的控制位。这一位的控制位将用于控制该子块的写回与否(在下面的描述中,将控制位置1表示写回,将控制位置0表示不写回)。控制位的生成规则:如果新模式与旧模式至少有一个没有命中,则按照规则一执行,否则,按照规则二执行。
规则一:将所有的控制位置1。
规则二:以子块为单位进行比较,如果子块的新模式和老模式的模式值都是0或者都是1,则将控制位置为0,否则将控制位置为1。参见附图1(b)。
步骤四:将数据写回到L2时,用控制位控制对应子块的写操作,如果控制位为1,则设置对应子块的数据写回控制信号有效,否则对应子块的写使能为无效。根据统计,会有很多控制位为0,因此,很多子块实际上都没有进行写入,从而减少回写L2级缓存的数据量,达到降低写功耗的目的。参见附图1(b)。
具体架构和模式表结构示意图参见附图1(a)-图1(b)。
处理器访问高速缓存(Cache),产生缓存未命中(Cache Miss),则需从下一级缓存取数据来继续操作,在对数据进行读写操作结束之后,对每个数据被修改的子块(Subblock)进行标记,进行数据写回操作时,仅将被标记的子块写回下级缓存。
3、优点和功效:本发明将原本需要整体写回的块分割为若干子块,并采用将被修改的子块写回,未被修改的子块不写回的策略。减少实际写回到L2级缓存的数据量,从而降低了L2级缓存的写能耗。
附图说明
图1(a)为从L2读取数据到L1时,数据模式匹配示意图。
图1(b)为从L1写回数据到L2时,数据模式匹配及写回控制逻辑示意图。
图2为本发明的工作流程图。
具体实施方式
本发明旨在解决STT-MRAM等非易失存储器用作片上缓存所产生的写能耗过高的问题。通过分析L1、L2两级缓存写数据特征,将L1级缓存中的单个块,划分为若干子块。每个块除了存储原来块的内容之外,还额外设置索引位,索引位的用途将在后面叙述。每个子块有三种模式:0(块中的所有位都是0),1(块中的所有位都是1),2(不是0模式也不是1模式的其他模式)。模式以块为单位进行表示,例如,一个块被划分为四个子块,则该块的模式由四个子模式组成,这四个子模式分别对应一个子块,每个子模式是0、1、2中的其中之一。这样,每个块都由对应的一个唯一的组合模式。
见图2,本发明提供了一种字块划分的低功耗磁存储器缓存架构设计方法,该方法具体步骤如下:
步骤一:统计出在L1写回数据和L1读取的数据中出现频率最高的几个块模式,这些模式组成一个模式表。在模式表中,每个模式都配置一个索引值。
步骤二:程序运行时,模式表加载到一个特殊的L1级缓存中。当从L2级缓存读取到一个新数据时,计算新数据的模式,并在模式表中查看新数据的模式是否命中。如果命中,则把该模式的索引值记录到对应块的索引位中,如果没有命中,则设置对应块的索引位为0(索引值0在模式表中预留,专门用于表示没有命中)。参见附图1(a)。
步骤三:当数据需要写回到L2级缓存中时,再次计算数据的模式,将该模式与块的索引位指示的模式相比较,得出控制位。控制位的长度与块中子块的数量相同,即一个子块对应一位的控制位。这一位的控制位将用于控制该子块的写回与否(在下面的描述中,将控制位置1表示写回,将控制位置0表示不写回)。控制位的生成规则:如果新模式与旧模式至少有一个没有命中,则按照规则一执行,否则,按照规则二执行。
规则一:将所有的控制位置1。
规则二:以子块为单位进行比较,如果子块的新模式和老模式的模式值都是0或者都是1,则将控制位置为0,否则将控制位置为1。参见附图1(b)。
步骤四:将数据写回到L2时,用控制位控制对应子块的写操作,如果控制位为1,则设置对应子块的数据写回控制信号有效,否则对应子块的写使能为无效。根据统计,会有很多控制位为0,因此,很多子块实际上都没有进行写入,从而减少回写L2级缓存的数据量,达到降低写功耗的目的。参见附图1(b)。
具体架构和模式表结构示意图参见附图1。
工作流程参见附图2。处理器访问高速缓存(Cache),产生缓存未命中(CacheMiss),则需从下一级缓存取数据来继续操作,在对数据进行读写操作结束之后,对每个数据被修改的子块(Subblock)进行标记,进行数据写回操作时,仅将被标记的子块写回下级缓存。

Claims (1)

1.一种字块划分的低功耗磁存储器缓存架构设计方法,其特征在于:该方法具体步骤如下:
步骤一:统计出在L1级缓存中写回数据和L1级缓存中读取的数据中出现频率最高的几个块模式,这些模式组成一个模式表,在模式表中,每个模式都配置一个索引值;
步骤二:程序运行时,模式表加载到一个特殊的L1级缓存中;当从L2级缓存读取到一个新数据时,计算新数据的模式,并在模式表中查看新数据的模式是否命中;如果命中,则把该模式的索引值记录到对应块的索引位中,如果没有命中,则设置对应块的索引位为0,索引值0在模式表中预留,专门用于表示没有命中;
步骤三:当数据需要写回到L2级缓存中时,再次计算数据的模式,将该模式与块的索引位指示的模式相比较,得出控制位;控制位的长度与块中子块的数量相同,即一个子块对应一位的控制位,这一位的控制位将用于控制该子块的写回与否,控制位的生成规则是:如果新模式与旧模式至少有一个没有命中,则按照规则一执行,否则,按照规则二执行;
规则一:将所有的控制位置1;
规则二:以子块为单位进行比较,如果子块的新模式和老模式的模式值都是0或者都是1,则将控制位置为0,否则将控制位置为1;
步骤四:将数据写回到L2级缓存中时,用控制位控制对应子块的写操作,如果控制位为1,则设置对应子块的数据写回控制信号有效,否则对应子块的写使能为无效;根据统计,会有很多控制位为0,因此,很多子块实际上都没有进行写入,从而减少回写L2级缓存的数据量,达到降低写功耗的目的;
处理器访问高速缓存,产生缓存未命中,则需从下一级缓存取数据来继续操作,在对数据进行读写操作结束之后,对每个数据被修改的子块进行标记,进行数据写回操作时,仅将被标记的子块写回下级缓存。
CN201410531836.4A 2014-10-10 2014-10-10 一种字块划分的低功耗磁存储器缓存架构设计方法 Active CN104332175B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410531836.4A CN104332175B (zh) 2014-10-10 2014-10-10 一种字块划分的低功耗磁存储器缓存架构设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410531836.4A CN104332175B (zh) 2014-10-10 2014-10-10 一种字块划分的低功耗磁存储器缓存架构设计方法

Publications (2)

Publication Number Publication Date
CN104332175A CN104332175A (zh) 2015-02-04
CN104332175B true CN104332175B (zh) 2017-02-01

Family

ID=52406890

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410531836.4A Active CN104332175B (zh) 2014-10-10 2014-10-10 一种字块划分的低功耗磁存储器缓存架构设计方法

Country Status (1)

Country Link
CN (1) CN104332175B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1600977A2 (en) * 2004-05-21 2005-11-30 Samsung Electronics Co., Ltd. Multi-bit magnetic random acces memory device
CN101079314A (zh) * 2006-05-25 2007-11-28 财团法人工业技术研究院 磁性存储单元的结构、存取方法以及磁性存储器电路
CN103426461A (zh) * 2012-05-17 2013-12-04 三星电子株式会社 磁性随机存取存储器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI449040B (zh) * 2006-10-06 2014-08-11 Crocus Technology Sa 用於提供內容可定址的磁阻式隨機存取記憶體單元之系統及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1600977A2 (en) * 2004-05-21 2005-11-30 Samsung Electronics Co., Ltd. Multi-bit magnetic random acces memory device
CN101079314A (zh) * 2006-05-25 2007-11-28 财团法人工业技术研究院 磁性存储单元的结构、存取方法以及磁性存储器电路
CN103426461A (zh) * 2012-05-17 2013-12-04 三星电子株式会社 磁性随机存取存储器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"A compact model for magnetic tunnel junction (MTJ) switched by thermally assisted Spin transfer torque (TAS+STT)";zhao weisheng etc.;《Nanoscale Research Letters》;20111231(第6期);第368页 *
"基于程序访存模式的低功耗存储技术";章铁飞等;《软件学报》;20140228(第2期);第254-266页 *
"高速低功耗4M Bits SRAM的设计与研究";李天阳;《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》;20070115(第01期);I137-15 *

Also Published As

Publication number Publication date
CN104332175A (zh) 2015-02-04

Similar Documents

Publication Publication Date Title
KR102584018B1 (ko) 압축된 데이터 백그라운드를 캐싱하는 장치, 시스템 및 방법
CN104461393B (zh) 一种闪存存储器的混合映射方法
CN102819496B (zh) 闪存ftl的地址转换方法
CN105242871B (zh) 一种数据写入方法及装置
CN107466418A (zh) 用于多级别单元模式非易失性存储器的成本优化单级别单元模式非易失性存储器
CN105930282B (zh) 一种用于nand flash的数据缓存方法
CN103885728A (zh) 一种基于固态盘的磁盘缓存系统
CN104252425A (zh) 一种指令缓存的管理方法和处理器
CN105095116A (zh) 缓存替换的方法、缓存控制器和处理器
Hameed et al. Performance and energy-efficient design of STT-RAM last-level cache
CN100377117C (zh) 用于虚实地址变换及读写高速缓冲存储器的方法及装置
KR101374065B1 (ko) 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치
Pan et al. GFTL: Group-level mapping in flash translation layer to provide efficient address translation for NAND flash-based SSDs
CN106569960A (zh) 一种混合主存的末级缓存管理方法
Quan et al. Prediction table based management policy for STT-RAM and SRAM hybrid cache
Pan et al. Caching-aware garbage collection to improve performance and lifetime for NAND flash SSDs
KR20100069240A (ko) 캐시 컨트롤을 위한 장치 및 방법
Chen et al. Unified non-volatile memory and NAND flash memory architecture in smartphones
Kim et al. Energy-efficient exclusive last-level hybrid caches consisting of SRAM and STT-RAM
Yao et al. An advanced adaptive least recently used buffer management algorithm for SSD
CN104714898A (zh) 一种Cache的分配方法和装置
CN104332175B (zh) 一种字块划分的低功耗磁存储器缓存架构设计方法
CN104182281A (zh) 一种gpgpu寄存器缓存的实现方法
CN103488772A (zh) 一种通过外存对文件进行缓存的方法、系统及设备
CN105138294B (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