• 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. Error coming up when trying to do DRC and Extraction in...

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 125
  • Views 13607
  • 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

Error coming up when trying to do DRC and Extraction in CADENCE with AMS design kit

vaishakprathap
vaishakprathap over 6 years ago

The following are the DRC and Extraction errors coming up:

DRC started at Mon Aug 5 19:17:07 2019

Validating hierarchy instantiation for:

library: 035_Layout_PMOS_with_pads_flat_final

cell: PIOTA_TOTAL_in_padframe

view: layout

Rules come from library TECH_C35B4.

Rules path is drc.rul.

Inclusion limit is set to 1000.

Parsing drcExtractRules of "/home/ahtitus/AMS035DK/AMS_410_ISR15/cds/HK_C35/TECH_C35B4/drc.rul"...

*Error* eval: undefined function - avGetAssuraVersion

Errors exist in the rules file "/home/ahtitus/AMS035DK/AMS_410_ISR15/cds/HK_C35/TECH_C35B4/drc.rul".

Verification program terminated.

Extraction started at Mon Aug 5 19:59:04 2019

Validating hierarchy instantiation for:

library: 035_Layout_PMOS_with_pads_flat_final

cell: PIOTA_TOTAL_in_padframe

view: layout

Rules come from library TECH_C35B4.

Rules path is extract.rul.

Inclusion limit is set to 1000.

Parsing drcExtractRules of "/home/ahtitus/AMS035DK/AMS_410_ISR15/cds/HK_C35/TECH_C35B4/extract.rul"...

*Error* eval: undefined function - avGetAssuraVersion

Errors exist in the rules file "/home/ahtitus/AMS035DK/AMS_410_ISR15/cds/HK_C35/TECH_C35B4/extract.rul".

Verification program terminated.

We have imported a GSD2 file into CADENCE and was trying to run Extraction and DRC for that layout imported from the GDS2 file. We had installed a design kit custom made for CADENCE from AMS foundry. But we are facing this  undefined function - avGetAssuraVersion problem. I can see this function avGetAssuraVersion in the drc.rul file extract.rul file. Should I just comment it out. The portion where this function comes is copied below:

no_layer_DEVDEF_opto_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_DEVDEF_opto") then no_layer_DEVDEF_opto_Q=t ))

no_layer_FIDEF_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_FIDEF") then no_layer_FIDEF_Q=t ))

no_layer_HRES_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_HRES") then no_layer_HRES_Q=t ))

no_layer_HVDEF_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_HVDEF") then no_layer_HVDEF_Q=t ))

no_layer_LVTDEF_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_LVTDEF") then no_layer_LVTDEF_Q=t ))

no_layer_MET4_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_MET4") then no_layer_MET4_Q=t ))

no_layer_METCAP_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_METCAP") then no_layer_METCAP_Q=t ))

no_layer_METRES_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_METRES") then no_layer_METRES_Q=t ))

no_layer_MIDOX_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_MIDOX") then no_layer_MIDOX_Q=t ))

no_layer_PFIMP_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_PFIMP") then no_layer_PFIMP_Q=t ))

no_layer_POLY2_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_POLY2") then no_layer_POLY2_Q=t ))

layer_PPLUS_DPL_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "layer_PPLUS_DPL") then layer_PPLUS_DPL_Q=t ))

no_layer_VIA3_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_layer_VIA3") then no_layer_VIA3_Q=t ))

no_library_PRIMLIBRF_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_library_PRIMLIBRF") then no_library_PRIMLIBRF_Q=t ))

no_library_SPIRALS_3M_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_library_SPIRALS_3M") then no_library_SPIRALS_3M_Q=t ))

no_library_SPIRALS_4M_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_library_SPIRALS_4M") then no_library_SPIRALS_4M_Q=t ))

no_library_SPIRALSD_4M_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "no_library_SPIRALSD_4M") then no_library_SPIRALSD_4M_Q=t ))

element_PHDNWA850_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "element_PHDNWA850") then element_PHDNWA850_Q=t ))

element_PHDNWB850_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "element_PHDNWB850") then element_PHDNWB850_Q=t ))

element_RPOLYZ_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "element_RPOLYZ") then element_RPOLYZ_Q=t ))

element_SBD5_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "element_SBD5") then element_SBD5_Q=t ))

library_ESDLIB_WIP_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "library_ESDLIB_WIP") then library_ESDLIB_WIP_Q=t ))

library_PRIMLIB_WIP_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "library_PRIMLIB_WIP") then library_PRIMLIB_WIP_Q=t ))

library_PRIMLIB_AS39513_Q=nil
if( strcmp(avGetAssuraVersion() "3.1") > 0 then
if( avHiddenSwitch( "library_PRIMLIB_AS39513") then library_PRIMLIB_AS39513_Q=t ))

;;=====================================================================

Kindly guide as to what to do???

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

    You appear to be trying to run Diva DRC (Verify->DRC) with an Assura rule deck. To run with Diva, you'd need a Diva rule deck (you'd need to check with AMS whether that is available). Alternatively you'd need to ensure that you have ASSURA installed, in your path, $ASSURAHOME, and then use Assura->Run DRC.

    Regards,

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • vaishakprathap
    vaishakprathap over 6 years ago in reply to Andrew Beckett

    Hi Andrew,

    Thank you very much for your prompt reply and guidance. Highly appreciate it. As you suggested the path to Assura was wrong. Corrected it and the Assura tool popped up in Virtuoso and we were able to run DRC successfully. Once again an enormous thanks for your swift reply and guidance.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • vaishakprathap
    vaishakprathap over 6 years ago in reply to Andrew Beckett

    Hi Andrew,

    Thank you very much for your prompt reply and guidance. Highly appreciate it. As you suggested the path to Assura was wrong. Corrected it and the Assura tool popped up in Virtuoso and we were able to run DRC successfully. Once again an enormous thanks for your swift reply and guidance.

    • 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