DS - IV - TT - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK DEPENDABLE SYSTEMS Vorlesung 4 Topological Testing Wintersemester 2000/2001 Leitung: Prof. Dr. Miroslaw Malek
DS - IV - TT - 2 WHAT IS TOPOLOGICAL TESTING? APPLICATION OF FORMAL GRAPH THEORY METHODS TO TEST SYSTEMS WHOSE ORGANIZATION OR BEHAVIOR CAN BE DESCRIBED BY A GRAPH
DS - IV - TT - 3 TOPOLOGY OF A SYSTEM OBJECTIVE: –Given the topology of a system, minimize the test time TOPOLOGY OF A SYSTEM: –A graph description of a system that reflects either its physical organization or its behavior
DS - IV - TT - 4 DOMAINS OF APPLICABILITY BEHAVIOR: –Testing the Finite State Machine representation of a system, e.g., testing protocol conformance ORGANIZATION: –Use the organization of a system to be tested in an optimal fashion, e.g., use of Hamiltonians and Eulerians HIERARCHY: –Partitioning for parallel testing –System integration
DS - IV - TT - 5 METHODS OF TOPOLOGICAL TESTING (1) HAMILTONIAN: Testing the nodes –Switch Model –Graph Model
DS - IV - TT - 6 METHODS OF TOPOLOGICAL TESTING (2) EULERIAN: Testing the edges
DS - IV - TT - 7 METHODS OF TOPOLOGICAL TESTING (3) TRAVELING SALESMAN PROBLEM (TSP): CHINESE POSTMAN PROBLEM:
DS - IV - TT - 8 METHODS OF TOPOLOGICAL TESTING (4) PARTITIONING: COVERING:
DS - IV - TT - 9 METHODS OF TOPOLOGICAL TESTING (5) PATH COVERING: DOMINATING SET:
DS - IV - TT - 10 METHODS OF TOPOLOGICAL TESTING (6) BROADCAST AND COLLECTION SPANNING TREES: COLORING PROBLEM:
DS - IV - TT - 11 THE RUBIK'S CUBE OF TOPOLOGICAL TESTING Partitioning + Path Covering Hamiltonian + TSP Eulerian + CPP PMS RTL logic behavior organization hierarchy level graph concept type
DS - IV - TT - 12 APPLICATION EXAMPLES TESTING MULTISTAGE INTERCONNECTION NETWORKS (BANYAN) TESTING HYPERCUBES PROTOCOL TESTING USING FINITE STATE MACHINES –Uyar and Dahbura MEMORY TESTING –Hayes –Patel
DS - IV - TT - 13 TESTING OF MULTISTAGE INTERCONNECTION NETWORKS (BANYANS) An (f, L) SW-Banyan is an L level Multistage Interconnection Network having N (=f L ) inputs and outputs and using f x f switches This type of network has been used in ETL's Sigma I, Butterfly, IBM's RP3, TRAC, PASM and other computers
DS - IV - TT - 14 A 2 x 2 SWITCH FAULT MODEL: –Stuck-at and bridge faults on data and control lines –Routing faults –Conflict resolution
DS - IV - TT - 15 PROPERTIES OF BANYANS The system graph has a Hamiltonian and an Eulerian. –This property can be used to implement a serial (on-line) fault detection on nodes and edges. There exists f pair wise edge-disjoint test graphs, each with n disjoint paths between pairs of processors. –This property can be used to implement parallel (off-line) fault detection.
DS - IV - TT - 16 PARALLEL TESTING OF DATA PATHS Two tests are sufficient to detect any number of s-a- faults on the data part of the vertices 2 f tests are sufficient to detect any number of multiple s-a- faults on the data part of the edges Fault location: –Vertices s-a- : 2f tests can locate up to f-1 faults –Edges s-a- : 2f + log L tests
DS - IV - TT - 17 TESTING ROUTING Only f tests are needed to test the routing capabilities of the switches in the entire network Use the f edge- disjoint test graphs (f = 2)
DS - IV - TT - 18 TESTING THE CONTROL AND PRIORITY LOGIC (1) Objective: Test the correct behavior of the switches under any input pattern especially in case of contention on the outputs To test completely for control faults, every mapping of inputs to outputs has to be tested Number of tests for an f x f switch is:
DS - IV - TT - 19 TESTING THE CONTROL AND PRIORITY LOGIC (2) 2 x 2 switch: T 2 = 8 4 x 4 switch: T 4 = 624 8x8 switch: T 8 = 43,046,721 In the case of round-robin priority, tests should be repeated for every priority state
DS - IV - TT - 20 TESTING TECHNIQUE Test separately the Arbitration Logic Blocks (ALB), the Routing and Storage Blocks and the SELECT/DESELECT lines Design of the control part of a 4 x 4 switch f2 f-1 tests are sufficient to test the conflict resolution capabilities of a switch in the case of fixed priority and f 2 f f tests are sufficient in the case of round-robin priority
DS - IV - TT - 21 Finite State Machine Finite State Machine of the ALB of a 4 x 4 switch using round-robin priority
DS - IV - TT - 22 TESTING CONFLICT RESOLUTION IN THE ENTIRE NETWORK i-conflict i inputs requesting the same output in a switch Two tests are sufficient to produce an i-conflict and an (f-i)- conflict in every switch in the network independently of the number of levels 2-conflicts and 1-conflicts produced by the same test on all even numbered levels of the network
DS - IV - TT - 23 ESTIMATION OF TESTING TIME FOR THE SIGMA-1 COMPUTER SIGMA-1 interconnection network: L = 2 two levels 10 x 10 switches configured as 8 x 8's Round-robin priority Time assumed for traversal of the network and memory access: t = 120 ns Estimated testing time using a pseudoexhaustive method: ~20 hours Actual testing time: ~22.5 hours Estimated testing time using our method: 26 seconds OVER 3000 TIMES BETTER!
DS - IV - TT - 24 TESTING OF HYPERCUBES (1) PROPERTIES OF HYPERCUBES: Distributed-memory, message-passing multiprocessor N = 2 N processors consecutively numbered by binary integers from 0 through 2 N - 1 Each processor connected to all other processors whose binary tags differ from its own by exactly one bit Degree of each vertex = n Homogeneous
DS - IV - TT - 25 TESTING OF HYPERCUBES (2) Cube of each dimension is obtained by replicating the one of next lower dimension, then connecting corresponding nodes Partitioning into smaller sub-cubes is easy An example of a hypercube of dimension 4
DS - IV - TT - 26 ROUTING ON A HYPERCUBE At each stage, the routing scheme is simply to send the message to the neighbor whose binary tag agrees with the tag of the ultimate destination in the next bit position that differs between the sender and final destination Alternatively, Source S n S n-1 …… S 2 S 1 Destination d n d n-1 …… d 2 d 1 Bit wise EXORx n x n-1 …… x 2 x 1 where x i = S i + d i for i = 1, ……, n Those values of i for which x i = 1 indicate the dimension that must be traversed to transfer a message from source to destination
DS - IV - TT - 27 COMMUNICATION No shared memory Message-passing communication system Store-and-forward function at each node, e.g., a receiving processor checks the address of the message and reroutes the message if not intended for it
DS - IV - TT - 28 TESTING TECHNIQUE (1) 1.Partition circuit into node and edge disjoint Q 2 ’s (or C 4 ’s ) 2.Perform a ring test, i.e., each node sends a packet to the diagonal node, all in the same direction, first clockwise, then anti-clockwise 3.Repeat for all ( ) partitions n2n2
DS - IV - TT - 29 TESTING TECHNIQUE (2) Number of node and edge disjoint Q 2‘s in each partition = 2 n-2 where n is the dimension of the cube There are n C 2 such partitions possible. All partitions are to be tested Time is of the order of 0(n 2 ) or 0(log 2 N)
DS - IV - TT - 30 PARTITIONING A 3-CUBE First Phase: [000, 001, 011, 010] and [100, 101, 111, 110] Second Phase: [000, 001, 101, 100] and [010, 011, 111, 110] Third Phase: [000, 010, 110, 100] and [001, 011, 111, 100]
DS - IV - TT - 31 WHAT IS TESTED BY THE ABOVE TEST? All nodes All communication links All paths between any pair of processors TESTING CONTENTION: To test contention of two (a 2-conflict), partition Q n into Q 2’s as before. Within each Q 2, only one node can be tested at a time
DS - IV - TT - 32 Testing Contention of 3 on a Q 3 (1) Estimation of Test Time: Time to test the hypercube with pseudoexhaustive test = Nn(2 n-1 -1)t 0(N 2 logN)
DS - IV - TT - 33 Testing Contention of 3 on a Q 3 (2) IN FACT, TESTING MAXIMAL CONTENTION CAN BE DEFINED AS GRAPH COLORING OF G 2 FOR Q n Q 2 n T: 2 log 2 (n+1) COLORS ARE SUFFICIENT TO COLOR Q 2 n FOR M n M 2 n Five colors are necessary to color M 2 n
DS - IV - TT - 34 EXAMPLES (1) 1.A HYPERCUBE
DS - IV - TT - 35 EXAMPLES (2) 2.A MESH COMMERCIAL QUALITY TEST DEVELOPED FOR A MESH NETWORK IN SYMULT, STATE-OF-THE-ART MULTIPROCESSOR, REQUIRES CONSTANT NUMBER OF TESTS AND TEST TIME IS LESS THAN 2.5 ms, REGARDLESS OF THE SYSTEM SIZE
DS - IV - TT - 36 Time Time to test the hypercube with our tests = For hypercube of dimension 10 (Q 10 ) time to test for contention decreases from the range of about 7 min - 8 hours 40 min to 5 sec min, which results in about 80 times improvement log 12 n C 2 + n i=3 n i C2 (i + 1) i ] t [
DS - IV - TT - 37 EXAMPLES (3)
DS - IV - TT - 38 EXAMPLES (4)
DS - IV - TT - 39 CONCLUSIONS TOPOLOGICAL TESTING EXPLORES POWER OF GRAPH THEORY TO TEST –BEHAVIOR –ORGANIZATION –HIERARCHY –OF COMPUTER SYSTEMS AND NETWORKS EFFICIENT ALGORITHMS FOR TESTING MULTISTAGE NETWORKS AND HYPER-CUBES ACHIEVE OVER THREE ORDERS OF MAGNITUDE SPEEDUP WITHOUT COMPRO- MISING TEST COVERAGE