7.troublesht Low Cov
7.troublesht Low Cov
7.troublesht Low Cov
Module 7
Troubleshooting Low
Test Coverage
Objectives
7-2 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Sources of Low Coverage
A fault site must be
Controlled
Observed
Differences must be seen between Good and Fault
simulations.
Too many AU (Atpg_untestable), UC (Uncontrolled), UO
(Unobserved), and AAB (Atpg_aborted) faults cause coverage
losses.
7-3 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Troubleshooting Areas of Low Coverage
Troubleshoot areas of low coverage:
Assess the problem.
– Determine the larger design blocks.
– Determine which blocks are reporting low coverage.
– Determine untestable fault categories.
Determine why ATPG classified faults as untestable.
– Determine why faults are classified ATPG Untestable (AU).
– Determine why faults are classified as Unobserved (UO) and
Uncontrolled (UC).
Analyze the design fault by fault.
– Use DFTVisualizer or applicable commands and options.
Debug the design.
7-4 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Use DFTVisualizer to Troubleshoot Low Coverage
7-5 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
DFTVisualizer Browser Window
Browser controls
Click the tc button int the toolbar or choose Data > Coverage Data > Test Coverage from the menu.
7-7 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Coverage Metrics in the Browser Window: Hierarchy Tab
7-8 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Coverage Metrics in the Browser Window: Hierarchy Tab
(Cont.)
Coverage
DRC by Test Loss Fault ATPG
category Coverage Coverage Effectiveness
7-9 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Coverage Metrics in the Browser Window: Library Tab
7-10 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Coverage Metrics in the Browser Window: Clocks Tab
Clocks are displayed in
descending order of test
coverage.
7-11 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Signals Window
TOP/
90% 20%
7-13 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Assessing the Problem (Cont.)
Instance Pathname
Fault Grouping
7-15 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Faults Classified as ATPG Untestable
ATPG untestable faults (AU) are caused by any one of the
following:
Constraints (pin, cell and ATPG).
– Constraints prevent Tessent FastScan from generating a pattern to
detect the fault.
Non-scan flip-flop and insufficient clock sequential depth.
Blocking conditions from black boxes, other tied or constrained
logic.
Insufficient processing resources given to ATPG with the abort
limit.
An AU fault is testable because it has not been proven
untestable—only undetected.
7-16 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Faults Classified as Undetectable
Undetected faults cannot be proven untestable or AU:
Uncontrollable (UC).
– Faults sites that cannot be set to a known value (0,1).
Unobservable (UO).
– Faults effects that cannot be propagated to an observe point.
7-17 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Aborted Faults
Belong to the Undetected (UD) fault class.
May be caused by a high number of UC or UO faults.
Tessent FastScan terminates effort to find patterns after a certain
amount of iterations.
Certain faults may be detected if abort limit is increased.
– Use the SET Abort Limit command to increase abort limit OR
– Use ‘create pattern’ to increase the abort limit automatically.
Use REPort ABorted Faults to display and identify the
cause of aborted faults.
7-18 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Addressing Aborted Faults
7-19 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Addressing Aborted Faults (Cont.)
7-20 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Addressing Aborted Faults (Cont.)
Set a higher abort limit if there are many aborted faults.
SETUP> SET ABort Limit 300
The three additional fields are cumulative and broken down as follows:
5/6/3
Aborted Faults
Redundant Faults
7-21 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Bus Contention
Bus contention causes uncontrollable (UC) faults.
Tessent FastScan generates patterns to detect UC faults.
If pattern simulates effectively, the fault becomes detected by simulation (DS).
If pattern is rejected, the fault remains UC and other patterns may detect it.
By default, patterns will be rejected if pattern simulation results in bus
contention.
// Warning: There were 1 BUS gates which may have possible contention. (E10)
// ATPG bus checking results: pass=0, bidi=0, fail=1, abort=0, CPU time=0.00.
// command: rep drc rule E10
// Warning: BUS gate /Y (9) has possible contention on drivers 8 and 7. (E10-1)
7-22 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Addressing Bus Contention
Avoid contention during pattern generation:
SETUP> SET COntention Check ON -ATPG
– Tessent FastScan generates patterns that force buses to non-
contention.
– If pattern does not detect fault, it becomes AU.
– Tessent FastScan stops the pattern generation process if there is a
contention that cannot be fixed.
– Note: You do not need to use the –ATPG switch if using ATPG Expert
to create patterns.
Use create patterns and let the tool choose the best
contention check for your design.
Analyze what caused the contention:
SETUP> ANAlyze BUs <gate_id#> -Prevention |
-Exclusivity | -Zstate
– Prevention—ability of the tool to attain a state of non-contention.
– Exclusivity—allows only one driver to force a signal onto a bus.
This is the default.
– Zstate—Specifies to the tool to analyze the bus gate for its ability to
attain a high-impedance (Z) state.
7-23 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Addressing Bus Contention (Cont.)
Specify to the tool to perform contention checking:
SET COntention Check CAPture_clock –CATpg
–VVerbose -Error
Stops ATPG process on a 32 bit or 64 bit pattern.
Displays patterns failing due to contention.
CAPture_clock performs bus contention checking for the
complete cycle
-CATpg tells the tool to use additional ATPG effort during
pattern generation.
– Must use with CAPture_Clock.
-VVerbose reports every reason for each pattern rejected.
-Error enables you to debug contention by displaying an error
message and stopping the simulation if contention occurs.
Note: You do not need to use the -CATpg switch if using ATPG
Expert to create patterns.
7-24 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Types of Bus Contention
Determine type of contention:
E4 violations:
– Contention during procedures.
– Often due to unknown values at bidi pins.
– Usually fixed by force <bus> Z in test_setup and load_unload at event
0.
E10 violations are contention after the scan chain is loaded.
Use the SET DRc Handling E10 Atpg_analysis command:
– Determines buses that do not cause contention.
– Simplifies pattern generation to avoid bus contention.
7-25 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Debugging Bus Contention
The following transcript is an example of a dofile used for
debugging bus contention:
ATPG> REPort DRC Rule E10
ATPG> ANAlyze Bus <gate_id#>
( Use various arguments with this command to determine
source of E4 or E10 contentions.)
ATPG> SET GAte Report CONstrain_value
ATPG> REPort Gates <gate_id#>
(Select gate violating E4 or E10 rule.)
7-26 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Debugging Bus Contention With DFTVisualizer
The problem lies with the two tri-state
drivers (TSD), which can be enabled
simultaneously, thus enabling the
possibility of driving different values.
7-27 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Debugging Bus Contention With DFTVisualizer (Cont.)
Use DFTVisualizer to help trace
to the source of the E10 violation.
7-28 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
TieX, Tie0, Tie1 (D5)
A D5 violation occurs when memory elements are not
identified as part of a scan chain.
Non-scan elements are modeled as tie-X, unless set to a
stable value (Tie0, Tie1).
If too many TieX gates, increase the clock sequential depth.
SETUP> SET PAttern Type -Sequential 2
– The nonscan elements will then be treated as TieX, Tie0, Tie1, Init-X,
Init-0, or Init-1. Refer to DRC rule check D5.
// ---------------------------------------------------------------------------
// 143 non-scan memory elements are identified.
// ---------------------------------------------------------------------------
// 8 non-scan memory elements are identified as TIE-0. (D5)
// 10 non-scan memory elements are identified as TIE-1. (D5)
// 1 non-scan memory element is identified as TIE-X. (D5)
// 3 non-scan memory elements are identified as INIT-0. (D5)
// 3 non-scan memory elements are identified as INIT-1. (D5)
// 118 non-scan memory elements are identified as INIT-X. (D5)
// ---------------------------------------------------------------------------
7-29 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Fault-By-Fault AU Debugging: Set Gate Report Command
Use the SET GAte Report COnstrain_value command to
display constrained and forbidden values.
The constrained value report provides three fields:
CV
FV
B
“B” blocked no path to propagate fault, “-” not blocked
CV/FV/B
Constrained Value
Forbidden Value
7-30 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Set Gate Report Constrain_Value Command in
DFTVisualizer
7-31 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Fault-By-Fault Debugging: Report Faults Command
Use the Report Faults -Class class_type command to
narrow focus of the report to the fault type you want.
Can be used with any fault type.
Use it as a starting point to analyzing faults.
1 UC /p1/fpu1/u4/U2711/Y
0 EQ /p1/fpu1/u4/U2711/A1
0 EQ /p1/fpu1/u4/U2711/A0
0 EQ /p1/fpu1/u4/U3534/Y
1 EQ /p1/fpu1/u4/U3534/A1
1 EQ /p1/fpu1/u4/U3534/A0
1 EQ /p1/fpu1/u4/U1302/Y
1 EQ /p1/fpu1/u4/U1302/A1
1 EQ /p1/fpu1/u4/U1302/A0
1 EQ /p1/fpu1/u4/U3536/Y
0 EQ /p1/fpu1/u4/U3536/A
0 EQ /p1/fpu1/u4/U3535/Y
7-32 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Fault-By-Fault UC Debugging: Analyze Fault Command
7-33 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Analyze Faults in DFTVisualizer
Click the Analyze Faults button in the Task Manager window.
7-34 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Show Statistics in DFTVisualizer
1. Enter the path to the instance for which you want to obtain a report.
2. Click the Show Statistics button.
7-35 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Report Faults in DFTVisualizer
7-36 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Report Faults in DFTVisualizer (Cont.)
7-38 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Fault-By-Fault UC Debugging: Report Test Stimulus
Command
The REPort TEst Stimulus command displays stimulus
necessary for specified conditions:
Set
Write
Read
Identifies how to sensitize scan chains blockage points
Direct control in DFTVisualizer
7-39 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation
Lab 7: Troubleshooting Areas of Low Test Coverage
7-40 • Tessent: Scan and ATPG: Troubleshooting Low Test Coverage Copyright © 1999-2009 Mentor Graphics Corporation