Register-transfer level test generation and test synthesis strategies for data-flow data-paths
Sasi Snigdha Yadavalli, Sudhakar M. Reddy · 1996
This thesis presents a novel test synthesis methodology that uses symbolic Register-Transfer Level (RTL) test generation and RTL fault-simulation using a new symbolic value system presented here. The tests obtained are used to synthesize controllers for testability of data-paths. The symbolic fault-simulator maintains and propagates dependency information at each port in the specification using a new construct called Dependency Set. Dependency Set of a node at any time-frame contains all primary input values that effect the current value on that port. A Dependency Set Algebra is used to compute Dependency Sets at each node during implication of good-circuit values. The fault-simulator simulates a data-path under the control of an accompanying Finite State Machine (FSM) controller that dictates its operation sequence. The symbolic fault-simulation is followed by symbolic test generation that is attempted under the original Control-Data-Flow Graph (CDFG) constraints to obtain symbolic tests required to test modules for which the fault-simulator failed to detect a fault. The symbolic test generator uses a backtracking mechanism called indexed back-tracking in order to try several decision alternatives at each decision point whenever there is a conflict at a port. The above mentioned phases are followed by a symbolic test generation procedure under no controller constraints that attempts test schedule generation for any modules for which symbolic tests could not be obtained under controller constraints. The test schedule generation procedure obtains alternate test control sequences to render these modules testable and also obtains the primary input symbolic values that translate into test patterns. A data-path controller capable of working in several modes is considered for the purpose of test synthesis. The FSM controller is designed using the test control sequences and the original functional control sequence to perform normal functional operation and to also work in one or more test modes during test application. Several styles of data-path controller designs are discussed and compared through experimental results.