• 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. Modifying a string passed through pPar()

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 125
  • Views 14721
  • 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

Modifying a string passed through pPar()

Roderick
Roderick over 8 years ago

I've got a couple of s-parameter files that I want to make symbols for so I can easily use them in my schematics. For that, I made a symbol (let's call it sparblock), and a schematic view that contains an nport from analogLib. On the properties of that nport I set the value for the data file to be pPar("filename").

If I now instantiate an sparblock in my schematic I can set the "filename" property to, say, "/data/models/spar/model1.sp" and everything works.

However, I'd like to make it a bit more user-friendly by not requiring the user to fill in the whole path, so I want to add the path in front of the filename. I changed the property of the nport to be

strcat("/data/models/spar/" pPar("filename"))

And then only have "model1.sp" on the sparblock property. However, Spectre now tells me

ERROR (SFE-874): "netlist" 7: Unexpected operator "/". Expected end of file or end of line.

So apparently it doesn't know how to interpret the strcat() expression. Is there a way to concatenate two strings on the property form like this?

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

    That's not surprising, as you can use AEL (Analog Expression Language) expressions in CDF parameter fields, but not SKILL.

    The simplest way of providing the path component is to use the Setup->Simulation Files->Include Path field in ADE. Then the actual components can just use the leaf filename, but the path can be specified as the include path in ADE.

    If you really want to do it via the component, you'd have to use a CDF callback on the level above to add the path onto the filename field. Probably not the best idea though as that would stop you really being able to use pPar() on that field to keep passing through the hierarchy.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    That's not surprising, as you can use AEL (Analog Expression Language) expressions in CDF parameter fields, but not SKILL.

    The simplest way of providing the path component is to use the Setup->Simulation Files->Include Path field in ADE. Then the actual components can just use the leaf filename, but the path can be specified as the include path in ADE.

    If you really want to do it via the component, you'd have to use a CDF callback on the level above to add the path onto the filename field. Probably not the best idea though as that would stop you really being able to use pPar() on that field to keep passing through the hierarchy.

    Regards,

    Andrew

    • 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