Scan chain is a testing method to detect various manufacturing faults in the silicon. Although many types of manufacturing faults may exist in the silicon,these could be the result of poor processing (process variation) which leads to shorts and opens.These
shorts and opens in the transistors known as stuck-at-one (ST-1) or stuck-at-zero (ST-0)
faults.
For e.g : Let's consider the 2-input NOR gate, showing below both logical & physical equivalence.
If output pin of NOR gate (z) is Stuck at 0, how its physical defect look like
From Figure 1 we can see that a short circuit path (low resistance path) has been created between the VCC & GND, which makes the output always 0 whatever be the inputs at gate terminal.
we don't have to check every input or output for faults, this we can reduce to a lot with fault equivalence & dominance technique that we will discuss later.
So, using Scan we can control the inputs of gates which are inside the chip & observe the output & we determine whether the gate is faulty or not.
Scan Flip Flop
Scan Flip flop is like normal flop but having a difference of by the fact that multiplexer has been added at the D pin of flip flop,
Multiplexer has 2 inputs & 1 Select line, For normal mode TE(Test Enable) of Scan flop will be 0
& it will work as normal flop, for Test mode mode TE = 1 , test vectors will be applied through TI (Test Input ) pin in the design with the help of Automatic test pattern generator.
In Scan mode (test mode) all the flops have been hooked up to form giant shift register , in which output of one flop Q has been connected to the input D pin of next flop,forming a chain of scan registers (Scan chain) which makes easy to check any stuck at fault in the design, but have to take care of chain length & frequency that we will discussed in next post.
For e.g : Let's consider the 2-input NOR gate, showing below both logical & physical equivalence.
If output pin of NOR gate (z) is Stuck at 0, how its physical defect look like
Figure 1: Stuck at 0 fault |
From Figure 1 we can see that a short circuit path (low resistance path) has been created between the VCC & GND, which makes the output always 0 whatever be the inputs at gate terminal.
How to detect Stuck at fault
Now, how we will identify faults,Taking the above example of 2 input NOR gate, whose output pin (z) is ST-0,all we need to apply a set of input signals which makes the output of NOR gate high, if there is no fault then the output will be high for set of inputs "00" otherwise we can conclude that the gate is faulty!
Now, how we will identify faults,Taking the above example of 2 input NOR gate, whose output pin (z) is ST-0,all we need to apply a set of input signals which makes the output of NOR gate high, if there is no fault then the output will be high for set of inputs "00" otherwise we can conclude that the gate is faulty!
Figure 2: NOR gate |
So, using Scan we can control the inputs of gates which are inside the chip & observe the output & we determine whether the gate is faulty or not.
Scan Flip Flop
Scan Flip flop is like normal flop but having a difference of by the fact that multiplexer has been added at the D pin of flip flop,
Figure 3: Scan flip flop |
Multiplexer has 2 inputs & 1 Select line, For normal mode TE(Test Enable) of Scan flop will be 0
& it will work as normal flop, for Test mode mode TE = 1 , test vectors will be applied through TI (Test Input ) pin in the design with the help of Automatic test pattern generator.
In Scan mode (test mode) all the flops have been hooked up to form giant shift register , in which output of one flop Q has been connected to the input D pin of next flop,forming a chain of scan registers (Scan chain) which makes easy to check any stuck at fault in the design, but have to take care of chain length & frequency that we will discussed in next post.
- Scan_in: Scan_in is the pin name which is connected to the input of the first scan flop in the scan chain to pass the test vectors (series of 1's or 0's)
- Scan_out : The output pin through which shifted pattern comes out.
- Scan_enable : Through which we can enable or disable the Scan mode.
In the next post we will discuss about how Scan chain functions. Please let me know if you have any queries in this post.Stay Blessed :)
Nicely explained 👌
ReplyDelete