• 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 Design
  3. FreePDK45 usage in Virtuoso

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 125
  • Views 24441
  • 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

FreePDK45 usage in Virtuoso

kevin998x
kevin998x over 5 years ago

I am using FreePDK45 in Virtuoso, but I faced the following error:

Error found by spectre during circuit read-in.

ERROR (SFE-23): "input.scs" 12: The instance `PM' is referencing an undefined model or subcircuit, `pfet'. Either include the file containing the definition of `pfet', or define `pfet' before running the simulation.

ERROR (SFE-23): "input.scs" 16: The instance `NM' is referencing an undefined model or subcircuit, `nfet'. Either include the file containing the definition of `nfet', or define `nfet' before running the simulation.

Following advices at https://www.edaboard.com/threads/cadence-virtuoso-and-mmsim-installation.305420/page-3 does not really help.

Could anyone advise ?

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

    I downloaded the NCSU FreePDK45 to take a look. You should report this to NCSU because there's a problem with the data they ship.

    In Setup->Model Libraries, you need to add (for example):

    $PDK_DIR/ncsu_basekit/models/hspice/hspice_nom.include

    (there are also files for hspice_ff.include and hspice_ss.include). However there is an error in these files for the 1.4 version of the PDK. In these include files there are lines such as this:

    .inc '$PDK_DIR/ncsu_basekit/models/hspice/tran_models/models_nom/NMOS_VTG.inc
    .inc '$PDK_DIR/ncsu_basekit/models/hspice/tran_models/models_nom/PMOS_VTG.inc

    The quotation marks are not balanced (there's a missing quotation mark at the end of the line) so spectre fails because of the error. You need to fix them all to be like this:

    .inc '$PDK_DIR/ncsu_basekit/models/hspice/tran_models/models_nom/NMOS_VTG.inc'
    .inc '$PDK_DIR/ncsu_basekit/models/hspice/tran_models/models_nom/PMOS_VTG.inc'

    (same for the rest of the lines, in all of the ff and ss files too).

    Having done that, it runs OK in Spectre.

    The documentation for the kit is rather sparse, to say the least. It doesn't even mention how to set it up for HSPICE.

    Perhaps you should consider using gpdk045 instead from http://pdk.cadence.com ?

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • kevin998x
    kevin998x over 4 years ago in reply to Andrew Beckett

    I encountered another different error with standard cell.  What is wrong with XOR2 (I44) ?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • kevin998x
    kevin998x over 4 years ago in reply to Andrew Beckett

    I encountered another different error with standard cell.  What is wrong with XOR2 (I44) ?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to kevin998x

    The error is pretty clear - it can't find a schematic view to switch into. I just downloaded the ncsu-cdk-1.6.0.beta (which seems to be the latest) and it doesn't have schematic (or cmos_sch) views for any of the xor or xnor gates (it has them for many of the other logic gates). You could have seen this by looking in the library manager. It only has functional views - so your solution is either to create a schematic yourself, or do a mixed-signal simulation using AMS where you can use the functional view instead.

    You might want to contact NCSU to see if they plan to do anything about this. I wouldn't have high hopes though since everything in the CDK is dated from 2007.

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • kevin998x
    kevin998x over 4 years ago in reply to Andrew Beckett

    > It only has functional views - so your solution is either to create a schematic yourself, or do a mixed-signal simulation using AMS where you can use the functional view instead.

    Create a schematics as in create the XOR gate from scratch using mosfets ?

    What do you exactly mean by AMS simulation ?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to kevin998x
    kevin998x said:
    Create a schematics as in create the XOR gate from scratch using mosfets ?

    Yes.

    kevin998x said:
    What do you exactly mean by AMS simulation ?

    Set the simulator in ADE to be "ams" (Setup->Simulator). However, if you don't know how to do that, that's beyond the scope of answering here. You'd need access to an INCISIVE or XCELIUM release which would need to be in your UNIX path, plus you would need to create a config view as AMS always needs a config. Then you would need to set up the connect rules so that it knows how to convert digital signals to analog and vice versa. If you're going to go down this route, I'd speak to your supervisor first.

    You might be better off using gpdk45 instead of this NCSU PDK - you can download both the PDK and a standard cell library from http://pdk.cadence.com (although as a student, which I assume you are, you may have to go via your University Liaison/Professor to do that).

    Andrew

    • 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