2015.06 Router ICV Incremental Training
2015.06 Router ICV Incremental Training
2015.06 Router ICV Incremental Training
06 Incremental
Training
Router and IC Validator Projects
Router Projects:
• Overview
– The define_routing_rule –cuts command generates vias according to
the nondefault width rules; however, it does not consider the discrete metal
widths rule
– When via enclosures violate the discrete metal widths rule, Zroute issues a
ZRT-088 error message
• Benefits
– Filters out vias whose upper or lower enclosure does not satisfy the
discrete metal widths rule
– If there are no vias left, the tool issues an RT-566 warning message
• The tool uses the via enclosure width to determine if a via satisfies the
legal width based on the discrete metal widths rule
• This project adds support for the following design rules when defining
nondefault vias with the -via_cuts or -cuts options:
– Fat metal contact
– Discrete metal widths
– Legal dimensions
• If you specify contact codes that conflict with the fat metal contact rules,
the tool issues RT-567 warning messages
Warning: {VIA02U 2X1 NR} does not satisfy fat metal
contact rule (RT-567)
• If all the nondefault vias for a specific via layer violate the
fat metal contact rules, the tool issues an error message
and the define_routing_rule command fails
• Provide the capability to check for shorts between top-level nets and
child cell metal and via blockages in the FRAM view
FRAM View
verify_lvs –check_child_blockages
verify_lvs –check_child_blockages
• In previous releases, Zroute shielded wires that are longer than 4 times
the pitch of the layer. Wires that are shorter than this default threshold
were skipped for shielding
• A new Zroute common option,
-min_shield_length_by_layer_name, is provided to specify the layer-
specific length threshold for wires to be shielded
• The report_zrt_shield command is enhanced to exclude wire
segments that are shorter than the length threshold from the shield ratio
calculation
• The default length threshold for each layer is 4 times the pitch of
the layer
• The track-based metal fill insertion flow uses technology file attributes
and rules to create fill shapes aligned to tracks
• The track-based metal fill flow has the following benefits as compared
to the pattern-based metal fill flow:
– Achieves higher metal density
– Has better density control
– Provides well-balanced color distribution for double-patterning layers
IC Validator signoff_metal_fill
parameter file –track_fill
auto / user-defined
You can use the following timing-driven options with the -track_fill
option:
-timing_preserve_setup_slack_threshold
-timing_preserve_hold_slack_threshould
-timing_preserve_nets
-space_to_critical_nets
-fill_over_critical_nets
-space_to_clock_nets
-space_to_critical_nets_adjacent_layers
signoff_metal_fill –track_fill \
–timing_preserve_nets {$list_of_critical_nets} \
–timing_preserve_setup_slack_threshold 0.01 \
–timing_preserve_hold_slack_threshold 0.007 \
–space_to_critical_nets{m2 4x m3 4x m4 4x m5 4x m6 \
5x m7 5x m8 5x} \
–space_to_clock_nets{m2 5x m3 5x m4 5x m5 5x m6 5x \
m7 5x m8 5x}
–space_to_critical_nets_adjacent_layers{m2 3x m3 3x \
m4 3x m5 3x m6 3x m7 4x m8 4x}
–apply_nondefault_rules true
icc_shell> signoff_drc \
–show_stream_error_environment true \
–user_defined_options {-ml file_with_mw_options} \
–read_cel_view
• You can control whether to ignore the blockages in the FRAM views
of macro cells by using the -ignore_blockages_in_cells option
– If blockages in the FRAM view of macro cells are ignored
– signoff_drc will not report false violations around the boundaries of the macros
– DRC fixing with signoff_autofix_drc will not be adversely impacted by the
false violations
• You can use the CEL view only for specific cells by using the
-read_cel_views option
– In previous releases, you had to select either the FRAM or CEL view
for all cells
– The existing signoff_drc -read_cel_view option and
signoff_autofix_drc -read_fram_view_only option
will be removed in a future release
If the CEL view of a cell is not found, the command reads the FRAM view instead.
If the FRAM view of a cell is not found, the cell is ignored during checking.
© 2015 Synopsys, Inc. 46
User Interface
• signoff_drc
[-ignore_blockages_in_cells true | false]
[-read_cel_views list_of_cells]
• signoff_autofix_drc
[-ignore_blockages_in_cells true | false]
[-read_cel_views list_of_cells]
Read the CEL view of standard cells and the pins from the FRAM view of all other cells.
> signoff_drc
Read the FRAM view of all child cells. This was the default in previous releases.
> signoff_drc -ignore_blockages_in_cells false
Read the CEL view of all child cells. If the CEL view cannot be found, the command
reads the FRAM view instead.
> signoff_drc -read_cel_views {*}
Read the CEL view of standard cells and the macro cells with master names that match
the pattern “mc*”, and the pins from the FRAM view of all other cells.
> signoff_drc -ignore_blockages_in_cells true -read_cel_views {mc*}
signoff_fix_isolated_via
-check_only
– Specify this option to use the signoff_fix_isolated_via command only to
check for isolated vias in the design
-save_view
– Specify this option to save the isolated via fixes to the design automatically at the
end of the flow instead of using the save_mw_cel command later
– If you use the -update_track_fill option, all changes are saved in the FILL
view regardless of whether you specify -save_view
-error_view error_view_name
– Specifies the name of the generated error view
– Default: <current_cell_name>_isodrc.err
-run_dir directory_path
– Specifies the path of the working directory
– Default: signoff_fix_isolated_via_run in the current working directory
-user_defined_options {list_of_IC_Validator_command_line_options}
– Specifies a string of IC Validator command-line options to be used during the run
– Default: {}
-avoid_net_types {list_of_types}
– Specifies the types of nets to exclude from isolated via fixing
– Valid values are clock, pg, none
– Default: {clock pg}
-update_track_fill
– Reads and updates existing track fill
-track_fill_runset_include_file file_name
– Specifies the name of the track fill runset include file used during track-fill
insertion
– Default: off
set_physical_signoff_options
-isolated_via_max_range { {via_layer distance} … }
– Specifies the via checking range for each via layer
1. Reads the existing metal and via fill from the FILL view
3. Uses existing metal to eliminate isolated vias; selects the fixing via
locations with the following priority:
– Between existing fill shapes
– Track fill remains as is
– New via is inserted between the lower and upper metal fill
– Between minWidth signal and fill shapes
– Track is cut to ensure that it does not connect to a long fill piece