Lab4 Testing DFT
Lab4 Testing DFT
Objectives:
In this lab, you will learn:
How to insert scan chain into a synthesized gate level design
Environment Setup
source /usr/cad/synopsys/CIC/synthesis.csh
Invoke DftCompiler
Dft Compiler is actually embedded in the Design Compiler.
To invoke Dft Compiler, you can do either one
dc_shell (command mode)
dv & (GUI mode)
I encourage everybody to use command mode because:
a. command mode helps you to keep a record of what you have done.
b. command mode runs more efficiently than GUI mode.
c. command mode helps you to lookup the manual/reference quickly.
In spite of the above advantages, command mode sometimes is not as
good as GUI mode in terms of debugging the schematic problem. We will
use command mode throughout this Lab. You are welcome to try the GUI
mode by yourself.
NOTE: maybe you see some error message like “Error: current design not
defined.” just ignore it for now.
1 of 6
NTU GIEE Computer Aided System Design
NTU GIEE
2. Set the working design to you top design. In this case, set ALU as the
working design.
current_design ALU
4. Set the design constraints and check if the designs have any violations.
The constraints.tcl is based on the constraints that you used in the
synthesis lab.
source constraints.tcl
report_constraint -all_violators
2 of 6
NTU GIEE Computer Aided System Design
NTU GIEE
(Optional) In this lab, DFT compiler can identify your clock and
asynchronous reset automatically. Instead of automatic identification,
you can also specify these signals by the set_dft_signal command. For
example:
set_dft_signal -view existing_dft -type ScanClock -port clk \
-timing [list 45 55]
set_dft_signal -view existing_dft -type reset -port reset \
-active_state 0
create_test_protocol
Note: If there were violations, you should stop to fix your code.
3 of 6
NTU GIEE Computer Aided System Design
NTU GIEE
STEP 9: Reports
Report the scan cells and the scan paths
report_scan_path -view existing -chain all > ALU_syn_dft.scan_path
report_scan_path -view existing -cell all > ALU_syn_dft.scan_cell
4 of 6
NTU GIEE Computer Aided System Design
NTU GIEE
The sdf (standard delay format) file is for timing analysis. Our next tool,
Primetime, will need this file.
write_sdf -version 2.1 -context verilog ALU_syn_dft.sdf
dft_compiler share the scan_output pin with the functional output pin, so
there is NO dedicated scan output pin. This is done for saving the number
of pins. If you want dft_compiler to create a dedicate scan out pin, use this
command before you insert the scan chain.
set_scan_configuration -create_dedicated_scan_out_ports true
We do not do this in this lab.
Checkpoints:
Please check with TAs before leaving this lab to make sure the following
goals are accomplished and to get credits.
1. Show your DFT results without any DRC violations.
2. Answer the questions in this lab.
END of LAB
5 of 6
NTU GIEE Computer Aided System Design
NTU GIEE
Creator:
1st Edition: Chien-Mo Li, 2002
2nd Edition: Yu-Lin Chang, 2004
3rd Edition: Jui-Hsin Lai(Larry), 2008
4th Edition: Bing-Chuan Bai, 2010
5th Edition: Bing-Chuan Bai, 2011
6 of 6
NTU GIEE Computer Aided System Design