QIS GDSII limits.

The GDSII specification has certain limits as far as the maximum number of characters in a cell, maximum number of layers, data types etc. Over the years, this limits were extended by EDA tools and so did our QIS tools.
This web page will discuss the current limits of QIS GDSII reader.

Layers
------
1. The range of layer and datatype numbers is 0 to 65535.
2. The maximum number of different layer numbers is 2048.
3. The maximum number of different datatype numbers is 256.
4. Together, the maximum number of layer:datatype combinations supported
  is 65,536 (not 524,288).


Cells
-----
1. Maximum cell name length is 127.
2. Maximum number of cells is 64 bit signed integer (or limited by memory
  available, each cell uses at least 200 bytes plus the length of the cell
  name).
3. Maximum number of cell references or cell array references is 64 bit signed
  integer (or limited by memory available).
4. Maximum number of rows in a cell array reference is 32767.
5. Maximum number of columns in a cell array reference is 32767.
6. Maximum hierarchy depth of a cell is 32 bit signed integer.
7. Legal characters for cell names are all printable ASCII characters (hex 21-7E)
  except comma (,) and double quote (").  The space character (hex 20) is also allowed.

  space
  !#$%&'()*+-./0123456789:;<=>?@
  ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
  abcdefghijklmnopqrstuvwxyz{|}~


Boundaries, Paths, Texts
------------------------
1. Maximum number of vertices for a boundary or path is 8191 with the last
  vertex coordinates being the same as the first vertex.  This is the limit
  in the GDSII specification.
2. Minimum and maximum coordinates are 32 bit signed integer which is the
  limit in the GDSII specification.
3. Maximum number of boundaries, paths or texts is 64 bit signed integer
  (or limited by memory available).