Assignment Section-1 1. What Is DFT?
Assignment Section-1 1. What Is DFT?
Section-1
1. What is DFT?
ANS:
DFT stands for Design for Testability
DFT is a process inserting the small circuit to the normal design that improves the
Controllability and Observability of the internal circuit nodes so that the circuit can be tested
more effectively.
Controllability: The ability to set or reset the internal nodes from the primary inputs.
Observability: The ability to observe the values of an internal nodes at the primary outputs.
While attempts to use these methods have substantially improved the testability of a
design and eased sequential automatic test pattern generation (ATPG), their end results at
reaching the target fault coverage goal.
Specifications:
In this stage the features information which is expecting new features(like low power
consumption, high speed) in the device.from the customer is collected.
Architecture design:
➢ In this stage the architecture team will design an architecture based on the specifications.
➢ The architecture is like a block diagram we can find the all the details which are using in
the design(like processors, memories) and how they are connected.
➢ This architecture team will estimate the block area, how much power is required and cost
for the design.
RTL design:
➢ Register transfer level(RTL) constructing a digital design using combinational and
sequential circuit in hardware description language like verilog or VHDL.
➢ The above architecture is converted into verilog or VHDL code.
➢ This code describes how data is transformed as it is passed from register to register
RTL verification:
➢ It is a functional verification of RTL design. After the RTL design by applying test cases
➢ We verify the design in the verification stage.
➢ If any mistakes are found then the design is re-sent to the RTL designing department.
➢ Performing this verification is correcting the faults.
Synthesis:
➢ It is a process of converting the RTL code into gate level netlist.
➢ In the synthesis process the design is converted into technology dependent.
➢ It is a 3 stage process.
1. Translation:- The RTL code is converted into Boolean expression.
2. Optimization:- In this stage Boolean expression is optimized by sum of product
and product of sum optimization method.
3. Mapping:- In this technology independent Boolean expression is converted into
technology dependent and generates the gate level netlist.
➢ The inputs for synthesis are RTL code, .SDC and .LIB after the synthesis the generated
outputs are gate level netlist and .SDC.
DFT:
➢ Design for testability(DFT) is a technique which facilitates a design to become testable
after production.
➢ In this stage we put extra logic along with the design logic during the implementation
process which helps the post production process.
➢ The DFT will make the testing easy at post production process.At this stage an
ATPG(automatic test pattern generator) file will be generated.
Floorplan:
➢ The floorplan is the process of determining the placement for the components.
➢ It is the process of placing blocks/macros in the chip/core area thereby determining
routing areas between them.
➢ It creates power straps and specifies pg connection.
➢ It also determines the i/o, pin/pad placement information.
Placement:
➢ Placement is the process of automatically assigning the correct position to standard cells
on the chip with no overlapping.
➢ By global placement outside of standard cells will be placed inside roughly.
➢ In the placement stage we check the congestion value by GRC map.
Structured Approach:
In this we use the scan design.
➢ In scan design the sequential flip flops are converted to scan cells.
➢ The operation is done three modes
1. Normal mode:
All test signals are off , design operates on original functionality.(TM = 0)
2. shift mode:
In shift mode the test signal and scan enable is activated to shift the data.
(TM = 1,SE = 1)
3. captured mode:
In captured mode the scan enable is inactive to capture the combinational data.
(TM = 1, SE = 0)
Section-2
1. What is scan?
ANS:
★ Scan is used to replace all selected normal flip flops with scan flip flops.
★ The chip will initially be taken into a special mode, called “scan mode” by setting an
input pin to an appropriate value.
★ Scan is the idea using which one can control the inputs of the various gates and flip-flops
inside the chip and also observe the outputs from the internal flops in a sequence.
★ Connect scan cells into scan chain
★ One of the primary input pins will feed the input of the first flop in this chain in the scan
mode output of the first flip flop connected to the SI pin of the next flip flop and continue
till the last flip flop. The output of the very last flop will be taken to a primary output.
● The clock buffers are designed ● This buffers are designed with
with some special properties. W/L ratio.the sum of rise time and
fall time is minimum
● The clock buffer has equal rise ● It has difference in rise time and
time and fall time. fall time
● It drives long nets and higher ● It drives small chains and less
fanouts. fanouts.
8. What is slack?
ANS:
1. Slack is defined as a difference in the required time and arrival time.
2. If required time is greater than the arrival time(required time >arrival time)
a. positive slack or zero slack.
b. Indicates that it met the desired constraints.
3. if required time is less than arrival time (required time < arrival time)
a. Negative slack .
b. Indicates that it has not met the desired constraints.
c. setup and hold violations occur.
propagation delay
Clock skew : Clock skew (timing skew) is a phenomenon in synchronous digital circuit systems
in which the same sourced clock signal arrives at different components at different times. The
instantaneous difference between the readings of any two clocks is called their skew.
Clock skew = (Arrival time at capture clock pin) - (Arrival time at launch clock pin)
Clock skew is defined as two types:
Positive clock skew: If the clock arrival time at capture flip-flop is greater than that at launch
flip-flop, clock skew is said to be positive.
Negative clock skew: if the clock arrival time at capture flip-flop is less than the launch
flip-flop, clock skew is said to be negative.
Section-3
step 1 : Read the Gate level netlist file and library file.
step 2 : > mention the clock and reset value.
> count the number of chain count (chain count = number of flip flop/max chain count)
step 3 : Design rule check.
● If there are DRC violations, we have to fix the violations and enter into analysis mode.
● If no DRC failure is there, we enter the analysis mode.
step 4 : convert Normal flip flop to scannable flip flop and stitch/connect the scan cells.
step 5 : Write the output files
the output files are:
1. scan inserted netlist
2. do files
3. test procedure file
>> In a design combinational feedback loop , it can introduce either sequential behavior or
oscillation.
>> The value stored in the loop cannot be controlled or determined during the test, this can lead
to an increase in test generation complexity or fault coverage loss.
>> combinational feedback loops the best way to fix this problem is to rewrite the RTL code
generating the loop.
>> it can also be fixed by using a test mode signal TM. by inserting a scan cell This signal
permanently disables the loop throughout the entire shift and capture operations to break the
loop,by this we get control and observation points in the loop.
➢ During the scan in operation involves in shifting the data to all flip flop(TM = 1 and scan
enable = 1)
➢ During this the data flow from the output of one flip flop fed to the scan input of the next
flip flop.
➢ Once sequence is loaded, scannable is to zero and one clock cycle is required to capture
mode in which the combinational data is loaded.
➢ output is captured at end of each flip flop
➢ The data is shifted out and it is compared with the expected output.
➢ insert_test_logic : It will insert the test structure and convert the normal flip flop
to scan flip flop and will stitch up scan chains to increase the testability of the circuit.
➢ write_design -output_file (file name) -rep : this command write the –output file means
we need to write the design without DRC/Violations.
-replace/-rep : It indicates that whatever may have been written in the output file
previously, we have the right to replace it.
➢ write_atpg_setup (scan file name) -replace : It write the test procedure file and other
do files required for ATPG pattern generation