Interview Questions
Interview Questions
By
Sharmipriya
1.what is Design for Testability (DFT)?
■ DFT is a technique that makes test generation and test application easier and cost effective.
■ DFT techniques help in making the internal flip-flop easily controllability (you can initialize
them into any value you want )and observability (means we can read ou values whenever we want
).
■ It is design approach aimed at making digital systems more easily testable.
■ A product which is difficult to test will cost more to test and will be a difficult target for reduction
of its associated testing cost.
■ The best way to ensure that a product is testable is to consider design for testability from the very
beginning during the design phase of the product life cycle.
■ It makes the circuit more controllable and observable by embedding test constructs into the
design.
2.Advantages of DFT?
Manually generated design verification test patterns. Automatic test pattern generation (ATPG).
Can be applied at the operating speed. Difficult to be applied at the speed the design is expected to work.
4.what is scan insertion ? How it works for DFT ?
■ To enable a scan test for a chip design, additional test logic must be inserted; this is
called “scan insertion”. Scan insertion consists of two steps:
■ 1. Replace plain memory cells like flipflops or latches by scan cells.
■ 2. Connect these together forming one or more chains.
■ Scan cells can be operated in two modes, the functional/mission mode used during
normal operation and the scan mode that allows shifting through the scan chains.
5.which tool you have used for scan insertion, ATPG, simulation and MBIST insertion ?
■ When a clock signal drives the data pin of a cell, ATPG tools cannot determine the captured
value. Fix : Modify the logic leading to the
datapaths to eliminate dependency on the clock
■ Black box feeds into clock or asynchronous inputs.
■Violation :
■ Fix : It’s a special case of uncontrollable clocks and asynchronous signals. So it can be fixed
with the help of previously mentioned fixes. Since black box output will be always unknown,
select line of the MUX can be test_mode
■ Violations that reduce the coverage
■ A loop that oscillates causes severe problems for ATPG and for fault simulation
■ Fix : Break the loop by placing test constraints on the design
•Black boxes
Logics that drive and driven by black boxes are unobservable and uncontrollable respectively.
Fix : 1. Add appropriate test points around the black boxes
2. Use a test model representing the black boxes
7.What are ATPG DRC violations you faced ? How you fixed ?
■ Faced c1 violation due to clock PIs off failed to force off a clock line
■ Clock is driven by mux
■ Fixed by adding functional clk and scan en clk
8.In clock violation in clock gating circuit where will we add mux after or before?
9.what is clock gating circuit? Draw the clock gating cell and its waveform. How it is working ?
clock gating is one of the simplest and most used method to reduce the dynamic power of the design
10.what are the outputs of scan insertion?
■ Design(Netlist)- This netlist contains the original design modified with the inserted test structure. The
output netlist format is gate_level verilog.
■ ATPG setup (Dofile and Test Procedure File) The tool can automatically create a dofile and test
procedure file that you can supply to the ATPG tool. theese files contain the circuit setup information that
you specified to tool as well as information on the thest structures that the tool inserted into the desing. the
tool create these files for you when you issue the write_atpg_setup command.
■ Test Procedure FileWhen you issue the Write Atpg Setup command, the tool writes a simpletest procedure
file for the scan circuitry it inserted into the design. You use this file with the downstream ATPG tools.
11.what are contents available in test procedure file?
■ https://www.slideshare.net/DrUshaMehta?utm_campaign=profiletracking&utm_mediu
m=sssite&utm_source=ssslideview
■ Fault models
■ https://www.slideshare.net/DrUshaMehta?utm_campaign=profiletracking&utm_mediu
m=sssite&utm_source=ssslideview
■ Bist falt simulation
■ https://www.eng.auburn.edu/~strouce/elec6280.html
29.how many pulses for stuck at and transition?
Launch on last shift - In this method, during the last shift itself, we will shift in the required value in to the
flop which will create the required transition on the intended node.
Launch on capture - In this method, the flop which creates the launch on the intended node will get the value through
D path. Scan-enable will be low during this time.
Which is preferable?
If you want more coverage LOS
If
33.Adv and Disadv of LOC and LOS.
■ pros of loc :scan enable is not in timing path, supports many levels of non scan logic,timing
faults on pins of memories can be tested,supported with false and multicycle path masking
■ cons of loc: a bit more of a complex problem for pattern generation
■ pros for los :less complex patterns generation,can test through false paths
■ cons of los:scan enable mudt be routed and balanced so it transitions in time for the cpture
clock,only generates vasic combinational patterns ,some detections not possible with launch off
shift
34.what are issues you faced in atpg simulation with zero timing?
35.What is x mismatch and binary mismatch ?
■ During simulation mismatch estimated value and simulated value will be shown It will show
■ Binary mismatch
36. what are the issues you faced with
sdf simulation? How to fix it ?
37.what is setup time and hold time?
■ The required time duration that the input data MUST be stable before the triggering-edge of the
clock.
■ The required duration that the input data MUST be stable after the triggering edge of the clock.
38.how to solve setup time and hold time?
■ SETUP
■ Chain patterns
■ Scan patterns
41.What is parallel pattern and serial pattern ? what is the difference ?
42.what is test point Insertion?
■ Test point insertion adds control points and observation points for providing additional
controllability and observability to improve the detection probability
■ A control point can be connected to a primary input, an existing scan cell output, or a dedicated
scan cell output. An observation point can be connected to a primary output through an
additional multiplexer, an existing scan cell input, or a dedicated scan cell input.
■ Whenever there is low test coverage we insert a test point as the primary input to get the control
and observe the node.
43. what all things you need to take care while/before inserting on OCC ?
44. why we don't connect the capture flop's clock to the lockup latch?
45. How you will improve transition faults test coverage?
■ Design : The supported design data format is gate-level Verilog. Other inputs also include 1) a
cell model from the desig library and 2) a previously-saved, flattened model.
■ Test Procedure File :This file defines the operation of the scan circuitry in your design. You can
generate this file by hand, or Tessent Scan can create this file automatically when you issue
thecommand write_atpg_setup..
■ Library : The design library contains descriptions of all the cells used in the design. The tool
uses the library to translate the design data into a flat, gate-level simulation model for use by the
fault simulator and test generator.
■ Fault List: The tool can read in an external fault list. The tool uses this list of faults and their
current status as a starting point for test generation.
■ Test Patterns : The tool can read in an external fault list. The tool uses this list of faults and their
current status as a starting point for test generation
55.How you pulse different clocks during stuck-at and transition-test ?
■ By using occ
56.How much is your targeted coverage for ac & dc and how you improved coverage??
56.What is Sequential depth? How to decide it ?
57.What are Falut models ?
58.What are type of Fault class?
60.How you debugged Simulation mismatches in notiming and timing?
61.How to debug if parallel sim passing and serial sim failing??
■ RTL verification, MBIST verification, LINT verification, DFX validation, SCAN insertion,
ATPG, BSDL
65. Total how many blocks or partitions in your project ?
66. whether all the blocks/partitions will be released in parallel ?
67. Whether all validations happen at SOC level or block level ?
68. for mbst, how many controllers and howmany algorithms.
69. How to decide number of mbist controllers ?
70. for ATPG, howmany faults types targeted for each block ?
71. if we have different clocks how do you insert the scan?
72.what is transparent latch and where we insert? Transperent latch diagram?
■ A transparent latch is a storage element. It has an input, an output, and an enable or gate pin.
When the enable is active, the output transparently follows the input (with some small delay).
When the enable becomes inactive, the output freezes
73.Draw edt logic? How Decompression & compactor how it looks?
74.How you did coverage analysis?
■ For a single-output, n-input gate, there are 2(n+1) possible stuck-at errors. In
this case, with n=2, six stuck-at errors are possible.
99.How many test patterns required to test transition faults in AND gate ?
00,11 a-s-0,b-s-0,c-s-0
11,00 a-s-1,b-s-1,c-s-1
Copyright 2001,
Agrawal & VLSI Test: Lecture 1 125
■ CAN HOLD VIOLATION BE REMOVED AFTER CHIP WAS
FABRICATED
■ September 18, 2019 vlsi space BLOG Leave a comment
■ Can we remove the hold violation once the chip was out from
fabrication unit?
After the chip was manufactured, if there are any setup
violations in the design, can removed by reducing the clock
frequency of the design at the cost of device performance.Now
if the hold violation was found after chip was out,we have to
discard the the chip. Theoretically there are few methods to
remove the hold violations, but in practical cases these may not
be implemented on the chip
1. By reducing the supply voltage and frequency, we can increase
the delay of the cell and thus meet the hold violations
2. By increasing the temperature, propagation delay of the cell
decreases and thus we can met the hold violation. However for
65nm and below technology, temperature inversion
phenomena was observed and thus delay decreases as
temperature increased. For lower technology nodes increasing
the temperature worsens the hold timing.
SETUP TIME AND HOLD TIME
September 29, 2019 vlsi space BLOG Leave a comment
Any digital design should be free from setup and hold violation. First, we will understand what is Setup and Hold time. Below fig is simple circuit with launch
and capture flipflop, these are ideal flip flop (means setup time and hold time are zero)
Hold Slack is the difference between the Arrival time and the required time of the data signal.
During the Hold calculation we must take min delay values in data path and max values in
clock path and the hold slack must be greater than zero for violation free circuit. Hold check is
done on same clock edge
Hold Slack =AT-RT
RT= clock_period(tp)+clock_network_delay(tc)+hold_time(th)
AT=flip_flop_delay(tc2q) +wire_delay(tw)+comb_delay(td)
Note: As hold analysis is carried on same clock, we must make clock_period to zero(tp=0)
How to we overcome the setup or hold violation
Setup violation occurs when the data arrives late at the capture flip flop and this can be
avoided by reducing the delay in the data path. Delay in data path can be reduced in different
steps
•LVT cells offers less delay, we can swap the HVT cells to LVT cells
•High drive strength cells delay is less compared to low drive strength and we can swap
between the low drive strength cell to high drive strength cell, but we need compromise with
the power.
•If we can comprise with speed of the design, then clock frequency can be reduced to avoid the
setup violation.
Hold violation occurs when the data arrives early at the capture flip flop and we need add
delays in the data path to avoid the hold violation. We can do any of the steps to increase the
delay in the data path
•We need to add the buffers in the data path
•Swap HVT cells to LVT cells
• Swap high drive strength cells to low drive strength cells
http://www.uuudoc.com/doc/ab/jdae/ag/fgadaai-bjcgicehg.html
What is a Time Plate?
Time plate defines the single tester cycle and specifies all the
events placed in cycle. All
clocks must be defined in the time plate definition.
Timeplate gen_aman =
https://www.eetimes.com/designs-with-multiple-clock-domains-
new-tools-avoid-clock-skew-and-reduce-pattern-counts/
Let's say there is a chain with 8 flops and one of them has a hold viol. Assuming you've enough data patterns to fill in other chains
1. Shift
to find the captuting failure. How in
willall
you1 do?
to initialize
OR How youthefigure
chain.
out which is bad flop?
2. You shift in 00001111(right bit first, left bit last) and if the
capture fails.
The cause of failure should be in the 1st 4 flops because the
data in the
2nd half is not supposed to change and should have no effect on
the
capture failure.
3. shift in all 1 to initialize the chain.
4. You shift in 00111111 and the capture passes. The cause of
failure
should be in the 3rd or 4th flops because the 3rd and 4th flops
are only
flops that change the value and can contribute to the capture
failure.
5. shift in all 1 to initialize the chain,
6. You shift in 00011111 and the capture fails. The the cause of
failure
should be in the 3rd flop
Top 5 Solutions for Optimal DFT (Design for Testability) in Lower Technology Nodes
https://www.einfochips.com/blog/top-5-solutions-for-optimal-
dft-design-for-testability-in-lower-technology-nodes/
http://cc.ee.ntu.edu.tw/~cmli/VLSItesting/