• 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. Custom IC SKILL
  3. Calculate cutRows and cutColums for dbCreateVia from a given...

Stats

  • Locked Locked
  • Replies 0
  • Subscribers 143
  • Views 13388
  • 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

Calculate cutRows and cutColums for dbCreateVia from a given bounding box

nbuwen
nbuwen over 5 years ago

I have a short M1 path and a longer M2 path ontop of the M1 path in the Virtuoso layout view.

+ - - - - + - - - - - + - - - - +

| - - - - | - - M1- - | - - - - |

+ - - - - + - - - - - + - - - - +

Now, i want to connect these paths with a via with multiple rows and columns.

This is what i tried:

params = lxComputeViaParams(myViaDef cellView nil nil intersectionHeight "horizontal" intersectionWidth "vertical" nil)

dbCreateVia(cellView myViaDef intersectionCenter "R0" params)

Unfortunately this doesn't fill all the intersection space: especially cutColumns is too low. Setting intersectionWidth to a very high value doesn't increase the cutColumns any more.

I also tried to manually calculate the cutRows and cutColumns but then the Via shape didn't exactly fill the intersection space (this is my best option so far).

Interestingly the Via Property Editor (opened after selecting the via shape and pressing Q) allows me to calculate the cutRows and cutColumns from the dimensions of the intersection space. Also the via shape then perfectly fills the intersection space.

(I manually calculated 25 as the maximum number of cutColums and it auto filled 4.46 as the width. The correct width is 4.5 in this case. If i enter the correct width everything is perfect, but i can't do that in SKILL)

So my question is: How can i calculate the dimensions for the via shape and the maximum number of cutRows and cutColumns given the width and height of the intersection space in SKILL just as the GUI does it.

Greetings,

Niels

Edit:

I also looked at the via* functions like viaGenerateViasInArea but they seem to require a higher license.

Virtuoso version as per getVersion() is ICADVM18.1-64b 03/10/220

  • 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