• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Digital Implementation
  3. postRoute in EDI13.2

Stats

  • Locked Locked
  • Replies 12
  • Subscribers 92
  • Views 20131
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

postRoute in EDI13.2

BackerShu
BackerShu over 11 years ago

Hello All,

I am trying update the script for DEI13.2, and have some issue while doing postRoute optimization. The old script line is as following:

optDesign -postRoute

The following error shows up in the report:

**ERROR: (ENCOPT-7016): use setDelayCalMode -engine [feDC | signalStorm] -SIAware false before running optDesign -postRoute -si [-hold].

 

I changed the command to:

 setDelayCalMode -engine feDC -SIAware false

 optDesign -postRoute -si  

I got two errors shown as following: (similar results while using signalStorm option.)

**ERROR: (ENCOPT-7071):    The distributed optimization engine is obsolete and has been replaced by the GigaOpt optimization engine which is default in this release. Please update your scripts to remove any explicit settings of 'setDelayCalMode -engine feDc' or 'setDelayCalMode -engine signalStorm' so you get the default Advanced Analysis Engine (AAE) delay calculator to enable the GigaOpt engine.
**ERROR: (ENCSYT-6692):    Invalid return code while executing 'encounter.tcl' was returned and script processing was stopped. Review the following error in 'encounter.tcl' then restart.

Taking that  AAE is enable by default, I tried directly

  optDesign -postRoute -si 

This time I got two errors  

 **ERROR: (ENCOPT-7016): use setDelayCalMode -engine [feDC | signalStorm] -SIAware false before running optDesign -postRoute -si [-hold].
**ERROR: (ENCOPT-6080): AAE-SI Optimization can only be turned on when the timing analysis mode is set to OCV.
 To run optimization while taking into account on chip variation, set an MMMC environment with the right operating condition.

Looks like I cannot do -si analysis without turning on the OCV. I checked in the user guide, and turned on the OCV mode as following (I have set a BC lib and a WC lib in the operating conditions):

setAnalysisMode -analysisType onChipVariation -cppr both
optDesign -postRoute -si

 I got the following errors:

**ERROR: (ENCOPT-7016): use setDelayCalMode -engine [feDC | signalStorm] -SIAware false before running optDesign -postRoute -si [-hold].

 **ERROR: (ENCSP-2002):  Density too high (100.0%), stopping detail placement.
 **ERROR: (ENCSP-9022):  Command 'refinePlace' completed with some error(s).

The first error shows up again! The last two errors are new, and I guess they are related to the OCV mode, which I might not used properly.

 To summarize, I have two questions:

 1) Does the   **ERROR: (ENCOPT-7016)  for the old script mean NO postRoute optimization is done? 

 2) As suggested, AAE delay calculator is by default, why does the **ERROR: (ENCOPT-7016): show up for the old script?

 3) How important is it to run   optDesign -postRoute -si? Is it a common practice to run it in EDI13 or newer level?

 4) Can I do  optDesign -postRoute -si option without turning on OCV mode?

 5) If I have to turn on the OCV mode to run optDesign -postRoute -si, what is the correct way to do it? (I tried the example script in user guide, but I got some new errors as shown above.)

 

Sorry for so many questions, I am not very familiar to this flow. Any comments are highly appreciated.

 

 

 

  • Cancel
Parents
  • BackerShu
    BackerShu over 11 years ago

    Thank you Guys,

    I just want to check if I understand the ERRORs correctly.

    the refinePlace command is internally called by this command:
    optDesign -postRoute -drv

     

    To Ajay:

    Based on your description, I guess you mean we should do addFiller command both before and after the refinePlace command (in this case should be the command:optDesign -postRoute -drv ). Am I right?

    To Brian:

     For proper setting for setFillerMode, do you mean this command:

    setFillerMode -honorPrerouteAsObs true

    If set properly, optDesign -postRoute -drv  can take care of the Filler and we don't need to do addFiller again. Am I right?

     

    Some further questions:

    1) Actually, I checked the log file in previous Encounter vesion. The command  optDesign -postRoute -drv doesn't call refinePlace command and there is no ERROR, is this also new in EDI13.2?

    2) Can I just move the addFiller -cell {FILL128A10TL FILL64A10TL FILL32A10TL FILL16A10TL FILLCAP8A10TL FILL4A10TL FILL2A10TL FILL1A10TL} -prefix FILL -merge true

    after the command  optDesign -postRoute -drv to avoid this ERROR?

    3) I tried and the ERRORs did go away. But, is there any potential problem related to this?

     

    Thank you.

     --Guanghua

    -------------------------------part of script------------------------------------------------

    # Run in-place optimization
    optDesign -postCTS

    # Fix all remaining violations
    optDesign -postCTS -drv

    reset_path_group -name CLOCK
    #clearClockDomains
    #setClockDomains -fromType register -toType register
    optDesign -postCTS -hold
    #clearClockDomains

    # Add filler cells
    setFillerMode -honorPrerouteAsObs true
    #addFiller -cell {FILL1 FILL2 FILL4 FILL8 FILL16 FILL32 FILL64 FILLCAP3 FILLCAP4 FILLCAP8 FILLCAP16 FILLCAP32 FILLCAP64} -prefix FILL -merge true
    addFiller -cell {FILL128A10TL FILL64A10TL FILL32A10TL FILL16A10TL FILLCAP8A10TL FILL4A10TL FILL2A10TL FILL1A10TL} -prefix FILL -merge true

    # Run global routing
    routeDesign

    setDelayCalMode -engine aae -SIAware true
    setAnalysisMode -analysisType onChipVariation -cppr both
    # Final opt
    #optDesign -postRoute -si
    optDesign -postRoute

    #clearClockDomains
    #   setClockDomains -fromType register -toType register
    #   setOptMode -considerNonActivePathGroup true
    #   optDesign -postroute -hold
    #   clearClockDomains
    #   setOptMode -considerNonActivePathGroup false

    #optDesign -postRoute -hold

    optDesign -postRoute -drv

    # Export DEF
    defOut -routing -floorplan final.def

    ## Output GDSII
    streamOut final.gds2 -mapFile tsmc090.map -libName DesignLib -merge $env(GDS_LIB) -stripes 1 -mode ALL

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • BackerShu
    BackerShu over 11 years ago

    Thank you Guys,

    I just want to check if I understand the ERRORs correctly.

    the refinePlace command is internally called by this command:
    optDesign -postRoute -drv

     

    To Ajay:

    Based on your description, I guess you mean we should do addFiller command both before and after the refinePlace command (in this case should be the command:optDesign -postRoute -drv ). Am I right?

    To Brian:

     For proper setting for setFillerMode, do you mean this command:

    setFillerMode -honorPrerouteAsObs true

    If set properly, optDesign -postRoute -drv  can take care of the Filler and we don't need to do addFiller again. Am I right?

     

    Some further questions:

    1) Actually, I checked the log file in previous Encounter vesion. The command  optDesign -postRoute -drv doesn't call refinePlace command and there is no ERROR, is this also new in EDI13.2?

    2) Can I just move the addFiller -cell {FILL128A10TL FILL64A10TL FILL32A10TL FILL16A10TL FILLCAP8A10TL FILL4A10TL FILL2A10TL FILL1A10TL} -prefix FILL -merge true

    after the command  optDesign -postRoute -drv to avoid this ERROR?

    3) I tried and the ERRORs did go away. But, is there any potential problem related to this?

     

    Thank you.

     --Guanghua

    -------------------------------part of script------------------------------------------------

    # Run in-place optimization
    optDesign -postCTS

    # Fix all remaining violations
    optDesign -postCTS -drv

    reset_path_group -name CLOCK
    #clearClockDomains
    #setClockDomains -fromType register -toType register
    optDesign -postCTS -hold
    #clearClockDomains

    # Add filler cells
    setFillerMode -honorPrerouteAsObs true
    #addFiller -cell {FILL1 FILL2 FILL4 FILL8 FILL16 FILL32 FILL64 FILLCAP3 FILLCAP4 FILLCAP8 FILLCAP16 FILLCAP32 FILLCAP64} -prefix FILL -merge true
    addFiller -cell {FILL128A10TL FILL64A10TL FILL32A10TL FILL16A10TL FILLCAP8A10TL FILL4A10TL FILL2A10TL FILL1A10TL} -prefix FILL -merge true

    # Run global routing
    routeDesign

    setDelayCalMode -engine aae -SIAware true
    setAnalysisMode -analysisType onChipVariation -cppr both
    # Final opt
    #optDesign -postRoute -si
    optDesign -postRoute

    #clearClockDomains
    #   setClockDomains -fromType register -toType register
    #   setOptMode -considerNonActivePathGroup true
    #   optDesign -postroute -hold
    #   clearClockDomains
    #   setOptMode -considerNonActivePathGroup false

    #optDesign -postRoute -hold

    optDesign -postRoute -drv

    # Export DEF
    defOut -routing -floorplan final.def

    ## Output GDSII
    streamOut final.gds2 -mapFile tsmc090.map -libName DesignLib -merge $env(GDS_LIB) -stripes 1 -mode ALL

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information