Cellular Automata (CA) - Theory & Application SUSMITA SUR KOLAY P. PAL CHAUDHURI
I BACKGROUND Contribution Time Frame Major Players Early 50’s J. Von Neuman, E.F. Codd, Henrie & Moore , H Yamada & S. Amoroso Early 50’s Modeling biological systems - cellular models ‘60s & ‘70s A. R. Smith , Hillis, Toffoli Language recognizer, Image Processing ‘80 s S. Wolfram ,Crisp,Vichniac Discrete Lattice,statistical systems, Physical systems IIT KGP, Group Additive CA, characterization,applications ‘87 - ‘96 ‘97 - ‘99 B.E.C Group GF (2p) CA
II CA PRELIMINARIES - GF(2) CA 2.1 CA Structure and Rule (b) CA RULE : (a) 4-Cell Group CA Structure qi t+1 = f (q i-1t , q it , q i+1 t ) Q Cell 0 Cell 1 Cell 2 Cell 3 D Non-Group CA structure Neighborhood State 2 1 3 111 110 101 100 011 010 001 000 (90) 0 1 0 1 1 0 1 0 (150) 1 0 0 1 0 1 1 0
( c) XOR/ XNOR Rule List With XOR With XNOR Rule 60: qi t+1 = q i-1 t (+) qit Rule 90: qi t+1 = q i-1 t (+) q i+1 t Rule 102: qi t+1 = qit (+) q i+1 t Rule 150: qi t+1 = q i-1 t (+) qit (+) q i+1 t Rule 170: qi t+1 = q i+1 t Rule 204: qi t+1 = qit Rule 240: qi t+1 = q i-1 t 195: qi t+1 = q i-1 t (+) qit 165: qi t+1 = q i-1 t (+) q i+1 t 153: qi t+1 = qit (+) q i+1 t 105: qi t+1 = q i-1 t (+) qit (+) q i+1 t 85: qi t+1 = q i+1 t 51: qi t+1 = qit 15: qi t+1 = q i-1 t
2.2 State Transition Behavior Non-Group CA structure & behavior (a) Group CA structure state transition behavior 5 10 4 11 6 9 7 2 13 14 15 3 13 5 1 1 3 6 11 12 8 2 10 9 15 14 4 12 1 1 0 0 0 1 0 1 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 1 0 7 8 T = T = Ch. Poly : x4 + x2 + 1 Ch. Poly :x4 + x3 + x2 Min Poly : x2(x2+x+1) Min Poly : (x2 +x+1)2 No. Of Pred = 2 , Height = 2. No. Of Pred = 2 Cycle Structure = 1 , 1(3) , 2(6) Cycle Structure = 1(3) , 1(1)
Complete Characterizations A few important theorems for characterization on height ,cycle length & no. of components. Th1 : A CA is a group CA iff the determinant det T = 1, where T is the characteristic matrix for the CA. Th2 : A group CA has cycle lengths of p or factors of p with a non-zero starting state iff det[Tp (+) I] = 0 Th3 : If d is the dimension of the null space of the characteristic matrix of a non-group CA, then the total numbers of predecessors of the all-zero state(state 0) is 2d Th4 : If the number of predecessors of a reachable state and that of the state 0 in a non-complemented CA, are equal. Th5 : An exhaustive CA and exhaustive LFSR are isomorphic to each other.
2.4 List Of Applications VLSI Testing Data Encryption Error Correcting Code Correction Testable Synthesis Generation of hashing Function
CA for generation of exhaustive Patterns 0 1 0 0 1 1 1 0 0 1 0 1 0 0 1 1 A 4-cell CA : <90 150 90 150> T = Ch. Poly : x4 + x + 1 Factors : (1 0 0 1 1) Minimal Polynomial : (1 0 0 1 1) Rank of matrix = 4 1 3 6 Depth Of CA = 0 5 2 11 Null Space = ( 0 0 0 0 ) 13 9 7 Cycle Structure : 1(1) , 1(15) 14 4 8 Determinant = 1 15 12 10
CA for Generation of exhaustive Two Patterns STG 0 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 S0 0 1 0 0 0 0 S0 S2 = 0 1 1 1 0 0 S1 S4 0 0 0 1 0 1 S2 S3 S4 S5 T = 1 3 45 50 6 State Pattern (tapping 0,2,4) 000001 000 000011 001 000110 001 …….. ….. 59 11 000 S0 100 S1 = 010 S2 + 110 S3 000 S4 011 S5 ………... Sv = Tv X Sv + T0 X S0
Th. For the given characteristic matrix of a 2n-cell CA and a set of n visible bits , an exhaustive 2-pattern generation is ensured if the rank of the corresponding obscurity matrix is n. Proof : An arbitrary two-pattern Sv->Sv is obtained iff the following equation is satisfied. Sv = Tv X Sv + T0 X S0 => T0 X S0 = Sv - Tv X Sv = X where X is the n-dimensional vector (Sv - Tv X Sv). A solution for S0 exists iff rank [T0] = rank [T0 X] and is ensured if rank [T0] = n. Hence the theorem.
2.7 Generalization Lemma : A 2n-cell null boundary CA with any combination of Rule 90 & 150 over the cell is capable of generating exhaustive two-patterns at the cells 0,2,4,…,(2n-1) Proof : The characteristic matrix of a 2n-cell CA with an arbitrary combination of Rule 90 (I.e. gi = 0) & Rule 150 (gi = 1) is given by : g0 1 0 …. 0 1 g1 1 …. 0 0 1 g2 ….0 …………… 0 0 0 ..1..g2n-1 1 0 …. 0 1 1 …. 0 0 1 1 .. 0 ……….. 0 0 …. 1 T = Here, T0 = Obviously, Rank(T0) = n. Hence, the lemma is proved by the prev. th.
2.8 ILLUSTRATION Consider a six-cell null boundary CA with rule vector (90, 150, 150, 150, 90, 150). The next state function of this is represented by VISIBLE BITS : <0,2,4> S0 S1 S2 S3 S4 S5 S0 S1 S2 S3 S4 S5 0 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 Tv = 0 1 0 0 0 0 = 1 0 0 T0 = 1 1 0 0 1 1 Or, in general, S = T X S Since, T0 has rank n=3, the CA generates exhaustive two patterns on 0,2,4 bit positions.
CA Based Test Pattern generator Exhaustive two patterns - All possible transitions on Primary inputs (PI’s). For circuits with large number of PI’s, tune CATPG for the CUT For a CUT with n PI’s , use k-cell GF(2p) CA where n <= kp Fix the value of p Define the CA structure that suits best for testing the CUT. p 1 2 .. 2 i k K-cell GF(2p) ….. 1 q C U T
GF(2p) CA based CATPG and Experimental results on synchronous circuit. TEST RESULTS WITH UNIFORM CA :
Table 2 : Test Results with Hybrid CA
CA based Response Evaluator CUT OUTPUT : 7-value logic <000> , <111>, <0^1> , <1V0>, <0X0>, <1X1>, <0X1> C U T C A R E For n PO CUT, CARE : n cell GF(23) CA - Maximum Length GF(23) CA - minimum aliasing. - Compare with Golden signature - Diagnosis ?
DIAGNOSIS CUT is divided into k number of blocks ….. …... C A R E ------------------ C A R E CA Classifier Faulty Block
DIAGNOSIS (Contd.) Introduce a fault on jth component /gate of the ith block Bi and generate the signature Bij. Design the CA-based classifier based on the given classes. {{B1},{B2},……….{Bi},…….} With Bij as the input, the classifier identifies the faulty block Bi.
Illustration 4 3 2 1 Wire instance class G3,G7 AND2_0 1 G2 NAND2_2 G1 base & NAND2_0 G4 base & NAND2_4 G2 base & NAND2_0, 3 INV1_0 G5 base & NAND2_5 G4 NAND2_5 G1 NAND2_5 4 G6 BUF1_0 G1 G4 G6 G2 INV1_0 NAND2_4 G4 NAND2_0 G5 NAND2_5 G8 3 BUF1_0 G1 G11 G7 NAND2_3 2 1 G2 G10 G9 G3 NAND2_2 AND2_0 Fig : t4.v Test Vectors : G1 <111> G2 <1V0> G3 <1V0> ; G1 <111> G2 <000> G3 <0^1> ; G1 <1V0> G2 <0^1> G3 <111> ;
Faults - detected and diagnosed GOLDEN SIGNATURE : 10011 Faulty Signature Faults 00100 BLOCK 3 [G1(base),G2(base)] 10000 BLOCK 3 [G1(NAND2_0)] 00011 BLOCK 3 [G2(INV1_0),G5(base)] 01100 BLOCK 3 [G5(NAND2_4)] 1 1 2 2 CA CLASSIFIER 3 3 4 4
Why Cellular Automata ? Regular, Modular, Cascadable structure. Use of GF(2p) CATPG with p and CA structure tuned to match the test requirement of the circuit. (Implemented for synchronous circuits with promising results) CA Toolkit has been developed based on the Theory of Extension Field and analytical study of GF (2p) CA state transition behavior. The Toolkit enables identification of cycle structure of the CA. Design a CA, to realize a given state transition behavior Diagnosis tool based on Multiple Attractor CA to diagnose the faulty block within the CUT.
THANK YOU ALL !!