• 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. Refining Cell Placement at Routing Stage

Stats

  • Locked Locked
  • Replies 17
  • Subscribers 93
  • Views 20324
  • 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

Refining Cell Placement at Routing Stage

Scrivner
Scrivner over 16 years ago

Does anyone know if there's a convenient way to refine cell placement to help alleviate routing congestion?

I often have highly congested routing areas in my design that could be helped by reducing the cell placement density in that area. But in order to refine the placement means that I have to go back to the floorplanning stage and add placement partial blockages and then go through the flow again basically from scratch. I want to be able to refine the placement at the post-CTS, post-timing optimization phase of the flow. I've tried using the "refinePlace" command, but it never seems to do anything (I assume because it works off of placement congestion instead of routing congestion).

 Thanks in advance for any ideas - Bart

  • Cancel
  • Kari
    Kari over 16 years ago

     refinePlace didn't do anything because your placement was already legal. 

    Can you detect the routing congestion earlier in the flow, so you're not going back so many steps? Or does the routing congestion appear only after CTS, or only after postCTSOpt, or only after hold fixing? If so, the original placement may not be the problem, or at least not the whole problem. Just throwing out some ideas.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Scrivner
    Scrivner over 16 years ago

    I can usually see where congestion spots will be, but I don't know which ones are going to be the worst routing bottleneck until after CTS and hold fixing. I usually just have one or two very small areas that end up being heavily congested to the point where it has trouble fixing all the routing violations. But 10 rows away, I might have any area where the placement utilization and routing congestion is very low. It would be nice to able to just automatically shift some of the cells from the congested area into the less utilized area. I currently have done this by hand and it has worked, but it's a pain because I have to do it manually.

    Kari - you seem to be the expert so if you don't know of a way to do this I guess there propbably isn't one. :)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • lisiang
    lisiang over 16 years ago

     if you know it is always the same module with congestion problem, you can use "specifyInstPad inst_name  integer".  You can use wildcards for the inst. name and you need to play around with the "integer" to get a good placement.

     

    li siang

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kari
    Kari over 16 years ago

     There's plenty I don't know, believe me! :-) HOWEVER, I came across something: after you find your congested area, add a density screen (partial placement blockage) and then try placeDesign -incremental. Let me know if this works for you!

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Scrivner
    Scrivner over 16 years ago

    That's a good suggestion Li Siang. It sounds like thay may help with my problem. I will try that on my new project coming up. Thanks for the suggestion!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Scrivner
    Scrivner over 16 years ago

    Kari said:

     There's plenty I don't know, believe me! :-) HOWEVER, I came across something: after you find your congested area, add a density screen (partial placement blockage) and then try placeDesign -incremental. Let me know if this works for you!

     

     

    See - you DO know everything! :) This is what I was looking for. I think between this and trying what Li Siang suggested, I should be able to alleviated some of the congestion problems. Thanks!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • PhilBzh
    PhilBzh over 15 years ago

     Hi Kari,

    I just found this 2008 subject as I was searching informations on that congestion problem.

    You wrote that there are severale solutions to solve congestion problems at cells placement. Could you please explain some others of these ?

     Thanks.

    Phil

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kari
    Kari over 15 years ago

     Hi Phil,

     I don't see where I said that in this thread, but you should look into density screens (partial placement blockage) and cell padding (specifyCellPad). These are two typical ways to make sure the initial placement isn't too congested.

    - Kari

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • PhilBzh
    PhilBzh over 15 years ago

     Thank you Kari,

    I used cell padding and solve my congestion problem.

     Phil

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Kari
    Kari over 15 years ago

     Phil,

    That's great news! Thanks for posting back that you were successful.

     

    - Kari

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
>

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