probabilistic graphical models
play

Probabilistic Graphical Models Sangho Youn 1 and Chenjie Gu 2 1 Seoul - PowerPoint PPT Presentation

1 Probabilistic Bug Localization for Analog/Mixed-Signal Circuits using Probabilistic Graphical Models Sangho Youn 1 and Chenjie Gu 2 1 Seoul National University, South Korea 2 Intel Strategic CAD Labs, Hillsboro, OR, USA March 2014 2 Outline


  1. 1 Probabilistic Bug Localization for Analog/Mixed-Signal Circuits using Probabilistic Graphical Models Sangho Youn 1 and Chenjie Gu 2 1 Seoul National University, South Korea 2 Intel Strategic CAD Labs, Hillsboro, OR, USA March 2014

  2. 2 Outline  Overview  Bug localization using graphical models  Graphical model creation  Gaussian Bayesian network  Table-based Bayesian network  Bug localization by statistical inference  Experimental results  Conclusion

  3. 3 Problem: Time-Consuming Debugging  Debugging tasks are major bottlenecks in IC design  Mostly depends on trial-and-errors  Takes a significant amount of time! http://www.eeweb.com/rtz/trial-error

  4. 4 Goal: Automatic Bug Localization  Goal is to develop a tool that can automatically localize bugs from available waveforms and models, primarily for post- silicon validation Channel TX RX OUT IN Which block caused this failure ? Closed eye, Failure!

  5. 5 Proposed Approach: Bug Diagnosis Using Probabilistic Graphical Models θ 1 θ 2 θ 3 1. Construct probabilistic graphical model 2. Make an observation Channel TX RX 3. Estimate the posterior probability of a IN OUT A B system’s parameter θ 4. If P post ( θ in θ spec_range ) < threshold , θ θ 1 θ 1 θ 2 θ 2 θ 3 θ 3 θ 1 θ 1 θ 2 θ 2 θ 3 θ 3 and its associated sub-block are reported as failure root-causes  If multiple bug root-causes are found, rank them IN IN A A B B OUT OUT IN A A B B OUT according to P( θ = θ ref |D ob ) P post ( θ 1 |D ob ) P post ( θ 1 |D ob ) P post ( θ 2 |D ob ) P post ( θ 2 |D ob ) P post ( θ 3 |D ob ) P post ( θ 3 |D ob ) too low! θ 1,ref θ 2,ref θ 2 θ 2 θ 1 θ 1 θ 3,ref θ 3 θ 3

  6. 6 Advantages of Our Approach  Uncertainty/noise can be θ 1 θ 2 θ 3 θ 1 θ 2 θ 3 modeled  Non-linearity can be modeled IN A B OUT A B  Efficient inference algorithms exist P post ( θ 2 |D ob ) too low! θ 2,ref θ 2

  7. 7 Outline  Overview  Bug localization using graphical models  Graphical model creation  Gaussian Bayesian network  Table-based Bayesian network  Bug localization by statistical inference  Experimental results  Conclusion

  8. 8 Probabilistic Models  A system’s behavior can be described by probability instead of a functional relationship θ 1 θ 2 θ 3 Channel TX RX IN B C OUT P( IN, B, C, OUT, θ 1 , θ 2 , θ 3 ) This is difficult to characterize!

  9. 9 Probabilistic Graphical Model  We can significantly reduce the complexity by graphical model  Can decompose a full joint distribution into small factors θ 1 θ 2 θ 3 Channel TX RX IN B C OUT

  10. 10 Two Parametric Model of Factors in Graphical Model  Conditional Probability Density (CPD)  A template to describe CPD, P(Z out |X in ,Y in ) Gaussian Bayesian network (GBN) 1.  P(Z | X, Y) ~ Normal ( aX+bY , ϭ 2 )  For linear block Table-based Bayesian network (TBN) 2.  P(Z | X, Y) ~ Multinomial (p 1 ,p 2 ,…, p k )  For nonlinear block Gaussian BN Multinomial BN P(Z|X,Y)

  11. 11 Gaussian Bayesian Network (GBN) Model Example – Continuous Time Linear Equalizer  CTLE example 𝝂 = 𝒄 𝟏 𝒚 𝒐 + 𝒄 𝟐 𝒚 𝒐−𝟐 + 𝒃 𝟐 𝒛 𝒐−𝟐 + 𝒃 𝟑 𝒛 𝒐−𝟑 P(y n |x n ,x n-1 ,y n-1 ,y n-2 ) Discrete-time GBN 𝑐 0 + 𝑐 1 𝑨 −1 𝐼 𝑨 = 𝐿 1 + 𝑏 1 + 𝑏 2 𝑨 −1 𝑧 𝑜 = 𝑐 0 𝑦 𝑜 + 𝑐 1 𝑦 𝑜−1 + 𝑏 1 𝑧 𝑜−1 + 𝑏 2 𝑧 𝑜−2 y n 1 (𝑡 + 𝑆 𝑡 𝐷 𝑡 ) 𝐼 𝑡 = 𝑕 𝑛 1 + 𝑕 𝑛 𝑆 𝑡 𝐷 𝑞 1 2 (𝑡 + )(𝑡 + 𝑆 𝐸 𝐷 𝑞 ) 𝑆 𝑡 𝐷 𝑡

  12. 12 Table-Based Bayesian Network (TBN) Model Creation – Decision Feedback Equalizer  DFE example y y Voltage Voltage Voltage Voltage x z x z Quantization levels Quantization levels 8 8 7 7 x[n-1] 6 x[n-1] 6 5 5 Slicer threshold Slicer threshold x[n] x[n] z -1 z -1 4 4 3 y[n] 3 y[n] x[n-2] x[n-2] γ γ 2 2 z[n] z[n] 1 1 x[n] z[n] x[n] z[n] Time (n) Time (n) Time (n) Time (n) x[n]=input P(y[n]|x[n]=5,z[n-1]=1,z[n-2]=-1) y[n]=slicer’s input P(y[n]|x[n]=6,z[n-1]=-1,z[n-2]=-1) z[n-1] z[n-2] z[n-1] z[n-2] z[n]=output P(y[n]|x[n]=3,z[n-1]=-1,z[n-2]=-1)

  13. 13 Outline  Overview  Bug localization using graphical models  Graphical model creation  Gaussian Bayesian network  Table-based Bayesian network  Bug localization by statistical inference  Experimental results  Conclusion

  14. 14 Bug Localization by Statistical Inference: Computing P posterior ( θ | D ob )  We want to estimate the probability of a parameter ( θ ) after observation ( D ob ) by statistical inference  Possible Approaches  Exact inference  Junction tree algorithm  Approximate inference  Gibbs sampling How do we get P posterior ( θ | D ob ) ? P post ( θ 2 |D ob ) θ 2,ref θ 2

  15. 15 Statistical Inference by Gibbs Sampling: Computing P posterior ( θ | D ob ) θ 1,0 θ 1,0 θ 1,1 θ 1,0 θ 1,1 θ 1,0 θ 1 θ 2,0 θ 2,0 θ 2,0 θ 2,0 θ 2,1 θ 2,0 θ 2 θ 3,0 θ 3,0 θ 3,0 θ 3,0 θ 3,0 θ 3,1 θ 3 θ 1 θ 2 θ 3  Gibbs Sampling can be used when the conditional distribution of each variable is known and is easy to sample from Start with an initial guess X 0 =(B 1,0 , B 2,0 , …, θ 3,0 ) 1. IN 3 IN 3 IN 3 IN 3 IN 3 IN 3 IN 3 B 3,0 B 3,0 B 3,1 B 3,1 B 3,0 B 3,1 B 3 C 3,0 C 3,0 C 3,0 C 3,0 C 3,1 C 3,0 C 3 OUT 3 OUT 3 OUT 3 OUT 3 OUT 3 OUT 3 OUT 3 Take a sample B 1,1 from P(B 1 | B 2,0 , B 3,0 , …, θ 3,0 ) and 2. update B 1 Take samples for B 2 to B 3 and update them 3. IN 2 IN 2 IN 2 IN 2 IN 2 IN 2 IN 2 B 2,1 B 2,0 B 2,1 B 2,1 B 2,0 B 2,1 B 2 C 2,0 C 2,0 C 2,0 C 2,0 C 2,1 C 2,0 C 2 OUT 2 OUT 2 OUT 2 OUT 2 OUT 2 OUT 2 OUT 2 Take a sample θ 1,1 from P( θ 1 | B 1,0 , … , θ 2,0 , θ 3,0 ) and 4. update θ 1 Take samples for C 1 to C 3 and update them 5. IN 1 IN 1 IN 1 IN 1 IN 1 IN 1 IN 1 B 1,0 B 1,1 B 1,1 B 1,1 B 1,1 B 1,1 B 1 C 1,0 C 1,0 C 1,1 C 1,0 C 1,0 C 1,0 C 1 OUT 1 OUT 1 OUT 1 OUT 1 OUT 1 OUT 1 OUT 1 Take samples θ 2 to θ 3 and update them 6. Iterate 2~6 step N times 7. (B 1,1 , B 2,1 , …, C 1,1 , C 2,1 , …, θ 3,1 ) Estimate P post ( θ | D ob ) ~ Histogram(Samples) 8.  P( θ 1 | D ob ) ~ Histogram( θ 1,k+1 , θ 1,k+2 , …θ 1,k+N ) (B 1,2 , B 2,2 , …, C 1,2 , C 2,2 , …, θ 3,2 ) … (B 1,N , B 2,N , …, C 1,N , C 2,N , …, θ 3,N )

  16. 16 Increasing Accuracy by Using Controllability  The method may miss a bug root-cause due to highly limited observability  However, we can increase accuracy and differentiate bug root-causes by using controllability Now, the bug can be detected! controllable knob P( θ 2 |D ob1 , D ob2 ) D ob1 =(IN 1 ,OUT 1 ) θ 2 D ob2 =(IN 2 ,OUT 2 ) Spec-range

  17. 17 Outline  Overview  Bug localization using graphical models  Graphical model creation  Gaussian Bayesian network  Table-based Bayesian network  Bug localization by statistical inference  Experimental results  Conclusion

  18. 18 Test Case – A 5 Gbps I/O Link  System Parameters ( θ )  TX FFE, Channel, RX CTLE : pole / zero  DFE: tap coefficients / slicer threshold TX EQ Channel RX EQ Input TX FFE Channel CTLE DFE/Slicer Output Output Output Output FR408 GBX Reference Backplane Continuous Time Linear Equalizer S-parameter channel model is from http://www.t11.org/ftp/t11/models/index.html

  19. 19 Experiment (1) – The Posteriors Cover True Parameters As Expected  Posterior distributions of FFE, channel and CTLE parameters and true parameter locations TX EQ Channel RX EQ Input TX FFE Channel CTLE Output Output Output True pole/zero location (x / o) Estimated posterior distribution of pole/zero (x / o) Zero map of TX FFE Pole/Zero map of channel Pole/Zero map of CTLE

  20. 20 Experiment (2) – The Problematic Buggy Channel Can be Identified  In this experiment, a channel is replaced by a problematic lossy channel TX EQ Channel RX EQ Input TX FFE Channel CTLE DFE/Slicer Output Output Output Output Frequency response of desired channel Frequency response of lossy channel

  21. 21 The Bug Localization and Ranking Procedure θ CH θ CH γ -table γ -table V gain1 V gain1 θ CH θ CH θ CTLE1 θ CTLE1 controllability to CTLE’s zero location A 12 A 12 B 12 B 12 C 12 C 12 D 12 D 12 OUT 12 OUT 12 TX EQ Channel RX EQ Input TX FFE Channel CTLE DFE/Slicer Output A 11 A 11 B 11 B 11 C 11 C 11 D 11 D 11 OUT 11 OUT 11 Output Output Output V gain2 V gain2 θ CTLE2 θ CTLE2 A 22 A 22 B 22 B 22 C 22 C 22 D 22 D 22 OUT 22 OUT 22 A 21 A 21 B 21 B 21 C 21 C 21 D 21 D 21 OUT 21 OUT 21 P post ( θ 1 |D ob ) P post ( θ 2 |D ob ) P post (V gain1 |D ob ) Problematic Parameter θ 1,ref θ 2,ref θ 2 θ 1 θ 3,ref θ 3 Ranking • Rank them according to P( θ in θ spec |D ob ) • P( θ 2 in θ 2,spec |D ob ) < P( θ 1 in θ 1,spec |D ob ) < … • Rank in order of θ 2, θ 1, …

  22. 22 Experiment (2) – A Buggy Lossy Channel is Identified As the Bug Root-Cause Desired Parameter Value (Narrow bar) real(z) Desired pole(x)/zero(o) locations Estimated posterior distribution of pole/zero (x / o) real(p1) Estimated parameter posterior of buggy channel

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend