dose matrix


Dose matrix utility: set up a 2D or 1D dose test

Back to the list of tips



Summary: check out the program "dose_matrix" on sizzlorr or birdperson for an easy way to generate a dose matrix.



It's pretty easy to use cjob to generate a one-dimensional dose bracket. We all do that as our first e-beam exercise. But what if you want the dose of the big pads to remain constant, while the dose of the narrow lines is varied? Or, what if you need to vary the doses of layers 0 and 1 simultaneously, between two different sets of values? Such a "dose matrix" is quite tedious to set up on an ebpg, because gpf doses can be expressed only as relative values.

You could generate a separate gpf pattern file for each layer, then have cjob print them together. Unfortunately, cjob will insist on printing all the layer 'A' patterns before doing all of the layer 'B' exposures, making drift a major problem. (Well ok, you could write a python or bash exposure program to get around this, but using dose_matrix is a lot easier.)

Why should this be difficult on an ebpg? Good news: now you can barf out a JEOL-style dose matrix with very little effort, by using

dose_matrix

This runs on either of our linux servers- sizzlorr or birdperson. and is included in the ebpg funpak. dose_matrix creates n*m copies of your pattern in a new gds file, then generates a "FDA" dose map for Beamer (or Freebeam). The dose matrix is then contained in one big pattern file, which you would expose using the smallest dose as your base dose.

You can see the syntax by typing "dose_matrix -h" or simply type "dose_matrix" and then answer all the questions.

Example:

Start with a gds CAD file containing two layers:

Then type "dose_matrix" and answer some questions:


Run this through Beamer or Freebeam, then use cview to see the results:



Notice that dose_matrix generates lovely dose labels for you. If you want a 1D dose matrix with a fixed dose for one of the layers, then you can specify "number of exposures" = 1 in either X or Y.

If you want to get really wild and crazy, you can use two different beam step sizes for the two layers. To do this, run dose_matrix and then edit the file dose_free.txt, which is the "FDA" file for Freebeam. Insert a third number on each line to specify the beam step size.

For our friends outside of Yale: to use dose_matrix you would have to install "flatten" from the ebpg funpak, and you'll need the free version of Layout CAD to generate labels. You don't need to run Layout yourself-- you just need the python library that comes with it.



Back to the list of tips