• 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. Starting with skill

Stats

  • Locked Locked
  • Replies 30
  • Subscribers 144
  • Views 21634
  • 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

Starting with skill

Inas
Inas over 10 years ago

Hello,

Now i have a simply skill code to generate a layout having a transistor, and i entered the parameters in a list.

one of the parameters i want o write is the SDshrink but i can't find out how to use it (write it).

ALso i confusde about the CDF parameter types and values, how can i know what should i write?

Thanks alot

  • Cancel
  • Inas
    Inas over 10 years ago
    Sorry for that i started a new thread
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Inas
    Inas over 10 years ago

    i knew that we can convert any layout to skill code using dbWriteSkill() command

    but when i searched for that command in the skill layout user guide i found nothing so is there another document with another name inside cadence having this command description or guide?

    Thanks alot

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    That's because it's a database function, not a layout editor function. So it is in the Virtuoso Design Environment SKILL Reference. If you run `cds_root virtuoso`/tools/bin/cdnshelp or use Help from the CIW (say), you can search for dbWriteSkill and find it that way.

    Note that using dbWriteSkill is not going to write a particularly pretty or reusable piece of SKILL code. So by all means use it to find out the functions needed to create particular objects, but I wouldn't really start any code from it.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Inas
    Inas over 10 years ago
    so you mean use it just to have a guide fro me how to do certain thing with layout but in the reverse way right?
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    Unknown said:
    so you mean use it just to have a guide fro me how to do certain thing with layout but in the reverse way right?

    I don't really understand your question. All I was saying that dbWriteSkill merely produces code that will reproduce the cellView in question - it's not a good example of how you would build a layout or schematic from SKILL, apart from learning what the arguments to the individual functions do (which you could also get from the documentation).

    Similarly, using the SKILL code from the graphical PCell editor is not a great route either - this graphical pcell interface is very old and has not had significant work done on it for many years now.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Inas
    Inas over 10 years ago
    i want to get the cell view ID so i'm using dbGetCellViewDdId (layout) is there a mistake with what i'm doing?
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago

    Unknown said:
    i want to get the cell view ID so i'm using dbGetCellViewDdId (layout) is there a mistake with what i'm doing?

    That rather depends on which "ID" you want. This will give you the "dd" ID (which is a handle on the cellView directory); if you wanted the "db" ID (the CDBA/OA cellView id, with which you can access the shapes, nets, etc or create physical or connectivity objects within, then you'd need whatever you're passing to dbGetCellViewDdId - which is the return value of dbOpenCellViewByType or geGetEditCellView/geGetWindowCellView if in a graphical environment.

    Really your questions are too vague to be answered specifically - if we don't know what you are actually trying to do, it's really hard to be sure that we're giving you the answer you need.

    Kindest Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Inas
    Inas over 10 years ago
    I'm using the dbWriteSKill command but among its parameters there is "d_CellViewID" so i need to know how to get this ID. Pardon me if i'm not able to give detailed explanation i'm very new with skill and this details, i just used to deal with the layout through the graphical editor
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 10 years ago
    In that case you want dbOpenCellViewByType (or maybe geGetEditCellView() if you have the layout open in a window).
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Inas
    Inas over 10 years ago

    You mean for example:

    CVID=dbOpenCellViewByType("inas"  "test"  "layout"  "maskLayout"  "r")

    dbWriteSKill(CVID.......)

    right?

    • 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