• 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. Calculator special function Forms

Stats

  • Locked Locked
  • Replies 15
  • Subscribers 144
  • Views 17956
  • 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

Calculator special function Forms

Curtisma
Curtisma over 7 years ago

I am trying to make a calculator function with a form.  However I am finding the documentation to do this lacking and have some questions about setting up the form and about setting the buffer.

The example provided uses a function "ahiCreateStringField" which is otherwise undocumented.  It seems to act exactly the same as "hiCreateStringField" (no "a" at the start")  However when I define a field using a function without the a and one using the function with the a in the same calculator form it doesn't display the form when you click on the function in the calculator.  I also noticed that I seem to be able to add other types of fields by taking a normal form function and appending "a" on the front.  However none of theses other functions are mentioned at all in the documentation.  

Form Questions

1. What is the functional difference between "ahiCreateStringField" and "hiCreateStringField"?

2. Do all of the form functions have an "a" equivalent?  Is there a way to check what arguments they accept?

Buffer Questions

3. Currently I am using "calCreateSpecialFunctionsForm"  to set the calculator buffer.  However this automatically puts the current buffer value as the first argument to my function. It seems like I could write my own CB function using "calSetBuffer" to set the buffer,  Is there anything else I need to take care of when I do this? 

4.  Also I am using "calCreateSpecialFunctionsForm"  but it seems like it would be more flexible to perform it's function myself to make a more advanced form. I could use "calRegisterSpecialFunction" to register the function, and "hiCreateForm" to open the form.  Is there anything else I need to take care of when I do this?  Would I then need to use the form functions without "a" appended?

  • Cancel
Parents
  • Curtisma
    Curtisma over 7 years ago

    Andrew:
    I am trying to make a dynamic form that takes an integer, say n, and then has n fields after it. Hence I need to be able to specify a callback for that first field.

    I was able to get that plotting method I had mentioned on this forum last week working. I already have it working with a fixed number of waveforms but would like to be able to specify an arbitrary number of waveforms. Right now the only formatting the general multi trace plot function does is use the name of the output as the title.

    I have also written an auto plot function that is used for a standard plot that we document each time we run final verification on our designs. It has a fixed set of signals that must be plotted using the same format each time and we often have to rerun it and format it manually each time. The user just specifies the actual expression for each standard signal, e.g. the supplies, standard outputs, etc. Then the function formats and annotates each of them appropriately.

    However I will likely want to be able to add some more options in the future to the more general use function. I'm not sure if I should develop a standard to try to specify all the formatting I want in the expression or if I should try and save the settings to the ADEXL database directly. Perhaps I could use "axlSDBPutExtension" to save the output's formatting as an extension to the database. I'm just not sure how to make sure that the output and the entry in the database are in sync. Such as if the user were to change the output information without using the form. I suppose I could just document the limitation and skip that particular output if it is corrupted or store most of the data in the database and make the output text very simple. It would be nice if there was a way to store more information in an output object, such as another SKILL++ object that could store the formatting of the plot.

    -Curtis

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Curtisma
    Curtisma over 7 years ago

    Andrew:
    I am trying to make a dynamic form that takes an integer, say n, and then has n fields after it. Hence I need to be able to specify a callback for that first field.

    I was able to get that plotting method I had mentioned on this forum last week working. I already have it working with a fixed number of waveforms but would like to be able to specify an arbitrary number of waveforms. Right now the only formatting the general multi trace plot function does is use the name of the output as the title.

    I have also written an auto plot function that is used for a standard plot that we document each time we run final verification on our designs. It has a fixed set of signals that must be plotted using the same format each time and we often have to rerun it and format it manually each time. The user just specifies the actual expression for each standard signal, e.g. the supplies, standard outputs, etc. Then the function formats and annotates each of them appropriately.

    However I will likely want to be able to add some more options in the future to the more general use function. I'm not sure if I should develop a standard to try to specify all the formatting I want in the expression or if I should try and save the settings to the ADEXL database directly. Perhaps I could use "axlSDBPutExtension" to save the output's formatting as an extension to the database. I'm just not sure how to make sure that the output and the entry in the database are in sync. Such as if the user were to change the output information without using the form. I suppose I could just document the limitation and skip that particular output if it is corrupted or store most of the data in the database and make the output text very simple. It would be nice if there was a way to store more information in an output object, such as another SKILL++ object that could store the formatting of the plot.

    -Curtis

    • 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