( ESNUG 222 Item 3 ) ---------------------------------------------- [7/21/95]
From: [ Some Things Never Change ]
Subject: (ESNUG 221 #5) DB2EDDM Chokes When Nets In Region Is High
>Synopsys supplies DB2EDDM as part of the SIFF software, which is a schematic
>translator. When I use DB2EDDM for a design which has feedthroughs or
>shorted nets, DB2EDDM is expected to put a NETCON in the EDDM schematic that
>it creates. I have a netcon symbol in the ".sdb" symbol lib that I use to
>create schematic. I have a "-NETCON" entry in the "library.map" file used
>by DB2EDDM. It works properly when the designs having feedthroughs etc are
>small, but fails when the congestion is high, i.e. number of nets in
>that region is large. DB2EDDM gives : "(warning) Unable to fix all
>feedthroughs on sheet <XXX> of design <YYY>."
John, As per norm, please keep me anonymous... some things may never change.
When transfering designs from Synopsys to Mentor here are the variables and
setups that we use in our .dc_setup file. These were worked out over a
couple of years and to date work pretty well.
/* Set up variables for db2eddm */
single_group_per_sheet = "true";
bus_naming_style = "%s(%d)";
bus_range_separator_style = ":";
gen_cell_pin_name_separator = "_";
gen_match_ripper_wire_widths = "true";
default_schematic_options = "-size infinite";
compile_fix_multiple_port_nets = "true";
write_name_nets_same_as_ports = true;
/* Template name rule for Mentor environment */
define_name_rules mentor -special siff
define_name_rules mentor -replacement_char "_"
define_name_rules mentor -equal_ports_nets -case_insensitive
define_name_rules mentor -max_length 512
define_name_rules mentor -type net -prefix "N" \
-allowed "A-Z a-z _ 0-9 ()" \
-first_restricted "0-9 _" -last_restricted "_"
define_name_rules mentor -type port -prefix "P" \
-allowed "A-Z a-z _ 0-9 ()" \
-first_restricted "0-9 _" -last_restricted "_"
define_name_rules mentor -type cell -prefix "I" \
-allowed "A-Z a-z _ 0-9" \
-first_restricted "0-9 _ ()" -last_restricted "_" \
-remove_chars
default_name_rules = "mentor";
Note that the best way to transfer from Synopsys to Mentor is to have
Synopsys use infinite sheet size. This also makes it a little easier to
debug on the Mentor side since you don't have to constantly change sheets
to see any signal you're trying to trace. The specific variable for the
question asked is:
compile_fix_multiple_port_nets = "true";
This forces Synopsys to add buffers on feedthroughs and outputs that are
logically identical, yet need to be considered differently.
- [ Some Things Never Change ]
|
|