21.3.29 edit_post_layout_design

Description

This is the Design Flow tool that allows you to tune I/O signal integrity parameters and external timing without executing Place and Route again. Input is provided using a PDC file.

The PDC file contains one or more invocations of two PDC commands:
  • edit_io
  • edit_instance_delay
The edit_post_layout_design command fails when any commands in the input PDC file fail. The PDC commands fail, if the syntax is incorrect, the referenced instances do not exist, or the values are out of legal ranges. If the batch command fails, the layout state of the design does not change. If the batch command succeeds:
  • Layout state changes to reflect the values in the PDC commands.
  • Pin report and delay instance report files are regenerated to reflect the latest values.
  • Downstream tools Verify Timing, Verify Power, Generate FPGA Array Data, and Generate Back Annotated Files are invalidated.
Note:
  • The file is not managed by the project (no import/link into the project).

  • The file does not show up in the Libero Constraint Manager window. It is not a source to the layout tool.

  • The file is not linked. Therefore, there is no clean/un-link option for it.

The edit_post_layout_design command generates the <project>/designer/<root>/top_editpostlayout_log.log file to provide information about the run, and the PDC file that is used in the run.

edit_post_layout_design \
             -file {absolute or relative path and name of the pdc file}

Arguments

ParameterTypeDescription
filestringMandatory. Specifies absolute or relative path and name of the .pdc file.
Return TypeDescription
NoneNone

Error Codes

Error CodeDescription
NoneSpecify a pdc file as an input.
NoneFile /prj/user.pdc does not exist.
19138170Parameter 'param_name' is not defined. [edit_io -param_name][/prj/example.pdc]
19138170Required parameter 'port_name' is missing. [edit_io][/prj/example.pdc]
19138170Parameter 'port_name' is missing or has invalid value. [edit_io][/prj/example.pdc]
19138170Parameter 'port_name' has illegal value. [edit_io][/prj/example.pdc]
19138170Required parameter 'inst_name' is missing. [edit_instance_delay][/prj/example.pdc]
19138170Parameter 'param_name' is not defined. [edit_instance_delay -param_name][edit_instance_delay][/prj/example.pdc]
19138170Required parameter 'properties' is missing. [edit_instance_delay][/prj/example.pdc]
19138170Parameter 'properties' has illegal value. [edit_instance_delay][/prj/example.pdc]
NonePost layout tuning cannot be done because Place and Route has not been run. Run Place and Route and then try again.
19137989Port name does not exist in the netlist or is not connected to an IoCell macro.[edit_io -port_name "port_name"][[/prj/example.pdc]
NoneParameter 'param_name' is not defined. Valid command formatting is 'edit_post_layout_design -file "file"'.

Supported Families

PolarFire®
PolarFire SoC

Example

The following example edits the post-layout design database using 'edit_io' invocation of PDC commands with 'port_name' option:

edit_post_layout_design -file {./user.pdc}

The contains the 'edit_io' PDC command:

edit_io -port_name "D"