Manual
FLOOXS Main Page
FLOODS/FLOOPS Introduction
This manual is broken into several sections describing the commands that make up the FLorida Object Oriented Device and Process Simulator. FLOOXS uses the old unix wild card convention of x taking the place of either "P" or "D". The codes are built as a single executable and are configured with different sets of default variables for each purpose. New work in the Reliability MURI is aimed at combining the codes to understand device operation driven failure modes.
Commands in the manual are documented individually. It is best to start with examples that are similar to what you wish to do. These are linked to individual command descriptions for more detailed followup. The command list is also provided as a reference directly, if you are interested in more detail on the commands.
All of FLOODS/FLOOPS is built using tcl. A familiarity with tcl commands is essential for understanding how to do anything complex in FLOOPS and FLOODS. You can find many great tcl reference books and tcl command documentation is also available.
Examples
These are examples and working through them is the best way to learn. I usually use the homework problems to help students to start (answers are not provided!). Mastery of these exposes users to basic concepts. Beyond these are examples of increasing complexity. Each subsequent section makes use of concepts from prior examples.
Homework Problems
These are good introductory problems for beginners. Being able to work through these will introduce most simple concepts to users.
Grid Testing
Implant boron at 10keV and 1e15/cm2 and anneal for 1 minute at 1100C. Use a uniform grid spacing down to 0.5um or 0.05, 0.02, 0.01, 0.005, and 0.001um.
How does the profile vary (think about why), and how does the total diffusion time (cpu time) vary?
Etch, Deposit 2D Grid
Start with a 2D silicon slab 1um wide and 1um depp. Deposit and oxide layer 0.2um thick. Etch an opening from 0.4um to 0.6um in the top of the structure. What is the maximum energy of a boron implant (1.0e15/cm2) that can be blocked ? (meaning a surface doping of boron < 1.0e16/cm3)
Model Variation
Use a 0.01um grid down to 0.5um, and then increase the grid spacing to 10um at 100um deep. Use a 0.01um oxide cap on the top of the silicon. Implant phosphorus at 40keV and 1.0e14/cm2. Diffuse with the Fermi model and plot. Then set the interstitials (Int) equal to the phosphorus. And run the react model. Do both anneals for 1min at 900C.
Be sure to turn on both Int and Vac solutions using: pdbSetSwitch Si I Diffmodel Numeric pdbSetSwitch Si V Diffmodel Numeric solution name = Int solve !damp !negative solution name =Vac solve !damp !negative
Also use: Math diffuse dim=1 sblock scale bcgs row
Save the result from the react model –we’ll use it again the in the next exercise.
Dt Extraction
We often use flops to do data analysis – how much diffusion enhancement was there? Use the result from the react model as a “measured” result. Implant the phosphorus again and diffuse it using the Fermi model. How long is the diffusion required to match the “measured” profile?
Model Development
Build a simple model for carbon diffusion in silicon. Use a constant diffusivity: Dc = 1.0 * exp(-3.5 / kT)
Set the initial carbon profile to: Cc = 1.0e18 * exp( (x-0.1)*(x-0.1) / 0.001 ) + 1.0e15
Diffuse the profile for 60min. at 900, 30min. at 1000, and 10min. at 1100C. Does it agree with what you expect from a simple estimated hand calculation? Modify the model so the diffusivity it proportional to carbon concentration / 1e16 . Run the same anneals – what happens qualitatively?
Grid Generation
These are worked examples of grid generation concepts. Build 1D, 2D, and 3D structures for simulation.
Post Processing
Although not as fancy as commercial tools, there are a wide range of ways to examine output results. Examples of analysis can be found in this section.
Alagator Examples
Alagator is the scripting language that controls the physics of the simulation. This is where the real power of floops and floods lies.
Device Examples
Examples that use alagator to investigate device performance.
- p-n diode example (1D)
- p-n diode example (2D)
- p-n diode example (3D)
- nMOSFET example (2D)
- nMOSFET example (3D)
- BJT example (2D)
- Double-gate FinFET example (2D)
Process Examples
Examples that use alagator and default scripts to simulate IC processing.
Command Reference
This contains a command reference, in Unix man page style for each command in the program.
Command Conventions
Some basic ideas on how commands work and are used.
Grid Commands
Commands to control grid generation and refinement.
Post Processing Commands
Commands to analyze data.
Application Specific Commands
Commands to solve systems of equations, deposit materials, and more!
Other Commands
Miscellaneous commands that aren't really categorizable. There are many useful commands here!
Development
- New Developments - A brief list of the new enhancements since the last release.
- Bugs - A list of current FLOOXS Bugs that need action
- "To Do" List - Needed code enhancements for specific actions
Installation
- Installation Directions - Installation help and notes - created as I did a clean install on a linux system. Your mileage may vary.
Copyright and Redistribution
This software and manual is copyrighted by the Mark Law, University of Florida Electrical and Computer Engineering department. It is intended for internal educational and research and development purposes only. Any use of any part of this software in any commercial package needs to be negotiated separately. Several of the implant models are copyrighted by Al Tasch from The University of Texas at Austin.
The UMFPACK package is copyrighted by Tim Davis, University of Florida, Computer and Information Sciences Department. (davis@cis.ufl.edu). Please contact Tim directly about redistribution of the UMFPACK software.
The tcl/tk package is in the public domain, and was developed by John Ousterhout at the University of California Berkeley.
Various included linear algebra packages are also public domain.
Getting started with Wiki
Consult the User's Guide for information on using the wiki software.