diff options
author | rahulp13 | 2021-01-07 18:22:29 +0530 |
---|---|---|
committer | rahulp13 | 2021-01-07 18:22:29 +0530 |
commit | d4fd47ecf77597595d3f4fa72fd5334a5fe7417b (patch) | |
tree | 28095229ec3035d15c569fbedac83cf5876aa196 /Windows/spice/docs | |
parent | 376e748df438933088721286402462dffd6367c0 (diff) | |
parent | 63e3156454f39732a3101c29d42b473a89ca68d2 (diff) | |
download | eSim-d4fd47ecf77597595d3f4fa72fd5334a5fe7417b.tar.gz eSim-d4fd47ecf77597595d3f4fa72fd5334a5fe7417b.tar.bz2 eSim-d4fd47ecf77597595d3f4fa72fd5334a5fe7417b.zip |
Merge windows installer updates with linux installer
Diffstat (limited to 'Windows/spice/docs')
-rw-r--r-- | Windows/spice/docs/ANALYSES | 115 | ||||
-rw-r--r-- | Windows/spice/docs/AUTHORS | 77 | ||||
-rw-r--r-- | Windows/spice/docs/BUGS | 38 | ||||
-rw-r--r-- | Windows/spice/docs/COPYING | 570 | ||||
-rw-r--r-- | Windows/spice/docs/DEVICES | 869 | ||||
-rw-r--r-- | Windows/spice/docs/FAQ | 360 | ||||
-rw-r--r-- | Windows/spice/docs/INSTALL | 739 | ||||
-rw-r--r-- | Windows/spice/docs/NEWS | 769 | ||||
-rw-r--r-- | Windows/spice/docs/README | 67 | ||||
-rw-r--r-- | Windows/spice/docs/README.adms | 58 | ||||
-rw-r--r-- | Windows/spice/docs/README.shared-xspice | 31 | ||||
-rw-r--r-- | Windows/spice/docs/README.tcl | 100 | ||||
-rw-r--r-- | Windows/spice/docs/README.vdmos | 72 | ||||
-rw-r--r-- | Windows/spice/docs/ngspice-31-manual.pdf | bin | 2149244 -> 0 bytes |
14 files changed, 0 insertions, 3865 deletions
diff --git a/Windows/spice/docs/ANALYSES b/Windows/spice/docs/ANALYSES deleted file mode 100644 index 5b715be9..00000000 --- a/Windows/spice/docs/ANALYSES +++ /dev/null @@ -1,115 +0,0 @@ -12345678901234567890123456789012345678901234567890123456789012345678901234567890 - -ANALYSES -======== - -This file lists the analyses currently implemented into ngspice. - -Table of Contents - - 1 Noise analysis (NOISE) - 1.1 Small signal noise - 1.2 Transient noise - 2 Operating point analysis (OP) - 3 Operating point sweep Analysis (DC) - 4 Pole-zero analysis (PZ) - 5 Small-Signal distortion analysis (DISTO) - 6 Small Signal frequency response analysis (AC) - 7 Sensitivity analysis (SENS) - 8 Transfer function analysis (TF) - 9 Transient analysis (TRAN) - 10 Periodic steady state analysis (PSS, experimental feature) - - - -1 Noise analysis (NOISE) - - 1.1 Small signal noise - - The noise analysis does analysis device-generated noise for the given - circuit. When provided with an input source and an output port, the analysis - calculates the noise contributions of each device (and each noise generator - within the device) to the output port voltage. It also calculates the input - noise to the circuit, equivalent to the output noise referred to the - specified input source. This is done for every frequency point in a specified - range - the calculated value of the noise corresponds to the spectral density - of the circuit variable viewed as a stationary gaussian stochastic process. - - 1.2 Transient noise - - Time domain noise analysis during transient simulation is enabled by - providing voltage (and current) source options with white, 1/f and - random telegraph signal noise signals. - - -2 Operating point analysis (OP) - - The operating point analysis determines the dc operating point of the - circuit with inductors shorted and capacitors opened. - - -3 Operating point sweep Analysis (DC) - - The operating point sweep analysis determines the values of output - variables while one or two specified independent voltage or current source is - stepped over a user-specified range and the dc output variables are stored - for each sequential source value. Resistance and temperature sweep are - included. - - -4 Pole-zero analysis (PZ) - - The pole-zero analysis computes the poles and/or zeros in the small-signal - ac transfer function. The program first computes the dc operating point and - then determines the linearized, small-signal models for all the nonlinear - devices in the circuit. This circuit is then used to find the poles and zeros - of the transfer function. Unfortunately this code is (since its inception in - spice3) not free of bugs. - - -5 Small-Signal distortion analysis (DISTO) - - The distortion analysis computes steady-state harmonic and intermodulation - products for small input signal magnitudes. Not all devices are supported. - - -6 Small Signal frequency response analysis (AC) - - The ac small-signal computes the ac output variables as a function of - frequency. The program first computes the dc operating point of the circuit - and determines linearized, small-signal models for all of the nonlinear - devices in the circuit. The resultant linear circuit is then analyzed over a - user-specified range of frequencies. - - -7 Sensitivity analysis (SENS) - - Ngspice will calculate either the DC operating-point sensitivity or the AC - small-signal sensitivity of an output variable with respect to all circuit - variables, including model parameters. Spice calculates the difference in an - output variable (either a node voltage or a branch current) by perturbing - each parameter of each device independently. - - -8 Transfer function analysis (TF) - - The (small signal) transfer function analysis computes the dc small-signal - value of a transfer function (ratio of output variable to input source), - input resistance, and output resistance is also computed as a part of the dc - solution. - - -9 Transient analysis (TRAN) - - The transient analysis computes the transient output variables as a - function of time over a user-specified time interval. The initial conditions - are automatically determined by a dc analysis. All sources which are not time - dependent (for example, power supplies) are set to their dc value. - - -10 Periodic steady state analysis (PSS) - - The periodic steady state analysis computes solutions for oscillating - circuits. Currently only the autonomous case is implemented. - - diff --git a/Windows/spice/docs/AUTHORS b/Windows/spice/docs/AUTHORS deleted file mode 100644 index 8d44fde0..00000000 --- a/Windows/spice/docs/AUTHORS +++ /dev/null @@ -1,77 +0,0 @@ -@c This file will be processed with texinfo. - -Spice was originally written at The University of California at Berkeley (USA). -Since then, there have been many people working on the software, most of them -releasing patches to the original code through the Internet. - - -The following people have contributed in some way: - -Vera Albrecht, -Cecil Aswell, -Giles C. Billingsley, -Phil Barker, -Steven Borley, -Krzysztof Blaszkowski, -Stuart Brorson, -Mansun Chan, -Wayne A. Christopher, -Al Davis, -Glao S. Dezai, -Jon Engelbert, -Daniele Foci, -Henrik Forstén, -Noah Friedman, -David A. Gates, -Alan Gillespie, -John Heidemann, -Marcel Hendrix, -Jeffrey M. Hsu, -JianHui Huang, -S. Hwang, -Chris Inbody, -Gordon M. Jacobs, -Min-Chie Jeng, -Beorn Johnson, -Stefan Jones, -Kenneth H. Keller, -Francesco Lannutti, -Robert Larice, -Mathew Lew, -Robert Lindsell, -Weidong Liu, -Kartikeya Mayaram, -Richard D. McRoberts, -Manfred Metzger, -Wolfgang Muees, -Paolo Nenzi, -Gary W. Ng, -Hong June Park, -Arno Peters, -Stefano Perticaroli, -Serban-Mihai Popescu, -Georg Post, -Thomas L. Quarles, -Emmanuel Rouat, -Jean-Marc Routure, -Jaijeet S. Roychowdhury, -Lionel Sainte Cluque, -Takayasu Sakurai, -AMAKAWA Shuhei, -Kanwar Jit Singh, -Bill Swartz, -Hitoshi Tanaka, -Steve Tell, -Andrew Tuckey, -Andreas Unger, -Holger Vogt, -Dietmar Warning, -Michael Widlok, -Charles D.H. Williams, -Antony Wilson, -and many others... - -If someone helped in the development and has not been inserted in this list -then this omission was unintentional. If you feel you should be on this list -then please write to <ngspice-devel@@lists.sourceforge.net>. Do not be shy, we -would like to make a list as complete as possible. diff --git a/Windows/spice/docs/BUGS b/Windows/spice/docs/BUGS deleted file mode 100644 index b338848f..00000000 --- a/Windows/spice/docs/BUGS +++ /dev/null @@ -1,38 +0,0 @@ -This file contains a list of known but not yet fixed bugs in ngspice. -=========================================================================== - -How to submit a bug report: - -There are two methods to report a bug you have discovered in ngspice: - - * Bug tracker: This is the preferred method of reporting a bug. - Using the tracker on Sourceforge.net site will make your report - open by everyone and the chances of finding a fix will increase. - - * ngspice-devel list: If you are a member of this list, you can write - directly to the developers' list. Do not subscribe to the list only - for sending bug reports. - -Before sending a bug report please note: all information you send to the bug -tracking system or on the mailing lists is public. If you need to send -sensitive information, send them to a developer directly but still write non -sensitive data on the bug tracking system to keep track of bug history. - -* please refer to the sourceforge bug tracker at - http://sourceforge.net/p/ngspice/bugs/ - ------------------------------------------------------------------------------- -OPEN BUGS: ------------------------------------------------------------------------------- -* pole-zero analysis - - The pole-zero (.pz) analysis, which still uses the original spice3f5 - algorithms, does not give correct results for all tested input files. - The effort to correct that issue seems to be large. - - -* voltage (and current) controlled switches need better timing - - The controlled switches (SW, CSW), which still stem from the original - spice3f5 implementation, sometimes lead to wrong results when on and off - ramp times differ considerably. diff --git a/Windows/spice/docs/COPYING b/Windows/spice/docs/COPYING deleted file mode 100644 index c87fb838..00000000 --- a/Windows/spice/docs/COPYING +++ /dev/null @@ -1,570 +0,0 @@ -Ngspice Licensing - -Copyright (c) 2019 by ngspice maintainers -All rights reserved. - -license for this document: CC-BY-SA v4.0 - -**************************** ngspice license ********************************** - -The ngspice source code has evolved over time by integrating contributions -from various sources (e.g. Spice3f5, XSPICE, CIDER, numparam, tclspice and -others). Thus a mixture of license statements prevails. - -The ngspice license is the `Modified BSD' license. This is adopted for all of -its source code, test and example files except for the files listed below. - -************** files with licenses different to 'Modified BSD' **************** - -* ngspice/contrib -GPL, Public Domain - -* ngspice/m4 -unnamed, compatible to DFSG - -* ngspice/src/tclspice.c -LGPLv2 - -* all files in ngspice/src/maths/sparse -unnamed MIT license, compatible to New BSD - -ngspice/src/spicelib/devices/adms/admst -LGPLv2.1 - -ngspice/src/spicelib/devices/ndev -public domain - -ngspice/src/xspice -public domain -except for -ngspice/src/xspice/icm/table -GPLv2 or newer - -ngspice/src/frontend/numparam -LGPLv2 or newer - -ngspice manual -(see https://sourceforge.net/p/ngspice/ngspice-manuals/ci/master/tree/) -Creative Commons Attribution Share-Alike (CC-BY-SA) v4.0 - --------------------------------------- ngspice --------------------------------- ----------------------------------- 'Modified BSD' ------------------------------ - -Copyright 1985 - 2018, Regents of the University of California and others - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, -this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, -this list of conditions and the following disclaimer in the documentation -and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its -contributors may be used to endorse or promote products derived from this -software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. - - - ----------------------------------- Xspice -------------------------------- - -THE SOFTWARE PROGRAMS BELOW ARE IN THE PUBLIC DOMAIN AND ARE PROVIDED FREE OF -ANY CHARGE. THE GEORGIA TECH RESEARCH CORPORATION, THE GEORGIA INSTITUTE OF -TECHNOLOGY, AND/OR OTHER PARTIES PROVIDE THIS SOFTWARE "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE -ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH THE USER. -SHOULD THE PROGRAM PROVE DEFECTIVE, THE USER ASSUMES THE ENTIRE COST OF ALL -NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT WILL THE GEORGIA TECH -RESEARCH CORPORATION, THE GEORGIA INSTITUTE OF TECHNOLOGY, AND/OR OTHER PARTIES -PROVIDING THE PROGRAMS BELOW BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR -INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA -BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS). - - ----------------------------------- others -------------------------------- - - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. - - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. - - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - ------------------------------------ m4 ------------------------------------- - -LICENSE - - Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org> - - Copying and distribution of this file, with or without modification, are - permitted in any medium without royalty provided the copyright notice - and this notice are preserved. This file is offered as-is, without any - warranty. diff --git a/Windows/spice/docs/DEVICES b/Windows/spice/docs/DEVICES deleted file mode 100644 index 64a34b51..00000000 --- a/Windows/spice/docs/DEVICES +++ /dev/null @@ -1,869 +0,0 @@ -DEVICES -======= - -Table of contents - -1. Introduction -2. Linear Devices - 2.1 CAP - Linear capacitor - 2.2 IND - Linear inductor - 2.3 RES - Linear resistor -3. Distributed Elements - 3.1 CPL - Simple Coupled Multiconductor Lines (Kspice) - 3.2 LTRA - Lossy Transmission line - 3.3 TRA - Transmission line - 3.4 TXL - Simple Lossy Transmission Line (Kspice) - 3.5 URC - Uniform distributed RC line -4. Voltage and current sources - 4.1 ASRC - Arbitrary Source - 4.2 CCCS - Current Controlled Current Source - 4.3 CCVS - Current Controlled Voltage Source - 4.4 ISRC - Independent Current Source - 4.5 VCCS - Voltage Controlled Current Source - 4.6 VCVS - Voltage Controlled Voltage Source - 4.7 VSRC - Independent Voltage Source -5. Switches - 5.1 CSW - Current controlled switch - 5.2 SW - Voltage controlled switch -6. Diodes - 6.1 DIO - Junction Diode -7. Bipolar devices - 7.1 BJT - Bipolar Junction Transistor - 7.2 BJT2 - Bipolar Junction Transistor - 7.3 VBIC - Bipolar Junction Transistor -8. FET devices - 8.1 JFET - Junction Field Effect transistor -9. HFET Devices - 9.1 HFET1 - Heterostructure Field Effect Transistor Level 1 - 9.2 HFET2 - Heterostructure Field Effect Transistor Level 2 -10. MES devices - 10.1 MES - MESFET model - 10.2 MESA - MESFET model (MacSpice3f4) -11. MOS devices - 11.1 MOS1 - Level 1 MOS model - 11.2 MOS2 - Level 2 MOS model - 11.3 MOS3 - Level 3 MOS model - 11.4 MOS6 - Level 6 MOS model - 11.5 MOS9 - Level 9 MOS model - 11.6 BSIM1 - BSIM model level 1 - 11.7 BSIM2 - BSIM model level 2 - 11.8 BSIM3 - BSIM model level 3 vers. 0 - 11.9 BSIM3 - BSIM model level 3 vers. 1 - 11.10 BSIM3 - BSIM model level 3 vers. 2 - 11.11 BSIM3 - BSIM model level 3 vers. 3 - 11.12 BSIM4 - BSIM model level 4 - 11.13 HiSIM2 - Hiroshima-University STARC IGFET Model - 11.14 HiSIM_HV - Hiroshima-University STARC IGFET High Voltage Model - 11.15 VDMOS - A simple PowerMOS transistor model derived from MOS1 -12. SOI devices - 12.1 BSIM3SOI_FD - SOI model (fully depleted devices) - 12.2 BSIM3SOI_DD - SOI Model (dynamic depletion model) - 12.3 BSIM3SOI_PD - SOI model (partially depleted devices) - 12.4 BSIMSOI - SOI model (partially/full depleted devices) - 12.5 SOI3 - STAG SOI3 Model -13. Verilog-A models - 13.1 EKV MOS model - 13.2 PSP MOS model - 13.3 HICUM0 Bipolar Model - 13.4 HICUM2 Bipolar Model - 13.5 Mextram Bipolar Model -14. XSPICE code models - - ------------------ - -1. Introduction - -This file contains the status of devices available in ngspice. This file -will be updated every time the device specific code is altered or changed to reflect the current status of this important part of the simulator - - -2. Linear Devices - - - 2.1 CAP - Linear capacitor - - Ver: N/A - Class: C - Level: 1 (and only) - Dir: devices/cap - Status: - - Enhancements over the original model: - - Parallel Multiplier - - Temperature difference from circuit temperature - - Preliminary technology scaling support - - Model capacitance - - Cj calculation based on relative dielectric constant - and insulator thickness - - - 2.2 IND - Linear Inductor - - Ver: N/A - Class: L - Level: 1 (and only) - Dir: devices/ind - Status: - - Enhancements over the original model: - - Parallel Multiplier - - Temperature difference from circuit temperature - - Preliminary technology scaling support - - Model inductance - - Inductance calculation for toroids or solenoids - on the model line. - - 2.3 RES - Linear resistor - - Ver: N/A - Class: R - Level: 1 (and only) - Dir: devices/res - Status: - - Enhancements over the original model: - - Parallel Multiplier - - Different value for ac analysis - - Temperature difference from circuit temperature - - Noiseless resistor - - Flicker noise - - Preliminary technology scaling support - - -3. Distributed elements - - - 3.1 CPL - Simple Coupled Multiconductor Lines (Kspice) - - Ver: N/A - Class: P - Level: 1 (and only) - Dir: devices/cpl - Status: - - This model comes from swec and kspice. It is not documented, if - you have kspice docs, can you write a short description - of its use ? - - - Does not implement parallel code switches - - Probably a lot of memory leaks - - Enhancements over the original model: - - - Better integrated into ngspice adding CPLask, CPLmAsk and - CPLunsetup functions - - 3.2 LTRA - Lossy Transmission line - - Ver: N/A - Class: O - Level: 1 (and only) - Dir: devices/ltra - Status: - - - Original spice model. - - Does not implement parallel code switches. - - 3.3 TRA - Transmission line - - Ver: N/A - Class: T - Level: 1 (and only) - Dir: devices/tra - Status: - - - Original spice model. - - Does not implement parallel code switches. - - 3.4 TXL - Simple Lossy Transmission Line (Kspice) - - Ver: N/A - Class: Y - Level: 1 (and only) - Dir: devices/txl - Status: - - This model comes from kspice. It is not documented, if - you have kspice docs, can you write a short description - of its use ? - - There is some code left out from compilation: - TXLaccept and TXLfindBr. Any ideas ? - - - Does not implement parallel code switches - - - 3.5 URC - Uniform distributed RC line - - Ver: N/A - Class: U - Level: 1 (and only) - Dir: devices/urc - Status: - - - Original spice model. - - Does not implement parallel code switches. - - -4. Voltage and current sources - - 4.1 ASRC - Arbitrary Source - - Ver: N/A - Class: B - Level: 1 (and only) - Dir: devices/asrc - Status: - - The arbitrary source code has been corrected with the patch - available on the Internet. There is still an issue to fix, the - current of current-controlled generators. - - 4.2 CCCS - Current Controlled Current Source - - Ver: N/A - Class: F - Level: 1 (and only) - Dir: devices/cccs - Status: - - - Original spice model. - - 4.3 CCVS - Current Controlled Voltage Source - - Ver: N/A - Class: H - Level: 1 (and only) - Dir: devices/ccvs - Status: - - - Original spice model. - - - 4.4 ISRC - Independent Current Source - - Ver: N/A - Class: I - Level: 1 (and only) - Dir: devices/isrc - Status: - - This is the original spice device improved by Alan Gillespie - with the following features: - - - Source ramping - - Check for non-monotonic series in PWL - - - 4.5 VCCS - Voltage Controlled Current Source - - Ver: N/A - Class: G - Level: 1 (and only) - Dir: devices/vccs - Status: - - - Original spice model. - - -4.6 VCVS - Voltage Controlled Voltage Source - - Ver: N/A - Class: E - Level: 1 (and only) - Dir: devices/vcvs - Status: - - - Original spice model. - - 4.7 VSRC - Independent Voltage Source - - Ver: N/A - Class: V - Level: 1 (and only) - Dir: devices/vsrc - Status: - - This is the original spice device improved by Alan Gillespie - with the following features: - - - Source ramping - - Check for non-monotonic series in PWL - - -5. Switches - - 5.1 CSW - Current controlled switch - - Ver: N/A - Class: W - Level: 1 (and only) - Dir: devices/csw - Status: - - - This model comes from Jon Engelbert. - - - 5.2 SW - Voltage controlled switch - - Ver: N/A - Class: S - Level: 1 (and only) - Dir: devices/sw - Status: - - - This model comes from Jon Engelbert. - - -6. Diodes - - 6.1 DIO - Junction Diode - - Ver: N/A - Class: D - Level: 1 (and only) - Dir: devices/dio - Status: - - Enhancements over the original model: - - Parallel Multiplier - - Temperature difference from circuit temperature - - Forward and reverse knee currents - - Periphery (sidewall) effects - - Temperature correction of some parameters - - -7. Bipolar devices - - 7.1 BJT - Bipolar Junction Transistor - - Ver: N/A - Class: Q - Level: 1 - Dir: devices/bjt - Status: - - Enhancements over the original model: - - Parallel Multiplier - - Temperature difference from circuit temperature - - Different area parameters for collector, base and emitter - - 7.2 BJT2 - Bipolar Junction Transistor - - Ver: N/A - Class: Q - Level: 2 - Dir: devices/bjt2 - Status: - - This is the BJT model written by Alan Gillespie to support lateral - devices. The model has been hacked by Dietmar Warning fixing some bugs - and adding some features (temp. dependency on resistors). - - Enhancements over the original model: - - Parallel Multiplier - - Temperature dependency on rc,rb,re - - Temperature difference from circuit temperature - - Different area parameters for collector, base and emitter - - 7.3 VBIC - Bipolar Junction Transistor - - Ver: N/A - Class: Q - Level: 4 & 9 - Dir: devices/vbic - Status: - - This is the Vertical Bipolar InterCompany model in version 1.2. The author - of VBIC is Colin McAndrew mcandrew@ieee.org. - Spice3 Implementation: Dietmar Warning DAnalyse GmbH - Web Site: http://www.designers-guide.com/VBIC/index.html - - Notes: This is the 4 terminals model, without excess phase and thermal - network. - - -8. FET devices - - 8.1 JFET - Junction Field Effect transistor - - Ver: N/A - Class: J - Level: 1 - Dir: devices/jfet - Status: - - This is the original spice JFET model. - - Enhancements over the original model: - - Alan Gillespie's modified diode model - - Parallel multiplier - - Instance temperature as difference for circuit temperature - - 8.2 JFET2 - Junction Field Effect Transistor (PS model) - - Ver: N/A - Class: J - Level: 2 - Dir: devices/jfet2 - Status: - - This is the Parker Skellern model for MESFETs. - - Web Site: http://www.elec.mq.edu.au/cnerf/psmodel.htm - - Enhancements over the original model: - - Parallel multiplier - - Instance temperature as difference for circuit temperature - - -9. HFET Devices - - Added code from macspice3f4 HFET1&2 and MESA model - Original note: - Added device calls for Mesfet models and HFET models - provided by Trond Ytterdal as of Nov 98 - - 9.1 HFET1 - Heterostructure Field Effect Transistor Level 1 - - Ver: N/A - Class: Z - Level: 5 - Dir: devices/hfet1 - Status: - - This is the Heterostructure Field Effect Transistor model from: - K. Lee, M. Shur, T. A. Fjeldly and T. Ytterdal - "Semiconductor Device Modeling in VLSI", - 1993, Prentice Hall, New Jersey - - Enhancements over the original model: - - Parallel multiplier - - Instance temperature as difference for circuit temperature - - Added pole-zero analysis - - - 9.2 HFET2 - Heterostructure Field Effect Transistor Level 2 - - Ver: N/A - Class: Z - Level: 6 - Dir: devices/hfet2 - Status: - - Simplified version of hfet1 - - Enhancements over the original model: - - Parallel multiplier - - Instance temperature as difference for circuit temperature - - Added pole-zero analysis - - -10. MES devices - - 10.1 MES - MESFET model - - Ver: N/A - Class: Z - Level: 1 - Dir: devices/mes - Status: - - This is the original spice3 MESFET model (Statz). - - Enhancements over the original model: - - Parallel multiplier - - Alan Gillespie junction diodes implementation - - - Added code from macspice3f4 HFET1&2 and MESA model - Original note: - Added device calls for Mesfet models and HFET models - provided by Trond Ytterdal as of Nov 98 - -10.2 MESA - MESFET model (MacSpice3f4) - - Ver: N/A - Class: Z - Level: 2,3,4 - Dir: devices/mesa - Status: - - This is a multilevel model. It contains code for mesa levels - 2,3 and 4 - - Enhancements over the original model: - - Parallel multiplier - - Instance temperature as difference from circuit temperature - - Added pole-zero analysis - - - -11. MOS devices - - 11.1 MOS1 - Level 1 MOS model - - Ver: N/A - Class: M - Level: 1 - Dir: devices/mos1 - Status: - - This is the so-called Schichman-Hodges model. - - Enhancements over the original model: - - Parallel multiplier - - Temperature difference from circuit temperature - - 11.2 MOS2 - Level 2 MOS model - - Ver: N/A - Class: M - Level: 2 - Dir: devices/mos2 - Status: - - This is the so-called Grove-Frohman model. - - Enhancements over the original model: - - Parallel multiplier - - Temperature difference from circuit temperature - - - 11.3 MOS3 - Level 3 MOS model - - Ver: N/A - Class: M - Level: 3 - Dir: devices/mos3 - Status: - - Enhancements over the original model: - - Parallel multiplier - - Temperature difference from circuit temperature - - - 11.4 MOS6 - Level 6 MOS model - - Ver: N/A - Class: M - Level: 6 - Dir: devices/mos6 - Status: - - Enhancements over the original model: - - Parallel multiplier - - Temperature difference from circuit temperature - - - 11.5 MOS9 - Level 9 MOS model - - Ver: N/A - Class: M - Level: 9 - Dir: devices/mos9 - Status: - - This is a slightly modified Level 3 MOSFET model. - (Whatever the implementer have had in mind.) - Not to confuse with Philips level 9. - Enhancements over the original model: - - Temperature difference from circuit temperature - - - 11.6 BSIM1 - BSIM model level 1 - - Ver: N/A - Class: M - Level: 4 - Dir: devices/bsim1 - Status: - - Enhancements over the original model: - - Parallel multiplier - - Noise analysis - - BUGS: - Distortion analysis probably does not - work with "parallel" devices. Equations - are too intricate to deal with. Any one - has ideas on the subject ? - - - 11.7 BSIM2 - BSIM model level 2 - - Ver: N/A - Class: M - Level: 5 - Dir: devices/bsim2 - Status: - - Enhancements over the original model: - - Parallel multiplier - - Noise analysis - - - 11.8 BSIM3v0 - BSIM model level 3 - - Ver: 3.0 - Class: M - Level: 8 & 49, version = 3.0 - Dir: devices/bsim3v0 - Status: TO BE TESTED AND IMPROVED - - - 11.9 BSIM3v1 - BSIM model level 3 - - Ver: 3.1 - Class: M - Level: 8 & 49, version = 3.1 - Dir: devices/bsim3v1 - Status: TO BE TESTED AND IMPROVED - - This is the BSIM3v3.1 model modified by Serban Popescu. - This is level 49 model. It is an implementation that supports - "HDIF" and "M" parameters. - - - 11.10 BSIM3 - BSIM model level 3 - - Ver: 3.2.4 - Class: M - Level: 8 & 49, version = 3.2.2, 3.2.3, 3.2.4 - Dir: devices/bsim3v32 (level 3.2.4) - Status: o.k. - - This is another BSIM3 model from Berkeley Device Group. - You can find some test netlists with results for this model - on its web site. - - Web site: http://www-device.eecs.berkeley.edu/~bsim3 - - Enhancements over the original model: - - Parallel Multiplier - - delvto, mulu0 instance parameter - - ACM Area Calculation Method - - Multirevision code (supports all 3v3.2 minor revisions) - - NodesetFix - - - 11.11 BSIM3 - BSIM model level 3 - - Ver: 3.3.0 - Class: M - Level: 8 & 49, version = 3.3.0 - Dir: devices/bsim3 (level 3.3.0) - Status: o.k. - - This is the actual BSIM3 model from Berkeley Device Group. - You can find some test netlists with results for this model - on its web site. - - Web site: http://www-device.eecs.berkeley.edu/~bsim3 - - Enhancements over the original model: - - Parallel Multiplier - - ACM Area Calculation Method - - Multirevision code (supports all 3v3.2 minor revisions) - - NodesetFix - - Support for Multi-core processors using OpenMP - - - 11.12 BSIM4 - BSIM model level 4 - - Ver: 4.2.0 - 4.6.5 - Class: M - Level: 14 & 54, version = 4.5, 4.6, 4.7, 4.8 - Dir: devices/bsim4 (level 4.8.0) - Status: o.k. - - This is the actual BSIM4 model from Berkeley Device Group. - Test are available on its web site. - - Web site: http://www-device.eecs.berkeley.edu/~bsim3/bsim4.html - - Enhancements over the original model: - - Parallel Multiplier - - NodesetFix - - Support for Multi-core processors using OpenMP - - - 11.13 HiSIM2 - Hiroshima-university STARC IGFET Model - - Ver: 2.8.0 - Class: M - Level: 68 - Dir: devices/hisim2 - Status: TO BE TESTED. - - This is the HiSIM2 model available from Hiroshima University - (Ultra-Small Device Engineering Laboratory) - - Web site: http://home.hiroshima-u.ac.jp/usdl/HiSIM.html - - Enhancements over the original model: - - Support for Multi-core processors using OpenMP - - - 11.14 HiSIM_HV - Hiroshima-University STARC IGFET High Voltage Model - - Ver: 1.2.4 and 2.2 - Class: M - Level: 73 - Dir: devices/hisimhv - Status: TO BE TESTED. - - This is the HiSIM_HV model version 1 and 2 available from - Hiroshima University (Ultra-Small Device Engineering Laboratory) - - Web site: http://home.hiroshima-u.ac.jp/usdl/HiSIM.html - - - 11.15 VDMOS - Simple PowerMOS model - - Ver: 1 - Class: M - Level: - - Dir: devices/vdmos - Status: TO BE TESTED. - - This is a simplified Power MOS model, derived from MOS1 and - diode, similar to LTSPICE and SuperSpice VDMOS - -12. SOI devices - - 12.1 BSIM3SOI_FD - SOI model (fully depleted devices) - - Ver: 2.1 - Class: M - Level: 55 - Dir: devices/bsim3soi_fd - Status: TO BE TESTED. - - FD model has been integrated. - There is a bsim3soifd directory under the test - hierarchy. Test circuits come from the bsim3soi - - Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi - - - - 12.2 BSIM3SOI_DD - SOI Model (dynamic depletion model) - - Ver: 2.1 - Class: M - Level: 56 - Dir: devices/bsim3soi_dd - Status: TO BE TESTED. - - There is a bsim3soidd directory under the - test hierarchy. Test circuits come from bsim3soi - - Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi - - - - 12.3 BSIM3SOI_PD - SOI model (partially depleted devices) - - Ver: 2.2.1 - Class: M - Level: 57 - Dir: devices/bsim3soi_pd - Status: TO BE TESTED. - - PD model has been integrated. There is a bsim3soipd directory - under the test hierarchy. Test circuits come from the bsim3soi - - Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi - - - - 12.4 BSIMSOI - Berkeley SOI model (partially/full depleted devices) - - Ver: 4.3.1 - Class: M - Level: 10 & 58 - Dir: devices/bsim3soi - Status: o.k. - - This is the actual version from Berkeley. This version is - backward compatible with its previous versions BSIMSOI3.x. - Usable for partially/full depleted devices. - - Web site at: http://www-device.eecs.berkeley.edu/~bsimsoi - - Enhancements over the original model: - - Parallel Multiplier - - Support for Multi-core processors using OpenMP - - - - 12.5 SOI3 - STAG SOI3 Model - - Ver: 2.6 - Class: M - Level: 60 - Dir: devices/soi3 - Status: OBSOLETE - - - -13. Verilog-A models - - Configuring ngspice with ADMS (see Readme.adms) following - devices are available: - - 13.1 EKV MOS Model - - Ver: 2.6 - Level: 44 - Dir: devices/adms/ekv - Status: TO BE TESTED - - EKV version based on a contribution of Ivan Riis Nielsen 11/2006 - - Web site at: http://legwww.epfl.ch/ekv/ - (but EPFL is not publishing any usefull code) - - - 13.2 PSP MOS Model - - Ver: 102.1 - Level: 45 - Dir: devices/adms/psp102 - Status: TO BE TESTED - - Philips SimKit 2.5. - - - 13.3 HICUM0 Bipolar Model - - Ver: Level_0 Version_1.12 - Level: 7 - Dir: devices/adms/hicum0 - Status: TO BE TESTED - - A simplified version of HICUM Level2 model for BJT - Web site at: http://www.iee.et.tu-dresden.de/iee/eb/hic_new - - - 13.4 HICUM2 Bipolar Model - - Ver: Level_2 Version_2.22 - Level: 8 - Dir: devices/adms/hicum2 - Status: TO BE TESTED - - Web site at: http://www.iee.et.tu-dresden.de/iee/eb/hic_new/hic_start.html - - - 13.5 Mextram Bipolar Model - - Ver: 504.6.1 - Level: 6 - Dir: devices/adms/mextram - Status: TO BE TESTED - - Web site at: http://mextram.ewi.tudelft.nl/ and http://mextram.sourceforge.net/ - - 14. XSpice code models, see ngspice manual chapt. 12 diff --git a/Windows/spice/docs/FAQ b/Windows/spice/docs/FAQ deleted file mode 100644 index 7a1fcf65..00000000 --- a/Windows/spice/docs/FAQ +++ /dev/null @@ -1,360 +0,0 @@ - Ngspice F.A.Q.Version 2.3 (ngspice-31 release) - - Maintained by Holger Vogt - Last update: 09-14-2018 - - This document contains the Frequently Asked Questions (and Answers) - for ngspice project. - __________________________________________________________________________ - - Table of Contents - - - 1. INTRODUCTION AND GENERAL INFORMATION - 1.1 What is ngspice? - 1.2 What is sharedspice? - 1.3 What is tclspice ? - 1.4 Why resurrecting Berkeley's Spice? - 1.5 What is the project's goal? - 1.6 What you are going to do? - 1.7 Legal issues - 1.8 Discussion groups - 1.9 What mailing lists exist for ngspice? - 1.10 Are the mailing lists archived anywhere? - 1.11 Where can I get a copy of ngspice? - 1.12 Where should I look on the World Wide Web for ngspice stuff? - 1.13 Where should I look on the World Wide Web for Spice documentation? - - 2. DEVELOPMENT - 2.1 What is the current version? - 2.2 What are the latest features in the current release? - 2.3 What does it look like? - 2.4 Who are the authors of ngspice? - 2.5 How can I report a bug/request for a feature? - 2.6 How can I join the development? - - 3. SOLUTIONS TO COMMON MISCELLANEOUS PROBLEMS - 3.1 What systems are supported? - 3.2 I get errors when I try to compile the source code, why? - 3.3 This document didn't answer my question. Where else can I look for - an answer? - - 4. ADMINISTRATIVE INFORMATION AND ACKNOWLEDGEMENTS - 4.1 Feedback - 4.2 Formats in which this FAQ is available - 4.3 Authorship and acknowledgements - 4.4 Disclaimer and Copyright - - - ______________________________________________________________________ - - 1. INTRODUCTION AND GENERAL INFORMATION - - - - 1.1 What is ngspice ? - - Ngspice is a mixed-level/mixed-signal circuit simulator, based on three - open source software packages: Spice3f5, Cider1b1 and Xspice, and - including many bug fixes and enhancements: - - - Spice3 is a widely used circuit simulator. It was developed by the - University of California at Berkeley (UCB), by "a cast of thousand" - (as they say) initially under the guide of Donald O. Peterson. - - - Cider is a mixed-level simulator that already includes Spice3f5 and - adds a device simulator to it: DSIM. Cider couples the circuit level - simulator to the device simulator to provide greater simulation - accuracy (at the expense of greater simulation time). Critical - devices can be described with technology parameters (numerical - models) and non critical ones with the original spice's compact - models. - - - Xspice is an extension to Spice3 that provides code modeling support - and simulation of digital components through an embedded event - driven algorithm. - - The NG prefix has lot of meanings: Next Generation, New (and) Good, etc. - Choose or invent the one you prefer. The heart of the project is the - ngspice program, with its tremendous advancements. - - - 1.2 What is sharedspice ? - - Sharedspice is an interface option to ngspice. It compiles the simulator - into a shared object (or dynamic link library), providing full control - of ngspice to any suitable controlling program (GUI, optimizer, - development system, etc., to be provided by the user). - - - 1.3 What is tclspice ? - - Tclspice is a another interface option of ngspice, providing a tcl/tk - interface to the user. Tclspice is both a batch and interactive simulator - and a building block for simulator applications. Analyses can be run - from a tcl script and vector plotted or post processed using tcl. A small - GUI may be built by the user to analyze a circuit or a set of circuits. - Tclspice is obtained compiling ngspice activating an additional option. - This has not been used and tested for some time. - - - 1.4 Why resurrecting Berkeley's Spice? - - Berkeley's Spice can be considered the father of most circuit - simulators available today. It is an old but still good piece of - software, it may not be the fastest or the most reliable but it's - free, it's available in source code and most of the electrical - simulators inherited it's syntax. Spice3 is based on proven numerical - algorithms (most commercial implementations have only strengthened - them), implements most of the models for MOSFET submicron design - and has a powerful set of analyses. The readily availability of - its source code in the past made this simulator the de-facto standard. - - - 1.5 What is the project's goal? - - Ngspice is both a maintenance and enhancement project. It is a maintenance - project because it aims to provide the free EDA community the best spice3 - simulator available. This means fixing bugs, adding new features but always - in the spice3 framework. Achieving compatibility with commercial spice based - simulators and provide users the latest devices models are important goals - of the project. Improvements in the postprocessing (data handling - capabilities) and user interface are other goals. - - - 1.6 What you are going to do? - - An official roadmap for ngspice was never drawn. Contributions made by - developers drive ngspice development and the roadmap is built day by - day by developers writing on the lists. Ngspice development activity - can be summarized in 3 points: - - + Compatibility: Ngspice should be compatible with commercial products, - thus allowing people to use the netlist generated for such tools. As - most of the commercial simulators available tracked each other in netlist - language, this should not be an impossible task. The most important goal - here is to provide a reliable support for model libraries coming from - foundries. - - + Compact models: The interest in using ngspice is intimately connected - to the available models. To provide the latest models available for - active and passive devices is a fundamental goal of the project. In - this direction we are integrating ADMS model compiler into ngspice. - - + Documentation: Commercial simulators come with very good manuals - containing tutorials, description of models equations, example of - use, suggestions, etc. Spice came with little documentation. The - Spice3f manual, available on the Internet has been used as the basis - for the new manual. It will be constantly improved during ngspice - development and integrated with the documentation accompanying Xspice - and Cider. The ngspice manual today contains description of all - features ngspice is offering. It is however not a tutorial of ngspice - usage, but there are now several good ones available on the internet - (see http://ngspice.sourceforge.net/tutorials.html). - - - 1.7 Legal issues - - The ngspice base license is new BSD, as provided by UCB. For some parts - of the code other compatible licences apply. All licenses are DFSG - compatible. Please see file COPYING for details. - - - 1.8 Discussion groups - - Vivid discussion are going on in the ngspice discussion groups. - They are found at https://sourceforge.net/p/ngspice/discussion/ - A new group 'ngspice tips and examples' will present interesting - ngspice tips (your input is welcome!) - - - 1.9 What mailing lists exist for ngspice? - - Mailing lists have somewhat lost importance compared to the - discussion groups described above. - - There are two general mailing lists dedicated to the ngspice project. - - Users mailing list: <ngspice-users@lists.sourceforge.net> - This list is for ngspice users. Examples, problems, bug reports - and general discussion on ngspice can be sent here. - - Developers mailing list: <ngspice-devel@lists.sourceforge.net> - The list is dedicated to ngspice development. Developers should - subscribe here, to follow the program development. May be used - to send patches, and technical discussion on ngspice. - - Send an empty message with Subject "help" to the following addresses - to get instructions. - - <ngspice-users-request@lists.sourceforge.net> - <ngspice-devel-request@lists.sourceforge.net> - - Send an empty message to the following address to Subscribe. - - <ngspice-users-join@lists.sourceforge.net> - <ngspice-devel-join@lists.sourceforge.net> - - Documentation about the user interface of - these mailing lists can be found at: - http://www.gnu.org/software/mailman/mailman-member - - - 1.10 Are the mailing lists archived anywhere ? - - Yes, the lists are archived. There are two places where to look for - archives. The project started on the IEEE Central and South Italy - web server and then moved to sourceforge. Sourceforge provides an - archiving service that cam be accessed via the summary page: - - http://sourceforge.net/p/ngspice/mailman/ - - - 1.11 Where can I get a copy of ngspice? - - You can download ngspice from: - - http://sourceforge.net/projects/ngspice/files/ng-spice-rework/ - - - 1.12 Where should I look on the World Wide Web for ngspice stuff? - - Look at the official Ngpice Web Page: - - http://ngspice.sourceforge.net - - - 1.13 Where should I look on the World Wide Web for Spice documentation? - - There is a detailed ngspice manual available at: - http://ngspice.sourceforge.net/docs.html - - Others docs are assembled at: - http://ngspice.sourceforge.net/literature.html - - - - 2. DEVELOPMENT - - - 2.1. What is the current version? - - The latest version released is: - - * ngspice-31 (released on 22/09/2019) - - - 2.2. What are the latest features in the current release? - -- New features: - + configure flag --with-fftw3 If set to 'no', internal fast fourier is used - instead of fftw - + command setseed to set the seed value for the random number generator - + option seed=[val|random] - + variable inputdir to remeber and retrieve the last input file directory - + example directory 'digital' with analog, behavioral and digital example input files - + new XSPICE filesource, d_source, and state-machine examples - + +, - maybe part of instance name - + Quasi-saturation VDMOS example - + add environmental variable SOURCE_DATE_EPOCH to allow reproducible executables - + new parameters to command setplot: setplot next, setplot previous - + updates to commands cd, rusage, print - + update to bipolar and diode temperature equations - -- Bug fixes: - + several bug fixes - + lots of memory leaks removed, especially when XSPICE circuits are called several - times in a loop. - - - 2.3. What does it look like? - - Ngspice, as the original Spice3 (and Xspice and Cider) is a command - line simulator, but with a graphics output capability. - - - 2.4. Who are the authors of ngspice? - - The development is open to anyone who wish to contribute. If the - original Spice3 was made with the contribution of "a cast of - thousand", ngspice can only increase that number. An incomplete - list of contributor makes the "acknowledgements" page of the ngspice - manual. - - - 2.5. How can I report a bug/request for a feature? - - The ngspice summary page (hosted on Sourceforge) has bug-reporting, - feature-request and bugs trackers. You can use them or subscribe to - mailing lists and post there. The former is preferred since almost - it allows to track all necessary actions upon a bug. The web site at - http://ngspice.sourceforge.net/bugrep.html will give you more details. - - - 2.6. How can I join the development? - - To join the development just code the feature you want to add and send - your patch in the mailing list. Before you start coding check the - latest development release of ngspice from our git repository. - It might be that your feature has already been implemented. - - There is no bureaucracy here. - - - - 3. SOLUTIONS TO COMMON MISCELLANEOUS PROBLEMS - - - 3.1. What systems are supported? - - Ngspice is written in C, and uses some GNU extensions, then you need - a GNU C compiler and a UNIX environment to compile it. Ngspice can - be compiled under Windows using the mingw or cygwin environment as - well as MS Visual Studio. - - - 3.2. I get errors when I try to compile the source code, why? - - This is a one-million-euros question :). - - Write to the user's discussion group describing the problem and providing - information on the type of hardware, the flavour of operating system. - - - 3.3. This document didn't answer my question. Where else can I look - for an answer? - - Read old messages from the mailing list archive, search the web site - or read the docs. Upgrade to the latest version of ngspice, many - problems are fixed in the new versions. If you still can't find an - answer, post your question to the mailing lists. - - - - 4. ADMINISTRATIVE INFORMATION AND ACKNOWLEDGEMENTS - - - 4.1. Feedback - - Send your comments about this F.A.Q. to: - https://sourceforge.net/p/ngspice/discussion/127605/ - - - 4.2. Formats in which this FAQ is available - - This document is available only in ASCII format in the ngspice source - package. - - - 4.3. Authorship and acknowledgements - - Parts of the questions and answers originate from Paolo Nenzi - and are updated by Holger Vogt. - - - 4.4. Disclaimer and Copyright - - Copyright: Holger Vogt, 2018 - License: Creative Commons Attribution Share-Alike (CC-BY-SA) v4.0. - This document is provided as is. The information in it is not - warranted to be correct: you use it at your own risk. diff --git a/Windows/spice/docs/INSTALL b/Windows/spice/docs/INSTALL deleted file mode 100644 index ab16b64b..00000000 --- a/Windows/spice/docs/INSTALL +++ /dev/null @@ -1,739 +0,0 @@ -Ngspice installation instructions -================================= - -Table of contents - - 1 Ngspice installation (LINUX) - 1.1 Prerequisites - 1.2 Install from tarball (e.g. ngspice-31.tar.gz) - 1.3 Install from git repository - 1.4 Advanced Install - 1.4.1 Most useful options - 1.4.2 Options Specific to Enable Ngspice as a shared library - 1.4.3 Options Specific to Using Ngspice - 1.4.4 Options Useful for Debugging Ngspice - 2 Compilers and Options - 3 Compiling For Multiple Architectures - 4 Installation Names - 5 Optional Features - 6 Specifying the System Type - 7 Sharing Defaults - 8 Operation Controls - 9 NGSPICE COMPILATION UNDER WINDOWS OS - 9.1 How to make ngspice with MINGW and MSYS - 9.2 make ngspice with MS Visual Studio 2015/2017 - 9.3 make ngspice with pure CYGWIN - 9.4 ngspice console app with MINGW or CYGWIN - 9.5 cross compiling ngspice for Windows from LINUX - 10 NGSPICE COMPILATION UNDER macOS - -This file describes the procedures to install ngspice from sources. - - -1 Ngspice Installation (LINUX, maybe others) - ==================== - -1.1 Prerequisites - - Ngspice is written in C and thus a complete C compilation environment - is needed. Almost any LINUX offers a complete C development environment. - Ngspice is developed on GNU/Linux with gcc and GNU make. - - The following software must be installed in your system to compile ngspice: - bison, flex, and X11 headers and libs. - - If you want to compile the source from the git repository you need - additional software: autoconf, automake, libtool, texinfo, readline. - - The following software may be needed when enabling additional features: - editline, tcl/tk, adms - - Please have a look at the actual ngspice manual, downloadable at - http://ngspice.sourceforge.net/docs.html, which gives you much more - information on ngspice and its usage. - - -1.2 Install from tarball (e.g. ngspice-31.tar.gz) - - This covers installation from a release distribution (for example - ngspice-31.tar.gz, the so called tar ball). - - After downloading the tar ball to a local directory unpack it using: - - $ tar -zxvf ngspice-31.tar.gz - - Now change directories in to the top-level source directory (where this - INSTALL file can be found). - - You should be able to do: - - $ mkdir release - $ cd release - $ ../configure --with-x --with-readline=yes --disable-debug - $ make - $ sudo make install - - The default install directory for executables is /usr/local/bin. - - A simple ../configure might be sufficient for a basic ngspice, but the preferred - arguments to ../configure are - --with-x --with-readline=yes and --disable-debug - providing you with a comfortably working ngspice (see section 1.4 for details). - - See the section titled 'Advanced Install' for instructions about additional arguments - that can be passed to ../configure to customise the build and installation. - - Do not use the script ./autogen.sh, because it is not required for - compiling and installing ngspice from the tarball. - - A fully featured ngspice on LINUX may be obtained with the following commands: - $ mkdir release - $ cd release - $ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-openmp - $ make 2>&1 | tee make.log - $ sudo make install - - To remove the executables and libraries from the install directory, you may call - $ sudo make uninstall - - -1.3 Install from the git repository - - This section describes how to install from source code taken directly - from the git repository. It is intended for those who want to use the most - recent enhancements of ngspice and for developers. For user install - instructions using source from a released distributions, please see the - sections titled 'Install from tarball' and 'Advanced Install'. - - Download ngspice sources from the git repository as described on the sourceforge project page - (see http://ngspice.sourceforge.net/download.html and click on the git link) - - Now change directories in to the top-level source directory (where this - INSTALL file can be found). - - The project uses the GNU build process. The compile output should go into a separate - directory, so to e.g. maintain separate debug and release versions. - - $ ./autogen.sh - $ mkdir debug - $ cd debug - $ ../configure --with-x --with-readline=yes - $ make - $ sudo make install - - See the section titled 'Advanced Install' for instructions about arguments - that can be passed to ./configure to customise the build and installation. - - Preferred arguments to ./configure to obtain a comfortably working ngspice may be - --with-readline=yes and --disable-debug (for a smaller and speed optimized - executable). - - A fully featured ngspice on LINUX may be obtained with the following commands: - $ ./autogen.sh --adms - $ mkdir release - $ cd release - $ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-openmp --enable-adms - $ make 2>&1 | tee make.log - $ sudo make install - - If a problem is found with the build process, please submit a report to - the ngspice development team. Please provide information about your system - and any ./configure arguments you are using, together with any error - messages. Ideally you would have tried to fix the problem yourself first. - If you have fixed the problem then the development team will love to hear - from you. - - -1.4 Advanced Install - - Some extra options can be provided to './configure'. To get all available - options do: - - $ ./configure --help - - Some of these options are generic to the GNU build process that is used by - Ngspice, other are specific to Ngspice. - - The following sections provide some guidance and descriptions for many, - but not all, of these options. - - 1.4.1 Most useful options: - - --enable-adms - ADMS is an experimental model compiler that translates - Verilog-A compact models into C code that can be compiled into - ngspice. This is (as of ngspice-27) still experimental, some - features (e.g. noise) are missing. If you want to use it, please - refer to the ADMS section on ngspice web site. - - --enable-cider - Cider is a mixed-level simulator that couples Spice3 and DSIM - to simulate devices from their technological parameters. - - --enable-xspice - Enable XSpice enhancements, - A mixed signal simulator built upon spice3 with codemodel - dynamic loading support. See the ngspice manual for details. - - --with-readline=yes - Enable GNU readline support for the command line interface. - - --enable-openmp - Compile ngspice for multi-core processors. - Parallelization is done by OpenMP, for MOS models in BSIM3.3.0 - BSIM4.6.0 and and BSOI4 only. See the ngspice manual for details. - - --disable-debug - This option will remove the '-g' option passed to the compiler - and add -O2 optimisation (instead of default O0). - This speeds up simulating significantly, and is recommended for - normal use. - - --enable-oldapps - The old apllications ngsconvert ngproc2mod ngmultidec and ngmakeidx - are made only per user request, by adding this flag. - - --with-fftw3=no - Disable using fftw fast fourier transform library. Use internal - fft instead. Default is 'yes'. - - -1.4.2 Options Specific to Enable Ngspice as a shared library - - --with-ngshared - This option let you compile ngspice as a shared - library or dll, allowing an application controlling - ngspice. This option excludes using --with-x or - --with-wingui. Useful additional options are - --enable-xspice --enable-cider --enable-openmp. - No graphics inetrface is provided, this has to be - handled by the controlling application. - - --with-tcl=tcldir - When configured with this option the tcl module - "tclspice" is compiled and installed instead of - plain ngspice. - - -1.4.3 Options Specific to Using Ngspice - -Most of the options now following are not well maintained, are not tested or even maybe obsolete. - - --enable-capbypass - Bypass calculation of cbd/cbs in the mosfets if the vbs/vbd - voltages are unchanged. - - --enable-cluster - Clustering code for distributed simulation. This is a - contribution never tested. This code comes from TCLspice - implementation and is implemented for transient analysis only. - - --enable-expdevices - Enable experimental devices. This option is used by developers - to mask devices under development. Almost useless for users. - - --enable-experimental - define EXPERIMENTAL_CODE to mark experimental parts the code - (currently not used) - - --enable-help - Force building nghelp. This is deprecated. - - --enable-ndev - Enable NDEV interface, (experimental, needs updating) - A TCP/IP interface to external device simulator such as GSS. - For more information, please visit the homepage of GSS at - http://gss-tcad.sourceforge.net - - --enable-newpred - Enable the NEWPRED symbol in the code. - - --enable-newtrunc - Enable the newtrunc option - - --enable-nodelimiting - Experimental damping scheme - - --enable-nobypass - Don't bypass recalculations of slowly changing variables - - --enable-predictor - Enable a predictor method for convergence - - --enable-sense2 - Use spice2 sensitivity analysis - - --enable-xgraph - Compile the Xgraph plotting program. - Xgraph is a plotting package for X11 and was once very popular. - - --with-editline=yes - Enables the use of the BSD editline library (libedit). - See http://www.thrysoee.dk/editline/ - - -1.4.4 Options Useful for Debugging Ngspice - - --enable-ansi - Configure will try to find an option for your compiler so that - it expects ansi-C. - ---enable-asdebug - Debug sensitivity code *ASDEBUG*. - - --enable-blktmsdebug - Debug distortion code *BLOCKTIMES* - - --enable-checkergcc - Option for compilation with checkergcc. - - --enable-cpdebug - Enable ngspice shell code debug. - - --disable-debug - This option will remove the '-g' option passed to the compiler. - This speeds up compilation a *lot*, and is recommended for - normal use. - - --enable-ftedebug - Enable ngspice frontend debug. - - --enable-pzdebug - Debug pole/zero code. - - --enable-sensdebug - Debug sensitivity code *SENSDEBUG*. - - --enable-smltmsdebug - Debug distortion code *SMALLTIMES* - - --enable-smoketest - Enable smoketest compile. - - --enable-stepdebug - Turns on debugging of convergence stepping?? - - -2 Compilers and Options - ===================== - - Some systems require unusual options for compilation or linking that - the `configure' script does not know about. You can give `configure' - initial values for variables by setting them in the environment. Using - a Bourne-compatible shell, you can do that on the command line like - this: - CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure - - Or on systems that have the `env' program, you can do it like this: - env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure - -3 Compiling For Multiple Architectures - ==================================== - - You can compile the package for more than one kind of computer at the - same time, by placing the object files for each architecture in their - own directory. To do this, you must use a version of `make' that - supports the `VPATH' variable, such as GNU `make'. `cd' to the - directory where you want the object files and executables to go and run - the `configure' script. `configure' automatically checks for the - source code in the directory that `configure' is in and in `..'. - - If you have to use a `make' that does not supports the `VPATH' - variable, you have to compile the package for one architecture at a time - in the source code directory. After you have installed the package for - one architecture, use `make distclean' before reconfiguring for another - architecture. - -4 Installation Names - ================== - - By default, `make install' will install the package's files in - `/usr/local/bin', `/usr/local/man', etc. You can specify an - installation prefix other than `/usr/local' by giving `configure' the - option `--prefix=PATH'. - - You can specify separate installation prefixes for - architecture-specific files and architecture-independent files. If you - give `configure' the option `--exec-prefix=PATH', the package will use - PATH as the prefix for installing programs and libraries. - Documentation and other data files will still use the regular prefix. - - In addition, if you use an unusual directory layout you can give - options like `--bindir=PATH' to specify different values for particular - kinds of files. Run `configure --help' for a list of the directories - you can set and what kinds of files go in them. - - If the package supports it, you can cause programs to be installed - with an extra prefix or suffix on their names by giving `configure' the - option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - - When installed on MinGW with MSYS alternative paths are not fully supported. - See 'How to make ngspice with MINGW and MSYS' below for details. - - -5 Optional Features - ================= - - Some packages pay attention to `--enable-FEATURE' options to - `configure', where FEATURE indicates an optional part of the package. - They may also pay attention to `--with-PACKAGE' options, where PACKAGE - is something like `gnu-as' or `x' (for the X Window System). The - `README' should mention any `--enable-' and `--with-' options that the - package recognizes. - - For packages that use the X Window System, `configure' can usually - find the X include and library files automatically, but if it doesn't, - you can use the `configure' options `--x-includes=DIR' and - `--x-libraries=DIR' to specify their locations. - -6 Specifying the System Type - ========================== - - There may be some features `configure' can not figure out - automatically, but needs to determine by the type of host the package - will run on. Usually `configure' can figure that out, but if it prints - a message saying it can not guess the host type, give it the - `--host=TYPE' option. TYPE can either be a short name for the system - type, such as `sun4', or a canonical name with three fields: - CPU-COMPANY-SYSTEM - - See the file `config.sub' for the possible values of each field. If - `config.sub' isn't included in this package, then this package doesn't - need to know the host type. - - If you are building compiler tools for cross-compiling, you can also - use the `--target=TYPE' option to select the type of system they will - produce code for and the `--build=TYPE' option to select the type of - system on which you are compiling the package. - -7 Sharing Defaults - ================ - - If you want to set default values for `configure' scripts to share, - you can create a site shell script called `config.site' that gives - default values for variables like `CC', `cache_file', and `prefix'. - `configure' looks for `PREFIX/share/config.site' if it exists, then - `PREFIX/etc/config.site' if it exists. Or, you can set the - `CONFIG_SITE' environment variable to the location of the site script. - A warning: not all `configure' scripts look for a site script. - -8 Operation Controls - ================== - - `configure' recognizes the following options to control how it - operates. - - `--cache-file=FILE' - Use and save the results of the tests in FILE instead of - `./config.cache'. Set FILE to `/dev/null' to disable caching, for - debugging `configure'. - - `--help' - Print a summary of the options to `configure', and exit. - - `--quiet' - `--silent' - `-q' - Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to `/dev/null' (any error - messages will still be shown). - - `--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - - `--version' - Print the version of Autoconf used to generate the `configure' - script, and exit. - - `configure' also accepts some other, not widely useful, options. - - - -9 NGSPICE COMPILATION UNDER WINDOWS OS - ==================================== - -9.1 How to make ngspice with MINGW and MSYS - - Creating ngspice with MINGW is a straight forward procedure, - if you have MSYS/MINGW installed properly. You will need some enhancements - to the standard install (FLEX and BISON have to be made available in MSYS). - Some links are given below which describe the procedures. - - Installing from the tarball, e.g. ngspice-31.tar.gz, is now simple: After - expanding, you may just run ./compile_min.sh from the ngspice-31 directory. - - The default installation location of ngspice is the Windows path - C:\spice. The install path can be altered by passing --prefix=NEWPATH - as an argument to ./configure during the build process. - - Put the install path you desire inside "", e.g. "D:/NewSpice". Be - careful to use forward slashes "/", not backward slashes "\" (something - still to be fixed). Then add --prefix="D:/NewSpice" as an argument to - ./configure in the normal way. - - The procedure of compiling a distribution (for example, a tarball from - the ngspice website), is as follows: - - $ cd ngspice-31 - $ mkdir release - $ cd release - $ ../configure --with-wingui ...and other options - $ make - $ make install - - The most useful options are: - --enable-xspice - --enable-cider - --disable-debug (-O2 optimization, no debug information) - - A fully featured ngspice on Windows may be obtained with the following commands: - $ ./autogen.sh --adms - $ mkdir release - $ cd release - $ ../configure --with-wingui --enable-cider --disable-debug --enable-openmp --enable-xspice --enable-adms - $ make install - - However, to compile code extracted from the git repository the procedure is - a little different. Firstly install git, e.g. from http://git-scm.com/download/win - To obtain ngspice, you may do the following: - - Open the git command window. Go to a directory of your choice, e.g. D:\Spice - $ cd /d/Spice - - Issue the command for downloading ngspice: - $ git clone git://ngspice.git.sourceforge.net/gitroot/ngspice/ngspice - - This will create directory /ngspice . - - Go to directory ngspice - $ cd /d/Spice/ngspice - Start compiling, e.g. by calling - $ ./autogen.sh --adms - $ ./compile_min.sh - - Update the ngspice files: - Go to directory ngspice - $ cd /d/Spice/ngspice - Issue command for update - $ git pull - - Instead of calling ./compile_min.sh, you may choose to issue - individual commands like: - $ cd ngspice - $ ./autogen.sh - $ mkdir release - $ cd release - $ ../configure --enable-maintainer-mode --with-wingui ...and other options - $ make - $ make install - - MINGW and MSYS can be downloaded from http://www.mingw.org/. The making of - ngspice and the code models *.cm for XSpice requires installation of BISON - and FLEX to MSYS. A typical installation was tested with: - - bison-2.0-MSYS.tar.gz - flex-2.5.4a-1-bin.zip - libiconv-1.9.2-1-bin.zip - libintl-0.14.4-bin.zip - - Bison 2.0 is now superseeded by newer releases (Bison 2.3, see - http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=67879) - - The last three are from - http://sourceforge.net/project/showfiles.php?group_id=23617. - - Installing from git needs more packages to MSYS in advance: - git, automake, autoconf, libtool - - You may also look at - http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite - http://www.mingw.org/wiki/MSYS - http://www.mingw.org/wiki/HOWTO_Create_an_MSYS_Build_Environment. - - An alternative compiler setup is available at - http://tdm-gcc.tdragon.net/ - - A modern environment is offered by MSYS2 (https://www.msys2.org/). - - The install tree generated during 'make install' is: - - C:\Spice\ - bin\ - ngspice.exe - nghelp.exe - ngmakeidx.exe - ngnutmeg.exe - cmpp.exe - lib\ - spice\ - analog.cm - digital.cm - spice2poly.cm - extradev.cm - extravt.cm - share\ - info\ - dir - ngspice.info - ngspice.info-1 - .. - ngspice.info-10 - man\ - man1\ - cmpp.1 - ngmakeidx.1 - ngmultidec.1 - ngnutmeg.1 - ngproc2mod.1 - ngsconvert.1 - ngspice.1 - ngspice\ - helpdir\ - ngspice.idx - ngspice.txt - scripts\ - ciderinit - devaxis - devload - setplot - spectrum - spinit - - - - -9.2 make ngspice with MS Visual Studio 2015/17/19 - - ngspice may be compiled with MS Visual Studio 2015 or newer. - - CIDER and XSPICE are included, the code models for XSPICE - (*.cm) are made as well. - - There is currently no installation procedure provided, you may - however install the executable manually as described in the - installation tree below. - - The directory (visualc) with its files - vngspice.sln (project starter) and - vngspice.vcproj (project contents) - allows to compile and link ngspice with MS Visual Studio 2015. - Newer Visual Studio versions will translate the project files - into their compatible format (tested with MS Visual Studio 2017). - You may however deny the translation and compile in a VS 2015 - compatibility mode. - - /visualc/include contains a dedicated config.h file. It contains the - preprocessor definitions required to properly compile the code. - strings.h has been necessary during setting up the project. - - Install Microsoft Visual Studio 2019 Community with C/C++. For - example the German edition is available at no cost from - https://www.visualstudio.com/de/vs/community/. - - Goto /ngspice/visualc. - - Start MS Visual Studio 2019 by double click onto vngspice.sln. - - After MS Visual Studio has opened up, select debug or release version - by checking 'Erstellen' , 'Konfigurations-Manager' 'Debug' or 'Release'. - - Start making ngspice (called vngspice.exe) by selecting 'Erstellen' and - 'vngspice neu erstellen'. - - Object files will be created and stored in visualc/debug or visualc/release. - The executable will be stored to visualc/debug/bin or visualc/release/bin. - - An installation tree (as provided with MINGW make install) and also used by - vngspice is (maybe created manually): - - C:\Spice64\ - bin\ - ngspice.exe - lib\ - spice\ - analog.cm - digital.cm - spice2poly.cm - extradev.cm - extravt.cm - share\ - ngspice\ - scripts\ - spinit - - If you intend to install vngspice into another directory, e.g. D:\MySpice, - you have to edit /visualc/include/config.h and alter the entries: - #define NGSPICEBINDIR "C:/Spice/bin" - #define NGSPICEDATADIR "C:/Spice/share/ngspice" - to - #define NGSPICEBINDIR "D:/MySpice/bin" - #define NGSPICEDATADIR "D:/MySpice/share/ngspice" - - If the code model files *.cm are not available, you will get warning messages, - but you may use ngspice in the normal way (of course without XSPICE extensions). - - - -9.3 make ngspice with pure CYGWIN - - If you don't have libdl.a you may need to link libcygwin.a - to libdl.a symbolically. - - for example: - - $ cd /lib - $ ln -s libcygwin.a libdl.a. - - The procedure of compiling is the same as Linux. - - -9.4 ngspice console app with MINGW or CYGWIN - - Omitting the configure flag --with-wingui will yield a console ngspice. - You then will not have any graphics interface. In CYGWIN you may add --with-x - for the X11 graphics (not available in mingw). A typical configure command - may look like - ./configure --enable-adms --enable-xspice --enable-cider --enable-openmp - --disable-debug CFLAGS=-m32 LDFLAGS=-m32 prefix=C:/Spice - tested with TDM mingw. - - -9.5 cross compiling ngspice for Windows from LINUX - -Two scripts are available in the ngspice directory that allow cross -compiling for NMS Windows, if you are running LINUX. ngspice.exe or -ngspice.dll may be made. For details please see cross-compile.sh or -cross-compile-shared.sh. - - -10 NGSPICE COMPILATION UNDER macOS - ================================== - -10.1 Use precompiled binary package - 1. Install an X11 interface (like Xquartz) - 2. Install the downloaded NGSPICE package - 3. Open a terminal window and start using NGSPICE - -10.2 Compile NGSPICE manually from a tarball - 1. Install an X11 interface (like Xquartz) - 2. Install MacPorts from http://www.macports.org - 3. Execute this command: - sudo port install bison flex ncurses xorg-libXaw - 4. Configure NGSPICE invoking "./configure". A complete set of feature is: - ./configure --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no - 5. Compile NGSPICE invoking "make" - 6. Install NGSPICE invoking "make install" or "sudo make install" - -10.3 Compile NGSPICE manually from git - 1. Install an X11 interface (like Xquartz) - 2. Install MacPorts from http://www.macports.org - 3. Execute this command: - sudo port install automake autoconf libtool bison flex ncurses xorg-libXaw - 4. Execute this command: - ./autogen.sh or ./autogen.sh --adms (if you want to enable ADMS) - 5. Configure NGSPICE invoking "./configure". A complete set of feature is: - ./configure --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no - ./configure --enable-adms --enable-cider --enable-xspice --enable-openmp --enable-pss --enable-debug=no (if you want to enable ADMS) - 6. Compile NGSPICE invoking "make" - 7. Install NGSPICE invoking "make install" or "sudo make install" diff --git a/Windows/spice/docs/NEWS b/Windows/spice/docs/NEWS deleted file mode 100644 index 4bdb0012..00000000 --- a/Windows/spice/docs/NEWS +++ /dev/null @@ -1,769 +0,0 @@ -Ngspice-31, Sep 22nd, 2019 -============ - -- New features: - + if a subcircuit is defined more than once, only read the first one and discard the others - + vbic model implementation including self-heating effect - + Enable the file input as additional search path for .include files also for non-Windows OSs - + add scope to decks and subcircuits (not yet fully implemented) - + enable 'res' as valid resistor model identifier - + Add variable 'nostepsizelimit' to relieve step size limit defined by TSTEP of the .tran command - + Windows GUI: make GUI more responsive - + if the comaptibility mode is PS, LTPS or LTPSA, '$' is treated as a valid character, not as - end-of-line comment delimiter - + allow very short version information with new options -v and -d to 'version' command - + the PSPICE area token for a device instance may be not only a number, but also a parametrized - token like {tok} - + Windows GUI: New history buffering - + Windows GUI: Added scrolling to input window - + update to hicum version 2.40 - + allow " around netnames for .plot and .print commands - + command 'setcs': like command 'set' but case sensitive - + linearized cutout of an original vector by defining the vectors lin-tstart, lin-tstop, - and lin-tstep before sending the 'linearize' command - + new examples: inverters and ring oscillator using SOI - + 'option norefvalue' to suppress printing the reference value - -- Bug fixes: - + many bugs fixed and code improvements (patches 33 - 64, bug tracker nos. 390, - 394, 395, 403, 404, 408) - + memory leaks removed - -Ngspice-30, Jan 1st, 2019 -============ - -- New features: - + VDMOS device model has been overhauled extensively - + Making the manual is now much more flexible and comfortable, - xhtml manual added. - + Add pre-defined variable controlswait to enable running .control sections - after the simulation has finished (shared ngspice only) - + Add an icon to the MS Windows GUI build - + Enable more reliable memory usage data - + Support libtinfo - + add rotation angle to text output, vertcally aligned text for Postscript - and Windows y-axis plot labels - + enable postscript output for extended ascii. Currently only Western - European latin-1 (ISO/IEC 8859-1) encoding is supported - + Ancient Xgraph code removed - -- Bug fixes: - + many bugs fixed (bug tracker nos. 253, 332, 337, 368, 374, 375, 376, 377, 378, - 379, 380, 381, 384, 385, 386) - + ancient bug removed that led to spurious heap corruption of shared ngspice - under (very sensitive) Windows 10 - + memory leaks removed - -Ngspice-29, Sept 30th, 2018 -============ - -- New features: - + new variable no_auto_gnd. If set, the automatic replacing of gnd by 0 - is disabled - + new compatibility modes for 'set behavior=??'. ps sets PSPICE, lt sets - LTSPICE compatibility, ltps is both for a file added by .include command, - psa, lta, and ltpsa are the same for the whole netlist - + .if, .elseif, .endif is now evaluated recursively, nested .if are thus - enabled - + new code model sidiode, that is a simple diode, linear breakdown, reverse - and forward regions with smooth overlapp, and optional current limits - + configure flag --with-fftw3. If set to 'no', internal fast fourier is used - instead of fftw - + command setseed to set the seed value for the random number generator - + option seed=[val|random] - + variable inputdir to remeber and retrieve the last input file directory - + example directory 'digital' with analog, behavioral and digital example input files - + new XSPICE filesource, d_source, and state-machine examples - + + or - maybe part of instance name - + Quasi-saturation VDMOS example - + add environmental variable SOURCE_DATE_EPOCH to allow reproducible executables - + new parameters to command setplot: setplot next, setplot previous - + updates to commands cd, rusage, print - + introduce diode recombination current part (ISR, NR) - + update to bipolar and diode temperature equations - -- Bug fixes: - + several bug fixes - + lots of memory leaks removed, especially when XSPICE circuits are called several - times in a loop. - - -Ngspice-28, May 27th, 2018 -============ - -- New features: - + Licenses for ngspice distribution are DFSG compatible - + VDMOS power MOS model added - + if 'set ngbehavior=ps' is given in .spiceinit, device libraries loaded - via .include may have PSPICE syntax - + --enable-oldapps configure flag to compile the old, seldom used apps - ngnutmeg, ngmakeidx, ngmultidec, ngproc2mod, ngsconvert - + add command mc_source to internally re-load the circuit - + add command alterparam to alter the value of a parameter xxx given in .param xxx=value - + add the function i(xyz) to measure the current in node 1 of device xyz, to be - used in behavioral models. - + new label 'noretraceplot' for the 'plot' command, if graphs in a plot show unwanted - retracing lines. - + The hyphen '-' is a valid character in model, device and subcircuit names - + add noise for behavioral resistor - + add a new vector type "temperature" - + support instance parameter defaults on .model lines - + New functions for XSPICE event node data export from shared ngspice: - ngGet_Evt_NodeInfo(char*) and ngSpice_AllEvtNodes(void) - + 'edisplay' command now showing node name, node type and number of events per node - + add flag 'none' to the 'save' command for shared ngspice. - Output data will not be stored, but are available via callback function ng_data. - + add a function cm_get_circuit to allow accessing the circuit structure ckt - from within an XSPICE code model. - + add variable 'sim_status' to indicate if a simulation has been aborted - + add pkg-config file - -- Bug fixes: - + many, many ... as always - - -Ngspice-27, Aug 28th, 2017 -============ - -- New features: - + check for correct inductor coefficients - + add variable 'win_console' - + --enable-relpath configure flag to set preprocessor flag HAS_RELPATH - + sets search path for spinit relativ to current directory - + The search path for .spiceinit is: current dir, HOME dir, USERPROFILE dir - + new function stddev to calculate the standard deviation of all elements of a vector - + xspice digital n-input x m-output look-up table gate - + xspice digital model d_lut (digital n-input look-up table gate) - + add variable $sharedmode (if shared ngspice is running), to be used in scripts - + enable msys2 for mingw compilation - + OMP support for bsim3v3.24 model - + bsim3v3.24: add model parameter lmlt (Channel length scaling) - + OMP support for BSIM4.5 model - + update and extension of command 'wrdata' - + option xmu to set damping in trapezoid integration - + command 'linearize' will take time data from transient analysis vector if no circuit is loaded - + two new commands: edisplay and eprvcd - + 'edisplay' will show a list of all event nodes - + 'eprvcd' will print all event nodes in vcd format - + XSPICE 2D and 3D table models - + add variable 'batchmode' which is set when command line option `-b' is active - + enable backquote substitution for Visual Studio console apps - + update how-to-ngspice-vstudio.txt - + update visualc directory and project files, add XSPICE code model generation by VS2015 - + allow access to 4 GB memory of 32 bit ngspice on 64 bit Windows, 8 TB for 64 bit ngspice - + new variable `interactive' - + xspice, introduce cm_message_printf() - + add variable `width' to command "print line ..." - + support msys2 - + favor exponential temperatur equation if all parameters tc1, tc2 and tce are given for R - + move libfftw3 sideways out of the ngspice tree - + remove visual studio 2008 .vcproj files - + visualc/sharedspice.vcxproj, updated and migrated with visual studio 2015 - + `E..table {expr} {pairs}', `G..', allow an optional `=' after `table' - + `E..value=', `G..value=', allow `=' being optional - + introduce TCE, exponential temperature coefficient for R - + allow `temper' to be recognised when preceded by '=' - + allow cross-compilation, especially for MinGW-w64 - + allow "plot xlog ylog" (equiv to "plot loglog") - + extend qa test to hisimhv version 2 - + update hisimhv model to version 2.2.0 - + update hisim model to version 2.8.0 - + .control variable "sqrnoise" to deliver noise data in squared representation - + noise analysis, deliver results in V/sqrt(Hz) and A/sqrt(Hz) - + add delvt0 for bsim4 models - + bug fixes for diode model - + allow a xspice circuit with exclusively xspice event nodes - + man pages for cmpp ngmakeidx and ngproc2mod - + implement `nint()' - + everywhere: ln to the base e, log to the base e, log10 to the base 10 - + allow an optional '=' in ".func foo() = {expr}" - + bsim4, update to version 4.8 - + update hisimhv to version 1.2.4 - + cmc quality check for bsim3 model - + nested indexing for vectors - + option savecurrents to save current through all devices - + option interp to plot interpolated raw file data - + MS VS 2010 project file added for compatibility - + XSPICE: new callback function cm_get_path - -- Bug fixes: - + many, many ... as always - -Ngspice-26, Jan 4th, 2014 -============ - -- New features: - + fft command may (optionally) use fftw3 library - + add nint() rounding function - + usage of 'temper' in behavioral devices - + check for soa (safe operating area) in several device models - + library processing rewritten completely to enhance ngspice - compatibility (.lib) - + include file processing rewritten to allow nesting and various - absolute and relative path names (.inc) - + asinh, acosh, atanh functions - + shared ngspice option added: ngspice optionally compiles as - a shared object or dynamic link library - + use a hash table to massively speed up parsing the netlist - + implement a very basic .if/.else block - + implement a signed power function `pwr' for controlled sources - + implement multiplier `m' in F, G source - + apply Area Calculation Method (ACM) to the bsim3v3.3 model - + implement `tc1', `tc2' instance parameters - -- Bug fixes: - + many, many ... please see - http://sourceforge.net/p/ngspice/ngspice/ci/master/tree/ - and check the 'history' button on the upper right. - + removed memory leaks - - -Ngspice-25, Jan 4th, 2013 -============ - -- New features: - + add temperature coefficients for B source - + commands "mdump", "mrdump" to dump matrix to file - + allow `time', `temper', and `hertz' in expressions with behavioral R, L, C - + Enable ctrl-c to interrupt a simulation also for Windows GUI - + tests/bsim4: use the standard CMC model qa check - + implement exit code for command "quit" - + .nodeset all = value - + memristor code model in extradev - + new scalable diode model including tunnel component - + variable xtrtol may override the XSPICE reduction of trtol - + XSPICE example: delta-sigma converter - + XSPICE: new d_source model - + new option noopac - + bsim3: make additonal parameters accessible with @mxx[par] - + enable Mac OS X compilation - + option reseries = val - + commands "snsave", "snload" - + update hisim to version 2.7.0, new qa tests - + hisimhv update to version 1.2.3, new qa tests - + allow Ctrl-d to quit - + jfet model temperature extension, tcv and bex parameter - + speed up vector handling by hash table for vector address storage and retrieval - + update PSS code - - -- Bug fixes: - + many, many ... please see - http://ngspice.git.sourceforge.net/git/gitweb.cgi?p=ngspice/ngspice;a=shortlog;pg=0 - + remove memory leaks - + update tclspice for MS Windows - + adms3 removed due to licensing issues - - -Ngspice-24, Jan 29th, 2012 -============ - -- New features: - + .csparam allows to tranfer a param into a vector in .control ... .endc - + functions floor and ceil - + syntax Gxxx n1 n2 TABLE {expression} = (x0, y0) (x1, y1) (x2, y2) - + syntax Gxxx n1 n2 value={equation} or Exxx n1 n2 value={equation} - + variable strict_errorhandling to exit ngspice with exit code 1 - if any error occurs during circuit parsing - + command altermod allows reading from file - + command "devhelp" to show available devices and describe device parameters - + command "inventory" to print the number of istances of each device. - + function cph(vec) delivers phase from a vector without jumps at +-PI - + enable 64 bit compilation in MS Visual Studio - + --adms3 flag to compile with (experimental) adms code - + still very experimental pss code - + command 'remcirc' to remove a circuit from the list - + command 'wrdata' aknowledges appendwrite and prints complex variables - + allow comment lines inside of command files - + path variable NGSPICE_INPUT - + 'Filesource' code model - -- Bug fixes: - + More on prototypes, type casts, reordering of functions, compiler warnings - + fix a numerical problem in the hisim2 and hisimhv models - + plot i(vdd) from a loaded rawfile - + fix the guard for device generated internal nodes (via CKTmkVolt()) - + reduce memory leaks for command 'reset' - + parameter processing for nested .subckt - + bsim4/b4noi.c: correct init the correlated noise slot in noiseDens and lnNdens vector - + Many small bugs - -Ngspice-23, June 5th, 2011 -============ - -- New features: - + Reduction of trtol to 1 only if 'A' devices in the circuit and xspice is enabled - + command wrs2p to write a s-parameter file using Touchstone vers. 1 format - + d_source d_state d_ram, test cases for those xspice codemodels - + transient noise simulation added to independent voltage and current sources - + Random telegraph noise added to independent voltage and current sources - + 'time = nnn' in stop command added - + random voltage generator option trrandom to independent voltage and current sources - + ngspice build possible in a separate directory (e.g. in ng-spice-rework/release) - + update FIND .. WHEN measurements - + diode & bjt temperature model update with tlev and tlevc - + merge bsim3v1a code with bsim3v0 and bsim3v1s code with bsim3v1 - + bjt2: removed - all GP extensions of this model are now in the bjt model - + HiSIM_HV model vers. 1.2.1 added - + bsim3v32: delvto and mulu0 as instance parameters - + Replace HiSIM1 by HiSIM_2.5.1_Release_20110407 - -- Bug fixes: - + More on prototypes, type casts, reordering of functions, compiler warnings - + allow models like 2N2904 or 2SK136 also in subcircuits - + fix sensitvity calculation (for the dc-2+.cir testcase) - + allow multiple call to setup w/ correct node collapsing - + Many small bugs - -Ngspice-22, Sept 26th, 2010 -============ - -- New features: - + OpenMP multicore support for BSIM3, BSIM4, and BSIMSOI4 - + reinstate {$var} expansion in interactive interpreter - + .TITLE line added - + update to 'spectrum' script - + par('expression') in .four, .plot, .print, .meas, .save commands - + command 'option' for use in spinit, .spiceinit, and in scripts - + adms procedure updated - + new random number generator, random functions sunif() and sgauss() - + ngspice manual updated - -- Bug fixes: - + Major code cleanup to reduce compiler/linker warnings: ansi function prototypes, - void/char pointers to named pointers, explicit type casts and many more - + Many small bugs - - -Ng-spice-rework-21, Jun3, 13th 2010 -============ - -- Updated Devices: BSIMSOI 4.3.1 - -- New features: - + Compatibility: C, L, R, devices and E, G sources with expressions - Variables HERTZ, TIME, TEMPER added - + E, G sources with pwl function - + New manual - + Plotting with Gnuplot, - + Writing wrdata for simple text table to file - + .measure improved - + transmission line models improved - -- Bug fixes: - + Many small bugs, memory leaks, memory overflows - -Ng-spice-rework-20, November, 16th 2009 -============ - -Ngspice release 20 is the second release of the simulator in 2009. - -- Fixes: model names starting with a number (1n4001) are now correctly parsed. - The .global command has been reinstated (it was previously disabled) and - error messages now display the corresponding line numberin the input deck. -- New Features: .measure command for transient, ac and dc analyses (still not - complete, e.g. DERIV is missing). -- Devices: Updated BISM4 model to revision 4.6.5. Added PWL (PieceWise Linear) - functionality for B (arbitrary generator) sources. - - -Ng-spice-rework-19, April, 23rd 2009 -============ - -Ngspice release 19 came early after release 18. It reveals an important work -in compile scripts, many bug fixes in memory management, interface, and work in device models. - -- Compile scripts: tclspice and ADMS compiling fixes. Architecture compiling - fixes for SunOS, MS Visual Studio, MINGW, Cygwin. -- Memory management: fixed memory leaks, modifies memory management for - MS Windows, integration of espice bugfixes and enhancements, bug fixes in - plots and cli interface. -- Rework of BSim models, integration of EPFL-EKV model V2.63, ADMS models - mextram, hicum0, hicum2. - - -Ng-spice-rework-18 -============ - -Rework-18 is introduces several new features into ngspice. This is a major -release that comes after more than three years. During the silent years -ngspice developers worked in CVS to stabilize and introduce new features -into the simulator. - -- Tclspice simulator library has been merged with ngspice. Now you can - compile ngapice or tclspice by asserting a configure switch. See README.tcl -- New options have been introduced: brief, listing, autostop and scale -- Support for .lib file has been introduced. This allows the use of - third party model libraries in ngspice. -- .measure statements: avg, integ, rms, max, min, delay, param -- .global statements t support for global nodes whose name is not expanded - when flattening the netlist. -- .func macros for inlining functions into netlists. -- Improved the numparam library to support fully parametrized netlists. -- BSIM model binning. -- new multi-input gate VCVS using XSPICE extensions. - - -Ng-spice-rework-17 -============ - -This is a bug fix release. Previous release tarball did not included -an include file necessary for compiling numparam library. - - -Ng-spice-rework-16 -============ - -Rework-16 comes out after almost one year of CVS development (from -15-fixedRC3). This release improves ngspice in three ways: - -- Bug fixing: most of the bugs that affected rework-15 have been fixed, - thus ngspice is more stable, especially the xspice extension, the - subcircuit (X devices) handling and the numparam library. - -- New features: netlist syntax has been expandend allowing for end-of-line - comments. A ".global" card has beed added to define global nodes, i.e. - nodes that are not expanded in subcircuits. It is possible to define TC - for resistors on the instance line. The editline library can be used - instead of readline (no more GPL license violation). - -- Porting: ngspice now works (with xspice extension) on Windows using - MINGW/MSYS. - - -Ng-spice-rework-15 -============ - -Rework-15 release is a giant leap forward for ngspice. It incorporates -many (read most) of the improvements implemented in tclspice during the -two years long "sleep" of ngspice and adds many others. The incomplete -list of new features incorporated are: - - - Xspice simulator (with codemodel dynamic loading support): - a mixed signal simulator built upon spice3. - - - Cider simulator: - a mixed level simulator built upon spice3. - - - Numparam library: - a library that allows for parameter substitution at netlist level. - - - Improved models: - Diode model includes periphery effects and high level of injection effects, - BJT and BJT2 enhanced. - BSIM3 now includes ACM. - BSIM4 implementation corrected. - - -New models: - VBIC (3 Terminals, no excess phase and thermal network), - HiSIM. - - - Frontend leaks closed. - Now frontend works as it should. - - - Many new example file. - - - Xgraph plotting program included. - - -Ng-spice-rework-14 -============ - -This is a major release in terms of bug-fixes. Some enhancements -have been included: BSIM4 model and support for EKV model. The -source code for the latter must be obtained from EKV web site -(see DEVICE for more info). To enable EKV support you have -to obtain the code first and then use the configure switch -"--enable-ekv". - -The spice code contains an option to debug frontend code, now -this is available in configure as "--enable-ftedebug". - - - -Ng-spice-rework-13 -============ - -This is a major release in terms of fixes and enhancements. -A garbage collector support has been added. If the configuration -script detects that you have installed GC (Bohem-Weiser conservative -garbage collector), it will use it. Some memory leaks have been -fixed too. - -Enhancements to the code comes from Alan's contribute code, a -description of improvements follows (extracted form Alan's mail): - -Output File Format Changes - - - (NOTE: Do not rely on this, we may revert to the old format - in the next release). - - Text mode .OP results even though "rawfile" written. - - Internal device nodes are not saved to "rawfile" (reduces - file size). Optionally, these internal nodes can be replaced - by device currents and saved. - - -DC Convergence Enhancements - - - "Source-Stepping" algorithm modified with a "Dynamic" step size. - After each successful step, the node voltages are saved, the - source-factor is increased by the step-factor, and the step-factor - is increased (for the next step). If the step fails, i.e. the - circuit does not converge, the source-factor is set to the value - from the previous successful step, the previously stored node - voltages are restored, the step-factor is reduced, the source - factor is increased by this smaller step-factor, and convergence - is attempted again. - - Same thing done for "Gmin-stepping" algorithm. - - "Gshunt" option added. This sets the "diagGmin" variable used in - the gmin-stepping algorithm to a non-zero value for the final - solution. (Normally this is set to zero for the final solution). - This helps for circuits with floating nodes (and for some others - too). - - The Gmin implementation across the substrate diodes of MOS1, MOS2, - MOS3, MOS6 and BSIM3 devices, and across BJT base-emitter and - base-collector diodes, was incorrect. Correcting this dramatically - improved DC convergence. (I think this also affects BSIM1 and 2 - but I haven't fixed them yet !) - - The gm, gmb and gds calculations in the MOS3 model were all wrong. - The device equations were fixed, leading to much improved - convergence. - - The Vcrit value used for diode voltage limiting was calculated - without taking into account the device area (and in some cases - without using the temperature corrected saturation current). - This could cause floating point overflows, especially in device - models designed to be scaled by a small area, e.g. 2u by 2u diodes - (area=4e-12). This is now fixed for Diode, BJT, MOS1, MOS2, and - MOS3 models. - - The diode voltage limiting was modified to add negative voltage - limiting. Negative diode voltages are now limited to 3*Vdp-10, - where Vdp is the voltage from the previous iteration. If Vdp is - positive, then the voltage is limited to -10V. This prevents some - more floating point overflows. (Actually, I'm still playing with - the best values for this). - - The Spice3 "fix" for the MOS3 gds discontinuity between the - linear and saturated regions only works if the VMAX parameter - is non-zero. A "tweak" has been added for the VMAX=0 case. - - -Transient Convergence Enhancements - - - Temperature correction of various diode capacitances was implemented - slightly incorrectly, leading to capacitance discontinuities in - simulations at temperatures other than nominal. This affected the - Diode and MOS3 models. - - A mistake in the implementation of the MOS3 source-bulk capacitance - model resulted in a charge storage discontinuity. This has been fixed. - - The level 2 MOSFET model seems to calculate Von and Vth values for - the threshold and subthreshold values respectively, but then uses - Vbin to calculate the Vdsat voltage used to find the drain current. - However, a jump statement uses Von to decide that the device is in - the "cutoff" region, which means that when this jump allows the - drain current to be calculated, Vdsat can already be well above - zero. This leads to a discontinuity of drain current with respect - to gate voltage. The code is now modified to use Vbin for the jump - decision. It looks like the code should actually use Vth as the - threshold voltage, but since other SPICE simulators follow the - original Berkeley code, this was left alone. - - -New Model Parameters - - - A device multiplier instance parameter "M" (i.e. M devices in - parallel) was added to the MOS1,2,3 and BSIM3 mosfet models. - - -Input Read-in and Checking - - - Numbers beginning with a + sign got the input routine confused. - Fixed now. - - Attempts to nodeset (or .IC) non-existent nodes are flagged with a - warning. - - PWL statements on Voltage or Current sources are now checked for - "non-increasing" time-points at the start of the simulation. - Previously each time-point was checked as it was reached during - the simulation, which could be very annoying if you made a mistake - which caused the simulation to fail after hours of run-time. - - A check which was performed at the end of each sub-circuit expansion - was moved to the top level. This check makes sure that all sub-circuits - have been defined, but in its original position, it meant that if a - sub-circuit included ANY .MODEL statements at all, then ALL the models - called in that sub-circuit must also be defined within that - sub-circuit. Now SPICE behaves as expected, i.e. a subcircuit may - define its own models, but may also use models defined at any level - above. - - -Miscellaneous Fixes/Enhancements - - - MOS devices reported only half of the Meyer capacitances, and did not - include overlap capacitances, when reporting to the .OP printout, or - when storing device capacitances to the "rawfile". - - The ideal switch devices had no time-step control to stop their - controlling voltages/currents overshooting the switching thresholds. - The time-step control has been modified to use the last two time - points to estimate if the next one will move the controlling - voltage/current past a switching threshold. If this looks likely, - then the time-step is reduced. - - The "rawfile" writing routines have been modified to print the - "reference value" to the console during the simulation. This lets - the user see exactly how far and how fast the simulation is - proceeding. - - .OP printout tidied up a lot to make the printout clearer. - - Analysis order changed to fix a "feature" where, if you ask for - a .OP and a .TRAN in the same simulation, the node voltages - printed out correspond to the .OP, but the device data was from - the last timepoint of the .TRAN - - -Etc. - - - There are other minor bug fixes, and changes to reduce compiler - warnings. There are probably some more significant fixes which - I've forgotten :-) - - -Ng-spice-rework-12 -============ -Arno did a great work this summer! -The pole-zero analysis has been corrected. The error was introduced -in an attempt to eliminate compiler warnings. The source has been -reworked and info file have been updated. As you may see, a new dir -called "spicelib" has been created, another step toward the separation -of the simulator from the frontend. - -Ng-spice-rework-11 -============ - -Resistor code (device) has been modified to conform to spice3 device -coding standard. -A new step function (U2) has been introduced. -Documentation updated. - -Ng-spice-rework-10 -============ - -Added BSIM4 model and closed a couple of serious bugs. Added DEVICES -file to distribution. This file contains the status of device models -in this simulator. Read it, this file can save you a lot of time. - -Ng-spice-rework-9 -============ - -Thanks to Arno Peters now all device models are dynamically loaded on -demand. They are linked as shared libraries. The next step is the -dlopen() one which will make possible to link devices without any -recompilation. - - - -Ng-spice-rework-8 -============ - -Applied Arno's patch. - -From his mail message: - -Hi Paolo, - -I have prepared a source cleaning patch. - -Features: - - + patches don't get polluted with differences between automatically - generated Makefile.am files. Usually these make up the biggest part - of the patches. This allows me to read the patch on the mailing - list instead of sifting through 90% redundant and irrelevant changes. - - + the shell script autogen.sh automatically regenerates the required - files if the user has automake, autoconf and libtool installed. - - + this feature is only valuable to developers, not to end users. - - -Usage of this patch, once incorporated: - - # create a working tree to work from - cp -a ng-spice-rework-x ng-spice - - [ Changes made to ng-spice ] - - # clean up all the automatically generated files - cd ng-spice; make maintainer-clean - - # extract the differences - diff -ruN ng-spice-rework-x ng-spice > my.patch - - [ Patch sent to ng-spice mailing list or you ] - - # incorporate changes into the tree - cd ng-spice-rework-x; patch -p1 < my.patch - - # update the automatically generated files - cd ng-spice-rework-x; sh autogen.sh - - - - -Ng-spice-rework-7 (22 Mar 2000) -============ - -Bug fix release - - - -Ng-spice-rework-6 (29 Jan 2000) -============ - -This porting includes: - -1) BSIM3V3.1 model as level 49. This is the version modified by Serban -Popescu which understands the M parameter and implements HDIF. - -2) BSIM3V3.2 model al Level 50. This is the standard Berkeley version. - -3) Now the resistor model can accepts two different values for DC and -AC resistance. - - - -Ng-spice-rework-5 and 5_2 (Jan 2000) -============ - -Internal development release, buggy and not working. - -Ng-spice-rework-4 (22/12/99) -============ - -This porting includes a new feature: - -1) dynamically loading of some device code as an experimental feature -for the future GPL simulator. Thanks to Arno Peters and Manu Rouat. - -2) Patched the following bug (thanks to Andrew Tuckey for having -supplied the patch). - - * Wsw (current controlled switch) in subckt, parsing bug. - * scale factor in arbitrary source. - * bug in noise analysis. - * save segmentation faults. - - diff --git a/Windows/spice/docs/README b/Windows/spice/docs/README deleted file mode 100644 index 8d4bd1db..00000000 --- a/Windows/spice/docs/README +++ /dev/null @@ -1,67 +0,0 @@ -README for NGSPICE -================== - -Ngspice is a mixed-level/mixed-signal circuit simulator. Its code -is based on three open source software packages: Spice3f5, Cider1b1 -and Xspice. - -Spice3 does not need any introduction, is the most popular circuit -simulator. In over 30 years of its life Spice3 has become a de-facto -standard for simulating circuits. - -Cider couples Spice3f5 circuit level simulator to DSIM device simulator -to provide greater simulation accuracy of critical devices. DSIM -devices are described in terms of their structures and materials. - -Xspice is an extension to Spice3C1 that provides code modelling support -and simulation of digital components through an embedded event driven -algorithm. - -Ngspice is, anyway, much more than the simple sum of the packages -above, as many people contributed to the project with their experience, -their bug fixes and their improvements. If you are interested, browse -the site and discover what ngspice offers and what needs. If you think -you can help, join the development team. - -Ngspice is an ongoing project, growing everyday from users contributions, -suggestions and reports. What we will be able to do depends mostly on -user interests, contributions and feedback. - - - -USER DISCUSSION FORUMS: ------------------------ - - For discussions on ngspice, there are five discussion forums, to be - found at https://sourceforge.net/p/ngspice/discussion/. These - typically provide quick answers to any question concerning ngspice. - A new section on 'tips and examples' assembles useful tips provided - by maintainers and users. - - - -MAILING LISTS: -------------- - - There are two mailing lists dedicated to the use and development of ngspice. - - * ngspice-users@lists.sourceforge.net: - This list is the list for the users of the ngspice simulator. - - * ngspice-devel@lists.sourceforge.net: - ngspice development issues. Developers and "want to be" developers should - subscribe here. - - To subscribe the list(s), send a message to: - <ngspice-users-subscribe@lists.sourceforge.net> - <ngspice-devel-subscribe@lists.sourceforge.net> - - - -WEB SITEs: --------- - -This project is hosted on Sourceforge.net. -The home page is http://ngspice.sourceforge.net -The page offering source code and user interaction is - http://sourceforge.net/projects/ngspice diff --git a/Windows/spice/docs/README.adms b/Windows/spice/docs/README.adms deleted file mode 100644 index cbda7a84..00000000 --- a/Windows/spice/docs/README.adms +++ /dev/null @@ -1,58 +0,0 @@ -This document is covered by the Creative Commons Attribution Share-Alike (CC-BY-SA) v4.0. . - -*************** Verilog A Device models in ngspice ****************************************** - - -1 Introduction - -New compact device models today are released as Verilog-A code. Ngspice applies ADMS to -translate the va code into ngspice C syntax. Currently a limited number of Verilog-A models is -supported: HICUM level0 and level2 (HICUM model web page), MEXTRAM (MEXTRAM -model web page), EKV (EKV model web page) and PSP (NXP PSP web site). - - -2 ADMS - -ADMS is a code generator that converts electrical compact device models specified in high-level -description language into ready-to-compile C code for the API of spice simulators. Based on -transformations specified in XML language, ADMS transforms Verilog-AMS code into other -target languages. Here we use it to to translate the va code into ngspice C syntax. -To make use of it, a set of ngspice specific XML files is distributed with ngspice in ngspice\ -src\spicelib\devices\adms\admst. Their translation is done by the code generator executable -admsXml (see below). - - -3 How to integrate a Verilog-A model into ngspice - -3.1 How to setup a *.va model for ngspice - -Unfortunately most of the above named models’ licenses are not compatible to free software -rules as defined by DFSG. Therefore since ngspice-28 the va model files are no longer part of -the standard ngspice distribution. They may however be downloaded as a tar.gz archive from the -ngspice-30 file distribution folder. After downloading, you may expand the zipped files into -your ngspice top level folder. The models enable dc, ac, and tran simulations. Noise simulation -is not supported. -Other (foreign) va model files will not compile without code tweaking, due to the limited -capabilities of our ADMS installation. - - -3.2 Adding admsXml to your build environment - -The actual admsXml code is maintained by the QUCS project and is available at GitHub. -Information on how to compile and install admsXml for Linux or Cygwin is available on the -GitHub page. For MS Windows users admsXml.exe is available for download from -https://sourceforge.net/projects/mot-adms/. You may copy admsXml.exe to your MSYS2 setup -into the folder msys64\mingw64\bin, if 64 bit compilation is intended. -More information, though partially outdated, is obtainable from the ngspice web pages -(http://ngspice.sourceforge.net/admshowto.html) and from README-old.adms. - - -3.3 Compile ngspice with ADMS - -In the top level ngspice folder there are two compile scripts compile_min.sh and compile_linux.sh. -They contain information how to compile ngspice with ADMS. You will have to run autogen.sh -with the adms flag -./autogen.sh --adms -In addition you have to add --enable-adms to the ./configure command. Please check chapter -32.1 of the ngspice manual for perequisites and further details. -Compiling ngspice with ADMS with MS Visual Studio is not supported. diff --git a/Windows/spice/docs/README.shared-xspice b/Windows/spice/docs/README.shared-xspice deleted file mode 100644 index 706bda63..00000000 --- a/Windows/spice/docs/README.shared-xspice +++ /dev/null @@ -1,31 +0,0 @@ -Enabling XSPICE data transfer over the shared ngspice api. - -This branch enhances shared ngspice capability to event driven XSPICE data transfer. - -The shared library (dll) exports three new function: -ngSpice_Init_Evt() provides addresses for two new callback functions. - To be called upon initialization. -ngGet_Evt_NodeInfo() provides info for a specific node. -ngSpice_AllEvtNodes() provides a list of all event nodes. - -There are two new callback functions - -sendinitevt() sends info upon the event nodes: name, type an dcorresponding index -and is calles once per event nodes upon initialization of the circuit. - -sendevt() is called each time, when for a given event node, that is determined -by index, a time step has been accepted and its value has changed. This allows -to immediately make use of that value in the calling process. - -For details on the definitions you may have a look at sharedspice.h. - -There is an example caller file (currently tested only under Windows, -and compiled with Visual Studio) in directory ngspice\visualc\ng_shared_xspice_v. - -There is also a new feature: The 'save' command accepts the flag none of run in -shared mode. Then there is no internal storage of analog output data, they are -still available with the callback function ng_data. The above mentioned example -file now includes a testrun2 to demonstrate this feature. - -The already existing fcn ngGet_Vec_Info(evtnode) will return an analog vector -derived from event node evtnode containing 1 and 0. diff --git a/Windows/spice/docs/README.tcl b/Windows/spice/docs/README.tcl deleted file mode 100644 index e50bf58e..00000000 --- a/Windows/spice/docs/README.tcl +++ /dev/null @@ -1,100 +0,0 @@ -********************************************************************************* -*Copied and written by Stefan Jones (stefan.jones@multigig.com) at Multigig Ltd * -*Code based on and copied from ScriptEDA * -*(http://embedded.eecs.berkeley.edu/Alumni/pinhong/scriptEDA/) * -*Copyright (C) 2001 Author Pinhong Chen * -* * -*This program is free software; you can redistribute it and/or * -*modify it under the terms of the GNU Lesser General Public License * -*as published by the Free Software Foundation; either version 2 * -*of the License, or (at your option) any later version. * -* * -*This program is distributed in the hope that it will be useful, * -*but WITHOUT ANY WARRANTY; without even the implied warranty of * -*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * -*GNU Lesser General Public License for more details. * -* * -*You should have received a copy of the GNU Lesser General Public License * -*along with this program; if not, write to the Free Software * -*Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.* -********************************************************************************* - -WARNING! - -The text in this document has been prepared in 2006 and is partially outdated. -It is provided here only for reference and may provide some (historical) -information. - - -Welcome to tclspice README_tcl - -This file acompanies ngspice sources starting with ngspice-rework-18. It -describes what tclspice is, its installation, and points to resources that will -help you to start with it. It also contains usefull datas to keep informed, -get help, or get involved in the project. - -Enjoy - -Lionel (saintel@users.sourceforge.net) - - - -What is tclspice: - -tclspice is a variant of ngspice. It share 95% of its code (approx). The -different between plain NGspice and tclspice is the type of binary it produces, -and the way to access it. NGspice is a standalone program that you can execute -and which can either automatically process a spice directives script. It can -also propose you a command line interface. -tclspice is a tcl package name. It is based on libspice shared library. This -library is specifically designed to be loaded in tcl interpreters such as tclsh -or wish. Then all spice directives are available as tcl functions. libspice also -feature some new commands that are usefull for the integration into the tcl -environment. - -tclspice differs from ngspice by its printf (bundled to tcl printf), malloc (tcl - malloc), data handling and plotting (BLT toolkit extensions to tcl/tk). - - -Installing: - -Tclspice relies on three packages that are not included in ngspice: -tcl : the tcl command interpreter, for interpretion of user scipt -tk : the graphical extension of tcl, to represent data graphically and for GUIs -blt : BLT toolkit gives number handling and plotting features to tcl/tk - -The latest configuration is (not much tested): -tclspice-27 -tcl 8.4 -tk 8.4 -blt 2.4 - -Tclspice is built and installed the same way as ngspice. Then, after reading this -paragraph, the information you lack will probably be in README file in this directory. -There is a configuration flag to set in order to compile tclspice library rather than -plain ngspice, that is a standalone program. This flag is --with-tcl. It accepts an -argument the path to tclConfig.sh - -If you don't provide any argument, configure script will try to find it automatically. - ./configure --enable-xspice --disable-cider --disable-xgraph --enable-numparam --with-readline=no --enable-adms=no --with-tcl - -If its does not, then it will propose you some possible locations. - can't find Tcl configuration script "tclConfig.sh" - Should you add --with-tcl=/usr/lib/tcl8.4/tclConfig.sh to ./configure arguments? - -If it does not, check that tcl8.4 is installed, and manually specify the path. - ./configure --enable-xspice --disable-cider --disable-xgraph --enable-numparam --with-readline=no --enable-adms=non --with-tcl=/usr/lib/tcl8.4 - -Tclspice is not compatible with ngspice graphical code. Then when building tclspice, ---no-x is automatically configured. - - - -Support and help : - -First of all (but last recourse), mail me at saintel@users.sourceforge.net - -For any kind of information on tclspice: - http://ngspice.sourceforge.net/tclspice.html -It gives plenty of information. There is an index of good resources that you can -read to get into tclspice quickly and proficently. diff --git a/Windows/spice/docs/README.vdmos b/Windows/spice/docs/README.vdmos deleted file mode 100644 index 12aff931..00000000 --- a/Windows/spice/docs/README.vdmos +++ /dev/null @@ -1,72 +0,0 @@ -README for VDMOS model in NGSPICE -================== - -A simmple MOS model for vertical power transistors (VDMOS model) is under -development. Originally it has been available in LTSPICE -(see http://ltwiki.org/LTspiceHelp/LTspiceHelp/M_MOSFET.htm) or -SuperSpice (https://www.anasoft.co.uk/MOS1Model.htm). - -It is based on the MOS1 model. The Meyer capacitance has been -replaced by a special cap model. A body diode with series -resistance is parallel to the D/S device nodes. It defines the -reverse behavior, but also the breakdown of the transistor. - -Basic current equations for ac, dc and tran operations are -available as well as the capacitance model. - -Subthreshold behavior (parameter ksubthres) is available, -and is compatible with LTSPICE. An alternative weak inversion -model may be seected by choosing the subslope parameter instead -of ksubthres. - -A quasi saturation model enhancement is available. - -The model parameters supported are: - -/* basic device */ -"vto", ,"Threshold voltage" -"kp", "Transconductance parameter" -"phi", "Surface potential" -"lambda","Channel length modulation" -"rd", "Drain ohmic resistance" -"rs", "Source ohmic resistance" -"rg", "Gate ohmic resistance" - -"tnom", "Parameter measurement temperature" -"kf", "Flicker noise coefficient" -"af", "Flicker noise exponent" - -/* quasi saturation */ -"rq", "Quasi saturation resistance fitting parameter" -"vq", "Quasi saturation voltage fitting parameter" - -"mtriode", "Conductance multiplier in triode region" - -/* weak inversion */ -"subslope", "Slope of weak inversion log current versus vgs - vth " -"subshift", "Shift of weak inversion plot on the vgs axis " -"ksubthres", "Slope n from (vgs-vth)/n, LTSPICE and SuperSpice standard" - -/* body diode */ -"bv", "Vds breakdown voltage" -"ibv", "Current at Vds=bv" -"nbv", "Vds breakdown emission coefficient" -"rds", "Drain-source shunt resistance" -"rb", "Body diode ohmic resistance" -"n", "Bulk diode emission coefficient" -"tt", "Body diode transit time" -"eg", "Body diode activation energy for temperature effect on Is" -"Xti", "Body diode saturation current temperature exponent" -"is", "Body diode saturation current" -"vj", "Body diode junction potential" - -/* body diode capacitance (e.g. source-drain capacitance */ -"fc", "Body diode coefficient for forward-bias depletion capacitance formula" -"cjo", "Zero-bias body diode junction capacitance" -"m", "Body diode grading coefficient" - -/* gate-source and gate-drain capacitances */ -"cgdmin", "Minimum non-linear G-D capacitance" -"cgdmax", "Maximum non-linear G-D capacitance" -"a", "Non-linear Cgd capacitance parameter" -"cgs", "Gate-source capacitance" diff --git a/Windows/spice/docs/ngspice-31-manual.pdf b/Windows/spice/docs/ngspice-31-manual.pdf Binary files differdeleted file mode 100644 index 70b9fd55..00000000 --- a/Windows/spice/docs/ngspice-31-manual.pdf +++ /dev/null |