Presentation is loading. Please wait.

Presentation is loading. Please wait.

Xin Li, Weikang Qian, Marc Riedel, Kia Bazargan & David Lilja A Reconfigurable Stochastic Architecture for Highly Reliable Computing Electrical & Computer.

Similar presentations


Presentation on theme: "Xin Li, Weikang Qian, Marc Riedel, Kia Bazargan & David Lilja A Reconfigurable Stochastic Architecture for Highly Reliable Computing Electrical & Computer."— Presentation transcript:

1 Xin Li, Weikang Qian, Marc Riedel, Kia Bazargan & David Lilja A Reconfigurable Stochastic Architecture for Highly Reliable Computing Electrical & Computer Engineering University of Minnesota GLSVLSI, Boston – May 12, 2009

2 Opportunities & Challenges Topological constraints. Inherent structural randomness. High defect rates. Novel materials, devices, technologies: Challenges for logic synthesis: High density of bits/logic/interconnects.

3 Opportunities & Challenges Strategy: Cast synthesis in terms of arithmetic operations on real values. Synthesize circuits that compute logical values with probability corresponding to the real-valued inputs and outputs.

4 Probabilistic Signals Claude E. Shannon 1916 –2001 “A Mathematical Theory of Communication” Bell System Technical Journal, 1948. deterministic random deterministic

5 Probabilistic Analysis Circuit Reliability –Probabilistic fault models. –Random test pattern generation. Statistical Timing Power (circuit level). Statistical Performance Measures (architectural level).

6 Probabilistic Analysis “There are known knowns; and there are unknown unknowns; but today I’ll speak of the known unknowns.” – Donald Rumsfeld, 2004 Independent Known Unknown Probabilistic Inputs Probabilistic Outputs Digital Circuit

7 Probabilistic Analysis “There are known knowns; and there are unknown unknowns; but today I’ll speak of the known unknowns.” – Donald Rumsfeld, 2004 Probabilistic Inputs Probabilistic Outputs Digital Circuit Synthesis of Probabilistic Circuits Unknown (for us to design) SpecifiedIndependent Known Unknown

8 Synthesis of Probabilistic Logic Shannon and von Neumann: –“Probabilistic Logic,” –“Reliable Circuits Using Less Reliable Relays”. K. Nepal, R. Bahar, J. Mundy, W. Patterson, and A. Zaslavsky, “Designing Logic Circuits for Probabilistic Computation in the Presence of Noise.” L. Chakrapani, P. Korkmaz, B. Akgul, and K. Palem, “Probabilistic System-on-a-chip Architecture.”

9 Stochastic Logic Probability values are the input and output signals. combinational circuit 0.7 0.616 0.468

10 combinational circuit t Stochastic Logic Probability values are the input and output signals. 2 4.06.0tt  3.08.08.0 2  tt Functions of a probability value t.

11 X Y X Y Z Z (independently) tZX  )1Pr()1 3.0)1  Y t t t t 0.3 2 4.06.0tt  3.08.08.0 2  tt Stochastic Logic

12 Stochastic Bit Streams A real value x in [ 0, 1 ] is encoded as a stream of bits X. For each bit, the probability that it is one is: P( X=1 ) = x. x = 2/5 0,1,0,1,0 X

13 Probabilistic Bundles 0 1 0 0 1 X A real value x in [ 0, 1 ] is encoded as a stream of bits X. For each bit, the probability that it is one is: P( X=1 ) = x. x = 2/5

14 Stochastic Logic 5/8 3/8 4/8 3/8 4/8 8/8 Probability values are the input and output signals. combinational circuit

15 Stochastic Logic Probability values are the input and output signals. 1,1,0,1,0,1,1,0… 1,0,0,0,1,1,0,0,… 0,1,1,0,1,0,1,0,… 0,1,1,0,1,0,0,0,… 1,0,1,0,1,0,1,0,… 1,1,1,1,1,1,1,1,… serial bit streams combinational circuit

16 Stochastic Logic Probability values are the input and output signals. parallel bit streams 4/8 3/8 4/8 8/8 5/8 3/8

17 combinational circuit Randomness Analog interface with fractional weighting of 1’s. parallel bit streams A/D

18 combinational circuit Randomness Analog interface with fractional weighting of 1’s. parallel bit streams LFSR Accumulator LFSR

19 Nanowire Crossbar (idealized) Randomized connections, yet nearly one-to-one.

20 Fault Tolerance Conventional approach: binary radix encoding. 0.111 (7/8) 0.010 (2/8) 0.001 (1/8)

