Autochar(1)                                           Autochar(1)


NAME
       autochar - Automatic cell characterization of digital cir-
       cuits.

SYNOPSIS
       autochar [-hs] [-c cellname] [-o report] input+


DESCRIPTION
       The program autochar is used to automate the characteriza-
       tion  of digital circuits.  It basically generates simula-
       tion wrappers for popular circuit simulators  like  Hspice
       and  Smartspice  (sorry,  no spice2 or spice3), and allows
       the user to characterize circuit behavior such as delay as
       a function of loading capacitance, input capacitance, reg-
       ister setup and hold times, clock enable  setup  and  hold
       times,  and clock to Q delay as a function of load capaci-
       tance.  Other characterization  types  will  be  added  in
       future  updates  of  autochar, including tristate buffers,
       power, and critical path delays.

       The outputs of autochar are a characterization report,  an
       optional  database, and an optional Synopsys model.  Other
       formats can be easily generated by using the database.

       In this implementation, autochar is  entirely  written  in
       perl (version 5.004 04), including the input control files
       (effectively a perl API!) and the  database.   This  gives
       the  user  much flexibility in expanding the functionality
       and integrating it into library development flows.


OPTIONS
       -h      Print help usage.

       -s      Skip  running  spice  if  output  if  found.   The
               default  is to run spice regardless of any outputs
               found.

       -c cellname
               The name of the cell to characterize.

       -o report
               The name of the output  report.   The  default  is
               cellname.rpt.

       input+  Input  control  file(s).   The input control files
               (perl commands) will  be  executed  in  the  order
               given.


CHARACTERIZATION MODULES
       The  characterization  modules  share  common  defaults as
       specified in the  $AUTOCHAR/lib/defaults.spec.   The  user



                         February 5, 1999                       1





Autochar(1)                                           Autochar(1)


       specifies  technology,  nodes,  scaling,  timing, and many
       other parameters in this file.


       Load Delay
           A series of transient simulations are performed  while
           an ideal capacitor whose value is varied is applied at
           the specified output of  some  combinatorial  circuit.
           Linear  regression is used to fit the circuit delay as
           a function of capacitive load.  The  input  slew  rate
           may         also         be        varied.         See
           $AUTOCHAR/lib/load delay.spec.


       Input Capacitance
           The input capacitance of specified inputs are  charac-
           terized  by  finding  the equivalent ideal capacitance
           value during transient simulations.   The  Hspice  and
           Smartspice  optimizers  are  used  to  vary  the ideal
           capacitance value.  See  $AUTOCHAR/lib/input cap.spec.


       D Setup/Hold
           The  setup  and  hold  times of a standard D-flop data
           input with respect to a  reference  clock  signal  are
           found  using a binary search mechanism.  The search is
           done using Hspice and Smartspice's built-in  capabili-
           ties   to   help  reduce  the  simulation  time.   See
           $AUTOCHAR/lib/setup hold.spec.


       CE Setup/Hold
           The setup and hold times of a  standard  D-flop  clock
           enable  input with respect to a reference clock signal
           are found using a binary search mechanism.  The search
           is  done  using Hspice and Smartspice's built-in capa-
           bilities to help  reduce  the  simulation  time.   See
           $AUTOCHAR/lib/clock enable.spec.


       Clock to Q
           A  series of transient simulations are performed while
           an ideal capacitor whose value is varied is applied at
           the  Q output of a standard D-flop.  Linear regression
           is used to fit the circuit  delay  as  a  function  of
           capacitive  load.   The  clock's slew rate may also be
           varied.  See $AUTOCHAR/lib/clock q.spec.


FILES
       bin/ src/
           These directories contain the executables,sample spice
           scripts, and source code.




                         February 5, 1999                       2





Autochar(1)                                           Autochar(1)


       doc/ man/
           These  directories contain miscellaneous documents and
           this man page.


       example/
           This directory contains a sample run.


       lib/
           This directory contains control file templates.


       tech/
           This is a sample tech directory containing models from
           HP  and  TSMC  through  MOSIS.  Autochar requires that
           there be a single ".include" file that will  bring  in
           all  the  necessary  technology  related  files to run
           spice.  For example,  $TECHDIR/tsmc035/include/ttlh.sp
           sets up the typical-typical N and P devices at low Vdd
           and high temperature.  Autochar also requires  special
           node  names,  spice  parameters,  and  subcircuits  be
           available, as those shown in the  $TECHDIR/tsmc035/lib
           directory.


ENVIRONMENT VARIABLES
       AUTOCHAR
           This  variable  points  to  the  autochar installation
           directory.


       TECHDIR
           This variable points to the installation of the  spice
           technology directory.


       RUNDIR
           This  variable points to the directory where the char-
           acterizations are run and  is  required  if  the  user
           chooses to follow the setup in the example provided.


       PERL
           This  variable  points  to  where perl resides, and is
           needed only during the installation of autochar.


NOTES
       Hspice is a registered trademark  of  Avant!  Corporation.
       Smartspice  is  a registered trademark of Silvaco Interna-
       tional.  Synopsys is a registered trademark  of  Synopsys,
       Inc.




                         February 5, 1999                       3





Autochar(1)                                           Autochar(1)


       Autochar Copyright (c) 1999 Robert Yu.  Autochar is freely
       distributed under GNU Public License.  See the source dis-
       tribution for details.


AUTHOR
       Robert  Yu  <robert@yu.org>.   Thanks  to Russell Kempt of
       Silvaco Intl. with his assistance with Smartspice.

















































                         February 5, 1999                       4