Introduction Sue2 Manual

User Manual: Pdf

Open the PDF directly: View PDF PDF.
Page Count: 7

DownloadIntroduction Sue2 Manual
Open PDF In BrowserView PDF
Sue2 User Manual (Version 1.0)
Michael H. Perrott
http://www-mtl.mit.edu/~perrott
July 2, 2004
Copyright © 2004 by Michael H. Perrott
All rights reserved.

Table of Contents
Introduction ............................................................................................................................................. 2
Setup (Windows)..................................................................................................................................... 2
Known Bugs ............................................................................................................................................ 2
Basics ...................................................................................................................................................... 2
New Schematics, icons, and libraries...................................................................................................... 3
Existing Schematics ................................................................................................................................ 3
A. Opening .......................................................................................................................................... 3
B. Window Operations........................................................................................................................ 3
C. Editing ............................................................................................................................................ 4
D. Adding Instances ............................................................................................................................ 4
E. Modifying Instance Parameters ...................................................................................................... 4
F. Placing Wires .................................................................................................................................. 4
G. Placing Pins, Global Supplies, and Naming Nets .......................................................................... 4
Existing Icons .......................................................................................................................................... 5
A. Opening .......................................................................................................................................... 5
B. Editing ............................................................................................................................................ 5
Text.................................................................................................................................................. 5
Lines ................................................................................................................................................ 5
Rectangles, Triangles, and other Polygons ..................................................................................... 5
Circles, Ellipses, and Arcs............................................................................................................... 6
C. Parameters and Instance Names ..................................................................................................... 6
D. Netlisting Directives....................................................................................................................... 6
Netlisting and Printing ............................................................................................................................ 7

1

Introduction
Sue2 is an updated version of the Schematic User Environment (SUE) package (based on version
2.4.1) written by Lee Tavrow for integrated circuit design. The updates applied to create Sue2 are
quite substantial, and include a new netlisting and canvas memory allocation framework, migration to
the most recent TCL/TK package for Windows, and a general update of the visual interface. Sue2 is
open source software – see the COPYING file within the Sue2 directory for details on
copying/licensing issues.
The current version of Sue2 supports only Hspice netlisting. Future versions may include support of
Verilog and IRSIM. Also, Hspice netlisting does not yet include support for buses – that capability
may also be added in the future.

Setup (Windows)
The Sue2 install package is provided as a self extracting executable file called setup_sue2.exe. To
install, simply run setup_sue2.exe in Windows (i.e., double-click on setup_sue2.exe in Windows
Explorer). You may install the main Sue2 directory wherever you like. To run the program, click on
the desktop icon for Sue2 that was created during the install process.
If you would like to use CppSim with Sue2, you should instead install the CppSim package for
Windows found at the CAD tools link at http://www-mtl.mit.edu/~perrott. This self-extracting
package includes Sue2, CppSim, and the MinGW and MSYS packages which provide g++, make, sh,
and other routines. Note that Cygwin is no longer required, but Matlab 6.5 (or higher) for Windows is
needed in order to run CppSim.

Known Bugs
1) The undo function is broken.
2) Name clashing occurs between cells with the same name even if they are in different libraries.
Essentially, Sue2 doesn’t pay attention to libraries when considering the source of a placed cell
– libraries are only used for convenience in organizing cells into different groups.

Basics
Start Sue2 by clicking on its desktop icon that was created during installation. You’ll see four
windows pop up, which include the main canvas, one schematic listbox, and two icon listboxes. At
the top of the main canvas are menu options File, Window, Edit, Sim, and the Help Message Window
which initially states “Welcome to Sue2 (version 1.0) – see the COPYING file for details on
copyright/licensing issues”.
The various menu options are straightforward to understand, and their bindkeys are listed next to their
respective command. Bindkeys, as well as other configurable parameters, can be changed in the
.suerc file contained in the Sue2 directory that was created during installation.
Three key things are worthwhile to keep in mind as you use Sue2:
2

1) Pay attention to the Help Message Window during command operations – it provides
information on bindkeys activated while a given command is in effect.
2) To break out of any given command mode, hit the Escape key.
3) Schematic and icon libraries shown within the listboxes can be altered by clicking on the
listbox menu button located below the listbox Windows header banner and above its item
selections. Note that schematic and icon libraries are always placed within the Sue2/SueLib
directory and are named within the sue.lib file located in the Sue2 directory in order to be
active within the listbox menus. The first entry within the sue.lib file corresponds to the
default schematic library placed in the schematic listbox, and the next two entries correspond
to the default icon libraries placed in the icon listboxes.

New Schematics, icons, and libraries
Creation of new schematic or icons is straightforward using the File menu commands in the main
canvas window.
To create a new schematic/icon pair, it is best to first create the schematic and then press the K key to
create its associated icon view. To be recognized within the schematic or icon listboxes, cells must be
placed within a directory whose name is in the Sue2/sue.lib file and whose location is in the
Sue2/SueLib directory.
To create a new library, you must create a new directory corresponding to the library name within the
Sue2/SueLib directory using Windows commands (i.e., no Sue2 commands support this), and add the
library name to the Sue2/sue.lib file.

