Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

COMPRESSION ASSIGENMENT

1) What is compression?
The compression is the mainly reduces the test data volume and test time,
compression achieves compression of scan test data by controlling a large number of
internal scan chains using a small number of scan channels.

2) Why need compression?


• To maintain high test quality and increase testability(coverage).
• Achieve high test compression of both test time and test data
• Have little or no impact on the functional design
• Add minimal test logic
• Easily fit into the design flow

3) Explain compression architecture with decompressor and compactor?

Decompressor —The decompressor block that is inserted between the external scan
channel inputs and internal scan chain inputs consists of a ring generator and a phase
shifter
LFSM
PHASR SHIFTER
LFSM (decompressor ring generator)
The ring generator is a unique linear finite state machine (LFSM) that is obtained by
applying a number of m -sequence preserving transformations to the canonical form
Phase Shifter
The phase shifter logic enables the ring generator to drive the large number of internal
scan chain inputs, and reduces the linear dependencies among bit streams supplied to
the scan chain inputs by displacing them by at least the longest chain length.
The XOR gates in the phase shifter are driven by a limited number of ring generator
stages to reduce the propagation delay.
The XOR gates in the phase shifter can be restricted to utilize a subset of the ring
generator stages. Such modularity is helpful in significantly reducing the routing
congestion when a large number of scan chains need to be driven by the decompressor
Compactor —The compactor resides between the core scan chain outputs and the
channel outputs connected to the tester. It primarily consists of spatial compactor(s)
and gating logic
The compactor block that is inserted between the internal scan chain outputs and
external scan channel outputs is composed of XOR tree-based spatial compactors and
selective masking logic
4) Write internal diagram of Decompressor?

5) Define compression ratio? How do you decide compression ratio?


Compression Ratio: = Internal chains/External Channels,
External channels number get form the tester team, Internal scan chains number based
on the compression ratio, because of when compression ratio is increase number of
scan chains also increases.
Ex: compression ratio =70%
External channels =5
Compression ratio =internal scan chains / external channels
70=internal scan chains / 5
Internal scan chains =350
the compression ratio we have to take ideal ratio like change to compression ratio
50X,60X,70X,80X,90X
6) What is X-Masking? Why we need X-masking?
When any scan cell gives the X value is output, it is effect to another scan cell
output to avoid the X value to use X-masking
One common problem with different compactor strategies is handling of Xs (unknown
values). Scan cells can capture X values from unmolded blocks, memories, non-scan
cells, and so forth.
Assume two scan chains are compacted into one channel. An X captured in Chain 1
will then block the corresponding cell in Chain 2. If this X occurs in Chain 1 for all
patterns, the value in the corresponding cell in Chain 2 will never be measured. This is
illustrated in Figure where the row in the middle shows the values measured on the
channel output
The tool records an X in the pattern file in every position made unmeasurable as a
result of the actual occurrence of an X in the corresponding cell of a different scan
chain in the same compactor group. This is referred to as X blocking

7) If keep on increasing compression ratio, what is the impact?


Compression Ratio: = Internal chains/External Channels,
the compression ratio we have to take ideal ratio like change to compression ratio
50X,60X,70X,80X,90X then with repeat to patterns and scan chains also increase but
one reaches good coverage will stops then it wiil be decrease because of more
patterns takes to rooting congestion
Ex: Channels number get from the tester 5 channel available
Channels sharing across the EDT
Dedicated Channel for EDT
Ratio: - Ideal compression ratio from the tool vendors
External Channels: - ATE or functional Design
Analyze compression command use in dofile then you get how much percentage
coverage of compression it will shows in log files.
Channels Compression Internal Coverage Patterns Run times
ration scan chains
5 50 X 250 97% 5000 3 hours
5 60 X 300 98% 6000 4 hours
5 70 X 350 98.5% 7000 4.5 hours
5 80X 400 98.2% 9000 6 hours
5 90X 450 98% 11000 8 hours

8) Why need decoding logic?

