|
<h3 id='___replace_sub_module_netlist'>replace_sub_module_netlist</h3> |
|
<pre>Replace sub-module in the design by a new re-synthesized sub-module netlist and write to a new top netlist |
|
<b>Usage:</b> replace_sub_module_netlist($new_top_netlist_file); |
|
$new_top_netlist_file: The replaced and new top level full netlist to be written out |
|
|
|
<b>Examples:</b> |
|
|
|
#1. Replace sub-module 'mem_controller', 'ahb_arb' hierarchically, and 'mem_ahb_top' module, and write out to a new full netlist |
|
read_library("tsmc.lib"); |
|
read_design("-imp", "top_ref.gv"); |
|
read_sub_module_netlist("new_mem_controller.gv", "-module", "mem_controller"); |
|
read_sub_module_netlist("new_ahb_arb.gv", "-module", "ahb_arb"); |
|
read_sub_module_netlist("new_mem_ahb_top.v", "-module", "mem_ahb_top", "-sub_only"); |
|
replace_sub_module_netlist("new_top_ref.gv"); |
|
|
|
|
|
#2. Replace sub-module 'mem_controller', 'ahb_arb' hierarchically in netlist and SVF, replace 'mem_ahb_top' module only, |
|
and write out to a new full SVF file and a new netlist |
|
|
|
read_library("tsmc.lib"); |
|
read_svf("-imp", "top_ref.svf"); |
|
read_design("-imp", "top_ref.gv"); |
|
read_sub_module_svf("new_mem_controller.svf", "-module", "mem_controller"); |
|
read_sub_module_svf("new_ahb_arb.svf", "-module", "ahb_arb"); |
|
read_sub_module_netlist("new_mem_controller.gv", "-module", "mem_controller"); |
|
read_sub_module_netlist("new_ahb_arb.gv", "-module", "ahb_arb"); |
|
read_sub_module_netlist("new_mem_ahb_top.v", "-module", "mem_ahb_top", "-sub_only"); # This module is parent module with instantiation only |
|
|
|
replace_sub_module_netlist("new_top_ref.gv"); # Run netlist replacement first |
|
replace_sub_module_svf("new_top_ref.svf"); # Then SVF replacement |
|
|
|
|
|
</pre> |