UNIX Machines
and the
Silvaco Device Simulations: Helpful Hints
Logon: Activate your UNIX account
Be sure you have an active UNIX account. If you do not, go to the ECC help desk and let them know you want to activate your UNIX account. After that (it takes about 40 minutes), “test” your account by logging on to a UNIX machine. A simple way to do this is to use Telnet (your ECE 1331 course was good for something!) or else use QVT Term if you have it installed. You can login to any of the UNIX machines; a convenient one is V880.egr.uh.edu. (This is a pretty fast, 8-microprocessor/32 GB machine built by Sun Microsystems.)
Getting to a UNIX machine
To use Silvaco from a Windows machine, you need to run the emulator “X-Win32”. This is available on the ECC machines, which is where we suggest you do this.
After running X-Win32, an icon will appear in your tray (there are no “windows” here). You will need to set up a session by right-clicking on the X-Win32 icon and selecting “X-Config”. Then…
- Select My Sessions and click on Manual under New Session.
- Choose a session name (your choice).
- For XDMCP Mode, you can do one of two things:
- Choose Broadcast. Then Save and Launch. You should then be given a set of UNIX machines to choose to connect to. Pick any one you like.
- Choose Query and for Host specify “V880.egr.uh.edu”. Then Save and Launch. You should be connected to the V880 host.
- Login to your UNIX account.
Basic UNIX commands
In the SOLARIS windows environment: to get a Terminal from which you can enter commands, click on the icon along the bottom row labeled “cpu disk” and choose “This Host”.
lslist files in the current directory
ls –alist files in the current directory, including “hidden” files (which begin with ‘.’)
pwdtell me the present working directory
cdchange directory (followed by directory name)
cd ..move one directory up in the path
rmdelete (remove, followed by filename to be deleted)
Getting to SILVACO: The .login File (for tcsh users) and .profile File (for bash shell)
Your “login” file runs every time you log in, and sets up things you need to run your programs. This is a “hidden” file; to view it, you need to be in your home directory, and then execute the command ls –a.
To do the SILVACO simulations, you should have the following line in your .login file. It doesn’t matter where it appears, but it is good practice to put it near the end of the file.
set path=($path/usr/local/SILVACO/bin)
Please note that if you use /usr/local/SILVACO.x64/bin Silvaco will run on all 64-bt linux machines and your runs will be faster.
To get these lines into the file, you must open .login in a text editor, of which there are several. To edit .login using the vi editor, for example, execute vi .login from your terminal. It would be a very good idea to back up your .login file first, however. Once you have added the set path line to your .login file, you save and quit by executing escape (esc) and then :q to quit without saving or :wq to write (save) the changes and then quit.
Once you have the path information in your .login file, you get to Silvaco by executing Deckbuild &. (The “&” allows other processes to run while Deckbuild is running; otherwise you have to quit Deckbuild to do anything else.)
The Simulation Software
Loading and Running Examples From Deckbuild, you can load example files by choosing Main Control/Examples. After selecting a topic, you will get the opportunity to pick several specific examples. Once you have the example you are looking for, choose Load example; the code will then be loaded into DeckBuild.
If you have run the same simulation before, there may be files in your directory that will be over-written when you load the example again. Choose “OK” when the warning is sounded. To run the example, just hit run in DeckBuild.
Finding Parameter Values Periodically in the code, VWF executes an Extract command, which finds the value of some particular variable, such as oxide thickness. These values are then printed in the output pane (lower pane in DeckBuild), along with a copy of the command itself. If you need to find these values, one way is to scroll through the text to find it. This is a pain, admittedly; just keep thinking about graduation. Another method is to use the plotting tools to “blow up” the region of interest and use the built-in scales to figure out the thickness.
Adjusting Plots From TonyPlot, you can adjust the plotting parameters by choosing Plot/Display. Choose the option you want from the icon box, and choose Apply. To adjust the colors of the display, choose Define/Contours/Colors. In that submenu, Rainbow 30 is a nice plotting option.
To get TonyPlot to give you a cut line, choose Tools/Cutline.
Plotting Structure Files using TonyPlot It is possible to plot any structure file, including the history files, by the following method. (A structure file is any file that has the .str extension.) In the DeckBuild window, use the mouse to highlight the name of the file, for example .history.str, or mosexo01_0.str. Then, right click on the Tools menu, select Plots, and Plot Structure. This action will open TonyPlot and display the contents of the structure file.
Any step either an intermediate or a final result (written in the file "results.final" in your working directory) can be displayed using TonyPlot from the DeckBuild. Both material structures and electrical properties can be plotted; they have the “*.str “ extensions. You can select the structure file, then click the Tools button. From the dropdown menu select Plot, then Plot Structure. TonyPlot will display your graph. Modification of the plot is possible by selecting Plot button in the TonyPlot menu. Visit these options. You can display any plot obtained by the simulation if you Load Structure (your file name) from the File menu in the TonyPlot. In particular, look for the files “.history##.str” (ex: .history07.str) that are listed in the output window of the DeckBuild after specific processes. After loading these files in the TonyPlot you can choose 2D display, which adds to the clarity of the plots and in many cases is indispensable. For this purpose, go to Display from Plot, and the 2-D Display Control window will pop up. Several options are available here, such as grid (mesh) structure, xj etc. These options are self explanatory. Experiment with them. The Contours can be modified (material-color identification, etc.) by selecting Contours from the Define menu. A useful feature in Display is “vectors”, which if selected will give you options for monitoring parameters’ distributions such a electric field etc.
2-D contour plot can be displayed as a 1-D plot at specific cross-sections defined by the Cutline (x,y) from the Tool menu or when a process is run as one-dimensional. It produces a new TonyPlot where you select parameters to be displayed. Cutline is especially useful if you want to analyze distribution of specific parameters, either for material characterization such dopants, carriers etc. or for electrical characterization (recombination rates, electric field, potential etc.). If the cutline is moved along your structure (a Shift position button in the Cutline window does it) to study different regions of this structure, parameters that you selected for identification before will be displayed for this new location. Now you can experiment some more with your plots from the Schottky diode experiment.
Formatting of plots.Each plot has a specific display format that includes enough information about the obtained structures. If you change the simulation such as, for example, dopant type etc. used in your first run, you have to make changes in the formatting files (*.set). To do that for our first example open the set file (in your home folder) from your first run i.e. *.set and make changes that you like (labels, keys, scale etc.). Rename the file, for instance bright_colors.set and if use this new set file in your next program, the results will have the new appearance. If you run the program that has significant changes but you do not use an appropriate set file to display your *.str files, Tony will not plot anything. In general, when the plot is drawn in Tony, you can use various features from the Plot Menu to modify/adjust your plot appearance such as to set scales for axis, put labels, make annotations etc. This new "creation" can be saved as a set file (by going to set files in File menu in Tony) and used when applicable.
Dynamic changes in the fabricated structures can be also displayed by using a Movie option form the TonyPlot (from the main Tools menu). Several plots are displayed sequentially resulting in the animation effect with typical video control options (you can rewind it, slow down etc.).
To plot your results, what you do is to "print" to a file. Before doing so, you "define" a printer that has the properties you desire.
You define a new printer as follows. When you have a structure file displayed in TonyPlot, click on Print, and then click on Printers. In this dialogue box, you will define a printer and give it a name. Name it anything you choose. Now click Type, and choose pcx (256 colors). Now choose "Update". The result will be a new printer, whose name should appear on the list in the dialogue box.
Having defined a printer, go back to the Print menu, and choose Options. Choose File, and then choose your newly defined printer from the list at the left. Specify a file name (don’t forget the .pcx extension), and select "Print". You should now have a pcx file in your directory. You may now e-mail your file to yourself as an attachment, or else use ftp to retrieve it to your own computer, and print it.
Disk Quota VWF generates a large number of .history files, some of which are quite big. If you allow it to generate all it wants, it may exceed your disk quota. It turns out you have some control over this, as follows. Within Deckbuild, go to the Main Control menu, select Main Control (the first entry) and choose history files. This dialogue box will give you several options, including a "length" parameter, which refers to the number of history files VWF will generate before over-writing the earliest ones. Make this parameter a small number, like 5 or 6. In this way, the last few files generated will be available for you if you need them, but only five or six will be generated. This should handle the memory problem.