University of Pennsylvania
Department of Electrical Engineering

 

SUBMITTING A CIF FILE TO MOSIS
for 
PROJECT FABRICATION

This write-up assumes that you have created a cif file from Cadence as explained in the document on CIF conversions. Assume that the name of the file is cif_file_name.s. Also, before submitting a project you need to request a new project, which is explained in the MOSIS manual (chapter 4)

There are two ways of submitting a cif file:

 

Because of a procedural difference between how Cadence CIFs out alayout and how Mosis interprets a CIF file, it is necessary to add a top level call back at the end of the last DS in the CIF file, something that Cadence does not output and Mosis requires. The submit script "submit.pr" attempts to do this automatically (see automatic submission). Before doing a checksum a top-level callback is searched for. If it is not found, the program prompts the user who confirms whether the program's guess of the top level is correct. If it is, it adds this command and proceeds with the submission process, otherwise it exits. When this happens (or when using the manual submission), the top-level call back must be added manually. This is accomplished simply by determining the top cell number and placing a "C#;" ("#" is the number of the top cell) at the penultimate line, between "DF;" and "E".


A. Manual submission.

(see also Mosis Manual: Chpt 3 - Design submission)and Chpt. 5: Project submission)

The first step you need to do is to generate a Layout-Checksum, which verifies the integrity of the file submitted. In order to get the checksum you need to run the program "cksum1.c" which is available on the Penn computer running Cadence. If not, you can easily download CKSUM1.C from the MOSIS site. This program will give you two numbers, which you need to specify when submitting the file.

Once you have the checksum you submit the project as follows. The most convenient way is by emailing a FABRICATE REQUEST to Mosis (mosis@mosis.org):

REQUEST: FABRICATE
ID:
P-PASSWORD:
LAYOUT-CHECKSUM:
LAYOUT-FORMAT: CIF
LAYOUT:
Give here the cif file


REQUEST: END
The ID refers to the Project ID that MOSIS assigns your project when you request a new project. P-PASSWORD is the project password that you gave your project when you requested a new project.

The maximum file size Mosis accepts is about 0.8Mbytes. If the file exceeds this, you can divide the project up in fragments. This is explained in the MOSIS manual, Chapter 5 and summarized below.

REQUEST: FABRICATE
ID:
P-PASSWORD:
LAYOUT-CHECKSUM: (this is needed for each fragment)
LAYOUT-FORMAT: (specify CIF or UUGDS)
LAYOUT-FRAGMENT: K/N (K= number of fragment and N=total number of fragments)
Cif file of the fragment K

REQUEST: END

B. Automatic submission

NOTE: this requires the script submit.pr which is available on the Penn engineering computers.

To submit "cif_file_name.s", do

$submit.pr [cif_filename]

to start the submission process. A template file can be used to facilitate the submission process, otherwise the program will prompt the user for the essential information. The template file has the following format:
 

# Lines can be commented out with a # at the beginning.

The Template file is searched for in ./, $SUBMIT_TMPLFILE, and ~/, in that order. The file searched for is ".submit_tmpl". The filename in the $SUBMIT_TMPLFILE environment variable should be the full pathname of the file, i.e., /dir1/dir2/.../templatefilename, and can be different from ".submit_tmpl". An empty cif file and a proper request template can allow one to make other requests in addition to fabricate which requires a non-empty message body. Any line above not specified in the template file will be prompted to the user. Mosis has an upper limit to the size of a CIF file of .8 Megabytes. "Submit.pr" makes sure that each file sent is well below this limit by fragmenting any file with size over some preset value. The author set the maximum file size to 350k bytes for peace of mind, but you are welcome to change it to a higher value at your own risk.

 



 

Once MOSIS has received your files, it will send you a message saying "Project Queued from Check". Mosis will check the layout and send a message saying: "Project check failed" or "Project Queued for Fabrication". In the former case, you will need to find out what was wrong (e.g. cif syntax, size error, etc) and resubmit the project. In the latter case, the project will be fabricated as soon as the run closes. Mosis will send you a confirmation. It is important to check your mail regularly to make sure all is going well until the chip has been sent for fabrication.

Until you receive the message, "Project being fabricated" you can modify or cancel the project by sending an UPDATE REQUEST or CANCELL-FABRICATE REQUEST (See manual).


References:

1. MOSIS User manual.

2. For more information on CIF, please refer to "A guide to LSI Implementation", by Robert W. Hon and Carlo H. Sequin. 1980.

Acknowledgement: submit.pr and scale_cif.pr was written by James Tau.


March 5, 1998; updated March 8, 1998
Back to the Cadence Tutorial page