22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
VLSI Tutorials
Response Analyzer
What is the role of Response Analyzer (RA)?
• It compresses the CUT output responses into a small signature, so that it can be
stored on-chip.
• It compares the signature (generated in silicon) with the gold signature
(generated in pre silicon) to determine Pass/Fail.
• It is also called signature analyzer or output response analyzer.
Note: Gold signature meaning the signature generated in the absence of any fault
What are the characteristics of a good RA?
• The signature generated should be as small as possible, so that it occupies less
memory while storing the gold signature on-chip.
• It should have correct Pass/Fail decision, i.e. low aliasing.
• The RA logic should be as small as possible, implies less area overhead.
• It should support diagnosis, implies when CUT fails it should be able to find the
source of failure.
Note: It is very difficult to meet all the above requirements in the same RA
Aliasing
• Aliasing occurs when the signature generated by a faulty output is same as the
gold signature. Signature faulty o/p = Signature good o/p
[Link] 1/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
• Thus aliasing can lead to loss in fault coverage as we cannot cover the faults
that will be generating the gold signature.
Figure 1: A diagram showing the concept of aliasing while mapping occurs between CUT’s output space and
RA’s signature space
Probability of Aliasing (PAL)
It can be defined as –
Note: Lower the PAL, better it is.
Example – Suppose we use a XOR gate as RA for a Circuit Under Test (CUT) and
‘01’ is the good output from CUT. Thus gold signature generated by the RA is 1.
Figure 2: An example to demonstrate how PAL is calculated
[Link] 2/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
CUT’s output Signature (RA’s output)
01 1 (gold signature)
10 1 (aliasing occurs)
00 0
11 0
LFSR based Response Analyzer (RA)
1. Serial : compress one bit at a time
2. Parallel : compress multiple bit at a time
LFSR based RA – serial
As discussed earlier a LFSR consists of FF and feedback XOR. Modular LFSRs with
external input is used for RA, as shown in Figure 3.
Consider a LFSR with a characteristic polynomial f(x) = x4 + x + 1. The external
input to the LFSR is a bit stream coming from a CUT. Let us find the signature
generated by this input stream.
Figure 3: LFSR based serial RA
Cycle LFSR Input Q3 Q 2 Q 1 Q 0
[Link] 3/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
0 011011011 0000
1 01101101 1000
2 0110110 1100
3 011011 0110
4 01101 1011
5 0110 0100
6 011 0010
7 01 1001
8 0 0101
9 1011
As you can see, the final signature is generated once all the input bit stream are
exhausted and in this case the gold signature is 1011. The gold signature size is
equal to the number of flops in LFSR.
But this method is too slow. Let’s say the input bit stream is of 200 bits, you don’t
want to calculate the LFSR value at each cycle as it will take a long time. Therefore
we use CRC theory to calculate the signature.
CRC Theory
• It represents the input bit streams by a polynomial.
Example: The bit stream 011011011 (The right most bit is the first bit to enter
LFSR) shown in Figure 3, can be represented as x + x2 + x4 + x5 + x7 + x8.
• Now consider the same LFSR shown in Figure 3, whose polynomial is f(x) = x4 +
x + 1.
The modular LFSR acts as a Modulo-2 divider, whose –
Dividend = LFSR input bit stream = x + x2 + x4 + x5 + x7 + x8
[Link] 4/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
Divisor = LFSR characteristic polynomial = x4 + x + 1
Quotient = we calculate it
Remainder = the Signature
Note: In Modulo-2 arithmetic, Addition = Subtraction = XOR
As you can see the Remainder is 1 + x2 + x3, which is equivalent to 1011 (same as
the signature calculated from the table)
Probability of Aliasing (PAL) Estimate of LFSR based serial RA
M = length of input bit stream
N = degree of polynomial
Study shows, PAL of primitive polynomial converge to final steady state value
faster than non-primitive polynomial. Thus it is good to use primitive
polynomial.
LFSR based RA – parallel
[Link] 5/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
Serial RA only compress one CUT output at a time, implies for compressing
multiple CUT outputs at a time we need one LFSR for each CUT output, which will
lead to too much hardware overhead. Therefore we use a parallel LFSR based RA
called Multiple Input Shift Register (MISR).
MISR has similar structure to LFSR, except parallel inputs feed XOR between the
stages as shown in the Figure 4. Also MISR characteristic polynomial is same as
LFSR.
Figure 4: LFSR based parallel RA (or MISR with 4 parallel inputs)
Cycle MISR Inputs Q3 Q 2 Q 1 Q 0
011011
010110
0 0000
010111
010110
01101
01011
1 0101
01011
01011
0110
0101
2 0100
0101
0101
[Link] 6/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
011
010
3 1100
010
010
01
01
4 0111
01
01
0
0
5 0101
0
0
6 1011
Like serial LFSR based RA, the final signature is generated once all the input bit
stream are exhausted and in this case the gold signature is 1011. The gold
signature size is equal to the number of flops in MISR.
Equivalent LFSR of a MISR
MISR and its input bit stream can be mapped to its corresponding equivalent LFSR
by just phase shifting and adding the input bit stream as shown in Figure 3.
Note: The final input bit stream to its equivalent LFSR is same as the one in Figure 1.
Figure 5: Equivalent LFSR of the MISR shown in Figure 4
[Link] 7/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
Probability of Aliasing (PAL) Estimate of MISR
K = length of input bit stream
M = length of equivalent LFSR bit stream = K + N – 1
N = degree of polynomial
Masking in MISR
Masking means one error bit cancels another error bit before reaching the MISR
feedback tap points. Consider the scenario shown below –
Assuming there is no aliasing, the signature generated in Case 1 will be different
that the golden signature. However the signature generated in Case 2 will be same
as the golden signature as the equivalent LFSR input bit stream in the presence of
error is same as the golden input bit stream. This is known as Masking.
Note: If the signature generated by the case 1 is equal to golden signature then we would have called
that aliasing.
Probability of Masking (Pmasking) = Probability of even number of 1s in same
column
Study shows –
[Link] 8/9
22/02/2025, 17:05 Response Analyzer – VLSI Tutorials
K = length of input bit stream
N = degree of polynomial
VLSI Tutorials / A [Link] Website.
[Link] 9/9