Logic Cone ECO
When the changes involve more than tens gates, Logic Cone ECO becomes a good option. The idea of Logic Cone ECO is to replace logic cone in old netlist by new re-synthesized netlist.
Logic Cone ECO API is integrated in GofCAll APIs
An example script for replacing the mis-matching points in revised netlist
use strict;
undo_eco;
my $econame = "chg_teg";
my $revised = "golu.v";
my $golden = "golu_top.vg";
my $design = "golu";
setup_eco($econame);
read_design("-golden", "-once", $golden);
read_design("-revised","-once", $revised);
set_top($design);
my $lists = "";
my $cnt = 0;
for(my $i=0;$i<=25;$i++){
$lists .= "rcv_cdr_u_cdr_dsm_reg[$i]/D,";
$cnt++;
}
for(my $i=0;$i<=36;$i++){
$lists .= "rcv_cdr_u_accum_k2_reg[$i]/D,";
$cnt++;
}
foreach my $scr (2,3,4){
for(my $i=0;$i<=32;$i++){
$lists .= "rcv_teg_u_scr${scr}_reg[$i]/D,";
$cnt++;
}
}
print "TOTAL replaced points $cnt\n";
replace_logic_cone($lists);
write_verilog("golu_eco.v");
The script can be run by command line or in GofCall GUI interface
Save the script to logic_cone_eco.pl.
The command line to run the script is
gof -lib tech.lib -run logic_cone_eco.pl
Check GofCall GUI interface for how to run the script in GUI mode