Magic Mailing List |
|
From: R. Timothy Edwards (tim AT stravinsky DOT jhuapl.edu) Date: Thu Feb 19 2004 - 10:14:58 EST
Dear Albert, In the cifoutput section, "scalefactor 1" is an equivalent scale to "scalefactor 10 nanometers". That is, the default units are "centi-microns" (1/100 micrometer units). When the keyword "nanometer" is added, however, all units in the CIF section are interpreted as being in nanometers, not centimicrons. The units for grow, shrink, bloat, and squares statements are *always* either centimicrons (default) or nanometers (with the "nanometers" keyword). The "scalefactor" determines the scaling between magic internal units and physical units. > Magic also complained that the layout doesn't fall on an integer > grid while doing "calma write file.gds" command. I suspect that the "scalefactor 1 nanometers" is an incorrect scalefactor, as you probably don't want or need the magic internal grid on a 1 nanometer spacing. However, this is what contributes to the GDS output error. This is a subtle problem about which I exchanged a few emails with Jeff Sondeen recently. Magic places contact cuts inside contact rectangles automatically. But because contact rectangles can overlap, and because they can overlap between cells rotated 90 degrees with respect to one another, the contact cuts have to be centered in the rectangle, or it is possible for two overlapping cells to have an offset in the contact cut, creating a non-square cut in the output (which is illegal in every fabrication technology I know). But, centering is averaging, so if the contact rectangle is not the right size, the cut can be placed on a half-grid spacing. Generally speaking, as long as a half-grid spacing is not smaller than the smallest dimension accepted by the foundry, there is no problem with this. But as technologies get down to the 90nm scale and beyond, half units sometimes end up at sub-nanometer spacing, which is usually not acceptable (this limitation is usually imposed by the company that makes the masks). In this case, though, magic is not checking against the minimum dimension (which it doesn't know how to do, by the way), but there is a limitation in the way it writes GDS output that limits the scale to unit nanometers. Jeff has informed me how to get around this problem, so I will be fixing it sometime fairly soon, and probably adding an "angstroms" keyword for those forward-thinking nanotech (or at least nanoscale) people out there. For now, it is wise not to make the magic grid smaller than 2 nanometers if you want correct GDS output. Regards, Tim
|
|