• 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. Creating rectangles with rounded corners in Layout using...

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 16945
  • 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

Creating rectangles with rounded corners in Layout using SKILL (PCell)

Sheppy
Sheppy over 9 years ago

HI,

I have written some code to generate the layout of a p-cell high-voltage transistor. All shapes created are rectangles (like the active, contact, metal layers).

While measuring the devices it was found that the break-down voltage was really low, much lower than anticipated. One of the solutions that has already been tested, and has been proven to be very effective, is to create rounded corners for some of the layers involved. The layouts to test this were all generated manually. No it is my task to put that (rounding the corners) in the p-cell.

Is there an easy solution to convert a rectangle in a rounded-corner rectangle? Something like this already exists in Cadence as a SKILL procedure? If not I just have to come-up with something clever myself...

With kind regards,

Sjoerd

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Sjoerd,

    There's no built-in function to do this within a PCell (there's leModifyCorner, but that can't be used in a PCell). So you'd have to write something to do this yourself.

    However, this is easily done using Virtuoso PCell Designer. I added one command to my existing transistor pcell (this is a silly example - just did it because I didn't have anything more relevant to had):

    Virtuoso PCellDesigner is a Cadence services product - we have quite a few customers for it world wide now. You can find a little more about it from these CDN Live presentations:

    • PCell Class Library for Use Over Different Process Nodes by Using PCell Designer and Object Oriented Programming
    • Hierarchical Module Design With Cadence PCell Designer
    • Jumping analog layout productivity and accuracy with PCell

    I'd be happy to give you a demo (the tool is developed by my team) if you're interested (send me a friend request on the forum - note, this is not an invitation to everyone to send me a friend request; I get too many people sending me friend requests with questions in which they could have posted in the forums; I only accept friend requests when I have asked people to contact me this way so that we can get in touch directly).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Sjoerd,

    There's no built-in function to do this within a PCell (there's leModifyCorner, but that can't be used in a PCell). So you'd have to write something to do this yourself.

    However, this is easily done using Virtuoso PCell Designer. I added one command to my existing transistor pcell (this is a silly example - just did it because I didn't have anything more relevant to had):

    Virtuoso PCellDesigner is a Cadence services product - we have quite a few customers for it world wide now. You can find a little more about it from these CDN Live presentations:

    • PCell Class Library for Use Over Different Process Nodes by Using PCell Designer and Object Oriented Programming
    • Hierarchical Module Design With Cadence PCell Designer
    • Jumping analog layout productivity and accuracy with PCell

    I'd be happy to give you a demo (the tool is developed by my team) if you're interested (send me a friend request on the forum - note, this is not an invitation to everyone to send me a friend request; I get too many people sending me friend requests with questions in which they could have posted in the forums; I only accept friend requests when I have asked people to contact me this way so that we can get in touch directly).

    Regards,

    Andrew.

    • 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