• Ingen resultater fundet

Delay Insensitive Codes to

N/A
N/A
Info
Hent
Protected

Academic year: 2022

Del "Delay Insensitive Codes to"

Copied!
30
0
0

Indlæser.... (se fuldtekst nu)

Hele teksten

(1)

Adding Temporal Redundancy to Delay Insensitive Codes to

Mitigate Single Event Effects

Julian Pontes (FACIN-PUCRS)

Pascal Vivet (CEA-LETI)

Ney Calazans (FACIN-PUCRS)

FACIN-PUCRS(Brazil) & LETI-CEA (France)

(2)

Motivation

• Advanced Tech Nodes Constraints

– Signal Integrity and Process Variation

• Solved at design time

– Soft Errors

• Not treated in standard flow

• Soft Errors in Asynchronous

– Timing Deviations

• Almost immune except for forks

– A bit flip in control may stall handshake

(3)

Our Objective

“Take advantage of m-of-n DI Codes to add temporal redundancy, allowing to detect

and (eventually) correct soft errors”

(4)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(5)

Related Work

Asynchronous Design Hardening Techniques

• Asynchronous x Synchronous (Asyncs are more robust!)

– Bastos et al. (Microeletronics Reliability-2010)

– Rahbaran and Steininger (IEEE Trans. on Dep. & Sec. Comp.-2009)

• Standard-cell level (Resizing to improve roibustness)

– Bastos et al. (IOLTS-2010)

• Logic-level redundancy

– Jang and Martin (ASYNC-2005) (Double-check, spatial redundancy) – Monet, Renaudin and Leveugle (IOLTS-05 ) (High area overhead or

improved filtering capability)

• Pipeline level (Various design techniques against glitches)

– Bainbridge and Salisbury (ASYNC-2009) (no error correction, though)

• New Delay Insensitive Codes (Hard to DI, due to validity det)

– Agyekum and Nowick (DATE-2011)

(6)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(7)

SEE Physical Impact

) (

)

