Publications

Detailed Information

Design Techniques for Energy-Efficient Cache using STT-RAM : STT-RAM을 이용한 에너지 효율적인 캐시 설계 기술

DC Field Value Language
dc.contributor.advisor최기영-
dc.contributor.author김남형-
dc.date.accessioned2019-05-07T05:25:53Z-
dc.date.available2019-05-07T05:25:53Z-
dc.date.issued2019-02-
dc.identifier.other000000154248-
dc.identifier.urihttps://hdl.handle.net/10371/151912-
dc.description학위논문 (박사)-- 서울대학교 대학원 : 공과대학 전기·컴퓨터공학부, 2019. 2. 최기영.-
dc.description.abstract지난 수십 년간 '메모리 벽' 문제를 해결하기 위해 온 칩 캐시의 크기는 꾸준히 증가해왔다. 하지만 지금까지 캐시에 주로 사용되어 온 메모리 기술인 SRAM은 낮은 집적도와 높은 대기 전력 소모로 인해 큰 캐시를 구성하는 데에는 적합하지 않다. 이러한 SRAM의 단점을 보완하기 위해 더 높은 집적도와 낮은 대기 전력을 소모하는 새로운 메모리 기술인 STT-RAM으로 SRAM을 대체하는 것이 제안되었다. 하지만 STT-RAM은 데이터를 쓸 때 많은 에너지와 시간을 소비하기 때문에 단순히 SRAM을 STT-RAM으로 대체하는 것은 오히려 캐시 에너지 소비를 증가시킨다. 이러한 문제를 해결하기 위해 본 논문에서는 STT-RAM을 이용한 에너지 효율적인 캐시 설계 기술들을 제안한다.



첫 번째, 배타적 캐시 계층 구조에서 STT-RAM을 활용하는 방법을 제안하였다. 배타적 캐시 계층 구조는 계층 간에 중복된 데이터가 없기 때문에 포함적 캐시 계층 구조와 비교하여 더 큰 유효 용량을 갖지만, 배타적 캐시 계층 구조에서는 상위 레벨 캐시에서 내보내진 모든 데이터를 하위 레벨 캐시에 써야 하므로 더 많은 양의 데이터를 쓰게 된다. 이러한 배타적 캐시 계층 구조의 특성은 쓰기 특성이 단점인 STT-RAM을 함께 활용하는 것을 어렵게 한다. 이를 해결하기 위해 본 논문에서는 재사용 거리 예측을 기반으로 하는 SRAM/STT-RAM 하이브리드 캐시 구조를 설계하였다.



두 번째, 비휘발성 STT-RAM을 이용해 캐시를 설계할 때 고려해야 할 점들에 대해 분석하였다. STT-RAM의 비효율적인 쓰기 동작을 줄이기 위해 다양한 해결법들이 제안되었다. 그중 한 가지는 STT-RAM 소자가 데이터를 유지하는 시간을 줄여 (휘발성 STT-RAM) 쓰기 특성을 향상하는 방법이다. STT-RAM에 저장된 데이터를 잃는 것은 확률적으로 발생하기 때문에 저장된 데이터를 안정적으로 유지하기 위해서는 오류 정정 부호(ECC)를 이용해 주기적으로 오류를 정정해주어야 한다. 본 논문에서는 STT-RAM 모델을 이용하여 휘발성 STT-RAM 설계 요소들에 대해 분석하였고 실험을 통해 해당 설계 요소들이 캐시 에너지와 성능에 주는 영향을 보여주었다.



마지막으로, 매니코어 시스템에서의 분산 하이브리드 캐시 구조를 설계하였다. 단순히 기존의 하이브리드 캐시와 분산캐시를 결합하면 하이브리드 캐시의 효율성에 큰 영향을 주는 SRAM 활용도가 낮아진다. 따라서 기존의 하이브리드 캐시 구조에서의 에너지 감소를 기대할 수 없다. 본 논문에서는 분산 하이브리드 캐시 구조에서 SRAM 활용도를 높일 수 있는 두 가지 최적화 기술인 뱅크-내부 최적화와 뱅크간 최적화 기술을 제안하였다. 뱅크-내부 최적화는 highly-associative 캐시를 활용하여 뱅크 내부에서 쓰기 동작이 많은 데이터를 분산시키는 것이고 뱅크간 최적화는 서로 다른 캐시 뱅크에 쓰기 동작이 많은 데이터를 고르게 분산시키는 최적화 방법이다.
-
dc.description.abstractOver the last decade, the capacity of on-chip cache is continuously increased to mitigate the memory wall problem. However, SRAM, which is a dominant memory technology for caches, is not suitable for such a large cache because of its low density and large static power. One way to mitigate these downsides of the SRAM cache is replacing SRAM with a more efficient memory technology. Spin-Transfer Torque RAM (STT-RAM), one of the emerging memory technology, is a promising candidate for the alternative of SRAM. As a substitute of SRAM, STT-RAM can compensate drawbacks of SRAM with its non-volatility and small cell size. However, STT-RAM has poor write characteristics such as high write energy and long write latency and thus simply replacing SRAM to STT-RAM increases cache energy. To overcome those poor write characteristics of STT-RAM, this dissertation explores three different design techniques for energy-efficient cache using STT-RAM.



