5. GDSII and CIF Conventions SUBMITTING YOUR DESIGN TO MOSIS IN GDSII, CIF, OR MEBES 5.1. Introduction MOSIS accepts geometry in either GDSII, CIF or MEBES format on a magnetic tape, or in CIF via online file transmission. MOSIS checks the integrity of your submitted file (e.g., syntax, size and layer names), accepting only the projects that conform to these requirements. MOSIS does NOT currently do design rule checking but may do so at a future date. This chapter reviews GDSII and CIF conventions as they relate to procedures for submitting and checking files including, for GDSII projects, the referencing of MOSIS-supported library cells. Accepted projects are scheduled for the first available run in the requested technology. 5.2. GDSII Conventions Please examine the Project Submission Form if you are submitting a design on magnetic tape. This form MUST accompany your tape when you mail it to MOSIS. A sample form is located in the back pocket of this manual. Upon receipt of your tape, MOSIS puts your file data online and checks the integrity of your file. See Section 5.3.2 of this chapter for possible reasons for file rejection. MOSIS' GDSII Conventions are as follows: - The MOSIS layer numbers for each technology are listed in Chapter 6 (Section 6.6). Other layer numberings are accepted if they are clearly spelled out in the project submission documentation. - Non-fabrication (comment) layers may be present; they are read but ignored. However, we strongly urge that all extra layers be removed before submission. - The entire geometry for a project must reside in a single library file; the submission documentation must indicate the name of the top-level structure that is the project. Multiple projects submitted simultaneously may all reside in the same library and specify separate top-level structures. The inclusion of extraneous structures is strongly discouraged. - NODE and BOX elements are read but ignored. - ELFLAGS, PLEX, and ELKEY modifiers are read but ignored, as are element properties. - TEXT of any width is treated as commentary and is not fabricated, i.e., it is forced to zero width. - Fixed-width PATHs (those whose specified width is less than zero) cannot currently be magnified in the course of structure references. - All referenced structures must be defined either in the file or in the declared supported MOSIS cell library. 5.2.1. GDSII Calls for Standard Cell Libraries A submitted design may reference structures (or "cells") maintained by MOSIS in any one of the supported MOSIS cell libraries. The submission document must indicate the name of that library. A GDSII file references a cell in a MOSIS-supported library via a regular structure reference (SREF or AREF) with no corresponding structure definition in the submitted file. 5.3. CIF Conventions The SUBMIT request asks MOSIS to check the integrity of the transmitted CIF file. Please see Section 5.3.2 for a list of possible reasons for the failure of your project. CIF can be sent directly in a MOSIS request message, or by using the CIF-FTP-PATH request command to send your layout geometry as a single file or in fragments (See Section 13.3.1.8 of the Reference Section). 5.3.1. CIF Constraints Please note that CIF specifications encourage some practices that the MOSIS Service disallows. The following are MOSIS conventions: - Polygons (P) must have at least three points (other than this, arbitrary polygons are accepted). - Wires (W) must have at least one point. - Round Flashes (R) must have a non-zero diameter. - Delete Definition (DD) is not allowed. - Symbols may not be redefined. - Lines are limited to 509 characters of text. - The following ASCII characters are not available as CIF blanks due to internal ("CIF 2.71") conflicts: * [ ] ' . (square brackets, single-quote, period). * User extensions are allowed but ignored. * Wires extend beyond the two extreme endpoints by half the wire-width (`square extensions'). * The comment layer has a name ending with the letter "X" ("CX" for CMOS). All geometry on this layer is read by MOSIS but is totally ignored; however, any syntax error may cause CIF file rejection. * The bonding pad layer is named "XP" in all technologies. This optional layer is discussed in Chapter 9 (Section 9.3.6). 5.3.2. Possible Reasons for File Failure With the CHECK_PROJ process, MOSIS computes the size of the project (the Minimum Bounding Box, or MBB) and counts the pads (for a Nonstandard Frame) or checks the size and location of pads (for a Standard Frame), checking actual with declared values. You will receive either a Pass or a Fail message telling you whether your file is valid. If your file fails, you will receive an error message telling you the specific error(s) found. MOSIS calls these CHECK_PROJ errors. The following is a list of possible CHECK_PROJ errors: - Violation of any of the MOSIS restrictions listed above in Section 5.3.1. - Illegal file syntax. - Reference to a layer name that is not known for the given technology. - Inclusion of any layerless geometry. - Undefined symbol reference. - Gross mis-sizing of the geometry's bounding box; it must be "close" to the project size specified in the submittal requests, i.e., 10 percent or 100 microns in each dimension. - Incorrect pad count. You MUST specify the number of pads in your project in your submittal request. MOSIS must find at least that many pads in the geometry (unless there are zero pads). If MOSIS finds more pads, a warning is issued (unless you specified no pads). MOSIS will NOT reject the CIF, but will use the SPECIFIED count in selecting a package. - Standard frame misfit. If you specify a standard frame, MOSIS must find all the frame's pads at the right places in your project's geometry. - CIF-Checksum error. 5.3.3. CIF-CHECKSUM CIF-CHECKSUM checks the accuracy of message files sent from your computer to MOSIS, either via magnetic tape or over a computer network. To use CIF-CHECKSUM you must run the program on your system and send the values (described below) to MOSIS. MOSIS will then run CIF-CHECKSUM on the received file and verify that the file, as transmitted, is complete. To obtain programs that compute checksum values, send MOSIS an INFORMATION request with the following TOPIC values: - CKSUM1.C (written in 'generic' C, tested on VMS and 4.2 bsd UNIX) - CKSUM1.PAS (written in 'generic' PASCAL, tested on VMS and 4.2 bsd UNIX) - CKSUM1.MAC (written in TOPS-20 assembly) Submit CIF-CHECKSUM as "CHECKSUM: CHECKSUM NCHARS" with two spaces between CHECKSUM and NCHARS. CHECKSUM is computed on the entire file or, if the file is transmitted in smaller fragments, CIF-CHECKSUM should be computed on each fragment. CIF files may undergo several trivial modifications during file transmission - such as replacing EOLs or s by s, addition/deletion of nulls and of trailing spaces, conversion of TABs into SPACEs, and addition of spaces/s at either end of the file. CIF-CHECKSUM is insensitive to these minor changes. CIF-CHECKSUM refers to the actual CIF in that submittal, whether it is an entire CIF file, a single CIF-FRAGMENT, or a CIF-FTP-PATH. CIF-CHECKSUM can be used with the SUBMIT or FABRICATE request. It is optional, but highly recommended, because of the fallibility of electronic mail. When MOSIS receives the file or fragment, if there is a mismatch between MOSIS' computed CHECKSUM and the supplied CHECKSUM, or between MOSIS' computed NCHAR and the supplied NCHAR, the file is rejected. MOSIS will notify the designer. If only one fragment is rejected, MOSIS will retain the rest of the CIF and only that fragment should be resubmitted. 5.3.4. The CIF-FTP-PATH Option Your file can be retrieved by MOSIS using CIF-FTP if your host implements DARPA's IP/TCP/FTP protocol and if it runs an "FTP server". Your file protection must also allow this FTP access. MOSIS will make periodic attempts to retrieve your file and will notify you at the completion of successful transfer or if the transfer attempts fail. If successful, the message you receive from MOSIS will include the CIF-CHECKSUM for your file. If you provide a CIF-CHECKSUM with the CIF-FTP-PATH, MOSIS stores this information for comparison after the file is retrieved. Send an ATTENTION request to MOSIS to obtain instructions on the FTP of CIF fragments. Specifying the CIF-FTP-Path Specify the CIF-FTP-PATH with a one-line parameter of the following form: CIF-FTP-PATH: /hostname/username/password/account/filename hostname the name of an Internet host known to MOSIS. username the name of a user on that host who can login via FTP (if no user name is needed, this field may be left empty). password the literal password needed for the FTP login (may be optional). account the account under which the user needs to login via FTP (this field may be left empty if not required). filename the name of the CIF file. The character "/" may be replaced by any printing character that is not needed in any of the parameter fields. This line may be included in place of the CIF: or CIF-FRAGMENT: line of a SUBMIT or FABRICATE request. The following is an example of the use of this line in a FABRICATE request: --------------------------------------------------------------- | | | | | REQUEST: FABRICATE | | ID: 67890 | | P-P: HELLO THERE | | CIF-FTP-PATH: !HOST.ISI.EDU!DIRECTORY!PASSWORD!!FILE.CIF | | REQUEST: END | | | --------------------------------------------------------------- NOTE: The user chose the field delimiter to be the character "!". No FTP account parameter is required, but the delimiters for the account field are retained. The CIF-FTP-PATH parameters are: your hostname, login directory, password and filename. 5.4. For More Information Hon, Robert W., and Carlo H. Sequin, A Guide to LSI Implementation, Second XEROX Palo Alto Research Center 3333 Coyote Road, Palo Alto, CA 94304 (Chapter 7 contains the official CIF 2.0 specification.) Mead, Carver, and Lyn Conway, Introduction to VLSI Systems. Reading, Mass.: Addison-Wesley, 1980. (Chapter 4 contains an introduction to CIF 2.0.) Stream Format - GDSII Release 5.2, 1985. Calma Company 501 Sycamore Drive Milpitas, Ca 95035 (This manual contains the latest specification of GDSII.) Index CHECK_PROJ 27 CIF 27 CIF conventions 27 CIF-CHECKSUM 27 CIF-FTP-Path 27, 28 FTP 27, 28 GDSII 27 Project Submission Form 27 Standard cell libraries 27 Table of Contents 5. GDSII and CIF Conventions 27 5.1. Introduction 27 5.2. GDSII Conventions 27 5.2.1. GDSII Calls for Standard Cell Libraries 27 5.3. CIF Conventions 27 5.3.1. CIF Constraints 27 5.3.2. Possible Reasons for File Failure 27 5.3.3. CIF-CHECKSUM 27 5.3.4. The CIF-FTP-PATH Option 28 5.4. For More Information 28 Index 29