MAGIC Magic Mailing List
 
 

From: Robert Penny (rob AT network DOT ucsd.edu)
Date: Fri Mar 30 2001 - 17:03:32 EST

  • Next message: R. Timothy Edwards: "Magic and GDS2"

    On Fri, 30 Mar 2001, Philippe O. Pouliquen wrote:
    
    > Since you have the book, why don't you check to see if there is any
    > restrictions on the CIF DS statement (i.e. that the resulting scale
    > must be an integer) and settle this once-and-for-all.
    
    Verbatim from the book:
    
    ******************** Start quote *************************
    
    The mechanism for symbol definition includes a convenient way to scale
    distance measurements.  The second and third arguments to the DS command
    are called a and b, respectively.  As the intermediate form is read, each
    distance (position or size) measurement cited in the various commands
    (polygons, boxes, flashes, wires, and calls) in the symbol definition is
    scaled to (a*distance)/b.  For example, if the designer uses a grid of 1
    micron, the symbol definition might cite all distances in microns and
    specify a = 100, b = 1.  Of the designer might choose lambda
    (characteristic fabrication dimension) as a convenient unit.  This
    mechanism reduces the number of characters in the file by shrinking the
    integers that specify dimensions and may improve the legibility of the
    file (it provides neither scaling nor the ability to change the size of a
    symbol called within the definition.)
    
    ********************* End quote **************************
    
    Verbatim lines from the syntax section (some intermediate lines deleted).
    
    ******************** Start quote *************************
    
    defStartCommand = "D"{blank}"S"integer[ sep integer sep integer].
    integer         = { sep }integerD.
    integerD        = digit{digit}.
    digit           = "0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9".
    
    ********************* End quote **************************
    
    Couple this with the section I quoted in my last mail:
    
    ******************** Start quote *************************
    The units of measurement are hundredths of a micron (um); there is no
    limit on the size of a number.
    ********************* End quote **************************
    
    .. and from the semantics section:
    
    ******************** Start quote *************************
    .... Many of the decisions in designing the file format were made to avoid
    ambiguity or small but troublesome errors: floating point numbers are
    avoided; there are no iterative constructs, though there may be some in
    future additions to CIF.
    ********************* End quote **************************
    
    I can't see any restrictions on scaling in a DS or requirements that the
    final representation be an integer number of centimicrons.  Of course
    foundries will have their own limitations and will snap to their own grid
    quanta but that's a different issue from CIF being able to represent it.
    
    From what I can see in Mead & Conway you should be able to represent any
    object that is a rational number of centimicrons.  Just don't try to draw
    pi, e or Sqrt(2) centimicrons.
    
    -Rob Penny (rob AT ucsd DOT edu)
    


  •  
     
    Questions? Contact Rajit Manohar
    cornell logo