delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2013/02/15/16:57:17

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20120113;
h=mime-version:x-received:in-reply-to:references:date:message-id
:subject:from:to:content-type;
bh=W4lOG5oIpq5O4h+67Ou2bWkoHYg8SdVdqR7o3OnGPis=;
b=HQK9U5Eb3V0CiYeCwrrV86+pkOu9i3Wf7zp/ZjCRd4d2YV32X3RoNCN8crBZF43ctv
zWA7ZOL0pOlC3ETGiipj2wlFh0SEJ4wbqKsVpxHqqeeX4fS97Kd4dNS8Ho4DG16lZuBV
EriudAn/iHUCgvOhs/rKmnNMmwyFvGZH9Exp4N/600iD6i0vHLIqQgLmsnlSvPtg4Gvn
N1gAM3vOAdKPrFTpwHX1rYfRLv4qSTo5LsZ4HulF01hh3E/v2Yq71hZNL/19VJFpBMul
lIB9rpznBLtCBWgwXaKFwLfjDGDdg1OSMoWp4T/RYM61DNWX3fxTYuvLnFSVbfVBSxfM
ZbXA==
MIME-Version: 1.0
X-Received: by 10.182.226.103 with SMTP id rr7mr2814375obc.76.1360965416013;
Fri, 15 Feb 2013 13:56:56 -0800 (PST)
In-Reply-To: <201302151349.44182.ad252@freeelectron.net>
References: <CAB3Sx6eJgJTUzRuxU=xt3X2cp0yufh9bkNyLiv+AKUds3dpdCQ AT mail DOT gmail DOT com>
<201302151349 DOT 44182 DOT ad252 AT freeelectron DOT net>
Date: Fri, 15 Feb 2013 13:56:55 -0800
Message-ID: <CAB3Sx6fz80TknnWC3y1oT+aqnY1M1WONZXG0AzADpHnwTvO_eA@mail.gmail.com>
Subject: Re: [geda-user] gnetlist extractor
From: "bsalinux AT gmail DOT com" <bsalinux AT gmail DOT com>
To: geda-user AT delorie DOT com
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

--f46d044796172c4dcf04d5ca7486
Content-Type: text/plain; charset=ISO-8859-1

Thanks Al :-)


On Fri, Feb 15, 2013 at 10:49 AM, al davis <ad252 AT freeelectron DOT net> wrote:

> On Wednesday 13 February 2013, bsalinux AT gmail DOT com wrote:
> > I tried to do a gnucap simulation involving BS170 MOSFET and
> > the extractor did not extract / interpret four contacts for
> > the MOSFET as expected by GNUCAP.
> >
> > What was extracted was:
> >
> > M1  4 1 0 bs170
> >
> > instead of (substrate connected to source)
> >
> > M1  4 1 0 0 bs170
> >
> >
> > According to gnucap, first  statement takes "BS170" as the
> > substrate contact.
>
> The spice, and spice compatible simulators, require 4
> connections for a mosfet.  The fourth one is the substrate.  If
> in doubt, and for all discrete 3-terminal mosfets, the substrate
> should be connected to the source.
>
> But now look at the schematic, and how netlist extraction works.
> Whatever number of pins a device has on the schematic, that's
> how many it will have in the extracted netlist.  Therefore, any
> 3-pin mosfet will give you an incorrect netlist.  The problem is
> in the symbol, or really using the wrong symbol for the
> application, not with the netlister.  You need to use a symbol
> that has 4 pins.
>
> Exactly how this situation is handled by the simulator varies.
>
> With gnucap, if you just list everything without delimeters, it
> will screw up in this case.  If you put the node list in
> parenthesis, it will give you a warning "need 1 more nodes", and
> try to guess what to do with the other one, (grounding it) often
> not the way you want.  Same goes for Verilog format netlists,
> where you can map the pins by name.
>
> I don't know what ngspice does in this case, but since the
> "standard" says you need 4 pins, and you are missing one, you
> can't depend on anything in particular.
>
> Again ... you need to use a mosfet symbol that has 4 pins.
>
> Why is it this way?  I didn't make that decision, but remember
> SPICE is "Simulation Program with Integrated Circuit Emphasis"
> .. designed for chip designers.  They need to be concerned about
> the substrate.  The substrate is like a second gate, or "back
> gate".
>
>

--f46d044796172c4dcf04d5ca7486
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Thanks Al :-)<br></div><div class=3D"gmail_extra"><br><br>=
<div class=3D"gmail_quote">On Fri, Feb 15, 2013 at 10:49 AM, al davis <span=
 dir=3D"ltr">&lt;<a href=3D"mailto:ad252 AT freeelectron DOT net" target=3D"_blank=
">ad252 AT freeelectron DOT net</a>&gt;</span> wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex"><div class=3D"im">On Wednesday 13 February 2=
013, <a href=3D"mailto:bsalinux AT gmail DOT com">bsalinux AT gmail DOT com</a> wrote:<br=
>
&gt; I tried to do a gnucap simulation involving BS170 MOSFET and<br>
&gt; the extractor did not extract / interpret four contacts for<br>
&gt; the MOSFET as expected by GNUCAP.<br>
&gt;<br>
&gt; What was extracted was:<br>
&gt;<br>
&gt; M1 =A04 1 0 bs170<br>
&gt;<br>
&gt; instead of (substrate connected to source)<br>
&gt;<br>
&gt; M1 =A04 1 0 0 bs170<br>
&gt;<br>
&gt;<br>
&gt; According to gnucap, first =A0statement takes &quot;BS170&quot; as the=
<br>
&gt; substrate contact.<br>
<br>
</div>The spice, and spice compatible simulators, require 4<br>
connections for a mosfet. =A0The fourth one is the substrate. =A0If<br>
in doubt, and for all discrete 3-terminal mosfets, the substrate<br>
should be connected to the source.<br>
<br>
But now look at the schematic, and how netlist extraction works.<br>
Whatever number of pins a device has on the schematic, that&#39;s<br>
how many it will have in the extracted netlist. =A0Therefore, any<br>
3-pin mosfet will give you an incorrect netlist. =A0The problem is<br>
in the symbol, or really using the wrong symbol for the<br>
application, not with the netlister. =A0You need to use a symbol<br>
that has 4 pins.<br>
<br>
Exactly how this situation is handled by the simulator varies.<br>
<br>
With gnucap, if you just list everything without delimeters, it<br>
will screw up in this case. =A0If you put the node list in<br>
parenthesis, it will give you a warning &quot;need 1 more nodes&quot;, and<=
br>
try to guess what to do with the other one, (grounding it) often<br>
not the way you want. =A0Same goes for Verilog format netlists,<br>
where you can map the pins by name.<br>
<br>
I don&#39;t know what ngspice does in this case, but since the<br>
&quot;standard&quot; says you need 4 pins, and you are missing one, you<br>
can&#39;t depend on anything in particular.<br>
<br>
Again ... you need to use a mosfet symbol that has 4 pins.<br>
<br>
Why is it this way? =A0I didn&#39;t make that decision, but remember<br>
SPICE is &quot;Simulation Program with Integrated Circuit Emphasis&quot;<br=
>
.. designed for chip designers. =A0They need to be concerned about<br>
the substrate. =A0The substrate is like a second gate, or &quot;back<br>
gate&quot;.<br>
<br>
</blockquote></div><br></div>

--f46d044796172c4dcf04d5ca7486--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019