• 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. diva extract set switches error

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 125
  • Views 16054
  • 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

diva extract set switches error

sdineshkumar
sdineshkumar over 9 years ago
library: test
cell:    not
view:    layout
Rules come from library gpdk180.
Rules path is divaEXT.rul.
Inclusion limit is set to 1000.
Switches used: Extract_parasitic_caps.
Parsing drcExtractRules of "/usr/local/cadence/installs/IC616/tools.lnx86/gpdk180_v3.3/libs.oa22/gpdk180/divaEXT.rul"...
 
*WARNING* No such switch "Extract_parasitic_caps" in the rules process flow.
Check the rules switch setting for correctness!
Errors exist in the rules file "/usr/local/cadence/installs/IC616/tools.lnx86/gpdk180_v3.3/libs.oa22/gpdk180/divaEXT.rul".
Verification program terminated
how do i set switches for the extraction. i dont get any pop up when i click on set switches
  • Cancel
  • sdineshkumar
    sdineshkumar over 9 years ago
    I have set the mode to be analog. DRC and LVS checks are working fine.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    The error is pretty clear. There's no such switch in the rules file. If you hit the "set switches" button it would bring up a form with the available switches.

    In the case of the gpdk180, there are no switches defined in the rules file - so you should leave this blank. Why did you enter "Extract_parasitic_caps"?

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sdineshkumar
    sdineshkumar over 9 years ago

    My aim is to extract parasitic capacitances and resistances, when I run extract without setting any switches, it doesn't extract any parasitics, so I entered Extract_parasitic_caps but that doesn't seem to work too. So I would like to know how to do RC extraction using divaEXT.rul

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

    The Diva extraction rules in this PDK are not for parasitic extraction. Whilst Diva can be used for that, the extraction rules here are to extract the designed devices as a precursor for LVS. There are no rules in the rule file to deal with parasitics.

    If you want parasitic extraction with gpdk180, use Assura and QRC (the rules are provided).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • sdineshkumar
    sdineshkumar over 9 years ago
    I am trying to run DRC check using assuarDRC.rul with gpdk45nm technology file, but its giving the following error.
    I am not able to figure out what it means, is the file corrupt?
    error:  Not supported in layerDefs: metal1_conn_text = text("Metal1" type("drawing")).
    error:  Not supported in layerDefs: metal1_conn_pintext = pinText("Metal1").
    error:  Not supported in layerDefs: metal2_conn_text = text("Metal2" type("drawing")).
    error:  Not supported in layerDefs: metal2_conn_pintext = pinText("Metal2").
    error:  Not supported in layerDefs: metal3_conn_text = text("Metal3" type("drawing")).
    error:  Not supported in layerDefs: metal3_conn_pintext = pinText("Metal3").
    error:  Not supported in layerDefs: metal4_conn_text = text("Metal4" type("drawing")).
    error:  Not supported in layerDefs: metal4_conn_pintext = pinText("Metal4").
    error:  Not supported in layerDefs: metal5_conn_text = text("Metal5" type("drawing")).
    error:  Not supported in layerDefs: metal5_conn_pintext = pinText("Metal5").
    error:  Not supported in layerDefs: metal6_conn_text = text("Metal6" type("drawing")).
    error:  Not supported in layerDefs: metal6_conn_pintext = pinText("Metal6").
    error:  Not supported in layerDefs: metal7_conn_text = text("Metal7" type("drawing")).
    error:  Not supported in layerDefs: metal7_conn_pintext = pinText("Metal7").
    error:  Not supported in layerDefs: metal8_conn_text = text("Metal8" type("drawing")).
    error:  Not supported in layerDefs: metal8_conn_pintext = pinText("Metal8").
    error:  Not supported in layerDefs: metal9_conn_text = text("Metal9" type("drawing")).
    error:  Not supported in layerDefs: metal9_conn_pintext = pinText("Metal9").
    error:  Not supported in layerDefs: metal10_conn_text = text("Metal10" type("drawing")).
    error:  Not supported in layerDefs: metal10_conn_pintext = pinText("Metal10").
    error:  Not supported in layerDefs: metal11_conn_text = text("Metal11" type("drawing")).
    error:  Not supported in layerDefs: metal11_conn_pintext = pinText("Metal11").
    error:  Not supported in layerDefs: poly_conn_text = text("Poly" type("drawing")).
    error:  Not supported in layerDefs: poly_conn_pintext = pinText("Poly").
    layerDefs("df2" (Bondpad = (layer "Bondpad" type("drawing"))) (CapMetal = (layer "CapMetal" type("drawing"))) (Cont = (layer "Cont" type("drawing"))) (ESDdummy = (layer "ESDdummy" type("drawing"))) (INDdummy = (layer "INDdummy" type("drawing"))) (M1Resdum = (layer "M1Resdum" type("drawing"))) (M2Resdum = (layer "M2Resdum" type("drawing"))) (M3Resdum = (layer "M3Resdum" type("drawing"))) (M4Resdum = (layer "M4Resdum" type("drawing"))) (M5Resdum = (layer "M5Resdum" type("drawing"))) (M6Resdum = (layer "M6Resdum" type("drawing"))) (M7Resdum = (layer "M7Resdum" type("drawing"))) (M8Resdum = (layer "M8Resdum" type("drawing"))) (M9Resdum = (layer "M9Resdum" type("drawing"))) (M10Resdum = (layer "M10Resdum" type("drawing"))) (M11Resdum = (layer "M11Resdum" type("drawing"))) (Metal1 = (layer "Metal1" type("drawing"))) (Metal2 = (layer "Metal2" type("drawing"))) (Metal3 = (layer "Metal3" type("drawing"))) (Metal4 = (layer "Metal4" type("drawing"))) (Metal5 = (layer "Metal5" type("drawing"))) (Metal6 = (layer "Metal6" type("drawing"))) (Metal7 = (layer "Metal7" type("drawing"))) (Metal8 = (layer "Metal8" type("drawing"))) (Metal9 = (layer "Metal9" type("drawing"))) (Metal10 = (layer "Metal10" type("drawing"))) (Metal11 = (layer "Metal11" type("drawing"))) (NPNdummy = (layer "NPNdummy" type("drawing"))) (Nburied = (layer "Nburied" type("drawing"))) (Nhvt = (layer "Nhvt" type("drawing"))) (Nimp = (layer "Nimp" type("drawing"))) (Nlvt = (layer "Nlvt" type("drawing"))) (Nwell = (layer "Nwell" type("drawing"))) (Nzvt = (layer "Nzvt" type("drawing"))) (Oxide = (layer "Oxide" type("drawing"))) (Oxide_thk = (layer "Oxide_thk" type("drawing"))) (PNPdummy = (layer "PNPdummy" type("drawing"))) (Phvt = (layer "Phvt" type("drawing"))) (Pimp = (layer "Pimp" type("drawing"))) (Plvt = (layer "Plvt" type("drawing"))) (Poly = (layer "Poly" type("drawing"))) (Psub = (layer "Psub" type("drawing"))) (ResWdum = (layer "ResWdum" type("drawing"))) (Resdum = (layer "Resdum" type("drawing"))) (SiProt = (layer "SiProt" type("drawing"))) (Via1 = (layer "Via1" type("drawing"))) (Via2 = (layer "Via2" type("drawing"))) (Via3 = (layer "Via3" type("drawing"))) (Via4 = (layer "Via4" type("drawing"))) (Via5 = (layer "Via5" type("drawing"))) (Via6 = (layer "Via6" type("drawing"))) (Via7 = (layer "Via7" type("drawing"))) (Via8 = (layer "Via8" type("drawing"))) (Via9 = (layer "Via9" type("drawing"))) (Via10 = (layer "Via10" type("drawing"))) (metal1_conn_text = (text "Metal1" type("drawing"))) (metal1_conn_pintext = (pinText "Metal1")) (metal2_conn_text = (text "Metal2" type("drawing"))) (metal2_conn_pintext = (pinText "Metal2")) (metal3_conn_text = (text "Metal3" type("drawing"))) (metal3_conn_pintext = (pinText "Metal3")) (metal4_conn_text = (text "Metal4" type("drawing"))) (metal4_conn_pintext = (pinText "Metal4")) (metal5_conn_text = (text "Metal5" type("drawing"))) (metal5_conn_pintext = (pinText "Metal5")) (metal6_conn_text = (text "Metal6" type("drawing"))) (metal6_conn_pintext = (pinText "Metal6")) (metal7_conn_text = (text "Metal7" type("drawing"))) (metal7_conn_pintext = (pinText "Metal7")) (metal8_conn_text = (text "Metal8" type("drawing"))) (metal8_conn_pintext = (pinText "Metal8")) (metal9_conn_text = (text "Metal9" type("drawing"))) (metal9_conn_pintext = (pinText "Metal9")) (metal10_conn_text = (text "Metal10" type("drawing"))) (metal10_conn_pintext = (pinText "Metal10")) (metal11_conn_text = (text "Metal11" type("drawing"))) (metal11_conn_pintext = (pinText "Metal11")) (poly_conn_text = (text "Poly" type("drawing"))) (poly_conn_pintext = (pinText "Poly")) (bulk = (cellBoundary root)))
    *Error* eval: undefined function - drcCluster
    Errors exist in the rules file "/usr/local/cadence/installs/IC616/tools.lnx86/gpdk045_v_4_0/gpdk045/assuraDRC.rul".
    Verification program terminated.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    I had to guess what on earth you were doing, but I managed to reproduce the same error by trying to use Diva DRC using that file.

    That's not going to work and isn't supposed to work. I've no idea why you did that - the rule file is for Assura not Diva. Whilst there is a lot of overlap in the rule formats, they are not interchangeable. 

    So you appear to be using completely the wrong verification tool for the rule file. Nothing wrong with the rule file, it's just intended for Assura (the clue is in the file name).

    You do appear to have a slightly strange installation structure as well, because normally GPDK is not included in the IC616 installation hierarchy, and also that rule file doesn't live within the gpdk045 library itself.

    Regards,

    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