Download speci-spice spice speci-spice author and license

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
SPECI-SPICE
A MULTIPLATFORM
LOW RESOURCE
CIRCUIT SIMULATOR
Version 1.0 April 2016
SPICE
SPICE is a general-purpose circuit simulation program for nonlinear dc, nonlinear transient, and linear ac analyses. As
an early public domain software program with source code available, SPICE was widely distributed and used. Its
ubiquity became such that "to SPICE a circuit" remains synonymous with circuit simulation. SPICE source code was
from the beginning distributed by UC Berkeley for a nominal charge (to cover the cost of magnetic tape). It was in
widespread use on VMS and Unix mainframes, and later on PC computers in education, industry and military.
SPECI-SPICE
Although SPICE has roots in 1973, it was not available on personal computers until commercial PSPICE in 1984 for
IBM PC. The home computers from 8 bit computer era (CP/M, Apple II, ZX Spectrum, C64 ...), but also some early 16
bit computers (IBM PC with less than 512K, Commodore Amiga 1000, Texas Instruments TI89) were considered too
weak to host SPICE. The free version was not available for PC computers until 386 age. Also, its source code written in
Fortran and converted to C is not easy to understand.
Phenomena of emulators and cross developmment tools revived the interest on old home computers, so why not
implement electric circuit simulator like SPICE on them, too? There will be some restrictions, but it is said that 10% of
program code does 90% of job. With some model simplifications, restriction to node naming, and omiting some
analyses like temperature, Fourier, noise and TF, we can implement most of SPICE functionality in a very limited 8 bit
computers memory.
SPECI-SPICE is implementation of SPICE2 subset for 8 bit Z80 computers. It supports all 16 devices available in
SPICE2 and four major analyses (OP, DC, AC and TRAN). As it is written in standard C, it can be also recompiled to
Unix, MS Windows and MS DOS systems.
SPECI-SPICE is a general-purpose circuit simulation program for nonlinear dc, nonlinear transient, and linear ac
analyses. Circuits may contain resistors, capacitors, inductors, mutual inductors, independent voltage and
current sources, four types of dependent sources, and the four most common semiconductor devices: diodes, BJT’s,
JFET’s, and MOSFET’s.
SPECI-SPICE has built-in models for the semiconductor devices, and the user need specify only the pertinent model
parameter values. The model for the BJT Ebers-Moll model. The diode model can be used for either junction diodes or
Schottky barrier diodes. The JFET model is based on the FET model of Shichman and Hodges. MOSFET is described
by a square-law I-V characteristic .
AUTHOR AND LICENSE
SPECI-SPICE is written by prof. dr. Samir Ribić at Universiry of Sarajevo. Usage and modification of SPECI-SPICE is
free, as long as original author name remains intact.
Algorithms for circuit solutions are derived from QUCS project http://qucs.sourceforge.net under GPL license. This
manual is derived from SPICE 2 user manual (A.Vladimirescu, Kaihe Zhang, A.R.Newton, D.O.Pederson,
A.Sangiovanni-Vincentelli Department of Electrical Engineering and Computer Sciences University of California
Berkeley, Ca., 94720), now covered by BSD license.
MEMORY REQUIREMENTS AND CAPABILITIES
For Z80 and 80x86 systems, SPECI-SPICE can be used with six capability levels, depending on available memory.
a)
LEVEL 0, Z80 computers with at least 13 kilobytes free continual memory: (ZX-80, ZX-81). Only .OP analysis
(solving one DC circuit) consisting of resistors, ideal voltage and ideal current sources. 2 kilobytes available for
user circuit.
b) LEVEL 1, Z80 computers with at least 26 kilobytes free continual memory: (Timex 2068, VZ-200, SAM Coupe,
Grundy Newbrain, Peters Plus Sprinter, Camputers Lynx): All four analyses .OP , .DC, .AC and .TRAN consisting
of resistors, ideal voltage sources, ideal current sources, four types of linear dependant sources, capacitors,
inductors. 4 kilobytes available for user circuit.
c)
LEVEL 2, Z80 computers with at least 40 kilobytes free continual memory (ZX Spectrum 48/128/+2/+3, MSX
computers with DOS, Amstrad CPC 464/664/6128, TRS80, Jupiter ACE with 48K, Sharp MZ 80K/MZ 700,
Cambridge Computers Z88, Memotech MTX 512): All four analyses .OP , .DC, .AC and .TRAN consisting of
resistors, ideal voltage sources, ideal current sources, four types of linear dependant sources, capacitors, inductors,
inductive couples, diodes, bipolar transistors, FET, MOSFET, subcircuit, transmission line, .LIST and .TEMP
commands, 6 kilobytes available for user circuit.
d) LEVEL 3, Z80 computers with at least 50 kilobytes free continual memory (CP/M 80 computers): all LEVEL 2
functionality, load ASCII circuit from file, 10 kilobytes available for user circuit.
e) LEVEL 4, IBM PC compatible, with MSDOS and 128K RAM, all LEVEL3 functionality, 52 kilobytes available
for user circuit.
f) LEVEL 5, i386 PC (Windows 9x/NT/2000/XP/Vista/7/8/10/CE, Linux,BSD) all LEVEL3 functionality, 256
kilobytes available for user circuit.
There is no need to extend functionality beyond LEVEL 5, because there are more powerful SPICE compatible
programs available for stronger computers.
TYPES OF ANALYSIS
DC Analysis
The dc analysis portion of SPECI-SPICE determines the dc operating point of the circuit with inductors shorted and
capacitors opened. A dc analysis is automatically performed prior to a transient analysis to determine the transient
initial conditions, and prior to an ac small-signal analysis to determine the linearized, small-signal models for non-linear
devices
AC Small-Signal Analysis
The ac small-signal portion of SPECI-SPICE computes the ac output variables as a function of frequency. The pro
gram 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.
The desired output of an ac small- signal analysis is usually a transfer function (voltage gain, transimpedance, etc
Transient Analysis
The transient analysis portion of SPECI-SPICE 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.
STARTING THE PROGRAM
Starting the program depends on the operating system, or emulator of the old system it is compiled for.
Platform
and level
Amstrad
CPC
EXEDIR directory
Starting on emulator under Windows or on the real machine
output/cpc/run
Install the WINAPE emulator. Select the menu option File/Drive A/Insert
Disk Image and select SPICE.DSK from EXEDIR. Type
RUN "SPICECPC"
---------------To transfer to the real Amstrad 464, use the tool CPC Disk XP which will
convert DSK file to 3.5” floppy diskette. Then connect 3.5” floppy powered
from PC to Amstrad CPC 6128 (tutorials how to do it available on Internet).
Copy the files to the internal floppy.
Download, install and run the emulator PALE. Using right mouse button
select the emulators’s control panel. Change the machine type to 96K. In the
TAPE section find the Load Binary button and navigate to SPICE.TAP file.,
MLOAD “” will be automatically typed in.
---------------To transfer to the real Camputers Lynx is not yet supported.
Install the emulator M.A.M.E (older versions are called M.E.S.S) and required
roms. Put spice.wav into software subdirectory. Start the emulator using
mame mc1000 -cass software\spice.wav
LEVEL2
Camputers
Lynx
output/lynx/run
LEVEL1
CCE
MC-1000
output/mc1000/run
LEVEL0
Type the command
LOAD
---------To transfer to the real MC1000 computer connect the tape recorder to the
sound card, play the spice.wav file, record the sound, connect the tape
recorder to the real MC-1000 and load the program using LOAD command.
Commodore
128
output/c128/run
Download , install and start the emulator VICE. Select the option File/Attach
disk image/Drive 8, choose Spice.d64 and click Atach. Type the commands
LOAD "SPICE.LDR",8
RUN
-------------To transfer to the real Commodore 128, connect 1541/1571 floppy druve to
PC using XA1541 active cable and install the program OpenCBM to convert
the spice.d64 file to real floppy diskette. Reconnect the floppy drive to
Commodore 128 and type
LOAD "SPICE.LDR",8
RUN
output/cpm/run
Download files RUNCPM.EXE and CPM22.BIN and place them to the same
directory. In this directory create one subdirectory called A. Copy the file
SPICE.COM into the A subdirectory. Start RUNCPM.EXE and execute
SPICE
Or
SPICE NAME.CIR
------------To transfer to the real CP/M machine, start the KERMIT compatible terminal
programs on both machines and connect them using NULL modem cable.
Then transfer the SPICE.COM file.
Start the Genieous emulator. In the menu File/Autostart file select the file
SPICE.CMD from the EXEDIR.
-------See TRS80 hints about transfer to the real machine
LEVEL2
CP/M
LEVEL3
Eaca Colour
Genie
LEVEL1
output/genie/run
Enterprise
64/128
output/ent/run
LEVEL1
Jupiter Ace
output/ace/run
LEVEL2
Lambda
8300
output/lambda/run
LEVEL0
Linux PC
LEVEL5
Mattel
Aquarius
output/aquarius/run
LEVEL0
Install the emulator ep32. Select the Menu option Hardware/Load Memory
config/Original Ep128 with tape. Select the menu option File/Select directory
for tape files and choose the EXEDIR directory. Type the command
LOAD ""
And select SPICE.APP file.
------Install the emulator ep128emu. It has tape utility to create virtual tapes. Import
the SPICE.APP file into the virtual tape. Connect the tape recorder to the
sound card. Press record and play. Start the emulator ep128emu. Set 100%
speed. Select the virtual tape. Load it in emulator using LOAD”” comand.
After the program is loaded, stop the tape and connect the tape recorder to the
real Enterprise. Load the program using LOAD””.
Install and start the EightyOne ennulator. In the Options/Hardware menu
select Jupiter Ace and choose 48K RAM pack. In the File/Open TAPE...
menu, select the SPICE.TAP in the EXEDIR directory. Type
0 0 BLOAD a.bin
and press ENTER.
----------To transfer to the real machine: Download utility Tape2WAV by Mark
Woodmass. Use it to convert TAP file to WAV, connect tape recorder to
sound card. Press record+play on the tape recorder and play WAV in media
player. Rewind the tape, connect the tape recorder to Jupiter ACE and type
0 0 BLOAD a.bin
Install and start the EightyOne ennulator. In the Options/Hardware menu
select Lambda 8300 and choose 16K RAM pack. In the File/Open TAPE...
menu, select the SPICE.P in the EXEDIR directory. Type LOAD "" and press
ENTER. Then type RUN and pres ENTER.
---------Transfer to the real Lambda 8300 is not yet available
Type shell commands:
cp pc.inc platform.inc
gcc spice.c -o spice
./spice
Install and start the emulator Virtual Aquarius. Run the emulator. From within
the emulator, load the loader: cload, press ENTER twice, then select File/Play
Cassette File and choose the “_spice.caq” cassette file (loader). At the “OK”
prompt, type RUN <ENTER> press ENTER twice, then select File/Play
Cassette File and choose the SPICE.CAQ cassette file.
---------Transfer to the real Mattel Aquarius is not yet available
Memotech
MTX 512
LEVEL1
output/mtx/run
Install the emulator MEMU. Copy the file SPICE.MTX into tapes
subdirectory of the MEMU emulator. Change to tapes directory and from this
directory start the MEMU emulator using the command
MEMU –v
Inside the emulator type
LOAD "SPICE"
RUN
---------To transfer to the real Memotech MTX 512 series computer connect the tape
recorder to the sound card, play the spice.wav file, record the sound, connect
the tape recorder to the real Memotech MTX 512 and load the program using
LOAD "SPICE" and RUN commands
MSDOS PC
output/pcdos/run
LEVEL4
MSX
With
MSX DOS
output/msx/run
LEVEL2
NewBrain
output/nb/run
LEVEL1
Philips
P2000T
output/p2000/run
If Windows does not support DOS executables, install the DOSBOX
emulator, start it, and (assuminng that SPECI-SPICE is in C:\SPICE
directory), use mount command
MOUNT C: C:\SPICE\OUTPUT\PCDOS\RUN
C:
Start it with
SPICE
Or
SPICE NAME.CIR
----------------------To transfer the program to old PC, connect the suitable floppy drive to the PC
where you downloaded SPECI-SPICE and copy spice.exe from EXEDIR to
the floppy. Insert the diskette into old PC and start it with SPICE.
Install the emulator fMSX by Marat Fayzullin and Disk image Tool by
Surachai Chenchirotphiphat. Download the DSK image with MSX-DOS.
Using Disk Image Tool transfer SPICE.COM from the EXEDIR directory to
the DSK file with MSXDOS. Start fMSX and select the option File/Disk
Drive A/Load Disk and select the DSK file with spice. Select the option
Hardware/Reset Hardware and boot the MSX DOS. Type the commands
MODE 80
SPICE
-------------MSX 3.5” format is directly readable on Windows PC, so it is enough to copy
SPICE.COM file to the floppy to be used on MSX.
Download emlator of Newbrain by despindis chris. Below subdirectory Basic
of the emulator create the direcotry Spice, and copy contetns of the EXEDIR.
Start the emulator. Select File/Start Emulation. Select File/Tape management
and choose virtual tape spice. Type the BASIC commands
LOAD ""
RUN
---------Transfer to the real NewBrain is not yet available
Download and unpack the emulator m2000 by Marcel de Kogel. Unpack in
it’s directory cwsdpmi.zip too. Copy spice.cas into this directory. Boot PC in
pure DOS. Start the emulator with
LEVEL1
M2000 -tape SPICE.CAS
Type the comands
CLOAD
RUN
---------Transfer to the real Philips P2000T is not yet available
SAM Coupe
LEVEL1
output/sam/run
Install the emulator SimCoupe. Download the disk file with SAM Coupe
DOS, samdos2.dsk and place it in the directory with the emulator. Start the
emulator and choose the menu option File/Open and choose Samdos2.dsk.
Type the command
BOOT
Select File/Import data and choose SPICE.BIN from the EXEDIR. Type the
command
SAVE "SPICE" CODE 32768,32768
Type the basic program
10 CLEAR 32767
20 LOAD "SPICE" CODE
30 CALL 32768
Type the command
SAVE "SP" LINE 10
In a future start the program
LOAD "SP"
-------------To transfer to the real SAM Coupe use the SAMDisk utility by Simon Owen,
which will convert DSK file to the floppy diskette.
Sega
SC-3000
output/sc3000/run
Install the emulator M.A.M.E (older versions are called M.E.S.S) and required
roms. Find the “Sega BASIC Level 3 V1 (SC-3000).sc “ and rename it to
segabas3.sc Put segabas3.sc and spice.wav into software subdirectory. Start
the emulator using
mame sc3000 -cart segabas3.sc -cass software\spice.wav
In the emulator type the command
LOAD
Press ScrollLock and Tab key tp bring up tape selection menu and select the
play option.
---------To transfer to the real SC-3000 connect the tape recorder to the sound card,
play the spice.wav file, record the sound, connect the tape recorder to the real
SC-3000and load the program using LOAD command.
output/mz/run
Download and install emulator mz700_win by Michal Franzen. Double click
the model you want to emulate in Machine tab. Then select the option
File/Load MC and select SPICE.MZT. Select Hardware/Run.
Or
Install the emulator M.A.M.E (older versions are called M.E.S.S) and required
roms. Put spice.mzt into software subdirectory. Start the emulator using
mame mz700 -cass software\spice.mzt
In the emulator type the command
L
Press Enter, then ScrollLock and Tab key tp bring up tape selection menu and
select the play option.
---------To transfer to the real Sharp MZ series computer connect the tape recorder to
the sound card, play the spice.wav file, record the sound, connect the tape
recorder to the real Sharp MZ and load the program using L command.
output/exidy/run
Install the emulator M.A.M.E (older versions are called M.E.S.S) and required
roms. Put spice.wav into software subdirectory. Start the emulator using
mame sorcerer -cass1 software\spice.wav
In the emulator type the command
LOADG
Press ScrollLock and Tab key tp bring up tape selection menu and select the
play option.
---------To transfer to the real Sorcerer Exidy connect the tape recorder to the sound
card, play the spice.wav file, record the sound, connect the tape recorder to the
real Sorcerer Exidy and load the program using LOADG command.
output/m5/run
Install the emulator M.A.M.E (older versions are called M.E.S.S) and required
roms. Put basic-i.rom and spice.wavinto software subdirectory. Start the
emulator using
mame m5 -cart1 software\basic-i.rom -cass software\spice.cas
In the emulator type the command
TAPE
Press ScrollLock and Tab key tp bring up tape selection menu and select the
play option.
---------To transfer to the real Sord M5 connect the tape recorder to the sound card,
play the spice.wav file, record the sound, connect the tape recorder to the real
Sord M5 and load the program using TAPE command.
output/sprinter/run
Install the emulator SPRINT by Alexander Shabarshin. Copy the file
SPICE.EXE from EXEDIR to DISK subdirectory of the sprint emulator. Open
the cmd console, change to the sprinter emulator directory and start it with
SPRINT SPICE.EXE
-------Transfer to SPRINTER is possible with connecting Sprinter’s hard disk to
your PC, because Sprinter uses FAT 16 hard disk format,. Then copy the file.
LEVEL 1
Sharp MZ
LEVEL2
Sorcerer
Exidy
LEVEL2
Sord M5
LEVEL1
Sprinter
LEVEL1
TI85
output/ti85/run
LEVEL0
TI86
output/ti86/run
LEVEL0
Install the emulator program VTI. Download the TI85.ROM and put it into
VTI directory. Download and extract Rigel Shell. Start VTI. Select TI85.
Click 2nd Link, then press F2 to receive. Right Mouse click and choose Send
File to VTI. Choose the file rigel.85b from the Backups directory of the Rigel
Shell. Quickly press F1 to confirm Warning about Memory backup, before
transmission error message. Click 2nd OFF On, to init the Rigel Shell. . Click
2nd Link, then press F2 to receive. Right Mouse click and choose Send File to
VTI. Select spice.85s. Click 2nd OFF On, to init the Rigel Shell. Click Custom,
then F1, and select SPICE program.
------Install and start TI Graph Link program on PC side. Connect the calculator
and PC and follow the similar procedure.
Install the emulator program VTI. Download the TI86.ROM and put it into
VTI directory. Download and extract Large ASM Shell. Start VTI. Select
TI86. Right Mouse click and choose Send File to VTI. Choose the file
LargeLd.86p from the Large Asm Shell. Right Mouse click and choose Send
File to VTI. Select spice.85s. Type the command
Asm(LargeLd)
------Install and start TI Graph Link program on PC side. Connect the calculator
and PC and follow the similar procedure.
Timex 2068
output/timex/run
LEVEL1
TRS 80
(tape
version)
LEVEL2
output/trs80/run
Install emulator FUSE. In the Machine/Select... menu select Timex 2068. In
the menu Media/Tape/Open... select the spice.tap file from the EXEDIR
directory. Type LOAD "" (LOAD is on J key, quote is on CTRL+P) and press
ENTER.
--------------Hint for file transfer is a same as on ZX Spectrum
In TRS32 emulator, disable floppy emulation using the menu option
Options/Configuration. Select the option Storage/Insertt Cassete Tape...
Choose the file SPICE.CAS in the EXEDIR directory. Select the option
Storage/Show Cassette Recorder. Select the option File/Hard reset. Answer
20991 for Memory size. Type the command
SYSTEM
Then type
A.BIN
Press Play on the cassette simulator window and wait. Remark two stars in
the top right corner, one of them shoud flash. Wait until program loads (991
tape counter). To start the program type the command
/
--------------To send the program to the real TRS-80 use the Play CAS Utility my Knut
Roll-Lund, connect the tape recorder to your sound card, record the sound
using Rec+Play and play the file SPICE.CAS. After recording, connect the
tape recorder and start it as above
TRS 80
(disk
version)
output/trs80/run
LEVEL2
VZ 200
LEVEL1
output/vz200/run
Windows
PC
output/pcwin/run
LEVEL5
Z88
output/z88/run
LEVEL1
ZX 80 16 K¸
output/zx80/run
LEVEL0
ZX 81 16K
LEVEL0
output/zx81/run
Download the DSK image of the operating system for TRS80, for example
NewDOS. Install and start the emulator TRS32. In the menu Storage/Insert
floppy disk select the DSK file with operating system as the first disk. Select
the menu File/Soft reset. Select the menu option File/Run cmd file and choose
SPICE.CMD in EXEDIR directory.
Or
In the menu Storage/Insert floppy disk select the SPICE.DSK from EXEDIR
as the second floppy and type
SPICE/CMD
--------------To transfer to the real machine connect 5.25” floppy drive to your PC, and
prepare DD diskette. Download Linux utilites trsfmt and diskdmp by Tony
Duell. Compile them and use to convert SPICE.DSK to the real TRS 80
floppy. Bring the diskette to TRS80 and start the program using th command
SPICE/CMD
Or
Transfer the file SPICE.CMD to TRS80 using RS232 cable and communicatin
program.
Install the emulator VZEM, and select the option File/Load VZ and select the
file SPICE.VZ to load the snapshot.
-------To transfer to the real fully RAM 48K expanded VZ200, connect the tape
recorder to the sound card, play the spice.wav file, record the sound, connect
the tape recorder to the real VZ200 and load the program using CLOAD
command.
Open command prompt. Use CD command to reach the program directory.
Start the program with
SPICE
or
SPICE NAME.CIR
Install the emulator OzVM, and Java virtual machine. Start the emulator
using
java -jar z88.jar
Click to slot1. Select EPROM 128K. Select Create file area checkbox. Click
the option Load files and choose SPICE.BAS. Click the Index key. Select the
menu option Flash Store. Select File card area 1. Cose the file /spice.bas and
press ENTER twice. Read the Message Saved to RAM 0/Spice.bas. Click the
Index key. Select the menu option BBC BASIC. Type the command
LOAD "SPICE.BAS"
RUN
----------Connect the real Z88 with PC and use the option Imp-Export to transfer
SPICE.BAS file from PC to Z88. Select option receive and give the name to
the file SPICE.BAS. On the PC install and start program EasyLink, and
transfer the file SPICE.BAS. Then go to BBC BASIC and type
LOAD "SPICE.BAS"
RUN
Install and start the EightyOne ennulator. In the Options/Hardware menu
select ZX80 and choose 16K RAM pack. In the File/Open TAPE... menu,
select the SPICE.O in the EXEDIR directory. Type LOAD "" and press
ENTER.
---------Transfer to the real ZX80 is not yet available
Install and start the EightyOne ennulator. In the Options/Hardware menu
select ZX81 and choose 16K RAM pack. In the File/Open TAPE... menu,
select the SPICE.P in the EXEDIR directory. Type LOAD "" and press
ENTER.
---------To transfer to the real ZX81, download Java ZX81 Tape Converter and use it
to convert .p file to WAV format connect tape recorder to sound card. Press
record+play on the tape recorder and play WAV in media player. Rewind the
tape, connect the tape recorder to ZX Spectrum and type LOAD ""
ZX
Spectrum
LEVEL2
output/zx/run
Install emulator FUSE. In Machine/Select... menu select Spectrum 48K. In the
menu Media/Tape/Open... select the spice.tap file from the EXEDIR
directory. Type LOAD "" (LOAD is on J key, quote is on CTRL+P) and press
ENTER.
----To transfer to the real machine: Download utility Tape2WAV by Mark
Woodmass. Use it to convert TAP file to WAV, connect tape recorder to
sound card. Press record+play on the tape recorder and play WAV in media
player. Rewind the tape, connect the tape recorder to ZX Spectrum and type
LOAD ""
Getting started
After the program is started, the circuit is entered line by line. The netlist file format required by SPECI-SPICE is quite
simple. The lines are inserted from keyboard or ASCII text file containing multiple lines of text ( LEVEL3 and above),
each line describing either a circuit component or special SPICE command. Circuit architecture is specified by
assigning numbers to each component's connection points in each line, connections between components designated by
common numbers. Examine the following example circuit diagram and its corresponding SPECI-SPICE netlist. Please
bear in mind that the circuit diagram exists only to make the simulation easier to understand. SPECI-SPICE only
understands netlists. This example should work on all levels.
The schematic above is representerd with the following net list.
EXAMPLE CIRCUIT
V1 1 0 DC 5
R1 1 0 2.2K
R2 1 2 3.2K
R3 2 0 150
.OP
.END
Each line shown above is explained here:
♦ First line is a title line. It must be entered after the program is started
♦ V1 represents the battery (voltage source 1), positive terminal numbered 1, negative terminal numbered 0, with a
DC voltage output of 5 volts.
♦ R1 represents resistor R1 in the diagram, connected between points 1 and 0, with a value of 2.2 kΩ.
♦ R2 represents resistor R2 in the diagram, connected between points 1 and 2, with a value of 3.2 kΩ.
♦ R3 represents resistor R3 in the diagram, connected between points 2 and 0, with a value of 150 kΩ.
♦ .OP Starts the DC simulation, and calculates voltages of the nodes 1 and 2, and the current through the voltage
source V1.
♦ .END leaves the program
Electrically common points (or "nodes") in a SPICE circuit description share common numbers, much in the same
way that wires connecting common points in a large circuit typically share common wire labels.
If some parameter of a component is wrongly entered before .END command, the whole line can be retyped. To clear
component and lines entered after it, use the .CLEAR command followed by component name, if supported.
On LEVEL3 platforms and above, the netlist can be prepared in a text file whose name is submited as a parameter to
the SPICE command.
Input Format
The input format for SPECI-SPICE consists of multiple lines. Fields on a line are separated by one or more blanks, a
comma, an equal (=) sign, or a left or right parenthesis; extra spaces are ignored. A name field must begin with a letter
(A through Z) and cannot contain any delimiters. Only the first eight
characters of the name are used. A number field may be an integer field (12, -44), a floating point field (3.14159), either
an integer or floating point number followed by an integer exponent (1E-14, 2.65E3), or either an integer or a floating
point number followed by one of the following scale factors:
T=1E12
G=1E9
MEG=1E6
K=1E3
M=1E-3
U=1E-6
N=1E-9
P=1E-12
F=1E-15
Letters immediately following a number that are not scale factors are ignored, and letters immediately following a scale
factor are ignored. Hence, 10, 10V, 10VOLTS, and 10HZ all represent the same number, and M, MA, MSEC, and
MMHOS all represent the same scale factor. Note that 1000, 1000.0, 1000HZ, 1E3, 1.0E3, 1KHZ, and 1K all represent
the same number.
CIRCUIT DESCRIPTION
The circuit to be analyzed is described to SPECI-SPICE by a set of element line, which define the circuit topology and
element values, and a set of control line, which define the model parameters and the run controls. The first line in the
input must be a title line, and the last line must be a .END line. The order of the remaining lines depends on
referencing: you can enter the line which depends on element name or model name only after the referenced device or
model.
Each element in the circuit is specified by an element line that contains the element name, the circuit nodes to which the
element is connected, and the values of the parameters that determine the electrical characteristics of the element. The
first letter of the element name specifies the element type. The format for the SPECI-SPICE element types is given in
what follows.
♦ The strings XXXXXXX, YYYYYYY, and ZZZZZZZ denote arbitrary alphanumeric strings. For example, a
resistor name must begin with the letter R and can contain from one to eight characters. Hence, R, R1, RSE,
ROUT, and R3AC2ZY are valid resistor names.
♦ Data fields that are enclosed in lt and gt signs ’< >’ are optional. All indicated punctuation (parentheses, equal
signs, etc.) are required. With respect to branch voltages and currents, SPECI-SPICE uniformly uses the associated
reference convention (current flows in the direction of voltage drop).
♦ Nodes must be nonnegative integers and need to be numbered sequentially. The reference (ground) node must be
numbered zero. The circuit cannot contain a loop of voltage sources and/or inductors and cannot contain a cutset of
current sources and/or capacitors. Each node in the circuit must have a dc path to ground. Every node must have at
least two connections and MOS-FET substrate nodes (which have two internal connections anyway).
Title line
Minimum level supported: 0
Examples:
POWER AMPLIFIER CIRCUIT
TEST OF CAM CELL
This line must be the first line in the circuit description. Its contents are printed verbatim as the heading for each section
of output.
.END
Minimum level supported: 0
Examples:
.END
This line must always be the last line in the circuit description. Note that the period is an integral part of the name.
Comment Line
Minimum level supported: 0
General Form:
* <any comment>
Examples:
* RF=1K
GAIN SHOULD BE 100
* MAY THE FORCE BE WITH MY CIRCUIT
The asterisk in the first column indicates that this line is a comment line. Comment lines may be placed anywhere in
the circuit description.
ELEMENT LINES
Resistors
Minimum level supported: 0
General form:
RXXXXXXX N1 N2 VALUE Examples:
R1 1 2 100
RC1 12 17 1K N1 and N2 are the two element nodes. VALUE is the resistance (in ohms) and may be positive or
negative but not zero.
Capacitors and Inductors
Minimum level supported: 1
General form:
CXXXXXXX N+ N- VALUE
LYYYYYYY N+ N- VALUE
Examples:
CBYP 13 0 1UF
COSC 17 23 10U
LLINK 42 69 1UH
LSHUNT 23 51 10U
N+ and N- are the positive and negative element nodes, respectively. VALUE is the capacitance in Farads or the
inductance in Henries.
Coupled (Mutual) Inductors
Minimum level supported: 2
General form:
KXXXXXXX LYYYYYYY LZZZZZZZ VALUE
Examples:
K43 LAA LBB 0.999
KXFRMR L1 L2 0.87
LYYYYYYY and LZZZZZZZ are the names of the two coupled inductors, and VALUE is the coefficient of coupling,
K, which must be greater than 0 and less than or equal to 1. Using the ’dot’ convention, place a ’dot’ on the first node
of each inductor.
Transmission Lines (Lossless)
Minimum level supported: 2
General form:
TXXXXXXX N1 N2 N3 N4 Z0=VALUE TD=VALUE>
Examples:
T1 1 0 2 0 Z0=50 TD=10NS
N1 and N2 are the nodes at port 1; N3 and N4 are the nodes at port 2. Z0 is the characteristic impedance. The length
of the line may be expressed as transmission delay, TD. Note that this element models only one propagating mode.
One should be aware that SPECI-SPICE will use a transient time-step exact as last transmission line delay. So, in
transient analysis all transmission lines need to have the same time delayy and very short transmission lines (compared
with the analysis time frame) will cause long run times.
Linear Dependent Sources
Minimum level supported: 1
SPECI-SPICE allows circuits to contain linear dependent sources characterized by any of the four equations
i=g*v
v=e*v
i=f*i
v=h*i
where g, e, f, and h are constants representing transconductance, voltage gain, current gain, and transresistance,
respectively.
Linear Voltage-Controlled Current Sources
Minimum level supported: 1
General form:
GXXXXXXX N+ N- NC+ NC- VALUE
Examples:
G1 2 0 5 0 0.1MMHO
N+ and N- are the positive and negative nodes, respectively. Current flow is from the positive node, through the
source, to the negative node. NC+ and NC- are the positive and negative controlling nodes, respectively.
VALUE is the transconductance (in mhos).
Linear Voltage-Controlled Voltage Sources
Minimum level supported: 1
General form:
EXXXXXXX N+ N- NC+ NC- VALUE
Examples:
E1 2 3 14 1 2.0
N+ is the positive node, and N- is the negative node. NC+ and NC- are the positive and negative controlling nodes,
respectively. VALUE is the voltage gain.
Linear Current-Controlled Current Sources
Minimum level supported: 1
General form:
FXXXXXXX N+ N- VNAM VALUE
Examples:
F1 13 5 VSENS 5
N+ and N- are the positive and negative nodes, respectively. Current flow is from the positive node, through the source,
to the negative node. VNAM is the name of a voltage source through which the controlling current flows. The
direction of positive controlling current flow is from the positive node, through the source, to the negative node of
VNAM. VALUE is the current gain.
Linear Current-Controlled Voltage Sources
Minimum level supported: 1
General form:
HXXXXXXX N+ N- VNAM VALUE
Examples:
HX 5 17 VZ 0.5K
N+ and N- are the positive and negative nodes, respectively. VNAM is the name of a voltage source through which the
controlling current flows. The direction of positive controlling current flow is from the positive node, through the
source, to the negative node of VNAM. VALUE is the transresistance (in ohms).
Independent Sources
Minimum level supported: 0
General form:
VXXXXXXX N+ N- <<DC> DC/TRAN VALUE> <AC <ACMAG <ACPHASE>>>
IYYYYYYY N+ N- <<DC> DC/TRAN VALUE> <AC <ACMAG <ACPHASE>>>
Examples:
VCC 10 0 DC 610
VIN 13 2 0.001 AC 1 SIN(0 1 1MEG)
ISRC 23 21 AC 0.333 45.0 SFFM(0 1 10K 5 1K)
VMEAS 12 9
N+ and N- are the positive and negative nodes, respectively. Note that voltage sources need not be grounded.
Positive current is assumed to flow from the positive node, through the source, to the negative node. A current source
of positive value, will force current to flow out of the N+ node, through the source, and into the N- node.
Voltage sources, in addition to being used for circuit excitation, are the ’ammeters’ for SPECI-SPICE, that is, zero
valued voltage sources may be inserted into the circuit for the purpose of measuring current. They will, of course, have
no effect on circuit operation since they represent short-circuits.
DC/TRAN is the dc and transient analysis value of the source. If the source value is zero both for dc and transient
analyses, this value may be omitted. If the source value is time-invariant (e.g., a power supply), then the value may
optionally be preceded by the letters DC.
ACMAG is the ac magnitude and ACPHASE is the ac phase. The source is set to this value in the ac analysis. If
ACMAG is omitted following the keyword AC, a value of unity is assumed. If ACPHASE is omitted, a value of zero is
assumed. If the source is not an ac small-signal input, the keyword AC and the ac values are omitted.
Any independent source can be assigned a time-dependent value for transient analysis. If a source is assigned a timedependent value, the time-zero value is used for dc analysis. There are five independent source functions: pulse,
exponential, sinusoidal, piece-wise linear, and single-frequency FM. If parameters other than source values are omitted
or set to zero, the default values shown will be assumed. (TSTEP is the printing increment and TSTOP is the final time
(see the .TRAN line for explanation)).
Pulse
PULSE(V1 V2 TD TR TF PW PER)
Minimum level supported: 1
Examples:
VIN 3 0 PULSE(-1 1 2NS 2NS 2NS 50NS 100NS)
Parameters
Default values
V1 (initial value)
V2 (pulsed value)
TD (delay time)
0.0
TR (rise time)
TSTEP
units
Volts or Amps
Volts or Amps
seconds
seconds
TF (fall time)
TSTEP
seconds
PW (pulse width) TSTOP
seconds
PER(period)
TSTOP
seconds
A single pulse so specified is described by the following table:
time
Value
0
V1
TD
V1
TD+TR
V2
TD+TR+PW
V2
TD+TR+PW+ V1
TF
TSTOP
V1
Intermediate points are determined by linear interpolation.
Sinusoidal
SIN(VO VA FREQ TD THETA)
Minimum level supported: 1
Examples:
VIN 3 0 SIN(0 1 100MEG 1NS 1E10)
Parameters
default value
units
VO (offset)
Volts or Amps
VA(amplitude)
Volts or Amps
FREQ (frequency)
1/TSTOP
Hz
TD (delay)
0.0
seconds
THETA (damping factor)
0.0
1/seconds
The shape of the waveform is described by the following table:
time
Value
0 to TD
VO
TD to TSTOP
VO + VA*exp(-(time-TD)*THETA)*sine(twopi*FREQ*(time+TD))
Exponential EXP(V1 V2 TD1 TAU1 TD2 TAU2)
Minimum level supported: 1
Examples:
VIN 3 0 EXP(-4 -1 2NS 30NS 60NS 40NS)12
Parameters
default values
units
V1 (initial value)
Volts or Amps
V2 (pulsed value)
Volts or Amps
TD1 (rise delay time)
0.0
seconds
TAU1 (rise time constant)
TSTEP
seconds
TD2 (fall delay time)
TD1+TSTEP
seconds
TAU2 (fall time constant)
TSTEP
seconds
The shape of the waveform is described by the following table:
Time
Value
0 to TD1
V1
TD1 to TD2
V1+(V2-V1)*(1-exp(-(time-TD1)/TAU1))
TD2 to TSTOP V1+(V2-V1)*(1-exp(-(time-TD1)/TAU1))+(V1-V2)*(1-exp(-(time-TD2)/TAU2))
Single-Frequency FM SFFM(VO VA FC MDI FS)
Minimum level supported: 1
Examples:
V1 12 0 SFFM(0 1M 20K 5 1K)
parameters
VO (offset)
VA (amplitude)
FC (carrier frequency)
MDI (modulation index)
FS (signal frequency)
default values
1/TSTOP
units
Volts or Amps
Volts or Amps
Hz
1/TSTOP
Hz
The shape of the waveform is described by the following equation:
value = VO + VA*sine((twopi*FC*time) + MDI*sine(twopi*FS*time))
SEMICONDUCTOR DEVICES
The elements that have been described to this point typically require only a few parameter values to specify completely
the electrical characteristics of the element. However, the models for the four semiconductor devices that are included
in the SPECI-SPICE program require many parameter values. Moreover, many devices in a circuit often are defined by
the same set of device model parameters. For these reasons, a set of device model parameters is defined on a separate
.MODEL line and assigned a unique model name. The device element lines in SPECI-SPICE then reference the model
name. This scheme alleviates the need to specify all of the model parameters on each device element line.
Each device element line contains the device name, the nodes to which the device is connected, and the dev ice model
name
Junction Diodes
Minimum level supported: 2
General form:
DXXXXXXX N+ N- MNAME
Examples:
DBRIDGE 2 10 DIODE1
DCLMP 3 7 DMOD
N+ and N- are the positive and negative nodes, respectively. MNAME is the model name,
point.
Bipolar Junction Transistors (BJT’s)
Minimum level supported: 2
General form:
QXXXXXXX NC NB NE MNAME
Examples:
Q23 10 24 13 QMOD
Q50A 11 26 4 20 MOD1
NC, NB, and NE are the collector, base, and emitter nodes, respectively. MNAME is the model name,-
Junction Field-Effect Transistors (JFET’s)
Minimum level supported: 2
General form:
JXXXXXXX ND NG NS MNAME
Examples:
J1 7 2 3 JM1
ND, NG, and NS are the drain, gate, and source nodes, respectively.
MOSFET’s
Minimum level supported: 2
General form:
MXXXXXXX ND NG NS NB MNAME
Examples:
M1 24 2 0 20 TYPE1
M31 2 17 6 10 MODM
ND, NG, NS, and NB are the drain, gate, source, and bulk (substrate) nodes, respectively. MNAME is the model name.
.MODEL Line
Minimum level supported: 2
General form:
.MODEL MNAME TYPE(PNAME1=PVAL1 PNAME2=PVAL2 ... )
Examples:
.MODEL MOD1 NPN BF=50 IS=1E-13 VBF=50
The .MODEL line specifies a set of model parameters that will be used by one or more devices. MNAME is the model
name, and type is one of the following seven types:
NPN
NPN BJT model
PNP
PNP BJT model
D
Diode model
NJF
N-channel JFET model
PJF
P-channel JFET model
NMOS
N-channel MOSFET model16
PMOS
P-channel MOSFET model
Parameter values are defined by appending the parameter name, as given below for each model type, followed by an
equal sign and the parameter value. Model parameters that are not given a value are assigned the default values given
below for each model type.
Diode Model
Minimum level supported: 2
The dc characteristics of the diode are determined by the parameters IS, ISR,
modeled by a transit time, TT.
name
Parameter
units
default
1
IS
saturation current
A
1E-14
2
ISR
reverse saturation current
A
0
3
N
emission coefficient
1
1
4
NR
reverse emission coefficient
1
2
5
TT
transit-time
s
0
N and NR. Charge storage effects are
example
1.0E-14
1.0E-14
1.5
2.0
1NS
BJT Models (both NPN and PNP)
Minimum level supported: 2
The bipolar junction transistor model in SPECI-SPICE is an adaptation of full Ebers-Moll model. The parameter names
used in the modified Ebers-Moll model have been chosen to be more easily understood by the program user, and to
reflect better both physical and circuit design thinking.
The dc model is defined by the parameters IS, BF, NF, determine the forward current gain characteristics, IS, BR, NR
determine the reverse current gain characteristics. The BJT parameters used in the Ebers-Moll model are listed below
name Parameter
units
default
example
1
IS
transport saturation current
A
1.0E-15
1.0E-15
3
NF
forward current emission coefficient
1
1.0
1.0
4
NR
reverse current emission coefficient
1
1.0
1.0
5
BF
ideal maximum forward beta
1
100.0
80.0
6
BR
ideal maximum reverse beta
1
1.0
0.1
JFET Models (both N and P Channel)
Minimum level supported: 2
The JFET model is derived from the FET model of Shichman and Hodges. The dc characteristics are defined by the
parameters VTO and BETA, which determine the variation of drain current with gate voltage, LAMBDA, which
determines the output conductance, and IS, the saturation current of the two gate junctions. Parasitic diodes are modeled
using IS, ISR, N and NR parameters.
1
2
3
4
7
8
9
name
IS
ISR
N
NR
VTO
BETA
LAMBDA
Parameter
gate junction saturation current
gate junction reverse saturation current
emission coefficient
reverse emission coefficient
Threshold voltage
Transconductance parameter
channel length modulation parameter
units
A
A
1
1
V
A/V2
1/V
default
1E-14
0
1
2
-2
1E-4
0
example
1E-14
0
1.5
2
-2.0
1E-3
1E-4
MOSFET Models (both N and P channel)
Minimum level supported: 2
SPECI-SPICE provides MOSFET device based on Harold Shichman and David A. Hodges model . The dc
characteristics of the MOSFET are defined by the device parameters VTO, KP, LAMBDA, PHI and GAMMA.
VTO is positive (negative) for enhancement mode and negative (positive) for depletion mode N-channel (P-channel)
devices.
name
Parameter
units
default
example
1
IS
bulk junction saturation current
A
1E-14
2
N
bulk junction emission coefficient
1
1
3
L
Channel length
m
1E-14
4
LD
lateral diffusion length
m
0
5
KP
Transconductance coefficient
A/V2
2E-5
6
7
8
9
10
W
LAMBDA
GAMMA
VTO
PHI
Channel width
Channel-length modulation parameter
bulk threshold
zero-bias threshold voltage
surface potential
m
1/V
√V
V
V
1E-4
0
0
0
6E-1
SUBCIRCUITS
Minimum level supported: 2
A subcircuit that consists of SPECI-SPICE elements can be defined and referenced in a fashion similar to
device models. The subcircuit is defined in the input deck by a grouping of element cards; the program then
automatically inserts the group of elements wherever the subcircuit is referenced. There is no limit on the size or
complexity of subcircuits, and subcircuits may contain other subcircuits.
.SUBCKT Card
Minimum level supported: 2
General form:
.SUBCKT subnam N1 <N2 N3 ...>
Examples:
.SUBCKT OPAMP 1 2 3 4
A circuit definition is begun with a .SUBCKT line. SUBNAM is the subcircuit name, and N1, N2, ... are the external
nodes, which cannot be zero. The group of element cards which immediately follow the .SUBCKT card define the
subcircuit. The last line in a subcircuit definition is the .ENDS line (see below). Control lines may not appear within a
subcircuit. Element nodes not included on the .SUBCKT line are assigned as addition of first available node and node
number, with the exception of 0 (ground) which is always global.
.ENDS Card
Minimum level supported: 2
General form:
.ENDS <SUBNAM>
Examples:
.ENDS OPAMP
This card must be the last one for any subcircuit definition. The subcircuit name, if included, indicates which subcircuit
definition is being terminated; if omitted, all subcircuits being defined are terminated. The name is needed
only when nested subcircuit definitions are being made.
Subcircuit Calls
Minimum level supported: 2
General form:
XYYYYYYY N1 <N2 N3 ...> SUBNAM
Examples:
X1 17 3 1 4 MULTI2
Subcircuits are used in SPECI-SPICE by specifying pseudo-elements beginning with the letter X, followed by the
circuit nodes to be used in expanding the subcircuit
.TEMP Line
Minimum level supported: 2
General form:
.TEMP T1
Examples:
.TEMP -55.0
This line specifies the temperature at which the circuit is to be simulated.
Temperatures less than -223.0 deg C are ignored.
.OP Line
Minimum level supported: 0
General form:
.OP
T1 is temperature, in degrees C.
The inclusion of this line in an circuit description will force SPECI-SPICE to determine the dc operating point of the
circuit with inductors shorted and capacitors opened. Note: a dc analysis is automatically performed prior to a transient
analysis to determine the transient initial conditions, and prior to an ac small-signal analysis to determine the linearized,
small-signal models for nonlinear devices. SPECI-SPICE performs a dc operating point analysis if no other analyses are
requested.
.DC Line
Minimum level supported: 1
General form:
.DC SRCNAM VSTART VSTOP VINCR
Examples:
.DC VIN 0.25 5.0 0.25
.DC VDS 0 10 .5
This line defines the dc transfer curve source and sweep limits. SRCNAM is the name of an independent voltage or
current source. VSTART, VSTOP, and VINCR are the starting, final, and incrementing values respectively.
The first example will cause the value of the voltage source VIN to be swept from 0.25 Volts to 5.0 Volts in increments
of 0.25 Volts.
.AC Line
Minimum level supported: 1
General form:
.AC DEC ND FSTART FSTOP
.AC OCT NO FSTART FSTOP
.AC LIN NP FSTART FSTOP
Examples:
.AC DEC 10 1 10K
.AC DEC 10 1K 100MEG
.AC LIN 100 1 100HZ
DEC stands for decade variation, and ND is the number of points per decade. OCT stands for octave variation, and NO
is the number of points per octave. LIN stands for linear variation, and NP is the number of points. FSTART is the
starting frequency, and FSTOP is the final frequency. If this line is included in the circuit description, SPECI-SPICE
will perform an ac analysis of the circuit over the specified frequency range. Note that in order for this analysis to be
meaningful, at least one independent source must have been specified with an ac value.
.TRAN Line
Minimum level supported: 1
General form:
.TRAN TSTEP TSTOP
Examples:
.TRAN 1NS 100NS
TSTEP is the printing or plotting increment for line-printer output TSTOP is the final time. The transient analysis
always begins at time zero. The stepsize that SPECI-SPICE will use either TSTEP or (TSTOP-TSTART)/50.0,
whichever is smaller.
.PRINT Lines
Minimum level supported: 1
General form:
.PRINT PRTYPE OV1 <OV2 ... OV8>
Examples:
.PRINT TRAN V(4) I(VIN)
.PRINT AC VR(7) VP(8)
.PRINT DC V(2) I(VSRC)
This line defines the contents of a tabular listing of one to eight output variables. PRTYPE is the type of the analysis
(DC, AC, TRAN) for which the specified outputs are desired. The form for voltage or
current output variables is as follows:
V(N1) specifies the voltage of node N1
For the ac analysis, two additional outputs can be accessed by replacing the letter V by:
VM magnitude
VP phase
I(VXXXXXXX) specifies the current flowing in the independent voltage source named VXXXXXXX. Positive
current flows from the positive node, through the source, to the negative node. For the ac analysis, the
corresponding replacements for the letter I may be made in the same way as described for voltage outputs.
If .PRINT statement is omitted, all the voltages and voltage source currents will be printed.
.CLEAR
Minimum level supported: 0
General form:
.CLEAR DEV
Deletes the element and all elements entered after it
Example
.CLEAR C3
.LIST Lines
Minimum level supported: 2
General form:
.LIST
Displays the current circuit
EXAMPLES
Differential pair
Minimum level supported: 2
The following example determines the ac small-signal response is computed over the frequency range 1Hz to
100MEGHz.
SIMPLE DIFFERENTIAL PAIR
VCC 7 0 12
VEE 8 0 -12
VIN 1 0 AC 1
RS1 1 2 1K
RS2 6 0 1K
.MODEL MOD1 NPN (BF=50 VAF=50 IS=1.E-12)
Q1 3 2 4 MOD1
Q2 5 6 4 MOD1
RC1 7 3 10K
RC2 7 5 10K
RE 4 8 10K
.PRINT AC VM(5) VP(5)
.AC DEC 10 1 100MEG
.END
RTL inverter
Minimum level supported: 2
The following deck determines transient pulse response of a simple RTL inverter. The input is a pulse from 0 to 5
Volts with delay, rise, and fall times of 2ns and a pulse width of 30ns. The transient interval is 0 to 100ns, with printing
to be done every nanosecond.
SIMPLE RTL INVERTER
VCC 4 0 5
VIN 1 0 PULSE 0 5 2NS 2NS 2NS 30NS
RB 1 2 10K
.MODEL QQ NPN BF 20 RB 100 TF .1NS CJC 2PF
Q1 3 2 0 QQ
RC 3 4 1K
.PRINT TRAN V(3)
.TRAN 1NS 100NS
.END
DIFFERENCES FROM SPICE 2 AND SPICE 3
SPICE 2 was developed for mainframes, computers with far more memory compared with contemporary
microcomputers. So, SPECI-SPICE has some restrictions to fit in memory.
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
♦
Nodes are numerical only, numbered between 0 and 255. Maximal used node number influes to matrix size, so
avoid unused nodes. Unused nodes will be connected to the gruond with 1 ohm resistance.
The following SPICE 2 commands does not exist in SPECI-SPICE .WIDTH, .OPTIONS, .NODESET, .IC, .TF,
.SENS, .DISTO, .NOISE, .FOUR and .PLOT.
All SPICE 2 devices exist in SPECI-SPICE. However there are some restrictions in advanced options:
Resistors have value only, not temperature coeffitients.
Capacitors and resistors have linear values only, not transient initial conditions, and nonlinear polynomials.
Coupled inductors need to be specified after corresponding inductors.
Transmission lines have only one way to define delay time. In transitional analysis, delay time is a time step and
and all transmission lines need to have same delay time.
Dependant sources are linear only. Current controlled sources need to be defined after their related voltage sources.
Indenpendant voltage and current can not be AC and DC or TRAN at the same time. PWL source type is omited.
There are no parameters after the model name in semconductor devices.
.MODEL of semiconductor must be defined before used
Models of diodes, FETs, MOSFETs and bipolar transistors are simplified. There are no parasitic capacitances and
internal resistances. However, nonlinear behaviour of V/I characteristics is calculated correctly.
Subcircuits can not be nested. Internal subcircuit nodes are not fully local. Subcircuit must be defined before used.
.OP prints less informations
.PRINT must be given before .DC. .TRAN, .AC or .OP, and can contain single node voltages and currents through
voltage sources
.TEMP has only one temperature, and temperature influes only PN thermal voltage
.DC varies only one source (SPICE2 allows optional two sources)
.TRAN has only three parameters. One advantage over SPICE2 is that SPECI-SPICE prints voltages at exact times,
while SPICE2 prints at interpolated approximate times.
SPECI-SPICE is more interactive than SPICE2 (but less than SPICE 3). It prints the results during the analysis and
has commands .LIST and .CLEAR to list and edit circuits
Command .END on SPICE2 starts analysis and print the results. Command .END on SPECI-SPICE exits the
program.
FUTURE PLANS
Further reduce memory footprint
.PLOT, .WIDTH and .IC commands
More platforms: 6502, MC 68000 and MC 6809 computers