Marc Riedel – EE5393 The Synthesis of Robust Polynomial Arithmetic with Stochastic Logic Electrical & Computer Engineering University of Minnesota.

Slides:



Advertisements
Similar presentations
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Advertisements

1 Combinational Logic Design&Analysis. 2 Introduction We have learned all the prerequisite material: – Truth tables and Boolean expressions describe functions.
Information Theory EE322 Al-Sanie.
Simple Linear Regression
ELE 523E COMPUTATIONAL NANOELECTRONICS W7-W8: Probabilistic Computing, 20/10/ /10/2014 FALL 2014 Mustafa Altun Electronics & Communication Engineering.
Weikang Qian Ph.D. Candidate Electrical & Computer Engineering
Marc Riedel Synthesizing Stochasticity in Biochemical Systems Electrical & Computer Engineering Jehoshua (Shuki) Bruck Caltech joint work with Brian Fett.
Digital Signal Processing with Biomolecular Reactions Hua Jiang, Aleksandra Kharam, Marc Riedel, and Keshab Parhi Electrical and Computer Engineering University.
Synchronous Sequential Computation with Molecular Reactions Hua Jiang, Marc Riedel, and Keshab Parhi Electrical and Computer Engineering University of.
Module Locking in Biochemical Synthesis Brian Fett and Marc D. Riedel Electrical and Computer Engineering University of Minnesota Brian’s Automated Modular.
Xin Li, Weikang Qian, Marc Riedel, Kia Bazargan & David Lilja A Reconfigurable Stochastic Architecture for Highly Reliable Computing Electrical & Computer.
Proof: Synthesize cubes so that cube c k has n − i k literals and cubes c k and c l are disjoint, for any 0 ≤ k < l ≤ λ − 1. Weikang Qian and Marc D. Riedel.
Marc Riedel The Synthesis of Stochastic Logic for Nanoscale Computation IWLS 2007, San Diego May 31, 2007 Weikang Qian and John Backes Circuits & Biology.
Stochastic Transient Analysis of Biochemical Systems Marc D. Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical.
Weikang Qian The Synthesis of Stochastic Logic to Perform Multivariate Polynomial Arithmetic Abstract Ph.D. Student, University of Minnesota Marc D. Riedel.
Marc Riedel A Discourse on Cycles Assistant Professor, ECE, Univ. Minnesota (in circuits and in computational biology) “In a good system, even evil men.
WELCOME TO THE WORLD OF FUZZY SYSTEMS. DEFINITION Fuzzy logic is a superset of conventional (Boolean) logic that has been extended to handle the concept.
Circuit Engineers Doing Biology Marc D. Riedel Assistant Professor, Electrical and Computer Engineering University of Minnesota Café Scientifique A Discourse.
Shannon’s Expansion Muxes and Encoders. Tri-State Buffers  A tri-state buffer has one input x, one output f and one control line e Z means high impedance,
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
1 Stochastic Logic Beyond CMOS... Prof. Mingjie Lin.
Nanoscale Digital Computation Through Percolation Mustafa Altun Electrical and Computer Engineering DAC, “Wild and Crazy Ideas” Session ─ San Francisco,
5/31/07IWLS Computing Beyond CMOS Intense research into novel materials and devices: Carbon Nanotubes… Molecular Switches… Biological Processes…
Neurons, Neural Networks, and Learning 1. Human brain contains a massively interconnected net of (10 billion) neurons (cortical cells) Biological.
Chapter 5 Memory and Programmable Logic 5.1. Introduction 5.2. Random Access Memory 5.3. Memory Encoding 5.4. Read Only Memory 5.5. Programmable Logic.
Error Analysis Accuracy Closeness to the true value Measurement Accuracy – determines the closeness of the measured value to the true value Instrument.
EE 5393: Circuits, Computation and Biology
Digital Logic Problems (II) Prof. Sin-Min Lee Department of Mathematics and Computer Science.
Uses of Statistics: 1)Descriptive : To describe or summarize a collection of data points The data set in hand = the population of interest 2)Inferential.
Simulation is the process of studying the behavior of a real system by using a model that replicates the behavior of the system under different scenarios.
EE5393, Circuits, Computation, and Biology Computing with Probabilities 1,1,0,0,0,0,1,0 1,1,0,1,0,1,1,1 1,1,0,0,1,0,1,0 a = 6/8 c = 3/8 b = 4/8.
Linear Algebra. Circuits The circuits in computers and other input devices have inputs, each of which is either a 0 or 1, the output is also 0s and 1s.
Computing with Defects
Marc D. Riedel Associate Professor, ECE University of Minnesota EE 5393: Circuits, Computation and Biology ORAND.
Yang Cai Oct 06, An overview of today’s class Unit-Demand Pricing (cont’d) Multi-bidder Multi-item Setting Basic LP formulation.
Weikang Qian. Outline Intersection Pattern and the Problem Motivation Solution 2.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
CSE 140 Lecture 12 Combinational Standard Modules CK Cheng CSE Dept. UC San Diego 1.
Synthesizing Stochasticity in Biochemical Systems In partial fulfillment of the requirements for a master of electrical engineering degree Brian Fett Marc.
Computer Architecture and Organization Unit -1. Digital Logic Circuits – Logic Gates – Boolean Algebra – Map Simplification – Combinational Circuits –
Writing and Compiling Code into Biochemistry Marc Riedel Assistant Professor, Electrical and Computer Engineering Graduate Faculty, Biomedical Informatics.
ELE 523E COMPUTATIONAL NANOELECTRONICS W8-W9: Probabilistic Computing, 2/11/ /11/2015 FALL 2015 Mustafa Altun Electronics & Communication Engineering.
ELE 523E COMPUTATIONAL NANOELECTRONICS W10: Defects and Reliability, 16/11/2015 FALL 2015 Mustafa Altun Electronics & Communication Engineering Istanbul.
Monte Carlo Analysis of Uncertain Digital Circuits Houssain Kettani, Ph.D. Department of Computer Science Jackson State University Jackson, MS
Sayed Ahmad Salehi Marc D. Riedel Keshab K. Parhi University of Minnesota, USA Markov Chain Computations using Molecular Reactions 1.
A Low-Complexity Universal Architecture for Distributed Rate-Constrained Nonparametric Statistical Learning in Sensor Networks Avon Loy Fernandes, Maxim.
Bio-Design Automation EE5393 – University of Minnesota Brian’s Automated Modular Biochemical Instantiator.
Pseudo-random generators Talk for Amnon ’ s seminar.
Marc Riedel Associate Professor, Electrical and Computer Engineering University of Minnesota ITA – Feb. 14, 2014 (“Singles’ Awareness Day”) Probability.
Biochemical Reactions computationinputsoutputs Molecular Triggers Molecular Products Synthesizing Biological Computation Protein-Protein Chemistry at the.
ALGEBRA VOCABULARY. Vocabulary: Expression Definition: A math phrase built from constants, variables and operations EXAMPLE: 3X - 2Y.
ELECTRICAL ENGINEERING: PRINCIPLES AND APPLICATIONS, Third Edition, by Allan R. Hambley, ©2005 Pearson Education, Inc. Chapter 7 Logic Circuits.
Minute Paper 4/4/04 Z=50+j86.7=100
Event-Leaping in the Stochastic Simulation of Biochemistry State Space AnalysisThe Goddess Durga Marc Riedel, EE5393, Univ. of Minnesota.
A theory of reverse engineering N.Y. Louis Lee (1) & P.N. Johnson-Laird (2) (1)Department of Educational Psychology, Faculty of Education, The Chinese.
Logic Design (CE1111 ) Lecture 4 (Chapter 4) Combinational Logic Prepared by Dr. Lamiaa Elshenawy 1.
Network Topology Single-level Diversity Coding System (DCS) An information source is encoded by a number of encoders. There are a number of decoders, each.
1 Digital Logic Design (41-135) Chapter 6 Combinational Circuit Building Blocks Younglok Kim Dept. of Electrical Engineering Sogang University Spring 2006.
Lecture 1 Gunjeet kaur Dronacharya group of institutions.
Bacteria are engineered to produce an anti-cancer drug: Design Scenario drug triggering compound E. Coli.
EE5393, Circuits, Computation, and Biology Computing with Probabilities 1,1,0,0,0,0,1,0 1,1,0,1,0,1,1,1 1,1,0,0,1,0,1,0 a = 6/8 c = 3/8 b = 4/8.
Bacteria are engineered to produce an anti-cancer drug: Design Scenario drug triggering compound E. Coli.
Fault-Tolerant Resynthesis for Dual-Output LUTs Roy Lee 1, Yu Hu 1, Rupak Majumdar 2, Lei He 1 and Minming Li 3 1 Electrical Engineering Dept., UCLA 2.
Basics of Multivariate Probability
A New Logic Synthesis, ExorBDS
A Deterministic Approach to Stochastic Computation
Architecture Synthesis for Cost Constrained Fault Tolerant Biochips
Biological Processes…
ELE 523E COMPUTATIONAL NANOELECTRONICS
Electrical Communications Systems ECE Spring 2019
Presentation transcript:

