Download presentation
Presentation is loading. Please wait.
Published byBryce Cummings Modified over 8 years ago
1
Towards Completely Automatic Decoder Synthesis Hsiou-Yuan Liu, Yen-Cheng Chou, Chen- Hsuan Lin, and Jie-Hong Roland Jiang ALCom Lab EE Dept/ Grad. Inst. of Electronics Eng. National Taiwan University
2
2011/11/8ICCAD 20112 Outline Introduction Decoder existence checking Decoder synthesis Experimental results Conclusions
3
2011/11/8ICCAD 20113 Introduction Encoder 0,1,1,0,0,… 1,0,1,0,1,… Decoder
4
2011/11/8ICCAD 20114 Introduction Decoding process under a bounded observation window …, o k, o k+1, o k+2, o k+3, o k+4, o k+5, … EncoderDecoder … ijij i j+1 i j+2 …
5
2011/11/8ICCAD 20115 Introduction Example OutputInput 00...00... or 11… 01…01… or 10… 10…00… or 11… 11…01… or 10… 1/1 0/00/1 1/0 q0q0 q1q1 1/1 0/01/0 0/1 q0q0 q1q1 OutputInput 00...?0… 01…?1… 10…?1… 11…?0…
6
2011/11/8ICCAD 20116 Introduction Encoding/decoding scheme plays key roles in various applications, including Communication, Signal processing, Cryptography, … Designing a decoder can be more difficult than designing an encoder Automatic decoder synthesis helps a designer effectively and correctly implement his/her system
7
2011/11/8ICCAD 20117 Introduction Basic assumptions: Encoder can be sequential Combinational encoder is a special case Can be decoded with observation window of size 1 Steady state behavior is of main concern Initial transient behavior is neglected Decoder has finite memory Bounded observation window
8
2011/11/8ICCAD 20118 Prior Work Decoder synthesis [Shen et al. ICCAD09] Bounded decoder existence checking Decoder generation using ALLSAT Halting algorithm [Shen et al. FMCAD10] Unbounded decoder existence checking (with flaw)
9
2011/11/8ICCAD 20119 Contributions Theoretically, guaranteed decoder existence/inexistence checking with simplified formulation Practically, fast computation Simplified CNF encoding Interpolation for decoder synthesis
10
2011/11/8ICCAD 201110 Decoder Existence Checking Notation T xy s s's' inputoutput current state next state transition relation
11
2011/11/8ICCAD 201111 Decoder Existence Checking Decoder exists under window (-n,p) iff is UNSAT T0T0 T –1 T1T1 TpTp T –n …… T* 0 T* –1 T* 1 T* p T* –n ……
12
2011/11/8ICCAD 201112 Decoder Existence Checking Decoder does not exist iff is SAT for some n and p, where
13
2011/11/8ICCAD 201113 Decoder Existence Checking Decoder does not exist iff is SAT for some n and p, where
14
2011/11/8ICCAD 201114 Decoder Existence Checking T0T0 T –1 T1T1 TpTp T –n …… T* 0 T* –1 T* 1 T* p T* –n …… LL LL LL
15
2011/11/8ICCAD 201115 Decoder Existence Checking encoder solve M(n,p) SAT? yes no decoder exists return (n, p) solve M(n,p) (L (L L )) SAT? yes no decoder return counterexample no n := n +1 p := p +1 n := 0 p := 0
16
2011/11/8ICCAD 201116 Decoder Existence Checking Incremental timeframe expansion Expand from outside T0T0 T –1 T* 0 T* –1 T –2 T* –2 … … T –3 T* –3
17
2011/11/8ICCAD 201117 Decoder Existence Checking Incremental timeframe expansion Expand from inside T0T0 T* 0 … … T –1 T* –1 T –1 T* –1 T –2 T* –2 T –2 T* –2 T –3 T* –3
18
2011/11/8ICCAD 201118 Decoder Existence Checking Disjunctive conditions Not good for CNF encoding
19
2011/11/8ICCAD 201119 Decoder Existence Checking CNF encoding of disjunctive conditions E.g., Let = 1 + 2 + 3 = (C 1 C 2 C 3 )+(C 4 C 5 )+(C 6 C 7 ) Let = (C 1 + 1 ) (C 2 + 1 ) (C 3 + 1 ) (C 4 + 2 ) (C 5 + 2 ) (C 6 + 3 ) (C 7 + 3 ) ( 1 + 2 + 3 ) and are equisatisfiable
20
2011/11/8ICCAD 201120 Decoder Existence Checking Incremental CNF encoding of disjunctive conditions E.g., Let = 1 + 2 + 3 = (C 1 C 2 C 3 )+(C 4 C 5 )+(C 6 C 7 ) Suppose i are appended incrementally Let = (C 1 + 1 ) (C 2 + 1 ) (C 3 + 1 ) ( 0 + 1 + 1 ) (C 4 + 2 ) (C 5 + 2 ) ( 1 + 2 + 2 ) (C 6 + 3 ) (C 7 + 3 ) ( 2 + 3 + 3 ) and ( 0 3 ) are equisatisfiable
21
2011/11/8ICCAD 201121 Decoder Existence Checking encoder solve M(n,p) SAT? yes no decoder exists return (n, p) solve M(n,p) (L (L L )) SAT? yes no decoder return counterexample no n := n +1 p := p +1 n := 0 p := 0
22
2011/11/8ICCAD 201122 Decoder Synthesis Craig interpolation theorem: For (A B) UNSAT, there exists an interpolant I such that 1. A I 2. B I UNSAT 3. I refers only to the common variables of A and B B A I
23
2011/11/8ICCAD 201123 Decoder Synthesis The interpolant corresponds to the desired decoder T0T0 T –1 T1T1 TpTp T –n …… T* 0 T* –1 T* 1 T* p T* –n …… 1 0 A B
24
2011/11/8ICCAD 201124 Experimental Results Our decoding system “ Decosy ” implemented in ABC using C language Experiments conducted on Linux machine with Xeon 2.53 GHz CPU and 48GB RAM Final circuits mapped into mcnc.genlib library
25
2011/11/8ICCAD 201125 Experimental Results Comparison on decoder generation time circuit [14]*Decosy area ratio delay ratio area/delaytimearea/delaytime XGXS269/7.41.23286/7.30.081.060.99 XFI5697/14.4492.583978/14.34.020.700.99 Scrambler736/3.81.88640/3.80.250.871 PCIE171/5.81.04190/6.60.081.111.14 T2Ethernet299/7.522.67583/9.01.471.951.20 HM(7,4)255§/7.3§0.12255/7.30.0811 HM(15,11) 4232§/13.8 § 56.823279/13.21.330.770.96 *Prior work [14] implemented in OCaml.
26
2011/11/8ICCAD 201126 Experimental Results Comparison on decoder existence checking and decoder generation circuit [15]*Decosy area ratio delay Ratio area/delaytimearea/delaytime XGXS293/7.52.70295/7.10.101.010.95 XFI5697/14.41144.323913/12.57.520.690.87 Scrambler736/3.810.46640/3.80.500.871 PCIE163/6.13.91190/6.60.141.171.08 T2Ethernet269/6.9113.89526/9.712.381.961.41 HM(7,4)255§/7.3§0.12§255/7.30.0811 HM(15,11)4232§/13.8§56.92§3279/13.21.940.770.96 *Prior work [14] implemented in OCaml.
27
2011/11/8ICCAD 201127 Experimental Results Comparison on decoder inexistence checking circuit (w/o decoder) [15]* time (s) Decosy time (s) XGXS_err2.170.01 XFI_err39.710.01 Scrambler_err3.960.08 PCIE_err2.940.01 T2Ethernet_err128.730.04 HM(7,4)_err1.350.01 HM(15,11)_err23.250.39 AD>60000.01 *Prior work [14] implemented in OCaml.
28
2011/11/8ICCAD 201128 Conclusions We presented a sound and complete approach to decoder synthesis An effective incremental SAT solving solution was proposed for decoder existence checking Craig interpolation was used for effective decoder generation Experiments showed robust and fast computation (with synthesis quality comparable to prior work)
29
2011/11/8ICCAD 201129 Thank You for Your Attention Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.