0% found this document useful (0 votes)
4 views

Why is there coverage loss after multi-mode and Adaptive Scan insertion_

The document discusses coverage loss experienced after inserting multi-mode and Adaptive Scan in DFT Compiler, primarily due to additional logic that is untestable during ATPG. It provides solutions to address this issue, including generating incremental patterns in all test modes or excluding faults in the re-configuration logic from the fault list. The document also outlines specific steps to manage fault lists effectively in TetraMAX while maintaining coverage for essential logic.

Uploaded by

xylcool5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Why is there coverage loss after multi-mode and Adaptive Scan insertion_

The document discusses coverage loss experienced after inserting multi-mode and Adaptive Scan in DFT Compiler, primarily due to additional logic that is untestable during ATPG. It provides solutions to address this issue, including generating incremental patterns in all test modes or excluding faults in the re-configuration logic from the fault list. The document also outlines specific steps to manage fault lists effectively in TetraMAX while maintaining coverage for essential logic.

Uploaded by

xylcool5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

2021/12/10 下午1:19 Why is there coverage loss after multi-mode and Adaptive Scan insertion?

(/s/) Cases (/s/case-list) STARs (/s/star-list) Articles (/s/knowledge) Help (/s/help-info)

Dec 11, 2019 • Knowledge

Title
Why is there coverage loss after multi-mode and Adaptive Scan insertion?

Description
Why is there coverage loss after multi-mode and Adaptive Scan insertion?
Question:

When I insert either multiple scan modes or Adaptive Scan into my design with
DFT Compiler, I find that TetraMAX reports lower coverage across all modes than
if I had just inserted simple scan chains. For Adaptive Scan, I have tried removing
the faults in the compressor and decompressor logic (CODEC), but this makes no
difference.

Why is TetraMAX reporting lower coverage, and how can I correct this?

Answer:

https://solvnetplus.synopsys.com/s/article/Why-is-there-coverage-loss-after-multi-mode-and-Adaptive-Scan-insertion-1576091156383 1/4
2021/12/10 下午1:19 Why is there coverage loss after multi-mode and Adaptive Scan insertion?

When using Adaptive Scan or multi-mode scan in DFT Compiler, logic is


added to the design to allow the chain architecture to change in each mode.

A common example of this is Adaptive Scan, which by default inserts 2 modes. One
mode applies to when the compression logic is active and you have many small scan
chains in the design. The other mode applies to when the compression logic is bypassed
and the short chains are linked together to form longer, uncompressed scan chains.

To allow for this chain re-configuration, DFT Compiler inserts logic to


control the re-configuration into the scan chains, and also in some cases
it inserts logic to convert the TestMode control pins into control signals
for the logic in the chains. For standard Adaptive Scan, the logic is simply
MUXes or equivalent in the chains, driven directly from the TestMode signal.

The re-configuration logic is held in a fixed state during ATPG in a particular


'test mode' by constraining the TestMode signals. The result is that some of this
logic is untestable, which is the reason the coverage report is lower than if the
design just had single mode scan chains.

You can resolve the coverage issue in two ways:

A. Generate incremental patterns in all test modes to catch all faults in the
re-configuration logic. Normally just the chain test (pattern 0) in the other
modes will be enough to catch the faults.

B. As the re-configuration logic is not functional logic, you may simply want
to exclude faults in this logic from the fault list. For Adaptive Scan in
particular, for production testing you may only ever use the compression mode.
In this case, even if there were a fault in the logic in 'bypass' mode, the
functional logic can still be fully tested, and the device will be fit for use.

If you choose to follow option B above, and drop the faults from the fault list,
to simplify identification of the test logic, you can use the following steps:

1. In DFT Compiler, before running 'insert_dft', change the default instance


names given to any new logic inserted:

set compile_instance_name_prefix DFTC_LOGIC_

2. Additionally, to ensure the above prefix is only assigned to the test logic
added, disable optimization of the functional during scan insertion:

set_dft_insertion_configuration -synthesis_optimization none

3. After running 'insert_dft', change the prefix name back to the normal setting
and run an incremental compile to fix timing as a separate step:

set compile_instance_name_prefix U
compile -scan -incremental ...

4. In TetraMAX, you can now use the prefix to find and remove all faults related
to the test logic inserted. If using TetraMAX in Tcl mode (tmax -tcl), then you
can add something similar to the following to omit the faults on the logic:

foreach_in_collection pin [get_pins -filter "pin_pathname=~DFTC_LOGIC_*"] {


add_nofault [get_attribute $pin pin_pathname] -stuck 01 }

https://solvnetplus.synopsys.com/s/article/Why-is-there-coverage-loss-after-multi-mode-and-Adaptive-Scan-insertion-1576091156383 2/4
2021/12/10 下午1:19 Why is there coverage loss after multi-mode and Adaptive Scan insertion?

The limitation of the above steps is that you can end up removing faults related
to ALL the test logic inserted, including lockup latches, Autofix logic, etc.,
so you may want to be selective on the faults removed, and simply use the prefix
name as a guide to simplify this task.

An example of this would be the situation where you have inserted Adaptive Scan
and want to exclude the reconfiguration logic from the fault list, but keep faults
for the compression logic in the fault list. In this case, the commands to do
this in Tcl mode in TetraMAX would be:

set reconfig_pins [remove_from_collection \


[get_pins -filter "pin_pathname=~DFTC_LOGIC_*"] \
[get_pins -filter "pin_pathname=~*compressor*"]]
foreach_in_collection pin $reconfig_pins {
add_nofault [get_attribute $pin pin_pathname] -stuck 01 }

DFT MAX names the compression logic '*U_compressor' and '*U_decompressor', so


the above Tcl will remove this logic from the list of pins not to fault.

Workaround

Product L1
TestMAX ATPG (/s/detail/01t1U000003IY0ZQAW)

Additional Product(s)
TestMAX DFT (10241413)

Article Number
000010265

Last Published Date


12/11/2019, 12:23 PM

Article Record Type


How To

URL Name
Why-is-there-coverage-loss-after-multi-mode-and-Adaptive-Scan-insertion-1576091156383

Was this article helpful? 2 0

Recommended Articles

Why is There a Coverage Loss When "What-If" Analysis is Applied to Test Points?

Implementation of an Adaptive Scan Mode and a Custom Scan Mode Having Different Number of
Top-Level Scan Ports
https://solvnetplus.synopsys.com/s/article/Why-is-there-coverage-loss-after-multi-mode-and-Adaptive-Scan-insertion-1576091156383 3/4
2021/12/10 下午1:19 Why is there coverage loss after multi-mode and Adaptive Scan insertion?
Top Level Scan Ports

Why Do I See the ScanEnable Signal in the Fanin Cone to the D Pin of a Register?

Adaptive Scan and Shared Scan-Ins Cause V8 DRC Violations

Hierarchical Discrete Tools Reference Flow

Related Files (0)

Article Com... (0) (/s/relatedlist/ka01U000001dlTkQAI/Article_Comments__r) New

Saved Articles (0) (/s/relatedlist/ka01U000001dlTkQAI/Saved_Articles__r) New

https://solvnetplus.synopsys.com/s/article/Why-is-there-coverage-loss-after-multi-mode-and-Adaptive-Scan-insertion-1576091156383 4/4

You might also like