磁気抵抗メモリを用いた - 東京工業大学...mram...

33

Upload: others

Post on 22-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM
Page 2: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

平成 25 年度 学士論文内容梗概

磁気抵抗メモリを用いた

低消費電力ハイブリッド L1キャッシュ指導教員 吉瀬 謙二 准教授

情報工学科

09_18896 橋本達矢

磁気抵抗メモリ (Magnetic Random Access Memory , MRAM)は、その早い Readア

クセス、高い集積性、低い漏出電力、不揮発性から、これからのメモリ技術として有望で

ある。その早い Readアクセスは SRAM(Static Random Access Memory)にも匹敵する

ほどであり、SRAM をはるかに超える集積性と合わせて SRAM に代わる新しいキャッ

シュメモリとして、期待が高まっている。しかし、MRAMにおける書き込みは、SRAM

に比べ、低速でありかつ、高い電力が必要であるため、低次のキャッシュメモリである L2

キャッシュや L3キャッシュに用いることを強いられてきた。その結果、書き込み頻度の

高い L1キャッシュへの使用は難しいと考えられていた。

最新の研究では、L1キャッシュへMRAMを利用するための解決策として、エリアオー

バーヘッドの小さな SRAM buffer を用いることで、L1 キャッシュのメインコアである

MRAMキャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の

増加や性能低下の原因となるMRAMキャッシュコアへの書き込みの頻度を減らし、低消

費電力化を図る SRAM-MRAMハイブリッド L1キャッシュが提案されている。

本論文では、この SRAM buffer に改良を加えた、Write-Eliminate-Oriented SRAM-

MRAMハイブリッド L1キャッシュ (以下 WEOハイブリッド L1キャッシュとする)を

提案する。WEO ハイブリッド L1 キャッシュでは、SRAM buffer を適切に再配置し、

SRAM buffer内に保存されるデータを選択し、SRAM bufferからのMRAMキャッシュ

コアに書き込むべきデータの排出を遅らせることで、MRAMキャッシュコアへの書き込

み頻度を減らし、低消費電力化を可能にした。

このWEOハイブリッド L1キャッシュを、alphaアーキテクチャの CPUによる SPEC

CPU2000のトレースと自作のキャッシュシミュレーターを用いて評価した。その結果、従

来手法と比較して、IPCの低下を伴うことなく、最大で 12.1%の動的消費電力を削減でき

ることを明らかにした。

Page 3: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

i

目次

第 1章 緒論 1

1.1 はじめに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 本論文の構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

第 2章 背景 3

2.1 キャッシュメモリ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1.1 キャッシュメモリの動作:読み出し . . . . . . . . . . . . . . . . . . 3

2.1.2 キャッシュメモリの動作:書き込み . . . . . . . . . . . . . . . . . . 4

2.1.3 キャッシュメモリの構造とラインの入れ替え方式 . . . . . . . . . . 5

2.1.4 キャッシュメモリの階層構造 . . . . . . . . . . . . . . . . . . . . . 6

2.2 MRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.3 SRAM-MRAM ハイブリッド L1キャッシュ . . . . . . . . . . . . . . . . 10

2.3.1 MRAM L1キャッシュコア . . . . . . . . . . . . . . . . . . . . . . 10

2.3.2 filter buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3.3 victim buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3.4 ハイブリッド L1キャッシュの動作 . . . . . . . . . . . . . . . . . . 11

2.3.5 ハイブリッド L1キャッシュの性能比較 . . . . . . . . . . . . . . . 13

第 3章 Write-Eliminate-Oriented SRAM-MRAM ハイブリッド L1 キャッ

シュの提案 16

3.1 従来手法における問題点 . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.2 WEOハイブリッド L1キャッシュの改良方針 . . . . . . . . . . . . . . . 17

3.3 WEOハイブリッド L1キャッシュの構成 . . . . . . . . . . . . . . . . . . 17

3.4 WEOハイブリッド L1キャッシュの動作 . . . . . . . . . . . . . . . . . . 18

3.5 上位、下位 victim bufferの容量 . . . . . . . . . . . . . . . . . . . . . . . 20

Page 4: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

目次 ii

第 4章 評価 21

4.1 評価環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4.2 L1データキャッシュ全体での hit率 . . . . . . . . . . . . . . . . . . . . . 21

4.3 提案手法によるデータキャッシュへの Read,Write回数の変化 . . . . . . 22

4.4 データキャッシュの動的消費電力量 . . . . . . . . . . . . . . . . . . . . . 23

第 5章 結論 26

謝辞 27

参考文献 28

Page 5: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

1

第 1章

緒論

1.1 はじめに

今日、情報技術を発展させるうえで、携帯デバイスやノート PCのための低消費電力で

あるシステムの開発は大きな一つの課題となっている。その中でも電源が切れても値の保

存ができる不揮発性メモリはこれからのキャッシュメモリとしてとても有用であると考え

られている。不揮発性メモリである磁気抵抗メモリ (MRAM)は早い Readアクセス、高

い集積性、低い漏出電力、不揮発性を持つ新しいキャッシュメモリとして期待されている。

キャッシュメモリとして MRAM は SRAM に高い集積性、低い漏出電力で利点がある。

その反面、書き込みの消費電力と、その書き込みの時間によって書き込みの頻度の高い高

次のキャッシュ、特に L1キャッシュへの使用は高電力消費と性能低下を引き起こす結果と

なる。このことが、L1キャッシュへのMRAMの使用を難しくしている主な原因である。

その解決策の一つとして、エリアオーバーヘッドの小さい SRAM bufferを用いること

