• 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. create a new switch for variable acces using ocean scri...

Stats

  • Locked Locked
  • Replies 9
  • Subscribers 144
  • Views 15659
  • 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

create a new switch for variable acces using ocean script

C4n0s4
C4n0s4 over 14 years ago
Hi everyone! I would like to create a new switch that's is very similar to sp2tswitch (analogLib). The only difference between them is that i could assign a variable name instead of having to go to the window component and acces components parameters directlly. By the way, the idea is to control the switch using a variable in a ocean script. How can i do that? Is that possible? Best regards, Canosa
  • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    First of all, I'd like to check why you're using this component. The historical reason is usually because people are trying to analyze stability by closing the loop during DC and opening it during AC - but you'd be far better off using spectre's stb analysis which analyzes the loop gain of a loop whilst keeping the loop closed all the time. Perhaps you're doing something else, but this has tended to be the main reason why people used this component.

    However, the issue you're facing is because the switch settings are done via cyclic fields, and so you can't parameterize them. That's easy to fix though. Follow this process:

    1. Copy the analogLib/sp2tswitch cell to your own library
    2. Do Tools->CDF->Edit (in the CIW), set the CDF Type to "Base" and then Browse to the copy of sp2tswitch you just made
    3. In the Component Parameters section, hit the Edit button
    4. For each of the parameters position, dcPosition, acPosition, tranPosition, icPosition set the following:
      1. paramType set to "string"
      2. Hit apply on the Edit CDF Parameter form before changing the Choose Parameter to the next parameter.
    5. OK the main Edit CDF form.

    Now you can place an instance of your copy of sp2tswitch in your design, and put a design variable in any of the fields you changed the CDF for. This means you'll be able to change the values using desVar() in your OCEAN script.

    Best Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • gau27
    gau27 over 13 years ago

     Hi Andrew,

    This method doesn't seem to work with the current Virtuoso (IC615_505)

     When I try to edit the 'cyclic' Type to 'string' I see

    ________________________

    *WARNING* Effective CDF parameter 'tranPosition', cell 'param_sw2p', library 'P6277',
        'choices' field invalid for this type of parameter.
    *WARNING* Effective CDF parameter 'position', cell 'param_sw2p', library 'P6277',
        Can't override a parameter's type.

    ____________________

    I'm trying to create a 2-pole switch controlled by a design parameter from ADE

    Maybe there's already some other way of doing this, I didn't find it from a quick search.

    Please advise

    Cheers,

    Gautham

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

     Gautham,

    It sounds (from the error message) as if you are trying to change Effective CDF rather than the Base CDF. That won't work. The instructions I gave were to edit the Base CDF.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • gau27
    gau27 over 13 years ago

     Thanks for the quick reply, Andrew.

    I re-checked I'd edited the  Base parameter rather than Effective. To my surprise, when I instantiate the modified symbol, all the parameter fields position, dcPosition etc.. have all disappeared when I query the symbol! I'm only left with  Offset and Multiplier parameter fields which I didn't edit.

    Is there a way to attach image from the pc onto the thread? I see it accepts image from only a URL?

     Cheers, i'm able to attach image now.

    I still get the above Warning messages even though I edit the Base parameters. After OK'ing the CDF edit form, I find those parameter fields have disappeared

     

    • spdt_sym_CDF_edit.PNG
    • View
    • Hide
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    You can add attachments on the Options tab on the forum when you're composing your reply.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • gau27
    gau27 over 13 years ago

     Hiya, did you get a chance to see if you're able to reproduce this issue?

     

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

    Because you edited an existing post, I didn't get a notification that you'd responded.

    So no, I've not looked at this yet.  I'm out of the office the next couple of days, but I'll take a look when I have a chance.

    Andrew.

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

    Gautham,

    I discovered that this is because of a difference in the Edit CDF form in IC61X. I think it's a bug really, but as a workaround you can do the following:

    For each of the parameters position, dcPosition, acPosition, tranPosition, icPosition, click on them, and then erase the Choices field (it will show as "0 1 2"), and then set the type to string. You may then want to fill in the Default value back to 0 again. If you do that, you'll not have the warning you were seeing, and the parameter type will be correctly updated. What was happening was that the CDF parameter was not being recreated, and hence it disappeared - which is why it didn't show up on the edit properties form.

    You might also want to report this via Customer Support (please reference this thread) so that the bug can be filed to get this to behave more sensibly.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • gau27
    gau27 over 13 years ago

     Cheers, Andrew.

    Your fix worked like a charm!

    Appreciate your efforts.

    I've filed a Service Request Number: 42706624 for fixing this bug.

     

    Regards,

    Gautham

     

    • 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