Marc Riedel – EE5393 The Synthesis of Robust Polynomial Arithmetic with Stochastic Logic Electrical & Computer Engineering University of Minnesota

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

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.

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

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,…

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,…

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

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

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

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 x X

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

Interfacing with Stochastic Logic Interpret outputs according to fractional weighting. combinational circuit 

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

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

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

Computing with Probabilities combinational circuit Constrain the problem: (independently)     constant )1Pr( t X i )(tf t

X Y X Y Z Z C S Computing with Probabilities (independently) tZX  )1Pr()1 3.0)1  Y t t t t tt   tt

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

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?

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:

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”.

A little math… Bernstein basis polynomial of degree n

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

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

A little math… Elevate the degree of the Bernstein polynomial: Given, we have

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).

Example: Converting a Polynomial Power-Form Polynomial

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

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

Generalized Multiplexing

X 1, …, X n are independent Boolean random variables with, for 1 ≤ i ≤ n

Generalized Multiplexing X 1, …, X n are independent Boolean random variables with, for 1 ≤ i ≤ n

Generalized Multiplexing Z 0, …, Z n are independent Boolean random variables with, for 0 ≤ i ≤ n

Generalized Multiplexing Z 0, …, Z n are independent Boolean random variables with, for 0 ≤ i ≤ n

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.

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)

Experimental Results 100 randomly chosen Bernstein polynomials with coefficients in the unit interval, 10 bits:

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.

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

View engineered biochemistry as a form of computation. Biochemical Reactions Synthetic Biology computationinputsoutputs Quantities of Different Types Probability Distribution on Different Types

Bacteria are engineered to produce an anti-cancer drug: Design Scenario drug triggering compound E. Coli

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

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