Existing Schematics
A. Opening
As an example of viewing a schematic, click on sd_synth inside of the schematic listbox. The main
canvas will display the sd_synth schematic. If one then clicks on sd_synth_fast within the schematic
listbox, the main canvas removes the sd_synth schematic (asking for it to be saved if it has been
altered), and then loads the sd_synth_fast schematic. Now click on the schematic listbox menu button
to change the schematic library to spice. Clicking on inverter then loads an inverter schematic.
Change the schematic library back to CppExamples, and click on sd_synth_fast to return to its
schematic.
B. Window Operations
As an example of performing window operations within the main canvas window, hit the z key to
zoom into the sd_synth_fast schematic, the Z key to zoom out of it, and the f key to fit the view to the
window size. Zoom into a particular part of the schematic by pressing the right mouse button and
then dragging the mouse over the region to be zoomed into. Panning is accomplished by either hitting
the arrow keys, or by holding the Ctrl key and then dragging the mouse while the left mouse button
is held down.
As an example of descending down the schematic hierarchy, select instance xi12 (xorpfd) using the
left mouse button, and then hit the e key. Select instance xi0 (dff2), and then hit the e key again. Hit
3

the k key to switch to the icon view of the cell, and then hit the k key again to switch back to its
schematic view. Hit the Ctrl-e key combination twice to return to the top level of the sd_synth_fast
schematic hierarchy.
C. Editing
As an example of performing basic edits, move an instance or wire by pressing and holding the left
mouse button over it and then dragging the mouse. If you try the same operation while holding the
Shift key, then movements will be restricted to be in either the horizontal or vertical direction. Select
a number of instances and wires by pushing the left mouse button and then dragging the mouse over
the items to be selected. Additional items can be added to the current selection by holding down the
Shift key while pushing the left mouse button over the items to be added. The entire set of selected
items can be moved by then pressing the left mouse button over one of the selected items and then
dragging the mouse. Selected items can be rotated by hitting the r key, can be flipped in the
horizontal direction by hitting the x key, can be flipped in the vertical direction by hitting the y key,
can be copied using the c key, and can be deleted by hitting either the backspace or delete key.
D. Adding Instances
As an example of adding instances to a schematic, select the delay item from the icon1 listbox using
the left mouse button, and then place it into the main canvas window using the left mouse button.
Now select the add2 item from the icon1 listbox, but allow multiple instances of it to be placed by
holding down the Shift key as you continue to press the left mouse button in the main canvas window.
E. Modifying Instance Parameters
Double-click on an instance to view and edit its parameters. To change the parameter definitions for
the module corresponding to an instance, you need to modify/add appropriate text within its icon view
(as described later in this document).
F. Placing Wires
To place wires, press the w key within the main canvas window and then press the left mouse button
over an instance pin, wire, or other part of the canvas. Click the left mouse button to create wire
corners or to end the wire at an instance pin or another wire. Double-click on the left mouse button to
force the end of a wire (alternatively, hit single-click the right mouse button to force the end of a
wire). Note that wires are different than lines – you use wires to connect instances inside schematics,
and lines for creating labels within schematics and objects (such as lines, triangles, or rectangles)
within icons.
G. Placing Pins, Global Supplies, and Naming Nets
The placement of pins or naming of nets is performed by selecting the appropriate icons within the
devices library, which is displayed by default in the icon2 listbox. Input, output, and inout pins are
appropriately named as such in the devices library. Global supplies (i.e., power and ground) are
instantiated using the global icon. Naming of nets is accomplished using either the name_net or
4

name_net_s icons. Once the pin and name_net symbol is placed within the schematic, double-click
on it with the left mouse button in order to specify its name.

Existing Icons
A. Opening
Existing icons can be opened by using the Load command within the File Menu of the main canvas
window. The schematic view of the cell will be loaded if it exists – in such case, display the
corresponding icon view by pressing the k key. Alternatively, an icon within an existing schematic
can be opened by descending into the cell using the e key and then pressing the k key (if necessary) to
switch to the icon view of the cell.
B. Editing
As an example, load the leadlagfilter icon by using the Load command within the File menu and
pressing the k key. Move objects in this icon as you would in schematics by pressing the left mouse
button over them and then dragging the mouse. Likewise, note that objects can be rotated, flipped,
copied, and deleted in the same manner as done in schematics.
Text
Create text by pushing the t key followed by the left mouse button. Modify text by double-clicking on
it with the left mouse button and then performing edits as you would in other Windows applications
(with the exception that Tab is used to create lines, and Return to end edit mode for the text object).
Only three sizes are available for the text – the size of a given text segment may be varied while in
text edit mode by holding the Shift key and then pressing either the left, middle, or right mouse
button. Also, the text can be changed to either left, right, or center justified by holding the Control
key and then pressing either the left, middle, or right mouse button.
Lines
Create a line by pushing the l (as in line) key followed by the left mouse button, and then doubleclicking on the left mouse button at a different point on the canvas (alternatively, single-click on the
right mouse button to end the wire). Multi-segment lines are created by single rather than doubleclicking on the left mouse button at each desired breakpoint of the line, with a double-click of the left
mouse button (or single click of the right mouse button) being used to end the line. Press the Shift
key to limit the drawing of line segments to the vertical or horizontal direction. Once a line is created,
its various breakpoints can be modified (including the end points) by first double-clicking on the line,
and then pressing and holding the left mouse button over the given breakpoint followed by dragging
of the mouse.
Rectangles, Triangles, and other Polygons
Rectangles, triangles, and other polygons are created with multi-segment lines, so that the above
description for lines applies to these objects.