で、MRAMへの局所性の高いアクセスを取り除くことにより、消費電力の増加や性能低

下の原因となるMRAMへの書き込み頻度を減らし、低消費電力化を図る SRAM-MRAM

ハイブリッド L1キャッシュが提案されている。

本論文では、SRAM buffer に保存されるデータを選択することによって、MRAM へ

の書き込み頻度をさらに減らす。その結果、低電力消費を実現する、Write-Eliminate-

Oriented SRAM-MRAM ハイブリッド L1 キャッシュ (WEO ハイブリッド L1 キャッ

シュ)を提案し、その性能を評価する。

Page 6: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 1章 緒論 2

1.2 本論文の構成

本論文の構成を述べる。第 2章では本論文の前提となるキャッシュメモリや、磁気抵抗

メモリの基礎と L1 キャッシュへの適応を可能としている従来の SRAM-MRAM ハイブ

リッド L1 キャッシュの説明をする。第 3 章では、従来の SRAM-MRAM ハイブリッド

L1キャッシュを改良することで、さらに低消費電力であるWEOハイブリッド L1キャッ

シュを提案する。第 4章ではその性能を評価し、第 5章で結論をまとめる。

Page 7: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

3

第 2章

背景

2.1 キャッシュメモリ

今日の CPUの発達による性能向上に対し、主記憶である DRAMなどのメモリの性能

は追い付けていない。CPU からのデータや命令の読み出しや書き込みなどのアクセスと

比較して、十分な速さでデータや命令を CPUに返すことが不可能であり、CPUの性能を

著しく下げることが考えられる。

キャッシュメモリは CPUとメインメモリ (主記憶装置)の間にある高速な記憶装置であ

り、CPUのアクセス頻度の高いデータや命令をキャッシュメモリに保存している。CPU

はデータや命令を読み出す時に、より CPUに近い場所にあるキャッシュメモリから読み出

すことで、アクセスの時間を大幅に短縮し、CPUの性能を向上させることが可能である。

2.1.1 キャッシュメモリの動作:読み出し

CPUがデータや命令を読み出す場合、そのアクセスはまずキャッシュメモリをアクセス

する。

キャッシュメモリにデータがあった場合

キャッシュメモリにアクセスしたデータや命令があった場合、キャッシュメモリは

hitとなり、その値を CPUに渡す。この場合、メインメモリや下位のキャッシュメ

モリにはアクセスすることがないため、CPUによるアクセスは短時間で済むことに

なる。

キャッシュメモリにデータがなかった場合

キャッシュメモリにアクセスしたデータや命令がなかった場合、キャッシュメモリ

Page 8: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 4

CPU

A

A

A

A

hitmiss

メインメモリ メインメモリ

write

キャッシュにデータがなかった場合 キャッシュにデータがあった場合

キャッシュメモリ キャッシュメモリ

CPU

図 2.1 キャッシュの基本的な動作

は miss となり、メインメモリや下位のキャッシュメモリをアクセスする。そこで

hitした場合、キャッシュメモリにその値を保存しておく。この場合、メインメモリ

や下位のキャッシュメモリまでアクセスをすることになるので、アクセスは長時間

となる。

このように、キャッシュメモリに読み出したいデータが存在する場合はアクセス時間を

大幅に短縮することができる。キャッシュメモリ自体が増えることによるオーバーヘッド

は存在するが、キャッシュメモリはメインメモリよりも小さいために消費電力も少なくな

る。その結果、キャッシュメモリがヒットしている間は消費電力も減らすことができる。

2.1.2 キャッシュメモリの動作:書き込み

命令は静的なデータであるため、書き換えは存在せず、データにのみ書き換えが存在す

る。書き込みは読み出しと違い、CPUにデータを返す必要がない。キャッシュメモリにア

クセスしたとき、hitやmissに関わらず、データを残すためにキャッシュメモリに書き込

むことになる。このとき、キャッシュメモリからデータが取り除かれた後も正しいデータ

が存在している必要があるため、メインキャッシュや下位のキャッシュメモリにも書き込

まなければならない。このときの更新にはタイミングによって二つの方針が存在する。

Page 9: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.1 キャッシュメモリ 5

ライトスルー方式

CPUがキャッシュメモリに書き込むと同時に、メインメモリや下位のキャッシュメ

モリにも書き込む方式。単純な構成で実現できるが、データが通るためのバスの占

有が起きてスループットが下がる事や、消費電力が大きくなる事がある。

ライトバック方式

CPUがキャッシュメモリに書き込みを行ったとしても、ある条件を満たさない限り

は、メインメモリや下位のキャッシュメモリに書き込まない方式。データが書き換

わっていることを記憶するために、タグデータに dirty bitが存在する。dirty bitが

1であるとき、そのデータは書き換わっているされ、下位のメモリに書き込む必要

がある。下位のメモリに書き込む条件は dirty bit が 1 であるデータがキャッシュ

メモリから取り除かれたときが主な条件である。そのほか、下位のメモリとの一貫

性を保つ必要がある時に書き込みが起こる。ライトスルー方式に比べると、構造は

複雑になるが、バスの占有が少なく、書き込みの回数も少ないため、消費電力が少

なくて済む。

2.1.3 キャッシュメモリの構造とラインの入れ替え方式

キャッシュメモリは多数の lineから構成されていて、その line一つ一つにデータを保存

している。現在の一般的な CPUのキャッシュメモリには、1つの lineには 64Byteのデー

タを保存する。キャッシュメモリは読み出しや書き込み時の検索速度を高めるため、その

