This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LM3488: LTspice simulation error - LM3488 model requires 5 parameters, only 3 specified

Part Number: LM3488

Hello,

 

I am trying to simulate the LM3488 IC using LTspice XVII tool. I downloaded the “LM3488 Unencrypted PSpice Transient Model (Rev. B)”.

For some reason, I am getting this error: “Fatal Error: u1:v_ifa: requires a minimum of 5 parameters. Only 3 specified.

I did not find any guidelines of how to use the model with the correct parameters. From the previous discussion found on this forum, it doesn't seem to need any other parameters than the SS.

 

Any ideas what the problem might be?

 

Here is the SPICE error log:

 

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}}&v(b)>{{vthresh}}&v(c)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh))&v(b)>((vthresh))&v(c)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}}|v(b)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh))|v(b)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate1 yint1 0 v={if(v(a)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate2 yint3 0 v={if(v(yint2)>{{vthresh}},{{vss}},{{vdd}})}"

   Error: undefined symbol in: "if([v](yint2)>((vthresh)),((vss)),((vdd)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}}&v(b)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh))&v(b)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate1 yint1 0 v={if(v(a)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate2 yint3 0 v={if(v(yint2)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](yint2)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vdd)),((vss)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}},{{vss}},{{vdd}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh)),((vss)),((vdd)))"

Questionable use of curly braces in "b�e_abmgate yint 0 v={if(v(a)>{{vthresh}}&v(b)>{{vthresh}},{{vdd}},{{vss}})}"

   Error: undefined symbol in: "if([v](a)>((vthresh))&v(b)>((vthresh)),((vdd)),((vss)))"

  • Hi Jahaj,

    Thanks for your interest in LM3488.

    The errors are due to the different syntax between PSpice and LTSpice.

    Please try simplify "if([v](a)>((vthresh))&v(b)>((vthresh))&v(c)>((vthresh)),((vdd)),((vss)))" to something acceptable to LTSpice. For example,

    "if(v(a)>vthresh&v(b)>vthresh&v(c)>vthresh,vdd,vss)"

    Thanks,

    Yinsong

  • Hi Yinsong,

    I've finally got to simplify the code as you suggested (attached .lib) and it did help to remove all the "Questionable use of curly braces" errors.

    But unfortunately there is still one error left, that was there before and persists: "Fatal Error: u5:v_ifa: requires a minimum of 5 parameters.  Only 3 specified."

    Any idea or suggestion?

    Thanks a lot in advance.

    LM3488.LIB

  • Hi Jahaj,

    This one is weird since u5 only defines 3 parameters by definition.

    Please try the v_ifa, search and find the v_ifa, and place two more "0"s after the PULSE definition.

    Not sure but at least give it a try first.

    Thanks,

    Yinsong

  • Hi Yinsong,

    That was it. Adding those zeros to all PULSE definitions solved the problem.

    Thanks a lot!