0% found this document useful (0 votes)
27 views28 pages

ICCII 2019.03 Data Model Update Training Part3

Uploaded by

Savan Mandora
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views28 pages

ICCII 2019.03 Data Model Update Training Part3

Uploaded by

Savan Mandora
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

IC Compiler II Update Training

Data Model

Version O-2018.06-SP2, O-2018.06-SP4, and P-2019.03


March, 2019
CONFIDENTIAL INFORMATION
The information contained in this presentation is the confidential and proprietary
information of Synopsys. You are not permitted to disseminate or use any of
the information provided to you in this presentation outside of Synopsys
without prior written authorization.

IMPORTANT NOTICE
In the event information in this presentation reflects Synopsys’ future plans, such plans
are as of the date of this presentation and are subject to change. Synopsys is not
obligated to update this presentation or develop the products with the features and
functionality discussed in this presentation. Additionally, Synopsys’ services and products
may only be offered and purchased pursuant to an authorized quote and purchase order
or a mutually agreed upon written contract with Synopsys.

© 2019 Synopsys, Inc. 2


Data Model Enhancements
(O-2018.06-SP2, O-2018.06-SP4, and P-2019.03)

Database Management Design and Tech Data Tcl Interfaces


• Analog Pin Related Improvement (O-2018.06-SP2) • Shaping Constraints (O-2018.06-SP2)
• Virtual Interface Blocks (VIB) for 3DIC (O-2018.06-SP2) • report_unbound Support for Missing Layers/Purpose
• Via Matrix Support (O-2018.06-SP4) (O-2018.06-SP2)
• Voltage Area Rule Hierarchy Options (O-2018.06-SP4) • Netlist Checking Enhancements (O-2018.06-SP4)
• Rule Based Name Matching (O-2018.06-SP4)
• Application Option Tcl Command Enhancements
Data Import and Export (O-2018.06-SP4)
• Instance-Specific Mask Shapes during Stream Out • Placement Attractions Support (P-2019.03)
(O-2018.06-SP2) • Supernet Enhancements (P-2019.03)
• Writing Routing Constraints (O-2018.06-SP4) • Usage Support for n-D Buses (P-2019.03)
• write_def Support for Physical Hierarchy Traversal • Message/Logfile Unification (P-2019.03)
(O-2018.06-SP4) • Label-Based Linking (P-2019.03)
• PMJ Via Ladder Support in Read/Write DEF (P-2019.03) • Identifying Computing Environment Issues (P-2019.03)
• Read/Write Verilog Support for n-D Buses (P-2019.03)

© 2019 Synopsys, Inc. 3


Design and Tech Data Tcl Interfaces (data query, editing)
• Shaping Constraints (O-2018.06-SP2) • Placement Attractions Support (P-2019.03)
• report_unbound Support for Missing Layers/Purpose • Supernet Enhancements (P-2019.03)
(O-2018.06-SP2) • Message/Logfile Unification (P-2019.03)
• Netlist Checking Enhancements (O-2018.06-SP4) • Label-Based Linking (P-2019.03)
• Rule-Based Name Matching (O-2018.06-SP4) • Identifying Computing Environment Issues
• Application Option Tcl Command Enhancements (P-2019.03)
(O-2018.06-SP4)

© 2019 Synopsys, Inc. 4


Shaping Constraints (O-2018.06-SP2)

© 2019 Synopsys, Inc. 5


Shaping Constraints
Overview and Benefit

• Block shaping is one of the floorplanning design steps in IC Compiler II


• The enhancement of shaping constraints in 2018.06-SP2 allows you to provide a set of
constraints that
– Specify the shaping groups to be formed
– Characterize the shaping attributes associated with each object to help define and control the shaping
rules and boundary determinations for all shapeable objects.
• This project is to prepare the improved solution to the block reader’s ease of use by adding a
native support for shaping constraints in the database.
– You can manage the shapeable objects and shaping constraints easier with new set of Tcl UI
commands in place of the unwieldy constraint file flow

© 2019 Synopsys, Inc. 6


Shaping Constraints
User Interface

• Two new UI objects are added to support shaping constraints:


– shaping_channel
– shaping_constraints

• New shaping_constraints attribute is added to the following objects:


– group
– voltage_area
– bound
– cell
– block

• New is_shaping attribute is added to the following object:


– group

© 2019 Synopsys, Inc. 7


Shaping Constraints
New UI commands

• The following new commands support shaping constraints

New UI Commands Description


create_shaping_channel Creates and optionally sets values for a channel object.
remove_shaping_channel Removes channel objects from the database.

get_shaping_channels Gathers and returns a collection of channel objects.


create_shaping_constraint Creates and optionally sets values for a particular shaping constraint associated with a
given shapeable object.

