IntroductionOften 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. |
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 ModesGDSTILE 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 ExecutablesGDSTile 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 |