HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

39
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 www.informatik.hu-berlin.de/~rok/zs

description

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 - PowerPoint PPT Presentation

Transcript of HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

Page 1: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 1

HUMBOLDT-UNIVERSITÄT ZU BERLININSTITUT FÜR INFORMATIK

DEPENDABLE SYSTEMS

Vorlesung 4

Topological Testing

Wintersemester 2000/2001

Leitung: Prof. Dr. Miroslaw Malek

www.informatik.hu-berlin.de/~rok/zs

Page 2: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 3: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 4: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 5: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 5

METHODS OF TOPOLOGICAL TESTING (1)• HAMILTONIAN: Testing the nodes

– Switch Model

– Graph Model

P 1 P2 P 3 P 4

Page 6: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 6

METHODS OF TOPOLOGICAL TESTING (2)

• EULERIAN: Testing the edges

Page 7: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 7

METHODS OF TOPOLOGICAL TESTING (3)

• TRAVELING SALESMAN PROBLEM (TSP):

• CHINESE POSTMAN PROBLEM:

A

4

B

1

C6D

3

E

1

4226

5

L3

L

L5

L1

L2

L6 4

Chinese Postman Tour: L1 L2 L3 L4L L6 L5 L4 5

Page 8: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 8

METHODS OF TOPOLOGICAL TESTING (4)

• PARTITIONING:

• COVERING:

Page 9: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 9

METHODS OF TOPOLOGICAL TESTING (5)

• PATH COVERING:

• DOMINATING SET:

Page 10: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 10

METHODS OF TOPOLOGICAL TESTING (6)

• BROADCAST AND COLLECTION SPANNING TREES:

• COLORING PROBLEM:

1

1

1

1

2

3

2 log N

Page 11: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 12: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 13: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 13

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

0 P1 P2 P3 P4 P5 P6 P 7

M M M M M M M M0 1 2 3 4 5 6 7

PP 0

Page 14: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

SW

8CTS DV DATA PARITY

11 11

11

Page 15: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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.

Page 16: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 17: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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)

Page 18: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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:

T f i1

f

if fi 1 f f

1

Page 19: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 19

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

Page 20: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

• f2f-1 tests are sufficient to test the conflict resolution capabilities of a switch in the case of fixed priority and f2ff tests are sufficient in the case of round-robin priority

Page 21: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 21

Finite State Machine

• Finite State Machine of the ALB of a 4 x 4 switch using round-robin priority

Page 22: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 23: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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!

Page 24: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 24

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

Page 25: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 26: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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 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

Page 27: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

Page 28: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 28

TESTING TECHNIQUE (1)

1. Partition circuit into node and edge disjoint Q2’s (or C4’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 ( ) partitionsn2

0000

0010

0110

0100 0101 11011100

11101111

100010010001

0111

0011 1011 1010

Page 29: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 29

TESTING TECHNIQUE (2)

• Number of node and edge disjoint Q2‘s in each partition = 2n-2 where 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)

Page 30: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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]

100 101

000 001

010 011

110 111

Page 31: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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 Qn into Q2’s as before. Within each Q2, only one node can be tested at a time

Page 32: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 32

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)

000 001

101

111110

010

100

011

Page 33: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 33

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

Page 34: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 34

EXAMPLES (1)

1. A HYPERCUBE

Q3 = 2 log 2

3

4=

Page 35: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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

M4 5

Page 36: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 36

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

log12nC2 +

n

i=3

niC 2

(i + 1) i ] t[

0 log 3 N

Page 37: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 37

EXAMPLES (3)

Q4 = 2 log 2

5 = 8

M7 = 5

Page 38: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

DS - IV - TT - 38

EXAMPLES (4)

Q4 = 2 log 2

5 = 8

1 2 3 4 5 1 2

3

5

2

4

1

3

4 5 2 3 41

5 1 2 3 4 5

3 4 5 1 2 3

2 3 4 5 1 2

4 5 1 2 3 4

1 2 3 4 5 1

M7 = 5

Page 39: HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK

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