Visible to Intel only — GUID: jbr1442869890776
Ixiasoft
Visible to Intel only — GUID: jbr1442869890776
Ixiasoft
4.2.2.2. Resolving Timing Constraint Entity Names
Use .sdc files from other Quartus software products without modification. However, any scripts that include custom processing of names that the .sdc command returns, such as get_registers may require modification. Your scripts must reflect that returned strings do not include entity names.
The .sdc commands respect wildcard patterns containing entity names. Review the Timing Analyzer reports to verify application of all constraints. The following example illustrates differences between functioning and non-functioning .sdc scripts:
# Apply a constraint to all registers named "acc" in the entity "counter". # This constraint functions in both SE and PE, because the SDC # command always understands wildcard patterns with entity names in them set_false_path –to [get_registers “counter:*|*acc”] # This does the same thing, but first it converts all register names to # strings, which includes entity names by default in the SE # but excludes them by default in the PE. The regexp will therefore # fail in PE by default. # # This script would also fail in the SE, and earlier # versions of Quartus II, if entity name display had been disabled # in the QSF. set all_reg_strs [query_collection –list –all [get_registers *]] foreach keeper $all_reg_strs { if {[regexp {counter:*|:*acc} $keeper]} { set_false_path –to $keeper } }Removal of the entity name processing from .sdc files may not be possible due to complex processing involving node names. Use standard .sdc whenever possible to replace such processing. Alternatively, add the following code to the top and bottom of your script to temporarily re-enable entity name display in the .sdc file:
# This script requires that entity names be included # due to custom name processing set old_mode [set_project_mode -get_mode_value always_show_entity_name] set_project_mode -always_show_entity_name on <... the rest of your script goes here ...> # Restore the project mode set_project_mode -always_show_entity_name $old_mode