Home > Community > Forums > Custom IC Design > issue with (* cds_inherited_parameter *)

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 issue with (* cds_inherited_parameter *) 

Last post Mon, Dec 16 2013 12:59 PM by Fabb. 4 replies.
Started by Fabb 07 Oct 2013 06:25 AM. Topic has 4 replies and 798 views
Page 1 of 1 (5 items)
Sort Posts:
  • Mon, Oct 7 2013 6:25 AM

    • Fabb
    • Top 500 Contributor
    • Joined on Mon, Jun 17 2013
    • Grenoble, Isere
    • Posts 22
    • Points 320
    issue with (* cds_inherited_parameter *) Reply
    Hello,

     I am developping a verilogA model and I would like  to implement a statistacl block for montecarlo purpose.

    After few search on community cadence, I found that  I need to use (* cds_inherited_parameter *).

    Nevertheless while using it (i.e (* cds_inherited_parameter *)), I got the following Warning

    Warning from spectre during AHDL read-in.

        WARNING (VACOMP-1116): VERILOG-A PERFORMANCE WARNING:

    Warning from spectre in `moldeName':`I29', during hierarchy flattening.

        WARNING (SFE-32): "/moldeName.va" 62: Duplicate specification for parameter `version' (using last value specified).

        WARNING (SFE-32): "/moldeName.va" 62: Duplicate specification for parameter `radius' (using last value specified).
    ....

            Further occurrences of this warning will be suppressed.

        WARNING (SFE-30): "/moldeName.va" 62: I29.moldeName: `RA0_var' is not a valid parameter for an instance of `spitt behavioral'.  Ignored.

        WARNING (SFE-30): "/moldeName.va" 62: I29.moldeName: `RA0' is not a valid parameter for an instance of `spitt behavioral'.  Ignored.

    .....

    Further occurrences of this warning will be suppressed.

    Is someone could help me.

    Regards,
    Fab
    • Post Points: 20
  • Mon, Oct 7 2013 9:10 AM

    Re: issue with (* cds_inherited_parameter *) Reply

    Fab,

    Could you post the relevant bit of code and the version of spectre you're using? It's hard to guess what the problem is without seeing an example (at least snippet) of code...

    Thanks,

    Andrew.

    • Post Points: 20
  • Mon, Oct 7 2013 9:26 AM

    • Fabb
    • Top 500 Contributor
    • Joined on Mon, Jun 17 2013
    • Grenoble, Isere
    • Posts 22
    • Points 320
    Re: issue with (* cds_inherited_parameter *) Reply
    Andrew,

    Find bellow the pieces of code

     model Card skeleton

    section STAT

         parameters RA0_var = 0

         statistics {

               mismatch {

               vary RA0_var dist=gauss std=10 percent=no

               }

         }

              include " cornerFile.scs" section=MODELS_CORE             

    endsection STAT

     
    section MODELS_CORE

         ahdl_include "../myModel.va"

        

         subckt symbolName1 (pin1 pin2 pin3) // symbolName1 should be identical to symbol name

               // CDF parameters, real values set in the instance through CDF

               parameters radius = 9999 initstate="P"

               local_I_0 (pin1 pin2 pin3) device1 radius=radius initstate=initstate

         ends mtjSttPe       

     

         model device1 myModelName

               //techno parameters

               + RA0 = effRA0      

    endsection MODELS_CORE


     I also tried to use an inline subckt instead of a basic subckt, but with the same result

    Then verilogA file


    module myModel(p1, p2, p3);

       (* cds_inherited_parameter *) parameter real RA0_var=0.0;

         localparam real RA0eff = RA0 + RA0_var;

            parameter real radius=90n;


    ...


    And a CDF is defined, link to the symbol of symbolName1 , where radius is defined but nither RA0_var nor RA0

    Then  I have the following WARNING

    Warning from spectre in `spitt':`I29.local_I_0', in `device1':`I29', during hierarchy flattening.

        WARNING (SFE-32): "myModel.va" 62: Duplicate specification for parameter `radius' (using last value specified).

            Further occurrences of this warning will be suppressed.

        WARNING (SFE-30): " myModel.va" 62: I29.local_I_0.spitt: `RA0_var' is not a valid parameter for an instance of `spitt behavioral'.  Ignored.


     

    And in MonteCarlo, RA0_var doesn’t change.

    I suspect a problem between verilogA - CDF -  spectreNetList

    Regards,
    Fabrice
    • Post Points: 20
  • Mon, Dec 16 2013 2:47 AM

    Re: issue with (* cds_inherited_parameter *) Reply

    Fabrice,

    Unfortunately you've not included the bits of the model/files that actually show the problem - there's no reference to "spitt behavioral" in there anywhere. I just tried a simple exampe and it worked fine.

    If you can't share the complete example here (and I can understand why that might be), please go to customer support.

    Regards,

    Andrew.

    • Post Points: 20
  • Mon, Dec 16 2013 12:59 PM

    • Fabb
    • Top 500 Contributor
    • Joined on Mon, Jun 17 2013
    • Grenoble, Isere
    • Posts 22
    • Points 320
    Re: issue with (* cds_inherited_parameter *) Reply

     Andrew,

     I finnaly understood the issue. The two following statment are incompatibles:

    (* instance_parameter_list ={parameter1, parameter2, .... } *)

    Normal 0 false false false EN-US X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Tableau Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif";} (* cds_inherited_parameter *)

    which generates the bug.

    I found a workarround by avoiding to use  (* cds_inherited_parameter *) in the .va code.

     

    Regards,

     

    Fabrice

     

    • Post Points: 5
Page 1 of 1 (5 items)
Sort Posts:
Started by Fabb at 07 Oct 2013 06:25 AM. Topic has 4 replies.