GDSII Importer Plugin for SketchUp

-> Japanese page

0. Changelog

1. License

This program is released under the MIT License. See LICENSE.txt.

Copyright of ruby-gdsii library is held by Jim Freeze & Dan White. For details, see GDSII_importer/ruby-gdsii/LICENSE.txt GDSII_importer/ruby-gdsii is modified by Akira Tsuchiya. Diff from original ruby-gdsii is saved in ruby-gdsii.patch

2. Purpose

This ruby script is a plugin of SketchUp to import GDSII formatted layout data.

3. Environment

This plugin is developed under Sketchup 2014 on Windows 7 and Windows 8.

4. Installation and Usage

4.1. Installation

  1. Run SketchUp and open Window -> Preferences
  2. Select Extentions, click "Install Extention" bottun and choose GDSII_importer.rbz

If you prefer copying source files (.rb), copy GDSII_importer.rb and GDSII_importer folder into SketchUp user directory (Default: C:\Users\{username}\AppData\Roaming\SketchUp\SketchUp 20XX\SketchUp\Plugins).

Note: From ver. 2016, copying source files into C:\Program Files\SketchUp\SketchUp 20XX\Plugins is invalid.

Uninstall: Delete GDSII_importer.rb and GDSII_importer folder from your directory (Default: C:\Users\{username}\AppData\Roaming\SketchUp\SketchUp 20XX\SketchUp\Plugins).

Official Help: Installing Ruby Plugins (Extensions)

4.2. Process definition file

Since GDSII format does not contain the information of the thickness and the color, you have to describe these information in "process definition file". The format of process definition file is as follows. The line which starts with the character "#" is ignored as comments.

  #Layer name  Layer No.  Abbreviation Height  Thickness Color    Alpha
  METAL1       10         M1           1.0     0.5       #0000ff  0.8
Layer name:
The name of layer
Layer No.:
Layer number which is defined in the technology file.
Abbreviation. This value does NOT affect the behavior of the plugin.
Height from the substrate (unit: um).
Thickness of the layer (unit: um). You can specify a negative value.
The color of the layer. Please write in #rrggbb format.
Alpha value. 0 means transparent, 1 means opaque.

This plugin generates additional layers, i.e., substrate, ILD (Interlayer Dielectric) and passivation. The layer No. of these layers are 256, 257 and 258, respectively.

  SUBSTRATE    256  SUB    0.0    -10    #3333ff  0.1
  ILD          257  ILD    0.0    10     #ffffff  1.0
  PSSV         258  PSSV   10     2      #ffffff  1.0

4.3. Usage

Now you can import GDSII file to SketchUp. The plugin appears in the menu of Goole SketchUP, "Plugins" -> "GDSII Importer" -> "Import".

Step 1/3 GDSII file:
Specify GDSII file for import
Step 2/3 Process definition file:
Specify the suitable process definition file.
Step 3/3 Parameters:
Top cell name -
Specify the name of top cell.
Are of substrate -
Input a scale factor to decide the area of substrate, ILD and passication. 1.0 means the area is equal to the bounding box of the layout. If you indicate 0, substrate, ILD and passivation are NOT generated.
Horizontal scaling -
Scaling factor of horizontal direction.
Vertical scaling -
Scaling factor of vertical direction.
Max # of array -
Array which contains larger number of elements than this value is ignored.

It may take several minutes for large GDSII file to import. If the plugin does not function correctly, please re-execute with the "Ruby Console" open. You can open "Ruby Console" window from the menu of SketchUP, "Windows" -> "Ruby Console".

5. Examples

The archive includes an example GDSII (INV010.gds), process definition file (proc_itrs65nm.txt) and SketchUp Model (INV010.skp). Please try to import INV010.gds with proc_itrs65nm.txt. You will get the same SketchUp Model as INV010.skp.

6. Known Bugs


Return to index page