Professional Documents
Culture Documents
*******************************************************
Number of ports : 6
Number of nets : 15
Number of instances : 11
Number of references to this view : 0
Verilog Netlist
input clk ;
input reset ;
output [3:0]q ;
wire nx100, nx101, nx8, nx28, nx40, nx60, nx113, nx115, nx121;
wire [1:0] \$dummy ;
dff reg_q_0 (.Q (q[0]), .QB (\$dummy [0]), .D (nx60), .CLK (clk)) ;
nor02 ix61 (.Y (nx60), .A0 (q[0]), .A1 (nx101)) ;
nor04 ix41 (.Y (nx40), .A0 (nx113), .A1 (nx115), .A2 (nx100), .A3 (reset)) ;
dff reg_q_3 (.Q (q[3]), .QB (nx113), .D (nx40), .CLK (clk)) ;
dff reg_q_2 (.Q (q[2]), .QB (nx115), .D (nx28), .CLK (clk)) ;
nor04 ix29 (.Y (nx28), .A0 (nx100), .A1 (nx115), .A2 (nx113), .A3 (reset)) ;
and02 ix17 (.Y (nx100), .A0 (q[1]), .A1 (q[0])) ;
dff reg_q_1 (.Q (q[1]), .QB (\$dummy [1]), .D (nx8), .CLK (clk)) ;
nor03 ix9 (.Y (nx8), .A0 (nx121), .A1 (nx100), .A2 (nx101)) ;
nor02 ix122 (.Y (nx121), .A0 (q[0]), .A1 (q[1])) ;
or03 ix55 (.Y (nx101), .A0 (nx113), .A1 (reset), .A2 (nx115)) ;
endmodule
Netlist by DFT
/*
*/
output scan_out1 ;
output [3:0] q ;
wire nx100 , nx101 , nx8 , nx28 , nx40 , nx60 , nx113 , nx115 , nx121 ;
sff reg_q_0 (.D ( nx60 ) , .SI ( q[3] ) , .SE ( scan_en ) , .CLK ( clk ) ,
nor04 ix41 (.A0 ( nx113 ) , .A1 ( nx115 ) , .A2 ( nx100 ) , .A3 ( reset ) ,
.Y ( nx40 ));
sff reg_q_3 (.D ( nx40 ) , .SI ( scan_in1 ) , .SE ( scan_en ) , .CLK ( clk ) ,
.Q ( q[3] ) , .QB ( nx113 ));
sff reg_q_2 (.D ( nx28 ) , .SI ( q[1] ) , .SE ( scan_en ) , .CLK ( clk ) ,
nor04 ix29 (.A0 ( nx100 ) , .A1 ( nx115 ) , .A2 ( nx113 ) , .A3 ( reset ) ,
.Y ( nx28 ));
sff reg_q_1 (.D ( nx8 ) , .SI ( q[0] ) , .SE ( scan_en ) , .CLK ( clk ) , .Q
nor03 ix9 (.A0 ( nx121 ) , .A1 ( nx100 ) , .A2 ( nx101 ) , .Y ( nx8 ));
or03 ix55 (.A0 ( nx113 ) , .A1 ( reset ) , .A2 ( nx115 ) , .Y ( nx101 ));
endmodule
Test Scan
---------------------------------------------------------------------------
// ---------------------------------------------------------------------------
ATPG Faults
------------------------------------------------------------------------
// ------------------------------------------------------------------------
// #patterns test #faults #faults # eff. # test process RE/AU/AAB
//
//
timeplate gen_tp1 =
force_pi 0 ;
measure_po 10 ;
pulse_clock 20 10 ;
period 40 ;
end;
procedure shift =
scan_group grp1 ;
timeplate gen_tp1 ;
cycle =
force_sci ;
measure_sco ;
pulse clk ;
end;
end;
procedure load_unload =
scan_group grp1 ;
timeplate gen_tp1 ;
cycle =
force clk 0 ;
force scan_en 1 ;
end ;
apply shift 4;
end;
Report Statistics
Statistics Report
Stuck-at Faults
--------------------------------------
(total)
---------------------- --------------
FU (full) 120
-------------------- --------------
DS (det_simulation) 81 (67.50%)
DI (det_implication) 35 (29.17%)
UU (unused) 4 ( 3.33%)
--------------------------------------
Coverage
--------------------
test_coverage 100.00%
fault_coverage 96.67%
atpg_effectiveness 100.00%
--------------------------------------
#test_patterns 9
#simulated_patterns 320
//
//
// Design = /home/2017_1/DFT_SSA/mod_12ctr_net.v
//
// Statistics:
// DS (det_simulation) = 81
// DI (det_implication) = 35
// UU (unused) = 4
// Total Patterns = 9
//
// Settings:
// Z external = X
// Z internal = X
// wired_net = WIRE
//
// Warnings:
//
// Clock Information:
//
ASCII_PATTERN_FILE_VERSION = 3;
SETUP =
clock "/clk" =
off_state = 0;
pulse_width = 1;
end;
scan_group "grp1" =
scan_chain "chain1" =
scan_in = "/scan_in1";
scan_out = "/scan_out1";
length = 4;
end;
force_sci "chain1" 0;
period 40;
end;
period 40;
end;
force "/clk" 0 0;
force "/scan_en" 1 0;
force "/clk" 0 0;
force "/scan_en" 1 0;
end;
end;
end;
CHAIN_TEST =
pattern = 0;
apply "grp1_load" 0 =
end;
apply "grp1_unload" 3 =
end;
end;
SCAN_TEST =
pattern = 0;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
chain "chain1" = "0000";
end;
pattern = 1;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 2;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 3;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
pattern = 4;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 5;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 6;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 7;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
pattern = 8;
apply "grp1_load" 0 =
end;
pulse "/clk" 3;
apply "grp1_unload" 4 =
end;
end;
SCAN_CELLS =
scan_group "grp1" =
scan_chain "chain1" =
end;
end;
Statistics Report
Stuck-at Faults
--------------------------------------
(total)
---------------------- --------------
FU (full) 120
-------------------- --------------
DS (det_simulation) 81 (67.50%)
DI (det_implication) 35 (29.17%)
UU (unused) 4 ( 3.33%)
--------------------------------------
Coverage
--------------------
test_coverage 100.00%
fault_coverage 96.67%
atpg_effectiveness 100.00%
--------------------------------------
#test_patterns 9
#simulated_patterns 0
Good Run
------------------------------------------------------------------------
Statistics Report
Stuck-at Faults
--------------------------------------
(total)
---------------------- --------------
FU (full) 120
-------------------- --------------
DS (det_simulation) 81 (67.50%)
DI (det_implication) 35 (29.17%)
UU (unused) 4 ( 3.33%)
--------------------------------------
Coverage
--------------------
test_coverage 100.00%
fault_coverage 96.67%
atpg_effectiveness 100.00%
--------------------------------------
#test_patterns 9
#simulated_patterns 9