cyclic fields and spectreHDL

Discussion in 'Cadence' started by Svenn Are Bjerkem, May 4, 2005.

  1. Hi,

    in good old spectreHDL there is the enum type for parameters. I wanted to
    create an ahdl macro to calculate resistance on trace wiring based on our
    design manual.

    I have two enumerated parameters:
    parameter enum {M1, M2, M3} layer = M1;
    to set the metal layer and
    parameter enum {nom, best, worst} corner = nom;
    to set the selection of corner for the sheet resistance.

    I have created a symbol for the ahdl entity and this shows the parameters w,
    l, layer and corner. If I type "M2" in the "layer" property on the symbol,
    then ADE complains that I have an unset variable "M2" and the same happens
    when I type "nom" in the "corner" property.

    If I give the variable M1 the value 2, then I somhow assign layer M3, and
    the same happens if I give the "best" variable the value 0, then I simulate
    with nominal values.

    I tried to use the cyclic property in the CDF editor but except for a nice
    way to select layer and corner, I still create an additional variable that
    I have to set correctly in ADE.

    Does anybody have an idea how to solve this problem?
     
    Svenn Are Bjerkem, May 4, 2005
    #1
  2. Svenn Are Bjerkem

    S. Badel Guest

    You do not have parseAsNumber set in the cdf, i assume ?

    stéphane
     
    S. Badel, May 4, 2005
    #2
  3. Yes I had, and that was wrong. The enum parameter type work best when
    parseAsNumber is set to "no" for the respective parameter in CDF. Thanks.

    A cyclic field is very nice, but if I want to make a parametric simulation
    over the layers or the corners I found that it is difficult to override the
    settings. I tried to add layer=1 and corner=0 as variables in the hope to
    override the values set on each symbol, but that didn't seem to work.

    The parametric tool seems to be able to change variables and temperature but
    nothing else. In order to have parametric tool working I will have to go
    back to the "ordinary" way of specifying an enum with its numeric value, or
    is there something that I have overlooked?

    kind regards,
     
    Svenn Are Bjerkem, May 9, 2005
    #3
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.