Low power design of digital systems: presentation

download Low power design of digital systems: presentation

of 48

description

These are slides for a presentation about low power design of digital systems as it was used during a course at University.

Transcript of Low power design of digital systems: presentation

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy-Efficient CacheUsing Error-Correcting Codes

    Alejandro Baranda

    October 21th 2014

    Alejandro Baranda Energy-Efficient Cache 1/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Outline

    1 Introduction

    2 Variable-strength ECC

    3 Results

    Alejandro Baranda Energy-Efficient Cache 2/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Source

    Alejandro Baranda Energy-Efficient Cache 3/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Voltage scaling

    Most effective mechanism

    Processors not reliable below Vccmin

    Memory failures Vccmin processorDifferent line failures

    Alejandro Baranda Energy-Efficient Cache 4/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Voltage scaling

    Most effective mechanism

    Processors not reliable below Vccmin

    Memory failures Vccmin processorDifferent line failures

    Alejandro Baranda Energy-Efficient Cache 4/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Voltage scaling

    Most effective mechanism

    Processors not reliable below Vccmin

    Memory failures Vccmin processorDifferent line failures

    Alejandro Baranda Energy-Efficient Cache 4/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Voltage scaling

    Most effective mechanism

    Processors not reliable below Vccmin

    Memory failures Vccmin processorDifferent line failures

    Alejandro Baranda Energy-Efficient Cache 4/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Voltage scaling

    Figure: Different line failures

    Alejandro Baranda Energy-Efficient Cache 4/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Possible solutions

    Reduce cache capacity

    Error correcting codes

    Increase latency and bandwidthUp to 50% of cache areaHigh cost

    Alejandro Baranda Energy-Efficient Cache 5/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Possible solutions

    Reduce cache capacity

    Error correcting codes

    Increase latency and bandwidthUp to 50% of cache areaHigh cost

    Alejandro Baranda Energy-Efficient Cache 5/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Outline

    1 Introduction

    2 Variable-strength ECC

    3 Results

    Alejandro Baranda Energy-Efficient Cache 6/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Solution (I)

    Variable-strength ECC

    Determine multi-bit failure lines0/1 failure fast ECCMore failures more complex ECCCache protection in low voltage mode

    Alejandro Baranda Energy-Efficient Cache 7/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy efficiency

    Solution (II)

    High performance solution

    Power EnergyAvoid reductions in cache capacityLittle area overheadAvoids Latency Bandwidth

    Alejandro Baranda Energy-Efficient Cache 8/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Related Work: dealing with bit errors

    Row/column level redundancy

    Manufacturing-time testing

    Upsizing transistors (100% area overhead)

    Variable-strength protection in CommunicationTheory

    Alejandro Baranda Energy-Efficient Cache 9/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Related Work: dealing with bit errors

    Row/column level redundancy

    Manufacturing-time testing

    Upsizing transistors (100% area overhead)

    Variable-strength protection in CommunicationTheory

    Alejandro Baranda Energy-Efficient Cache 9/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Related Work: dealing with bit errors

    Row/column level redundancy

    Manufacturing-time testing

    Upsizing transistors (100% area overhead)

    Variable-strength protection in CommunicationTheory

    Alejandro Baranda Energy-Efficient Cache 9/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Related Work: dealing with bit errors

    Row/column level redundancy

    Manufacturing-time testing

    Upsizing transistors (100% area overhead)

    Variable-strength protection in CommunicationTheory

    Alejandro Baranda Energy-Efficient Cache 9/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Built upon an observation

    96% of lines none or one failure Vcc = 500mVSECDED ECC to all lines

    Strong protection VS-ECC

    Alejandro Baranda Energy-Efficient Cache 10/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Built upon an observation

    Figure: Probability of e failures in a 64B cache line

    Alejandro Baranda Energy-Efficient Cache 10/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Built upon an observation

    96% of lines none or one failure Vcc = 500mVSECDED ECC to all lines

    Strong protection VS-ECC

    Alejandro Baranda Energy-Efficient Cache 10/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Built upon an observation

    96% of lines none or one failure Vcc = 500mVSECDED ECC to all lines

    Strong protection VS-ECC

    Alejandro Baranda Energy-Efficient Cache 10/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Background

    Built upon an observation

    Figure: Probability of e failures in a 64B cache line

    Alejandro Baranda Energy-Efficient Cache 10/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache organization

    3 possible designs presented

    Alejandro Baranda Energy-Efficient Cache 11/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache organization

    Figure: Cache organization

    Alejandro Baranda Energy-Efficient Cache 11/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Low voltage mode characterization phaseBefore: reset E-bits, reduce processor voltage

    Associate eECC fields with first 4 ways

    Deactivate remaining ways

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Low voltage mode characterization phaseBefore: reset E-bits, reduce processor voltage

    Associate eECC fields with first 4 ways

    Deactivate remaining ways

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Figure: Cache organization

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Low voltage mode characterization phaseBefore: reset E-bits, reduce processor voltage

    Associate eECC fields with first 4 ways

    Deactivate remaining ways

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Figure: Cache organization

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Low voltage mode characterization phaseBefore: reset E-bits, reduce processor voltage

    Associate eECC fields with first 4 ways

    Deactivate remaining ways

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (I)

    Figure: Active and inactive areas

    Alejandro Baranda Energy-Efficient Cache 12/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Figure: Cache organization

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Figure: Cache organization

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Traditional memory test on inactive portion

    Lines written and read known patternMulti-bit failure set E-bitSingle-bit write location

    Continue testing

    5 errors in a line Higher voltage RestartTest correct move live data test of previouslyactive region

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache characterization (II)

    Figure: More complex design

    Alejandro Baranda Energy-Efficient Cache 13/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Variable Strength ECC

    Cache operation

    Figure: Regular cache operation

    Alejandro Baranda Energy-Efficient Cache 14/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Outline

    1 Introduction

    2 Variable-strength ECC

    3 Results

    Alejandro Baranda Energy-Efficient Cache 15/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Results

    Results

    Reliability: 0.999

    Performance loss: less than 0.1%

    Energy efficiency

    Alejandro Baranda Energy-Efficient Cache 16/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Results

    Results

    Reliability: 0.999

    Performance loss: less than 0.1%

    Energy efficiency

    Alejandro Baranda Energy-Efficient Cache 16/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Results

    Results

    Reliability: 0.999

    Performance loss: less than 0.1%

    Energy efficiency

    Alejandro Baranda Energy-Efficient Cache 16/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Results

    Results

    Figure: Comparison

    Alejandro Baranda Energy-Efficient Cache 16/17

  • Energy-EfficientCache

    AlejandroBaranda

    Introduction

    Variable-strengthECC

    Results

    Energy-Efficient CacheUsing Error-Correcting Codes

    Alejandro Baranda

    October 21th 2014

    Alejandro Baranda Energy-Efficient Cache 17/17

    IntroductionVariable-strength ECCResults