• 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. How to change the parameters of a Transistor (Pcell)

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 144
  • Views 8349
  • 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

How to change the parameters of a Transistor (Pcell)

Sathvik44
Sathvik44 over 2 years ago

Hello,

I have been trying to change the parameters(length and width) of a transistor from PRIMLIB.

I used the below command and have tried changing the parameters as follows:

instID=dbCreateInst(cellviewID master "I0" 1:1 "R0" 1)

instID ->l="2u"

instID->w="2u"

when I used the above commands to change the parameters, only the length of the transistor is changed but not the width.

The instID->w is changing the Width Stripe to 2u but not the width of the transistor.

I have even tried using dbCreateParamInst() but the same thing is happening.

Please let me know how to change the width of the transistor.

Sathvik

  • Cancel
  • Kevin Buck
    Kevin Buck over 2 years ago

    The total width is likely updated by a callback function which is not executed when you modify a property in SKILL. There is a built in function that forces execution of callbacks but I don't recall the name and I'm writing this reply from my mobile phone. You could also update the total width parameter as well as the finger/stripe width as it is just a simple multiplication operation.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to Kevin Buck

    I don't know the parameters used by PRIMLIB (which is a library from a specific foundry), but presumably you're not setting the correct parameters as Kevin mentioned. Most likely you'll need to call the callbacks - there's not a built-in function to do this, but you can use the code in my article 11018344 to achieve this.

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Kevin Buck
    Kevin Buck over 2 years ago in reply to Andrew Beckett

    Oops, I thought it was a built in function but I knew I had seen it before!

    • 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