Ping Aylward, Puzzling Error Message

Jul 31, 2017 19 Replies

Just got a device Spice model from (unnamed) foundry, get this error message:



ERROR -- Mosfet X_J1.m1, model X_J1.jncmod: Effective channel width for C-V


Den mandag den 31. juli 2017 kl. 17.36.28 UTC+2 skrev Jim Thompson:

formatting link

?

On Monday, July 31, 2017 at 5:36:28 PM UTC+2, Jim Thompson wrote: [..]

For BSIM4, with l, xl, dlc given, the model code says

if (l + xl - 2 * dlc

Already been down that path. None of those suggestions apply. ...Jim Thompson

| James E.Thompson | mens | | Analog Innovations | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | STV, Queen Creek, AZ 85142 Skype: skypeanalog | | | Voice:(480)460-2350 Fax: Available upon request | Brass Rat | | E-mail Icon at http://www.analog-innovations.com | 1962 | I'm looking for work... see my website. Thinking outside the box...producing elegant & economic solutions.

[..]
[..] [..]

Don't look *that* closely at the expression, it is an inexact approximation of the C code. In words: "l + xl - 2 * dlc" should be positive, where L = channel length XL = L offset for channel length due to mask/etch effect DLC = Delta L for C-V model (Those three are model parameters of the B4SIM family.)

There are some more "civilized" strongly-typed languages that only allow you to true/false test boolean types, so you can't just say take 0 and and 137 to it and have it evaluate to "true." Like Java. Blech.

John,

  1. In most languages (including BASIC, C and so on), arithmetic operators take precedence over conditional operators. The statement is unambiguous.

You claim to know C, and write in BASIC, so you /must/ be aware of this.

  1. Even in a language without OoO, the result is not ambiguous, just different: (((W + xW - 2) * DWC)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required