Circuit Maker User Manual
Circuit Maker User Manual
Circuit Maker User Manual
for Windows
User Manual
CircuitMaker 6
CircuitMaker PRO
Revision C
Information in this document is subject to change without notice and does not represent a
commitment on the part of MicroCode Engineering. The software described in this document is
furnished under a license agreement or nondisclosure agreement. The software may be used or
copied only in accordance with the terms of the agreement. It is against the law to copy the
software on any medium except as specifically allowed in the license or nondisclosure agreement.
The purchaser may make one copy of the software for backup purposes. No part of this manual
may be reproduced or transmitted in any form or by any means, electronic or mechanical,
including photocopying, recording, or information storage and retrieval systems, for any
purpose other than the purchaser’s personal use, without the express written permission of
MicroCode Engineering.
ii
MicroCode Engineering—Software License Agreement
• You are authorized to use CircuitMaker on only one (1) computer at a time. You must obtain
additional license agreements before using the software on additional computers or on a
computer network.
• You may make a backup copy of CircuitMaker for the sole purpose of protecting your
investment from loss.
• You may transfer your right to use CircuitMaker to another party as long as the entire
software package, including the manual and a backup copy of CircuitMaker, are transferred
to the receiving party. However, before transferring this program, the receiving party must
agree to be bound by the terms and conditions of this agreement. If you transfer the
program, you must remove CircuitMaker from the computer on which it is installed and
destroy the backup copy at the time of transfer. Your licence terminates at the time of
transfer. In no case is the right granted to sell, distribute, trade or give away copies of
CircuitMaker, except as stated in this paragraph.
• You may not de-compile, disassemble, reverse engineer, or in any way modify the program
code without the prior written consent of MicroCode Engineering.
• This agreement is effective until terminated. You may terminate this agreement at any time by
destroying the program, documentation, and any the backup copy, or by returning the same
to MicroCode Engineering. The licence will terminate automatically if the terms of this
agreement are violated.
The program code is provided on an “as is” basis without warranty of any kind whatsoever,
either expressed or implied. MicroCode Engineering does not warrant the software to be error
free, nor does it warrant it to meet your specific requirements.
Disclaimer
CircuitMaker is a simulation program that, in most cases, produces results very similar to a real
life circuit. It is, however, only a simulation program and is not expected to provide exactly the
same results as a real life circuit in every instance. While MicroCode Engineering, Inc. has tried
to provide a product which is suitable to a wide variety of applications, we realize that it cannot
produce satisfactory results in all applications. CircuitMaker allows you to minimize the amount
of breadboarding required to produce a functional circuit, but it must not be used as a replace-
ment for proper breadboarding.
MicroCode Engineering, Inc. reserves the right to revise the program and/or manual from time to
time without obligation of MicroCode Engineering, Inc. to notify any person or organization of
such change or revision. MicroCode Engineering, Inc. makes no representations or warranties
with respect to the program “CircuitMaker” or the manual, either express or implied, including
implied warranty of merchantability or implied fitness for a particular purpose. No liability of any
form shall be assumed by MicroCode Engineering, Inc. or its representatives, nor shall direct,
consequential, or other damages be assumed by MicroCode Engineering, Inc. even if MicroCode
Engineering, Inc. has been advised of such damages. This program is supplied “As Is”. Any
user of this software uses it at their own risk. In any case, the liability of MicroCode Engineering,
Inc. is limited to the price the user actually paid.
License Agreement iv
U.S. Government Restricted Provisions
If this software is acquired by or in behalf of a unit or agency of the United States Government
these provisions apply. This Software:
(a) Was developed at private expense, and no part of it was developed with government funds,
(b) Is a trade secret of MicroCode Engineering, Inc. for all purposes of the Freedom of Informa-
tion Act,
(c) Is “commercial computer software” subject to limited utilization as provided in the contract
between the vendor and the governmental entity, and
(d) In all respects is proprietary data belonging solely to MicroCode Engineering, Inc.
For units of the Department of Defense (DOD), this software is sold only with “Restricted
Rights” as that term is defined in the DOD Supplement to the Federal Acquisition Regulations,
52.227-7013 (c) (1) (ii) and:
Use, duplication or disclosure is subject to restrictions as set forth in subdivision (c) (1) (ii) of
the Rights in Technical Data and Computer Software clause at 52.227-7013. Manufacturer:
MicroCode Engineering, Inc., 927 West Center Street, Orem, Utah 84057.
If this software was acquired under a GSA Schedule, the U.S. Government has agreed to refrain
from changing or removing any insignia or lettering from the Software or the accompanying
written materials that are provided or from producing copies of the manuals or disks (except one
copy for backup purposes) and:
(e) Title to and ownership of this Software and documentation and any reproductions thereof
shall remain with MicroCode Engineering, Inc.,
(f) Use of this Software and documentation shall be limited to the facility for which it is acquired,
and
(g) If use of the Software is discontinued by the installation specified in the purchase/delivery
order and the U.S. Government desires to use it at another location, it may do so by giving prior
written notice to MicroCode Engineering, Inc., specifying the type of computer and new location
site. U.S. Governmental personnel using this Software, other than under a DOD contract or GSA
Schedule, are hereby on notice that use of this Software is subject to restrictions which are the
same or similar to those specified above.
License Agreement v
License Agreement vi
Table of Contents
Chapter 1: Welcome to CircuitMaker
Introduction............................................................................................1-1
Required User Background .................................................................................. 1-1
Required Hardware/Software ................................................................................ 1-1
Installing CircuitMaker ...........................................................................1-2
Installing the Hardware (HW) Keys ...................................................................... 1-2
Updating from a Previous Version ......................................................................... 1-3
Multi-User (Project) Installations .......................................................................... 1-6
Technical Support ..................................................................................1-8
About the Documentation ......................................................................1-9
Manual Conventions ............................................................................................. 1-9
Using Online Help .............................................................................................. 1-10
Watching the Online Tutorial .............................................................................. 1-11
Where to Go from Here ...................................................................................... 1-11
Contents vii
CircuitMaker Preferences .....................................................................2-8
Changing Preferences .......................................................................................... 2-8
Restoring Factory Defaults .................................................................................. 2-8
Basic .CKT File Management ...............................................................2-9
Starting, Saving & Closing a .CKT File ................................................................. 2-9
Opening and Reopening a .CKT File .................................................................. 2-10
Reverting to Previously Saved File ..................................................................... 2-10
Chapter 3: Tutorials
Tutorial 1: Drawing a Schematic ............................................................3-1
Using the Device Selection Dialog Box ................................................................ 3-1
Selecting a Transistor .......................................................................................... 3-3
Selecting the Resistors ........................................................................................ 3-3
Selecting +V and Ground Devices ....................................................................... 3-4
Changing Resistor/Transistor Label-Values .......................................................... 3-5
Wiring the Circuit Together ................................................................................... 3-5
Tutorial 2: Simulating a Digital Circuit ....................................................3-6
Tutorial 3: Analog Analysis ....................................................................3-7
Simple Circuit Analysis ........................................................................................ 3-8
Creating a Simple RC Circuit ............................................................................. 3-10
Simulating a Simple AC Circuit .......................................................................... 3-12
Tutorial 4: More Circuit Simulation .......................................................3-13
Setting Up the Analysis ..................................................................................... 3-16
Running the Simulation ...................................................................................... 3-17
Mixed-Mode Simulation Example ....................................................................... 3-20
Contents viii
Rotate 90 Button ................................................................................................. 4-3
Mirror Button ........................................................................................................ 4-4
Grid, Title Block and Borders .................................................................4-4
Grid ..................................................................................................................... 4-4
Title Block ........................................................................................................... 4-5
Borders ................................................................................................................ 4-6
Listing and Selecting Devices ...............................................................4-7
The Graphical Parts Browser ............................................................................... 4-7
HotKeys .............................................................................................................. 4-9
Searching for Devices ........................................................................................ 4-10
Placing Devices ..................................................................................4-12
Selecting Devices .............................................................................................. 4-12
Nudging Devices ................................................................................................ 4-13
Wiring the Circuit.................................................................................4-14
Auto Routing ...................................................................................................... 4-14
Manual Routing .................................................................................................. 4-15
Quick Connect Wiring ........................................................................................ 4-16
Extending, Joining, and Cutting Wires ............................................................... 4-16
Moving Devices with Connected Wires ............................................................... 4-17
Working with Bus Wires ......................................................................4-17
Working with Bus Connection Wires .................................................................. 4-18
"Wiring" with Connectors .....................................................................4-19
Input and Output Connectors ............................................................................. 4-19
Terminal Device Power Connections ...................................................4-20
Labeling the Circuit .............................................................................4-21
Using the Text Tool to Label ............................................................................... 4-21
Changing Device Labels ..................................................................................... 4-21
Editing Devices ...................................................................................4-22
Device ................................................................................................................ 4-22
Label-Value ........................................................................................................ 4-23
Designation ........................................................................................................ 4-23
Description ........................................................................................................ 4-24
Package ............................................................................................................ 4-24
Auto Designation Prefix ..................................................................................... 4-24
Spice Prefix Character(s) ................................................................................... 4-24
Analog ............................................................................................................... 4-25
Contents ix
Digital ................................................................................................................ 4-25
Parameters ........................................................................................................ 4-26
Bus Data ........................................................................................................... 4-26
Spice Data ......................................................................................................... 4-28
Example of Using SPICE Data ........................................................................... 4-30
Exclude from PCB ............................................................................................. 4-31
Exclude from Bill of Materials ............................................................................. 4-31
Pins ................................................................................................................... 4-31
Faults ................................................................................................................ 4-33
Printing and Exporting Circuits ............................................................4-33
Printing Circuits ................................................................................................. 4-33
Exporting Circuits as Graphics .......................................................................... 4-34
Contents x
Chapter 6: Analog/Mixed-Signal Simulation
CircuitMaker's Simulation Modes ..........................................................6-1
Devices and Simulation ........................................................................6-2
Overview of Analog Simulation ..............................................................6-2
Before You Use the Analog Simulator .................................................................. 6-2
Setting Up Analog Analysis ................................................................................. 6-3
Selecting Analog Simulation Mode ...................................................................... 6-3
Analog Simulation Tools ........................................................................6-3
Digital/Analog Button ........................................................................................... 6-4
Reset Button ....................................................................................................... 6-4
Step Button ......................................................................................................... 6-4
Run/Stop Button .................................................................................................. 6-4
Probe Tool ........................................................................................................... 6-5
Trace Button ........................................................................................................ 6-6
Waveforms Button ............................................................................................... 6-6
Vcc and Ground ....................................................................................6-6
Working with Test Points .......................................................................6-7
Test Point Types .................................................................................................. 6-8
Default Test Points ............................................................................................... 6-8
Exclusive Test Points .......................................................................................... 6-8
Run-Time Test Points .......................................................................................... 6-9
Running the Simulation ........................................................................ 6-11
Using the Analysis Windows................................................................ 6-11
Displaying Waveforms ....................................................................................... 6-12
Scaling Waveforms ............................................................................................ 6-13
Offsetting Waveforms ......................................................................................... 6-15
Using Measurement Cursors .............................................................................. 6-15
Setup Button ..................................................................................................... 6-15
Reset Button ..................................................................................................... 6-17
Setting Up Analog Analyses ................................................................6-18
Always Set Defaults .......................................................................................... 6-18
DC Analysis (DC Sweep) ................................................................................... 6-19
AC Analysis (AC Sweep) ................................................................................... 6-20
DC Operating Point Analysis ............................................................................. 6-22
Transient Analysis ............................................................................................. 6-21
Contents xi
Parameter Sweep Analysis ................................................................................ 6-26
Fourier Analysis ................................................................................................. 6-29
Transfer Function Analysis ................................................................................ 6-30
Noise Analysis .................................................................................................. 6-32
Temperature Sweep Analysis ............................................................................. 6-35
Monte Carlo Analysis ........................................................................................ 6-36
Impedance Plot Analysis ................................................................................... 6-41
Using XSpice for Windows ..................................................................6-43
.NET and .RAW File Output ............................................................................... 6-45
Warning Messages vs. Error Messages ............................................................. 6-46
Setting Up Analog/SPICE Variables ....................................................6-47
ASCIIOUTPUT Check Box ................................................................................. 6-47
DVCC, DVDD and DGND ................................................................................... 6-48
Integration Method ............................................................................................. 6-48
Analysis Data Saved in .RAW File ..................................................................... 6-48
Analog/Mixed Signal Instruments .........................................................6-49
Multimeter ......................................................................................................... 6-49
Multifunction Signal Generator ........................................................................... 6-50
Accessing the Signal Generator Editor .................................................................. 6-51
Editing Sine Wave Data .......................................................................................... 6-52
Editing AM Signal Data ........................................................................................... 6-54
Editing FM Signal Data ........................................................................................... 6-55
Editing Exponential Data ........................................................................................ 6-56
Editing Pulse Data .................................................................................................. 6-57
Editing Piece-Wise Data ......................................................................................... 6-58
Data Sequencer ................................................................................................. 6-59
Contents xii
Exporting Circuits as Graphics .............................................................. 7-8
Exporting a SPICE Netlist .....................................................................7-9
Exporting a SPICE Subcircuit................................................................7-9
Exporting a PCB Netlist ......................................................................7-10
What is a Net? .................................................................................................. 7-10
What is a Netlist? .............................................................................................. 7-10
PCB Netlist Requirements ................................................................................. 7-10
Exporting to Popular PCB Netlist Formats ......................................................... 7-11
TraxMaker PCB Netlist Format .......................................................................... 7-12
CircuitMaker to TraxMaker ..................................................................7-13
Run TraxMaker and Load Netlist ........................................................................ 7-14
Create Keep-Out Layer ...................................................................................... 7-14
Board Size in Mils ............................................................................................. 7-14
Automatically Place Components ...................................................................... 7-14
Contents xiii
Chapter 9: File Menu
New ...................................................................................................... 9-1
Open ..................................................................................................... 9-1
Reopen .................................................................................................9-1
Merge ...................................................................................................9-1
Close ....................................................................................................9-2
Save .....................................................................................................9-2
Save As ................................................................................................ 9-2
Revert ...................................................................................................9-2
Import > Simulate SPICE Netlist ............................................................9-2
Export ...................................................................................................9-3
Bill of Materials .....................................................................................9-3
Print Setup ............................................................................................9-3
Fit to Page ........................................................................................................... 9-4
Print Circuit ........................................................................................... 9-4
Print Waveforms ....................................................................................9-4
Preferences .......................................................................................... 9-4
Exit .....................................................................................................9-10
Contents xiv
Set Prop Delays ..................................................................................10-4
Set Designations ................................................................................10-5
Edit > Edit Items ..................................................................................10-6
Edit Bus Connection .......................................................................................... 10-6
Edit Bus Wire Number ....................................................................................... 10-7
Edit Device Data ................................................................................................ 10-7
Edit Digital Params ............................................................................................ 10-7
Edit Run-Time Test Point ................................................................................... 10-7
Edit/Select SPICE Model ................................................................................... 10-7
Edit PROM/RAM ............................................................................................... 10-8
Edit Pulser ......................................................................................................... 10-8
Edit Multimeter .................................................................................................. 10-9
Edit Input/Output ............................................................................................... 10-9
Edit Data Sequencer .......................................................................................... 10-9
Edit Signal Generator ..................................................................................... 10-10
Edit Scope/Probe Name ................................................................................. 10-10
Group Items ......................................................................................10-10
Font .................................................................................................. 10-11
Contents xv
Chapter 12: Options Menu
Auto Repeat ........................................................................................12-1
Auto Refresh .......................................................................................12-1
Device Designations ...........................................................................12-1
Arrow/Wire ..........................................................................................12-2
Cursor Tools ........................................................................................12-2
Show Pin Dots ....................................................................................12-2
Show Bus Labels ................................................................................12-3
Show Page Breaks .............................................................................12-3
Moveable Page Breaks ...................................................................................... 12-3
Show Node Numbers ..........................................................................12-3
Show Prop Delays ..............................................................................12-3
Device Display Data ...........................................................................12-4
Circuit Display Data ............................................................................12-4
Grid ....................................................................................................12-5
Title Block ...........................................................................................12-5
Border ................................................................................................12-7
Contents xvi
Chapter 14: Simulation Menu
Digital/Analog Mode ...........................................................................14-1
Analyses Setup ...................................................................................14-1
Digital Options ....................................................................................14-1
Pin Connections ..................................................................................14-1
Reset ..................................................................................................14-1
Step .................................................................................................... 14-2
Run ..................................................................................................... 14-2
Trace ..................................................................................................14-2
Display Waveforms .............................................................................14-2
Scope Probe ......................................................................................14-2
Display Variable Names ......................................................................14-2
Contents xvii
15-22
Lossless Transmission Lines ..........................................................................
15-23
Lossy Transmission Lines ..............................................................................
15-24
Uniform Distributed RC Lines (Lossy) .............................................................
15-24
Junction Diodes ..............................................................................................
15-25
Bipolar Junction Transistors (BJTs) .................................................................
15-25
Junction Field-Effect Transistors (JFETs) ........................................................
15-26
MOSFETs .......................................................................................................
15-27
MESFETs (GaAsFETs) ...................................................................................
15-28
SimCodeTM Devices ........................................................................................
15-28
.NODESET Statement ....................................................................................
15-28
.IC Statement .................................................................................................
Suggested Reading ..........................................................................15-30
Contents xviii
Creating New SPICE Models with Parameter Passing ......................16-37
General Form (Generic Model) ........................................................................ 16-37
General Form (Alias) ....................................................................................... 16-37
Editing Digital Model Parameters .....................................................16-39
Contents xix
LEVEL ............................................................................................................ 17-31
LOAD ............................................................................................................. 17-32
MATH FUNCTIONS ......................................................................................... 17-34
MESSAGE ..................................................................................................... 17-35
MIN_TYP_MAX ............................................................................................... 17-36
NO_CHANGE ................................................................................................. 17-39
NUMBER ........................................................................................................ 17-39
OPERATORS ................................................................................................. 17-40
OUTPUTS ....................................................................................................... 17-41
PARAM_SET .................................................................................................. 17-42
PROMPT ........................................................................................................ 17-43
PWL_TABLE .................................................................................................. 17-45
PWR_GND_PINS ........................................................................................... 17-46
READ_DATA ................................................................................................... 17-47
REALS ........................................................................................................... 17-48
RECOVER ...................................................................................................... 17-50
RETURN ......................................................................................................... 17-51
SELECT_VALUE ............................................................................................ 17-51
SETUP_HOLD ................................................................................................ 17-52
STATE ............................................................................................................ 17-53
STATE_BIT ..................................................................................................... 17-55
STEP_OFF ..................................................................................................... 17-56
STEP_ON ....................................................................................................... 17-56
STRENGTH .................................................................................................... 17-57
SUPPLY_MIN_MAX ........................................................................................ 17-58
TABLE ............................................................................................................ 17-59
VALUE ........................................................................................................... 17-60
VIL_VIH_PERCENT ........................................................................................ 17-61
VIL_VIH_VALUE ............................................................................................. 17-62
VOL_VOH_MIN .............................................................................................. 17-63
WHILE ... DO ................................................................................................. 17-64
WIDTH ............................................................................................................ 17-65
WIDTH_TIME .................................................................................................. 17-66
Index
Contents xx
CHAPTER 1
Welcome to CircuitMaker
Introduction
Welcome to CircuitMaker, the most powerful, easy-to-use
schematic capture and simulation tool in its class! Thank
you for joining thousands of users who have discovered
that CircuitMaker provides the features of "high-end"
design software at a fraction of the cost.
Using CircuitMaker's advanced schematic capabilities, you
can design electronic circuits and output netlists for
TraxMaker and other PCB design tools and autorouters. You
can also perform fast, accurate simulations of digital, analog
and mixed analog/digital circuits using CircuitMaker's
Berkeley SPICE3f5/XSpice-based simulator.
Required Hardware/Software
• IBM® compatible 486 or higher PC with a hard disk drive
and a 3½” high density disk drive.
Installing CircuitMaker
1 Start your Windows operating system.
2 If you are installing from the CircuitMaker CD, insert it
into the CD drive and skip to Step 5.
OR
If you are installing with floppy disks, insert Disk 1 into
drive A: and continue with Step 3.
3 If using Windows 95 or NT4, choose Start > Run from
the Taskbar.
OR
If using Windows 3.1x, choose File > Run from Program
Manager.
4 Type a:setup and press Enter.
5 Follow the installation instructions.
Warning: If you are reinstalling or upgrading
CircuitMaker be sure to install in a different directory to
avoid writing over some of your existing work.
If you are installing under Windows 3.1x, you will be
prompted to install the Win32s operating system
extensions.
6 Double-click the CircuitMaker icon to launch the
program.
7 If you are upgrading from an earlier version of
CircuitMaker, see the next section Updating from a
Previous Version.
Technical Support
MicroCode Engineering, Inc. is dedicated to producing only
the finest quality software and supporting customers after
the initial purchase. If you encounter problems while using
CircuitMaker or just need general help, contact us via
phone, FAX, electronic mail or US Mail and we’ll provide
prompt and courteous support.
Manual Conventions
The following conventions are used to identify information
needed to perform CircuitMaker tasks:
CircuitMaker PRO only Note that this manual contains information for both
CircuitMaker Version 6 and CircuitMaker PRO. Those
features described in this manual which are only available in
CircuitMaker PRO are highlighted by the banner at the left.
Step-by-step instructions for performing an operation are
generally numbered as in the following examples:
1 Choose File > Save.
This means “choose the File menu, then choose Save.”
Notes, Hints and Tips are
written in the margins for 2 Select the Arrow Tool on the Toolbar.
better visibility.
Topic Where to Go
CircuitMaker Basics Chapters 2, 3
Drawing and Editing Schematics Chapter 4
Simulation Chapters 5, 6
Exporting Files Chapter 7
Fault Simulation Chapter 8
CircuitMaker Menus Chapters 9–14
Advance SPICE Tips Chapter 15
Creating New Devices Chapter 16
SimCode Chapter 17
Getting Started
CircuitMaker Basics
This chapter gives you an overview of the CircuitMaker
workspace, conventions, preferences, shortcuts, and
HotKeys. It’s a great place to start if you need some
guidance before using CircuitMaker to draw, edit, test, and
simulate electronic circuits.
Starting CircuitMaker
If you have installed CircuitMaker on your hard disk, you’re
ready to run the program.
1 Open the Start menu.
2 Choose Programs > CircuitMaker 6 or CircuitMaker
PRO.
3 Choose the CircuitMaker program.
You can also create a shortcut for CircuitMaker and
have the icon display on your desktop all the time.
CircuitMaker Workspace
When you start CircuitMaker, the blank workspace appears.
This is where you place devices that represent real life
components such as resistors, transistors, power supplies,
etc. The CircuitMaker workspace also includes the Toolbar,
Menu Bar, and special windows for circuit simulation and
testing purposes.
After placing devices exactly where you want, you simply
wire them together. The wiring lines you draw form intelli-
gent links between devices, which then allow the circuit to
be simulated, tested, and analyzed using CircuitMaker's
powerful simulator. Figure 2.1 shows the CircuitMaker
workspace filled in with the Drawing Window and several
analysis windows.
Drawing Window
Analysis Windows
Connectivity
An important feature of CircuitMaker is the way electrical
connections between the elements in your design are
recognized.
The concept of connectivity is the key to using
CircuitMaker to draw and simulate electronic circuits. The
program stores connection information for simulation, and it
is also used for creating and exporting netlists into
TraxMaker or other pcb layout programs to create a working
printed circuit board (PCB).
Device designation
Device label-value
Wire
Device symbol
Pin dot
Ground
Figure 2.2. CircuitMaker’s straightforward approach
makes it easy to identify each part of a schematic drawing.
CircuitMaker Conventions
If you are experienced with Windows applications, you
already know how to start and quit CircuitMaker, select
menus using the mouse, save your work, and locate and
organize your documents. On the other hand, CircuitMaker
has special features that are not common to other Windows
applications. These options let CircuitMaker perform some
of the special tasks unique to circuit design.
CircuitMaker Files
CircuitMaker includes a number of special purpose files in
addition to the CircuitMaker application. The following table
lists the various types of files you will use by file extension.
.CKT Schematic (or Circuit) files
.DAT Data files (HotKeys; device library classifications)
.LIB Device library files
.SRP Script files
.MOD Model files
.SUB Subcircuit files
.RAW Simulation data files
Task Overview
Using CircuitMaker involves six basic procedures: 1)
placing devices (such as resistors, transistors, power
supplies, and grounds) in the workspace; 2) repositioning
devices; 3) editing devices with precise values and param-
eters; 4) deleting devices (if necessary); 5) wiring devices
together; 6) simulating and testing the circuit.
Shortcut Keys
Command key or “shortcut” keys let you select menu
Figure 2.4. Use HotKeys to commands directly. The following table lists the available
quickly select devices. You short cut keys in CircuitMaker.
can customize HotKeys to fit
your needs. Keystroke What it Does
Ctrl+N Starts a new CKT file.
Ctrl+O Lets you choose a file to open.
Ctrl+S Saves the current file.
Ctrl+P Prints/plots the current file.
Shift+Space Opens the Script Functions dialog
box.
Ctrl+Z Undo (reverse) an action.
Ctrl+X Cuts the currently selected item or
group of items to the Clipboard.
Ctrl+C Copies the currently selected item or
group of items to the Clipboard.
Ctrl+V Pastes the currently selected item or
group of items from the Clipboard.
Shift+Insert Moves the currently selected group
of items.
Ctrl+D Duplicates the currently selected item
or group of items.
Ctrl+F or End Refreshes the screen.
CircuitMaker Preferences
CircuitMaker stores many settings such as program and
circuit defaults. You specify preference settings using the
Preferences dialog box (choose File > Preferences) as
shown in Figure 2.5. You can use different Preference
settings or reload the factory defaults. See Chapter 9: File
Menu for more information.
Changing Preferences
1 Choose File > Preferences.
2 Make the desired changes then choose OK.
• Selecting a transistor
• Selecting resistors
Vcc
+15V
RB RC
220k 870
Q1
2N2222A
Resistor RC 4 Drag the resistor above and to the left of the transistor
and click the Left mouse button once.
This will be resistor RB. Don’t worry about the value
yet. Since you enabled the Repeat On feature, another
resistor will appear with the same orientation as the
previous one.
5 Place the next resistor directly above the transistor. This
will be resistor RC.
6 Another resistor appears. Press any key on the key-
board (except R or M) to delete it.
7 Choose Options > Auto Repeat and uncheck the Auto
Repeat feature or press Ctrl+R.
Ground
Figure 3.3. The Edit Device Data dialog box lets you
change a wide range of device settings.
4 Change the Label-Value field to read +15V.
5 Click once on the Visible check box next to the Label-
Value field to change the black check mark to a grayed-
out check mark. This causes +15V to replace the +V on
the schematic.
6 Enter Vcc in the Designation field and click once in the
Visible check box next to it so that there is a black check
mark in it. Click OK.
Stop Button
• Mixed-mode simulation
• +V [Analog/Power] (1)
c
F
d
21 Click the green waveform label along the left-hand edge
of the Transient Analysis window to select the wave-
form.
0 5u 10u 15u 20u 25u 30u
Ref=Ground X=5uS/Div
Wire Tool
Tip: Right-click with the
Use the Wire Tool to place wires in the work area. Draw bus
mouse to access helpful
wires by holding down the Shift key when starting to draw
pop-up menus. Contents of
the wire. Refer to the sections Wiring the Circuit and
the pop-up menus will vary
Working with Bus Wires later in this chapter for more
depending on where you
information. Draw a dashed line by holding down the Alt
click.
key while drawing a wire. Dashed lines act just like regular
wires, but if they are not connected to anything, they will
not be included in a netlist. You can also activate the Wire
Tool by pressing Alt+W or by right-clicking the mouse in
the schematic background and choosing Wire from the pop-
Tip: Hold down the Alt key up menu.
while using the Wire Tool
to draw a dashed line, for Text Tool
example, around a section Use the Text Tool to place text in the circuit. Select the tool,
of circuitry to show that it click in the work area and type the text. Choose Edit > Font
is a logical block. to stylize the text or choose View > Colors to assign a
different color to text. You can alter the way multi-line text
wraps by clicking it with the Text Tool and resizing its
enclosing rectangle. You can also select the Text Tool by
pressing Alt+T or by right-clicking in the schematic back-
ground and choosing Text from the pop-up menu.
Delete Tool
Tip: Using the Text Tool, Use the Delete Tool to selectively delete items. Select the
you can add text anywhere Delete Tool, click on the item you want to delete, and the
in the schematic drawing. item is immediately deleted, except in the case of wires: If
you click and hold on a wire with the Delete Tool, the wire is
highlighted but not deleted until you release the mouse
button. If you hold down the mouse button and move the
Delete Tool away from the wire, the wire is not deleted. This
allows you to see the complete extent of the wire that will be
deleted, before you actually delete it. To delete just a
Zoom Tool
Use the Zoom Tool to magnify (zoom in) and reduce (zoom
out) your circuit. To zoom in, select the Zoom Tool and
position it over the area that you want to enlarge. Click the
left mouse button to magnify the circuit by the selected
Scale Step size. To zoom out, select the Zoom Tool and
position it over the area you want to reduce. Hold down the
Shift key and click the left mouse button to reduce the
circuit by the selected Scale Step Size.
You can also activate the Zoom Tool by pressing Alt+Z or
by right-clicking the mouse in the schematic background and
choosing Zoom from the pop-up menu.
Another zooming method is to press the Page Up key on the
keyboard to zoom in or the Page Down key to zoom out at
any time, without using the Zoom Tool. In this case, the
zoom is centered on the position of the mouse cursor. See
also Display Scale, Normal Size/Position and Fit Circuit to
Window in Chapter 13: View & Window Menus.
Rotate 90 Button
Use the Rotate 90 Button to rotate the selected device in 90°
increments.
You can also rotate a device as you select it from the library
by pressing the r key on the keyboard or by clicking the
Right mouse button before placing the device in the circuit.
Use the Rotate 90 Button to You can also select the Rotate 90 Button by choosing Edit >
rotate a selected device in Rotate 90 or by pressing Alt+R.
increments of 90°. Notice that Note: When you rotate a device, pin names and numbers
the Label-Value remains and label values remain readable, that is, they won’t be
readable as the device rotates. upside down.
Grid
Use the Grid option to turn the alignment grid of the circuit
window on or off (see Figures 4.1a and b). The grid is useful
as an aid in precisely aligning objects. Use Snap To Grid to
place new devices (devices not already in a circuit) accord-
ing to the specified grid. It also lets you move old devices
(devices already in the circuit) according to the selected
grid, relative to their original position.
Note: When you place a device exactly on the grid, it always
remains on the grid regardless of scroll position. However,
Snap To Grid does not guarantee alignment of component
pins.
Choose Options > Grid to access the Grid Setup dialog box.
Figure 4.1a. Use the Grid Setup dialog box to turn the
alignment grid on or off.
Moveable Page Breaks Figure 4.1b. Use the Border, Grid, Title Block options to
enhance the appearance of your schematic.
Title Block
Use the Title Block option (see Figure 4.1b for an example) to
add a title box to the lower right corner of the page. The title
block contains the following fields: Name, Title, Revision, ID,
Date, and Page. The Name and Title fields expand in height
to handle multiple rows of text. If you leave the Name or Title
fields blank, CircuitMaker excludes them from the title block.
The title block also expands in width according to the
amount of text that you enter. You can print the title block on
Borders
Use this option to quickly locate devices by displaying a
coordinate grid system around your schematic (see Figure
4.1b for an example). For example, suppose you want to find
a device that you know is located in the B-5 grid square. By
drawing an imaginary line from the letter B and the number 5
on the margins of the schematic; the intersection of these
lines locates the grid square containing the device.
To add a border to your schematic drawing,
1 Choose Options > Border to display the Border dialog
box.
2 Select Display Border On Screen to display a border
that outlines the total allowed schematic area.
3 Select Do Not Print if you don’t want to print the
border.
OR
Select Print Around Entire Schematic to print the
border so that it is only on the outside edges of the
outside pages, making a border around the entire
schematic when the pages are arranged together.
OR
Select Print Around Each Page to print the complete
border on each page of your schematic.
Figure 4.4. This example shows the found set after typing
the word “voltage” in the Device Search dialog box.
If a search produces items that don’t seem to match the
search text you entered, it might be because the match
occurred with the major or minor class names, which are not
displayed.
The Device Search feature accepts partial words to match
devices. For example, a search text of op would find Op-Amp
or loop. You can also use an asterisk as a “wild card.” For
Selecting Devices
Use the Arrow Tool to select and move devices around the
workspace. There are four different ways of selecting items
in the circuit window:
Selecting a Single Item
To select a single item, click it with the Arrow Tool. Click
anywhere else in the work area to deselect the item.
Selecting Multiple Items
To select multiple items, hold down the Shift key and click
on one or more items with the Arrow Tool. To deselect any
single item click on it a second time while still holding down
the Shift key. To deselect all items, release the Shift key and
click somewhere in the work area away from all items.
You can also select multiple items by holding down the
mouse button and dragging a selection rectangle around the
desired items. This method works especially well for
selecting switches, because clicking on a switch will not
always select it (unless you click on the outer edge of the
switch). To deselect any single item from a group of selected
items, Shift-click on it. To deselect all items, click in the
workspace away from all items.
Nudging Devices
To slightly “nudge” a device in any direction, select a single
device and then press the Left Arrow, Right Arrow, Up
Arrow, or Down Arrow key (as illustrated in Figure 4.5). A
single nudge shifts the device one pixel, whether or not
Snap-to-Grid is enabled.
Note: The nudge feature does not work if you have selected
wires or multiple devices. It only works with a single device.
Figure 4.5. Use the Left, Right, Up, or Down Arrow key to
“nudge” a selected device more precisely.
Auto Routing
To quickly and easily Auto Route wires,
Tip: You can also draw
wires with the Arrow Tool if 1 Select the Wire Tool from the Toolbar.
you have enabled the 2 Move the tool over a valid connection point.
Arrow/Wire option on the
Options menu. Note: A valid connection point is any device pin or
wire.
Manual Routing
Manual routing lets you freely place wires exactly where you
want them. It also lets you place “free wires” in your circuit
that are not connected to anything.
Note: To draw bus wires, use the manual routing method.
To route wires manually,
1 Select the Wire Tool from the Toolbar.
2 Move the tool to the position where you want to start
the wire.
3 Click and release the left mouse button.
The Wire Tool cursor disappears and is replaced with an
extended wiring cursor. The extended cursor simplifies
the task of precisely aligning wires with other objects.
4 Click once with the left mouse button to turn 90° or
double-click to end the wire.
5 Single-click the mouse to terminate the wire when it is at
a valid connection point (if you have enabled the Single
Click Connect option in the Preferences dialog box).
Designation
Label-Value
Device
This non-editable field shows the device name as it appears
in the library menus. Use the Visible check box to show or
hide the name in the schematic. If visible, the device name
retains the same orientation as the device when you rotate it.
The label-value, designation and description, however, will
remain right-side up no matter how the device is rotated.
Label-Value
Use this field to enter information about the device such as
The Label-Value field has a its label (1N914, 2N3904, etc.) or its value (47K, 100U, etc.), or
tri-state Visible check box: to replace the existing Device name (that is, make the Device
not visible and the Label visible). The Label-Value can be
Label- Value dragged around the device on the schematic with the mouse
not visible. and will remain attached to the device when the device is
moved.
Label-Value is If you set the Visible check box to gray (see diagram at left),
visible. the Label replaces the Device name and retains the same
orientation as the device when rotated. Otherwise, the label-
Label-Value is value will remain right-side up no matter how the device is
visible and rotated.
retains same
Designation
orientation as
Use this field to identify the device in the circuit such as U3,
device when
CR7, RLOAD, etc. You can also make this field visible with
rotated
the Visible check box. This field must contain the device
designation in order for simulation and pcb netlists to work
properly. The Designation label may also be dragged around
on the schematic with the mouse. It will remain right-side up
no matter how the device is rotated.
This field is filled in automatically when you place the
device. See Auto Designation Prefix later in this section for
more information. See also Set Designations in Chapter 10:
Edit Menu and Device Designations in Chapter 12: Options
Menu for other features that affect device designations.
Important: Individual parts of multipart packages must be
grouped properly. CircuitMaker takes care of this automati-
cally if you use devices as they are from the library. How-
ever, if you have altered multipart packages, they must be
grouped using the Edit > Group Items command. Just
changing the Designation field is not sufficient. Each
individual part must be identified as PART A, PART B, etc.,
from the Edit Device Pin Data dialog box. See Pins later in
this chapter.
Package
Use this field to identify the type of physical package
(footprint) the device is in (DIP14, TO-92B, etc.). When you
are creating pcb netlists for TraxMaker or other pcb layout
programs, make sure the Package name you enter exactly
matches the name of the corresponding component footprint
in your pcb layout program’s library.
Analog
This check box identifies this as a device that can be used in
CircuitMaker’s Analog simulation mode. The analog
simulator can only simulate a device if there is SPICE
simulation data for that device. If you attempt to run an
Analog simulation using a device that does not have the
Analog check box checked, CircuitMaker displays a warning
message and that device will be ignored in the simulation.
When creating your own device, this box should be checked
only if you have supplied SPICE data for the device or if the
device is a macro circuit containing other analog devices
(see Chapter 16: Creating New Devices for more informa-
tion on new device creation).
Digital
This check box identifies this as a device that can be used in
CircuitMaker’s Digital simulation mode. The digital simulator
can only simulate a device if there is digital SimCode for that
device. If you attempt to run a digital simulation using a
device that does not have the Digital check box checked,
CircuitMaker displays a warning message and that device
will be ignored in the simulation. When creating your own
device, select this box only if the device is a macro circuit
Parameters
This field stores information that affects the simulation of
certain devices. For digital SimCode devices, this field would
contain type:digital. It could then be followed by a list of
parameters which are generally set in the Digital Model
Parameters dialog box.
Some generic device models can be redefined by passing
parameters as an alias to describe a specific device. For
example, the parameter field of a crystal would contain
alias:XCRYSTAL and could be followed by a list of
databook parameters that define that specific crystal.
Generally, you enter these parameters in the Subcircuit
Parameters dialog box. See Chapter 16: Creating New
Devices for more information on parameter passing.
Bus Data
Use this field to specify which pins on the device are
connected to the power or ground buses, since these pins
are not shown on the predefined device packages. This field
holds up to 2048 characters, which is helpful when creating
devices with many power and ground pins. The general
format for this data is:
busnam[=pinnum[,pinnum,…]];[busnam=pinnum[,pinnum,…];…]
For example, on a 74LS83 the Bus Data is:
DVCC=5;DGND=12;
This means that the Vcc bus is connected to pin 5 and the
Ground bus is connected to pin 12. The bus data for a
74AC11190 would look like:
DVCC=15,16; DGND=4,5,6,7;
The order in which the buses are listed is not important.
Pins
Click the Pins button on the Edit Device Data dialog box to
display the dialog box shown in Figure 4.9. This dialog box
lets you edit the pin designations of the package for the
selected device and determine whether the pin designations
will be shown on the schematic.
Faults
Clicking the Faults button on the Edit Device Data dialog
box displays the Device Faults dialog box, which lets you
add fault data to the device. If the fault data has been
password protected, the Access Faults dialog box appears.
See Chapter 8: Fault Simulation for details.
Printing Circuits
To print a circuit, choose File > Print.
If your design is larger than a single sheet of paper it will
automatically be printed on multiple sheets of paper. To see
where page breaks occur, choose Options > Show Page
Breaks.
· Choose File > Print Setup and select Fit to Page and
the schematic will be automatically be scaled to fit in a
single page, or choose Scale and enter the percentage
you would like the circuit scaled to.
Digital/Analog Button
Click the Digital/Analog button to choose the simulation
mode you want to use. When the AND gate icon is dis-
played, you are in Digital simulation mode; when the
transistor icon is displayed, you are in Analog mode.
Reset Button
Click the Reset button to restart the simulation. You can also
reset by choosing Simulation > Reset or by pressing
Ctrl+Q.
Run/Stop Button
Click the Run button to start the simulation. The icon will
change to a Stop Sign. Click the Stop Sign icon to stop the
simulation (You can also choose Simulation > Run and Stop
or press F10). When the simulation is running you can’t
perform edit operations such as move and delete (if you try,
CircuitMaker will signal a warning beep). You can flip
switches with the Arrow or Probe Tool, and view or toggle
the state of a wire with the Probe Tool.
Probe Tool
Use the Probe Tool to monitor the state of any node in the
circuit or to inject a state into a node. You can also activate
the Probe Tool by pressing Alt+P or right-clicking the
mouse and choosing Probe from the pop-up menu.
To see the state of a node, either while the simulation is
running or after it has stopped, touch the Probe Tool’s tip on
a wire or device pin. The tool displays one of four messages:
H, L, P, or no letter at all. The meanings of these letters are
Trace Button
Click the Trace button (or press F11) to turn the trace feature
on or off. Use Trace to debug your circuit or to simply
provide a convenient way of observing operation of the
circuit. Trace shows the state of all nodes within the circuit
as it runs by drawing the wires in different colors to show
the logic state of each wire. A wire at a high state is red, a
wire at a low state is blue, and a tristate wire is green.
Note: Because the wires in the circuit will be redrawn each
time they change states, turning this option on may slow
down the simulation speed.
Waveforms Button
In digital mode, clicking on the Waveforms button will open
or close the digital Waveforms window. You can also choose
Simulation > Display Waveforms or press F12. Waveforms
are described in detail later in this chapter.
Figure 5.3. The Waveforms window lets you graph the states
of nodes over time as the simulation runs.
Before you can view timing waveforms for any node in your
circuit, you must connect a SCOPE to each node you want to
monitor, or choose Simulation > Scope Probe to monitor the
states of the Probe Tool in the Waveforms window.
Changing Waveform Order
To change the order of waveforms,
1 Point the mouse at any of the scope labels in the
waveform window.
2 Press and continue to hold down the left mouse button.
3 Move the rectangle to the desired position.
4 Release the mouse button.
Notice that the waveforms are automatically reordered in the
window. Repeat this process as often as desired in order to
position the waveforms in any order. When you save a
circuit to disk, CircuitMaker also saves the order of the
waveforms.
Pulser
The Pulser [Instruments/Digital] (p) is a digital pulse
CP1Q1 generator which provides a continuous stream of highs and
CP2Q2 lows. In the pulse format, time high, time low, and trigger
mode are individually programmable for each Pulser in the
circuit.
To edit the Pulser settings,
1 Double-click the Pulser with the Arrow Tool to display
the dialog box shown in Figure 5.5.
2 Change the number of simulation ticks for which the
pulse will stay high and low, the format of the pulse
(normal or inverted), and whether the pulser is in free
run or external trigger mode.
Figure 5.6. Use the Edit Data Sequencer dialog box to edit
stimulus for your circuits.
Start Address is the address of the data that outputs first
when the simulation begins. Stop Address is the address of
the data that outputs last before the sequence repeats. Use
Use External Clock to make the CP1 and CP2 inputs rising
and falling edge clock inputs, respectively. If pins are
clocked, the Data Sequencer advances to the next address.
Digital Simulation Mode Only
The Present Address option indicates the address of the
data that is output next if the circuit is not reset or modified.
The Tick Increment specifies how many simulation ticks
occur before the output is advanced to the next address
when the external clock is disabled.
Pattern Editor
You can type data directly into the Data list box in the Data
Sequencer dialog box. However, when creating a large
pattern this method becomes time consuming. Choose the
Pattern button on the Data Sequencer dialog box to display
the dialog box shown in Figure 5.7. The Pattern Editor helps
you to create large, complex patterns quickly.
Analog/Mixed-Signal Simulation
One of CircuitMaker’s most powerful features is circuit
simulation, allowing you to try variations in a design and
troubleshoot it before you invest time and money in
hardware prototypes.
Analog/Mixed Mode
Waveforms Button
Simulation icon
Reset Button
In Analog mode, clicking the Reset button generates the
node numbers for the circuit without running the simulation.
This is important if you want to save a SPICE netlist file or
view the node numbers on the schematic, but not run the
simulation. You can also reset the simulation by choosing
Simulation > Reset or by pressing Ctrl+Q.
Step Button
The Step button is used in Digital mode only. Refer to Step
Button in Chapter 5: Digital Logic Simulation.
Run/Stop Button
Click the Run button to start the simulation. The icon will
change to a Stop Sign. Click the Stop Sign icon to stop the
simulation (you can also choose Simulation > Run and Stop
or press F10). An interactive XSPICE simulation window
appears showing the progress of the simulation (see Using
XSpice for Windows later in this chapter). The amount of
time it takes to complete the simulation is based on the
analyses you have enabled, the amount of data you are
collecting, the complexity of the circuit, and the speed of
your computer. When the simulation has completed, an
analysis window appears for each of the selected analyses
you have run.
Note: If no changes have been made since the last simula-
tion was run, clicking the Run button will not rerun the
simulation, but will immediately load the previous simulation
data.
Probe Tool
The context-sensitive Probe Tool, which you can also select
by pressing Alt+P, allows you to quickly probe any point(s)
in the circuit during simulation and see the resulting
waveform or data in the selected analysis window. Note that
the Probe Tool is used differently in Analog mode than it is
in Digital mode.
Before running a simulation, you can left-click the Probe tool
in the circuit to add or remove Run-Time Test Points. Or, by
left-clicking while holding down the Ctrl key you can add or
remove Exclusive Test Points in the circuit. Note, however,
that you do not have to pre-define test points before running
Voltage a simulation in CircuitMaker. See Working with Test Points
later in this chapter for more information on using test
points.
Current During simulation, touch the tip of the Probe Tool to a wire,
device pin or device body to observe or plot data at that
point. The tool displays one of six letters: V, I, P, Z, N, or R.
Power
The meanings of these letters are illustrated at left.
Click the left mouse button while the Probe Tool is at the
Impedance point in the circuit you wish to probe, and a value or
waveform appears instantly in the current (active) analysis
window. To see multiple waveforms, simply Shift-click with
Noise (during Noise
the Probe Tool on as many points as you wish and the
Analysis)
corresponding waveforms “stack” in the current analysis
window.
Input or output
Resistance (during Note: If CircuitMaker indicates that current or power data is
Transfer Function not available, then go to Simulation > Analyses Setup >
analysis) Analog Options... and select the Node Voltage, Supply
Current, Device Current and Power radio button in the
lower right-hand corner of the dialog box.
Ctrl-clicking with the Probe Tool sets a new voltage refer-
ence point (the default voltage reference is ground) for the
current (active) analysis window.
Waveforms Button
In analog mode, click the Waveforms button (or press F12)
to open all analysis windows for which there is data in the
.RAW file for this circuit. This allows you to view the graphs
for this circuit without rerunning the simulation (this is only
available if the circuit has not been modified since the .RAW
file was created). Clicking the button again closes all
waveform analysis windows, which also stops the simula-
tion (just like clicking the Stop button) and lets you edit the
circuit. You can open the analysis windows individually from
the Windows menu.
To add an Exclusive Test Point, 1 Hold the Ctrl key and left-click the Probe Tool in any
Right-click the Probe Tool blank area of the circuit window.
Note that when you remove all Exclusive Test Points, the
Default Test Points become active again.
Displaying Waveforms
Once you have run a simulation, you can quickly view data
(waveforms) at any point(s) in the circuit using
CircuitMaker’s context-sensitive Probe Tool.
To plot data (waveforms) in an analysis window, first choose
the appropriate analysis window by clicking somewhere in it
so that it is “active”, then:
1 Click any valid point in the circuit with the tip of the
Probe Tool. See the Probe Tool section earlier in this
chapter for information on some of the other types of
data that can be plotted with the Probe Tool.
• Click on a wire to measure voltage
• Click on a device pin to measure current
• Click on a device body to measure power
If CircuitMaker indicates that current or power data is
not available, then go to Simulation > Analyses Setup >
Scaling Waveforms
You can view waveforms in the analysis windows in either
Auto scale or Manual scale mode.
• Select the Man (Manual) button to set the window to
manual scale mode.
Waveform Scaling
• Select the Auto button to set the window to auto scale
and Editing
mode.
Controls
The manual scale controls allow you to specify the units per
division for both the X and Y scales, using the arrow keys in
corner of the analysis window. Auto scale mode will
automatically scale the analysis window so that the selected
waveform(s) are completely viewable within the window.
Setup Button
The Setup button displays the Settings dialog box pictured in
Figure 6.5, which lets you control the X (horizontal) and Y
(vertical) axes of the graph, allows you to store and recall
waveforms, and lets you control many visual aspects of the
analysis windows. Note that you can also access many of the
analysis window settings through the right-click pop-up
menu that appears when you right-click anywhere inside an
analysis window.
Reset Button
Click the Reset button in the analysis window to return all of
the waveform offsets to zero and restore the graph to its
unzoomed state. The axes will remain unchanged.
Transient Analysis
A Transient Analysis generates output like that of an
oscilloscope, computing the transient output variables
(voltage or current) as a function of time over the user-
specified time interval.
A Transient Analysis first performs an Operating Point
Analysis to determine the DC bias of the circuit, always
beginning at time zero. In the time interval between zero and
Start Time, XSpice analyzes but does not display the circuit.
In the time interval between Start Time and Stop Time,
XSpice both analyzes and displays the circuit. Step Time is
the suggested computing increment, but the timestep will be
varied automatically by XSpice in order to properly con-
verge. Max. Step limits the varying size of the timestep that
XSpice can use when calculating the transient data; by
default, the program chooses either Step Time or (Stop Time
- Start Time)/50, whichever is smaller. Typically, Step Time
Measurement Description
Output Noise The noise measured at a specified
output node.
Input Noise The amount of noise that, if injected
at the input, would cause the calcu-
lated noise at the output. For example,
if the output noise is 10p, and the
circuit has a gain of 10, then it would
take 1p of noise at the input to
measure 10p of noise at the output.
Thus the equivalent input noise is 1p.
Component Noise The output noise contribution of each
component in the circuit. The total
output noise is the sum of individual
noise contributions of resistors and
semiconductor devices. Each of these
components contributes a certain
amount of noise, which is multiplied
by the gain from that component’s
position to the circuit’s output. Thus
the same component can contribute
different amounts of noise to the
output, depending on its location in
the circuit.
To set up and run a Noise Analysis,
1 Select the output node by clicking the output node of
the circuit with the Probe Tool.
This places a Run-Time Test Point and displays the
dialog box shown in Figure 6.22 In the dialog box that
appears, check the Enable Noise checkbox, and make
sure Out is selected.
Option Description
Simulation Runs Enter the number of simulation runs
you want CircuitMaker to perform.
For example, if you enter 10, then
CircuitMaker will run 10 simulation
runs, with different device values on
each run, within the specified
tolerances.
Uniform distribution
Values are uniformly distributed over the specified tolerance
range. Suppose you have a 1K resistor with a tolerance of 10
percent. There is an equal chance of the generated value
being anywhere from 900 ohms to 1100 ohms. It is a flat
distribution.
Gaussian distribution
Values are distributed according to a gaussian (bell-shaped)
curve with the center at the nominal value and the specified
tolerance at +/- 3 standard deviations. Given a 1K, 10 percent
resistor, the center of the distribution would be at 1000 ohms,
+ 3 standard deviations at 1100 ohms, and –3 standard
deviations at 990 ohms.
Worst Case distribution
This is the same as the uniform distribution, but only the end
points (worst case) of the range are used. Given a 1K, 10
percent resistor, the value used would be randomly chosen
from the two worst case values of 990 ohms and 1100 ohms.
On any one simulation run, there is an equal chance that the
high-end worst case value (1100) or low-end worst case
value (990) will be used.
To set up and run a Monte Carlo Analysis,
1 Choose Simulation > Analyses Setup.
2 Click the Monte Carlo button to display the dialog box
pictured in Figure 6.27.
Integration Method
Choose which numerical integration method you want to use
with XSpice. The trapezoidal method is relatively fast and
accurate, but tends to oscillate under certain conditions. The
gear method requires longer simulation times, but tends to
be more stable. The gear order must be a value between 2
and 6. Using a higher gear order theoretically leads to more
accurate results, but increases simulation time.
Default=Trapezoidal.
Multimeter
In addition to the Multimeter/Operating Point analysis
window, CircuitMaker includes a multimeter instrument for
12. 00 V measuring resistance, DC, DC AVG or AC RMS voltage or
DC V
current. You may place as many multimeters into your circuit
as you like. When you run the simulation, the measured
value is then displayed on the meter. Remember, when
measuring voltage, connect the meter in parallel with the
circuit; when measuring current, connect it in series. When
measuring resistance, be sure to remove any power sources
from the circuit and beware of dangling devices that may
cause XSpice errors. Also, since the multimeter forces a
current through the circuit to measure ohms, make sure you
have only one multimeter set to ohms in the circuit at a time.
XSpice sees the current flowing into the positive terminal of
a power supply, Multimeter or Signal Generator as positive
current.
When you place a Multimeter [Analog/Instruments] in your
circuit, the dialog box shown in Figure 6.37 appears showing
the settings of the multimeter.
Note: To measure DC AVG or AC RMS values, Transient
Analysis must be enabled and must simulate enough cycles
of transient data to make the measurements meaningful.
Likewise, Operating Point Analysis (multimeter) must be
enabled in order to obtain resistance and DC values.
Figure 6.38. This dialog box shows the settings for the
currently selected waveform function.
All of the waveform dialog boxes have the following items in
common:
Volts/Amps
Allows you to select whether this is a voltage or current
source.
Netlist Button
Displays the Edit Device Data dialog box described in
Editing Devices in Chapter 4: Drawing and Editing
Schematics.
Wave Button
Displays the dialog box pictured in Figure 6.39, allowing you
to change waveform functions for this generator. To change
waveform functions, click one of the function buttons and
specify this generator’s effect when running AC Analysis.
AC Analysis temporarily replaces each AC source with a
sinusoidal wave of a fixed magnitude and phase. The Source
check box allows you to specify whether this generator will
be used as an AC source in the AC Analysis. The Magni-
tude and Phase edit fields allow you to specify the fixed
values that will be used.
DC Offset (VO)
Adjust the DC bias of the signal generator with respect to
the negative terminal (usually ground), measured in volts or
amps.
1.0 MHz
7.0 us
Data Sequencer
You can use this device in both digital and analog simulation
Data 8 modes. Also known as a Data or Word Generator, it allows
Seq 7
6 you to specify up to 32767 8-bit words which can be output
5 in a defined sequence. Since there is no limit to the number
4
3 of Data Sequencers that you can use in a circuit, you could
CP1 2
CP2 1 place several in parallel to create a data stream of any width.
For a complete description of the data sequencer, refer to
Data Sequencer in Chapter 5: Digital Logic Simulation
Exporting Files
CircuitMaker offers several powerful export options, letting
you export your circuit data to any of the following output
types:
• Bill of Materials
• Waveforms as graphic files
• Circuits as graphic files
• SPICE Netlists
• SPICE Subcircuits
• PCB Netlists
This level of flexibility lets you easily integrate the work you
do in CircuitMaker with a wide variety of other schematic
capture, simulation, and printed circuit board layout pro-
grams.
CircuitMaker works seamlessly with TraxMaker, meaning
that you can export to the TraxMaker PCB netlist format and
also configure and launch TraxMaker directly from
CircuitMaker.
This chapter defines the different types of output files and
provides step-by-step procedures for them.
Bill of Materials
Formerly known as a Parts List, a Bill of Materials is a file
that contains information about how many and which kinds
of parts are used in your circuit. You can export a Bill of
Materials to a text file.
C:\CM\Circuits\Diffamp.BOM
3 1 3.2k AXIAL0.4 R1
4 1 1.5k AXIAL0.4 R2
5 2 50 AXIAL0.4 RB1,RB2
7 1 2.5k AXIAL0.4 RE
As you can see in the examples, the three main things listed
for each item are Label-Value, Attributes, and Designation.
The default attributes are package and description, which
can be set for each device in the Edit Device Data dialog box.
Notice that none of the items in the list had a description, so
only the package is listed. If multiple attributes are present
for devices, then additional lines are added to list those
attributes. For example, a group of items that has both a
package and a description would require a second line to list
the second attribute (description):
5 2 50 AXIAL0.4 RB1,RB2
5% Resistor
Including Attributes
Use the Include Attributes field in the Bill of Materials
dialog box to enter items that you want to appear in the
attribute column of the Bill of Materials. These items must be
separated by commas, and should be listed in the order that
you want them to appear in the Bill of Materials. There are
two predefined attributes: package and description. These
are listed as the default attributes in the Include Attributes
field. Deleting an item from the Include Attributes field
excludes that attribute from the Bill of Materials. You can
enter other attributes in the Include Attributes field if they
are defined an attribute file as described below.
Format 2
[Spice Prefix (R, C, or L)], [Package], [Description],
[Attribute Name], [Attribute Data]
This format is used for resistors, capacitors, and inductors.
Example:
c,CAP0.2,*,MFG,Mallory
LM741,DIP8,*,MFG,National
+,COST,$0.26
+,MFGID,LM741N
r,AXIAL0.4,*,MFG,TRW
+,COST,$0.05
LF411,CAN8,*,MFG,National
+,COST,$0.26
+,MFGID,LM741N
c,CAP0.2,*,MFG,Mallory
What is a Net?
Each net represents one electrical junction point or node of a
circuit. Numerous device pins may be connected to the same
net.
What is a Netlist?
A netlist is an ASCII text file listing connections which
describe the networks (or nets) of component connections
in an electronic circuit. Widely used in electronics CAD
packages, netlists let you transfer design details between
applications, such as CircuitMaker and TraxMaker. Netlists
generally contain two types of information:
• Descriptions of the individual components
• A list of all pin-to-pin connections
PCB Netlists come in various formats but generally carry
similar data. They can often be translated into another
format using a text editor. The file extension “.NET” is used
for MicroCode Engineering netlist files.
As straightforward ASCII text files, netlists are easily
viewed, created, and modified using a simple text editor or
word processor (such as NotePad).
CircuitMaker to TraxMaker
TraxMaker is a powerful pcb layout and autorouting program
from MicroCode Engineering Inc. It is fully compatible with
Export to TraxMaker CircuitMaker, and the products are designed to work
automatically using together seamlessly, giving you a complete start-to-finish
the TraxMaker design system. Because CircuitMaker and TraxMaker are
Button. tightly integrated, you can automatically export a TraxMaker
netlists, open TraxMaker, define a keep out area, load the
netlist, place and arrange the component footprints all with
the TraxMaker Button in CircuitMaker.
To take a schematic from CircuitMaker into TraxMaker,
1 Choose File > Export > PCB Netlist (or click the
TraxMaker button on the Toolbar) to display the dialog
box pictured in Figure 7.3.
Fault Simulation
An exciting educational feature of CircuitMaker is the ability
to place faulty devices in circuits. This lets you, as the
instructor, to create troubleshooting exercises for students.
For example, you can create a working circuit, then “zap” one
or more of the devices by applying shorts, opens or other
faults to selected pins on those devices. You can then
password protect the fault data and limit the resources
available to the student. You can add faults to both digital
and analog circuits.
Hints: Create a working circuit before adding fault data.
While CircuitMaker’s comprehensive fault simulator lets you
create multiple, complex faults, use discretion when adding
faults to a circuit. One or two damaged pins on an IC, a burnt
resistor, or a shorted capacitor might be enough to challenge
the student.
Device Faults
Each device might have multiple faults, but each device pin
can have only a single fault. There are 6 basic types of
device faults that can be simulated in CircuitMaker:
Figure 8.1. Use the Device Faults dialog box, which you
access from the Edit Device Data dialog box, to set up
faults for the device.
Fault Label-Value
Use this text box to enter the “wrong value” and “user
defined” faults mentioned earlier in this chapter. If a value is
entered in this field, it will replace the device’s Label-Value
when the simulation is run. Faulty SPICE model and
subcircuit names may also be entered here. If the field is left
blank, the device’s real Label-Value will be used in the
simulation.
Hint Message
The instructor can type a brief hint about the nature of the
fault in this field that the student can access while trouble-
shooting the circuit.
Fault Password
The instructor can enter a password in this text box to
restrict access to the fault data. If a password is entered
here, all fault data will be password protected. If the pass-
word is deleted, the fault data will no longer be protected.
Passwords are case sensitive and may be up to 15 characters
in length. They may include any printable character, exclud-
ing Tab or Enter. Password protection:
• Restricts access to the Device Faults dialog box.
• Restricts access to the Circuit Faults dialog box.
• Eliminates fault comments from the SPICE .NET file.
File Menu
New
Select New to clear the current circuit from the work area and
begin a new circuit. If an unsaved circuit is present in the
work area when you select this command, you will be asked
if you want to save the current circuit first.
Open
Choose Open to abandon the current circuit and load a
different circuit into the workspace. If an unsaved circuit is
present in the work area, you will be asked if you want to
save the current circuit first. A file selector dialog will then
be displayed allowing you to choose the circuit to load into
the work area. The file extension used by default is .CKT.
Circuit files created with older versions of CircuitMaker have
the .CIR extension. To open these files, select the .CIR file
type. As these files are opened, they will be converted to the
new ASCII format and should be saved with the .CKT
extension.
Reopen
Use the Reopen command to quickly reopen any of the last 8
circuits that you have used. If changes have been made to
the current circuit you will be asked if you want to save the
circuit before closing.
Merge
The Merge option lets you to add a circuit saved on disk to
the circuit in the work area. This command is useful because
it lets you save commonly used circuits or portions of
circuits to disk then reuse them as often as you need,
without having to rebuild them from scratch each time.
Close
Use Close to close the open windows. If changes have been
made to the current circuit you will be asked if you want to
save the circuit before closing.
Save
Choose Save to save the current circuit in the work area to
disk using the name shown in the Title Bar. When you save
a circuit whose title is UNTITLED.CKT, a file selector dialog
box appears, allowing you to save it under a specific name.
Save As
Choose Save As to save the current circuit to disk using a
file name that is different than the one shown in the Title Bar.
CircuitMaker will display a file selector dialog box allowing
you to choose the path and a file name of up to eight
characters. The circuit is saved in an ASCII format with a
default file extension of .CKT.
Revert
Choose Revert to abandon any changes made since last
saving the circuit to disk and load the last saved version
back into the work area. CircuitMaker will then display a
dialog box asking you to confirm that you want to revert to
the last saved version.
Export
CircuitMaker allows you to export a variety of files and
formats, including circuit and waveforms, pcb and Spice
netlists. See Chapter 7: Exporting Files for a complete
description of the exporting options.
Bill of Materials
Formerly known as a Parts List, a Bill of Materials is a file
that contains information about how many and which kinds
of parts are used in your circuit. You can export a Bill of
Materials to a text file. See Exporting a Bill of Materials in
Chapter 7: Exporting Files for more information.
Print Setup
The File > Print Setup option allows you to scale the output
to the printer 10% to 1000%, and choose between black and
white, or color. You can also select the desired printer and
page orientation by clicking the Printer button.
Fit to Page
Use the Fit to Page option on the Print Setup dialog box to
scale the schematic automatically so that the entire sche-
matic fits on a single printed page.
Print Circuit
Choose File > Print Circuit to print the current circuit or to
save it to a print file. A Printer dialog box appears, allowing
you to select the desired output. If the circuit is too large to
fit onto a single page, it will automatically be divided into
page-size blocks as it is printed (see Show Page Breaks in
the View menu). CircuitMaker supports all printers and
printer options in the Printer dialog box. Printer setups will
vary depending on the device you are printing to, but
typically options such as page orientation and reduction
factor are available.
Print Waveforms
Choose File > Print Waveforms to print the waveforms to a
printer or save them to a print file. Only the information
currently displayed in the active Waveforms or Analysis
window is printed.
Preferences
Choose Preferences (Figure 9.2) to change the default
settings of CircuitMaker. Preferences are stored in the
CIRMAKER.DAT file.
Exit
Choose File > Exit to exit CircuitMaker and return to
Windows. If there are unsaved changes, you will be asked if
you want to save them.
Edit Menu
The commands in the Edit menu provide some of the tools
necessary to construct and modify circuit diagrams.
Undo
Many of CircuitMaker’s editing commands can be undone.
Edit operations which can be undone are Cut, Paste, Delete
and Move. Only the most recent edit can be undone and
many commands are not able to be undone, including Run,
Single Step, Reset, Define New Macro, Expand Macro and
Delete Macro.
Cut
Use Cut to remove all selected items and place them in the
paste buffer and on the system clipboard.
Copy
Use Copy to place all selected items in the paste buffer and
on the system clipboard.
Paste
The Paste option displays the contents of the paste buffer in
the CircuitMaker workspace and the displayed items follow
Normal cursor the mouse around the screen. The cursor is replaced by the
paste cursor, indicating the top left corner of the paste area.
When the items are positioned at the desired location, click
Paste cursor the mouse to finalize the paste. To cancel the paste, press
any key or double-click the mouse.
Note: You cannot use Paste to paste items from the system
clipboard.
Move
Use the Move option to perform both a Cut and a Paste. This
provides a quick way to move an entire circuit or portion of a
circuit to a new position on the screen. Connections to other
portions of the circuit are lost.
Duplicate
Choose Duplicate to make a copy of all selected items.
When this command is selected the duplicated items follow
the mouse around the screen. The cursor is replaced by the
paste cursor, indicating the top left corner of the paste area.
When the items are positioned at the desired location, click
the mouse to finalize the duplication. To cancel the duplica-
tion, press any key or double-click the mouse.
Select All
This option selects all items in the work area. This is useful
when you want to cut, copy or move the entire circuit.
Figure 10.1. Use the Find and Select dialog box to search
for devices you have placed in the workspace.
For example, if a SPICE message indicates a problem at node
27 and your schematic is rather complex, this command can
help you find the specified node. All wires connected to that
node will be selected. You can also search for multiple
devices. For example, to select all the transistors, enter Q* in
the Designation field. All characters after the Q will be
ignored in the search.
Rotate 90
This is the same as the Rotate 90 button described in
Chapter 4: Drawing and Editing Schematics.
Straighten Wires
When you have wires with multiple bends, sometimes you
may want to clean them up a little. This is a quick way of
taking out some of the extra “kinks” without having to
adjust the wire manually.
To straighten wires,
1 Select the wires you want to straighten.
2 Choose Edit > Straighten Wires.
Place Labels
This option lets you place the labels of all selected devices
in their standard positions without rotating or mirroring.
Figure 10.2. Use the Edit Delay dialog box to alter the
propagation delay of all selected devices.
The default delay for all devices is one (1), but by using Set
Prop Delays, you can change this value to any integer from
1 to 14. The units assigned to delay are arbitrary, and it is left
Set Designations
Choose Edit > Set Designations to display the Set Designa-
tions dialog box (pictured in Figure 10.3). Use this feature to
renumber devices designations of devices you have already
placed in the schematic. You can renumber all devices or a
group of devices you have selected.
Edit Pulser
Use Edit > Edit Items > Edit Pulser to change the pro-
grammed settings of a Pulser. The pulse format, time high,
time low, and trigger mode are individually programmable for
each Pulser in the circuit. For a complete description of the
Pulser, refer to The Pulser in Chapter 5: Digital Logic
Simulation.
Edit Input/Output
This feature (Figure 10.6) lets you change the name associ-
ated with an INPUT or OUTPUT device.
1 Select the Input (or Output) device by clicking it once
then select Edit > Edit Items > Edit Input/Output.
OR
Double-click the device with the Arrow Tool.
Figure 10.7. This dialog box lets you change the name
of an existing SCOPE or Analysis Probe.
Group Items
Use this option to specify the devices that are contained
within the same package. For example, a 7400 Quad 2-Input
NAND gate actually has 4 gates in the same package. The
pin numbers are different for each gate. The individual gates
are grouped together automatically as they are placed in the
circuit. You could regroup the gates using this feature.
Font
Choose Font (Figure 10.8) to change the font attributes of
any selected, free-floating text field, or the default font for
new text.
Figure 10.8. Use the Font dialog box to change the font for
free-floating text fields or new text.
To change the font,
1 Select the text by highlighting it.
2 Choose Edit > Font.
3 Make the desired changes and choose OK.
Macros Menu
Using commands in the Macros menu, you can expand
CircuitMaker to meet your exact needs. This chapter
describes the options used to create, edit and manipulate
macros. Refer to Chapter 16: Creating New Devices for a
step-by-step tutorial about creating macro devices.
New Macro
Select New Macro to create a new schematic symbol to add
to the library. If there is a circuit displayed, CircuitMaker
asks if you want that circuit included inside the macro for
simulation. Macros are saved in a disk file called USER.LIB
and once created, are available for use in any circuit or in
another macro device.
Edit Macro
To edit a macro, follow these steps:
1 Expand the macro by highlighting it and choosing
Macros > Expand Macro.
Note: When a macro is expanded, the workspace will be
cleared. If necessary, save your work beforehand.
2 Click the expanded macro’s symbol to select it.
3 Choose Macros > Edit Macro to edit its name, device
data or symbol.
You can also double-click the expanded macro’s symbol
with the Arrow Tool.
If an existing macro is expanded and saved with a new name,
it is saved as a new macro and does not overwrite the
existing macro. The dialog box shown in Figure 11.1 appears
when you use Edit Macro feature.
If no macro (either a newly defined or an expanded one) is
present in the work area, the Edit Macro menu item is grayed
indicating that it is not available.
Save Macro
Use the Macros > Save Macro option to save or resave a
macro device. An existing macro saved in this manner will be
placed in its original position in the device library. All
devices require a Major Device Class designation, so if you
use the Save Macro option to save a new macro,
CircuitMaker displays the Macro Utilities dialog box
allowing you to specify both a major and minor class. To
save an existing macro in a new location, refer to the Macro
Utilities later in this chapter. To save under a different name,
refer to Edit Macro. Macro devices are stored in the
USER.LIB file.
Expand Macro
Use the Macros > Expand Macro option to edit a previously
saved macro device. Expanding a macro device means that
the black box containing the macro’s circuitry is opened and
all internal circuitry is visible.
Note: Most of the devices included with CircuitMaker are
not macro devices and cannot be expanded.
To expand a macro, follow these steps:
1 Click a single macro device to select it.
2 Choose Macros > Expand Macro.
OR
Click the Macro button on the Toolbar.
Macro Lock
An instructor may want to lock a macro so that it cannot be
expanded by the students, thus creating a “black box.”
To lock a macro, follow these steps:
1 Expand the macro.
2 Click the expanded macro’s symbol to select it.
3 Choose Macros > Macro Lock to display the dialog box
pictured in Figure 11.2.
Figure 11.3. The Macro Utilities dialog box lets you save,
expand, or delete a macro.
Save Macro
The Save Macro button on the Macro Utilities dialog box
lets you to save or resave a macro device. If there is no
macro (expanded or newly defined) in the work area, this
button is grayed. Refer also to the section Save Macro
described earlier in this chapter.
To save a macro, follow these steps:
1 Select both a major and minor device class to indicate
where the device is saved in the device library.
Note: You can add new major and minor class names by
typing in a new name in the Major Device Class and
Minor Device Class text edit fields.
2 Click Save Macro.
CircuitMaker saves the macro in the USER.LIB file and
clears the workspace.
Expand Macro
Use the Expand button in Expand/Delete Macro group box to
perform the same function explained earlier in this chapter.
To expand a macro device, select the macro then click the
Expand button.
Delete Macro
Use the Delete button in the Expand/Delete Macro group
box to delete a macro device from the USER.LIB file.
Warning: You cannot open a circuit which uses a macro that
has been deleted from the library unless you first create a
new macro with the same name.
To delete a macro device, follow these steps:
1 Save the workspace if you need to save.
When the macro is deleted the workspace will be
cleared.
2 Make a backup of the USER.LIB file before you create or
delete macros in case something goes wrong and you
want to restore the original library.
Model Data
Use the Model Data button on the Macro Utilities dialog box
to add new SPICE models to CircuitMaker’s library. This
button displays a dialog box that lets you place new
references into the linking file for selected symbol. Refer to
Model and Subcircuit Linking Files in Chapter 16:
Creating New Devices.
Macro Copier
The following steps illustrate how you can use the Macro
Copier to copy your macros into a new version of USER.LIB.
1 Choose Macros > Macro Copier to display the dialog
box pictured in Figure 11.4.
Figure 11.4. Use this dialog box to copy macros from one
macro library to another.
2 Click lower left Open button to display the Open dialog
box.
CircuitMaker asks you if you want to list only the user
defined devices.
Options Menu
The Options menu contains commands which enable you to
control various display, editing and simulation options.
Auto Repeat
This option lets you control how devices are selected from
the library. If Auto Repeat is checked, as soon as a device is
selected from the library and placed, another identical device
is automatically selected and made ready for placement. This
repeat placement process continues until you cancel it by
pressing any key on the keyboard or by double-clicking the
mouse. If Auto Repeat is not checked, you must select and
place each device separately.
Auto Refresh
This option lets you control the refresh mode. When Auto
Refresh is on, the screen refreshes automatically as the
circuit is edited. When it is disabled, the screen must be
refreshed manually while editing (see the Refresh Screen
option in the Edit menu). Disabling this option lets you work
more quickly on a slower computer system.
Quick Connect
This option allows you to simply place a device pin on a wire
or other device pin, and CircuitMaker will automatically wire
the parts together for you. By default, Quick Connect is
enabled when you start CircuitMaker. See Wiring in Chapter
4: Drawing and Editing Schematics for more details.
Device Designations
CircuitMaker automatically assigns a designation to each
device when it is placed. Use the Device Designations dialog
box (pictured in Figure 12.1) to specify certain designation
options.
Arrow/Wire
This option, when checked, allows you to initiate a wire by
clicking once on a device pin with the Arrow Tool. You can
only use the Arrow Tool to initiate a wire on a device pin or
to extend an existing wire. You cannot initiate a wire from the
middle of another wire using the Arrow Tool as you can with
the Wire Tool. This option can be used for both auto and
manual routing.
Cursor Tools
This submenu provides an alternate method of selecting the
Arrow, Wire, Text, Delete, Zoom, Probe and Help Tools.
Grid
Use the Grid option to turn the alignment grid of the circuit
window on or off (see Figures 12.4 and 12.5). The grid is
useful as an aid in precisely aligning objects. Use Snap To
Grid to place new devices (devices not already in a circuit)
according to the specified grid. It also lets you move old
devices (devices already in the circuit) according to the
selected grid, relative to their original position.
Note: When you place a device exactly on the grid, it always
remains on the grid regardless of scroll position. However,
Snap To Grid does not guarantee alignment of component
pins.
Figure 12.4. Use the Grid Setup dialog box to turn the
alignment grid on or off.
Moveable Page Breaks Figure 12.5. Use the Border, Grid, Title Block options to
enhance the appearance of your schematic.
Title Block
Use the Title Block option (see Figure 12.5 for an example) to
add a title box to the lower right corner of the page. The title
block contains the following fields: Name, Title, Revision,
ID, Date, and Page. The Name and Title fields expand in
height to handle multiple rows of text. If you leave the Name
or Title fields blank, CircuitMaker excludes them from the
title block. The title block also expands in width according to
the amount of text that you enter. You can print the title
block on the first page, on the last page, or on all pages.
Border
Use this option to quickly locate devices by displaying a
coordinate grid system around your schematic (see Figure
12.5 for an example). For example, suppose you want to find
a device that you know is located in the B-5 grid square. By
drawing an imaginary line from the letter B and the number 5
on the margins of the schematic; the intersection of these
lines locates the grid square containing the device.
To add a border to your schematic drawing,
1 Choose Options > Border to display the dialog box
pictured in Figure 12.6.
2 Select Display Border On Screen to display a border
that outlines the total allowed schematic area.
3 Select Do Not Print if you don’t want to print the
border.
OR
Select Print Around Entire Schematic to print the
border so that it is only on the outside edges of the
outside pages, making a border around the entire
schematic when the pages are arranged together.
OR
Select Print Around Each Page to print the complete
border on each page of your schematic.
Toolbar
Use the Toolbar option to display or hide the Toolbar. For an
overview of all Toolbar options, see Chapter 2: Getting
Started and Chapter 4: Drawing and Editing Schematics.
Colors
The Colors feature (Figure 13.1) lets you select the color
associated with several functions (low level and high level)
and items (Logic Display color, Hex, and ASCII Key Cap
color). For example, to change the color of individual LEDs,
follow these steps:
1 Select one or more LEDs.
2 Choose View > Colors (or double-click the LED).
3 Change color for the Sel-LEDs item.
Display Scale
This feature lets you select the scale at which a circuit is
displayed. It also lets you select the Scale Step of the Zoom
Tool. See Figure 13.2.
Refresh Screen
Choose Refresh Screen to redraw the entire circuit. Redraw-
ing may be desirable following a command or operation
which causes parts of the screen to become “messy.” Also
see Auto Refresh in Chapter 12: Options Menu.
Cascade Windows
This command will arrange all open windows in a cascaded
(stacked) order.
Tile Windows
This command will arrange all open windows in a tiled
(adjacent) order.
Window
Each window that is open (or can be opened with the
available simulation data) is listed in this menu. Selecting a
window from this menu will open it and bring it to the front.
Simulation Menu
Digital/Analog Mode
This works just like the Digital/Analog button on the
Toolbar, which is described in the simulation chapters 5 & 6.
The name that is displayed in the menu is the simulation
mode that is currently selected.
Analyses Setup
Use the Analyses Setup dialog box to setup the SPICE
analyses you want to perform, as well as simulation options
such as temperature, tolerances, etc. For more information
see Analyses Setup and Analog Options in Chapter 6:
Analog/Mixed-Signal Simulation.
Digital Options
Use this dialog box to control the size of a step when
running the simulation in single step mode, to set the
conditions for break points and to set the simulation speed.
Refer to the section Digital Options in Chapter 5: Digital
Logic Simulation.
Reset
This works just like the Reset button in the Toolbar, which is
described in Chapter 5: Digital Logic Simulation and
Chapter 6: Analog/Mixed-Signal Simulation.
Run
This works just like the Run button in the Toolbar, which is
described in Chapter 5: Digital Logic Simulation and
Chapter 6: Analog/Mixed-Signal Simulation.
Trace
This works just like the Trace button in the Toolbar, which is
described in Chapter 5: Digital Logic Simulation.
Display Waveforms
This works just like the Waveforms button in the Toolbar
which is described in Chapter 5: Digital Logic Simulation
and Chapter 6: Analog/Mixed-Signal Simulation.
Scope Probe
This option, when checked, causes the logic levels detected
by the Probe Tool to be displayed in the digital Waveforms
window while running digital simulation.
Resistors
General Form
RXXXXXXX N1 N2 VALUE
Netlist Example
R1 1 2 10K
Semiconductor Resistors
General Form
RXXXXXXX N1 N2 <VALUE> <MNAME> <L=LENGTH> <W=WIDTH> <TEMP=T>
Netlist Examples
R1 1 2 10K
Capacitors
General Form
CXXXXXXX N+ N- VALUE <IC=INCOND>
Netlist Example
C2 13 0 0.1UF
C5 7 0 10UF IC=3V
Semiconductor Capacitors
General Form
CXXXXXXX N+ N- <VALUE> <MNAME> <L=LENGTH> <W=WIDTH> <IC=INCOND>
Netlist Example
C2 13 0 0.1UF
Inductors
General Form
LYYYYYYY N+ N- VALUE <IC=INCOND>
Netlist Example
L3 12 9 1UH
L4 5 0 100UH IC=12.3MA
General Form
KXXXXXXX LYYYYYYY LZZZZZZZ VALUE
Netlist Examples
K12 L4 L3 0.999
KXFRMR L1 L2 0.87
Note: A transformer that is LYYYYYYY and LZZZZZZZ are the names of two coupled
simulated in this manner inductors, and VALUE is the coefficient of coupling (K),
will not reflect the which must be greater than 0 and less than or equal to 1.
impedance of the second- Using the “dot” convention, place a “dot” on the first node
ary winding back into the of each inductor, indicating that the voltages at these node
primary. are in phase (the voltages go up and down together).
If more than two inductors are being coupled, SPICE data
must be provided for each coupling. For example, a trans-
former with one primary coil (L1) and two secondary coils
(L2 and L3) might be expressed as follows:
L1 5 0 10MH
L2 6 7 1MH
L3 8 9 1MH
K12 L1 L2 0.93
K13 L1 L3 0.93
K23 L2 L3 0.97
See Also
Transformers (example circuit: VTPWRAMP.CKT)
General Form
SXXXXXXX N+ N- NC+ NC- MODEL <ON><OFF>
Netlist Examples
S1 1 2 3 4 SVS1 (V->Switch)
S2 5 6 3 0 SVS2 ON (V->Switch)
W1 1 2 VS1 WIS1 (I->Switch)
Spice Data Example
%D %1 %2 %3 %4 %M ON
Independent Sources
General Form
VXXXXXXX N+ N- <<DC> VALUE> <AC <MAG <PHASE>>>
General Form
GXXXXXXX N+ N- NC+ NC- VALUE
Netlist Example
G1 2 0 5 0 0.1MMHO
General Form
EXXXXXXX N+ N- NC+ NC- VALUE
Netlist Example
E1 2 3 14 1 2.0
General Form
FXXXXXXX N+ N- VNAM VALUE
Netlist Example
F1 5 17 VS2 0.5K
General Form
HXXXXXXX N+ N- VNAM VALUE
Netlist Example
H1 5 17 VS2 0.5K
General Form
BXXXXXXX N+ N- <I=EXPR> <V=EXPR>
Netlist Examples
BSO1 0 1 I=COS(V(1))+SIN(V(2))
“u” is the unit step function, with a value of one for argu-
ments greater than zero and a value of zero for arguments
less than zero. “uramp” is the integral of the unit step: for an
input x, the value is zero if x is less than zero, or if x is greater
than zero the value is x. These two functions are useful in
synthesizing piecewise nonlinear functions, though conver-
gence may be adversely affected.
The following standard operators are defined:
+ * / ^ unary -
In addition, the following boolean operators are defined.
Input threshold values (BOOLT) and output values (BOOLL
and BOOLH) are universally defined in the Analog Options
dialog box.
General Form
TXXXXXXX N1 N2 N3 N4 Z0=VALUE
+ <TD=VALUE> <F=FREQ <NL=NRMLEN>>
+ <IC=V1,I1,V2,I2>
Netlist Example
T1 3 0 2 0 Z0=50 TD=20NS
General Form
OXXXXXXX N1 N2 N3 N4 MNAME
Netlist Example
O2 3 0 2 0 OXLINE
General Form
UXXXXXXX N1 N2 N3 MNAME L=LEN <N=LUMPS>
Netlist Example
U1 1 2 0 UXLINE L=50UM N=6
Junction Diodes
General Form
DXXXXXXX N+ N- MNAME <AREA> <OFF> <IC=VD> <TEMP=T>
Netlist Example
D3 2 10 D1N914 OFF
General Form
QXXXXXXX NC NB NE <NS> MNAME <AREA>
+ <OFF> <IC=VBE, VCE> <TEMP=T>
Netlist Example
Q5 11 26 4 Q2N3904 IC=0.6, 5.0
Q3 5 2 6 9 QNPN .67
General Form
JXXXXXXX ND NG NS MNAME <AREA> <OFF> <IC=VDS, VGS> <TEMP=T>
Netlist Example
J2 6 3 21 J2N3819 OFF
Netlist Example
M6 23 16 0 17 MRF150
ND, NG, NS and NB are the drain, gate, source and bulk
(substrate) nodes, respectively. MNAME is the model name.
L and W are the channel length and width, in meters. AD
and AS are the areas of the drain and source diffusions, in
meters2. Note that the suffix U specifies microns (1e-6 m) and
P sq-microns (1e-12 m2). If any of L, W, AD, or AS are not
specified, default values are used. The use of defaults
simplifies input file preparation, as well as the editing
required if device geometries are to be changed. PD and PS
are the perimeters of the drain and source junctions, in
meters. NRD and NRS designate the equivalent number of
squares of the drain and source diffusions; these values
multiply the sheet resistance (RSH) specified in the model
for an accurate representation of the parasitic series drain
and source resistance of each transistor. PD and PS default
to 0.0 while NRD and NRS default to 1.0. OFF indicates an
optional starting condition on the device for DC analysis.
The initial condition specification (optional) using IC=VDS,
VGS, VBS only applies if the UIC option is enabled for the
Transient Analysis, when a transient analysis is desired
starting from other than the quiescent operating point. See
the .IC device for a better and more convenient way to
specify transient initial conditions.
The TEMP value (optional) is the temperature at which this
device is to operate, and overrides the temperature specifica-
tion in the Analog Options dialog. The temperature specifi-
cation is ONLY valid for level 1, 2, 3, and 6 MOSFETs, not for
level 4 or 5 (BSIM) devices.
See Also
N-MOSFET 3T, N-MOSFET 4T, P-MOSFET 3T,
P-MOSFET 4T
General Form
ZXXXXXXX ND NG NS MNAME <AREA> <OFF> <IC=VDS, VGS>
Netlist Example
Z1 3 5 6 ZM2 OFF
Subcircuits
General Form
XYYYYYYY N1 <N2 N3 …> SUBNAM
Netlist Example
XU1 7 5 6 12 3 XLM741
General Form
AXXXXXXX [NPI NGI NI1I <NI2I …>][NPO
+ NI1O <NI2O …> NO1O <NO2O …>] MNAME
Netlist Example
A2 [6 8 4] [7 9 5] 2404B
.NODESET Statement
General Form
.NODESET V(NODNUM)=VAL V(NODNUM)=VAL ...
Netlist Example
.NODESET V(7)=3.33 V(11)=1.5
The Nodeset line helps the program find the dc or initial
transient solution by making a preliminary pass with the
specified nodes held to the given voltages. The restriction is
then released and the iteration continues to the true solu-
tion. The .NODESET line may be necessary for convergence
on bistable or astable circuits. In general, this line should
not be necessary.
See Also
.NODESET
Selecting Shapes
To select single shapes,
1 Choose the Select/Move option in the Element Type
group box.
2 Click the shape in the view window.
OR
Click the description in the Element List.
To select multiple shapes,
1 Select the Select/Move option in the Element Type
group box.
2 Drag a selection rectangle around the desired element
shape in the view window.
OR
Click and drag the cursor in the Element List.
OR
Hold down the Shift key while clicking individual
element shapes in the view window or element descrip-
tions in the Element List.
Figure 16.3. Use the Symbol Pin dialog box to edit pin
names and designations.
Element Definitions
When the pen color on an enclosed element is immediately
followed by an asterisk (for example, LtBlue*), the fill color
will be the same as the pen color, otherwise the fill color
will be the background color.
General Format
[element type][attribute] x1,y1 x2,y2 x3,y3 x4,y4 [pin
numbers]
Line
Attribute pen color
x1,y1 start point of the line
x2,y2 end point of the line
x3,y3 n/a
x4,y4 n/a
Polyline
Attribute pen color
x1,y1 1st point of the polyline
x2,y2 2nd point of the polyline (optional if
+Polyline)
x3,y3 3rd point of the polyline (optional)
x4,y4 4th point of the polyline (optional)
Note A preceding plus sign (+Polyline)
indicates that this is an extension to
the preceding polyline element.
Examples:
Polyline Device -24,-46 42,-22 24,35
or
Polyline Device -51,-54 46,-23 34,42 -53,32
+Polyline Device -53,-19
Polygon
Attribute pen color*
x1,y1 1st point of the polygon
x2,y2 2nd point of the polygon (optional if
+Polygon)
x3,y3 3rd point of the polygon (optional if
+Polygon)
x4,y4 4th point of the polygon (optional)
Note: A preceding plus sign (+Polygon) indicates that this is
an extension to the preceding polygon element.
Example:
Polygon Device -39,12 0,55 -61,75
or
Rect
Attribute pen color*
x1,y1 left top corner of the rectangle
x2,y2 right bottom corner of the rectangle
x3,y3 n/a
x4,y4 n/a
Example:
Rect Device -25,-30 15,28
RRect
Attribute pen color*
x1,y1 left top corner of the rounded
rectangle
x2,y2 right bottom corner of the rounded
rectangle
x3,y3 width and height of ellipse defining
the corners
x4,y4 n/a
Example:
RRect Device -56,-22 11,8 10,10
Ellipse/Circle
Attribute pen color*
x1,y1 left top corner of the defining
rectangle
x2,y2 right bottom corner of the defining
rectangle
x3,y3 n/a
x4,y4 n/a
Example:
Ellipse Device -49,-44 9,33
Text
Attribute text color
x1,y1 bottom center location of text
x2,y2 n/a
x3,y3 n/a
x4,y4 n/a
text string enclosed in single quote marks
(15 characters max.)
Example:
Text Device 0,25 'symbol text'
Figure 16.6. You must specify the Major and Minor Device
Classes under which your macro will be shown in the
Device Selection dialog box.
Figure 16.11. This dialog box lets you select a diode model.
The currently selected model is highlighted in the list. To
select a different model, click it with the mouse, then click
Select (or just double-click on the model). If any subcircuits
are found in the .MOD file, they are indicated by an x as the
first character in the description instead of a p.
To edit or view an existing model,
1 Click on the name of the model you want to edit or
view.
2 Click on the Edit button to display the dialog box
pictured in Figure 16.12.
Data Description
Description Information about the nature of the
device, such as voltage, current, etc.
XLINK The name of the subcircuit to be
referenced. The first letter will always
be the appropriate SPICE character,
followed by the subcircuit name.
| Vertical bar separator. NOTE: There
cannot be a space between the vertical
bar separator and the XLINK or
SUBNAME.
SUBNAME The name of the subcircuit file (*.sub)
where the subcircuit to be referenced
is located. This will include the first 8
characters, not including spaces. Do
not include the .sub extension.
pkg The package name and pin numbers
in appropriate format for export to a
PCB layout program such as
TraxMaker. NOTE: See different .sub
files for examples of this format.
XNEWNAME The new name of the device as seen
in the parts list.
Data Description
MNAME The name of the generic model or
subcircuit, including the appropriate
SPICE prefix character.
Parameter Description
Propagation Delays The time it takes for a signal change
on an input to affect the data on the
output.
Transition Times The rise and fall times of the outputs.
Input Loading The amount of load resistance that
will be applied to the output of the
driving device.
Output Drive The amount of output current
available.
Device Current The amount of current drawn through
the supply pin to ground.
User Defined This parameter does not affect digital
models provided with CircuitMaker.
The edit fields let you enter specific values for certain
parameters. The values take precedence over family specific
values. Under normal conditions they should be left blank.
Parameter Description
GND & PWR These two parameters must be
programmed as a pair (if you set one,
you must also set the other). Setting
these voltages will override any other
power and ground voltages specified
for the selected devices.
VOL & VOH These two parameters will override
the family defaults.
VIL & VIH These two parameters will override
the family defaults.
C H A P T E R 17
Digital SimCode TM
IF (init_sim) THEN
BEGIN //select prop delay, setup, hold, and width times
//MESSAGE("time\t\tPRE\tCLR\tCLK\tDATA\tQ\tQN"); //debug
ts_val= (20n);
th_val= (5n);
trec_val= (5n);
clk_twl= (25n); //not specified - derived from fmax
clk_twh= (25n);
pre_clr_twl= (20n);
DRIVE Q QN = (v0=vol_param,v1=voh_param,ttlh=tt_val,tthl=tt_val);
LOAD PRE_LD DATA_LD CLK_LD CLR_LD =
(v0=vol_param,r0=ril_val,v1=voh_param,r1=rih_val,io=1e9,t=1p);
EXT_TABLE tblIndex
PRE CLR CLK DATA Q QN
0 1 X X H L
1 0 X X L H
0 0 X X H H
1 1 ^ X DATA ~DATA
1 1 X X Q ~Q;
//MESSAGE("%fs\t%d\t%d\t%d\t%d\t%d\t%d",present_time,PRE,CLR,CLK,DATA,Q,QN);
LOAD VCC_LD = (v0=gnd_param,r0=ricc_val,t=1p);
DELAY Q QN =
CASE (TRAN_LH) : tplh_val
CASE (TRAN_HL) : tphl_val
END;
EXIT;
the items in the Spice Data field have the following mean-
ings:
Item Meaning
%D Device Designation
%14bi VCC (pin 14 on the actual package,
declared in Bus Data field)
%7bi GND (pin 7 on the actual package,
declared in Bus Data field)
%1i PRE input (1st pin in Pin Data list)
%2i DATA input (2nd pin in Pin Data list)
Option Information
Analog checkbox Enabled
Label-Value 74LS74
Auto Designation Prefix U
Spice Prefix Character A
Bus Data DVCC=14;DGND=7;
Parameters type:digital
Expression Operations
Use these operators and functions in expressions to
manipulate data and to make comparisons which control
program flow. Expressions are always contained within
parentheses ( ). Operator precedence is from left to right,
starting with the inner most parentheses.
Operators +, -, *, /, ~, !, &&, ||, ^^, &, |, >>, <<, >,
<, =, !=, >=, <=
Expression Functions
Use these functions various expressions.
PARAM_SET Determines if a predefined SimCode
param has been set.
PWL_TABLE Returns value from interpolative
lookup table.
SELECT_VALUE Returns value from simple lookup
table.
MIN_TYP_MAX Returns value from MIN_TYP_MAX
lookup table.
NUMBER Returns number based on binary
weighted pin states.
VALUE Returns state of the specified pin.
CHANGE_TIME Returns time when the specified pin
last changed state.
WIDTH_TIME Returns last pulse width encountered
on specified pin.
INSTANCE Checks to see if this is the specified
device instance.
CHANGED_xx Checks to see if the specified pin has
changed state.
READ_DATA Reads data from an ASCII file into
arrays.
Program Control
Use these statements to control the flow of the program.
# xxxx source Identifies the beginning of the
SimCode source function.
IF ... THEN Conditionally controls flow through
the SimCode.
WHILE ... DO Conditionally controls looping in the
SimCode.
GOTO Jumps to a new location in the
SimCode.
GOSUB Jumps to a subroutine in the SimCode.
RETURN Returns from a subroutine in the
SimCode.
EXIT Terminates SimCode execution.
Output Text
Use these commands to display messages during simulation
and debugging.
PROMPT Pause simulation and display a
message.
MESSAGE Display a message without pausing.
Debug
Use these commands to trace through the execution of the
SimCode for debugging purposes.
STEP_ON Turn on the SimCode trace mode
STEP_OFF Turn off the SimCode trace mode
# xxxx source
Identifies the beginning of the SimCode source function.
General Form
# <func name> source
Parameters
<func name> Name of the SimCode function.
Use
This statement identifies the SimCode function so that it can
be called when it is time to simulate this device. It must be
the first statement of each Digital SimCode device function.
Notes
WXSpice has the ability to read either source code models
or compiled code models. The keyword “source” identifies
this as a source code model to be compiled by WXSpice.
When the simulation is run, the source code model is
compiled and the compiled code is placed in an ASCII text
file called SIMLIST.TXT in the same directory as
WXSPICE.EXE.
Example
//==================================
# MyDevice source
//==================================
INPUTS VCC, GND, IN1, IN2;
OUTPUTS VCC_LD, IN1_LD, IN2_LD, OUT;
.
.
.
EXIT;
CHANGE_TIME
Returns time when the specified pin last changed state.
General Form
CHANGE_TIME(<pin>)
Parameters
<pin> Input or output pin name.
Use
This function returns a real value that indicates the last time
the specified input or output pin changed states.
Example
T1 = (CHANGE_TIME(INA));
CHANGED_xx
Checks if the specified pin has changed state.
General Form
CHANGED_xx(<pin> [{<}|{<=}|{>}|{>=} <var/time/value>])
Parameters
<pin> Input or output pin name.
<var/time/value> Item to which <pin> is compared.
Use
The CHANGED_xx function is used to determine if the
specified <pin> has changed state. The _xx that follows the
keyword CHANGED can be eliminated (to indicate any type
of change) or the xx can be set to:
LH, LX, HL, HX, XL, XH, LZ, ZL, ZH, ZX, HZ or XZ
to indicate a specific type of change. The optional compare
operator (<, <=, >, >=) and <var/time/value> would be
included to check for a more specific change. If they are not
included, the function will return 1 if the pin has changed at
the current simulation step.
Examples
IF (CHANGED_LH(CLK)) THEN ...
IF (CHANGED(DATA < 10n)) THEN ...
DELAY
Sets propagation delay to specified outputs.
General Form 1
DELAY <output> [<output> ...] = <delay>;
General Form 2
DELAY <output> [<output> ...] =
CASE (<conditional exp>) : <delay>
CASE (<conditional exp>) : <delay>
[CASE (<conditional exp>) : <delay> ...]
END;
Parameters
<output> Name of/variable index to the output pin.
<conditional exp> Conditional expression that determines
which delay is used.
<delay> Propagation delay time to the output pin.
Use
The DELAY command is executed once for each pin listed
and posts a propagation delay for each pin that has changed
its level. The CASE option allows more than one <delay> to
be specified. The <conditional exp> then determines which
<delay> will be used. If a delay is set for a pin that has not
changed then the pin will be flagged as NO-CHANGE and
the delay will not be posted. The <delay> can be a real
constant, a real variable or a real expression.
Notes
The DELAY command must be executed exactly once for
each output pin, that is, for each pin declared in the OUT-
PUTS statement which is not listed in the LOAD or
NO_CHANGE statements. The order in which the delays are
set is based on the order in which these pins are listed in the
DELAY command (i.e. first pin listed is set first). Each
<conditional expression> is evaluated in the order it is listed
until one expression evaluates TRUE. When this occurs, the
<delay> value associated with the TRUE expression is
posted for the output being set. When using the CASE
option, at least one <conditional exp> should evaluate as
TRUE for each output pin listed. If no <conditional exp>
evaluates to TRUE, the <delay> associated with the last
CASE statement is posted.
DELAY Q1 Q2 Q3 Q4 = 10n;
DELAY Q QN =
CASE (TRAN_LH) : tplh_val
CASE (TRAN_HL) : tphl_val
END;
DRIVE
Declares drive characteristics of output pins.
General Form
DRIVE <output> [<output> ...] =
(v0=<value> v1=<value> ttlh=<value> tthl=<value>);
Parameters
<output> Name of or variable index to the
output pin.
<value> Real value or variable.
v0 VOL for the output pin.
v1 VOH for the output pin.
ttlh Low-to-high transition time for the
output pin.
tthl High-to-low transition time for the
output pin.
Use
The DRIVE command is used to declare the output pin’s
DRIVE characteristics. When the output is set to a LOW
state, the output pin is connected to voltage value v0
through resistance rol_param. When the output is set to a
HIGH state, the output pin is connected to voltage value v1
through resistance roh_param. The low-to-high transition
time is set by ttlh and the high-to-low transition time is set
by tthl.
Notes
Pin names and variables cannot be mixed in the same DRIVE
statement. References to outputs must be either all pin
names or all variable names.
The values used for rol_param should be derived using the
databook specs for VOL. This value represents the total
saturation resistance of the pull-down structure of the
device’s output. A standard LS output in the LOW state, for
example, sinking 8mA will not exceed 0.5V, typically closer to
0.35V. Therefore:
See Also
LOAD
EVENT
Causes a digital event to be posted.
General Form
EVENT = ({<time>}|{<expression>})
Parameters
<time> Time at which event should occur.
<expression> Expression indicating time at which
event should occur.
Use
In most cases a digital event is posted when one or more
INPUT pins for a simcode model changes state. When the
event is processed, the simcode for the specified event is
called and run. This instruction allows a simcode model to
post a digital event at a specified <time>. If the specified
EVENT time is greater than the simulation time (indicated by
present_time), then a digital event will be posted. If more
than one EVENT is posted in a single call to a simcode
model, only the longest EVENT <time> will be used. This
function allows the creation of one-shots and other similar
device models.
Notes
If a digital event for a specific simcode model occurs before
an EVENT <time> posted by that simcode, the EVENT
<time> must be posted again. For example, if 1) the present
simulation time is 1us, 2) a simcode model sets EVENT = 2us
and 3) an INPUT pin in the simcode model changes state at
1.5us, then the 2us event must be posted again.
Example
EVENT = (present_time + 1e-6); //return in
1us
EXIT
Terminates SimCode execution.
General Form
EXIT;
Use
The EXIT statement is used to terminate SimCode execution.
Notes
This is the last line of a SimCode model, but it may also be
placed at other locations to abort execution of remaining
SimCode.
EXT_TABLE
Sets output logic states based on extended truth table.
General Form
EXT_TABLE <line>
<input pin> [<input pin> ...] <output pin> [<output pin> ...]
<input state> [<input state> ...]
<output state> [<output state> ...];
Parameters
<line> Variable into which the line number
used in the table is placed
<input pin> Name of the input pin
<output pin> Name of the output pin
<input state> State of the individual inputs
<output state> State of the individual outputs based
on input conditions
Use
The EXT_TABLE statement is an extended truth table
function used to set the level and strength of the specified
outputs. Valid input states are:
0 low (input voltage is <= vil_param)
1 high (input voltage is >= vih_param)
^ low-to-high-transition
v high-to-low-transition
X don’t care what input voltage is
Valid output states are:
L ZERO (set output level to vol_param).
H ONE (set output level to voh_param).
Z UNKNOWN (set output level to v3s_param).
FREQUENCY (FMAX)
Tests inputs for minimum and maximum frequency violation.
General Form
FREQUENCY(<input> [<input>...] MIN=<frequency>
MAX=<frequency> ["<message>"])
Parameters
<input> Name of or variable index to the input
pin under test.
MIN Minimum frequency allowed on the
pin under test.
MAX Maximum frequency allowed on the
pin under test.
<message> Text string that will be displayed if a
warning occurs.
Use
The FREQUENCY function compares the <input> period
(the time from one low-to-high edge to the next low-to-high
edge) with the reciprical of the specified <frequency> (1/
freq). If the time period for the <input> is smaller than the
reciprical of the specified MAX<frequency> or the time
period for the <input> is greater than the reciprocal of the
specified MIN<frequency>, then a WARNING will be
displayed. An optional <message> string can be included in
the FREQUENCY statement which will be output if a
WARNING is displayed.
Notes
Databook specifications should be used with this function.
Pin and variable names can be mixed in the same FRE-
QUENCY statement. Only the first FREQUENCY failure for
each pin listed will be reported.
Example
FREQUENCY(CLK MAX=10MEG "CLK"); //check fmax
only
GOSUB
Jumps to a subroutine in the SimCode.
General Form
GOSUB <label>;
Parameters
<label> Location in SimCode where program
flow resumes.
Use
The GOSUB instruction is used to perform non-sequencial
execution of the SimCode. However, unlike the GOTO
statement, SimCode execution will continue on the instruc-
tion following the GOSUB instruction when a RETURN
instruction is encountered in the SimCode being run.
Example
GOSUB Shift_Left;
.
.
.
Exit;
Shift_Left:
.
.
.
RETURN:
See Also
RETURN
GOTO
Jumps to a new location in the SimCode.
General Form
GOTO <label>;
Parameters
<label> Location in SimCode where program flow resumes.
Use
The GOTO instruction is used to perform non-sequencial
execution of the SimCode.
Notes
Program flow resumes from the location where <label>:
appears in the SimCode. <label> must being with an alpha
character, followed by any number of alpha-numeric charac-
ters or the underscore ( _ ) character. Where <label> appears
in the code, it must be followed immediately by a colon ( : ).
Example
GOTO Shutdown;
.
.
.
Shutdown:
.
.
.
Exit;
See Also
GOSUB, IF ... THEN
IF ... THEN
Conditionally controls flow through the SimCode.
General Form 1
IF (<expression>) THEN BEGIN ... [ELSE ...] END;
General Form 2
IF (<expression>) THEN GOTO <label>;
Parameters
<expression> Any expression that can be evaluated as true
or false.
<label> Location in SimCode where program flow
resumes.
Use
The IF ... THEN statement is used to control the flow of the
program, based on whether <expression> evaluates to true
or false. Multiple IF ... THEN statements may be nested.
Notes
When the BEGIN...ELSE...END form of this statement is used
and <expression> evaluates to true, program flow resumes
from the BEGIN statement and skips any optional SimCode
between the ELSE and END statements. If <expression>
See Also
GOTO, WHILE ... DO
INPUTS
Declares input pins (pins that monitor the circuit).
General Form
INPUTS <input pin>[, <input pin>, ...];
Parameters
<input pin> Name of the input pin.
Use
The INPUTS data type is used to define the pins which
monitor stimulus external to the device. These generally
include input, i/o, power and ground pins.
Notes
Input pin names must begin with a letter and be defined
before they are used.
Example
INPUTS VCC, GND, PRE, DATA, CLK, CLR;
See Also
OUTPUTS, IO_PAIRS, PWR_GND_PINS
INSTANCE
Checks if this is the specified device instance.
General Form
INSTANCE("<instance name>")
Parameters
<instance name> Text string indicating instance name.
Use
The INSTANCE function returns 1 if the present instance of
the SimCode device matches the <instance name> specified.
Otherwise it returns 0;
Notes
A circuit may contain more than one of any given device.
During simulation it may be important to know if the device
being simulated at this moment is the one you are interested
in. This would allow you, for example, to print messages for
one specific NAND gate without having to wade through
messages for all the other NAND gates as well. The instance
name is the device Designation preceded by its Spice Prefix
Character (the letter A).
Example
IF (INSTANCE("AU23")) THEN
BEGIN
MESSAGE("U23-Q0 = %d", Q0);
END;
INTEGERS
Declares integer variables and arrays.
General Form
INTEGERS <var>[, <var>, ...];
Parameters
<var> Name of the variable.
Use
The INTEGERS data type is used to define integer variables
and arrays.
Notes
Integer variables and arrays must begin with a letter and be
defined before they are used. Integer arrays are defined by
following the array name with a left bracket ( [ ), an integer
number which defines the size of the array, and a right
bracket ( ] ). Integer arrays can be set and/or used in
expressions.
The following are reserved SimCode integer variables which
do not need to be declared:
The first six variables in this list are expected to have a value
of 1, 2 or 3. These values represent an index into the min/
typ/max arrays:
Value Represent
1 Index to minimum value.
2 Index to typical value.
3 Index to maximum value.
The Digital Model Parameter can be set independently for
each digital device in the Digital Model Parameters dialog
box. If a Spice Option parameter is set in the Analog Options
dialog box, that setting will globally override the Digital
Model Parameter settings for all digital devices. If the
variable is set explicitly in the SimCode, that setting will
override all other settings.
warn_param can be set to any positive value to
condtionally display warning messages for the device.
Different levels of warning could be created by the device
programmer, accessed by entering different positive values.
The value of init_sim is set 1 during SimCode initialization,
otherwise it is set to 0. The value of tran_pin is set to the
index of the pin being set during a DELAY CASE statement.
This index is used to determine which pin the TRAN_xx
instruction is applied to.
Example
INTEGERS tblIndex, count, data[64];
See Also
DELAY, MIN_TYP_MAX
IO_PAIRS
Declares input/output pin associations for input loading.
General Form
IO_PAIRS (<ipin:opin>[, <ipin:opin>, ...]);
Parameters
<ipin:opin> Pin names of associated input and
output pins.
Use
The IO_PAIRS statement defines which of the INPUTS pins
are associated with which of the OUTPUTS pins. This
association is used by the LOAD statement.
Notes
Each physical input pin on a device consists of both an ipin
and an opin in SimCode. The opin is required to provide
input loading characteristics. This statement can only be
used once in the SimCode. Power pins are not listed in the
IO_PAIRS statement.
Example
IO_PAIRS (IN1:IN1_LD, IN2:IN2_LD);
In this example, IN1 and IN2 are INPUTS and IN1_LD and
IN2_LD are OUTPUTS. IN1 and IN1_LD both refer to the
same physical pin on the device.
See Also
INPUTS, OUTPUTS, LOAD
LEVEL
Sets the level of the output state.
General Form 1
LEVEL <output> [<output> ...] = (<expression>);
General Form 2
LEVEL <output> [<output> ...] =
{ZERO}|{ONE}|{UNKNOWN};
Parameters
<output> Name of or variable index to the output.
<expression> Any expression compared to VOL or VOH.
Use
The state of an output pin is determined by its level and its
strength. Use the LEVEL command to set the level of one or
more output pins.
See Also
REALS, STATE, STATE_BIT, STRENGTH
LOAD
Declares loading characteristics of input pins.
General Form
LOAD <output> [<output> ...] =
(v0=<value> r0=<value> [v1=<value>
r1=<value>] [io=<value>] t=<value>);
Parameters
<output> Name of or variable index to the
output pin.
<value> Real value or variable.
v0 Load voltage for HIGH state input.
r0 Load resistance for HIGH state input.
v1 Load voltage for LOW state input.
r1 Load resistance for LOW state input
io Off-state load resistance for unused
load.
t Time delay before the load will be
applied.
Use
The LOAD command is typically used with input or power
pins to provide loading for the driving circuit. Since only
output pins can provide a load, each input must have a
corresponding output. These are assigned using the
IO_PAIRS statement.
If different loads are required for different inputs, multiple
LOAD statements may be used. Power pins should be placed
in a separate LOAD statement which does not include the
v1/r1 load or io. Power pins are not included in the
IO_PAIRS statement. The IO_PAIRS statement must be
entered before any LOAD statements that contain io.
Notes
An input load consists of a voltage and a resistance (v0/r0
or v1/r1). The voltage level of the incoming signal deter-
mines which load will be used. If the voltage level goes
below VIL and remains below VIH, then the input is consid-
ered to be in the LOW state and the v1/r1 is applied. If the
voltage level goes above VIH and remains above VIL, then
the input is considered to be in the HIGH state and the v0/r0
is applied. io is the input state off resistance. The unused
load is essentially removed from the circuit by changing its r
value to the value specified for io.
The values for v0, r0, v1 and r1 can be either real constants
or real variables. The values for io and t must be real
constants. Pin names and pin variables cannot be mixed in
the same LOAD statement. References to outputs must be
either all pin names or all variable names.
For input pins, the values used for r0 should be derived
using the databook specs for IIH. A standard LS input, for
example, will sink a maximum of 20uA at Vin=2.7V. Therefore,
if vol_param = 0.2V, then:
for max HIGH state load: r0 = (Vin - vol_param) / IIHmax
r0 = (2.7V - 0.2V) / 20uA
r0 = 125k ohms
The values used for r1 should be derived using the
databook specs for IIL. A standard LS input, for example,
will source a maximum of 400uA at Vin=0.4V. Therefore, if
voh_param = 4.6V then:
for max LOW state load: r1 = (voh_param - Vin) / IILmax
r1 = (4.6V - 0.4V) / 400uA
r1 = 10.5k ohms
For power pins, the value used for r0 should be derived
using the databook specs for ICC. For a 74LS151, Icc typ is
6mA at Vcc=5V and Icc max is 10mA at Vcc=5.25V. Therefore:
for Icc typ: r0 = 5V / 6mA = 833 ohms
for Icc max: r0 = 5.25V / 10mA = 525 ohms
If creating a multiple-parts-per-package device, such as a
74LS00 quad NAND gate, you should adjust the Icc load for
the individual parts accordingly.
Examples
r0_val = (MIN_TYP_MAX(ld_param: NULL, NULL, 125k);
r1_val = (MIN_TYP_MAX(ld_param: NULL, NULL, 10.5k);
ricc_val = (MIN_TYP_MAX(ld_param: NULL, 833, 525);
LOAD PRE_LD DATA_LD CLK_LD CLR_LD = (v0=vol_param, r0=r0_val,
v1=voh_param, r1=r1_val, io=1e9, t=1p);
LOAD VCC_LD = (v0=gnd_param, r0=ricc_val, t=1p);
See Also
IO_PAIRS, DRIVE
MATH FUNCTIONS
Function Description Example
POW power X= (12 POW(3));
ABS absolute value X= (ABS(-12));
SQRT square-root X= (SQRT(2));
EXP exponent X= (EXP(10));
LOG natural log X= (LOG(0.1));
LOG10 log base 10 X= (LOG10(0.1));
SIN sine X= (SIN(0.1));
COS cosine X= (COS(0.1));
TAN tangent X= (TAN(0.1));
ASIN arc sine X= (ASIN(0.1));
ACOS arc cosine X= (ACOS(0.1));
ATAN arc tangent X= (ATAN(0.1));
HSIN hyperbolic sine X= (HSIN(0.1));
HCOS hyperbolic cosine X= (HCOS(0.1));
HTAN hyperbolic tangent X= (HTAN(0.1));
See Also
OPERATORS
MESSAGE
Displays a message without pausing.
General Form
MESSAGE("<message>"[, <value/pin>...]);
Parameters
<message> Message string including formatting
characters as needed.
<value> Variable or constant value.
<pin> Pin name or index to pin variable.
Use
The MESSAGE statement is used to output the information
specified by the <message> string. It does not interrupt the
simulation. The message is displayed in the XSpice window
during simulation.
Notes
A format string in MESSAGE is similar to a format that may
be used in a printf statement in C. Valid formatting characters
include (but are not limited to):
\t tab
\n new line
\r carraige return
%d Deciaml display for short variable or current input
output state
%D Decimal display for short variable or old input/
output state
%x Hex display for short variable or current input/
output state
%X Hex display for short variable or old input/output
state
%c Character display for short variable or current
input/output state
%C Character display for short variable or old input/
output state
Examples
MESSAGE("time\t\tCLK\tDATA\tQ\tQN");
MESSAGE("device instance= %s",INSTANCE);
MESSAGE("%.3e\t%d\t%d\t%d\t%d",present_time,CLK,DATA,Q,QN);
See Also
PROMPT
MIN_TYP_MAX
Returns value from MIN_TYP_MAX look-up table.
General Form
MIN_TYP_MAX(<index>: <min>, <typ>, <max>);
Parameters
<index> Input variable (index to select min, typ
or max values).
<min> Minimum databook value.
<typ> Typical databook value.
<max> Maximum databook value.
Use
The MIN_TYP_MAX function is similar to the
SELECT_VALUE function except that three (3) values/
variables must be entered. The keyword “NULL” can be
NO_CHANGE
Leaves output state of I/O pins unchanged.
General Form
NO_CHANGE <output> [<output> ...];
Parameters
<output> Name of or variable index to the output pin.
Use
Use the NO_CHANGE function to indicate no-change for
specified output pins. Use this statement on bi-directional
pins when the bi-directional pin is being treated as an input.
Notes
Pin names and variables cannot be mixed in the same
NO_CHANGE statement. References to outputs must be
either all pin names or all variable names.
Example
NO_CHANGE Q1 Q2 Q3 Q4;
NUMBER
Returns number based on binary weighted pin states.
General Form
NUMBER(<MSB pin>, [<pin>, ...] <LSB pin> );
Parameters
<pin> Name of or index to a pin.
Use
The NUMBER function returns a short integer that repre-
sents the decimal value of the binary number represented by
the list of <pin>. Each bit (represented by a <pin>) is set to 1
if the <pin> is non-zero, otherwise it is set to 0.
Notes
The first <pin> in the list represents the most-significant-bit
(MSB) and the last <pin> in the list represents the least-
significant-bit (LSB).
Example
A = (NUMBER(D3,D2,D1,D0));
OPERATORS
Assignment Operator
= Equals (sets a variable or output pin to a value or
state).
Math Operators
+ Add
- Subtract
* Multiply
/ Divide
Unary Operators
~ Logical not
! Bitwise complement
Logical Operators
&& AND
|| OR
^^ XOR
Bitwise Operators
& AND
| OR
^ XOR
<< Shift left
>> Shift right
Relative Comparators
= Equal
!= Not equal
< Less than
<= Less than or equal to
> greater than
>= greater than or equal to
Use
Operators are used to set and manipulate variables and
expressions.
Notes
Expressions must enclosed within parenthases ( ). Expres-
sions are always evaluated from left to right within
parenthases. You should use parenthases to set precedence
within an expression. When using the Unary Operators on
values, variables, expressions, etc. the values, variables,
expressions, etc. must be in parenthases ( ).
Examples
clk_twl = (25n);
reg = (reg + 1);
vx = (vol_param - 10m);
C = (A * B);
val = (xval / 2);
X = (A && ~(B));
Y = (!(X)); //if X=1 then Y=FFFFFFFE
A = (X & 1); //if X=1 then A=1, if X=2 then A=0
B = (X | 8); //if X=1 then B=9, if X=2 then B=10
C = (X >> 2); //if X=1 then C=0, if X=2 then C=0
D = (2 >> X); //if X=1 then D=1, if X=2 then D=0
E = (X << 2); //if X=1 then E=4, if X=2 then E=8
F = (2 << X); //if X=1 then F=4, if X=2 then F=8
IF (A >= B) THEN ...
IF ((A < 2) && (B > 3)) THEN ...
IF ((C < 2) || (X > 4)) THEN ...
See Also
MATH FUNCTIONS
OUTPUTS
Declares output pins (pins that drive or load the circuit).
General Form
OUTPUTS <output pin>[, <output pin>, ...];
Parameters
<output pin> Name of the output pin.
Use
The OUTPUTS data type is used to define the pins which
affect the operation of circuitry external to the device. These
generally include input, output, I/O and power pins. Input
and power pins are included in this list because their
presence contitutes a load on the driving circuitry.
Notes
Output pin names must begin with a letter and be defined
before they are used.
Example
OUTPUTS VCC_LD, PRE_LD, DATA_LD, CLK_LD,
CLR_LD, QN, Q;
See Also
INPUTS, IO_PAIRS, PWR_GND_PINS
PARAM_SET
Determines if a predefined SimCode param has been set.
General Form
PARAM_SET(<param var>)
Parameters
<param var> SimCode model definition parameter.
Use
The PARAM_SET function is used to determine if a param-
eter in the SimCode model definition has been set. It returns
1 if the specified parameter was set (e.g., vil_param=0.8)
otherwise it returns 0.
Notes
See INTEGER and REAL declarations for a list of SimCode
model definition parameters and their associated variable
names.
Example
A = PARAM_SET(ld_param);
IF (PARAM_SET(voh_param)) THEN ...
See Also
INTEGERS, REALS
PROMPT
Pauses simulation and displays a message.
General Form
PROMPT("<message>"[, <value/pin>...]);
Parameters
<message> Message string including formatting
characters as needed.
<value> Variable or constant value.
<pin> Pin name or index to pin variable.
Use
The PROMPT statement is used to stop simulation and
display the information specified by the <message> string.
The message is displayed in the XSpice window during
simulation. The user must click on a button to continue
execution of the SimCode.
Notes
A format string in PROMPT is similar to a format that may be
used in a printf statement in C. Valid formatting characters
include (but are not limited to):
\t tab
\n new line
\r carraige return
%d Deciaml display for short variable or current input/
output state.
%D Decimal display for short variable or old input/
output state.
%x Hex display for short variable or current input/
output state.
%X Hex display for short variable or old input/output
state.
%c Character display for short variable or current
input/output state.
See Also
MESSAGE
PWL_TABLE
Returns value from interpolative look-up table.
General Form
PWL_TABLE (<IN var>:
<IN1>,<OUT1>,<IN2>,<OUT2>[,...<OUTn>,<OUTn>])
Parameters
<IN var> input variable (integer or real)
<INx> input compare value
<OUTx> output value at <INx>
Use
This piece-wise-linear function is essentially a look-up table.
The value of <IN var> is used to look up an entry in the table
which consists of pairs of values. The first value in each pair
is an input compare value and the second value is the
corresponding output value. If the <IN var> value is less
than the first <IN> value the first <OUT> value is returned. If
the <IN var> value is greater than the last <INn> value then
the last <OUTn> value is returned. Linear interpolation is
done between enteries according to the formula:
value = (((OUTA-OUTB)/(INA-INB))*(<IN var>-INA)+OUTA)
where <IN var> falls between the input compare values INA
and INB. The actual output value will fall between output
values OUTA and OUTB.
Notes
Two or more IN/OUT data value pairs must be entered and
the IN values must be entered in assending order. There is
no limit to the maximum number of IN/OUT data pairs that
can be entered.
Example
twh = (PWL_TABLE(var: 5,180n,10,120n,15,80n));
PWR_GND_PINS
Declares power and ground pins; records supply voltage.
General Form
PWR_GND_PINS (<pwrpin>, <gndpin>);
Parameters
<pwrpin> name of the power pin
<gndpin> name of the ground pin
Use
The PWR_GND_PINS statement defines which of the
INPUTS pins are power and ground and sets the Power and
Ground parameters of the device to absolute voltages as
follows:
pwr_param = voltage on <pwrpin>
gnd_param = voltage on <gndpin>
Notes
This statement can only be used once in the SimCode. Only
one pin can be defined for power and one for ground.
Example
PWR_GND_PINS(VCC, GND);
See Also
INPUTS, OUTPUTS, REALS, VIL_VIH_PERCENT,
SUPPLY_MIN_MAX
READ_DATA
Reads data from an ASCII file into arrays.
General Form
READ_DATA(<array>[, <array>, ...])
Parameters
<array> Name of the array into which the
value is placed.
Use
The READ_DATA function opens the file specified by the
“data=” parameter in the device’s .MODEL statement and
reads ASCII text data. The number and type (integer/real) of
the values per line that will be read is based on the number
and type of array variables that are specified in the function
call. The number of data lines read is determined by the
number of data lines in the specified file and/or the size of
the smallest array in the function call. The READ_DATA
function returns the number of lines read. A negative
number is returned if an error is encountered:
-1 Invalid file name
-2 Can’t find file
-3 Invalid array
-4 Illegal array access
-5 Data type
-6 Expected data value
Notes
Multiple values per line in the data file must be seperated by
commas. The real values in the data file must be in scientific
notation. The device’s .MODEL statement which contains
the “data=” parameter must be placed in the device symbol’s
.MOD file.
Example
MYDEVICE.MOD file:
.MODEL AMYDEVICE XSIMCODE(file="{MODEL_PATH}MYDEVICES.SCB"
+ func=MyDevice data="{MODEL_PATH}MYDEVICE.DAT" {mntymx})
MYDEVICE.DAT file:
8, 8E-6
9, 9E-6
10, 1E-5
11, 1.1E-5
MyDevice SimCode:
nlines = READ_DATA(int_array, real_array);
REALS
Declares real variables and arrays.
General Form
REALS <var>[, <var>, ...];
Parameters
<var> name of the variable
Use
The REALS data type is used to define real variables and
arrays.
Notes
Real variables and arrays must begin with a letter and be
defined before they are used. Real arrays are defined by
following the array name with a left bracket ( [ ), an integer
number which defines the size of the array, and a right
bracket ( ] ). Real arrays can be set and/or used in expres-
sions.
See Also
PWR_GND_PIN, VIL_VIH_VALUE, VIL_VIH_PERCENT,
VOL_VOH_MIN
RECOVER
Tests inputs for recovery time violations.
General Form
RECOVER(<clk input> = {LH}|{HL} <mr input> [<mr input> ...]
{TREC=<time>}|{TRECL=<time> TRECH=<time>} ["<message>"]);
Parameters
<clk input> Name of or index to the input clock/
reference pin under test
<mr input> Name of or index to the input set/reset
pin under test.
TREC Recovery time for both low and high
going <mr pin>.
TRECL Recovery time for low going <mr pin>.
TRECH Recovery time for high going <mr
pin>.
<message> Text string that will be displayed if a
warning occurs.
Use
The RECOVER function compares the time difference
between a level change (LH or HL) on the <clk input> and a
level change on the <mr input> to a specified test time.
RECOVER test times are specified jointly using
TREC=<time> (which sets TRECL and TRECH to the same
value) or individually using TRECL=<time> and
TRECH=<time>. If the compare time is less than the speci-
fied <time> a warning will be displayed during simulation.
An optional <message> string can be included in the
RECOVER statement which will be output if a warning is
displayed.
Notes
Databook specifications should be used with this function.
TRECL=<time> and TRECH=<time> can be entered in the
same RECOVER test. The RECOVER test will be made only
if the state of the <mr input> matches the time parameter
(TRECL=LOW, TRECH=HIGH) when the <clk input> makes
the specified transition (LH or HL). For example, if <clk
input> = LH and TRECL is specified then the <mr input>
must be LOW when the <clk input> goes from LOW to
HIGH for a RECOVER test to be made. Pin names and
variables can be mixed in the same RECOVER statement.
Example
RECOVER(CLK=LH PRE CLR TREC=trec_val
"CLK->PRE or CLR");
RETURN
Returns from a subroutine in the SimCode
General Form
RETURN;
Use
The RETURN instruction is used to return program flow to
the instruction that followed the last GOSUB instruction.
See Also
GOSUB
SELECT_VALUE
Returns value from simple look-up table.
General Form
SELECT_VALUE (<index>: <val/pin/var>,
<val/pin/var>[,<val/pin/var>,...]);
Parameters
<index> input variable (index to <val/pin/var>)
<val/pin/var> output value, pin or variable
Use
The SELECT_VALUE function returns the value of the
number or variable indicated by the value of the index
variable.
Notes
The number of values and/or variables used is not limited.
Example
A = (SELECT_VALUE(B: 16, 8, 4, 2, 1));
In this example, if B = 2 then A = 8 (the 2nd value).
See Also
PWL_TABLE, MIN_TYP_MAX
SETUP_HOLD
Tests inputs for setup and hold time violations
General Form
SETUP_HOLD(<clk input> = {LH}|{HL}
<data input> [<data input> ...]
{TS=<time>}|{TSL=<time> TSH=<time>}
{TH=<time>}|{THL=<time> THH=<time>} ["<message>"];
Parameters
<clk input> Name of or index to the input clock/
reference pin under test.
<data input> Name of or index to the input data pin
under test.
TS Setup time for both low and high
going <data input>.
TSL Setup time for low going <data
input>.
TSH Setup time for high going <data
input>.
TH Hold time for both low and high going
<data input>.
THL Hold time for high going <data
input>.
THH Hold time for low going <data input>.
<message> Text string that will be displayed if a
warning occurs.
Use
The SETUP_HOLD function compares the time difference
between a level change (LH or HL) on the <clk input> and a
level change on the <data input> to a specified test time.
SETUP test times are specified jointly using TS=<time>
(which sets TSL and TSH to the same value) or individually
using TSL=<time> and TSH=<time>. HOLD test times are
specified jointly using TH=<time> (which sets THL and
THH to the same value) or individually using THL=<time>
and THH=<time>. If the compare time is less than the
specified <time> a WARNING will be displayed. An optional
<message> string can be included in a SETUP_HOLD
statement which will be output if a WARNING is displayed.
Notes
Databook specifications should be used with this function.
TSL=<time>, TSH=<time>, THL=<time> and THH=<time>
can be entered in the same SETUP_HOLD statement. The
SETUP and/or HOLD test will be made only if the state of the
<data input> matches the time parameter (TSL or THL=LOW,
TSH or THH=HIGH) when the <clk input> makes the
specified transition (LH or HL). For example, if <clk
input>=LH and TSL is specified, then the <data input> must
be LOW when the <clk input> goes from LOW to HIGH for a
SETUP test to be made. Pin names and variables can can be
mixed in the same SETUP_HOLD statement.
Example
SETUP_HOLD(CLK=LH DATA Ts=ts_val Th=th_val
"CLK->DATA");
STATE
Sets outputs to the declared logic state.
General Form 1
STATE <output> [<output>...] = (<expression>);
General Form 2
STATE <output> [<output>...] =
{ZERO}|{ONE}|{UNKNOWN};
Parameters
<output> Name of or variable index to the
output pin.
<expression> Any expression to be compared to
VIL or VIH.
Use
The state of an output pin is determined by its level and its
strength. The STATE command sets the level and strength
for one or more output pins or variables. If <expression> is
less than or equal to vil_param, the output will be set to
ZERO. If <expression> is greater than or equal to vih_param,
the output will be set to ONE. Otherwise, the output will be
set to UNKNOWN. The level and strength values are set
according the the state:
STATE Q = ONE;
STATE Q1 Q2 Q3 Q4 = ZERO;
STATE OUT = ((1+2)/3);
STATE_BIT
Sets outputs to binary weighted logic states.
General Form
STATE_BIT <output> [<output> ...] = (<expression>) ;
Parameters
<output> name of or variable index to the output pin
<expression> any expression which can be bitwise
matched with the listed outputs
Use
The state of an output pin is determined by its level and its
strength. The STATE_BIT command is used to set the level
and strength for one or more output pins based on the value
of the <expression>. The state of the first pin listed is set
according to the first (least-significant-bit) of the
expression's value, the state of the second pin listed is set
according to second bit of the expression's value, and so on.
The level and strength values are set by the bit's value:
Bit Value State Level Strength
0 ZERO vol_param rol_param
1 ONE voh_param roh_param
Notes
Output pins can be specified by using the output pin name
or by an integer variable that contains the index of an output
pin. Pin and variable names cannot be mixed in the same
STATE_BIT statement. References to outputs must be either
all pin names or all variable names. The maximum number of
output pins/vars is limited to 16.
Example
STATE_BIT Q1 Q2 Q3 Q4 = (internal_reg);
STEP_OFF
Turns off the SimCode trace mode.
General Form
STEP_OFF
Use
The STEP_OFF statement turns off the SimCode TRACE
mode.
See Also
STEP_ON
STEP_ON
Turns on the SimCode trace mode.
General Form
STEP_ON
Use
The STEP_ON statement turns on the SimCode TRACE
mode. This causes the SimCode to display the Program
Counter (PC) number and each SimCode instruction before it
is executed.
See Also
STEP_OFF
STRENGTH
Sets the strength of the output state.
General Form 1
STRENGTH <output> [<output> ...] = (<expression>);
General Form 2
STRENGTH <output> [<output> ...] = {STRONG}|{HI_IMPEDANCE};
Parameters
<output> Name of or variable index to the
output pin.
<expression> Any expression to be used directly as
a strength.
Use
The state of an output pin is determined by its level and its
strength. Use the STRENGTH command to set the strength
of one or more output pins.
Value State Strength
STRONG ZERO rol_param
STRONG ONE roh_param
HI_IMPEDANCE N/A r3s_param
<expression> N/A <expression>
Notes
Output pins can be specified by using the output pin name
or by an integer variable the contains the index of an output
pin. Pin and variable names cannot be mixed in the same
STATE statement. References to outputs must be either all
pin names or all variable names.
See Also
REALS, STATE, STATE_BIT, LEVEL
SUPPLY_MIN_MAX
Tests supply pins for min and max supply voltage violations.
General Form
SUPPLY_MIN_MAX(<min value>, <max value>);
Parameters
<min value> Minimum recommended power supply
voltage.
<max value> Maximum recommended power
supply voltage.
Use
The SUPPLY_MIN_MAX function checks the voltage
difference between the power and ground pins defined in
PWR_GND_PINS. If the “WARN flag” is set in the Digital
Model Parameters dialog box and the voltage difference
(pwr_param - gnd_param) is less than <min value> or
greater than <max value> a warning will be displayed during
simulation.
Notes
Databook specifications should be used with this function.
PWR_GND_PINS must be defined to use this function.
Example
SUPPLY_MIN_MAX(4.75, 5.25);
See Also
INTEGERS, PWR_GND_PINS
TABLE
Sets output logic states based on truth table.
General Form
TABLE <line>
<input> [<input> ...] <output pin> [<output pin> ...]
<input state> [<input state> ...] <output state> [<output state> ...];
Parameters
<line> Variable into which the line number
used in the table is placed.
<input> Name of the input pin or variable
index to the input pin.
<output pin> Name of the output pin.
<input state> State of the individual inputs.
<output state> State of the individual outputs based
on input conditions.
Use
The TABLE statement operates like a truth table to set the
level and strength of the specified outputs. Valid input states
are:
0 low (input voltage is <= vil_param).
1 high (input voltage is >= vih_param).
X don’t care what input voltage is.
Valid output states are:
L ZERO (set output level to vol_param)
H ONE (set output level to voh_param).
Z UNKNOWN (set output level to
v3s_param).
Output state letters can be followed by a colon and a letter
to indicate strength:
s STRONG (set output to rol_param for
L and roh_param for H).
z HI_IMPEDANCE (set output to
r3s_param).
VALUE
Returns the value of the specified pin.
General Form
VALUE(<pin>)
Parameters
<pin> Name of or index to a pin.
Use
The VALUE function returns a real number that indicates the
voltage level of the specified pin.
Example
v = (VALUE(D3));
VIL_VIH_PERCENT
Sets VIL and VIH values to a percentage of supply voltage.
General Form
VIL_VIH_PERCENT (<vil %>, <vih %>);
Parameters
<vil %> Percentage of the suppy voltage
which defines vil.
<vih %> Percentage of the suppy voltage
which defines vih.
Use
VIL and VIH do not use a min/typ/max array to select their
values, but must be declared explicitly for each digital
device. The VIL_VIH_PERCENT statement sets the VIL and
VIH parameters of the device to a percentage of the supply
voltage as follows:
vil_param = (pwr_param - gnd_param) * <vil %>
vih_param = (pwr_param - gnd_param) * <vih %>
Notes
PWR_GND_PINS must be defined to use this function. The
% values must be greater than 0 and less than 100. The
vil_param and vih_param values set by
VIL_VIH_PERCENT are overridden by any values set for
“VIL value” and “VIH value” in the Digital Model Parameters
dialog box.
Example
VIL_VIH_PERCENT(33, 67);
See Also
REALS, PWR_GND_PINS, VIL_VIH_VALUE
VIL_VIH_VALUE
Sets absolute VIL and VIH values.
General Form
VIL_VIH_VALUE (<vil>, <vih>);
Parameters
<vil> Absolute voltage level which defines vil.
<vih> Absolute voltage level which defines vih.
Use
VIL and VIH do not use a min/typ/max array to select their
values, but must be declared explicitly for each digital
device. The VIL_VIH_VALUE statement sets the VIL and
VIH parameters of the device to absolute voltages as
follows:
vil_param = <vil>
vih_param = <vih>
Notes
In order to more accurately model the actual switching
characteristics of a digital input, VIL and VIH are not
generally set to their specified databook values. The
exception is the case of devices with a specified hysteresis
such as the 74LS14. Typically, the hysteresis of a digital
device is small, in the order of 100mV, but never 0V.
The vil_param and vih_param values set by
VIL_VIH_VALUE are overridden by any values set for “VIL
value” and “VIH value” in the Digital Model Parameters
dialog box.
Example
VIL_VIH_VALUE(1.25, 1.35);
See Also
REALS, VIL_VIH_PERCENT
VOL_VOH_MIN
Sets VOH and VOL relative to power and ground.
General Form
VOL_VOH_MIN (<vol offset>, <voh offset>, <min voh-vol>);
Parameters
<vol offset> Voltage offset which must be applied
to ground pin voltage to get vol.
<voh offset> Voltage offset which must be applied
to power pin voltage to get voh.
<min voh-vol> Minimum allowed difference between
voh and vol.
Use
VOL and VOH do not use a min/typ/max array to select their
values, but must be declared explicitly for each digital
device. The VOL_VOH_MIN statement sets the VOL and
VOH parameters of the device as follows:
vol_param = gnd_param + <vol offset>
voh_param = pwr_param + <voh offset>
Notes
In order to more accurately model the actual characteristics
of a digital output, VOH is not generally set to its specified
databook value. The reason for this deviation is that
databook values for VOH are specified for maximum IOH
load. In digital SimCode, VOL and VOH represent an
unloaded output voltage.
PWR_GND_PINS must be defined to use this function. The
vol_param and voh_param values set by VOL_VOH_MIN
are overridden by any values set for “VOL value” and “VOH
value” in the Digital Model Parameters dialog box. These are
offset values rather than absolute voltages. The <voh
offset> is negative so that when added to pwr_param, the
resulting VOH will not be greater than pwr_param. If the
difference between the resulting vol_param and voh_param
is less than <min voh-vol>, then vol_param will be set to the
value of gnd_param and voh_param will be set to
gnd_param + <min voh-vol>.
Example
VOL_VOH_MIN(0.2, -0.4, 0.1);
In this example:
1 If gnd_param = 0V and pwr_param = 5.0V, then
vol_param = 0.2V and voh_param = 4.6V
WHILE ... DO
Conditionally controls looping in the SimCode.
General Form
WHILE (<expression>) DO BEGIN ... END;
Parameters
<expression> Any expression that can be evaluated as
true or false
Use
The WHILE ... DO statement is used to loop through a
section of SimCode until <expression> evaluates to false.
Notes
Program flow will remain in a loop between the BEGIN and
END statements until <expression> evaluates to false, then
program flow resumes after the END statement.
Examples
i = 1;
WHILE (i <= 5) DO
BEGIN
data[i] = data[i + 1];
i = i + 1;
END;
See Also
IF ... THEN
WIDTH
Tests inputs for minimum pulse width violations.
General Form
WIDTH(<input> [<input>...]
{TWL=<time>}|{TWH=<time>} ["<message>"];
Parameters
<input> Name of or variable index to the input
pin under test.
TWL Width of a low going pulse.
TWH Width of a high going pulse.
<message> Text string that will be displayed if a
warning occurs.
Use
The WIDTH function compares the pulse width on each
<ipin> to the specified test WIDTH times. A low level test
time is specified using TWL=<time> while a high level test
time is specified using TWH=<time>. If the compare time is
less than the specified <time> a WARNING will be dis-
played. An optional <message> string can be included in the
WIDTH statement which will be output if a WARNING is
displayed.
Notes
Databook specifications should be used with this function.
The input pins can be input pin names and/or integer
variables that contain an index value to an input pin. Pin
names and variables can be mixed in the same WIDTH
statement.
Examples
WIDTH(CLK TWL=clk_twl TWH=clk_twh "CLK");
WIDTH(PRE CLR TWL= pre_clr_twl "PRE or CLR");
WIDTH_TIME
Returns last pulse width encountered on specified pin.
General Form
WIDTH_TIME(<input>)
Parameters
<input> Name of or index to an input pin.
Use
This function returns a real value that indicates the last
pulse width encountered on the specified <input>.
Example
PW = (WIDTH_TIME(CP2));
Index - 383
Impedance Plot 6-41 ASCIIOUTPUT 6-46, 6-47
in fault simulations 8-8 ASIN 17-34
Monte Carlo 6-36 Assigning new HotKeys 4-9
Noise 6-32 Assignment operator 17-40
Parameter Sweep 6-26 ATAN 17-12, 17-34
setting up 6-18 Auto designation prefix 17-9
setting up (tutorial) 3-16 Auto Refresh 12-1
Sweep Trace Labels 6-28 Auto Repeat 4-12, 12-1
Temperature Sweep 6-35 Auto Wire Routing 4-14, 9-7
Transfer Function 6-30 AUTOPARTIAL 15-10
Transient 6-23 Autoplacement
tutorial 3-7 controlling from CircuitMaker 7-14
Analog only devices 5-2, 6-2, 17-9
analog check box 6-3 B
editing 4-25 Background
showing 4-8 changing color of 13-1
Analog simulation Background, required user 1-1
definition 6-1 BADMOS3 15-8
running 6-11 BEGIN 17-6, 17-25, 17-64
tools 6-3 Bill of Materials
using Digital Simcode devices 3-20 excluding from 4-31
Analog/Digital devices 5-2, 6-2 exporting 7-1
Analog/SPICE variables Binary output 6-47
setting up 6-47 Bitwise operators 17-40
Analysis Probe Name (%[) 4-30 BJTs 15-25
Analysis Windows Black Box 11-3
displaying waveforms 6-12 Board size 7-14
using 6-11 Bode plotter 6-20
Angle of bus connection wire Boolean expressions 15-8, 15-21
changing 4-19 BOOLH 15-8, 15-21
Arcs BOOLL 15-8, 15-21
drawing in Symbol Editor 16-4 BOOLT 15-8, 15-21
element definition 16-13 Breakpoints 5-8, 5-9
Arrow Tool Breaks on page
activating 4-2 moving 12-3
Arrow/Wire option 12-2 showing 12-3
flipping switches 4-2 Browsing devices 4-7
moving items 4-2 Bus connection wires 4-18
selecting 4-2 changing angle 4-19
selecting items with 4-2 show bus labels 4-19
selecting other tools 4-2 specifying number for 4-18
using 4-2 wiring together by number 4-19
wiring with 12-2
Index - 384
Bus Data 4-26, 4-29, 6-6, 17-8 installing 1-2
editing 4-26 introduction 1-1
terminal devices 4-20 preferences 2-8
Bus Data (%B) 4-29 required user background 1-1
Bus labels simulation windows 2-2
showing 12-3 starting 2-1
Bus wires 10-6 task overview 2-4
changing color of 13-1 updating from previous version 1-3
cutting 4-18 what is? 1-1
extending 4-18 windows 2-2
joining 4-18 workspace 2-1
showing bus labels 4-19 CircuitMaker files
specifying number for 4-18 .CKT 2-3
working with 4-17 .DAT 2-3
Buttons on Toolbar .LIB 2-3
introduction 2-4 .MOD 2-3
BYPASS 15-9 .SRP 2-3
Bypass capacitors 6-7 .SUB 2-3
CircuitMaker to TraxMaker 7-13
C Circuits
Cadnetix PCB format 7-11 analysis (tutorial) 3-8
Calay 90 PCB format 7-11 changing background color 13-1
Calay PCB format 7-11 changing labels of 4-21
Calling Technical Support 1-8 creating macro 16-19
Capacitors 15-14 drawing 4-1
Cascade Windows 13-3 drawing (tutorial) 3-1
CASE 17-7, 17-16 exporting as graphics 4-34, 7-8
CHANGE_TIME 17-12, 17-15 labeling 4-21
CHANGED_xx 17-12, 17-15, 17-17 simulating (tutorial) 3-8
Changing simulating analog/mixed-signal 6-1
device labels 4-21 simulating digital 5-1
waveform order 5-7 wiring 4-14
Check Pin Connections 14-1 wiring (tutorial) 3-5
CHGTOL 15-6 Closing
Circles a .CKT file 2-9
drawing in Symbol Editor 16-4 Close command 9-2
Circuit Display Data 12-4 Colors 5-2
Circuit faults 8-4 changing 13-1
managing 8-6 text 4-2
CircuitMaker Compiling Simcode 17-4
conventions 2-3 Component noise
drawing window 2-2 measuring 6-32
files 2-3
Index - 385
Connecting user external clock 5-11
connection area 9-7 DC Analysis (DC Sweep)
connectivity (definition) 2-2 running 6-19
single click 9-6 setting up 6-19
Connectors troubleshooting failures 15-3
input 4-19 tutorial 3-16
output 4-19 warnings 15-3
wiring with 4-19 Debug 17-13
CONVABSSTEP 15-10 DEFAD 15-6
Conventions DEFAS 15-6
CircuitMaker 2-3 Default Font 9-5
User Manual 1-9 Default Test Points
Convert ASCII Library 11-7 description 6-8
CONVLIMIT 15-10 Defaults 9-4
CONVSTEP 15-10 restoring 2-8
Copying DEFL 15-6
circuits 10-2 DEFW 15-6
Copy command 10-1 DELAY 17-6, 17-7, 17-11, 17-16
disable for instruction 8-7 Delete Macro 11-5
waveforms 10-2 Delete Tool
Copyright ii activating 4-2
COS 17-12, 17-34 cutting or dividing wire 4-3
Coupled (mutual) inductors 15-16 deleting items 4-2
Current sources 15-17 deleting wires 4-2
Current-controlled disabling for instruction 8-7
current sources 15-20 using 4-2
switches 15-17 using (tutorial) 3-10
voltage sources 15-20 Deleting
CURRENTMNS 15-11, 17-37 items 10-2
CURRENTMXS 15-11, 17-38 shapes and elements 16-6
Cursors 6-15 tutorial 3-10
Curve tracer 6-19 with Delete key 4-3
Cut 10-1 with Delete Tool 4-2
disabling for instruction 8-7 Dependent sources 15-21
Cutting wires 4-3, 4-16 Description
in spice data string (%I) 4-29
D label 4-24
Dashed lines Designation 4-23, 4-29, 10-5
drawing with the Wire Tool 4-2 changing (tutorial) 3-14
Data Sequencer 5-11, 10-9 device designations 12-1
selecting 3-21 in spice data string (%D) 4-29
start address 5-11 prefix 4-24
stop address 5-11 renumbering new device 12-1
Index - 386
Device Dependent Bitmap 7-7 symbol 3-3
Device Display Data 12-4 DGND 6-6, 6-48
Device faults 8-3, 8-4 Digital
adding 8-3 digital options 5-7
enabling 8-3 model parameters 17-49
label-value 8-3 options for fault simulation 8-8
Device Independent Bitmap 7-7 SimCode devices 17-1
Device library 4-7 SimCode example 17-4
and fault simulations 8-8 SimCode language 17-1
using (tutorial) 3-1 Digital devices
Device replacement editing 4-25
disabling for instruction 8-7 showing 4-8
fault simulations 8-7 Digital instruments
Device Symbol 4-8 data sequencer 5-11
Device/Plot Font 9-5 pattern editor 5-12
DEVICEDB.DAT file 9-8 pulser 5-10
Devices Digital logic simulation
analog only 5-2, 6-2 debugging with Trace feature 5-5
analog/digital 5-2, 6-2 definition 5-1
browsing 4-7 digital options 5-8
changing color of 13-1 measuring wire states 5-4
changing labels of 4-21 observing operation of circuit 5-5
creating macro 16-19 opening/closing waveforms 5-5
creating new 16-1 performing 5-2
creating symbols 16-2 resetting the simulation 5-3
designation 4-23 running 5-4
digital only 5-2, 6-2 Step button 5-4
editing 4-22 stopping 5-4
elementary SPICE 15-13 tutorial 3-6
expanding macro 16-17 types of devices permitted in 5-2
filtering list of 4-8 using the Digital/Analog button 5-3
flipping 4-4 using Trace feature 5-2
moving when wires connected 4-17 what is? 5-1
naming 4-22 Digital model parameters
nudging 4-13 editing 16-40
placing 4-12 Digital only devices 5-2, 6-2
renumbering designations of 12-1 Digital options 5-8
repeating placed 12-1 breakpoint 5-8
rotating in 90 degree increments 4-3 conditions 5-8
schematic symbol only 5-2, 6-2 setting up breakpoints 5-9
searching for 4-10 simulation speed 5-8
selecting from library 4-7 step size 5-8
selecting in schematic 4-12 x magnification 5-8
Digital Oscilloscope 6-23
Index - 387
Digital SimCode devices 15-28 Copy Circuit 10-2
using in analog simulation mode 3-20 Copy Waveforms 10-2
Digital/Analog Button 6-4 Cut 10-1
activating 5-3 Delete Items 10-2
toggling 5-3 Duplicate 10-2
using 5-3 Edit Bus Connection 10-6
using (tutorial) 3-8 Edit Bus Wire Number 10-7
Diodes 15-24 Edit Data Sequencer 10-9
DIP packages Edit Device Data 10-7
adding in Symbol Editor 16-7 Edit Digital Params 10-7
Directories and Files 9-8 Edit Input/Output 10-9
Disclaimer iv Edit Multimeter 10-9
Display data of circuit Edit PROM/RAM 10-8
showing 12-4 Edit Pulser 10-8
Display hints 8-5, 8-7, 8-9 Edit Run-Time Test Point 10-7
Display Variable Names 6-14, 14-2 Edit Scope/Probe Name 10-10
Displaying waveforms 6-12 Edit Signal Generator 10-10
Dividing a wire 4-3 Edit/Select Spice Model 10-7
Dots Font 10-11
changing color of 13-1 Group Items 10-10
showing pin 12-3 Move 10-1
Drawing a schematic 3-1 Paste 10-1
DRIVE 17-5, 17-11 Place Selected Label(s) 10-4
Drive capacity 15-11, 15-12, 17-28 Rotate 90 10-3
DRIVEMNS 15-11, 17-37 Select All 10-3
DRIVEMXS 15-11, 17-37 Set Auto Designation 10-5
drv_param 17-6, 17-28, 17-37 Set Prop Delay(s) 10-4
DRVMNTYMX 15-12 Straighten Selected Wire(s) 10-4
Duplicate 10-2 Undo 10-1
DVCC 6-6, 6-48 Edit Multimeter 10-9
DVDD 6-6, 6-48 Edit PROM/RAM 10-8
Edit Pulser 10-8
E Edit Scope/Probe Name 10-10
Edit Buffer Edit Selected Item 10-6
in Symbol Editor 16-9 Edit Signal Generator 10-10
using 16-10 Editing
Edit Bus Connection 10-6 digital model parameters 16-40
Edit Bus Wire Number 10-7 macros 11-1
Edit Data Sequencer 10-9 pin information 16-8
Edit device data 4-22, 17-8 SPICE models in CircuitMaker 16-22
Edit Input/Output 10-9 SPICE models with text editor 16-21
Edit menu SPICE subcircuits 16-27
Copy 10-1 symbols 16-3
Editing devices 4-22
Index - 388
analog 4-25 Exclusive Test Points
bus data 4-26 placing 6-8
description 4-24 placing multiple 6-9
designation 4-23 removing 6-9
device name 4-22 EXIT 17-5, 17-7, 17-13
digital 4-25 EXP 17-12, 17-34
label-value 4-23 Expand Macro 11-2, 11-5
package 4-24 Expanding macro devices 16-17
parameters 4-26 Exponential Data
spice data 4-28 editing 6-56
Element definitions 16-10 Export Options
Arc 16-13 setting up 7-7
circle 16-12 Exporting
ellipse 16-12 Bill of Materials 7-1
line 16-10 circuits as graphics 4-34, 7-8
PinDown 16-13 entire circuit 4-33
PinDown~ 16-13 PCB netlist 7-10
PinLeft 16-13 SPICE netlist 7-9
PinLeft~ 16-13 SPICE subcircuit 7-9
PinRight 16-13 TraxMaker PCB netlist 7-13
PinRight~ 16-13 waveforms as graphics 7-8
PinUp 16-13 EXT_TABLE 17-5, 17-7, 17-11, 17-21
PinUp~ 16-13 Extending wires 4-16
polygon 16-11
polyline 16-11 F
rect 16-12 Factory defaults
rrect 16-12 restoring 2-8
Text 16-13 Failures
Element List DC Analysis (DC Sweep) 15-3
in Symbol Editor 16-9 of Operating Point Analysis 15-2
Elementary devices Transient Analysis 15-4
of SPICE 15-13 Faults 4-33, 8-1
Ellipses managing circuit 8-6
drawing in Symbol Editor 16-4 password protecting 8-10
element definition 16-12 FETs 15-25
ELSE 17-25 File management
END 17-7, 17-25, 17-64 .CKT files 2-9
Enlarging the circuit 4-3 File menu
Errors 6-46, 7-11 Close 9-2
EVENT 17-11 Merge 9-1
Example of using SPICE data 4-30 New 9-1
Exclude from Bill of Materials 4-31 Open 9-1
Exclude from PCB 4-31 Preferences 9-4
Index - 389
Print Circuit 9-4 changing color of 13-1
Print Setup 9-3 in Symbol Editor 16-3
Print Waveforms 9-4 snap to 4-4, 12-5
Reopen 9-1 turning on or off 4-4, 12-5
Revert 9-2 Ground 4-27
Save 9-2 selecting (tutorial) 3-4
Save As 9-2 Ground and Vcc 6-6
Files Group Items 10-10
introduction to CircuitMaker 2-3 Groups of items
Filtering devices by name 4-8 selecting 4-12
Find and Select 10-3
Finding devices 4-10 H
Fit Circuit To Window 13-3 Hardware keys, installing 1-2
using (tutorial) 3-18 HCOS 17-12, 17-34
Fit to Page 9-4 HI_IMPEDANCE 17-57
Flipping a device 4-4 HIGH 8-1, 8-9
FM Signal 6-54, 6-55 High
Fonts 10-11 changing color of 13-1
changing 4-2 Hints 8-4, 8-7, 8-8
default 9-5 hide from students 8-7
device/plot 9-5 HOTKEYDB.DAT file 9-8
Fourier Analysis HotKeys 4-9
running 6-29 assigning 4-9
setting defaults 6-24 introduction 2-7
setting up 6-29 reassigning 4-10
FREQUENCY (FMAX) 17-11, 17-23 unassigning 4-10
G using to select a device (tutorial) 3-2
HSIN 17-12, 17-34
GaAsFETs 15-27 HTAN 17-12, 17-34
Gates
changing color of 13-1 I
Gaussian distribution 6-37 I->I Source 15-20
Gear Integration 6-48, 15-4 I->Switch 15-17
GMIN 15-3, 15-6 I->V Source 15-20
GMINSTEP 15-9 I/O Pins 17-39
GND 6-6 i_param 17-7, 17-28, 17-37
gnd_param 17-49 Icc 17-33
GOSUB 17-13, 17-24 IF ... THEN 4-16, 17-5, 17-6, 17-13, 17-25
GOTO 17-13, 17-24, 17-25 IMNTYMX 15-12, 17-28
Graphics Impedance Plot Analysis
exporting circuits as 4-34, 7-8 running 6-41
exporting waveforms as 7-8 setting up 6-41
Grid 4-4, 12-5
Index - 390
Importing J
and simulating SPICE netlist 9-2
Metafile devices 16-7 JFETs 15-25
Include File (%=path\filename.ext) 4-29 Joining wires 4-16
Independent sources 15-17 Junction diodes 15-24
Inductors 15-15
init_sim 17-28
K
Initial conditions 6-24, 15-3 Keep out layer
Input 10-9 controlling from CircuitMaker 7-14
Input loading 15-10, 15-12, 17-28 KEEPOPINFO 15-8
Input noise Key cap
measuring 6-32 changing color of 13-1
INPUTS 17-4, 17-5, 17-6, 17-8, 17-26 Keys
Installing HotKeys 2-7
Circuitmaker 1-2 shortcut 2-7
hardware (hw) keys 1-2
multi-user projects 1-6 L
INSTANCE 17-12, 17-27
Instrument Label (%L) 4-28
changing color of 13-1 Label-Value 4-28, 17-9
INTEGERS 17-6, 17-10, 17-28 changing 4-23
Integration method 6-48 changing (tutorial) 3-14
Internal high/low 8-4 changing for resistor (tutorial) 3-5
Interpolative look-up table 17-45 changing for transistor (tutorial) 3-5
io 17-7, 17-32 of device faults 8-3
IO_PAIRS 17-6, 17-10, 17-30, 17-32 Labeling circuits
Items changing labels 4-21
changing color of all 13-1 with text tool 4-21
grouping 10-10 Labels, Bus
selecting 4-12 showing 12-3
selecting all 4-13 Lamp
selecting groups of 4-12 changing color of 13-1
selecting multiple 4-12 LCC packages
ITL1 15-3, 15-6 adding in Symbol Editor 16-7
ITL2 15-3, 15-6 ld_param 17-6, 17-28, 17-37
ITL3 15-6 LDMNTYMX 15-12, 17-28
ITL4 15-4, 15-7 LED
ITL5 15-7 changing color of 13-1
LEVEL 17-11, 17-31
Library of devices
selecting from 3-2, 4-7
License Agreement iii
Lines
Index - 391
drawing in Symbol Editor 16-4 saving 11-2, 11-4
element definitions 16-10 Macros menu
Linking files 11-6, 17-2 Convert ASCII Library... 11-7
model and subcircuit 16-32 Expand Macro 11-2
LIST 15-9 Macro Copier 11-6
Listing devices 4-7 Macro Lock 11-3
LOAD 17-5, 17-7, 17-11, 17-30, 17-32 Macro Utilities 11-4
Loading 15-10, 15-12, 17-28 Save ASCII Library... 11-7
LOADMNS 15-10, 17-37 Save macro 11-4
LOADMXS 15-11, 17-37 Update Search List 11-8
Locking macros 11-3 Magnifying the circuit 4-3
LOG 17-12, 17-34 Major Device Class 3-2, 4-8, 11-4
LOG10 17-12, 17-34 Managing circuit faults 8-6
Lossless Transmission Lines 15-22 Manual routing 4-15
Lossy Transmission Lines 15-23 Manual wire routing 4-15
LOW 8-1, 8-10 MATH FUNCTIONS 17-34
Low MAX 17-23
changing color of 13-1 MAXEVTITER 15-9
MAXOPALTER 15-9
M Measurement cursors
Macro circuits using 6-15
creating 16-19 Merge Command 9-1
Macro Copier 11-6 MESFETs 15-27
Macro devices MESSAGE 17-6, 17-7, 17-13, 17-35
creating 16-19 Metafile devices
expanding 16-17 importing into Symbol Editor 16-7
Macro libraries Metafile for Windows 7-7
updating 16-bit 1-4 MIN 17-23
updating 32-bit 1-3 MIN_TYP_MAX 17-6, 17-12, 17-36
Macro Lock 8-10, 11-3 MINBREAK 15-9
Macro symbols Minor Device Class 3-2, 4-8
adding existing models to 16-25 Mirror Button
adding existing subcircuits to 16-29 activating 4-4
Macro Utilities 11-4 disabling for instruction 8-7
Class Selected Device 11-5 using 4-4
Delete Macro 11-5 using m key instead 4-4
Expand Macro 11-5 Mirroring devices 4-8
Model Data 11-6 Mixed-Signal simulation
Macros example (tutorial) 3-20
changing color of 13-1 in Analog mode 6-1
creating new 11-1 Model (%M) 4-29
editing 11-1 Model Data 11-6
expanding 11-2 Model linking files 11-6, 17-2
Model parameters
Index - 392
editing digital 16-40 N
MODEL_PATH 17-2
Models Name (%) 4-28
adding to existing symbols 16-24 Named Subcircuit (%X) 4-29
adding to new macro symbols 16-25 Netlists
and subcircuits linking files 16-32 definition 7-10
updating from previous version 1-5 definition of nets 7-10
working with SPICE 16-21 exporting PCB 7-10
Models, SPICE exporting SPICE 7-9
creating new with parameter passing 16-38 importing and simulating 9-2
editing in CircuitMaker 16-22 loading and running TraxMaker 7-14
editing with text editor 16-21 requirements 7-10
Monte Carlo Analysis Nets
distribution 6-37 definition 7-10
gaussian distribution 6-37 definition of netlist 7-10
overriding with specific tolerances 6-40 New Command 9-1
running 6-36 New Macro 11-1
seed 6-37 NLI Source 15-21
setting up 6-36 NLV Source 15-21
simulation runs 6-36 NO_CHANGE 17-11, 17-39
specifying default tolerances 6-40 Node (%number) 4-30
uniform distribution 6-37 Node numbers 4-30, 8-8
worst case distribution 6-37 showing 12-3
MOSFETs 15-26 NODESET 15-3, 15-28
Mouse usage 2-6 Noise Analysis
Move 10-1 running 6-32
Moveable page breaks 12-3 setting up 6-32
Moving Non-linear Sources 15-21
devices with connected wires 4-17 NOOPALTER 15-9
elements and shapes 16-6 NOOPITER 15-8
Multi-user (project) installations 1-6 Normal Size/Position 13-3
Multifunction Signal Generator 6-50 Nudging devices 4-13
Multimeter 10-9 NULL 17-6
using 6-49 NUMBER 17-5, 17-12, 17-39
Multiple projects Number of bus wire
setting up 1-6 specifying 4-18
Multiple shapes Numbers of nodes
selecting in Symbol Editor 16-5 showing 12-3
Multipliers 4-28, 15-2 Numerical Integration 6-48
Index - 393
O P
Objects Package 4-24, 4-29
changing color of 13-1 Package (%P) 4-29
Offsetting waveforms 6-15 PADS PCB format 7-11
Ohmmeter 6-50 Page breaks
ONE 17-7, 17-31, 17-53, 17-55 moving 12-3
Online Help, using 1-10 showing 12-3
Online tutorial, watching 1-11 Page Down, using to zoom out 4-3
OPEN 8-2, 8-10 Page Up, using to zoom in 4-3
Open Command 9-1 PARAM_SET 17-12, 17-42
Opening a .CKT file 2-10 Parameter passing
Operating Point (Multimeter) Analysis creating new SPICE models 16-38
running 6-22 Parameter Sweep Analysis
setting up 6-22 running 6-26
troubleshooting failures 15-2 setting up 6-26
OPERATORS 17-40 Parameters 4-26, 17-9
Option variables editing device 4-26
of SPICE 15-5 Partial derivatives 15-10
Options menu Parts Button 3-2, 4-7
Arrow/Wire 12-2 accessing device library 4-7
Auto Refresh 12-1 using 4-7
Auto Repeat 12-1 Parts list
Circuit Display Data 12-4 see Bill of Materials 7-1
Cursor Tools 12-2 Password 8-4, 8-10
Device Designations 12-1 Paste 10-1
Device Display Data 12-4 disabling for instruction 8-7
Grid 12-5 Pattern Editor 5-12
Quick Connect 12-1 PCB netlists 4-27, 6-7
Show Bus Labels 12-3 Cadnetix format 7-11
Show Node Numbers 12-3 Calay 90 format 7-11
Show Page Breaks 12-3 Calay format 7-11
Show Pin Dots 12-3 exporting 7-10
Show Prop Delays 12-4 exporting to popular formats 7-11
Title Block 12-6 OrCAD PCB II format 7-11
OPTS 15-9 PADS format 7-11
OrCad PCB II format 7-11 Protel format 7-11
Oscilloscope 6-23 requirements 7-10
Output 10-9 Tango format 7-11
Output Drive Capacity 15-11, 15-12 TraxMaker 7-12
Output noise Persistent waveform 6-17
measuring 6-32 Piece-Wise 6-58, 17-45
OUTPUTS 17-5, 17-6, 17-8, 17-10, 17-41 Pin Data 17-8
Pin dots
Index - 394
changing color of 13-1 previous_time 17-49
showing 12-3 Printing
PinDown 16-13 adjusting print size 4-33
PinDown~ 16-13 circuits 9-4
PinLeft 16-13 Fit to Page 9-4
PinLeft~ 16-13 print setup 9-3
PinRight 16-13 the circuit 4-33
PinRight~ 16-13 waveforms 9-4
Pins Probe Tool 5-3, 5-7
changing color of 13-1 activating 5-4
designations in Symbol Editor 16-4 current (I) 3-10
drawing in Symbol Editor 16-4 definition of states 5-4
editing information about 16-8 high state 5-4
names in Symbol Editor 16-4 low state 5-4
names of 4-31 meaning of letters in 6-5
numbers of 4-31, 4-33 power (P) 3-10
Pins shorted together 8-2 pulse state 5-4
PinUp 16-13 selecting 6-5
PinUp~ 16-13 tristate 5-4
PIVREL 15-7 unknown state 5-4
PIVTOL 15-7 using 6-5, 6-12
Place Labels 10-4 voltage (V) 3-9
Placing devices 4-12 Projects
POLY 15-22 accessing 1-8
Polygons installing multi-user 1-6
editing in Symbol Editor 16-4 setting up multiple 1-6
element definition 16-11 PROM 10-8
Polylines PROMPT 17-13, 17-43
editing in Symbol Editor 16-4 Prompt to save 9-6
element definition 16-11 Propagation delays 10-4, 15-10, 15-11, 17-
Position 13-3 6, 17-28
POW 17-12, 17-34 in Digital mode 5-6
Power Bus 4-20 showing 12-4
Power devices 15-4 PROPMNS 15-10, 17-37
Pre-5.0 digital circuits PROPMXS 15-10, 17-37
updating for analog simulation 1-5 Protel PCB format 7-11
Preferences 9-4 Pulse data
changing 2-8 editing 6-57
introduction 2-8 Pulse waveform 6-57
restoring factory defaults 2-8 Pulser 5-9, 5-10, 10-8
Prefix 4-24 PWL 6-58
present_time 17-7, 17-49 PWL_TABLE 17-6, 17-12
Previous version, updating from 1-3 PWR_GND_PINS 17-5, 17-6, 17-10, 17-46
pwr_param 17-49
Index - 395
Q Restoring factory defaults 2-8
RETURN 17-13
QFP packages Revert 9-2
adding in Symbol Editor 16-7 to previously saved file 2-10
Quick Connect wiring 4-16, 12-1 RF devices 15-4
roh_param 17-6, 17-18, 17-49
R rol_param 17-6, 17-18, 17-49
r0 17-32 Rotate 90 Button 4-8
r1 17-32 activating 4-3
r3s_param 17-49 disabling for instruction 8-7
RAM 10-8 using 4-3
RAMPTIME 15-9 using (tutorial) 3-14
READ_DATA 17-3, 17-12, 17-47 using r key instead 4-3
REALS 17-6, 17-10, 17-48 Rotate 90 Command 10-3
Recalling waveforms 6-16 Rotating
RECOVER 17-7, 17-10, 17-50 a device 4-3
Rectangles a resistor (tutorial) 3-3
drawing in Symbol Editor 16-4 Round rectangles
element definition 16-12 drawing in Symbol Editor 16-4
Reducing the circuit 4-3 element definition 16-12
Reference Point Routing
setting new 6-5, 6-13 auto wire 4-14, 9-7
Refresh Screen 13-3 manual wire 4-15
automatically 12-1 RSHUNT 15-12
Registered Trademarks ii Rubberband effect
Relative comparators 17-40 see Connectivity 2-2
Relative values 6-28 Run TraxMaker and load netlist 7-14
RELTOL 15-4, 15-7 Run-Time Test Points 6-43
Renumbering new devices 12-1 adding multiple 6-10
Reopen Command 9-1 description 6-8
Repeating devices 4-12, 12-1 placing 6-9
Replace device 8-7, 8-9 placing (tutorial) 3-17
Replacement status 8-7 removing 6-10
Requirements Run/Stop Button
for exporting netlists 7-10 using 5-4, 6-4
user background 1-1 using (tutorial) 3-9
Reset Button 5-3, 6-4 Running a simulation (tutorial) 3-17
in waveform window 6-17
using in Digital mode 5-3
S
Resistors 15-13 Save As Command 9-2
changing label-value (tutorial) 3-5 Save ASCII Library 11-7
selecting (tutorial) 3-3 Save Command 9-2
Resizing elements and shapes 16-6 Save Macro 11-2, 11-4
Index - 396
Saving analysis of a circuit 3-16
a .CKT file 2-9 breakpoints in a circuit 5-9
circuit 8-8 DC Analysis (DC Sweep) 6-19
prompting before 9-6 DC Operating Point Analysis 6-22
Scale 13-2 export options 7-7
Scale Factors 17-37 Fourier Analysis 6-29
Scale step size Impedance Plot Analysis 6-41
effect on Zoom Tool 4-3 Monte Carlo Analysis 6-36
Scaling waveforms 6-13 multiple projects 1-6
Schematic Noise Analysis 6-32
anatomy of 2-3 Parameter Sweep Analysis 6-26
drawing (tutorial) 3-1 sweep trace labels 6-28
Schematic symbol only 5-2, 6-2 Temperature Sweep Analysis 6-35
SCOPE 5-3, 5-7, 10-10 Transfer Function Analysis 6-30
Scope Probe 5-5, 5-7, 14-2 Transient Analysis 6-23
Searching devices 4-10 Setup button
Select All 10-3 in waveform window 6-15
SELECT_VALUE 17-12, 17-51 SETUP_HOLD 17-7, 17-10, 17-52
Selected items Shapes
changing color of 13-1 adding existing 16-6
Selecting selecting in Symbol Editor 16-5
.IC device 3-10 SHORT 8-10
a +V and ground device 3-4 Show Bus Labels 4-19, 12-3
a device symbol 3-3 Show LED/LAMP display state
a resistor 3-3 setting up for exporting 7-7
a single item 4-12 Show Node Numbers 8-8, 12-3
a transistor (tutorial) 3-3 Show Page Breaks 4-33, 12-3
all items 4-13 Show Pin Dots 12-3
colors 13-1 Show Prop Delays 5-6, 12-4
devices 4-12 Showing devices
devices (tutorial) 3-1 by analog 4-8
devices from library 4-7 by digital 4-8
groups of items 4-12 by symbol 4-8
items 4-12 Shunt resistors 15-12
multiple items 4-12 Signal Generator 8-8, 10-10, 15-18
shapes in Symbol Editor 16-5 AC analysis 3-15
switches 4-12 editor 6-51
Semiconductor capacitors 15-15 magnitude 3-15
Semiconductor resistors 15-13 phase 3-15
Set Prop Delays 10-4 using (tutorial) 3-15
Setting up Signal Selection 8-8
AC Analysis (AC Sweep) 6-20 sim_temp 17-6, 17-49
analog analyses 6-18 SimCode devices 15-28, 17-1
analog/SPICE variables 6-47
Index - 397
SIMLIST.TXT file 17-4 data 17-5, 17-8
Simulating default filenames 16-34
a digital circuit (tutorial) 3-6 editing subcircuits 16-27
a mixed mode circuit (tutorial) 3-20 elementary components 16-21
a simple AC circuit (tutorial) 3-12 elementary devices 15-13
Simulation errors 6-46
Analog Mode 5-1, 6-1 exporting as netlist 7-9
before you do a 6-2 exporting as subcircuit 7-9
Digital Mode 5-1, 6-1 Gmin stepping failed 15-1
errors 6-46 iteration limit reached 15-1
running a 3-17 models 16-21
setting up analog 3-16 multipliers 4-28, 15-2
stop 3-20 netlist, importing and simulating 9-2
warnings 6-46 option variables 15-5
Simulation menu 14-1 options 17-28, 17-37, 17-49
Analyses Setup 14-1 prefix character(s) 17-9
Check Pin Connections 14-1 prefixes 16-34
Digital Options 14-1 singular matrix 15-1
Digital/Analog Mode 14-1 source stepping failed 15-1
Display Variable Names 14-2 subcircuits 16-21
Display Waveforms 14-2 suggested reading 15-30
Reset 14-1 troubleshooting convergence 15-1
Run 14-2 warnings 6-46
Scope Probe 14-2 working with models 16-21
Step 14-2 SPICE Data 4-28
Trace 14-2 Analysis Probe Name (%[) 4-30
SIMWARN 15-12, 17-28 Bus Data (%B) 4-29
SIN 17-12, 17-34 Description (%I) 4-29
Sine wave data Designation (%D) 4-29
editing 6-52 editing 4-28
Single Click Connect 9-6 example of using 4-30
effect on wiring 4-15 Include File (%=path/filename.ext) 4-29
Singular matrix error 15-12 Label (%L) 4-28
Size 13-3 Model (%M) 4-29
SmartWires 4-16 Name (%N) 4-28
Snap to Grid 4-4, 12-5 Named Subcircuit (%X) 4-29
and nudging devices 4-13 Node (%number) 4-30
Software License Agreement iii Package (%P) 4-29
Sound Subcircuit (%S) 4-29
changing color of 13-1 Value (%V) 4-28
SPICE SQRT 17-12, 17-34
creating new models with parameter passing SRCSTEP 15-9
16-38 Starting
Index - 398
a .CKT file 2-9 Support, getting Technical 1-8
CircuitMaker 2-1 Sweep trace labels
TraxMaker from CircuitMaker 7-13 using 6-28
STATE 17-7, 17-11, 17-53 Switching between digital/analog mode 3-8
State of Probe Tool Symbol Editor
I (current) 3-10, 6-5 adding DIP packages 16-7
N (noise) 6-5 adding existing shape 16-6
P (power) 3-10, 6-5 adding LCC packages 16-7
R (input or output resistance) 6-5 adding QFP packages 16-7
V (voltage) 3-9, 6-5 deleting shapes and elements 16-6
Z (impedance) 6-5 drawing symbols with mouse 16-4
STATE_BIT 17-5, 17-11, 17-55 Edit Buffer 16-9
Step Button editing pin information 16-8
using 5-4 element definitions 16-10
STEP_OFF 17-13, 17-56 Element List 16-9
STEP_ON 17-13, 17-56 Grid 16-3
Stopping a simulation 3-20, 6-4 importing Metafile devices 16-7
Storing waveforms 6-16 moving shapes and elements 16-6
Straighten Wires 10-4 pin designations 16-4
STRENGTH 17-11 pin names 16-4
Strength 17-54, 17-55 Redraw 16-3
STRONG 17-57 resizing elements 16-6
Student use selecting multiple shapes 16-5
disabling circuit options 8-6 selecting shapes 16-5
displaying access faults 8-5 Symbol Name 16-4
fault password 8-4 Trace 16-4
hint message 8-4 tutorial 16-14
managing circuit faults 8-6 using display controls 16-3
Subcircuit (%S) 4-29 View 16-4
Subcircuit Linking Files 11-6 SYMBOLDB.DAT file 9-8
Subcircuits 4-29, 15-27 Symbols
adding to exiting symbol 16-28 adding new models to existing 16-24
adding to new macro symbols 16-29 adding new subcircuits to 16-28
and model linking files 16-32 changing color of 13-1
editing SPICE 16-27 changing text color 13-1
exporting SPICE 7-9 creating device 16-2
linking files 17-2 creating device (tutorial) 16-14
plotting internal variables 6-13 drawing with mouse 16-4
Suggested readings naming 16-4
for SPICE 15-30 showing 4-8
Supply current 15-11, 15-12
Supply voltage 6-46, 15-12
SUPPLY_MIN_MAX 17-6, 17-10, 17-58
Index - 399
T using 5-5
Trace mode 17-56
t 17-7, 17-32 tran_pin 17-28
TABLE 17-11, 17-59 TRAN_xx 17-17, 17-28
TAN 17-12, 17-34 TRANMNS 15-10, 17-37
Tango PCB format 7-11 TRANMXS 15-10, 17-37
Task overview of CircuitMaker 2-4 Transfer Function Analysis
Technical support 1-8 running 6-30
TEMP 15-7, 17-49 setting up 6-30
Temperature Sweep Analysis Transient Analysis 9-7
running 6-35 Preferences defaults 9-7
setting up 6-35 running 6-23
Terminal Device 4-20, 4-27 setting defaults 6-24
Test Points 6-5, 6-7, 6-46, 6-48 setting up 6-23
default 6-8 setting up (tutorial) 3-16
exclusive 6-8 troubleshooting failures 15-4
run-time 6-8 using (tutorial) 3-19
types 6-8 warnings 15-4
Text Transistors 15-25
adding to schematic 4-2 changing label-value (tutorial) 3-5
changing font of 10-11 selecting (tutorial) 3-3
Text Tool Transition time 15-10, 15-11, 17-28
activating 4-2 Transmission lines 15-22
changing color of text 4-2 Trapezoidal integration 6-48, 15-4
changing text font 4-2 TraxMaker 4-27, 6-7
resizing text in rectangle 4-2 loading netlist from CircuitMaker 7-14
using 4-2 PCB netlist format 7-12
TH 17-52 running from CircuitMaker 7-14
THEN 17-25 TREC 17-50
THold 6-46, 15-12 TRec 6-46, 15-12
Tile Windows 13-3 Troubleshooting
Timestep too small 15-7 SPICE convergence 15-1
Timing violations 6-46, 15-12 TRTOL 15-8
Title Block 4-5, 12-6 TRYTOCOMPACT 15-8
TNOM 15-8 TS 17-52
Toolbar TSetup 6-46, 15-12
displaying 13-1 tt_param 17-6, 17-28, 17-37
introduction 2-4 tthl 17-7, 17-18
tp_param 17-28, 17-37 ttlh 17-7, 17-18
TPMNTYMX 15-11, 17-28 TTMNTYMX 15-11
Trace 8-8 Tutorial, watching online 1-11
Symbol Editor 16-4 TW 17-65
Trace Button Tw 6-46, 15-12
activating 5-5
Index - 400
U View menu
Cascade Windows 13-3
U.S. Government Restricted Provisions v Fit Circuit To Window 13-3
UIC 6-24, 15-3 Normal Size/Position 13-3
Unassigning HotKeys 4-10 Select Colors 13-1
Undo 10-1 Tile Windows 13-3
Uniform distribution 6-37 Windows 13-3
UNKNOWN 17-31, 17-53 Viewing symbols 16-4
Update Search List 11-8 vih_param 17-49
Updating vil_param 17-49
16-bit macro libraries 1-4 VIL_VIH_PERCENT 17-10, 17-61
32-bit macro libraries 1-3 VIL_VIH_VALUE 17-6, 17-10, 17-62
from previous versions 1-3 Virtual instruments
model libraries 1-5 Bode plotter 6-11
pre-5.0 digital circuits for simulation 1-5 Curve tracer 6-11
URC lines 15-24 data sequencer 5-11
User background, required 1-1 Digital oscilloscope 6-11
User Manual, about 1-9 logic analyzer 5-7
USER.LIB 11-6 multimeter 6-11
USER.LIB file 9-8 Visible check box
user_param 17-28, 17-38 using 4-23
USERMNS 17-38 VNTOL 15-4, 15-8
USERMNTYMX 17-28 voh_param 17-7, 17-49
USERMXS 17-38 vol_param 17-7, 17-49
Using Online Help VOL_VOH_MIN 17-6, 17-10, 17-63
double-clicking Help file 1-10 Voltage sources 15-17
from a dialog box 1-10 Voltage-controlled
from the Help menu 1-10 current sources 15-19
switches 15-17
V voltage sources 15-19
V->I Source 15-19 Voltmeter 6-50
V->Switch 15-17 vth_param 17-38
V->V Source 15-19 VTHMNS 17-38
v0 17-7, 17-18, 17-32 VTHMXS 17-38
v1 17-7, 17-18, 17-32
v3s_param 17-49
W
VALUE 17-12, 17-60 WARN flag 17-28
Value 4-23 warn_param 17-28
Value (%) 4-28 Warning messages 6-46, 15-12, 17-28
Variables Watching online tutorial 1-11
for SPICE 15-5 Wave Button of Signal Generator
Vcc 17-58 using (tutorial) 3-15
Vcc and Ground 6-6 Waveforms 5-3, 5-7
Version, updating from previous 1-3
Index - 401
changing color of 13-1 straightening 10-4
changing order (digital) 5-7 using SmartWires feature 4-14
copying to clipboard 10-2 Wiring 4-14
displaying 6-12 a circuit 4-14
editing 6-13 a circuit (tutorial) 3-5
exporting as graphics 7-8 auto wire routing 4-14
offsetting 6-15 manual wire routing 4-14
plotting subcircuit internal variables 6-13 with Arrow/Wire Tool 12-2
recalling stored 6-16 with connectors 4-19
scaling 6-13 with Quick-Connect 4-14, 4-16
storing for future reference 6-16 with the Wire Tool 4-2
using measurement cursors 6-15 Word Generator 5-11
using Setup button 6-15 see also Data Sequencer 6-59
viewing multiple 6-5, 6-13 Workspace
Waveforms Button introduction 2-1
activating 5-5 Worst case distribution 6-37
selecting 6-6 Wrong value 8-2
using 5-5, 6-6
WHILE ... DO 17-13, 17-64 X
WIDTH 17-7, 17-11, 17-65 XSpice for Windows 17-1, 17-6
WIDTH_TIME 17-12 .NET file output 6-45
Window menu .RAW file output 6-45
Cascade Windows 13-3 about 6-43
Tile Windows 13-3 using 6-43
Windows metafile 7-7
Wire Tool 4-2, 8-7 Z
activating 4-2
disabling for instruction 8-7 ZERO 17-7, 17-31, 17-53, 17-55
drawing bus wires 4-2 Zoom Tool 13-2
drawing dashed lines 4-2 activating 4-3
using 4-2 magnifying the circuit 4-3
using (tutorial) 3-12 reducing the circuit 4-3
Wires setting the scale step 4-3
auto routing 4-14 using 4-3
bus connection 4-18 using page down key instead 4-3
bus, working with 4-17 using page up key instead 4-3
changing color of 13-1
cutting 4-16
extending 4-16
joining 4-16
moving devices with connected 4-17
routing manually 4-15
Index - 402