gdstile_web_logo.gif

Introduction

Often when analyzing an IC layout or mask one must subdivide the large data set into smaller more manageable chunks. A large chip layout can cover an area of 20 x 20 mm and line widths of 0.1 um are no longer uncommon. Such a chip might have a hundred million polygons on a single metal layer.

Depending on the type of computation one might require small tiles: 10 x 10 um, 50 x 50 um or 100 x 100 um. For very large GDSII files the process of "cutting" the file into small tiles can be a major bottleneck.

Fast tiling of large GDSII files is computationally difficult because the GDSII database is hierarchical and GDSII data is not spatially sorted.

  intro.gif

To break a 20 x 20 mm chip into 100 x 100 um tiles requires 40,000 tiles to be computed. If there are 6 layers of metal to process then almost a quarter million tiles have to be extracted from the main GDSII file.



To address the problem of breaking a large stream file into thousands of smaller one, Artwork has developed a new program called GDSTile. We've developed GDSTile knowing that the input files will be extremely large and that one may wish to apply multiple CPU's or independent workstations to the task of tile generation.



Three Execution Modes

GDSTILE has three execution modes:

    single threaded -- for a single CPU machine

    multi-threaded -- for a machine with multiple CPUs

    distributed -- for many machines on a network

     
 

32 and 64 Bit Executables

GDSTile comes in 64 and 32 bit versions. Cooperation between the 32 and 64 bit versions is transparent --  a 64 bit client can be served by 32 and 64 bit machines.  A 32 bit client could just as well act as the main computational engine. Distributed computing is platform independent across operating systems: currently Artwork supports Solaris, HPUX, and LINUX.



Page:     [1]   |   2   |   3   |   4   |   5