5

Circles, Ellipses, and Arcs
Create an arc by pressing the a key followed by pressing (but not holding) the left mouse button,
moving the mouse until the appropriate size and shape for the arc is achieved, and then pressing the
left mouse button. Modify an existing arc by first double-clicking on it with the left mouse button
and then moving its breakpoints as you would for lines. Circles and ellipses are created by modifying
an arc such that it nearly closes on itself (Sue2 does not allow the arc to be completely enclosed, but
you can get close enough that the circle or ellipse looks reasonable).
C. Parameters and Instance Names
Parameters for a given icon are created and displayed according to text statements placed within the
icon view. The instance name for a general cell is simply a parameter called name which has a
default value of x. Instance names for primitive elements such as MOS transistors, resistors,
inductors, and capacitors are also parameters called name, but have default values of M, R, L, and C,
respectively (see the icon views of elements within the spice library to see examples of this). Note
that Sue2 will automatically append numbers after the default values of the instance names once the
given cells or elements are placed within a schematic and saved.
As an example, look at the icon view of the cell leadlagfilter located in the CppSimModule library. At
the top of the green rectangle corresponding to the symbol block outline is the statement $name. The
$ symbol indicates that the text to follow is a variable whose value should be displayed, so that $name
directs Sue2 to display the instance name when the leadlagfilter icon is placed in a schematic. Below
the green symbol block outline are statements such as fp=$fp, which direct Sue2 to display the values
of the various parameters when the instance of the icon is placed in a schematic. Much below the
green symbol block outline are statements such as –type user –name fp –default 1.0, which declare
parameters (fp, in this case) along with their default values.
To add a parameter example_param to an existing icon, simply add the text statement –type user –
name example_param –default 1.0 to its icon view. To display the value of this parameter when the
icon is placed within a schematic, simply add the text statement example_param=$example_param
to its icon view.
When creating an icon from an existing schematic view (by pressing K), text lines will be
automatically generated to declare the instance name (name) and an example parameter
(example_param), along with statements that will display these parameter values. Simply modify the
example_param statements to reflect a desired parameter name, and add additional statements to
create extra parameters.
D. Netlisting Directives
Netlisting directives for a given icon are contained in its icon view. Most icons created in Sue2 do not
require such directives, but they are required when primitives (such as capacitors, resistors) are
created.
As an example, look at the icon view of the capacitor symbol contained in the spice library. First, as
mentioned above, notice that the icon declaration contains a default value of C rather than x (i.e., type user –name name –default C). The default value for instance names corresponds to the first
6

letter of their instance name when netlisting. For instance, capacitors have a default value of C,
inductors have a default value of L, MOSFET transistors have a default value of M, and instances that
are composed of other instances and primitives have a default value of x (which is the default case).
Second, notice the text statement within the capacitor icon that reads –type fixed –name spice –text
{$name $t1 $t2 c=$capacitance}. This statement declares that the SPICE netlist statement
corresponding to this primitive is composed of its instance name (which will start with C) followed by
its terminal names and the value of the capacitance parameter. Future version of Sue2 will allow
statements for Verilog and IRSIM.

Netlisting and Printing
Netlisting and printing to eps files are straightforward using Sue2 menu commands. To create SPICE
netlists, select Create Spice Netlist under the Sim menu item in the main canvas window.
Alternatively, you can create SPICE netlists in batch mode by directly running the executable
sue_spice_netlister.exe contained in the Sue2/bin directory (this method is used when running
CppSim). To create an eps file corresponding to a given schematic, simply select Create eps file
under the File menu item in the main canvas window.

7



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : Yes
Modify Date                     : 2004:07:02 19:20:03+09:00
Create Date                     : 2004:07:02 19:19:49+09:00
Page Count                      : 7
Creation Date                   : 2004:07:02 10:19:49Z
Mod Date                        : 2004:07:02 10:19:49Z
Producer                        : Acrobat Distiller 5.0.5 (Windows)
Author                          : Michael Perrott
Metadata Date                   : 2004:07:02 10:19:49Z
Creator                         : Michael Perrott
Title                           : Introduction
Page Mode                       : UseNone
Tagged PDF                      : Yes
EXIF Metadata provided by EXIF.tools

Navigation menu