Download presentation
Presentation is loading. Please wait.
Published byErnest Peters Modified over 9 years ago
1
Marc Riedel – EE5393 The Synthesis of Robust Polynomial Arithmetic with Stochastic Logic Electrical & Computer Engineering University of Minnesota
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
Stochastic Logic Structure logical computation probabilistically. p 1 = Prob(1) p 2 = Prob(1) 1,1,0,1,0,1,1,0… 1,0,0,0,1,1,0,0,… combinational circuit 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,…
6
Stochastic Logic 5/8 3/8 Structure logical computation probabilistically. 1,1,0,1,0,1,1,0… 1,0,0,0,1,1,0,0,… combinational circuit 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,…
7
Stochastic Logic 5/8 3/8 4/8 3/8 4/8 8/8 Probability values are the input and output signals. combinational circuit
8
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
9
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
10
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. Probabilistic Bundles 0 1 0 0 1 x X
11
Nanowire Crossbar (idealized) Randomized connections, yet nearly one-to-one.
12
Interfacing with Stochastic Logic Interpret outputs according to fractional weighting. combinational circuit
13
Arithmetic Operations Multiplication(Scaled) Addition ba BPAP CPc )()( )( ) )1( ()](1[)()( )( bsas BPSPAPSP CPc
14
Computing with Probabilities combinational circuit X2X2 X1X1 XnXn independent random Boolean variables Y random Boolean variable ii xX )1Pr( 10 i x ),,()1 1 n xxfyY 10 y
15
Computing with Probabilities combinational circuit independent random Boolean variables Y random Boolean variable Constrain the problem: (independently) constant )1Pr( t X i X2X2 X1X1 XnXn
16
Computing with Probabilities combinational circuit Constrain the problem: (independently) constant )1Pr( t X i )(tf t
17
X Y X Y Z Z C S Computing with Probabilities (independently) tZX )1Pr()1 3.0)1 Y t t t t 0.3 2 4.06.0tt 3.08.08.0 2 tt
18
SynthesisAnalysis “There are known ‘knowns’; and there are unknown ‘unknowns’; but today I’ll speak of the known ‘unknowns’.” – Donald Rumsfeld, 2004 combinational circuit Probabilistic Inputs Probabilistic Outputs Known Unknown Specified / Independent Unknown Given
19
Synthesis “There are known ‘knowns’; and there are unknown ‘unknowns’; but today I’ll speak of the known ‘unknowns’.” – Donald Rumsfeld, 2004 Questions: What kinds of functions can be implemented in the probabilistic domain? How can we synthesize the logic to implement these?
20
Probabilistic Domain A polynomial g(t) is either: 1. g(t) ≡ 0 or 1, or 2. 0 < g(t) < 1, for 0 < t < 1 and 0 ≤ g(0), g(1) ≤ 1 combinational circuit )(tg t A necessary and sufficient condition:
21
Probabilistic Domain 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”.
22
A little math… Bernstein basis polynomial of degree n
23
A little math… Bernstein basis polynomial of degree n Bernstein polynomial of degree n is a Bernstein coefficient
24
A little math… Obtain Bernstein coefficients from power-form coefficients: Given, we have
25
A little math… Elevate the degree of the Bernstein polynomial: Given, we have
26
A Mathematical Contribution Given A Bernstein polynomial (satisfying the necessary and sufficient condition) Iteratively elevating the degree yields: A Bernstein polynomial with coefficients in the unit interval (in very few steps).
27
Example: Converting a Polynomial Power-Form Polynomial
28
Example: Converting a Polynomial Power-Form Polynomial Bernstein Polynomial coefficients in unit interval
29
Probabilistic Multiplexing ) )1( ()](1[)()( )( btat BPTPAPTP CPc Bernstein polynomial
30
Generalized Multiplexing
31
X 1, …, X n are independent Boolean random variables with, for 1 ≤ i ≤ n
32
Generalized Multiplexing X 1, …, X n are independent Boolean random variables with, for 1 ≤ i ≤ n
33
Generalized Multiplexing Z 0, …, Z n are independent Boolean random variables with, for 0 ≤ i ≤ n
34
Generalized Multiplexing Z 0, …, Z n are independent Boolean random variables with, for 0 ≤ i ≤ n
35
Experimental Results Compare [conventional] deterministic to [new] stochastic implementation of polynomial computation: Deterministic implementation: based on benchmark circuit (ISCAS’85 multiplier circuit C6288). Area-delay product. Error tolerance with noise injection.
36
Experimental Results 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)
37
Experimental Results 100 randomly chosen Bernstein polynomials with coefficients in the unit interval, 10 bits:
38
Conclusions The area-delay product of the stochastic computation is comparable to the deterministic. The stochastic implementation is much more input-error tolerant. Future Directions Extend to the synthesis of multivariate polynomials. Implement sequential computation.
39
Engineering novel functionality in biological systems. Biochemical Reactions View engineered biochemistry as a form of computation. Synthetic Biology E. Coli computationinputsoutputs Molecular Triggers Molecular Products
40
View engineered biochemistry as a form of computation. Biochemical Reactions Synthetic Biology computationinputsoutputs Quantities of Different Types Probability Distribution on Different Types
41
Bacteria are engineered to produce an anti-cancer drug: Design Scenario drug triggering compound E. Coli
42
produce drug triggering compound E. Coli Approach: engineer a probabilistic response in each bacterium. with Prob. 0.3 don’t produce drug with Prob. 0.7 Synthesizing Stochasticity
43
Discussion Synthesize a design for a precise, robust, programmable probability distribution on outcomes – for arbitrary types and reactions. Computational Synthetic Biology vis-a-vis Technology-Independent Logic Synthesis Implement design by selecting specific types and reactions – say from “toolkit”. Experimental Design vis-a-vis Technology Mapping in Circuit Design
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.