lineすべてを検索するのではなく、アクセスされたアドレスから割り出された indexによ

り、検索される lineの数を変更している。このときのアクセスする lineの数を連想度とい

い、連想度によってデータ構造に違いがある。

ダイレクトマップ方式

図 2.2 に連想度が 1 であるデータ格納構造を示す。ある index に対しては一つの

lineしか存在しないため、同一の indexを持つ別のアドレスのデータがアクセスさ

れると必ず lineの入れ替えが発生する。

セットアソシアティブ方式

図 2.3に連想度が 2以上であるデータ格納構造を示す。同一の indexを持つ別アド

レスのデータを連想度の数だけ同時に持つことができる。ただし、すべてのライン

にデータが格納された状態で、さらに同一の indexを持つデータが保存されようと

する場合には line の入れ替えが発生する。連想度が n であるキャッシュを n way

Page 10: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 6

セットアソシアティブ方式と呼ぶ。

フルアソシアティブ方式

図 2.4のように例外として、小さな容量のキャッシュメモリであれば、すべてのア

ドレスに対し、すべての lineを検索する方式が存在する。

ダイレクトマップ方式以外では、lineの入れ替えが発生するときは連想度の数のデータ

の中から入れ替える一つの line を選ぶ必要がある。このときの line の選び方にはたくさ

んの方法があるが、中でもヒット率の高い LRU方式を紹介する。

LRU 方式 (Least Recently Used) はもっとも古くにアクセスされたラインを入れ替え

る lineとして選ぶ方式である。もっとも古くにアクセスされた lineであるということは、

キャッシュメモリに保存されているデータの中で、一番アクセスされていないデータを選

んでいるということであり、その後もアクセスされる可能性の低いデータを選んでいる

ことになる。最後に hitしてからの時間が最も長い lineを LRUといい、最も時間が短い

lineをMRU(Most Recently Used)という。この方式はヒット率が高い反面、実装が難し

く、複雑になりがちである。

2.1.4 キャッシュメモリの階層構造

今日のキャッシュメモリでは、大容量のキャッシュメモリへのアクセスは遅く、CPUの

近くに置きづらい。そのため、CPU の近くには小容量の高速なキャッシュメモリを、そ

の向こう側に中容量の中速なキャッシュメモリを、その向こう側に大容量の低速なキャッ

シュメモリを、といった階層構造を取ることが多い。CPUに近い側から、L1キャッシュ、

L2キャッシュ、L3キャッシュ・・・と名前を付けている。特に L1キャッシュは CPUに

近いため、小容量なキャッシュである。少しでも容量を大きくするために、書き込みのな

い命令キャッシュと書き込みのあるデータキャッシュの二つに分けることが多い。

2.2 MRAM

MRAM(Magnetic Random Access Memory 磁気抵抗メモリ) は磁気により値を保存

するメモリである。現在一般的に使われているメモリである SRAM や DRAM との違い

は、キャパシタの代わりにMTJ(Magnetic Tunnel Junction)がついていることにある。

その典型的な構造である、1 Transistor 1 MTJ MRAM セルを図 2.5に示す。各々セル

には 1つのMTJと 1つの nMOSトランジスタから構成されていて、DRAMと比較する

とわかるとおり、DRAMキャパシタ部分がMTJに変わったような形をしている。それ以

Page 11: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.2 MRAM 7

0x00

0x04

0x08

0x0C

0x10

0x14

0x18

0x1C

0x20

0x24

メインメモリ

1

2

3

4

5

index

SET

ダイレクトマップ方式キャッシュ

図 2.2 ダイレクトマップ方式

1 2 n

0x00

0x04

0x08

0x0C

0x10

0x14

0x18

0x1C

0x20

0x24

メインメモリ

n way セットアソシアティブキャッシュ

1

2

3

4

index

SET

WAY

0

図 2.3 セットアソシアティブ方式

1 2 n

0x00

0x04

0x08

0x0C

0x10

0x14

0x18

0x1C

0x20

0x24

メインメモリ

フルアソシアティブキャッシュ

WAY

図 2.4 フルアソシアティブ方式

Page 12: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 8

絶縁膜

固定磁性層

自由磁性層

ビット線

ソース線

ワード線

ビット線

ソース線

ワード線

キャパシタ

i) MRAM セル ii) DRAM セル

図 2.5 典型的なMRAMの構造

外の部分、つまりサブアレイやHtree、ワード線やビット線などのものに関しては SRAM

とほとんど違いはない。

MRAMの記憶素子であるMTJは、2つの強磁性層と、それにはさまれている絶縁膜か

らなっている。

強磁性層のうち一つは磁化の方向が固定されている固定磁性層である。一方もう一つの

磁性層は固定されていない自由磁性層であり、この磁性の方向は外部からの影響によって

方向を変更される。

図 2.6のとおり、この自由磁性層の磁化の方向が固定磁性層の磁化方向と同じ向きであ

ればMTJの抵抗は低く、メモリの値は"0"となる。逆に自由磁性層の磁化の方向と固定磁

性層の磁化の方向が違う向きであれば、MTJの抵抗は高くなり、メモリの値は"1"となる

今日の MRAM の自由磁性層は、MTJ に、一定の方向にスピン方向を定めた電子の

みを通すことにより、その磁化方向を変えている。この方式は STT-RAM(Spin Torque

Page 13: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.2 MRAM 9

絶縁膜

固定磁性層

自由磁性層

絶縁膜

固定磁性層

自由磁性層

“0” を保存する状態 “1” を保存する状態

図 2.6 MRAMの値の保持

Transfer RAM)と呼ばれていて、従来の、地場を発生させて自由磁性層の磁化方向を変化

