Software structure
Modules
MISTIC consists of four major software modules:
- An device builder or device cross-section editor
- The comilation core
- An output processor or process viewing utility
- A database editor of materials and laboratory processes
All the modules described above are supervised by a program manager
which controls the flow of data among the various parts.
Device Cross-section Editor
The input to the compiler core is generated by the device builder.
The tool consists of a graphical user interface for drawing and editing
device cross-sections using the materials stored in the database. In addition
to regular graphical editing commands, the device builder has special drawing
routines for quick calculation of conformal outlines. After completion of
editing, device structures are saved under a common format. The current
implementation of the device builder accepts Manhattan geometry.
The Compilation Core
The comiler reads the device cross-section file and topologically
sorts components and merges into layers and sequences the layers.
This determines which layers have to put on top of the rest. Furthermore
all valid layer orders are extracted creating a design space for
optimization.
Then the compiler constructs complete process flows from the
sequencing information. This involves an expansion of the sequence through
insertion of lithograpies, etching steps, ion implantation, diffusion cycles,
deposition steps, reactive growth cycles, cleaning cycles, pad oxide steps.
It also supports self-alignment, implant-through layers, LOCOS type processes,
and simultaneous solutions of multiple diffusions and multi-zone diffusion
cycles to meet specified junction depth targets. All of these items are
generated automatically.
The program generates a synthetic run sheet with all info
that is needed to run the process. Most of this info is grabbed from the
database recipes (equipment, rates, etc) but their parameters (temp,
time, etc.) are calculated. The compiler also selects the etchants with
maximum selectivity.
The compiler can generate a large number of processes while the
maximum number outputs is controllable. It also calculates a
"figure of merit" for each process and grades processes in terms of their
effective cost/yield.
The Output Interface Or Process Viewer
The output interface extracts information from the files generated
by the compilation core and displays them in various formats.
Device cross-sections at each step of any process can be viewed.
It also displays the process statistics of the current device.
Device cross-sections and all other comilation data, e.g.,
run sheet, SUPREM file, etc can also be saved or printed from here.
Database Editor
The database editor allows the user to view different entries of
the database and change them according to his own laboratory data.
Summary
The modular nature of the implemented software system makes it easier to get used to it
quickly without much difficulties. Besides the main modules of the software
described above there are a few other modules such as the setup module, on-line
help module, etc. They perform various supporting operations for the software.
MISTIC version 1.0 (July 1997) Copyright © 1997 by University
of Michigan. All rights reserved.