remove_shaping_constraint Removes defined shaping constraints from a constrainable object by destroying the
corresponding shaping constraints objects.
get_shaping_constraints Gathers and returns a collection of shaping constraints objects.
set_shaping_group_order Establishes a desired ordering of elements within a given shaping group.

© 2019 Synopsys, Inc. 8


Shaping Constraints
Updated UI commands

• Some existing UI commands will be enhanced to support shaping groups

Existing UI Commands Description of the change


create_group Adds optional argument -shaping
By default a group is created as a non-shaping group. If the -shaping option is set, the
group is created as a shaping group.
report_group Add optional argument -shaping
The -shaping option provides a convenient filter to display information on only the shaping
groups from the list of groups to report.
add_to_group Errors will be displayed
• When adding an object to a shaping group the object must be a shapeable object
• When adding an object to a shaping group, the object must not already be a member of
another shaping group.
• When adding an object to a shaping group the object must exist at the same level of
hierarchy and be a member of the same block as the other members of the groups
• Shaping group relationships should form a tree, meaning that no circular relationships
can exist.

© 2019 Synopsys, Inc. 9


report_unbound improvement (O-2018.06-SP2)

© 2019 Synopsys, Inc. 10


report_unbound Improvement
Overview

• Starting in version O-2018.06-SP2, the report_unbound command


is enhanced to report missing layers to help you troubleshoot what
to fix after tech replacement causes a layer to go missing

• If you recreate the missing layer/re-read the tech file having those
layers, then unbound objects should be rebound and will not get
reported in report_unbound command

© 2019 Synopsys, Inc. 11


report_unbound improvement
User Interface

• The report_unbound command is improved to report unbound on the shape, track,


layer, pin_guide, pin_blockage, routing_guide, routing_corridor_shape and
via_defs object types, which related to layer

• The new eight object types are added in the command option:
– report_unbound -shape
– report_unbound -track
– report_unbound -layer
– report_unbound -pin_guide
– report_unbound -pin_blockage
– report_unbound -routing_guide
– report_unbound -routing_corridor_shape
– report_unbound –via_def

© 2019 Synopsys, Inc. 12


Netlist Checking Enhancements (O-2018.06-SP4)

© 2019 Synopsys, Inc. 13


Netlist Checking Enhancements
Overview

• The check_netlist command in IC Compiler II is enhanced to report additional messages


similar to the check_design command in Design Compiler

• New application options are added to enable the new checking features:
– da.check_netlist.allow_multiply_driven_nets_by_inputs_and_outputs
– Set to true to skip the DCHK-034
– da.check_netlist.check_for_wire_loop
– Set to false to skip the DCHK-035
– da.check_netlist.allow_connection_class_violation
– Set to true to skip the DCHK-033

• New options -summary and –multiple_designs are added to check_netlist


– The-summary option enables a brief description for each message shown in the output summary
table
• All of the messages reported from check_netlist are EMS-compatible.

© 2019 Synopsys, Inc. 14


Netlist Checking Enhancements
New Messages
• The following new messages are added to the check_netlist command:

Message Message Description Message ICCII option ICCII App-option


Id Type (default on)
DCHK-028 In design '%s', ref '%s' was not used. Warning –cells N/A

DCHK-029 '%s' does not have any output ports. Warning –ports N/A

DCHK-033 In design '%s' net '%s' has a connection class Warning –nets da.check_netlist.allow_connection_class_violation,
violation: false by default
DCHK-034 In design '%s', input port '%s' is connected to a Error –ports da.check_netlist.allow_multiply_driven_nets_by_inputs_and_
multiply-driven net and the drivers include a outputs, false by default
hierarchical output pin
DCHK-035 In design '%s', net '%s' is a wire loop. Error -nets da.check_netlist.check_for_wire_loop
true by default
DCHK-036 In design '%s', leaf cell output pin '%s' is connected Error -cells N/A
to constant net '%s'.
DCHK-037 In design '%s', %s port '%s' is not being used in Warning -ports N/A
accordance with its stated direction.
DCHK-038 In current design '%s' is instantiated %d times. Information -multiple_design N/A

DCHK-039 In design '%s', cell '%s' is unmapped warning -cells N/A

DCHK-042 Use the related options for more information about information -summary N/A
warnings
DCHK-043 In design '%s', cell '%s' does not have a reference. error -cells N/A

© 2019 Synopsys, Inc. 15


Rule-Based Name Matching (O-2018.06-SP4)

© 2019 Synopsys, Inc. 16


Rule-Based Name Matching
Overview

• In a design flow, the name of design objects can sometimes change while the script keeps the
original name, causing a name mismatch

• Starting in O-2018.06-SP4, you can use rule-based name matching and use the
set_query_rules command to guide object name searching

© 2019 Synopsys, Inc. 17


Rule-Based Name Matching
User Interface

• Use the set_query_rules command to specify query rules