させる方式より集積化の面で優れている。この集積効率は現行のキャッシュメモリに用い

られている SRAMよりも良く、4倍の集積効率がある。

次に、MRAMの各命令による動作を説明する。

Read命令

Read命令が起こった場合、nMOSが ONになり、ビット線とワード線の間に小さ

い電圧差ができる。これによりMTJを通る小さな電流が発生し、この電流の大きさ

を計測することによりデータが"0"か"1"かを判断している。このMTJを通る電流は

とても小さく、時間も短くみ、32KBの L1キャッシュに適用には、時間 0.56ns,消

費電力は 0.040nJとなっていて、SRAMの Readの時間 0.059ns、消費電力 0.041nJ

と比べてもほとんど差はないことがわかる。(表 2.1)

Write命令

Write 命令が起こった場合、ビット線とワード線の間に大きな電圧差が作られる。

これが正の場合"0"が書き込まれ、逆に負の場合は"1"が書き込まれる。(図 2.7) この

書き換えが正しく行われることを保障するために、MTJ には書き込み電流の大き

さと電流を流す時間に閾値があり、その大きさ以上の電流かつ、それより長い時間

電流を流し続けなければならない。そのため、Write 命令には、10.58ns の時間と

1.109nJの電力が必要であり、SRAMのWrite命令にかかる時間 0.059ns、消費電

力 0.041nJに比べるととても大きいことがわかる。(表 2.1)

このMRAMのWrite命令における欠点が、高頻度な書き換えが行われると考えられる高

次のキャッシュ (特に L1キャッシュ)では大きなレイテンシの低下や、消費電力の増加を

引き起こす。これがMRAMを L1キャッシュに採用した場合に大きな問題となっている。

Page 14: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 10

表 2.1 MRAM,SRAMの基本情報

メモリ size 連想度 block size アクセス時間 (ns) 動的消費電力 (nJ) 漏出電力 (mW) 面積 (mm2)

read write Read Write

L1 I/D SRAM cache 32KB 8 64Byte 0.59 0.59 0.041 0.41 85 0.468

L1 I/D SRAM cache 32KB 8 64Byte 0.56 10.58 0.040 1.109 1.9 0.192

書き込み電流

書き込み電流

“0” の書き込み “1” の書き込み

絶縁膜

固定磁性層

自由磁性層

絶縁膜

固定磁性層

自由磁性層

図 2.7 MTJへの書き込み

2.3 SRAM-MRAM ハイブリッド L1キャッシュ

MRAM を L1 キャッシュに採用する際の、性能低下や消費電力の増加の解決策として

MRAMに少量の SRAMを追加した、SRAMとMRAMのハイブリッド L1キャッシュ

が提案されている。[1]

2.3.1 MRAM L1キャッシュコア

MRAMキャッシュコアはメモリセルが違うことを除けば、サブアレイや Htree、ワー

ド線、ビット線、その他のものは SRAMコアと同じ構造をしている。そのため、SRAM

と同様の働きをすることができる。MRAMキャッシュの主な欠点は高いレイテンシと書

き込みの消費電力の大きさにある。結果としてキャッシュの書き込みや、キャッシュミス

によるデータのアップデートはバスを長い時間占有することになり、L1キャッシュへの他

Page 15: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.3 SRAM-MRAM ハイブリッド L1キャッシュ 11

のアクセスをブロックしてしまう。さらに、MRAMへの頻繁なアップデートは消費電力

を多大に引き上げる。それゆえ L1キャッシュへ直接採用は、性能低下や消費電力の増大

を招く結果となる。

2.3.2 filter buffer

その欠点を補うために、小さなダイレクトマップ方式の SRAM buffer である filter

bufferを追加している。filter bufferは最後に使われた lineが置かれる。局所性の高いア

クセスが filter bufferに来た場合、filter bufferはほとんどのデータを CPUに返すことが

できる。L1キャッシュにアクセスが起きるのは、filter bufferにミスが起きたときだけで

ある。その結果、MRAMへの書き込み回数は減り、性能低下と消費電力の増大を抑える

ことができる。

2.3.3 victim buffer

victim bufferは小さなフルアソシアティブ方式の SRAM bufferである。書き込みの無

い命令キャッシュでは、キャッシュアクセスが止まるのはキャッシュミスが起きた、ブロッ

クの入れ替えのときに限る。それに対し、書き込みのあるデータキャッシュでは、データ

の書き換えによる書き込みにでもキャッシュアクセスが止まってしまう。そのため filter

buffer のみではパフォーマンスの低下が抑えきれない。そこでデータキャッシュのみに、

filter buffer と MRAM との間に victim buffer を配置している。書き換わっているデー

タが filter bufferからMRAMへ送られたとしても、victim bufferで hitすれば、MRAM

コアへの書き込みを減らすことができる。

2.3.4 ハイブリッド L1キャッシュの動作

図 2.8にハイブリッド L1キャッシュの全体の構成を示す。ハイブリッド L1キャッシュ

は命令キャッシュ側に filter buffer、データキャッシュ側に filter bufferと victim buffer

を持っている。CPUからのアクセスはまず SRAM bufferを通ってから、MRAMへとア

クセスされる。命令キャッシュ側は filter buffer のみであるため、filter buffer をまずア

クセスし、missであれば、MRAMメインキャッシュをアクセスするという簡単な動作を

する。

図 2.9にデータキャッシュの動作のフローチャートを示す。データキャッシュへのアク

