200 likes | 344 Views
Correctness Analysis for Probabilistic Boolean Circuits. Zheng -Shan Yu & Ching - Yi Huang & Yung-Chun Hu 2013/02/25. Outline. Introduction Error tolerant circuit PCMOS Output correctness calculations Probabilistic formulae Exhausted simulation Monte Carlo simulation
E N D
Correctness Analysis for Probabilistic Boolean Circuits Zheng-Shan Yu & Ching-Yi Huang & Yung-Chun Hu 2013/02/25
Outline • Introduction • Error tolerant circuit • PCMOS • Output correctness calculations • Probabilistic formulae • Exhausted simulation • Monte Carlo simulation • Circuit correctness • Experimental results • Future work
Error Tolerant Circuit • Circuits that don’t acquire 100% correctness • Human perception is limited. • Applications • Graph • Audio • Video • … • How to implement error tolerant circuits? • Circuit simplification • PMOS • … Origin PSNR=31.79
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. CMOS PCMOS
Correctness v.s. energy • It is much better that the number of probabilistic gates is large.
Probabilistic formulae • NOT: Pout= (1–Pin)*p + Pin*(1–p) • AND: Pout= Pa*Pb*p + (1 – Pa*Pb)*(1–p) • OR: Pout = (1–Pa)*(1–Pb)*(1–p) + [1–(1–Pa)*(1–Pb)]*p • P(n) = 1*1*0.8 + 0*0*0.2 = 0.8 • P(m) = 0*0.8 + 1*0.2 = 0.2 • P(u) = 0.2*0.8*0.3 + (1-0.8*0.2)*0.7 = 0.636 Note : Pout = probability of 1 1 n 0.8 1 0.7 u 0.8 1 m
Probabilistic formulae • Advantages: • The fastest method • Compute exact answers • Disadvantages: • Cannot deal with circuits with internal reconvergent signals Example Pout = Pa*Pb*p + (1 – Pa*Pb)*(1–p) = 0.9*0.9*0.8 + (1-0.9*0.9)*(1-0.8) = 0.686 0.9 0.8 Pout Pout= 0.9*1*0.8 + (1-0.9*1)*(1-0.8) = 0.8
Exhausted simulation • List all combinations of probabilistic gates evaluating correctly or not • Sum the probability of each combination 1 n 0.8 1 0.7 u 1 0.8 m
Exhausted simulation • Advantages: • Can deal with all circuits • Compute exact answers • Disadvantages: • The slowest method
Monte Carlo Method • How to compute the area of this quarter circle if we do not know the function ?
Monte Carlo simulation • Simulate until reaching the stop point RPG 1 n 0.8 1 0.7 u 0.8 1 ‧ ‧ ‧ m ‧ ‧
Monte Carlo simulation Stop point # # t distribution Probability of 1 Probability of 1 Normal distribution
Monte Carlo simulation • Advantages: • Can deal with large circuits efficiently • Disadvantages: • Compute approximate answers
Circuit Correctness But this method calculate output correctness of only one input combination at a time RPG 1 n 0.8 1 0.7 u 0.8 1 ‧ ‧ ‧ m
Method I Probability of 1 Can’t apply montecarlo method!! . . . . . .
Method I Probability of 1 Correctness . . . . . . . . .
Method II 0.5 0.5 0.5 Correctness
Experimental Results A 0.9 B 0.9 C 0.9 Circuit correctness: 0.7448
Future work • Reorganize the paper with new idea.