The first part of the dissertation focuses on combining STT-RAM with exclusive cache hierarchy. Exclusive caches are known to provide higher effective cache capacity than inclusive caches by removing duplicated copies of cache blocks across hierarchies. However, in exclusive cache hierarchies, every block evicted from the upper-level cache is written back to the last-level cache regardless of its dirtiness thereby incurring extra write overhead. This makes it challenging to use STT-RAM for exclusive last-level caches due to its high write energy and long write latency. To mitigate this problem, we design an SRAM/STT-RAM hybrid cache architecture based on reuse distance prediction.



The second part of the dissertation explores trade-offs in the design of volatile STT-RAM cache. Due to the inefficient write operation of STT-RAM, various solutions have been proposed to tackle this inefficiency. One of the proposed solutions is redesigning STT-RAM cell for better write characteristics at the cost of shortened retention time (i.e., volatile STT-RAM). Since the retention failure of STT-RAM has a stochastic property, an extra overhead of periodic scrubbing with error correcting code (ECC) is required to tolerate the failure. With an analysis based on analytic STT-RAM model, we have conducted extensive experiments on various volatile STT-RAM cache design parameters including scrubbing period, ECC strength, and target failure rate. The experimental results show the impact of the parameter variations on last-level cache energy and performance and provide a guideline for designing a volatile STT-RAM with ECC and scrubbing.



The last part of the dissertation proposes Benzene, an energy-efficient distributed SRAM/STT-RAM hybrid cache architecture for manycore systems running multiple applications. It is based on the observation that a naive application of hybrid cache techniques to distributed caches in a manycore architecture suffers from limited energy reduction due to uneven utilization of scarce SRAM. We propose two-level optimization techniques: intra-bank and inter-bank. Intra-bank optimization leverages highly-associative cache design, achieving more uniform distribution of writes within a bank. Inter-bank optimization evenly balances the amount of write-intensive data across the banks.
-
dc.description.tableofcontentsAbstract i

Contents iii

List of Figures vii

List of Tables xi

Chapter 1 Introduction 1

1.1 Exclusive Last-Level Hybrid Cache 2

1.2 Designing Volatile STT-RAM Cache 4

1.3 Distributed Hybrid Cache 5

Chapter 2 Background 9

2.1 STT-RAM 9

2.1.1 Thermal Stability 10

2.1.2 Read and Write Operation of STT-RAM 11

2.1.3 Failures of STT-RAM 11

2.1.4 Volatile STT-RAM 13

2.1.5 Related Work 14

2.2 Exclusive Last-Level Hybrid Cache 18

2.2.1 Cache Hierarchies 18

2.2.2 Related Work 19

2.3 Distributed Hybrid Cache 21

2.3.1 Prediction Hybrid Cache 21

2.3.2 Distributed Cache Partitioning 22

2.3.3 Related Work 23

Chapter 3 Exclusive Last-Level Hybrid Cache 27

3.1 Motivation 27

3.1.1 Exclusive Cache Hierarchy 27

3.1.2 Reuse Distance 29

3.2 Architecture 30

3.2.1 Reuse Distance Predictor 30

3.2.2 Hybrid Cache Architecture 32

3.3 Evaluation 34

3.3.1 Methodology 34

3.3.2 LLC Energy Consumption 35

3.3.3 Main Memory Energy Consumption 38

3.3.4 Performance 39

3.3.5 Area Overhead 39

3.4 Summary 39

Chapter 4 Designing Volatile STT-RAM Cache 41

4.1 Analysis 41

4.1.1 Retention Failure of a Volatile STT-RAM Cell 41

4.1.2 Memory Array Design 43

4.2 Evaluation 45

4.2.1 Methodology 45

4.2.2 Last-Level Cache Energy 46

4.2.3 Performance 51

4.3 Summary 52

Chapter 5 Distributed Hybrid Cache 55

5.1 Motivation 55

5.2 Architecture 58

5.2.1 Intra-Bank Optimization 59

5.2.2 Inter-Bank Optimization 63

5.2.3 Other Optimizations 67

5.3 Evaluation Methodology 69

5.4 Evaluation Results 73

5.4.1 Energy Consumption and Performance 73

5.4.2 Analysis of Intra-bank Optimization 76

5.4.3 Analysis of Inter-bank Optimization 78

5.4.4 Impact of Inter-Bank Optimization on Network Energy 79

5.4.5 Sensitivity Analysis 80

5.4.6 Implementation Overhead 81

5.5 Summary 82

Chapter 6 Conculsion 85

Bibliography 88

초록 101
-
dc.language.isoeng-
dc.publisher서울대학교 대학원-
dc.subject.ddc621.3-
dc.titleDesign Techniques for Energy-Efficient Cache using STT-RAM-
dc.title.alternativeSTT-RAM을 이용한 에너지 효율적인 캐시 설계 기술-
dc.typeThesis-
dc.typeDissertation-
dc.contributor.AlternativeAuthorNamhyung Kim-
dc.description.degreeDoctor-
dc.contributor.affiliation공과대학 전기·컴퓨터공학부-
dc.date.awarded2019-02-
dc.identifier.uciI804:11032-000000154248-
dc.identifier.holdings000000000026▲000000000039▲000000154248▲-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share