セスが行われると、まず filter buffer にアクセスされる。filter buffer で miss が起きれ

Page 16: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 12

図 2.8 ハイブリッド L1キャッシュ構成図

ば、victim bufferにアクセスする。filter bufferのアクセスにより取り除かれたデータは

victim bufferに入る。victim bufferでも missであれば、そこで初めてMRAMメイン

キャッシュコアをアクセスするという仕組みになっている。

図 2.9の (1)のアップデート

(1)のアップデートでは、filter bufferに CPUからアクセスされたデータが保存さ

れるために、元々保存されていたデータは、victim buffer に排出される。排出さ

れたデータは、victim bufferの hitした lineと交換され、保存される。このとき、

MRAMへのアクセスは行われない。つまり、filter bufferまたは victim bufferが

hitしている限りは、MRAMへのアクセスはすべてカットされる。このためにハイ

ブリッド L1キャッシュではMRAMへのアクセスを減らし、書き込みを減らすこ

Page 17: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.3 SRAM-MRAM ハイブリッド L1キャッシュ 13

データキャッシュへの

アクセス

filter buffer

アクセス

victim buffer

アクセスMRAM キャッシュコア

アクセス

アクセス終了

filter buffer

hit?

victim buffer

hit?

MRAM キャッシュコア

hit?

hit

miss miss

hit hit

(1) filter,victim buffer

アップデート

(2) filter,victim buffer

アップデート

低次キャッシュ

アクセス

miss

図 2.9 ハイブリッド L1キャッシュの動作フローチャート

とで消費電力を抑えることに成功している。

図 2.9の (2)のアップデート

(2) のアップデートでは、filter buffer から排出されたデータは victim buffer の

LRUに保存される。victim bufferの LRUに保存されていたデータはMRAMへ

と保存される。このとき、MRAMではこのデータによる書き込みと、CPUのアク

セスによるデータの書き込みの二つが起こる可能性がある。

2.3.5 ハイブリッド L1キャッシュの性能比較

このハイブリッド L1キャッシュでは、次のような性能が出ている。

この研究では表 2.2 の条件により、SPEC CPU2000 を用いてベンチマークを取った結

果、図 2.10のようになっている。このハイブリッドキャッシュでは、平均で 76.1%の消

費電力を減らすことに成功し、性能低下は 2%に抑えられる。

Page 18: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 2章 背景 14

表 2.2 従来手法の SRAM-MRAMhybrid cacheの評価環境

パラメータ 値

プロセッサ

周波数 2.6Ghz

演算器 整数演算器 4つ

整数乗算器/除算器 1つ

不動点小数演算器 4つ

不動点小数乗算器/除算器 1つ

ロード、ストアキューサイズ 8命令

レジスタアップデートユニットサイズ 16命令

フェッチ/デコード/発行/コミット 幅 4/4/4/4 命令/サイクル

フェッチキューサイズ 4命令

分岐理論機構

予測方式 バイモーダル 2KBテーブル、two-level 1KBテーブル 8bit履歴

BTB 512エントリ、4way

ミス予測ペナルティ 3cycle

キャッシュ、メモリヒエラルキー

L1命令キャッシュ 32KB,8way,64Byte block,2cycle latency

L1データキャッシュ 32KB,8way,64Byte block,2cycle latency

L2キャッシュ 2MB,16way,64Byte block,10cycle latency

メインメモリ 500cycle latency

Page 19: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

2.3 SRAM-MRAM ハイブリッド L1キャッシュ 15

0

0.1

0.2

0.3

0.4

0.5

0.6

ammp

applu

apsi

art

bzip2

cra y

eon

equake

facerec

fma3d

galgel

gap

gcc

gzip

lucas

mcf

mesa

mgrid

parser

perlbmk

sixtrack

swim

twolf

vortex

vpr

wupwise

average

図 2.10 ハイブリッド L1キャッシュの消費電力量

Page 20: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

16

第 3章

Write-Eliminate-OrientedSRAM-MRAM ハイブリッド L1キャッシュの提案

MRAM による L1 キャッシュの低消費電力を達成する上での一番の問題は、MRAM

への書き込みの消費電力の高さである。SRAM への書き込みと比べると約 27 倍もの消

費電力を必要とする上、読み出しと比べても約 28 倍もの消費電力を要する。そのため、

MRAMへの書き込みを減らすことが、低消費電力 L1キャッシュの大きな課題となる。

3.1 従来手法における問題点

従来手法のハイブリッド L1キャッシュでは、victim bufferから値が書き換わったデー

タ (dirty data と呼ぶ) が排出されると、必ず MRAM への書き込みが発生する。その一

方、書き換わっていないデータ (clean data と呼ぶ) が排出されるのであれば、MRAM

への書き込みをする必要はない。そのため、dirty data(MRAMへと書き込む必要のある

データ) の排出を減らすことができれば、MRAM への書き込み回数を減らすことができ

るといえる。Write-Eliminate-Oriented SRAM-MRAMハイブリッド L1キャッシュ (以

下WEOハイブリッド L1キャッシュとする)では、原理上 dirty dataの存在しない命令

キャッシュについては改良を加えず、データキャッシュに関してのみを考える。

Page 21: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

3.2 WEOハイブリッド L1キャッシュの改良方針 17

3.2 WEOハイブリッド L1キャッシュの改良方針

方針は次のようになる。

1. メインの L1キャッシュコアはMRAMである。

2. SRAM の小さな 3 つのバッファを追加する。これは filter buffer, 上位 victim

buffer,下位 victim bufferの 3つである。

3. 書き換え方式はライトバック方式である。