21 Fault Tolerance Bit flips can result in large error. Conventional approach: binary radix encoding. 0.111 (7/8) 0.110 (6/8) 0.101 (5/8)

22 Fault Tolerance 0111111… (7/8) 1100000… (2/8) 01000000… (1/8) Stochastic Logic Highly redundant. Complex operations can be performed with simple logic.

23 Fault Tolerance 0111111… (7/8) 1100100… (3/8) 01000100… (2/8) Stochastic Logic Highly redundant. Complex operations can be performed with simple logic. Bit flips never result in large errors.

24 Arithmetic Operations Multiplication(Scaled) Addition ba BPAP CPc    )()( )( ) )1( ()](1[)()( )( bsas BPSPAPSP CPc    0 1

25 Synthesizing Stochastic Logic combinational circuit )(tg t Only polynomials… Questions: What kinds of functions can be implemented in the probabilistic domain? How can we synthesize the logic to implement these?

26 Synthesizing Polynomials combinational circuit )(tg t Only polynomials… Implement polynomials using AND (multiplication) and MUX (scaled addition). Must consider polynomials with coefficients less than 0 or larger than 1…

27 A little math… Bernstein basis polynomial of degree n

28 A little math… Bernstein basis polynomial of degree n Bernstein polynomial of degree n is a Bernstein coefficient

29 A little math… Obtain Bernstein coefficients from power-form coefficients: Given, we have

30 Example: Converting a Polynomial Power-Form Polynomial Bernstein Polynomial coefficients in unit interval

31 Synthesizing Polynomials combinational circuit )(tg t Synthesis steps: 1. Convert the polynomial into a Bernstein form. 2. Elevate it until all coefficients are in the unit interval. 3. Implement this with “generalized multiplexing”.

32 Probabilistic Multiplexing ) )1( ()](1[)()( )( btat BPTPAPTP CPc    Bernstein polynomial

33 X 1, …, X n are independent Boolean random variables with Pr(X i =1) = t, for 1 ≤ i ≤ n Z 0, …, Z n are independent Boolean random variables with Pr(Z i =1)=, for 0 ≤ i ≤ n Probabilistic Multiplexing

34 A Reconfigurable Architecture Implement different functions by setting the coefficients:

35 Example Implement

36 Example Convert to

37 Example

38 with, such that is minimized. Non-Polynomial Functions Find a Bernstein polynomial to approximate the function:

39 Non-Polynomial Functions Example: Gamma correction function. Degree 6 Bernstein coefficients are: b 0 = 0.0955, b 1 = 0.7207, b 2 = 0.3476, b 3 = 0.9988, b 4 = 0.7017, b 5 = 0.9695, b 6 = 0.9939 f (t) = t 0.45

40 Deterministic v.s. Stochastic Implementation of Gamma correction function with 10% noise injection. Conventional Implementation Stochastic Implementation 1%2%10% Stochastic Implementation: no pixels with errors > 20%! Deterministic implementation: 37% pixels with errors > 20%

41 Comparison with Conventional Hardware Implementation of Image Processing Functions * The entire ReSC architecture, including Randomizers and De-Randomizers. ** The ReSC Unit by itself. Number of LUTs in FPGA mapping

42 * Software using math function from ‘Math.h’ Speedup (1024 cycles needed) ** Software using direct function table lookup Comparison with Conventional Software Implementation of Image Processing Functions

43 Percentage of Output Pixels with Errors Greater than 25% Noise is injected in the form of a percentage of bit flips. Comparison of Fault Tolerance for Image Processing Functions The stochastic implementation never produces such errors!

44 Sixth-order Maclaurin polynomial approx., 10 bits: sin(x), cos(x), tan(x), arcsin(x), arctan(x), sinh(x), cosh(x), tanh(x), arcsinh(x), exp(x), ln(x+1) Comparison of Fault Tolerance for Mathematical Functions

45 Conclusions The hardware cost is comparable. Stochastic computation is much more error tolerant. Advantage for applications where large errors are critical but small fluctuations can be tolerated is dramatic. (Also some pretty interesting math…) Future Directions Apply the method at the processor level. Apply the method at the circuit level (e.g., with PCMOS).

46 Quantities of Different Types Probability Distribution on outcomes Biological Process [computational] Synthetic Biology

47 Z        YX X Prwith Y X fixed Biological Process


Download ppt "Xin Li, Weikang Qian, Marc Riedel, Kia Bazargan & David Lilja A Reconfigurable Stochastic Architecture for Highly Reliable Computing Electrical & Computer."

Similar presentations


Ads by Google