SMASH™ Reference Manual ______
Total Page:16
File Type:pdf, Size:1020Kb
Using this manual ___________________________________________________________________________________ Rev #1 - June 1997 - Dolphin Integration 1 SMASH™ Reference manual ___________________________________________________________________________________ Using this manual This documentation is divided in three parts, the User manual, the Reference manual, and Appendixes. The User manual provides a complete description of the menus. The Reference manual provides details about formats, directives, syntax etc. Appendixes provide details about miscellaneous topics. To get a quick overview of the SMASH™ system, read the Chapter 1 - Files, in the Reference manual, which describes the different files that SMASH manipulates, and flip through the User Manual. Many topics can not be described without refering to other topics, so we do not recommend a linear reading of the whole manual. You will probably use the index to go to what you are interested in, and then jump to related subjects. User manual Description of menus This section details the available menus and commands. You will have to refer to this section for “operational” details. Reference manual Chapter 1 - Files An overview of the input and output files in SMASH™. How the netlists are organized, where the simulation results are etc... Chapter 2 - Preferences and conventions An overview of the preference file (smash.ini), and a summary of the general syntax rules and conventions Chapter 3 - Analog primitives The descriptions of the syntax for the analog elements (resistors, transistors etc.) Chapter 4 - Digital primitives The descriptions of the syntax for the digital primitives, together with information about digital simulation. Chapter 5 - Hierarchical descriptions How to build hierarchical netlists (use of subcircuits and modules). Chapter 6 - Analog stimuli Provides a description of the independent voltage and current sources. Also provides alternate ways to create complex analog stimuli. 2 Using this manual ___________________________________________________________________________________ Chapter 7 - Digital stimuli How to define digital input patterns. Chapter 8 - Macros Details the use of macros for writing compact and readable digital patterns, for complex digital simulation. Chapter 9 - Directives Details the available directives you may enter in the pattern file. How to specify waveforms you want to watch, analyses you want to run etc. Chapter 10 - Device models Describes the models for semi conductor devices (MOS transistors, bipolar transistors etc.) Chapter 11 - Libraries Describes the library mechanism in SMASH™, how to build and organize library files. Chapter 12 - Analog/digital interface Describes the interface between analog and digital devices. What happens for nodes connected to both a resistor and a NAND gate... Chapter 13 - Analog behavioral modelling How to write and compile an analog behavioral module using ABCD. Will be of interest if you have a SMASH option which allows compilation of behavioral modules. Chapter 14 - Digital behavioral modelling How to write and compile a digital behavioral module. Will be of interest if you have a SMASH option which allows compilation of behavioral modules. 3 SMASH™ Reference manual ___________________________________________________________________________________ 4 User manual - Description of menus ___________________________________________________________________________________ User manual - Description of menus Description of Menus menus Overview This chapter presents the menus and items in the menus. Most of the menus are simple (non hierarchical) menus. Some of them (Analysis, Waveforms...) contain one-level hierarchical menus. Frequently used commands have keyboard accelerators associated with them. 5 SMASH™ Reference manual ___________________________________________________________________________________ File menu SMASH™ works with a “multiple document” interface. It handles text windows as well as graphic (simulation) windows. For text editing, it contains a built-in, multiple window, text editor. The File menu contains standard items for opening, saving, closing etc. the different windows in the application. It also contains the necessary items to configure a printer and to print text as well as graphics. The File menu. File New This command opens a text window named “Untitled n” (n being an index). It is possible to edit simple text into this window. You can save the contents of this window on the disk by activating the Save or Save as… commands. If you close an “Untitled n” window by clicking in the close box which is located in its top left corner, or by activating the Close, Close all or Quit commands, a dialog box will pop and ask you if you want to save the changes. File Open... This command allows opening a text file for edition. The file to open is selected through a standard “File open...” dialog. Several text files can be opened at the same time. During a normal SMASH™ session, usually at least files circuit.nsx (the file containing the netlist), and circuit.pat (the file containing the stimuli and conditions of simulation) will be opened at the same time. Specific to PCs and Unix: If a file name is selected in the front most text window, activating the Open command will open the selected file. This is a convenient shortcut when debugging errors which are located in library files, as it saves the time needed to open the standard dialog, navigate through the directories etc. 6 User manual - Description of menus ___________________________________________________________________________________ The file name may be either a full file name with a complete path, or a simple name, in which case the current directory is used to try to locate a file with this name. File Close all Close all allows to close all the windows of the application (if the content of a window needs to be saved before closing, you will be prompted for confirmation). The Close all command is useful when you want to work with a different circuit than the one you currently work on. It removes the current data base from the memory, and allows you to load another circuit with the Load Circuit command. After a Close all, you are back to the initial state of the application. Normally (see notes below), if a circuit is loaded, the current setup (graphs, waveforms and scalings) of graphic simulation windows is automatically saved to the pattern file upon a Close all command. Specific to PCs and Unix: This is the default behavior. If you want to disable this automatic “save”, you may enter some instructions to do so in the smash.ini file. Create a section named [autosave] in the smash.ini file, and add the saveoncloseall entry. This entry may be set to yes (the default) to enable the automatic “save”, or to no if you want to disable the automatic “save”. See also the Quit command. Example: [Autosave] saveoncloseall = no ; this will disable the auto. save when Close all ; is activated. File : smash.ini File Close This command allows to close the front window. If it is a text window, and if its content has been modified, a dialog box will ask you if you want to save the changes to the disk. File Save If the active window is a text window, this command allows to save its content to a file. If a file is already associated with this window, the current content of the window will be saved under the same name. If the window’s name is “Untitled n”, i.e. no file has been associated with the content of the window yet, a dialog box will ask you to enter a file name. If the active window is a simulation window, Save will update the .TRACE and .LTRACE directives in the pattern file, so that they reflect the current setup of the window. File Save as... 7 SMASH™ Reference manual ___________________________________________________________________________________ Command by which the content of the active window can be saved under a different file name. This command is usable only if the active window is a text window. If name of the window is “Untitled n”, i.e. no file has been associated with the content of the window, a dialog box will allow you to specify a file name. File Save a copy as... Command by which the content of the active window is saved in another file (created for this purpose) than the one presently associated with the window. This command is usable if the active window is a text window. File Revert... This command restores the last-saved version of the current file, and discards any changes made since the previous “save”. This command is usable if the active window is a text window. File Page setup... Specific to the Macintosh This command displays the standard “Page Setup” dialog that lets you specify the size of the paper, printing orientations etc. File Print... The standard print dialog box lets you print the active window, either text or graphics. Specific to the PC: Results of printing for graphic windows can be modified with options in the smash.ini file. The smash.ini file is an initialization/option file containing sections and in each section, some options (entries). See the smash.ini file chapter in this manual. The options related to printing are located in a section of smash.ini named [Print]. Several entries are possibly specified in this section. Syntax for the [Print] section in smash.ini file: [Print] fillpaperpage = yes | no scalingfactor = x markers = yes | no blackandwhite = yes | no File : smash.ini Note: these options do not apply in case you print a text window. The fillpaperpage variable may be set to yes or no. If fillpaperpage is set to yes, the drawing will occupy the entire sheet of paper, regardless of the size and position of the window on the screen. In this mode, if the window is really small (in 8 User manual - Description of menus ___________________________________________________________________________________ terms of screen area) when you launch the Print command, you will probably get poor quality results (you should maximize the window before printing it). If fillpaperpage is set to no, the position and size of the picture on the paper reflect the position and size of the window on the screen (kind of “wysiwyg” mode).