delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to geda-user-bounces using -f |
X-Recipient: | geda-user AT delorie DOT com |
X-CMAE-Analysis: | v=2.4 cv=d+MwdTvE c=1 sm=1 tr=0 ts=60848921 |
a=+cj0cO56Fp8x7EdhTra87A==:117 a=uk6vJ0hgOxDmNQKXMQJsew==:17 | |
a=9+rZDBEiDlHhcck0kWbJtElFXBc=:19 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 | |
a=IkcTkHD0fZMA:10 a=3YhXtTcJ-WEA:10 a=a1KZgU7cAAAA:8 a=I-LazPasD4mt-s8hlksA:9 | |
a=QEXdDO2ut3YA:10 a=ng0hpkU2jXKPaRTLMVYJ:22 | |
X-SECURESERVER-ACCT: | glimrick AT epilitimus DOT com |
X-Original-DKIM-Signature: | v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; |
d=epilitimus.com; s=default; h=Content-Transfer-Encoding:Content-Type: | |
In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject:Sender: | |
Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: | |
Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: | |
List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; | |
bh=YNq/Fjktt/xsOvEfRlaZhrEOBewrQ6l6zGBo6TpaWhA=; b=eRQRImmusmjbVB4v3YEPvK4rGM | |
M/EKNgs9eZXGE4vVGr9f2SOIyZyXrdMTKSZmZjdCkgTbAOx0I18rqW5s+T2UgXBKS9d6ApxV9+x86 | |
9NF29gOD/6VI+K+yEWfAd33Ep3ig+t7zYiPOnw3eQOdMju29iAcdbr0MVXkwJtCUdKTBzVj6JksEv | |
RhnJsdmG6r5+dhJUfLBrRHjCnPEEST19TC4nUFtTn2J6z4HylgrDGBwDQu40Z7Gg675789UZlctUJ | |
tWR54xS8zZQHkmPr8scO91Kd/lv0//30qKv+RfdanZdpY7Zqx97Ng7ZHxOM8j7kqGTc1W7rD67RJ+ | |
g4pGH2xw==; | |
Subject: | Re: [geda-user] xspice integration |
To: | geda-user AT delorie DOT com |
References: | <b609b43e-9209-3809-ef0e-d3b1e4b11c3c AT epilitimus DOT com> |
<alpine DOT DEB DOT 2 DOT 21 DOT 2104142041100 DOT 7753 AT nimbus> | |
<9fe0dd9a-cbb8-a51f-f63d-36cd6d3a31c7 AT epilitimus DOT com> | |
<alpine DOT DEB DOT 2 DOT 21 DOT 2104172241210 DOT 6430 AT nimbus> | |
<alpine DOT DEB DOT 2 DOT 21 DOT 2104231908590 DOT 5702 AT nimbus> | |
<4775a561-41ad-5368-271a-998ded5bfbc6 AT epilitimus DOT com> | |
<alpine DOT DEB DOT 2 DOT 21 DOT 2104232352150 DOT 14831 AT nimbus> | |
<e2ab51e4-29df-35e0-e16b-4f48dcbc81c8 AT epilitimus DOT com> | |
<alpine DOT DEB DOT 2 DOT 21 DOT 2104241511400 DOT 1853 AT nimbus> | |
From: | "Glenn (glimrick AT epilitimus DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com> |
Message-ID: | <07d13043-cd66-88f1-4b6c-172345c864e1@epilitimus.com> |
Date: | Sat, 24 Apr 2021 13:10:02 -0800 |
User-Agent: | Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 |
Firefox/60.0 SeaMonkey/2.53.3 | |
MIME-Version: | 1.0 |
In-Reply-To: | <alpine.DEB.2.21.2104241511400.1853@nimbus> |
X-AntiAbuse: | This header was added to track abuse, please include it with any abuse report |
X-AntiAbuse: | Primary Hostname - a2plcpnl0121.prod.iad2.secureserver.net |
X-AntiAbuse: | Original Domain - delorie.com |
X-AntiAbuse: | Originator/Caller UID/GID - [47 12] / [47 12] |
X-AntiAbuse: | Sender Address Domain - epilitimus.com |
X-Get-Message-Sender-Via: | a2plcpnl0121.prod.iad2.secureserver.net: authenticated_id: glimrick AT epilitimus DOT com |
X-Authenticated-Sender: | a2plcpnl0121.prod.iad2.secureserver.net: glimrick AT epilitimus DOT com |
X-Source: | |
X-Source-Args: | |
X-Source-Dir: | |
X-CMAE-Envelope: | MS4xfDGo/ho029g6O3L1iKHFcqj9SU9vW/2OvHOfJxOnx7dMPX72wrrNHBy2UTQFxQ4LSTGgV4wqrnmV2zGdQfBvlINUm7AxELYpltGluALI5l+yc1KQhFbG |
jfS44PuDv+l7YmYOHNGW+zI6kOSeUhwOncCXZA966kH/p1k/lH1MSoZF1slfLsqVal0mF1SCnP4VWjk5MhpPEerrIsfQTLRoWydFt5fuRH/Z35ID6PTchRwP | |
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 |
Roland, > A few first questions about xspice: > > Is the repository at http://epilitimus.com/git_repos/xspice.git the > latest version? Are there any other resources I need to consider? It > looks to me like I'm missing something. The web page is mentioning > libs/ and symbols/ subdirectories, but they don't appear to be in the > repository. Also, it mentions XML files, but I couldn't find any. > First since you have it, copy the file test/models/2n3904.mod somewhere outside of the xspice tree. You will need it later and it will save you some hunting to have it on hand. I had to remove it from the repository as it is from an external source. As for the repo problem I had forgotten to set up to automatically do update-server-info after each push. I fixed that so you should now get the current version. last commit should be: > commit cb3f7ce4acb9e501352cd4778aa90c16ff1994f6 (HEAD -> master, > origin/master, origin/HEAD) > Author: Glenn Pavlovic <glimrick AT epilitimus DOT com> > Date:  Thu Apr 8 15:32:58 2021 -0800 > >    Added vector aliases Let me know if there is still a problem. > Your backend is called "xspice", but in the example, the resulting > .cir file is further processed with ngspice. Is this temporary, > specific to the test, an oversight, or is "x" really a placeholder for > "any of the derivatives"? > > Also, what does "convert non spice native devices in to the > corresponding spice models and subcircuits to be usable in ngspice" mean? I'm going to try to answer these without the Encyclopedia Britannica answer... Spice understands a specific set of devices namely passives (like resistors, capacitors, etc.), various sources (both voltage and current), several flavors of transistors (BJT, FET, etc.), and a few others. These are the native spice devices which every version of spice knows what to do with. Subcircuits are a native device which contain other native devices. An analogy would be: native devices are to spice what keywords are to the C compiler, subcircuits are to spice what functions are to the compiler. XSpice is a superset of spice. Among other things it adds a bunch of new native devices, gain blocks, flip-flops, etc. Ngspice is an implementation of spice which also has xspice support. To use the xspice extensions, ngspice must be built with the --enable-xspice command line switch to configure. It usually is but that is up to whoever built it for your machine. So, you process an xspice netlist with ngspice which has been built with xspice extensions enabled. Also because xspice is a superset of spice, the xspice backend will generate a valid *spice* netlist provided no xspice components are used. The only difference (mostly) between a *spice* netlist and an *xspice* netlist is the additional native devices which xspice supports. Any device which spice/xspice (hereafter ngspice, and the --enable-xspice is assumed) doesn't know what to do with must be converted into some combination of models and subcircuits which are known. For example ngspice doesn't know anything about LM555 timers. So if a schematic contains an LM555 that device must first be converted into something ngspice can work with before it can be simulated. Previously this was done by hand. Please keep in mind that there are entire college courses devoted to using spice, so there are no stupid questions, but the learning curve may be a bit steep. It is like trying to understand OOP while only having worked in traditional BASIC. If you still have questions after the above feel free to ask and I will go into more detail. > Also, some files are missing license headers. Can I assume the > license in gnet_xspice.py applies to the rest of the code, as well, > and the other files are under the same license as the corresponding > files in gEDA/gaf? I am actually unclear as to what exactly the license is that geda/gaf is released under as the COPYING file references GPL and there is also a COPYING.LGPL file. In any case my intention is to release this under the GPL unless geda is actually under the more restrictive LGPL. So yes, all files are released under one license and it is my intention that it be the license used by the bulk of geda/gaf. A further point along these lines. In the past spice models were usually obtained from manufacturers and so were copyrighted by them. This is the reason for the comment at the top of libs/xspiceLib_74xx.lib , and why I had to remove the 2N3904.mod from the repo. I need to revise that comment and add it to all the other libraries as well, to allow for both multiple authors and still make clear the contained stuff is not from any copyrighted sources. Glenn
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |