Probabilistic CMOS Technology* Probabilistic System …€¦ · MB-JASS 2009: Design Methods for...

28
MB-JASS 2009: Design Methods for Micro- and Nanoelectronic ICs and Systems Probabilistic CMOS Technology* Probabilistic System-on-a-Chip Architectures** Sebastian Schiessl Technische Universität München [email protected] * Akgul et al., Probabilistic CMOS Technology: A Survey and Future Directions, ** Chaprakani et al., Probabilistic System-on-a-Chip Architectures

Transcript of Probabilistic CMOS Technology* Probabilistic System …€¦ · MB-JASS 2009: Design Methods for...

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

Probabilistic CMOS Technology*Probabilistic System-on-a-Chip Architectures**

Sebastian Schiessl

Technische Universität München

[email protected]

* Akgul et al., Probabilistic CMOS Technology: A Survey and Future Directions,** Chaprakani et al., Probabilistic System-on-a-Chip Architectures

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

Probabilistic CMOS TechnologyProbabilistic System-on-a-Chip Design

• Motivation• Foundational Model• Technology of Probabilistic CMOS• Application Scenarios

(i) Applications that harness probabilistic behaviour(ii) Applications that can tolerate probabilistic behaviour(iii) Applications which can not tolerate probabilistic behaviour

• Conclusion

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

Motivation• Scaling into the nanometer regime poses several problems

– Noise– Parameter Variations– Device Perturbations

• Overcoming those hurdles leads to increased power consumption

• Devices already operate close to the thermal limit• Rigorous testing methodology is required

➔ A shift in design paradigm towards probabilistic design seems to be inevitable

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

4

Harnessing probabilistic behaviour

Noise can also be used to perform useful computations. Applications include:

– Bayesian Inference (BN)– Probabilistic Cellular Automata (PCA)– Random Neural Networks (RNN)– Hyper Encryption (HE)– The celebrated test for primality

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

5

Foundational Model: Probabilistic Switch

(a) Deterministic Switches (b) Probabilistic Switches[Akgul et al., p.2]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

6

Technological Considerations

Lower Error Probability means significantly higher Energy Comsumption, as E ~ V

dd2

[Akgul et al., p.2]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

7

Technological ConsiderationsProbability of Correctness: p=1−1

2erfc

V dd

22

erfc x = 2∫x

e−t2

dt

Using upper bound for erfc(x): p1−0.28e−1.275

V dd2

82

E p ,C ,C2 41.275

ln 0.281−p

E=12

C V dd2Switching Energy E:

with

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

8

Technological Considerations

[Akgul et al.]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

9

Applications that harness probabilistic behaviour

Noise can also be used to perform useful computations. Applications include:

– Bayesian inference (BN)– Probabilistic Cellular Automata (PCA)– Random Neural Networks (RNN)– Hyper Encryption (HE)– The celebrated test for primality [Rabin 1976; Solovay

and Strassen 1977]

Key probabilistic steps (“toin cosses”) of those algorithms are identified and built with PCMOS technology

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

10

[Chakrapani et al.]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

11

Applications that harness probabilistic behaviour

• Energy savings not only on the device level (due to reduced operating voltage) but mainly on the application level– Useful for those applications that are using probabilistic

algorithms– Reason: no more need for intensive calculation of

pseudorandom numbers• Motivation: Reduction of energy consumption and

execution time.• Quality of the probabilistic output (randomness; statistical

independence) must also be taken into account

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

12

Probabilistic System-on-a-Chip Architectures

[Chakrapani et al., p.6]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

13

Competitors: NON-probabilistic architectures

[Chakrapani et al., p.6]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

14

Comparison between different implementations

• Energy Performance Product: EPP = Energy Consumption ˣ Execution Time

• Energy performance product gain: Ratio of the EPP of the baseline (β) to the EPP of the particular implementation (I)

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

15

Application Level EPP gains ΓI for different

applications

•Bayesian inference (BN)•Probabilistic Cellular Automata (PCA)•Random Neural Networks (RNN)•Hyper Encryption (HE)

[Chakrapani et al., p10]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

16

Factors influencing EPP gains

1. “Amount of opportunity”, number of probabilistic steps in the application that use the PCMOS-based coprocessor.

(application dependent)

2. Amount of gain afforded “per unit of opportunity”(dependent on architecture and technology)

Probabilistic Flux F=Number of probabilistic stepsTotal number of operations

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

17

Analyzing EPP gains

Amount of gain per core probabilistic Step [Chakrapani et al., p.13]:

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

18

Analyzing EPP gains

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

19

(for a Bayesian Network) [Chakrapani et al., p.14]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

20

Energy and Performance characteristics per core probabilistic step

• PCMOS energy-efficiency (0.4 pJ for a logical NOT)• PCMOS specialization (avoiding Dilation)• Replication factor R

– Operating frequencies of PCMOS devices are at 1MHz– If a probabilistic algorithm needs a higher rate of

random bits, the PCMOS building block has to be replicated

– Optimization on application level is possible– Building blocks can't be turned off, take this into

account when considering the EPP• Communication Costs

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

21

Energy and Performance characteristics per core probabilistic step

• Spread Factor S: number of distinct probability parameters needed for an application.– Problem: Every distinct probability needs a distinct

operating voltage:

– Optimization on application level: reducing the number of necessary distinct probability parameters (p=0.75, p=0.80, p=0.85)

– Optimization on architecture level: choosing a nonspecialized implementation if the spread factor is too high (p=0.75, p=0.80, p=0.60)

p1−0.28e−1.275

V dd2

82

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

22

Example for nonspecialized implementation

[Chakrapani et al., p.25]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

23

Example for a probabilistic step:Probabilistic Cellular Automata

Next state (0 or 1) of a cell is probabilistic and depends on its current state and the state of the nearest two neighbors. (2³=8 distinct probabilities)[Chakrapani et al., p.21]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

24

Statistic Quality (Randomness)• 1010101010101010101010101010101010• 1110101010101010101010101010101010• Low quality bits affect applications (weaker encryption

etc.)• Theoretical approaches to examine the statistic quality are

not practical• But the quality of random bits generated with PCMOS

devices has been tested with the randomness test from NIST suite with very favorable results

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

25

Applications that tolerate probabilistic behavior

Those applications allow a Trade-off between Energy and Performance <=> Quality of the Solution

Example: Applications in Digital Signal Processing, because they already have to do a natural trade-off between Energy and Quality in the form of Signal-to-Noise-Ratio (SNR)

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

26

Applications that tolerate probabilistic behavior

PCMOS in H.264 decoding [Akgul et al.]

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

27

Applications that do NOT tolerate probabilistic behavior

• Most Approaches are based on redundancy with reliable arbitrators

• Also: Speculative execution on faster (but less reliable) logic elements and verification by slower (and more reliable) logic elements

45 / 5 = 9 (on unreliable logic)5 * 9 = 45 (correct)

MB-JASS 2009: Design Methods for Micro-and Nanoelectronic ICs and Systems

28

Conclusion

• Modelling of probabilistic devices with regards to probabilistic behavior and energy consumption

• Probabilistic behavior can be harnessed for some applications with massive reduction of energy consumption and execution time