Skip to content

Commit

Permalink
MZI simple
Browse files Browse the repository at this point in the history
  • Loading branch information
lukasc-ubc committed Dec 10, 2023
1 parent e19f063 commit f247071
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
Binary file modified submissions/EBeam_LukasChrostowski_MZI.oas
Binary file not shown.
13 changes: 10 additions & 3 deletions submissions/KLayout Python/EBeam_LukasChrostowski_MZI.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
from SiEPIC.scripts import connect_cell, connect_pins_with_waveguide, zoom_out, export_layout
from SiEPIC.utils.layout import new_layout, floorplan
from SiEPIC.extend import to_itype
from SiEPIC.verification import layout_check

import os

Expand Down Expand Up @@ -99,7 +100,7 @@
instGC2 = cell.insert(CellInstArray(cell_ebeam_gc.cell_index(), t))

# automated test label
text = Text ("opt_in_TE_1550_device_%s_MZI2" % designer_name, t)
text = Text ("opt_in_TE_1550_device_%s_MZI1" % designer_name, t)
cell.shapes(ly.layer(ly.TECHNOLOGY['Text'])).insert(text).text_size = 5/dbu

# Y branches:
Expand All @@ -115,10 +116,12 @@
connect_pins_with_waveguide(instY1, 'opt2', instY2, 'opt3', waveguide_type=waveguide_type)
connect_pins_with_waveguide(instY1, 'opt3', instY2, 'opt2', waveguide_type=waveguide_type,turtle_B=[25,-90])

'''
# 3rd MZI, with a very long delay line
cell_ebeam_delay = ly.create_cell('spiral_paperclip', 'EBeam_Beta',
{'waveguide_type':waveguide_type_delay,
'length':200})
'length':200,
'flatten':True})
x,y = 60000, 175000
t = Trans(Trans.R0,x,y)
instGC1 = cell.insert(CellInstArray(cell_ebeam_gc.cell_index(), t))
Expand All @@ -145,11 +148,15 @@
connect_pins_with_waveguide(instY1, 'opt2', instY2, 'opt3', waveguide_type=waveguide_type)
connect_pins_with_waveguide(instY2, 'opt2', instSpiral, 'optA', waveguide_type=waveguide_type)
connect_pins_with_waveguide(instY1, 'opt3', instSpiral, 'optB', waveguide_type=waveguide_type,turtle_B=[5,-90])

'''

# Zoom out
zoom_out(cell)

# Verify
num_errors = layout_check(cell=cell, verbose=True, GUI=True)
print(num_errors)

# Save
path = os.path.dirname(os.path.realpath(__file__))
filename = os.path.splitext(os.path.basename(__file__))[0]
Expand Down

0 comments on commit f247071

Please sign in to comment.