+ All Categories
Home > Documents > Silos User Manuel

Silos User Manuel

Date post: 14-Apr-2018
Category:
Upload: suranga-kulathunga
View: 221 times
Download: 0 times
Share this document with a friend

of 286

Transcript
  • 7/27/2019 Silos User Manuel

    1/286

    Silvaco, Inc.

    4701 Patrick Henry Drive, Bldg. 2 September 11, 2013

    Santa Clara, CA 95054

    Phone (408) 567-1000

    Web http://www.silvaco.com

    SilosUsers Manual

  • 7/27/2019 Silos User Manuel

    2/286

    ii Silvaco, Inc.

    Silos

    Users ManualCopyright 2013

    Silvaco, Inc.

    4701 Patrick Henry Drive, Bldg. 2Santa Clara, CA 95054

    Phone: (408) 567-1000Web: http://www.silvaco.com

  • 7/27/2019 Silos User Manuel

    3/286

    Notice

    Silvaco, Inc. iii

    The information contained in this document is subject to change without notice.

    Silvaco, Inc. MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS MATERIAL,

    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF FITNESS FOR APARTICULAR PURPOSE.

    Silvaco, Inc. shall not be liable for errors contained herein, or for incidental or consequential damagesin connection with the furnishing, performance, or use of this material.

    This document contains proprietary information, which is protected by copyright. All rights arereserved. No part of this document may be photocopied, reproduced, or translated into anotherlanguage without the prior written consent of Silvaco, Inc..

    ACCUCELL, ACCUCORE, ACCUMODEL, ACCUTEST, ATHENA, ATHENA1D, ATLAS, BLAZE, C-INTERPRETER,CATALYSTAD, CATALYSTDA, CELEBRITY, CELEBRITY C++, CLARITYRLC, CLEVER, CLEVERINTERCONNECT, DECKBUILD, DEVEDIT, DEVEDIT3D, DEVICE3D, DEVICE3D BUNDLE, DISCOVERY, EDIFWRITER, ELITE, EXACT, EXPERT, EXPERT200, EXPERTVIEWS, FERRO, GATEWAY, GATEWAY200, GIGA,GIGA3D, GUARDIAN, GUARDIAN DRC, GUARDIAN LVS, GUARDIAN NET, HARMONY, HIPEX, HIPEX C,HIPEX NET, HIPEX RC, HYPERFAULT, INTERCONNECT MODELING, LASER, LED, LED3D, LISA,LUMINOUS, LUMINOUS3D, MAGNETIC, MAGNETIC3D, MASKVIEWS, MC ETCH & DEPO, MC DEVICE, MCIMPLANT, MERCURY, MIXEDMODE, MIXEDMODE3D, MODELLIB, NOISE, OLED, OPTOLITH,ORGANIC BUNDLE, ORGANIC DISPLAY, ORGANIC SOLAR, OTFT, PDK FLOW, QUANTUM, QUANTUM3D,QUEST, REALTIMEDRC, REM 2D, REM 3D, S-PISCES, S-PISCES BUNDLE, SSUPREM3, SSUPREM4,SSUPREM4 BUNDLE, SCOUT, SDDL, SFLM, SIC, SILOS, SIMULATION STANDARD, SMARTLIB,SMARTSPICE, SMARTSPICE API, SMARTSPICE DEBUGGER, SMARTSPICE RF MULTICORE, SMARTSPICERUBBERBAND, SMARTSPICE RF, SMARTSPICE200, SMARTVIEW, SOLVERLIB, SPAYN, SPDB, SPIDER,SPRINT, STELLAR, TCAD DRIVEN CAD, TCAD OMNI, TCAD & EDA OMNI UTILITY, TFT, TFT BUNDLE,TFT3D, TFT3D BUNDLE THERMAL3D, TONYPLOT, TONYPLOT3D, UTMOST III, UTMOST III BIPOLAR,UTMOST III DIODE, UTMOST III GAAS, UTMOST III HBT, UTMOST III JFET, UTMOST III MOS, UTMOSTIII MULTICORE, UNIVERSAL TOKEN, UNIVERSAL UTILITY TOKEN, UTMOST III SOI, UTMOST III TFT,UTMOST III VBIC, UTMOST IV, UTMOST IV FIT, UTMOST IV FULL PACKAGE, UTMOST IV MEASURE,UTMOST IV OPTIMIZATION, VCSEL, VERILOG-A, VICTORY, VICTORY CELL, VICTORY DEVICE, VICTORY

    DEVICE BUNDLE, VICTORY DEVICE SINGLE EVENT EFFECTS, VICTORY PROCESS, VICTORY PROCESSADVANCED DIFFUSION & OXIDATION, VICTORY PROCESS BUNDLE, VICTORY PROCESS MONTE CARLOIMPLANT, VICTORYPROCESS PHYSICAL ETCH & DEPOSIT, VICTORYSTRESS, VIRTUAL WAFER FAB, VWF,

    VWF AUTOMATION TOOLS, VWF INTERACTIVE TOOLS, and VYPER are trademarks of Silvaco, Inc.

    All other trademarks mentioned in this manual are the property of their respective owners.

    Copyright 1984 - 2013, Silvaco, Inc.

  • 7/27/2019 Silos User Manuel

    4/286

    Style Conventions

    Font Style/Convention Description Example

    This represents a list of items orterms.

    1.

    2.

    3.

    This represents a set of direc-tions to perform an action.

    To open a door:

    1. Unlock the door by inserting

    the key into keyhole.2. Turn key counter-clockwise.

    3. Pull out the key from thekeyhole.

    4. Grab the doorknob and turnclockwise and pull.

    This represents a sequence ofmenu options and GUI buttonsto perform an action.

    FileOpen

    Courier This represents the commands,parameters, and variables syn-

    tax.

    HAPPY BIRTHDAY

    New Century SchoolbookBold

    This represents the menuoptions and buttons in the GUI.

    File

    New Century Schoolbook

    Italics

    This represents the equations. abc=xyz

    Note:This represents the additionalimportant information. Note: Make sure you save often while run-

    ning an experiment.

    New Century SchoolBook in

    Small Caps

    This represents the names of

    the products.

    A

    GATEWAY, HIPEX, SMARTSPICE,STELLAR, and .

    Silvaco, Inc. iv

    Bullet A

    Bullet B

    Bullet C

    THENA, ATLAS, EXPERT,

    UTMOST

    How to Read this Manual

  • 7/27/2019 Silos User Manuel

    5/286

    Silvaco, Inc. v

    Chapter 1:Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

    1.1: Silos Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

    1.2: Silos Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

    1.3: Platforms Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

    1.4: Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2

    Chapter 2:Quick Start Tutorial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

    2.1: Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

    2.2: Starting Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

    2.3: Opening the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2

    2.4: Running the Simulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3

    2.5: Opening the Explorer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4

    2.6: Opening the Waveform Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6

    2.7: Accessing On-line Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

    2.8: Exiting Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

    Chapter 3:Tutorial Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

    3.1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

    3.2: Tutorial Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

    3.3: Tutorial Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

    3.4: Tutorial 1: Creating a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2

    3.5: Tutorial 2: Simulating a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5

    3.5.1: Messages in the Output Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6

    3.5.2: Using the Explorer to Display Signals as Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8

    3.5.3: Viewing Source code Variables and Expressions as Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

    3.5.4: Using Title Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

    3.5.5: Rearranging the Signal Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

    3.5.6: Setting Waveform Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14

    3.5.7: Expanding and Collapsing a Vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15

    3.5.8: Displaying Vector Contents using Symbolic Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16

    3.5.9: Creating an Annotated Timeline for the Waveform Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19

    3.5.10: Groups, Buses, Vectors and Signals in the Analyzer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21

    3.5.11: Creating Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22

    3.5.12: Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23

    3.5.13: Displaying a Logic Condition as a Waveform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

    3.5.14: Timing Markers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

    3.5.15: Scan-to-Change, Scan-to-Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26

    3.5.16: Zoom-Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28

    3.5.17: Scrollbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28

    3.5.18: Bookmark, Timescale, Goto Timepoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29

    3.5.19: Scrolling the Waveform Window (for systems equipped with wheel mice) . . . . . . . . . . . . . . . . . . . . . 3-30

    Table of Contents

  • 7/27/2019 Silos User Manuel

    6/286

    Silos Users Manual

    vi Silvaco, Inc.

    3.5.20: Viewing Simulation Results in HDL Code using Data Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30

    3.5.21: Exiting Silos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32

    3.6: Tutorial 3: Analog and Digital Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33

    3.6.1: Opening the Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33

    3.6.2: Viewing Analog Waveforms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-34

    3.6.3: Expanding Analog Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-34

    3.6.4: Changing Display Type of Analog Waveforms between PWL and Step. . . . . . . . . . . . . . . . . . . . . . . . . 3-363.6.5: Creating Analog Overlays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-39

    3.6.6: Expanding an Analog Overlay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-39

    3.6.7: Identifying Overlay Signals Using Trace Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-40

    3.6.8: Changing the Y- Axis from Variable to Fixed Scale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41

    3.6.9: Performing Mathematical Operations on Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-44

    3.6.10: Displaying Analog Signals as Digital Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45

    3.6.11: Displaying a Group of Analog Signals as a Digital Bus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46

    3.6.12: Exiting Silos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46

    3.7: Tutorial 4: Debugging Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-47

    3.7.1: Trace Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-47

    3.7.2: Visual Debug using Behavioral Traceback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-493.7.3: Single Stepping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-53

    3.7.4: Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-57

    3.8: Tutorial 5: Code Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-59

    3.8.1: Generating Line Coverage Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-59

    3.8.2: Generating Operator Coverage Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-62

    3.8.3: Merging Code Coverage Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-65

    3.8.4: Exiting Silos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-67

    3.9: Tutorial 6: Gate Level Debugging Using Trace Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68

    3.9.1: Trace Inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-68

    3.9.2: Exiting Silos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-69

    3.10: Tutorial 7: Error Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-70

    3.10.1: Exiting Silos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-72

    Chapter 4:Graphical User Interface Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

    4.1: GUI Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

    4.1.1: Dockable/Detachable Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

    4.1.2: Context Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

    4.1.3: Dialog Box Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2

    4.1.4: Interrupting Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2

    4.2: The Menu Bar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24.3: The Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3

    4.3.1: Tools Toolbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3

    4.3.2: Analyzer Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5

    4.4: The Explorer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7

    4.5: Explorer Design Hierarchy Tree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10

    4.5.1: Copy Scope Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12

    4.5.2: Select Scope Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12

    4.5.3: Instance Name Filter Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12

  • 7/27/2019 Silos User Manuel

    7/286

    Silvaco, Inc. vii

    Table of Contents

    4.5.4: Go to Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12

    4.5.5: Module Properties Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13

    4.6: Explorer Port and Variable List. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14

    4.6.1: Go To Definition Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16

    4.6.2: Add Signals to Analyzer Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16

    4.6.3: Name Filter Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16

    4.6.4: Regular Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-174.6.5: Sort by Name or Type Menu Selections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18

    4.7: The Data Analyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19

    4.8: Data Analyzer Signal List Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19

    4.8.1: Trace Inputs Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21

    4.8.2: Go to Definition Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21

    4.8.3: Signal Groups Menu Selections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21

    4.8.4: Display Group as Analog Overlay Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22

    4.8.5: Display Group as Digital Bus Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22

    4.8.6: Do Not Display Group Waveform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22

    4.8.7: Set Radix Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22

    4.8.8: Change Signal Color Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-234.8.9: Set Analog Display Options Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23

    4.8.10: Expand All Analog Signals Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23

    4.8.11: Collapse All Analog Signals Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23

    4.8.12: Display as Digital Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23

    4.8.13: Add Menu Selections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23

    4.8.14: Reverse Bit Order. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.8.15: Delete Item/s Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.8.16: Move Item Up Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.8.17: Move Item Down Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.8.18: Clear Signal List Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.9: Data Analyzer Waveform Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24

    4.9.1: Data Analyzer X-Axis Area and Goto Timepoint Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-25

    4.9.2: Pan T1, Pan T2, and Pan Last View Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26

    4.9.3: Timescale Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26

    4.9.4: Add Bookmark Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26

    4.9.5: Delete Bookmark Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26

    4.10: The Output Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27

    4.10.1: Copy Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27

    4.10.2: Select All Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27

    4.11: Source Code Editor Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28

    4.11.1: Source Editor Debug Tab Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-284.11.2: Undo Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28

    4.11.3: Redo Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28

    4.11.4: Cut Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28

    4.11.5: Copy Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28

    4.11.6: Paste Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29

    4.11.7: Open File Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29

    4.11.8: Insert/Remove Breakpoint Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29

    4.11.9: Data Tips Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29

    4.11.10: Data Tip Radix Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29

  • 7/27/2019 Silos User Manuel

    8/286

    Silos Users Manual

    viii Silvaco, Inc.

    4.11.11: Upscope to Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30

    4.11.12: Downscope to Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30

    4.11.13: Current Module Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30

    4.11.14: Select Scope Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30

    4.11.15: Go to Definition of Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30

    4.12: The Status Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31

    4.13: File Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-324.13.1: New Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33

    4.13.2: Open Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33

    4.13.3: Save Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33

    4.13.4: Save As Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33

    4.13.5: Save All Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33

    4.13.6: Close Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.7: New Project Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.8: Open Project Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.9: Save Project Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.10: Save Project As Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.11: Close Project Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-344.13.12: Import Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-34

    4.13.13: Export Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36

    4.13.14: Link to Gateway Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37

    4.13.15: Run Lint on Project Files Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37

    4.13.16: Run Lint on File/s Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37

    4.13.17: Save Simulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37

    4.13.18: Restore Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38

    4.13.19: Print Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38

    4.13.20: Print Analyzer Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38

    4.13.21: Recent Files Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38

    4.13.22: Recent Projects Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-384.14: Edit Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.1: Undo Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.2: Redo Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.3: Cut Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.4: Copy Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.5: Paste Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.6: Select All Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.7: Find Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39

    4.14.8: Find Next Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.9: Replace Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.10: Goto Line Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.11: Add Spice .INCLUDE card Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.12: Add Spice .LIBRARY card Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.13: Project Properties Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40

    4.14.14: Preferences Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-51

    4.15: View Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

    4.15.1: Toolbars Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

    4.15.2: Analyzer Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

    4.15.3: Explorer Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

  • 7/27/2019 Silos User Manuel

    9/286

    Silvaco, Inc. ix

    Table of Contents

    4.15.4: Watch Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

    4.15.5: Back and Forward Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66

    4.16: Analyzer Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.1: Zoom In Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.2: Zoom Out Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.3: Zoom Full Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.4: Zoom Markers Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-674.16.5: Pan T1 Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.6: Pan T2 Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.7: Pan Last View Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.8: Trace Source Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.9: Signal List Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67

    4.16.10: X-Axis Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-68

    4.17: Debug Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69

    4.17.1: Go Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69

    4.17.2: Break Simulation Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69

    4.17.3: Step Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69

    4.17.4: Finish Current Timepoint Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-694.17.5: Load/Reload Input Files Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69

    4.17.6: Reload and Go Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.7: Restart Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.8: Data Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.9: Data Tip Radix Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.10: Enable Single Step/Breakpoints Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.11: View Breakpoints Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70

    4.17.12: Insert/Remove Breakpoint Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71

    4.18: Explorer Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71

    4.19: Reports Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71

    4.19.1: Activity Reports Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72

    4.19.2: Errors and Warnings Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-73

    4.19.3: Iteration Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-73

    4.19.4: Nonconvergence Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-74

    4.19.5: Nonconvergence For Gate Designs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-74

    4.19.6: Nonconvergence (Hanging) for Behavioral Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-75

    4.19.7: Sizes Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-76

    4.19.8: Enable Code Coverage Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-76

    4.19.9: Merge Code Coverage Files Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77

    4.19.10: Export Code Coverage Data Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77

    4.19.11: Code Coverage Line Report Menu Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-774.19.12: Branch Coverage Report Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77

    4.19.13: Code Coverage Operator Report Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-78

    4.19.14: Restricting Code Coverage Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-79

    4.20: Help Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80

    4.20.1: Silos Help Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80

    4.20.2: Release Notes Menu Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80

    4.20.3: About Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80

  • 7/27/2019 Silos User Manuel

    10/286

    Silos Users Manual

    x Silvaco, Inc.

    Chapter 5:Advanced Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1

    5.1: Programming Language Interface (PLI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1

    5.1.1: Silos PLI Interface on the Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1

    5.1.2: PLI Interface on Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2

    5.1.3: List of Implemented PLI Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2

    5.2: Standard Delay Format (SDF). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3

    5.2.1: Example of SDF Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4

    5.3: Inputting Value Change Dump (VCD) Files for Stimulus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5

    5.4: Creating Smaller Save Files for Logic Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-6

    5.4.1: Using Recirculation to Create a Constant Save File Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7

    5.4.2: Saving Selected Wires and Instances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8

    5.5: How to Simulate Designs that Run on Other Simulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10

    5.6: Source File Encryption Using Sencrypt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10

    Chapter 6:

    Interactive Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16.1: Commands Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1

    6.2: Stopping Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1

    6.3: Activity Command. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1

    6.4: Bus Contention Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8

    6.5: Exporting Code Coverage Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9

    6.6: Exclude Code Coverage for Module Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10

    6.7: Keeping Code Coverage for Module Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11

    6.8: Merge Code Coverage Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11

    6.9: Control Parameters For Logic Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13

    6.10: Default Device Delay Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16

    6.11: Disk File Name Reassignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-16

    6.12: Error Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17

    6.13: Exclude Saving Simulation Node States. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17

    6.14: Exiting The Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18

    6.15: File Name Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18

    6.16: Keeping Simulation Node States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19

    6.17: Warning Message Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-19

    6.18: Exclude Saving Module Instance Variable Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20

    6.19: Keeping Module Instance Simulation Variable Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-206.20: No Convergence Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21

    6.21: Narrow Storing Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22

    6.22: Preprocessing Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23

    6.23: Probing Node States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23

    6.24: Quitting Execution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24

    6.25: Resetting Selected Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25

    6.26: Scope For Printing Module Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25

    6.27: Logic Simulation Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-26

  • 7/27/2019 Silos User Manuel

    11/286

    Silvaco, Inc. xi

    Table of Contents

    6.28: Size-Of-Data Reprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27

    6.29: Spike Summary Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27

    6.30: Storing Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28

    6.31: Strength Specification For Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29

    6.32: Symbol Modification For Output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-30

    Chapter 7:Linting Capabilities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1

    7.1: What Silos Lint Does . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1

    7.2: Why You Need Silos Lint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2

    7.2.1: Race Conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3

    7.2.2: Hardware Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-3

    7.2.3: State Machines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4

    7.2.4: Design Policies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4

    7.2.5: Syntax and Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-4

    7.2.6: Design for Testability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5

    7.3: How to run Lint in Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-57.4: Lint Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-6

    7.4.1: Lint Option Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-10

    Appendix A:Frequently Asked Questions (FAQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1

    Appendix B:Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1

    B.1: Command Line Argument Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-8

    Appendix C:

    Example Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1

    Appendix D:File Extensions Used by Silos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-1

    Appendix E:Non-Standard Verilog HDL Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-1

    E.1: Expected Values and Stimulustable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-1

    E.1.1: BNF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-1

    E.1.2: Stimulustable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-1

    E.1.3: Radix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-2

    E.1.4: Delay Time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-2E.1.5: Memory Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-3

    E.1.6: Strobe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-3

    E.1.7: I/O Pad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-4

    E.1.8: Expected Value Error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-5

    E.1.9: Expected Value Error Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-6

    E.1.10: Incremental Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-6

    E.1.11: Changing Behavioral Stimulus to a stimulustable Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-7

    E.2: Analog Extensions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-8

  • 7/27/2019 Silos User Manuel

    12/286

    Silos Users Manual

    xii Silvaco, Inc.

    E.2.1: Real and Integer Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-8

    E.2.2: Utility Transcendental Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

    E.2.3: Examples for Transcendental Math Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-9

    E.3: silos Keyword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-10

    E.4: Extensions to Turn-off, Reset and Turn-on Saving of Simulation Data. . . . . . . . . . . . . . . . . . . . . . . . . . E-10

    E.5: $save( ) Extension to Create a .cmm File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-10

    E.6: Allowing Non-Standard Extensions to Verilog HDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.1: Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.2: Procedural Assignment to Wires: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.3: Continuous Assignments to Register and Memory Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.4: Continuous Assignments Using Intra-assignment/non-blocking Delays . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.5: Default State Value for UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-11

    E.6.6: UDP Additional States for High-Z on Inputs or Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-12

    E.6.7: UDP Edge for High-Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-12

    E.6.8: UDP Multiple Edges in a Row. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-12

    E.6.9: Non-Constant Specify Block Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-12

    E.6.10: Parameter for Specify Block Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

    E.6.11: Stimulustable Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

    E.6.12: "input/output/inout" Declarations After the Variable's Declaration. . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

    E.6.13: Using Registers as Module Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

    E.6.14: Duplicate Variable Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-13

    E.6.15: Parameter Used for Sizing Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.6.16: Null Statements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.6.17: Timing Checks Without Edge Specifications for Selected Variables . . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.6.18: More Precision in "$timeformat" than " timescale" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.6.19: Missing Port Connections Connected to GND for VCS Compatibility. . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.6.20: VCS Compatibility Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-14

    E.7: $dumpactivity System Task Extension. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-15E.8: `uselib Compiler Directive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-16

    E.9: System Commands Passed as Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E-16

    Appendix F:Message Codes for Lint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F-1

    Appendix G:STARC Rule Message Codes for Lint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G-1

    Appendix H:XML Project File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H-1

    H.1: XML Project File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H-1

  • 7/27/2019 Silos User Manuel

    13/286

    Silvaco, Inc. 1-1

    1.1: Silos Overview

    SILOS is a simulation environment developed for use in the design and verification of electronic circuitsand systems. SILOS can simulate designs at the behavioral and gate levels. It can also simulate designsmodeled with the Verilog Hardware Description Language (HDL). SILOS can back annotate delaysspecified using the Standard Delay Format (SDF). The IEEE Programming Language Interface (PLI)is supported.

    1.2: Silos FeaturesDuring logic simulation, SILOS saves every changed event for every variable in a very compact, binarysave file. The save file allows SILOS to display waveforms for any signal and to trace on any variable.The save file is random access so results are quickly displayed no matter how large the simulation.

    The debugging capabilities include:

    The mouse cursor can be held over variables and expressions in the source code to directly see their

    value at a time point. Drag and drop variables and expressions directly from the source file into the Data Analyzer

    Waveform window, or from the SILOS Explorer to the Data Analyzer window to provide easy accessto the simulation results.

    Unlimited traceback for behavioral and gate designs quickly isolates the cause of Unknown levels.

    Code Coverage reporting for Line, Operator and Branch coverage display a purple dotbeside any line or operator that was not executed by the testbench.

    1.3: Platforms Supported

    SILOS is available on Windows and Linux platforms. Please contact Silvaco for an updated list of

    supported platforms.

    Chapter 1:Introduction

  • 7/27/2019 Silos User Manuel

    14/286

    Silos Users Manual

    1-2 Silvaco, Inc.

    1.4: Technical SupportSilvaco offers technical support to customers on maintenance. The most efficient way to contactSilvaco's technical support is via the support area of the Silvaco website (www.silvaco.com).

    When sending problem circuits to Silvaco.

    Describe the tool name (e.g. SILOS).

    Describe the version number of the tool (e.g. 1.0.0.R).

    Describe the operating system (e.g. Windows XP Service Pack 2).

    Please send the complete design, so that it can be run to duplicate the problem, including anylibraries and the .spjx file. You may want to compress the files using the zip format.

    Precisely describe the problem and how to run the circuit, for example:

    At time=200, node "top.out1" should be high instead of unknown. To run thecircuit, use project "problem.spjx".

    Silvaco's mailing address, phone number, and fax number are:

    Silvaco, Inc.

    4701 Patrick Henry Drive, Bldg 2

    Santa Clara, CA 95054

    Phone: (408) 567-1000

  • 7/27/2019 Silos User Manuel

    15/286

    Silvaco, Inc. 2-1

    This chapter provides an introduction to SILOS using a quick start tutorial. The Quick Start Tutorial isdesigned for more experienced users of simulation tools who need to quickly learn how to run SILOS.

    2.1: Before You BeginSILOS contains a number of tutorial examples. These examples are stored in the examples directory inthe SILOS installation. Before beginning, please copy the SILOS examples directory from the SILOSInstallation Directory to your personal directory.

    2.2: Starting Silos

    On a Windows platform, SILOS can be started by double clicking on the SILOS icon in SilvacoShortcuts on the desktop.

    On a Linux platform, SILOS can be started by typing silos in a command line shell.

    Figure 2-1: Starting Silos

    Chapter 2:Quick Start Tutorial

  • 7/27/2019 Silos User Manuel

    16/286

    Silos Users Manual

    2-2 Silvaco, Inc.

    2.3: Opening the ProjectLoad the quick start tutorial project by selecting the FileOpen Project menu.

    Then open the analog project example in the examples/tutorial/analog directory by selecting theanalog.spjx file.

    Figure 2-2: Open Project

  • 7/27/2019 Silos User Manuel

    17/286

    Quick Start Tutorial

    Silvaco, Inc. 2-3

    2.4: Running the Simulation

    Figure 2-3: Go Button

    The simulation can be started by clicking on the Go button. When the simulation end time is reachedthe simulation stops.

    Figure 2-4: Simulation Complete

    Note: SILOS will display a busy indicator in the status bar in the lower right hand corner to indicate the tool is running asimulation.

  • 7/27/2019 Silos User Manuel

    18/286

    Silos Users Manual

    2-4 Silvaco, Inc.

    2.5: Opening the ExplorerThe Explorer can be used to examine the design hierarchy. Click on the Explorer button.

    Figure 2-5: Explorer Button

    Figure 2-6: The Explorer

    The design hierarchy can be expanded by clicking on the blocks in the design.

  • 7/27/2019 Silos User Manuel

    19/286

    Quick Start Tutorial

    Silvaco, Inc. 2-5

    Figure 2-7: Expanded Design Hierarchy

  • 7/27/2019 Silos User Manuel

    20/286

    Silos Users Manual

    2-6 Silvaco, Inc.

    2.6: Opening the Waveform ViewerYou can use one of two Waveform Viewers to examine the results of the simulation.

    The viewer selection is controlled by the program preferences dialog EditPreferencesWaveformViewer. Clicking on the Waveform Viewer button will start the selected viewer.

    The Waveform Viewer selection will affect the simulation data files created and the method forviewing these files offline.

    Simulation data files: The data displayed in the waveform viewer is stored in a binary file. This filewill have an extension of.rawd ifSMARTVIEW is selected and .simif the Analyzer is the selected

    viewer.

    Offline viewing of waveforms: IfSMARTVIEW is the selected waveform viewer, the simulation datafile/s are available after the program has been closed. These files can be viewed by runningSMARTVIEW and opening the desired data file/s. If the Analyzer is the selected viewer, waveformscan only be viewed interactively while the program is running. Simulation data can be viewed at alater time if the state of the simulator is saved (FileSave Simulation) prior to exiting theprogram. The program can be restarted and the simulation restored using FileRestoreSimulation. After doing the restore, the Analyzer can be used to view the saved data from therestored simulation.

    Figure 2-8: Waveform Viewer Button

    Figure 2-9: The Analyzer

    Click on the Zoom Full button to see the results for the entire simulation.

  • 7/27/2019 Silos User Manuel

    21/286

    Quick Start Tutorial

    Silvaco, Inc. 2-7

    Figure 2-10: Zoom Full Button

    2.7: Accessing On-line HelpThe complete SILOSUSERSMANUAL is available as an on-line help file. This manual is also available as aPDF file in the docs subdirectory in the SILOS installation for viewing and printing.

    Figure 2-11: Help MenuTo access the on-line help for SILOS:

    Select the Help menu.

    The following are provided as on-line help files:

    SILOSHELP. This help file provides the complete SILOSUSERSMANUAL as an on-line help file.

    Release Notes. The release notes for the product.

    Many questions are answered inAppendix A: Frequently Asked Questions (FAQ).

    2.8: Exiting Silos

    Exit SILOS by selecting the FileExit menu selection. This concludes the Quick Start Tutorial.

  • 7/27/2019 Silos User Manuel

    22/286

    Silos Users Manual

    2-8 Silvaco, Inc.

  • 7/27/2019 Silos User Manuel

    23/286

    Silvaco, Inc. 3-1

    3.1: IntroductionThis section contains a number of tutorials that introduce the features ofSILOS.

    The files used for the Tutorial examples can be found in the silos/tutorial subdirectory inexamples installation directory.

    Please note:

    Actions that you should do to run this tutorial are in bold.

    Click on means place the mouse cursor on the appropriate item and click and release on the itemusing the left mouse button.

    You can see the tool tips (text labels) for each of the buttons on the toolbars for SILOS by placing themouse cursor over a button for a few seconds until the text label for the button appears. Then movethe mouse along the toolbar and stop at each button to see the text label. There can be more thanone toolbar. The location of each toolbar on the screen can be changed by using the mouse to graban edge of a toolbar and dragging the toolbar to the desired location.

    Each Tutorial assumes that you follow the topics in the order they are listed. If you skip sometopics then you may experience difficulties with that Tutorial.

    3.2: Tutorial ProjectsThe examples subdirectory for the SILOS installation has a number of tutorials to assist you. Beforeusing these examples it is recommended that you copy them to your personal directory, and ifnecessary change the file permissions.

    The tutorial subdirectory contains a number of Verilog examples.Appendix C: Example Projectscontains a detailed list of all examples supplied with SILOS.

    3.3: Tutorial Topics

    The topics presented in the following tutorial are: Creating a project.

    Simulating a Design.

    Analog and Digital Waveforms.

    Debugging Designs.

    Code coverage.

    Gate level debugging.

    Error reporting.

    Chapter 3:Tutorial Examples

  • 7/27/2019 Silos User Manuel

    24/286

    Silos Users Manual

    3-2 Silvaco, Inc.

    3.4: Tutorial 1: Creating a ProjectThis tutorial introduces the concept of a project. It shows how to create projects.

    Projects provide easy access to the input files and libraries for a design.

    Projects can be easily passed between designers in a team by simply providing the project filename.

    All of the settings to run the design and organize the signal names for viewing waveforms aresaved in a project.

    Procedure

    The circuit for this example is a RTL description of a newspaper vending machine. The project has twofiles, vendtest.v and ven.v.

    This section shows you how to create a new project for inputting your source files.

    Start SILOS.

    Select the FileNew Project menu selection to open the Create New Project dialog box.

    Figure 3-1: Create New Project Dialog

    To change to the tutorial/rtl subdirectory of the examples directory, use the drop-down arrowfor the Save in box in the Create New Project dialog box.

    In the File name box, enter rtl, and then click on the Save button to close the dialog box. SILOSwill automatically append the suffix .spjx to the project name if you do not add a suffix to theproject name.

    The Project Properties dialog box will be automatically opened so that you can specify the input filesfor the project.

  • 7/27/2019 Silos User Manuel

    25/286

    Tutorial Examples

    Silvaco, Inc. 3-3

    Figure 3-2: Project Properties Dialog

  • 7/27/2019 Silos User Manuel

    26/286

    Silos Users Manual

    3-4 Silvaco, Inc.

    To input the files for project rtl.spjx:

    Click on theAdd button to open the File Selection dialog.

    Figure 3-3: File Selection Dialog

    Select the file vendtest.v and clickAdd to add it to theVerilog Files list.

    Next, add the file vend.v the same way.

    Now, click on the Ok button to close the Project Properties dialog box.

    To specify library files, see the -y and -v command line options inAppendix B: Command LineArguments.

    Exit SILOS by using FileExit. When SILOS exits it will automatically save the project and any recentchanges to the associated .spjx file.

    This concludes the tutorial.

  • 7/27/2019 Silos User Manuel

    27/286

  • 7/27/2019 Silos User Manuel

    28/286

    Silos Users Manual

    3-6 Silvaco, Inc.

    Figure 3-5: Simulation Output Window

    3.5.1: Messages in the Output Window

    To see the source statement that caused a message in the Output window, such as from a $displaystatement or a timing violation message, double-click on the message Adding coins to vendingmachine and file vendtest.v will be opened in a Text Editor window with the Verilog HDLstatement highlighted that caused the message.

    SILOS uses a highlight color to identify messages in the output window that respond to a double clickaction.

  • 7/27/2019 Silos User Manuel

    29/286

  • 7/27/2019 Silos User Manuel

    30/286

    Silos Users Manual

    3-8 Silvaco, Inc.

    3.5.2: Using the Explorer to Display Signals as Waveforms Any variable can be viewed as a waveform without re-simulating. This is possible because SILOS's

    algorithms quickly and compactly save everything to disk when simulating.

    The design's hierarchy is displayed so that variables can be easily selected.

    Procedure

    SILOS has the capability to drag and drop variable names from the Explorer window (and also fromany HDL source window) to the Data Analyzer window. To do this:

    Click on theAnalyzer button on the toolbar to open the Data Analyzer window.

    Next, click on the Explorer button on the toolbar to open the Explorer window. You can changehow the signal names are sorted in the SILOS Explorer by clicking with the right mouse button onthe right hand side of the Explorer to open the context menu, and then selecting Sort by Name.

    Figure 3-8: Explorer and Data Analyzer Window

    The instance name stimulus, in the left-hand box of the SILOS Explorer window, is the top-levelmodule for the design. To select the signal names for instance stimulus:

    Use your mouse to select instance stimulus.

    To highlight the variable names for instance stimulus, click and release on the first signal name,clock. Next, hold down the Ctrl key on the keyboard, and then click and release on additionalsignal names: coin[1:0], newspaper and reset.

    To drag and drop signal names, click on the highlighted variable names without releasing the leftmouse button, and drag them from the Explorer window and drop them in the Name list box in

  • 7/27/2019 Silos User Manuel

    31/286

    Tutorial Examples

    Silvaco, Inc. 3-9

    the Data Analyzer window. The waveforms for each signal will then appear in the Analyzerwindow.

    To drag and drop signal names from further down in the hierarchy:

    Click on the + sign to the left of instance stimulus to show the hierarchy beneath it. You can alsochange how the signal names are sorted by clicking with the right mouse button in the right side of

    the Explorer to open the context menu, and then selectingSort by Type

    . Then select instance vendY to show the variable names in the right hand side of the Explorerwindow. The symbol to the left of each variable shows its function. Input ports have the pad symbolpointing to the right, output ports have the pad symbol pointing to the left, and inout ports havethe pad symbol pointing in both directions. For non-port variables, the symbol for a wire is a wireconnecting two points, the symbol for a register is a flop symbol, P is used for parameters, R forreal variables and I for integer variables.

    Select signals NEXT_STATE and PRES_STATE for instance vendY, and use the Add Signals toAnalyzer menu selection in the Explorers right hand side context menu by clicking with the rightmouse button in the right hand pane of the Explorer.

  • 7/27/2019 Silos User Manuel

    32/286

  • 7/27/2019 Silos User Manuel

    33/286

  • 7/27/2019 Silos User Manuel

    34/286

    Silos Users Manual

    3-12 Silvaco, Inc.

    Figure 3-11: Option to Display the Scope or Value Column of the Name List Box

  • 7/27/2019 Silos User Manuel

    35/286

    Tutorial Examples

    Silvaco, Inc. 3-13

    3.5.5: Rearranging the Signal Names Rearranging the signal names using drag and drop makes it easier to view relationships between

    signals.

    Procedure

    To prevent source windows from popping up, click on the Trace Source button on the Analyzertoolbar so that the button is out and the Trace Source capability is off. The Trace Source capability isdiscussed in Section 3.7.1:Trace Source.

    Signal names can be rearranged in the Name list box by using the mouse to drag the signal and thendrop it just before the pointed end of the mouse cursor arrow. For example:

    Select signal reset with the mouse. Drag it to just above the signal clock.

    Figure 3-12: Rearranging the Signal NamesMultiple signals can also be selected using the following modifier keys:

    To perform multiple signal selections, keep the control key (Ctrl) depressed while using the mouseto select.

    To select a set of signals in a contigious list, keep the Shift key depressed while dragging themouse.

    Having selected a group of signals, the following modifiers can be used to control whether the signalsare moved or copied:

    The Shift key will allow the signals to be moved to a new location.

    The Ctrl key will allow the signals to be copied to a new location.

  • 7/27/2019 Silos User Manuel

    36/286

    Silos Users Manual

    3-14 Silvaco, Inc.

    3.5.6: Setting Waveform Colors By default, a waveform is displayed using a color to denote its strength.

    A waveforms color can be changed to allow it to be easily located in the Data Analyzer window.

    The Data Analyzer background color can also be changed.

    Procedure Right mouse click on signal coin[1:0] in the Name list box in the Data Analyzer to open the

    context menu, and select Set Trace Color to open the Change Signal Color dialog box. Choosered as the waveform color, and click on the OKbutton to close the dialog box.

    Figure 3-13: Change Signal Color Dialog

    To use color to represent a waveforms logic strength, right mouse click on signal name in theName list box in the Data Analyzer to open the context menu, and select Set Strength ColorCoding. The color used to depict the waveform will depend on the logic strength of the waveformat a given time.

    To change the background color use the EditPreferencesOptionsWaveformBackground menu selection.

  • 7/27/2019 Silos User Manuel

    37/286

  • 7/27/2019 Silos User Manuel

    38/286

    Silos Users Manual

    3-16 Silvaco, Inc.

    3.5.8: Displaying Vector Contents using Symbolic Names Vectors and buses can be displayed with meaningful state machine names, such as 5 cents. This

    eliminates constantly looking up the state machine symbol corresponding to a hex value for avector.

    Procedure

    Use a Symbol Table file to establish the relationship between the opcode and the data. Because adesign may contain many types of opcodes, each opcode set is given a name. That opcode set is appliedto the signal using Set Radix. One way to think of the opcode is that it is implemented as a specialtype of radix.

    1. Decide on name for the set of opcodes (e.g. coin_values).

    2. Decide on a mapping between values and opcodes (e.g. 2=dime).

    3. Create a Symbol Table file to enable this mapping (e.g. opcode.sym).

    4. Enter the opcode mapping in the Symbol Table file using the following format:

    [coin_values]0=none

    1=nickel2=dime3=dime + nickel

    Note: You can add additional entries for other opcodes in the same file.

    5. Save the file.

    6. Load the mapping using the EditProject PropertiesOther Settings menu option.

    7. Select the signal you wish to be represented as an opcode.

    8. Use the context menu and select Set Radix from the menu. A dialog box will appear.

    9. From the dialog box, select Symbol for the Radix and the opcode name (e.g. coin_values) for

    the symbol table.10. Click OKto represent the signal using the selected opcodes.

    To display the state machine values for vectors coin[1:0], NEXT_STATE[1:0], andPRES_STATE[1:0]:

    Select the EditProject PropertiesOther Settings menu.

  • 7/27/2019 Silos User Manuel

    39/286

  • 7/27/2019 Silos User Manuel

    40/286

  • 7/27/2019 Silos User Manuel

    41/286

    Tutorial Examples

    Silvaco, Inc. 3-19

    3.5.9: Creating an Annotated Timeline for the Waveform Display An annotated timeline displays the design's operation using meaningful symbols making it much

    easier to find and debug the design's operations.

    Procedure

    If you are debugging a design, displaying a vector as ASCII text that explains what the simulation isdoing can be very useful. To demonstrate this:

    Figure 3-18: Displaying the Vectors in ASCII Text

    Use the Open File button on the Main toolbar to open file vendtest.v.

    Scroll to the bottom of file vendtest.v, and view the case statement used to set the vector info toASCII strings. This illustrates how to setup the ASCII vector in your source code so that you canuse it to display a timeline.

  • 7/27/2019 Silos User Manuel

    42/286

    Silos Users Manual

    3-20 Silvaco, Inc.

    Figure 3-19: Displaying the Vectors in ASCII Text

    To add signal info directly from the source window, double click on signal info to select it. Nowuse the mouse to drag and drop signal info to the bottom of the Default group in the Name list boxfor the Data Analyzer window.

    To change the radix for signal name info to String, right click on signal info[96:1] in theName list box for the Data Analyzer window. Then select the Set Radix selection to open the SetRadix dialog box.

    In the Set Radix dialog box, change the radix to String, and click on the OKbutton. Because theinitial value is an Unknown level x for vector info, you can scroll to the right in the DataAnalyzer to see meaningful descriptions. Make sure you click on the minus sign (-) for the defaultgroup to save the new radixes.

  • 7/27/2019 Silos User Manuel

    43/286

  • 7/27/2019 Silos User Manuel

    44/286

    Silos Users Manual

    3-22 Silvaco, Inc.

    3.5.11: Creating Groups

    Procedure

    The Namelist box for the Data Analyzer has the following options for groups:

    Figure 3-20: Context Menu in Name List Box

    New Group: This selection can be used to add a new group to the Name list box.

    Insert Group: This selection opens the Insert Group dialog box. This dialog box will insert agroup within a group. The inserted group is displayed as a bus, which can be expanded and hiddenby double-clicking on it.

    Show Groups: This selection opens the Select Visible Groups dialog box. This dialog box can beused to select which groups are displayed in the Data Analyzer.

    Move Item Up: This selection moves the selected group up.

    Move Item Down: This selection moves the selected group down.

    When the Data Analyzer window is opened, the Default group is displayed. To save the signals that

    have been added to the Default group:

    Click on the minus sign (-) just to the left of the Default group in the Name list box.

    SILOS will ask you if you want to save the changes to the Default group (unless they have alreadybeen saved). Click on theYes button (if the signals have not already been saved).

  • 7/27/2019 Silos User Manuel

    45/286

  • 7/27/2019 Silos User Manuel

    46/286

  • 7/27/2019 Silos User Manuel

    47/286

  • 7/27/2019 Silos User Manuel

    48/286

    Silos Users Manual

    3-26 Silvaco, Inc.

    3.5.15: Scan-to-Change, Scan-to-Value You can scan to change in a waveform state, or scan to a particular waveform value. Easy scanning

    and panning saves time when debugging.

    Procedure

    Figure 3-24: Enter Scan Value Drop-Down Box

    To demonstrate scanning to a change edge, highlight vector NEXT_STATE[1:0] in the Name listbox and click on the 1> toolbar button to scan the T1 marker to the right. The state value for eachwaveform in the Value column will change as you scan the T1 marker edge to edge. The T2marker has no effect on the state values in the Value column.

    To demonstrate scanning to a value, click on the drop down arrow for the Scan to Change box onthe main toolbar, and choose the Enter Scan Value selection. Enter the value 15 cents in thebox on the main toolbar, and click on the 1> button on the Main toolbar to scan the T1 marker tothe right as it matches each value of15 cents for the vector NEXT_STATE[1:0]. Scan to Valuecan be used to scan to the value for a bit, a vector, or a symbolic name because Scan to Value does acharacter match. The ? character can be used as a don't care character, such as ?ff? would matchwith 1ff3 and ffff.

    Figure 3-25: Scan to Change

    The Pan to T1, Pan to T2 and Pan Last buttons on the Analyzer toolbar let you pan to the T1, T2timing markers, or pan to the last view in the Data Analyzer.

  • 7/27/2019 Silos User Manuel

    49/286

    Tutorial Examples

    Silvaco, Inc. 3-27

    Figure 3-26: Scan to Value

  • 7/27/2019 Silos User Manuel

    50/286

    Silos Users Manual

    3-28 Silvaco, Inc.

    3.5.16: Zoom-Buttons Allows for easy viewing of waveforms across simulation time.

    Procedure

    Figure 3-27: Zoom Buttons

    The zoom buttons on the toolbar allow you to zoom-full, zoom-out, zoom-in, and zoom-in-betweenmarkers.

    To demonstrate the zoom capabilities:

    Click on the Zoom-Full button on the toolbar to display the entire simulation range. This maytake some time with large simulations, but you can stop the zoom-full by holding down the escapekey Esc on the keyboard.

    Use the Zoom Out button to zoom-out by a factor of two and the Zoom In button to zoom-in by a

    factor of two. Next, use the T1 and T2 timing markers to frame a portion of the simulation range.

    Use the Zoom Markers button on the toolbar to zoom in-between the timing markers.

    The Zoom Markers feature is also linked to the middle mouse button for systems that supportthat function.

    3.5.17: Scrollbar

    Allows for scrolling of waveforms across simulation time.

    Procedure

    Figure 3-28: Waveform Window Scrollbar

    The scrollbar at the bottom of the waveform display can be used as a go to button. Use the mouse tomove the scrollbar to approximately time 1 us (micro seconds). The new time values are displayedalong the horizontal time axis as you move the scrollbar. The keyboard left and right arrow keys mayalso be used to scroll the waveform window.

  • 7/27/2019 Silos User Manuel

    51/286

    Tutorial Examples

    Silvaco, Inc. 3-29

    3.5.18: Bookmark, Timescale, Goto Timepoint Enables you to quickly jump between simulation times and resolutions during debug.

    Procedure

    The Data Analyzer window has a context menu that includes selections for Goto Timepoint, Time

    Scale andAdd Bookmark menu selections. To invoke the context menu, use the right mouse buttonto click on the timescale just above the Waveform Display window. The context menu will remainopen while the left mouse button is used to select a menu item.

    Figure 3-29: Add Bookmark

    Figure 3-30: Goto Timepoint, Time Scale, Add Bookmark Dialog

    The Goto Timepoint menu selection opens the Goto Timepoint dialog box. The specified timepointcan be displayed either at the left or the center of the Waveform Display window.

  • 7/27/2019 Silos User Manuel

    52/286

  • 7/27/2019 Silos User Manuel

    53/286

  • 7/27/2019 Silos User Manuel

    54/286

    Silos Users Manual

    3-32 Silvaco, Inc.

    Figure 3-32: Data Tip

    3.5.21: Exiting Silos

    Exit SILOS by selecting the FileExit menu selection. This concludes the Tutorial.

  • 7/27/2019 Silos User Manuel

    55/286

    Tutorial Examples

    Silvaco, Inc. 3-33

    3.6: Tutorial 3: Analog and Digital WaveformsThis Tutorial covers how to view and manipulate Analog and Digital waveforms.

    3.6.1: Opening the Project

    Start SILOS and begin by opening the analog project example in the examples/verilog-d directory.

    Figure 3-33: Open Project

  • 7/27/2019 Silos User Manuel

    56/286

  • 7/27/2019 Silos User Manuel

    57/286

  • 7/27/2019 Silos User Manuel

    58/286

    Silos Users Manual

    3-36 Silvaco, Inc.

    Figure 3-40: Result of Expanding All Analog Signals

    All analog signals can be collapsed by selecting Collapse All Analog Signals from the Analyzercontext menu.

    3.6.4: Changing Display Type of Analog Waveforms between PWL and Step

    Analog waveforms can be displayed as either a Step or Piece Wise Linear (PWL) function. By default, awaveform is displayed as a PWL function.

    In order to change how the waveform is displayed, select the signal name and right click to bring upthe Context menu. From this menu, select Analog Display Options. Then change the DisplayType to Step.

    Figure 3-41: Select Signal

  • 7/27/2019 Silos User Manuel

    59/286

    Tutorial Examples

    Silvaco, Inc. 3-37

    Figure 3-42: Set Analog Display Options Menu Selection

    Figure 3-43: Set Display Type Menu

  • 7/27/2019 Silos User Manuel

    60/286

  • 7/27/2019 Silos User Manuel

    61/286

    Tutorial Examples

    Silvaco, Inc. 3-39

    3.6.5: Creating Analog Overlays

    Any number of analog waveforms can be superimposed in an overlay. In order to form an overlay,create a group containing the signals of interest (see Section 3.5.10:Groups, Buses, Vectors andSignals in the Analyzer), select the group, and then use the Display Group as Analog Overlayoption from the context menu.

    Figure 3-46: Analog Overlay

    3.6.6: Expanding an Analog OverlayAn analog overlay can be expanded in exactly the same way as any other analog signal by doubleclicking on the signal, or clicking on the + to the left of the signal name (see Section 3.6.3:Expanding

    Analog Waveforms).

    Figure 3-47: Analog Overlay After Expansion

  • 7/27/2019 Silos User Manuel

    62/286

  • 7/27/2019 Silos User Manuel

    63/286

    Tutorial Examples

    Silvaco, Inc. 3-41

    3.6.8: Cha


Recommended