December 14, 2018
RandGen is a customized program used for generating a photo mask of a mesh pattern. What makes this pattern unusual is that it must be randomized in order (I assume) to eliminate (or reduce) resonances that would otherwise arise if the geometries were uniformly spaced.
We start with a number of "hubs" that are placed equidistant from each other based on a hexagonal (honeycomb) pattern.
Each hub is connected to its 6 neighbors with a spoke. The line width of the hub and spokes is the same.
If this was our final pattern then generating it would be a very simple exercise in geometry. However, knowing that the application is related to RF shielding, we would be concerned about resonances -- i.e. where the wavelength of the signal hitting the mesh is a multiple (or maybe the 1/4 or 1/2 wavelength is a multiple) These resonances might produce directional reflections or even make the mesh "transparent" at certain frequencies.
One can reduce resonances by avoiding uniformly spaced repeating structures.
So a second requirement is set:
There are a number of ways to approach the problem but they need to be selected knowing that the number of hubs can be quite large. Requested extents have varied from about 6 x 6 inches up to 32 x 32 inches.
Since for many applications the pitch from hub to hub is around 200 um, a 6 x 6 inch pattern would require:
[6 x 25,400]2 ------------ = 580,000 hubs 2
and for a 32 x 32 inch pattern the number of hubs increases to:
[32 x 25,400]2 ------------- = 16,400,000 hubs 2
While generating and keeping track of 16 million hubs is certainly something we can do, generating the spokes and clipping to the edges of the random hubs is a more difficult exercise. It is here where better algorithms and memory management come into play.
As we needed to deliver the random program very quickly, we decided to use a lot of existing infrastructure. We did this by implementing the software as a plug-in to AutoCAD.
There are a couple of downsides to this approach:
AutoCAD starts behaving poorly when the database contains a large number of entities. This limits the size of the pattern that can be generated.
AutoCAD's DXF file is rather inefficient and gets very large as the entity count grows.
RandGen is installed into AutoCAD and is started from a drop down menu. The user only has to select the option: Generate Random and a dialog will open that accepts the parameters. Once the parameters have been filled in and the Run button clicked, the program will generate the pattern.
Most users will then export the DXF file and pass it to the CAD department. The DXF file will likely be converted into GDSII (or Gerber) and it may be stepped once in those formats.