Bus Encoding to Prevent Crosstalk Delay Bert Victor and Kurt Keutzer ICCAD 2001
2 Outline Motivation Related Work Analysis Implementation Conclusion
3 Motivation Crosstalk effect Crosstalk problems Delay variation Energy consumption Function inaccuracy Goal Minimizing crosstalk effect without increasing too much area overhead
4 Related Work Spacing Increasing space between wires Area almost double Shielding Inserting a spare wire between wires Area almost double Wire permutation Rearranging the order of the wires Inflexibility
5 Related Work Skewing signal timing Making a small shifting time between wires Power consumption Bus encoding techniques Using more bits to present original data
6 Analysis Unpruned Code with Memory Pruned Code with Memory Memoryless Code
7 Basic Model Data codeword codebook
8 Unpruned Code with Memory If the codebook depends on previous data, the encoding has memory. Information bits = log 2 (minimum num of valid codewords) = log 2 (minimum codebook size) Sender Encoder data Decoder codeword codebook memory data codebook memory bbn
9 Connection Graph
10 Degree of Class 1 Codeword 3-bit class 1 codeword 010 and 101 d n = d n-1 + d n n n-2
11 Degree of General Codeword d 1 (4) = 13d 1 (3) = 8 d = 13 x 8 = 104
12 Performance Minimum codebook size occurs on class 1 codeword codeword bits data bits unencoded shielded coded
13 Coding Terminology with Memory
14 Coding Terminology with Memory codebook
15 Pruned Code with Memory The previous result was limited by the connectivity of class 1 codes If never transition to a class 1 code throw the class 1 codeword out of the codebooks
16 Purning carve minimum connectivity through pruning class sizes (before pruning) with class numbers given Limiting degree
17 Performance
18 Memoryless Code Require a single, unchanging coodbook Every codeword in the codebook is crosstalk free to each other To find the largest clique The same as the class 1 codeword!!
19 Performance codeword bits symbol bits unencoded best code memoryless shielded
20 Implementation
21 Partial Coding
22 Conclusion Analytic expressions for the connectivity of a codeword were presented. Algorithms for generating the best possible codes with and without memory were presented.