290 likes | 473 Views
Probabilistic CMOS & Probabilistic Boolean Logic. Zheng -Shan Yu 2012/06/08. Outline. PCMOS CMOS with noise CMOS with varying voltages 2 types of random Related work Correctness vs energy Relations between PBF, PBTT, and PBC Issues My research F uture work. Outline. PCMOS
E N D
Probabilistic CMOS & Probabilistic Boolean Logic Zheng-Shan Yu 2012/06/08
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy • Relations between PBF, PBTT, and PBC • Issues • My research • Future work
Outline • PCMOS • CMOS with noise • CMOS with varying voltages
CMOS with noise • NOT:
CMOS with noise (cont.) • Noise: • Interconnection noise • Crosstalk • Simultaneous switching noise • Thermal noise • Noise models of PCMOS:
CMOS with varying voltages • Many voltage regulators are required if an application requires many different probabilities. • It is much better that the number of probabilities is small. With noise Without noise
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work
2 types of random • Both types of random have the same behaviors: • Explicit random: • Implicit random:
2 types of random-related work • How to synthesize combinational logic to generate a required probability q from a given set of probabilities S = {p1, p2, p3, …, pn}.
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy
Correctness vsenergy • Energy-probability of correctness relationship for an inverter in 180 nm CHRT technology:
Correctness vsenergy (cont.) • Consider XOR gate: • It is much better that the number of probabilistic gates is large.
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy • Relations between PBF, PBTT, and PBC
Relations between PBF, PBTT, and PBC • ((A∧B)∨(B∧C))∨3/4(A∧C) PBF PBC PBTT
Relations between PBF, PBTT, and PBC (cont.) • Probabilistic Boolean Truth Table: • { [ (f(x)=0) ]∧(f(x)=1) } PBF = A’BC + AB’C + ABC’ + ( (ABC)’) ∧(ABC) Probabilistic Boolean Logic Optimization?
Relations between PBF, PBTT, and PBC (cont.) • Given a Probabilistic Boolean Circuit: • Probability values branch and reconverge: • Hard to compute the probability values of its outputs. • Others: • Easy to compute the probability values by using following equations. • NOT: • Pout= (1 – Pin)*p + Pin*(1 – p) • OR: • Pout= (1 – Pa)*(1 – Pb)*(1 – p) + (1 – Pa)*Pb*p + Pa*(1 – Pb)*p + Pa*Pb*p • AND: • Pout= (1 – Pa)*(1 – Pb)*(1 – p) + (1 – Pa)*Pb*(1 – p) + Pa*(1 – Pb)*(1 – p) + Pa*Pb*p
Relations between PBF, PBTT, and PBC (cont.) • Eg: Probability values branch and reconverge. • P(n1 = 1)= (1 - 0)*2/3 + 0*1/3 = 2/3 • P(o1 = 1)=(1 – 2/3)*(1 – 2/3)*(1 – 4/5) + (1 – 2/3)*2/3*(1 – 4/5) + 2/3*(1 – 2/3)*(1 – 4/5)+ 2/3*2/3*4/5=7/15 o1 n1
Relations between PBF, PBTT, and PBC (cont.) • Eg: Others. • Pout(1,1,0)= 1*(1 – 0)*3/4 = 3/4 1 1 1 1 3/4 0 0 0
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy • Relations between PBF, PBTT, and PBC • Issues
Issues • How to do probabilistic logic optimization? • How to do rewiring? • How to do restructuring? • How to arrange a better assignment of probabilities for a design? • It is much better that the number of probabilities is small. • It is much better that the number of probabilistic gates is large. • How to do equivalence checking?
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy • Relations between PBF, PBTT, and PBC • Issues • My research
Problem formulation • Given: • A probabilistic Boolean circuit. • An input pattern. • Output: • The probabilities of its outputs being 1 under the given input assignment.
Monte Carlo Method • How to compute the area of this quarter circle if we do not know the function ?
Monte Carlo Method (cont.) • Random Pattern Generator: a source of random numbers such that the generated numbers are uniformly distributed on the unit interval. • Sampling rule: some defined rules that evaluate the result of each sampling. • Scoring: accumulate each outcome into overall scores for the quantities of interest. • Error estimation: an estimation of the statistical error as a function of the number of trials.
Model of solution RPG Given pattern 0 1 1 Given ‧ ‧ ‧ ‧ ‧
Model of solution (cont.) • Scoring: • Result probability • Error estimation: • T distribution is like normal distribution but is suitable for a small amount of data. • The simulation will stop when the result is good enough.
Parallel simulation • Probabilistic AND: • C = a & b • C = ~C • R = 1 means an incorrect computation • R = ~R • Out = (R & C) | (R & C) a b a & b Out ~(a & b) _ _ _ _
Outline • PCMOS • CMOS with noise • CMOS with varying voltages • 2 types of random • Related work • Correctness vs energy • Relations between PBF, PBTT, and PBC • Issues • My research • Future work
Future work • Read more papers • Determine a title • Revise the model of solution • Write the program • Create golden results for comparison