set_query_rules # Define query rules
[-hierarchical_separators separators] (List of hierarchical separators)
[-bus_name_notations bus_notations] (List of bus name notations)
[-class class_list] (List of object classes:
Values: cell, port, pin, net,
power_domain, supply_net, supply_set,
supply_port, power_switch, model)
[-regsub regsub] (List of options for Tcl command regsub)
[-wildcard] (Turn on wildcard support)
[-suffix suffix_list] (Turn on predefined suffix rules (_reg _tri))
[-nocase] (Case insensitive)
[-verbose] (Turn on verbose mode)
[-show] (Show the current query options)
[-reset] (Reset to default options)

© 2019 Synopsys, Inc. 18


Rule-Based Name Matching
Usage

• When you define query rules by using the set_query_rules command


– In the golden UPF flow (when mv.upf.enable_golden_upf is true), the load_upf command
follows the specified query rules
– To enable rule based matching for the get_cells, get_pins, get_ports, get_nets, and
find_objects commands, set the design.enable_rule_based_query application option to true
For example:
set_query_rules -hierarchical_separators {/ _ @} -class cell
find_objects . -pattern INSTDECODE@U1 -object_type inst
get_cells INSTDECODE@U1
#Warning: No cell objects matched 'INSTDECODE@U1' (SEL-004)

set_app_options -name design.enable_rule_based_query -value true


find_objects . -pattern INSTDECODE@U1 -object_type inst
#INSTDECODE/U1
get_cells INSTDECODE@U1
#{INSTDECODE/U1}

© 2019 Synopsys, Inc. 19


Application Option Tcl Command Enhancements (O-2018.06-SP4)

© 2019 Synopsys, Inc. 20


Application Option Tcl Command Enhancements
Overview

• You can report all the application options and the differences between application options
between releases or between designs

© 2019 Synopsys, Inc. 21


Application Option Tcl Command Enhancements
User Interface

• Starting in version O-2018.06-SP4, you can use the following commands to write application
options to file and compare application options:
– write_app_options
– compare_app_options

• In addition, the following commands are enhanced:


– report_app_options
– audit_scripts

© 2019 Synopsys, Inc. 22


Application Option Tcl Command Enhancements
Usage write_app_options

• To write application option data to a file for comparison and reporting, use the following
command:
write_app_options
[-non_default] (Write options with values different from default)
-output file name (output file name)

– Communicates information about application options and their values


– Compares snapshots of application options from different tool versions, flow steps, RM versions, etc.
– Synenc encoded data file only readable by report_app_options, compare_app_options, and
audit_scripts

 Example
– write_app_options –output 18.06-sp4.data
– Saves encrypted file with all application option data for a particular release
– This file can be used as input to the enhanced audit_scripts command
– This file can be used as one of the inputs to the new compare_app_options command
– This file can be used as an input to report_app_options

© 2019 Synopsys, Inc. 23


Application Option Tcl Command Enhancements
Usage compare_app_options

• Compares two application option data files written by the write_app_options command:
compare_app_options
-previous_data data_file (Previous data file)
-current_data data_file (Current data file)
[-as_csv] (CSV Format)

– Options:
– -previous_data filename
– Specifies a filename which specifies the data file that represents the basis (or left-side) of the comparison report

– -current_data filename
– Specifies a file name that specifies the data file that represents the current (or right-side) data.
– -as_csv
– Saves the report in plain text CSV format

– Report will also show Added and Removed application options.


– Added are in the -current_data file, but not in the -previous_data file
– Removed are in the -previous_data file, but not in the -current_data file

© 2019 Synopsys, Inc. 24


Application Option Tcl Command Enhancements
Usage report_app_options

• Enhanced to include a new Source column


– You can now record which line of Tcl Source called set_app_options and report it in the new source
column

• New public option: -data file_name


– Reports application options saved in a data file written by write_app_options

© 2019 Synopsys, Inc. 25


Application Option Tcl Command Enhancements
Usage audit_scripts

• Auditing application options and variables in a script


audit_scripts
-input script_name_or_path (Location of scripts to be audited)
[-from version] (Data file for pre-defined version)

– The audit_scripts reads a script, examines the application options and variables, and reports application
option or variable names that have changed from a previous version of the tool.
– CONVERT between an application variable and an application option is no longer supported.
– RENAME of an application variable is no longer supported.
– Command options:
– -input script_name_or_path (Unchanged)
– -from version (New)
– Specifies a string from a specific tool version and compares it to the current version.
– The default version is the most recent version
Currently supported -from options are:
-from 17.09-sp5
-from 18.06-sp2

© 2019 Synopsys, Inc. 26


Example
Recommended Flow for write_app_options and compare_app_options

# Create a data file containing all application options before a specific process
write_app_options -output before.data

# Continue with the process with additional application options


#...
# Create another data file containing all application options
write_app_options -output after.data

# Test compare_app_options
compare_app_options -previous_data before.data -current_data after.data

© 2019 Synopsys, Inc. 27

You might also like