4. 上位 victim bufferにはすべてのデータが保存される。

5. 下位 victim buffer には、特定の場合を除き、dirty data のみを保存する。下位

victim buffer には dirty data のみを保存することで、clean data によって dirty

data が victim buffer から排出されるのを防ぎ、MRAM への書き込みを減らす。

もしMRAMに clean dataが下位 victim bufferに保存されたとしても、すぐに排

出されるようにする。

3.3 WEOハイブリッド L1キャッシュの構成

次にWEOハイブリッド L1キャッシュの構成を図 3.1に示す。

filter buffer

filter bufferは 2KBの SRAMであり、ダイレクトマッピング方式である。これは

従来手法と同様である。

victim buffer

victim bufferは、SRAMである従来手法とは違い、上位と下位に分かれている。た

だし、合計した容量は従来手法と同じ 512KBである。上位、下位ともフルアソシア

ティブのキャッシュであり、各々 LRUの置き換え方式を用いている。上位 victim

bufferは容量が小さくなっただけの従来手法と同じ victim bufferであるが、下位

victim bufferには dirty dataのみを保存する。filter bufferと victim bufferは小

さな容量の SRAMであるため、これにより発生するエリアオーバーヘッドや、消費

電力は少なくて済む。

L1 メインキャッシュコア

L1メインキャッシュコアには 32KBのMRAMを用いている。8wayのセットアソ

Page 22: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 3章 Write-Eliminate-Oriented SRAM-MRAMハイブリッド L1キャッシュの提案18

図 3.1 WEOハイブリッド L1キャッシュ構成図

シアティブ方式である。

3.4 WEOハイブリッド L1キャッシュの動作

図 3.2にデータキャッシュの動作のフローチャートを示す。CPUからデータキャッシュ

へのアクセスが発生するとまず filter bufferにアクセスされる。そこでミスが起きれば上

位 victim bufferに、さらにそこでミスが起きれば下位 victim bufferをアクセスする。そ

こでもミスが起きればMRAMのメインコアにアクセスされる。次にアップデートに着目

する。

Page 23: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

3.4 WEOハイブリッド L1キャッシュの動作 19

データキャッシュへの

アクセス

filter buffer

アクセス

上位 victim buffer

アクセス

アクセス終了

filter buffer

hit?

上位 victim buffer

hit?

hit

miss

hit

(1) filter,victim buffer

アップデート

MRAM キャッシュコア

アクセス

MRAM キャッシュコア

hit?

MRAM キャッシュコア

hit?

miss

hit

(3) filter,victim buffer

アップデート

低次キャッシュ

アクセス

miss

下位 victim buffer

アクセス

下位 victim buffer

hit?

miss

hit

(2) filter,victim buffer

アップデート

図 3.2 WEOハイブリッド L1キャッシュのフローチャート

図 3.2の (1)のアップデート

(1)のアップデートでは filter bufferから排出されたデータと、hitした lineを入れ

替える。

図 3.2の (2)のアップデート

(2)のアップデートでは上位 victim bufferの LRUを下位 victim bufferに排出す

る。排出されたデータを下位 victim bufferの hitした lineに保存するが、保存さ

れたデータが dirty dataであればMRUに、clean dataであれば LRUにする。こ

うすることにより、下位 victim bufferには clean dataが存在する時間を極力短く

して、なるべく多くの dirty dataを保持できるようにしている。filter bufferには

アクセスされたデータが入り、元々あったデータは上位 victim bufferに排出され、

空いている lineに保存される。

図 3.2の (3)のアップデート

(3) のアップデートでは上位 victim buffer の LRU を下位 victim buffer に排出

する。このとき排出されたデータが clean であれば、下位 victim buffer は更新せ

ず、排出されたデータをそのまま捨てることとする。よって clean data は victim

bufferに保存されないので、dirty dataがより長時間 victim bufferに残ることが

でき、MRAMを書き換える回数を抑えることができる。dirty dataが上位 victim

bufferから下位 victim bufferに排出された場合は、下位 victim bufferの LRUに

排出されたデータを置き、LRUにあったデータはMRAMへと排出される。filter

Page 24: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 3章 Write-Eliminate-Oriented SRAM-MRAMハイブリッド L1キャッシュの提案20

bufferではアクセスされたデータが入り、元あったデータを上位 victim bufferに

排出、上位 victim bufferの空いた lineに置かれる。

上記のように基本的な方針としては従来手法と同じであるが、下位 victim buffer には

dirty dataのみが保存されるようになることで、dirty dataにアクセスが hitする可能性

を上げ、dirty dataがなるべく victim bufferから排出されないようにアップデートを行っ

ている。dirty dataのヒット率を上げるだけであれば、上位 victim bufferはなるべく小

さく、下位 victim bufferの容量を増やしたほうがいい (上位 victim bufferの容量が 0に

なっても良い)と考えられるが、ここには問題が一つ存在する。

3.5 上位、下位 victim bufferの容量

下位 victim bufferは大きければ大きいほど victim buffer全体での dirty dataへの hit

率は上がると考えられる。ただし、下位 victim bufferにはほとんどの clean dataの保存

が行われない。そのため、上位 victim bufferの容量が少なくなる (または容量がまったく

の 0になる)ことにより、clean dataに対する hit率が著しく減少することが考えられる。

MRAMキャッシュコアにおける 1回のwriteにおける消費電力が 1.109nJであり、Read

が 0.040nJであることを考えると、

1.109/0.040 = 27.725

より、MRAMキャッシュコアへのwrite命令を 1回減らす間に、read命令の回数が平

