


SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



NNNNAAAAMMMMEEEE
     simeye - simulation signal displayer and editor

SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
     ssssiiiimmmmeeeeyyyyeeee [ X options ] [ -Llmcab ] [ cell ]

OOOOPPPPTTTTIIIIOOOONNNNSSSS
     Beside the standard X Toolkit options (e.g. to set the
     display, the geometry, and the foreground color of the pro-
     gram), the following other options may be specified:

     ----hhhhiiiigggghhhh____lllloooowwwwCCCCoooolllloooorrrr _c_o_l_o_r
	  Specifies the color for signal values that are logic O
	  or logic I.

     ----uuuunnnnddddeeeeffffiiiinnnneeeeddddCCCCoooolllloooorrrr _c_o_l_o_r
	  Specifies the color for signal values that are logic X.

     ----vvvvoooollllttttssssCCCCoooolllloooorrrr _c_o_l_o_r
	  Specifies the color for analog signal values.

     ----LLLL   Load window settings each time when new signals are
	  read.

     ----llll   Use sls-logic as simulation type (default).

     ----mmmm   Use sls-timing as simulation type.

     ----cccc   Use spice as simulation type.

     ----aaaa   Use analog representation for sls signals.

     ----bbbb   Use digital representation for sls signals (default).

DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
     _S_i_m_e_y_e is an X-window based simulation user interface for
     the _s_l_s(_1_I_C_D) simulator and the _s_p_i_c_e(_1_I_C_D) simulator.  The
     program can be used to inspect the graphical representation
     of the output signals of both simulators and it can be used
     to edit input signals that are described in the sls command
     file format (see "sls: switch-level simulator user's
     manual").	Moreover, from _s_i_m_e_y_e simulations can be run by
     starting either the _s_l_s simulator or the _s_p_i_c_e simulator
     (The latter is done via the script _n_s_p_i_c_e(_1_I_C_D)).

     The following program argument may be specified:

     _c_e_l_l      This name specifies the name of the cell for which
	       simulation signals are displayed and/or edited.

     The corresponding file from which the signals are read or to
     which the signals are written has a name that is equal to



		   The Nelsis IC Design System			1






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



     the cell name with an extension ".res" for sls digital (out-
     put) signals, an extension ".plt" for sls analog or waveform
     (output) signals, an extension ".ana" for spice (output)
     signals, and an extension ".cmd" for command file (input)
     signals.  The spice output file should contain the spice
     signals in tabular format.  When running the program _s_p_i_c_e
     directly this is achieved by using the card .print tran ...
     in the spice input file.  When running _n_s_p_i_c_e, this is
     achieved by using sls plot commands in the command file.

CCCCOOOOMMMMMMMMAAAANNNNDDDDSSSS
     Commands that can interactively be given are:

     _C_E_L_L This field specifies the name of the cell to which the
	  signals belong.  The cell name is given by the program
	  argument (see above) or it is specified by the user
	  while running the program.  To edit it, use the left
	  arrow, right arrow and backspace and/or delete keys of
	  the keyboard.  To load the signals of the specified
	  cell, click the read button.

     _S_L_S-_L_O_G_I_C	_S_L_S-_T_I_M_I_N_G  _S_P_I_C_E
	  These buttons define the type of simulation.	When
	  clicking the run button, an sls simulation at level 1
	  or 2 is performed when SLS-LOGIC is active, an sls
	  simulation at level 3 is performed when SLS-TIMING is
	  active, and a spice simulation is performed when SPICE
	  is active.  When clicking the read button, sls signals
	  are read when SLS-LOGIC or SLS-TIMING is active, and
	  spice signals are read when SPICE is active.

     _A/_D  _A/_D  _A
	  These three buttons, that are positioned immediately to
	  the right of the simulation-type buttons, specify the
	  type of signal representation that is used.  For SLS-
	  LOGIC and SLS-TIMING these buttons can have a value "A"
	  (for analog) or "D" (for digital).  For SPICE the value
	  of the button is always "A".

     _R_E_A_D Load a new signal file.  Normally, current signals are
	  cleared from the program.  However, if the shift key is
	  held down while pressing the read button the new sig-
	  nals will be appended to the current signals.

     _R_U_N  Perform a simulation by using either the _s_l_s simulator
	  or the _s_p_i_c_e simulator.  For both simulators _s_i_m_e_y_e
	  uses the command file _c_e_l_l.cmd.  The spice simulator is
	  run by calling the program _n_s_p_i_c_e. If any error message
	  occurs it will automatically be displayed by _s_i_m_e_y_e.
	  When the _s_l_s simulator is run, also intermediate simu-
	  lation results are displayed.  At the end, in both
	  cases, the final simulation results are displayed.  A



2		   The Nelsis IC Design System






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



	  simulation may be aborted by typing <control>C in the
	  simeye window (place the cursor in the simeye window
	  and type the character c while holding the control key
	  down).

     _F_U_L_L Draw all present signals from the beginning of the
	  simulation time till the end of the simulation time.

     _R_E_D_R_A_W
	  Redraw the current window.

     _I_N   Zoom in on the current window.  When the shift key is
	  held down and the window contains only one analog sig-
	  nal, also a zoom-in on the y-axis of the signal is per-
	  formed.

     _O_U_T  Zoom out on the current window.

     _L_E_F_T, _R_I_G_H_T, _U_P _A_N_D _D_O_W_N _A_R_R_O_W
	  Move the current window leftwards, rightwards, upwards
	  or downwards respectively.

     _S	  Save the current window settings (i.e. start-time,
	  stop-time and the names of the signals that are
	  displayed) in a file (The name of this file is speci-
	  fied in the configuration file).

     _L	  Load the current window settings (i.e. start-time,
	  stop-time and the names of the signals that are
	  displayed) from a file (The name of this file is speci-
	  fied in the configuration file).

     _M_O_V_E With this command the order of the signals can be
	  changed or one signal can be placed over another signal
	  in order to compare them.  First the signal that is
	  moved or that is placed over another signal is
	  selected, and then the new position of the signal is
	  selected.  To place the selected signal over another
	  signal one should hold the shift key down while select-
	  ing the new position.  To remove a signal that is
	  placed over another signal, initially select the signal
	  with the shift key held down.

     _P_R_I_N_T
	  Generate a hardcopy of the current screen.

     _V_A_L_U_E
	  Move a vertical scanline over the display window,
	  according to the position of the pointer, and show the
	  value of the corresponding x position (and y position).
	  When clicking the middle (or right) button of the
	  mouse, one may toggle between displaying in the right



		   The Nelsis IC Design System			3






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



	  margin (if the number of signals is not too large) the
	  y values of the signals at the selected x position.  To
	  store the value of a particular position, click the
	  left button of the mouse.  This position will then be
	  subtracted from the next positions of the scanline, so
	  as to measure delay times and/or voltage differences.

     _Q_U_I_T Quit the program

     _I_N_P_U_T
	  Read the command file _c_e_l_l.cmd and enable the edit
	  menu. If the command file _c_e_l_l.cmd does not exist,
	  _s_i_m_e_y_e will try to read a default command called
	  "simeye.def.d".  First, it tries to read this file from
	  the current directory and second it tries to read this
	  file from the process directory.

     The following commands are part of the edit menu:

     _G_R_I_D Specify the smallest unit for the x-axis (= time axis).

     _N_E_W  Create a new signal. The user has to enter the name of
	  the new signal, and the signal will be placed at the
	  bottom of the window.

     _D_E_L_E_T_E
	  Delete one or more signals by selecting them with the
	  cursor.

     _C_L_E_A_R
	  Delete all signals.

     _C_O_P_Y Copy the signal description from one signal to another
	  signal.

     _E_D_I_T Edit a particular signal by inserting a new logical
	  level for a particular time interval (t1, t2).  The
	  signal description may eventually already be defined
	  for this interval.  The insertion of the new logical
	  level is done in two steps: During the first click of
	  the mouse the signal, the new logical level and t1 are
	  selected.  During the second click t2 is selected and
	  the new signal description is drawn.	To insert an
	  interval that has a free state one should hold the
	  shift key pressed down while making the first selec-
	  tion.

     _Y_A_N_K Store a (part of a) signal description in the buffer.

     _P_U_T  Insert a copy of the signal description that is in the
	  buffer onto a particular position.  The user has to
	  select the signal to which the contents of the buffer



4		   The Nelsis IC Design System






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



	  is added and the time from which on the new signal
	  description is valid.  The new signal description may
	  (partly) override the existing signal description for
	  the selected signal.	Furthermore, the user is asked to
	  type how may periods of the stored signal part are
	  added.  If a value -1 is specified, the selected signal
	  will become a periodical signal and (seemingly) an
	  infinite number of periods are added.  In that case,
	  when the simulation end time is enlarged, the signal
	  description will automatically be extended according to
	  the periodicity of the signal description.  A periodi-
	  cal signal is indicated by means of a tilde (~) immedi-
	  ately to the right of the signal description.

     _S_P_E_E_D
	  Speed up the signals by some factor.	If a value < 1 is
	  specified, the signals will be slowed down.

     _T__E_N_D
	  Update the end time of the input signals (= end time of
	  simulation).

     _R_E_A_D_Y
	  Disable the edit menu and update the command file
	  _c_e_l_l.cmd after a confirmation has been given.

CCCCOOOOMMMMMMMMAAAANNNNDDDD FFFFIIIILLLLEEEE
     For simulation, _s_i_m_e_y_e uses a command file called _c_e_l_l.cmd.
     This file should contain a description of the input signals,
     values for the simulation control variables, and a listing
     of the terminals for which output should be generated.  This
     is explained in more detail in the users manuals of the sls
     simulator and the spice simulator.

     The "set" commands in the command file may be edited by ena-
     bling the edit menu of _s_i_m_e_y_e. The new signal descriptions
     will then be written back to the command file when updating
     the command file.	However, when the command file contains a
     set command that is followed by the keyword "no_edit"
     between comment signs, the signal description of this set
     command can not be modified.  Additionally, when the command
     file contains on a separate line between comment signs the
     keyword "auto_set", _s_i_m_e_y_e will automatically turn-on or
     turn-off these 'non-editable' set commands according to
     whether or not the node the command refers to is part of the
     terminal list of the cell that is simulated.  This feature
     may for example be useful to specify default signals for one
     or more input terminals.

     When the command file contains on a separate line between
     comment signs the keyword "auto_print" ("auto_plot"), _s_i_m_e_y_e
     will automatically add a print (plot) statement to the



		   The Nelsis IC Design System			5






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



     command file for each terminal of the cell that is simu-
     lated.  The new print (plot) commands will have a keyword
     "auto" between comment signs following the keyword print
     (plot).

     An example of a default command file that can be used for
     sls and spice simulations is:

       /* auto_set */
       set /* no_edit */ vdd = h*~
       set /* no_edit */ vss = l*~
       set /* no_edit */ phi1 = (l*110 h*80 l*10)*~
       set /* no_edit */ phi2 = (l*10 h*80 l*110)*~
       option sigunit = 1n
       option outacc = 10p
       option simperiod = 4000
       option level = 3
       /*
       *%
       tstep 0.1n
       trise 0.5n
       tfall 0.5n
       *%
       *%
       */
       /* auto_print */
       /* auto_plot */

CCCCOOOONNNNFFFFIIIIGGGGUUUURRRRAAAATTTTIIIIOOOONNNN FFFFIIIILLLLEEEE
     At start-up of the program, _s_i_m_e_y_e will read some informa-
     tion from a configuration file called ".simeyerc".  First,
     it tries to find this file in the current directory.
     Second, it tries to open this file in the home directory of
     the user.	Thirdly, it looks for this file in process direc-
     tory.  The configuration file may contain the following key-
     words, followed by a specification on the same line if the
     keyword ends with ':';

     SLS: Specifies the command for running the _s_l_s simulator.

     SLS_LOGIC_LEVEL:
	  Specifies the level of simulation when "sls-logic" is
	  selected (use 1 or 2).

     SLS_LOGIC_SIGNAL:
	  Specifies the default signal representation for sls-
	  logic simulations (use A or D).

     SLS_TIMING_SIGNAL:
	  Specifies the default signal representation for sls-
	  timing simulations (use A or D).




6		   The Nelsis IC Design System






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



     SPICE:
	  Specifies the command for running the _s_p_i_c_e simulator
	  (use _n_s_p_i_c_e or a derivative of it).

     XDUMP_FILE:
	  Specifies the name of the X Window dump file that is
	  generated when the print button is clicked.

     PRINT:
	  Specifies the command that is executed when the print
	  button is clicked in order to process the X Window dump
	  file (e.g. to convert the window dump to PostScript and
	  to send the output to a laser-printer).

     PRINT_LABEL:
	  Specifies an optional label that is placed in upper
	  left corner of the display window when an X Window dump
	  is generated.

     SETTINGS_FILE:
	  Specifies the name of the file in (from) which the win-
	  dow settings are stored (loaded) when using the "S"
	  button ("L" button or ----LLLL option).

     DETAIL_ZOOM_ON
	  If this keyword is specified in the configuration file,
	  the zoom-in function is also defined for the y-axis of
	  a (single analog) signal.  In this case it is not
	  necessary to hold the shift key down (see command IN).

     TRY_NON_CAPITAL_ON
	  If this keyword is specified in the configuration file
	  and simeye fails to open a command file that starts
	  with a capital letter, the program will try to open the
	  same command file but now starting with a non-capital
	  letter.  If this succeeds and when performing a simula-
	  tion, simeye will first run the program _a_r_r_e_x_p on a
	  copy of the command file to expand one dimensional
	  array node names into single node names (e.g. a[1..3]
	  is converted into a_1_ a_2_ a_3_).

     In the above specifications, the string '$cell' may be used
     to refer to the current cell name, '$date' may be used to
     refer to the current date, and '$time' may be used to refer
     to the current time.

     Example of a configuration file (default values are shown):

       SLS: sls $cell $cell.cmd
       SLS_LOGIC_LEVEL: 2
       SPICE: nspice $cell $cell.cmd
       XDUMP_FILE: simeye.wd



		   The Nelsis IC Design System			7






SIMEYE(1ICD)		     5/29/90		     SIMEYE(1ICD)



       PRINT: xtops -white 1 -in simeye.wd -out $cell.ps; pspr $cell.ps; rm simeye.wd
       PRINT_LABEL: $cell  $date  $time
       SETTINGS_FILE: simeye.set

AAAAUUUUTTTTHHHHOOOORRRR
     A.J. van Genderen

FFFFIIIILLLLEEEESSSS
     .simeyerc		     (default) configuration file
     HOME/.simeyerc	     (altern.) configuration file
     ICDPATH/lib/process/_p_r_o_c_e_s_s/.simeyerc
			     (altern.) configuration file
     _c_e_l_l.res		     (default) input file
     _c_e_l_l.plt		     (opt.) input file
     _c_e_l_l.ana		     (opt.) input file
     _c_e_l_l.cmd		     (opt.) command file
     _c_e_l_l.cxx		     temporary file
     simeye.def.d	     (default) template for command file.
     ICDPATH/lib/process/_p_r_o_c_e_s_s/simeye.def.d
			     (altern.) template for command file.
     simeye.set 	     (default) window-settings file
     simeye.wd		     (default) X window dump file
     sim.diag		     simulation diagnostics
     pr.diag		     print diagnostics

XXXX DDDDEEEEFFFFAAAAUUUULLLLTTTTSSSS
     Some examples of X default values are:
     Simeye*.borderColor:		white
     Simeye*commands*.foreground:	white
     Simeye*commands*.background:	black
     Simeye*canvas.foreground:		white
     Simeye*canvas.background:		black
     Simeye.high_lowColor:		cyan
     Simeye.undefinedColor:		yellow
     Simeye.voltsColor: 		green

SSSSEEEEEEEE AAAALLLLSSSSOOOO
     sls(1ICD),
     spice(1ICD),
     nspice(1ICD),
     SLS: Switch-Level Simulator User's Manual,
     USER'S GUIDE FOR SPICE,
     X Window System Documentation.












8		   The Nelsis IC Design System



