From MAILER-DAEMON Thu May 08 12:54:57 2008 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ju9OS-000582-S5 for mharc-gnucap-devel@gnu.org; Thu, 08 May 2008 12:54:56 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ju9OQ-00057Y-GF for gnucap-devel@gnu.org; Thu, 08 May 2008 12:54:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ju9OO-00057M-2u for gnucap-devel@gnu.org; Thu, 08 May 2008 12:54:53 -0400 Received: from [199.232.76.173] (port=46617 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ju9ON-00057J-Tm for gnucap-devel@gnu.org; Thu, 08 May 2008 12:54:51 -0400 Received: from icarus.com ([209.172.115.90]:43194) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ju9ON-0005dZ-C9 for gnucap-devel@gnu.org; Thu, 08 May 2008 12:54:51 -0400 Received: from [192.168.1.7] (wing [192.168.1.7]) (authenticated) by icarus.com (8.11.6/8.11.6) with ESMTP id m48GsM010451; Thu, 8 May 2008 09:54:23 -0700 Message-ID: <4823303E.5010607@icarus.com> Date: Thu, 08 May 2008 09:54:22 -0700 From: Stephen Williams User-Agent: Thunderbird 2.0.0.12 (X11/20080226) MIME-Version: 1.0 To: al davis References: <481F8F01.8000707@icarus.com> <200805081115.53720.ad147@freeelectron.net> In-Reply-To: <200805081115.53720.ad147@freeelectron.net> X-Enigmail-Version: 0.95.6 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Cc: Discussions concerning Icarus Verilog development , gnucap-devel@gnu.org Subject: [Gnucap-devel] Re: Analog/MS text books? X-BeenThere: gnucap-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for gnucap." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 May 2008 16:54:55 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 al davis wrote: | As to using Icarus as a model compiler for gnucap, I intend to | do the analog part of code generation and contribute it to the | Icarus project. I really do see mixed-signal as a joint | effort. It won't happen any other way. I'm expecting to start tackling the syntax of Verilog-AMS imminently. I've been working on tiny little bits already (infrastructure to enable AMS, built-in math functions, scaled reals, the easy stuff that even discrete can use) and I'm starting to think about parsing and elaboration of the meaty stuff. I can work on the parsing and elaboration so that the compiler hands you (via the ivl_target.h API) a cleaned up design. That'll get my hands dirty without yet having to do the really deep stuff. It will also get you something to work with. Any preferences for syntax elements I should start you with? - -- Steve Williams "The woods are lovely, dark and deep. steve at icarus.com But I have promises to keep, http://www.icarus.com and lines to code before I sleep, http://www.picturel.com And lines to code before I sleep." -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFIIzA+rPt1Sc2b3ikRAnBTAKCPF6pumEHC8jHDWffwmnZGddw/zACfedJf k9dAQ9ems+sFtkdCpfAawkg= =juHC -----END PGP SIGNATURE----- From MAILER-DAEMON Sun May 11 17:18:49 2008 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1JvIwT-0000BM-GY for mharc-gnucap-devel@gnu.org; Sun, 11 May 2008 17:18:49 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JvIwR-00009k-Fo for gnucap-devel@gnu.org; Sun, 11 May 2008 17:18:47 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JvIwP-00009Y-1l for gnucap-devel@gnu.org; Sun, 11 May 2008 17:18:46 -0400 Received: from [199.232.76.173] (port=58968 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JvIwO-00009V-TU for gnucap-devel@gnu.org; Sun, 11 May 2008 17:18:44 -0400 Received: from wf-out-1314.google.com ([209.85.200.171]:41149) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JvIwO-0002dv-4L for gnucap-devel@gnu.org; Sun, 11 May 2008 17:18:44 -0400 Received: by wf-out-1314.google.com with SMTP id 28so2198770wfc.24 for ; Sun, 11 May 2008 14:18:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; bh=SmhdB/TFYunJY2nSpEIwe+J9wex6rbrBlH6rOe309aY=; b=YyVfsnZTs6L+vV+kzvX9QzAhglavo3ZpWDE/FqOoze/sw4WDiwe/JGTo5TpIxu+Ngc6IUDyciGxvji1q9IxKFufR9TS3RQarwYy19Oa/PTF4xS+uLSes5xyc3ZSoW7g+C03h++ui1AN3+PgKhP4jnq+YJYJrP6PE7h5TSASKegI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition:x-google-sender-auth; b=IREbgYxEsQnyxRLjgGGrJLXlGmKdKL08NeC6c6Qq9PJbm/Wl+VqhyEmYqR+bom7va1ZtNyYIugfC9JnLylD9P/AHbLQivE2NvjjStdkAjyBpofLhQvcaoQKE7txHjDZpXj0Wgf5FH3HIcsqQxa/SHfLKJKZvtJQNijgueBrp/Ng= Received: by 10.142.242.8 with SMTP id p8mr2955224wfh.212.1210540713184; Sun, 11 May 2008 14:18:33 -0700 (PDT) Received: by 10.143.196.2 with HTTP; Sun, 11 May 2008 14:18:33 -0700 (PDT) Message-ID: Date: Sun, 11 May 2008 14:18:33 -0700 From: "Jesse Forsmann" Sender: forsmann@gmail.com To: gnucap-devel@gnu.org MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Google-Sender-Auth: bab36d725dc8e9ee X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) Subject: [Gnucap-devel] Plugin support X-BeenThere: gnucap-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for gnucap." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 11 May 2008 21:18:47 -0000 I'm thinking of possible monte carlo support. Can this be done via the new supported plugin interface? Where can I get a good example to get me started? Thanks, Jesse From MAILER-DAEMON Mon May 12 15:51:01 2008 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Jve33-0002t0-QH for mharc-gnucap-devel@gnu.org; Mon, 12 May 2008 15:51:01 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Jve32-0002so-D7 for gnucap-devel@gnu.org; Mon, 12 May 2008 15:51:00 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Jve31-0002sM-Ed for gnucap-devel@gnu.org; Mon, 12 May 2008 15:51:00 -0400 Received: from [199.232.76.173] (port=41647 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Jve31-0002sJ-BD for gnucap-devel@gnu.org; Mon, 12 May 2008 15:50:59 -0400 Received: from flint.freeelectron.net ([74.94.229.217]:4468) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Jve31-0004WR-3A for gnucap-devel@gnu.org; Mon, 12 May 2008 15:50:59 -0400 Received: from floyd.freeelectron.net ([10.1.10.183] ident=Debian-exim) by oliver.freeelectron.net with esmtp (Exim 4.63) (envelope-from ) id 1Jve2b-0006tZ-D0 for gnucap-devel@gnu.org; Mon, 12 May 2008 15:50:33 -0400 Received: from al by floyd.freeelectron.net with local (Exim 4.69) (envelope-from ) id 1Jve39-00014p-4P for gnucap-devel@gnu.org; Mon, 12 May 2008 15:51:07 -0400 From: al davis To: gnucap-devel@gnu.org Subject: Re: [Gnucap-devel] Plugin support Date: Mon, 12 May 2008 15:51:07 -0400 User-Agent: KMail/1.9.9 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200805121551.07099.ad211@freeelectron.net> X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 X-BeenThere: gnucap-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for gnucap." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 May 2008 19:51:00 -0000 On Sunday 11 May 2008, Jesse Forsmann wrote: > I'm thinking of possible monte carlo support. =A0Can this be > done via the new supported plugin interface? > > Where can I get a good example to get me started? =46irst, what do you want the user interface to look like? In the source, most of the c*, d*, lang*, s*, bm* can be used as=20 plugins. Just compile with "g++ -fPIC -shared foo.cc". Then=20 you can "load ./a.out". Look in "Make1" .. The files explicitly listed in "RAW_SRCS"=20 are part of the core. The files listed in the groups=20 like "MODELS" or "D_SRCS" are really designed as plugins. You=20 can leave them out if you want to. =46or monte carlo, there is a need to vary the parameters. Maybe=20 something should be built-in, but I am not sure what. I=20 suppose you could use expressions as component values, and your=20 MC plugin could randomize the values. Something like: R123 (a b) {10k*(1+mc1)} =2E. where mc1 is the value you tweek to adjust the value. =2Eparam mc1=3D0 =2Eop =2Eparam mc1=3D.1 =2Eop =2Eparam mc1=3D-.1 =2Eop and so on. Make something based on a random number generator to make values=20 for mc1. What I would like to do eventually is to make a function that=20 will take care of this. R123 (a b) {10k*tolerance(.1,gaussian,15)} =2E.. which says that it varies by +/- .1*value, has gaussian=20 distribution, and is in group 15. "Group 15" is a way to=20 identify components that track each other. Whatever the syntax is, it needs to work without changing any of=20 the models. From MAILER-DAEMON Mon May 12 16:22:28 2008 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1JveXU-0007r2-Do for mharc-gnucap-devel@gnu.org; Mon, 12 May 2008 16:22:28 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JveXT-0007qw-0p for gnucap-devel@gnu.org; Mon, 12 May 2008 16:22:27 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JveXR-0007qk-Ii for gnucap-devel@gnu.org; Mon, 12 May 2008 16:22:25 -0400 Received: from [199.232.76.173] (port=57163 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JveXR-0007qh-DV for gnucap-devel@gnu.org; Mon, 12 May 2008 16:22:25 -0400 Received: from flint.freeelectron.net ([74.94.229.217]:4497) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JveXR-0003Vk-E4 for gnucap-devel@gnu.org; Mon, 12 May 2008 16:22:25 -0400 Received: from floyd.freeelectron.net ([10.1.10.183] ident=Debian-exim) by oliver.freeelectron.net with esmtp (Exim 4.63) (envelope-from ) id 1JveX6-0006vy-5X; Mon, 12 May 2008 16:22:04 -0400 Received: from al by floyd.freeelectron.net with local (Exim 4.69) (envelope-from ) id 1JveXd-000183-Tc; Mon, 12 May 2008 16:22:38 -0400 From: al davis To: gnucap-devel@gnu.org Subject: Re: [Gnucap-devel] Re: Analog/MS text books? Date: Mon, 12 May 2008 16:22:37 -0400 User-Agent: KMail/1.9.9 References: <481F8F01.8000707@icarus.com> <200805081115.53720.ad147@freeelectron.net> <4823303E.5010607@icarus.com> In-Reply-To: <4823303E.5010607@icarus.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200805121622.37886.ad211@freeelectron.net> X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Cc: iverilog-devel@lists.sourceforge.net X-BeenThere: gnucap-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for gnucap." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 May 2008 20:22:27 -0000 On Thursday 08 May 2008, Stephen Williams wrote: > I can work on the parsing and elaboration so that the > compiler hands you (via the ivl_target.h API) a cleaned up > design. That'll get my hands dirty without yet having to do > the really deep stuff. It will also get you something to work > with. > > Any preferences for syntax elements I should start you with? I would start at the beginning of Ken Kundert's book, and support the examples. The netlist part should not be expanded inline. Just export a netlist. From MAILER-DAEMON Tue May 27 10:34:23 2008 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1K10Fr-00048C-98 for mharc-gnucap-devel@gnu.org; Tue, 27 May 2008 10:34:23 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K10Fo-00044q-8N for gnucap-devel@gnu.org; Tue, 27 May 2008 10:34:20 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K10Fm-00042v-QF for gnucap-devel@gnu.org; Tue, 27 May 2008 10:34:19 -0400 Received: from [199.232.76.173] (port=47705 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K10Fm-00042Y-In; Tue, 27 May 2008 10:34:18 -0400 Received: from flint.freeelectron.net ([74.94.229.217]:3454) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1K10FN-0005VG-8D; Tue, 27 May 2008 10:34:18 -0400 Received: from floyd.freeelectron.net ([10.1.10.183] ident=Debian-exim) by oliver.freeelectron.net with esmtp (Exim 4.63) (envelope-from ) id 1K10F2-0004OP-GJ; Tue, 27 May 2008 10:33:32 -0400 Received: from al by floyd.freeelectron.net with local (Exim 4.69) (envelope-from ) id 1K10GB-0003cB-MY; Tue, 27 May 2008 10:34:43 -0400 To: gnucap-devel@gnu.org, help-gnucap@gnu.org, info-gnucap@gnu.org Content-Disposition: inline From: al davis Date: Tue, 27 May 2008 10:34:43 -0400 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200805271034.43650.ad211@freeelectron.net> X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Cc: Subject: [Gnucap-devel] gnucap development snapshot 2008-05-27 X-BeenThere: gnucap-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for gnucap." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 May 2008 14:34:21 -0000 There is a new development snapshot available ... http://gnucap.org/devel/gnucap-2008-05-27.tar.gz Models (optional) have also been updated: http://gnucap.org/devel/gnucap-2008-05-27-models-bsim.tar.gz http://gnucap.org/devel/gnucap-2008-05-27-models-jspice3-2.5.tar.gz http://gnucap.org/devel/gnucap-2008-05-27-models-ngspice17.tar.gz http://gnucap.org/devel/gnucap-2008-05-27-models-spice3f5.tar.gz Another optional package contains some tools. There are no changes, but there is a new one for consistency. http://gnucap.org/devel/gnucap-2008-05-27-tools.tar.gz This file contains the md5sum of the other files, so you can check for a proper download: http://gnucap.org/devel/gnucap-2008-05-27.md5sum This snapshot provides: 1. Choice of Gear-2 method for numerical differentiation. 2. Refinements of time step control ... 2a. most components participate. 2b. some new "options" 3. "store" command. stashes data for post-processing 4. New models tarball -- the models from "Jspice", including Josephson Junction. Comments: This is still very much a development snapshot, and should not be included in any distribution or CD. 1. Choice of Gear-2 method .. Specify ".option method=gear". or "gear2" Choices are trap, euler, gear. Step control with Gear method is based on truncation error, but less rigourously than when Trap method is specified. This is because Gear's method induces errors in the third derivative when time step is changed. It is usually not noticeable visually, but very noticeable in the third derivative which is used for step control. As a work-around, step control is based on the second derivative instead. 2. Refinements of time step control By default, time step control should maintain smoothness such that if you fit the data with cubic splines, the interpolated points will be within tolerance. Some new options are added: "trsteporder", default=3, set step size so an interpolating spline of this order will be within tolerance. "trstepcoef1", "trstepcoef2", "trstepcoef3" Coefficients of the error term of the truncated series, 1st, 2nd, 3rd order. Only one applies, the one specified in "trsteporder". There is still more work to be done. 3. "store" command. stashes data for post-processing "store" command .. (should it be "save"? but "save" is a conflict) --- stores data for post-processing. Some post-processing commands "measure" type are coming soon. It is possible to write a plug-in that will use this data, but none are included in this snapshot. Watch gnucap-devel@gnu.org to see some as they come out. 4. New models tarball -- the models from "Jspice", including Josephson Junction. Not all of them work. Some fail to attach, like other model plugins. This is incomplete work. I believe the JJ does work, but without the optional current sense. 5. Performance comments: In a previous announcement, I said "Performance with spice model plugins is very slow" .. It is not as bad as indicated, but nothing has been done about it. When comparing speed between gnucap and spice, using model plugins, the dominant time is usually taken by model evaluation. The same models should run in the same time. In some cases, gnucap's stricter time control can result in slower run time. I have examples where Spice gives completely wrong answers because of step control problems. In these cases, gnucap is slower because it does more time steps, and correct because of it. 6. Plugins using the spice-wrapper still do not take named parameters, or expressions. === As usual, to get started you need only the main package gnucap-2008-xx-xx.tar.gz . The other "models" packages contain the exact models from the various sources. If you need a jfet, I recommend the one in "spice3f5". If you need a BSIM model, the obvious choice is the "bsim" package, which has all of them. The "ngspice17" package contains a few models not available elsewhere, such as "vbic". Making a models package available is not an endorsement of those models. The intent is that by using plugins, models designed for as many other simulators as possible can be used by gnucap. If you need other models, let me know.