Subject: CVS commit: pkgsrc
To: None <source-changes@netbsd.org>
From: Dan McMahill <dmcmahill@netbsd.org>
List: source-changes
Date: 08/17/2000 01:02:48
Module Name:	pkgsrc
Committed By:	dmcmahill
Date:		Wed Aug 16 22:02:48 UTC 2000

Modified Files:
	pkgsrc/cad/acs: Makefile
	pkgsrc/cad/acs/files: md5 patch-sum
	pkgsrc/cad/acs/patches: patch-aa
	pkgsrc/cad/acs/pkg: PLIST

Log Message:
Update to 0.27.  Changes are (from the release notes):

ACS 0.27 release notes  (06/03/2000)

New features:

1. BSIM3 model, DC.
They work for AC and transient analysis, but only the DC effects
actually work.  The next release should have the charge effects.  For
now, it fakes it with Meyer's model.

2. A first cut at a model compiler, to aid in development of new
models.  Models are described in a ".model" file, which is processed
to automatically generate the ".h" and ".cc" files.  This version
fully handles the ".model" statement part of it, but leaves the device
and common sections the old way.  Eventually, the entire process will
be automated.  The old way still works.

3. "Fit" behavioral modeling function, which fits a curve to a set of
data.  You can specify the order of the fit, which is piecewise
polynomials.  For now, the order may be 1 (linear, like PWL) or 3
(cubic splines).  You may also specify the boundary consitions.

4. More probes.

Some things that are partially implemented:

1. Internal element: non-quasi-static poly-capacitor.  It is needed by
the BSIM3 and EKV models.  Eventually, it will be available as a
netlist item, but not yet.

Bug fixes:

1. PWL could fail if there were duplicate points at the beginning.  It
still does, but gives a reasonable error message.

2. Some "dot commands" were ignored if there were spaces before the
dot.  This was particularly annoying if the line was supposed to be
".end" which should make it exit.  It didn't, leaving it in
interactive mode, a major annoyance in a script.

Other improvements:

1. There is a change to the way integration in capacitors is done.  It
is now strictly based on charge (i = dq/dt).  The old version was
based on capacitance (i = C * dv/dt) which is strictly incorrect.  The
dC/dt term was missing (i = C * dv/dt + v * dC/dt).  This is a
non-issue when C is constant.

2. More documentation on internals.

Changes that I think are improvements, but some may disagree:

1. The command line is a little different.  In the old version,
"acs file" would run it, and whether it exited or not depended on
whether there was an ".end" line.  Now, by default, it just loads the
file in preparation for interactive use.  If you want batch mode, say
"acs -b file".

2. The regression suite is included in the standard distribution.

Changes that are not really improvements:

1. Due to the model compiler, the build process is a little more
complicated.  To do a complete build, you must build the model
compiler first, then the simulator.  If you are not making any new
models, you can probably get away with just building the simulator.
This will change in a future release.

Bugs:

1. The transmission line initial conditions are not propagated until
the transient analysis runs.

2. The makefile does not set up the proper link for the model
compiler.  You need to do it manually.

Hot items for a future release (no promises, but highly probable):

1. Charge effects in BSIM models.  They are computed, but not loaded
to the matrix.

2. Completion of model compiler, and its documentation.

3. Completion of multi-rate.

4. Homotopy methods to improve convergence.

5. Transmission line accuracy and speed improvements, using a step
control mechanism similar to that used for capacitors.

6. Parameterized subcircuits and defined parameters.

7. A "trigger" element, so time dependent values can be triggered by
the circuit, as an alternate to simple time.

To reach me, try this email address:
        aldavis@ieee.org

	ACS ftp sites:
	ftp://ftp.geda.seul.org/pub/geda/dist/acs-0.27.tar.gz
	http://www.geda.seul.org/dist/acs-0.27.tar.gz
	ftp://sunsite.unc.edu/pub/Linux/apps/circuits/acs-0.27.tar.gz


To generate a diff of this commit:
cvs rdiff -r1.2 -r1.3 pkgsrc/cad/acs/Makefile
cvs rdiff -r1.2 -r1.3 pkgsrc/cad/acs/files/md5
cvs rdiff -r1.1.1.1 -r1.2 pkgsrc/cad/acs/files/patch-sum
cvs rdiff -r1.1.1.1 -r1.2 pkgsrc/cad/acs/patches/patch-aa
cvs rdiff -r1.2 -r1.3 pkgsrc/cad/acs/pkg/PLIST

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.