均 27.725回以上増えてしまうと、消費電力が増えてしまうことになる。

そのため、本論文では、上位、下位 victim bufferの容量は全体で 8つの lineが存在す

ることから、下位 victim bufferが 1lineの時から 8lineの時まですべての場合を評価する

こととする。

Page 25: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

21

第 4章

評価

本章では、従来の SRAM-MRAM ハイブリッド L1 キャッシュとWEO ハイブリッド

L1キャッシュのデータキャッシュをそれぞれ評価する。

4.1 評価環境

評価環境には Stream-Based Trace Compression[2] にある alpha アーキテクチャの

CPUにより作成された reference inputの SPEC CPU2000のトレースの中の、50billion

命令後の 2billion命令を用いる。それを自作のシミュレーターに入力することで評価をす

る。評価ではMRAM キャッシュコアでの ReadとWrite の回数、L1 データキャッシュ

全体の hit率、データキャッシュの動的消費電力量を対象とする。

評価する L1キャッシュの情報を示す。従来手法と提案手法では、bufferの数が異なっ

ているが、合計した場合の容量の大きさは同じである。1lineの大きさは 64Byte、L1メイ

ンキャッシュは 32KBである。L1キャッシュでは、hitした場合であればどこにあたった

としても 2cycleでの読み出しとする。

4.2 L1データキャッシュ全体での hit率

L1データキャッシュによるキャッシュ全体でのmiss率のグラフを示す。提案手法と従

来手法とのmiss率の差は 0.85%以内に収まっているため、ほぼ変化はないといえる。

従来手法および提案手法の L1キャッシュではどちらもキャッシュのmissによるペナル

ティサイクルは L1キャッシュ自体の miss率に依存しているため、これによる IPCの増

加はない。つまり実行時間が増加することはないため、漏出電力消費量は従来手法と提案

Page 26: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 4章 評価 22

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

gzip

wupwise

swim

mgrid

applu

gcc

mesa

galgel

art

mcf

equake

cra y

ammp

lucas

fma3d

parser

sixtrack

eon

gap

vortex

twolf

apsi

1line

2line

3line

4line

5line

6line

7line

8line

図 4.1 L1キャッシュ全体でのmiss率

手法では変化がない。

4.3 提案手法によるデータキャッシュへの Read,Write回数の変化

従来手法と提案手法による L1MRAMデータキャッシュへの Read命令の比率は次のよ

うになった。従来手法を 1とし、下位 victim bufferの line数を 1から 8 まで変化させた

ときの Read回数の比率を求めた。それを図 4.2に示す。

ほとんどのアプリケーションにおいて、下位の victim bufferの容量が増えれば増える

ほど、Readの回数は増えている。これは、cleanなデータが victim bufferに保存されな

くなったことにより、2 つの victim buffer 全体においての Read 命令における hit 率が

下がったからであると考えられる。特に、Read 命令の空間的局所性の低いものに関して

は、キャッシュの Readの回数が増えている。例として、アプリケーションの一つである

lucasにおいては上位 victim bufferがないときは従来手法に比べ約 2.7倍もの Read命令

がメインキャッシュで行われることになる。

次に、従来手法と提案手法による L1MRAMデータキャッシュへのWrite命令の比率を

Page 27: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

4.4 データキャッシュの動的消費電力量 23

0

0.5

1

1.5

2

2.5

3

gzi

p

wu

pw

ise

swim

mg

rid

ap

plu

gcc

me

sa

ga

lge

l

art

mcf

eq

ua

ke

cra

y

am

mp

luca

s

fma

3d

pa

rse

r

sixt

rack

eo

n

ga

p

vo

rte

x

two

lf

ap

si

ave

rag

e

1 line

2line

3line

4line

5line

6line

7line

8line

図 4.2 MRAML1キャッシュコアの Read回数比率

求めた。従来手法を 1としたときの、下位 victim bufferの line数を 1から 8まで変化さ

せたときのWrite回数の比率を求めた。それを図 4.3に示す。

すべてのアプリケーションで下位 victim bufferの数が増えれば増えるほどMRAML1

キャッシュコアへの Write 命令が減っている。このように、提案手法によって、確かに

MRAML1キャッシュコアへの書き込みが減少していることがわかる。

4.4 データキャッシュの動的消費電力量

図 4.4 にデータキャッシュによる動的消費電力量のグラフを示す。提案手法の下位

victim bufferの line数を 1から 8lineまで変化させて動的消費電力がどう変化するかを

計測した。

wupwiseやmesaなどのデータに見られるとおり、大体のアプリケーションでは、下位

victim bufferのみであるものを除けば、dirty dataだけを保存する下位 victim bufferの

容量が大きいほうが消費電力が下がるという結果になっている。これは下位 victim buffer

Page 28: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

第 4章 評価 24

0

0.2

0.4

0.6

0.8

1

1.2

gzi

p

wu

pw

ise

swim

mg

rid

ap

plu

gcc

me

sa

ga

lge

l

art

mcf

eq

ua

ke

cra

y

am

mp

luca

s

fma

3d

pa

rse

r

sixt

rack

eo

n

ga

p

vo

rte

x

two

lf

ap

si

ave

rag

e

1 line

2line

3line

4line

5line

6line

7line

8line

図 4.3 MRAML1キャッシュコアのWrite回数比率

0

0.2

0.4

0.6

0.8

1

1.2

gzip

wupwise

swim

mgrid

applu

gcc

mesa

galgel

art

mcf

equake

cra y

ammp

lucas

fma3d

parser

sixtrack

eon

gap

vortex

twolf

apsi

average

1line

2line

3line

4line

5line

6line

7line

8line

図 4.4 ハイブリッド L1データキャッシュの消費電力

Page 29: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

4.4 データキャッシュの動的消費電力量 25

による MRAM への書き込みの抑制が上手く働いた結果だと考えられる。ただし、上位

victim buffer が少なくなると、clean data が victim buffer にほとんど入らないことに

なってしまい、filter bufferおよび victim bufferへの Read命令の hit率が著しく落ちる

ことになる。この結果消費電力が上がる場合も存在する。

一方、galgel、lucasのような下位 victim bufferが Read命令が多く、かつ空間的局所

性の低いアプリケーションの場合、上位 victim buffer が減ると、filter bufferと victim

bufferでの hit率が落ち、MRAMメインコアへの Read命令が著しく増加する。その結

果、消費電力が大きくなってしまう状態が発生する。これらのアプリケーションでは、上

位 victim bufferの容量が大きければ大きいほど消費電力が小さくなっている。

全アプリケーションの平均では、下位 victim bufferの line数が 8の時もっとも多くの

動的消費電力量を減らすことができ、従来手法に比べ、約 12.1%の動的電力消費を削減で

きることが分かった。

Page 30: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

26

第 5章

結論

MRAMは次世代のメモリ技術にとって欠かせない存在となっているが、その欠点である

書き込みの遅さと、そこで発生する消費電力の高さが、高次キャッシュへの直接的な使用を

難しくしている。そのため、MRAMキャッシュをそのまま使わず、小さな SRAMキャッ

シュ (fliter buffer と victim buffer) を buffer として追加して用いる SRAM-MRAM ハ

イブリッド L1キャッシュによって消費電力を下げることができる。

この論文では、SRAM-MRAM ハイブリッド L1 キャッシュにおいて、victim buffer

を二つに分割すると同時に、SRAM buffer に保存されるデータを選択することにより、

SRAM buffer での書き込み命令への hit 率を上げ、MRAM への Write を減らし、デー

タキャッシュでの動的消費電力を削減するWrite-Eliminate-Oriented SRAM-MRAM ハ

イブリッド L1キャッシュを提案した。Stream-Based Trace Compressionのキャッシュ

トレースを用いて、自作のシミュレーターによりその性能を評価した結果、従来手法

の SRAM-MRAM ハイブリッド L1 キャッシュに比べ、下位 victim buffer の大きさが

512KB、つまりすべての victim bufferが下位 victim bufferとして働いている時に、漏出

電力消費を増やすことなく動的消費電力が平均約 12.1%減ることを明らかにした。この提

案手法は、MRAMを用いた L1キャッシュにおいて、さらなる低消費電力化が望め、未来

のMRAMキャッシュの発展に役立つものであると考える。

Page 31: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

27

謝辞

研究を進めるに当たり、適切にご指導を賜りました指導教員の吉瀬謙二准教授に深く感

謝いたします。また、多くの助言をして頂きました吉瀬研究室の皆様、特に、精密な論文

の校正をして頂きました上野貴廣先輩には大変お世話になりました。その他、支えていた

だいた友人や両親に深く感謝いたします。

Page 32: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

28

参考文献

[1] Hongbin Sun; Chuanyin Liu; Wei Xu; Jizhong Zhao; Nanning Zheng; Tong

Zhang, “Using Magnetic RAM to Build Low-Power and Soft Error-Resilient L1

Cache,” IEEE Trans. Inf. Theory, vol.20, pp.19-28,2010

[2] Aleksander Milenkovic and Milena Milenkovic, “Exploiting Streams in Instruc-

tion and Data Address Trace Compression,” IEEE Annual Workshop on Work-

load Characterization, 6th, p.99-107,2003

[3] Guangyu Sun; Xiangyu Dong; Yuan Sie; Jian Li; Yiran Chen, “A Novel Archi-

tecture of the 3D Stacked MRAM L2 Cache for CMPs,” HPCA 2009, p.239-249,

2009

[4] jianhua Li; Xue, C.J.; Yinlong Xu, “STT-RAM based energy-efficiency hybrid

cache for CMPs,” VLSI-SoC 2011, p.31-36,2011

[5] Ping Zhou; Bo Zhao; Jun Yang; Youtao Zhang, “Energy reduction for STT-RAM

using early write termination,” ICCAD 2009, p.264-268,2009

[6] Xiaoxia Wu; Jian L1; Lixin Zhang; Evan Speight; Ram Rajamony; Yuan Xie,

“Hybrid cache architechture with disparate memory technologies,” ISCA ’09,

p.34-45,2009

[7] Xiangyu Dong; Xiaoxia Wu; Guangyu Sun; Yuan Xie, “Circuit and microarchi-

tecture evaluation of 3D stacking magnetic RAM(MRAM) as a universal mem-

ory replacement,” DAC 2008, p.554-559,2008

[8] J.C. Slonczewski, “Current-driven excitation of magnetic multilayers,” Journal

of Magnetism and Magnetic Materials Volume 159, p.L1-L7,1996

[9] Jacob; Bruce and Ng; Spencer and Wang; David, “Memory Systems: Cache,

DRAM, Disk,” Morgan Kaufmann Publishers Inc.,2007

[10] J. L. Hennessy and D. A. Patterson, “Computer Architecture a Quantitative

Page 33: 磁気抵抗メモリを用いた - 東京工業大学...MRAM キャッシュコアへの局所性の高いアクセスを取り除く。これにより、消費電力の 増加や性能低下の原因となるMRAM

29

Approach, 5th ed.,” 2011