- This topic has 3 replies, 3 voices, and was last updated 5 years, 8 months ago by Ronald.
-
AuthorPosts
-
15 February 2019 at 09:15 #5413DouglasParticipant
Hi,
I am facing problems when trying to import a GDS file that already have a Building Block cell with the same naming of one cell that I already have on my design. Is there a way to overcome that?
Doug
15 February 2019 at 09:45 #5417RonaldKeymasterDear Douglas,
In GDS a cellname must be unique. It’s the ID.
Nazca always avoids two different cells having the same name. When you load a GDS file it may have any cellname in there, possibly conflicting with an existing cellname in your design. For more info on what happens see
import nazca as nd print(help(nd.load_gds))
Which shows this and more (v0.5):
————————
load_gds(filename, cellname=None, newcellname=None, asdict=False, select=’top’, layermap=None, cellmap=None, scale=1.0, prefix=”, instantiate=True, native=True, bbox=False, bboxbuf=0, connect=None, flat=False)Load GDS cell ‘cellname’ (and its instances) from ‘filename’ into a Nazca cell.
By default, load_gds returns a single cell in the specified gds file.
However, when using a gds file as a library, i.e. accessing multiple cells
in the file individually, it is more efficient to call, load (and internally)
store the gds file only once by setting asdict=True. This makes makes load_gds
return a dictionary with a references to each Cell by name:{‘topcells’: {cellname: Cell}, ‘subcells’: {cellname: Cell}}
This method checks for cellname clashes, i.e. a cell(tree)
loaded into the layout can not contain a cell name that already exists
in the layout. There are three ways to avoid name clashes in case they occur:1. Set a ‘newcellname’: changes only the name of the top cell;
Note ‘newcellname’ is ignored if a is provided,
i.e. add any a topcell renaming to the cellmap in this case.2. Provide a ‘cellmap’: maps original cell names one-by-one to new cell
names. Cells names omitted will not be renamed.3. Provide a cell name : applies to all cells in a branch,
except those in ‘newcellname’ or ‘cellmap’.Note, if you need to create a building block from GDS with pins and stubs,
and you have the pin and xsection info available already (for example in a
file) then you may prefer to use method ‘load_gdsBB’ instead.…
Ronald
16 April 2019 at 14:54 #5495BlissbayMemberHello. I am very new to this platform and the entire design of PIC. However, I started learning with Lumerical and a friend directed me to Nazca since it is open source. I want to ask if the design I made here can be turned to GDS that is fabricable.
Also I want to ask if I can design virtually all components of PIC: Waveguides, Bend, Y, transceiver etc with Nazca. thank you
Emmanuel
16 April 2019 at 16:17 #5496RonaldKeymasterDear Emmanuel,
You can basically design any layout you want in Nazca and export it to foundry compatible GDS layout. Foundry rules need to be known and correctly implemented. Designs created with Nazca are utilized in e.g. SiPh transceivers, InP lasers, PLC multiplexers, SiN based spectrometers, Polymer interposers and many more applications.
Ronald
-
AuthorPosts
- You must be logged in to reply to this topic.