• 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. Error during stream out

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 143
  • Views 14871
  • 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 during stream out

Mohannad
Mohannad over 14 years ago

 Hello,

I am making a PCELL using skill. When I load the PCELL .il file through icfb window, everything works fine. I insert te cell in another layout and then try to steam out the layout to a .gds file, but I get this error:

FATAL(449): Pcell eveluation failed. This could happen as a result ofeither a syntax error or the use of an unsupported PIPO function

 I would greatly appreciate any help.

 Thank you very much

  • Cancel
  • skillUser
    skillUser over 14 years ago

     Hi Mohannad,

    Most likely you are using a function that is not supported within PCells - it may work correctly in an interactive icfb/virtuoso session, but PIPO (or Xstream for the CI61x releases) do not include definitions for functions that are not supported within a PCell.  "What functions are supported?" you may ask - there is a section in the documentation "Safety Rules for Creating SKILL Pcells".  You should only use core SKILL functions, and those with the approved prefixes; namely db, dd, cdf, rod and tech (plus a few others).

    Hopefully this will resolve your issue (but next I expect you may be asking for equivalent functionality for the function(s) that is/are causing the issue?).

    Regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mohannad
    Mohannad over 14 years ago

     Hi Lawrence,

     I only use dbReplaceProp, dbCreatePolygon and dbCreateEllipse. All of them are supported, right?

    There are 2 warnings that may have cause the problem:

      *WARNING* ("eval" 0 t nil ("Error* eval: unbound variable" pi))

      *WARNING* Error kept in "errorDesc" property of the label "pcallEvalFailed" on layer/purpose "marker/error" in the submaster.

    Please note that I define pi as a global variable before all functions using the statement:

    pi = 3.141592654

    and that the Pcell is generated correctly witbout problems from icfb prompt.

     

    Thank you very much

    Mohannad

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • skillUser
    skillUser over 14 years ago

    Hi Mohannad,

    My apologies, yes these functions are indeed supported.  I think that the issue is the way you are trying to access the global variable for the value of pi, how would you set this for PIPO/Stream Out?  Please see my solution 11111066 for accessing mathematical constants in SKILL - this should provide a core-SKILL method for getting "pi" (and other mathematical constants).

    Regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mohannad
    Mohannad over 14 years ago
    Hi Laurence,

    I think the problem may be something to do with the "libInit.il file" stated in p. 203 of the pcellref file. I tried the solution written in the reference, but nothing worked. I think the libInit.il file was not loaded. I do not know why.

    I will greatly appreciate any explanation for this.

    Thanks you very much.
    Mohannad


    Mohannad Elsayed, MSc
    PhD Student, Wireless ICs and MEMS Laboratory
    Department of Electrical and Computer Engineering
    McGill University
    Address: 3480 University Street,
                    McConnell Engineering Building, room 524,
                    Montreal, Quebec H3A 2A7,
                    Canada
    Phone:    +1 514 398 5810
    E-mail:     mohannad.elsayed@mail.mcgill.ca
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    Do you have any functions or global variables used in your code defined in either the libInit.il (or a file loaded from the libInit.il) of the library containing the pcells?

    It's unclear as to what you've tried, so very hard to debug what the problem is. Clearly the pcell evaluation in the background process is not seeing the definition of something, and hence the pcell is not being evaluated. Usually such issues are simple - just a matter of ensuring that everything is defined, as well as ensuring that any illegal pcell function is not being used (because those functions will not be available in the background process).

    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