410 likes | 570 Views
HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK. DEPENDABLE SYSTEMS Vorlesung 4 Topological Testing Wintersemester 2000/2001 Leitung: Prof. Dr. Miroslaw Malek www.informatik.hu-berlin.de/~rok/zs. WHAT IS TOPOLOGICAL TESTING?. APPLICATION OF FORMAL GRAPH THEORY METHODS TO
E N D
HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK DEPENDABLE SYSTEMS Vorlesung 4 Topological Testing Wintersemester 2000/2001 Leitung: Prof. Dr. Miroslaw Malek www.informatik.hu-berlin.de/~rok/zs DS - IV - TT - 1
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 - 2
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 - 3
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 - 4
METHODS OF TOPOLOGICAL TESTING (1) • HAMILTONIAN: Testing the nodes • Switch Model • Graph Model DS - IV - TT - 5
METHODS OF TOPOLOGICAL TESTING (2) • EULERIAN: Testing the edges DS - IV - TT - 6
METHODS OF TOPOLOGICAL TESTING (3) • TRAVELING SALESMAN PROBLEM (TSP): • CHINESE POSTMAN PROBLEM: DS - IV - TT - 7
METHODS OF TOPOLOGICAL TESTING (4) • PARTITIONING: • COVERING: DS - IV - TT - 8
METHODS OF TOPOLOGICAL TESTING (5) • PATH COVERING: • DOMINATING SET: DS - IV - TT - 9
METHODS OF TOPOLOGICAL TESTING (6) • BROADCAST ANDCOLLECTION SPANNINGTREES: • COLORING PROBLEM: DS - IV - TT - 10
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 - 11
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 - 12
TESTING OF MULTISTAGE INTERCONNECTION NETWORKS (BANYANS) • An (f, L) SW-Banyan is an L level Multistage Interconnection Network having N (=fL) 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 - 13
A 2 x 2 SWITCH • FAULT MODEL: • Stuck-at and bridge faults on data and control lines • Routing faults • Conflict resolution DS - IV - TT - 14
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 - 15
PARALLEL TESTING OF DATA PATHS • Two tests are sufficient to detect any number of s-a-afaults on the data part of the vertices • 2 f tests are sufficient to detect any number of multiple s-a-afaults on the data part of the edges • Fault location: • Vertices s-a-a: 2f tests can locate up to f-1 faults • Edges s-a-a: 2f + log L tests DS - IV - TT - 16
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 - 17
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 - 18
TESTING THE CONTROL AND PRIORITY LOGIC (2) 2 x 2 switch: T2 = 8 4 x 4 switch: T4 = 624 8x8 switch: T8 = 43,046,721 • In the case of round-robin priority, tests should be repeated for every priority state DS - IV - TT - 19
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 • f2f-1 tests are sufficient to test the conflict resolution capabilities of a switch in the case of fixed priority and f2fftests are sufficient in the case of round-robin priority DS - IV - TT - 20
Finite State Machine • Finite State Machine of the ALB of a 4 x 4 switch using round-robin priority DS - IV - TT - 21
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 - 22
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 - 23
TESTING OF HYPERCUBES (1) PROPERTIES OF HYPERCUBES: • Distributed-memory, message-passing multiprocessor • N = 2N processors consecutively numbered by binary integers from 0 through 2N - 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 - 24
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 - 25
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 SnSn-1 …… S2S1 Destination dndn-1 …… d2d1 Bit wise EXOR xnxn-1 …… x2x1 where xi = Si + di for i = 1, ……, n • Those values of i for which xi = 1 indicate the dimension that must be traversed to transfer a message from source to destination DS - IV - TT - 26
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 - 27
TESTING TECHNIQUE (1) • Partition circuit into node and edge disjoint Q2’s (or C4’s ) • 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 • Repeat for all ( ) partitions n 2 DS - IV - TT - 28
TESTING TECHNIQUE (2) • Number of node and edge disjoint Q2‘s in each partition = 2n-2where n is the dimension of the cube • There are nC2such partitions possible. All partitions are to be tested • Time is of the order of 0(n2) or 0(log2N) DS - IV - TT - 29
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 - 30
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 Qn into Q2’s as before. Within each Q2, only one node can be tested at a time DS - IV - TT - 31
Testing Contention of 3 on a Q3 (1) • Estimation of Test Time: • Time to test the hypercube with pseudoexhaustive test = Nn(2n-1-1)t 0(N2logN) DS - IV - TT - 32
Testing Contention of 3 on a Q3 (2) • IN FACT, TESTING MAXIMAL CONTENTION CAN BE DEFINED AS GRAPH COLORING OF G2 FOR Qn Q2n • T: 2 log2(n+1) COLORS ARE SUFFICIENT TO COLOR Q2n FOR Mn M2n • Five colors are necessary to color M2n DS - IV - TT - 33
EXAMPLES (1) • A HYPERCUBE DS - IV - TT - 34
EXAMPLES (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 - 35
[ ] n n n (i + 1) log é ù + 12 i C C 2 t 2 i i=3 Time • Time to test the hypercube with our tests = • For hypercube of dimension 10 (Q10)time to test for contention decreases from the range of about 7 min - 8 hours 40 min to 5 sec - 6.5 min, which results in about 80 times improvement DS - IV - TT - 36
EXAMPLES (3) DS - IV - TT - 37
EXAMPLES (4) DS - IV - TT - 38
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 DS - IV - TT - 39