( t I 0 e t / e t /

I  

• Collection Time Constant of the Junction

• Time Constant for Initially Establishing the Ion Track

* - IBM experiments in soft fails in computer electronics(1978-1994) – 1996

*

(8)

SEE in QDI Pipelines

• QDI logic is almost

immune to delay variations

– Except for isochronic forks

• Bit flip may cause

– Stall in handshake protocol – Erroneous or invalid data

• Final effect depends on

– Victim cell 

• Mostly C-elements

– The 4-phase protocol step affected

• To understand  deeper look into C-element

behavior

C C

C

C

C C

C

C

C C

C

C DI0

DI1

DI2

DI3

Ack In

DO0

DO1

DO2

DO3

Ack Out

Input Data Output Data

(9)

SEE in C-elements

Charge to cause SEE (normalized to state 111) States 

Charge 

000 010 011 100 101 111

0.720 0.088 0.120 0.097 0.100 1.000

• C-element driving a capacitance of 8.1fF

• Single Event Transients

– States 000 and 111 are driving nodes

• Single Event Upsets

– Floating Nodes (the rest) – much less charge required

C

000

100

010

110 111

101

011

001

SET SET

SEU SEU

(10)

SEE in QDI Pipelines

• Detection based on C- element trees are almost immune to soft errors

– The last C-element in the tree is dangerous

• Protocol SEE and timing analysis consider

– data link errors only

C C

C

C

C C

C

C

C C

C

C DI0

DI1

DI2

DI3

Ack In

DO0

DO1

DO2

DO3

Ack Out

Input Data Output Data

C

C

C

A0 A1 B0 B1 C0 C1 D0D1

Valid Individual

Detection

Detection Tree

(11)

1-of-n Pipeline

C C

C

C

C C

C

C

C C

C

C DI0

DI1

DI2

DI3

Ack In

DO0

DO1

DO2

DO3

Ack Out

Data link always in an excited state

•1-bit distance between data and spacer

VCD = Valid Corrupted Data ICD = Invalid Corrupted Data ES = Early Spacer

US = Unexpected Spacer UD = Unexpected Data

Spacer Data

VCD

SEU↑

Spacer Delay Ack

Delay Ack Data Delay

Delay

SEU↑

SET↓

SET↑

SEU↓

ICD or ES

UD VCD

Timing

Input Data

Ack In

Output Data Possible

SEE

Spacer

ICD Or US

Data Delay

SET↑ SEU↑

(12)

m-of-n QDI Pipeline (m>1)

• Encoding has SEE filtering properties

• Detection is more complex  2-of-3 example besides

• Higher code density (for 1<m<(n-1))

C C C

A0 A1

A2 Individual

Detection

valid

Spacer ID ID* Data

ID

SEU↑

Spacer Skew Best Case

Spacer Delay Worst Case Data Delay

Ack Delay Data Skew

Best Case Data Delay

Worst Case Spacer Delay

Ack Delay

SEU↑

SET↓

SEU↑

SET↓ SET↑

SEU↓

SET↑

SEU↓ SET↑

VCD

ICD or ID

ICD or ID ES ID Timing

Input Data

Ack

Output Data Possible

SEE

(13)

SEE QDI Timing Analysis

• Effect depends on the window where SEE happens

• Adding timing constraints may eliminate possibility of Valid Corrupted Data (VCD), verifiable by STA

• Stall probability depends on sender-receiver

performance relationship

(14)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(15)

TRDIC: Temporal Redundancy in DI Codes

• Principle

– Convert1-of-n code into 2-of-(n+1) code

• A more robust code

– Encode current data with previous data

• It is as if we sent every datum twice

– Double check & correction at the receiver side

• Advantages

– Increase SEE robustness by adding redundancy – Preserve performance by keeping token throughput – Good for intrachip communication architectures

TRDIC Encoder

TRDIC Decoder

QDI Data Link 1-of-n

1-of-n

2-of-(n+1)

2-of-(n+1) Data

Sender

Data Receiver

(16)

TRDIC: Encoding Method

0001

0001 0010 0100 1000

00011

00110

01010

10001 00101

01001

01100

10010 10100 11000 0010

0001 0010 0100 1000

0100 0001

0010 0100 1000

1000 0001

0010 0100 1000

2-of-5 TRDIC Encoding

Data[i]

Data[i] Data[i-1]

Data[i-1]

• Conversion done simply by ORing of consecutive codewords

• MSB of TRDIC indicates if consecutive codewords are equal (1) or not (0)

(17)

TRDIC Converters

TRDIC Encoder

TRDIC Decoder

QDI Data Link 1-of-n

1-of-n

2-of-(n+1)

2-of-(n+1) Data

Sender

Data Receiver

(18)

TRDIC Double-Check Decoder

• Can solve just Invalid Corrupted Data (ICD) errors (2-stage trellis)

– More common situation in 2-of-n codes

• A more complex trellis-based decoder increases error detection and correction capabilities

C

C

C

C

C

Data Expected

Data

Decoded

D0

D1

D2

D3

D4

• Assume 0001 followed by 0010

• Encoder outputs 10001 (assumed) and next 00011

• Decoder obtains 0001. Next data must contain 00010. If not, error detected or corrected!

(19)

TRDIC 3-stage Trellis Decoding

0001 1 00101 00110 01001 01010 01100 10001 10010 10100 11000

00011 00101 001 10 01001 01010 01100 10001 10010 10100 11000

00011 00101 00110 01001 01010 01 100 10001 10010 10100 11000

0

2

3

1

00110 01100

00011

0 1

3

2

1

(20)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(21)

SEE Validation Flow

[Pontes, Vivet , Calazans, DATE’12]

An accurate SEE digital flow

• Based on SEE Std. Cell characterization

– For all cells, including C-elements

• Pipeline Timing Annotation include SEE glitches & delays

• Pipeline Attack using fault simulator

• Using std-tools & formats (Verilog

netlist, SDF back-annotation, liberty .lib

(22)

SEE Validation Environment

• Design Flow

– Implementation using pseudo-synchronous

technique (dummy rst clk) [Thonnart, Beigné, Vivet ASYNC’12]

– SEE Characterization &

Simulation Environment – Attack on pipeline

components

Fault Generator SEE BUS[n:0]

TestCase Data

Checker SEE Characterization

Environment

C C

C C

• Study of various QDI pipelines

– 1-of-4 – 2-of-5

– 2-of-5 TRDIC (without encoder/decoder)

• Technology

– STMicroelectronics, LP CMOS, 32nm

(23)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(24)

SEE Fault Simulation Results (1/2)

• Failure x SEE Injection Rate

– SEE Injection Charge = 175fC

0 500 1000 1500 2000 2500 3000 3500

100 200 400 500 700 800 1000

Single Event Effect Interval (ns)

Failures in Time (x1000 Failures/second)

1-of-4 2-of-5

TRDIC 2-of-5

(25)

SEE Fault Simulation Results (2/2)

• Failure x SEE Injection Charge

– SEE Rate = 5*10

6

SEEs/second

0 100 200 300 400 500 600 700

30 50 70 100 130 160 175 190 210 500 800 1000 1500 Injected Charge (fC)

Failure in Time(x1000 Failures/second) 1-of-4

2-of-5

TRDIC 2-of-5

(26)

Results (16 stages, 32-bit WCHB pipeline)

Asynchronous Cells Combinational Cells Total

1-of-4 1264/1919.7 482/1007.7 1746/2927.4

2-of-5 4080/6120.3 1280/2142.0 5226/8338.0

Leakage (μW) Dynamic (μW) Total (μW)

1-of-4 134.7 2578.8 2713.5

2-of-5 317.4 5335.4 5652.8

Code Maximum Throughput (Gbits/sec) Latency (ns)

1-of-4 40.80 1.2125

2-of-5 32.52 1.3685

Area

Power

Performance

(27)

Completion Detection complexity

C C C C C C C C C C

OR

A0 A1 A2 A3 A4

2

A0 A1 A2 A3 A4

Completion detection for 2-of-5

What if we used complex

gates? (like an NCL gate)

(28)

Outline

• Related Work

• SEE in QDI Pipelines Analysis

• TRDIC Proposal

• SEE Validation - Flow and Environment

• Results

• Conclusions and Ongoing Work

(29)

Conclusions and Ongoing Work

• TRDIC: Temporal Redundancy for DI Code

– SEE filtering is provided by 2-of-n encoding

– Temporal Redundancy allows multi-bit correction

– Well adapted for QDI pipeline & communication architecture – Fully evaluated with a SEE fault simulator

• Ongoing Work

– Complete the design of TRDIC Encoder/Decoder

– Evaluation of different TRDIC pipeline implementations – Integration of TRDIC in Asynchronous Network-on-Chips

• Hermes-A and Hermes-AA (PUCRS) [PATMOS’10], [SOCC’10]

• ANoC (CEA-LETI) [ASYNC’05]

– Impact in Area and Power

• Design of specific cells for 2-of-5 completion detection

(30)

Thanks to:

• CNPq (Brazilian Research Funding Agency)

Referencer

RELATEREDE DOKUMENTER

Passenger delays are evaluated by comparing the door-to-door travel times of intended routes (according to the planned timetable) to realised travel times that are modelled on

Connection Code - Generators Connection Code - Demand Connection Procedures Operational Code Operational Procedures Market Code - Ancillary Services Grid Planning Code TSO

From 2005, quota regulation through the EU emissions trading scheme (EU ETS) has been the key instrument to ensuring that the Danish energy sector can contribute to the

From 2005, quota regulation through the EU emissions trading scheme (EU ETS) has been the key instrument to ensuring that the Danish energy sector can contribute to the

Connection Code - Generators Connection Code - Demand Connection Procedures Operational Code Operational Procedures Market Code - Ancillary Services Grid Planning Code TSO

Københavns cykelstrategi 2011-2025, Københavns Kommune, 2011 - Genopretning af Harrestrup Å, Københavns Kommune, 2006 - Grønne tage det livgiv- ende, klimatilpassede

madsp@dtu.dk Trafikdage p˚a Aalborg Universitet 2018 5/40... Motivation Relevance

―Common Market Zone: increased market area and one entry/exit tariff Joint Balancing Zone: Increased market area and fewer barriers of trade Gaspoint Nordic: Joined PEGAS –