• 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. Pcell Evaluation Failed Issue

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 125
  • Views 23460
  • 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

Pcell Evaluation Failed Issue

Muralidhar
Muralidhar over 6 years ago

Hi,

I have an issue, when I invoke the tool I am getting pcell Evaluation failed for all the cells coming from techlib.

I am working in 10 nm and tech lib is cmos10lpp.

What I did is I copied cmos10lpp folder from one path to another path (into my local) and I added my local path to cds.lib

Then I tried to invoke the virtuoso (V12.3-64.b) then if I tried to open the layouts all the cells pointing to cmos10lpp are getting pcell evaluation failed.

I re invoked the tool and attached the techlib also but same problem exists.

I opened the layout then  in the verify ---> Markers --> Explain and then clicked on the layout then it is saying

location: ("cmos10lpp" "egpfet_b" "layout")
reason:   ("eval" 0 t nil ("*Error* eval: undefined function" Secln10lpp_mosfet))

Can any one tell me the solution please.

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago

    I don't know the specifics of that PDK, but the most likely explanation is that the cmos10lpp library contains a libInit.il file which attempts to load some supporting SKILL functions used within the pcells. I would expect that it is trying to load the code (maybe as SKILL files or encrypted SKILL files or a context file) in a location somewhere relative to the location of the library (e.g. ../skill or something like that). So when you've copied it to your local area, that path doesn't exist, so functions needed within the pcells haven't been loaded. 

    You should check the contents of the libInit.il (and also the structure of the PDK) to see if such a relative path exists, and you might need to create a symbolic link in your working dir to the "skill" directory (if that's what it is called) in the PDK hierarchy.

    Hope that helps. It's a bit of a guess without being to see the specifics.

    Regards,

    Andrew.

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

    Thank you Andrew. It missed the skill files. Now it is fine

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

    Hi,

    I know this question is not related to this thread but from this only the problem came

    We released a database for base tape out and after some days we released another data base for metal tape out. normally when we do the LVL (layout versus layout check) between base tape out data and metal tape out data we should not have any changes in the base layers and we didn't find any changes also. But later got some EM issue so we thought to release data again for metal tape out, but unfortunately we got PDK update they asked us  to release with new PDK and they said there is no change in the PDK (only minor) 

    Previous PDK some one downloaded and this new PDK we downloaded it. With this new PDK when we run LVL we got some strange error. when we check that layer number in the layer map file we don't have it in layer map.

    After so many test cases we found the solution that in the cmos10lpp_tech folder we have a file  with the name "cmos10lpp_tech.objectmap_".

    When we download the PDK some how this file is downloaded like "cmos10lpp_tech.objectmap" (I mean without _underscore), previous PDK had underscore
    when we changed the filename to underscore that error is cleaned.

    and also without changing the file name when we are exporting oasis(or gds)  in the options if we enable "Ignore Object Map file from technology" then also this error got cleaned.

    For me it is not making any sense. cnan you explain what is the problem?

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

    OK, the objectmap is used by the stream and OASIS interfaces to map things like blockages, boundaries, markers etc to a physical layer and datatype in the stream file. You can specify this yourself in the Export Stream form, but (if you search in cdnshelp or the Virtuoso help menus for "objectmap") you'll see that it tells you that it picks this up automatically if it is called techlibname.objectmap and lives in the technology library (called techlibname or cmos10pp_tech in your case).

    By renaming it to have underscore afterwards, it would not be used automatically - similarly to if you check the "Ignore Object Map file from technology". You should look at the contents of this file as it would tell you what objects it is mapping to which layer/datatype.

    Whether those layer/datatypes are vital to be present in the stream file is an answer that can only be provided by the foundry. I suspect not, but you shouldn't take my word for it as I have no familiarity with the process and can't comment on the foundry's behalf.

    Regards,

    Andrew.

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

    OK. Thank you

    • 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