The decoding logic used for masking of the X-value in the compactor, The
mask code is then parallel-loaded into the mask hold register, where the decoder mode
bit determines whether the basic decoder or the XOR decoder is used on the mask
code.
The basic decoder selects only one scan chain per compactor. The basic decoder
is selected when there is a very high rate of X values during scan testing or during
chain test to allow failing chains to be fully observed and easy to diagnose.
The XOR decoder masks or observes multiple scan chains per compactor, depending
on the mask code. For example, if the mask code is all 1s, then all the scan chains are
observed.
The decoder output is shifted through a multiplexer, and each bit drives one input on
the masking AND gates in the compactor to either disable or enable the output,
depending on the decoder mode and bit value.
9) Importance of EDT_CLOCK, EDT_UPDATE and EDT_BYPASS?
EDT clock: - EDT clock shouldn’t share with scan clock or RAM clock because Scan
clock shouldn’t pulse during load and unload, edt clock is different is use to only edt
blocks like decompressor, compactor, controller, bypass.
EDT Update: - When EDT update is 1, compression Engine is on and also it will reset
Ring generator
EDT bypass:- EDT Bypass is 1, then it is in Bypass mode. EDT bypass is 0 then it is
compression mode. With the help of mux logic, bypass decompression and compactor

10) Write waveform in terms of edt_clk, scan_clk, edt_update, scan_enable

PART - 2
1) What is the reason for increase in pattern count for compressed mode?
In compressed mode edt logic is apply to scan chains, in compression mode is
use to reduce test time and test data volume, to archive the best coverage compression
ratio will increase due to this reason scan chain also increase, when scan chains are
increase automatically number of pattern are increase but in normal mode scan chain
are low compare to compressed mode that why number of pattern count are in increase
in the compressed mode.
2) How to decide EDT channel count?
The number of EDT channel are decide by how many pin are available for the
test purpose in chip, the number channel count information take from RTL team, in
case more number of pin are available in chip, based on the which is gives the best
coverage of the chip by use the compression ratio.
Ex: like ideal cases
External channel are 4 channels you may get coverage is 90%
External channel are 5 channels you may get coverage is 95%
External channel are 6 channels you may get coverage is 98%
We have to take 6 channels for the best coverage

3) Use of Pipeline Stages between Pads and Channel Inputs or Outputs?


The pipeline stages are when time delay occurred the tool automatically puts
pipeline stages, when the data transfer actually time 10ns but due to the comb logic it
take 15ns data is transferred, to avoid delay we are using the pipeline stages, where it’s
pipeline required tool automatically gives in inputs pads (or) output pads , how many
pipeline required means based on delay it takes.
K20 — identifies the number of pipeline stages within the compactors, based on
simulation.

4) What is the difference between Basic Compactor and Xpress Compactor?


Basic compactor:
A mask code (prepended with a decoder mode bit) is generated with each test pattern
to determine which scan chains are masked or observed. The basic compactor
determines which chains to observe or mask using the mask code as follows
The decompressor loads the mask code into the mask shift register.
The mask code is parallel-loaded into the mask hold register, where the decoder mode
bit determines the observe mode: either one scan chain or all scan chains.
The mask code in the mask hold register is decoded and each bit drives one input of a
masking AND gate in the compactor. Depending on the observe mode, the output of
these AND gates is either enabled or disabled.
X-press compactor:-
A mask code (prepended with a decoder mode bit) is generated with each test pattern
to determine which scan chains are masked or observed. The Xpress compactor
determines which chains to observe or mask using the mask code as follows:
Each test pattern is loaded into the decompressor through a mask shift register on the
input channel.
The mask code is appended to each test pattern and remains in the mask shift register
once the test pattern is completely loaded into the decompressor.
The mask code is then parallel-loaded into the mask hold register, where the decoder
mode bit determines whether the basic decoder or the XOR decoder is used on the
mask code. The basic decoder selects only one scan chain per compactor. The basic
decoder is selected when there is a very high rate of X values during scan testing or
during chain test to allow failing chains to be fully observed and easy to diagnose.
The XOR decoder masks or observes multiple scan chains per compactor, depending
on the mask code. For example, if the mask code is all 1s, then all the scan chains are
observed.
The decoder output is shifted through a multiplexer, and each bit drives one input on
the masking AND gates in the compactor to either disable or enable the output,
depending on the decoder mode and bit value.

You might also like