Home Forums Nazca Import GDS with cell name already in layout

Tagged: ,

This topic contains 3 replies, has 3 voices, and was last updated by  Ronald 1 month ago.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #5413

    Douglas
    Participant

    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

    #5417

    Ronald
    Keymaster

    Dear 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

    #5495

    Blissbay
    Member

    Hello. 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

    #5496

    Ronald
    Keymaster

    Dear 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

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.