diff --git a/DFT.md b/DFT.md index 92ca597..1862813 100644 --- a/DFT.md +++ b/DFT.md @@ -2,6 +2,7 @@ # Design for Test rules - All design submissions must follow the Design for Test (DFT) rules. Three optical interfaces are available: surface grating couplers (GC), facet-attached micro-lenses (FaML), and facet-attached vertical emitters (FAVE). + - Wavelength for testing can be 1310 or 1550 nm, swept over a range of +/- 30 nm ## Grating Couplers @@ -10,8 +11,10 @@ - SiEPIC_EBeam_PDK -> EBeam-SiN -> - GC_SiN_TE_1310_8degOxide_BB - GC_SiN_TE_1550_8degOxide_BB + - should be facing right - 127 µm pitch, verically aligned, single column, connected circuits - up to 4 grating couplers +- The grating coupler that is second from the top should be labeled with an opt_in_TE_1550_device_designerUniqueIndentifier label on the Text layer; it will be connected to the swept tunable laser - opt_in label format: opt_in_TE_1550_device_designerUniqueIndentifier - opt_in label location: the tip (0,0) of the grating coupler cell at the input - Fiber Array test consists of: @@ -23,20 +26,23 @@ ## Facet-attached Micro-Lenses (FaML) -- area design maximum: 1000 µm wide, 500 µm high +- area design maximum: 1100 µm wide, 500 µm high - FaML coupler cells: - SiEPIC_EBeam_PDK -> EBeam-Dream -> - ebeam_dream_FaML_SiN_1550_BB + - should be facing right + - left edge of the chip (the cell includes 100 µm of deep trench) - 127 µm pitch, verically aligned, single column, connected circuits - up to 4 lenses -- opt_in label format: opt_in_TE_1550_FaML_designerUniqueIndentifier -- opt_in label location: the lens and chip edge (0,0) of the FaML cell at the input +- opt_in label format: opt_in_TE_1550_***FaML***_designerUniqueIndentifier +- opt_in label location: at the chip edge (0,0) of the FaML cell, at the laser input - Fiber Array test consists of: - - 1 (top FaML): input, laser - - 2 (middle FaML): output, to detector + - 1 (top FaML): output, to detector + - 2 (middle FaML): input, laser - 3 (middle FaML): output, to detector - 4 (bottom FaML): output, to detector -- See example: EBeam_LukasChrostowski_MZI1_1550_FaML.oas +- Filename: must contain ***FaML***, so that it recognized and placed on the edge +- See example: EBeam_LukasChrostowski_MZI1_1550_***FaML***.oas ## Facet-attached Vertical Emitters (FAVE) @@ -44,13 +50,14 @@ - FaML coupler cells: - SiEPIC_EBeam_PDK -> EBeam-Dream -> - ebeam_dream_FAVE_SiN_1550_BB + - should be facing right - 127 µm pitch, verically aligned, single column, connected circuits -- up to 4 lenses -- opt_in label format: opt_in_TE_1550_FAVE_designerUniqueIndentifier -- opt_in label location: the edge (0,0) of the FAVE cell at the input +- up to 4 emitters +- opt_in label format: opt_in_TE_1550_***FAVE***_designerUniqueIndentifier +- opt_in label location: the waveguide opt1 port (0,0) of the FAVE cell, at the laser input - Fiber Array test consists of: - - 1 (top FAVE): input, laser - - 2 (middle FAVE): output, to detector + - 1 (top FAVE): output, to detector + - 2 (middle FAVE): input, laser - 3 (middle FAVE): output, to detector - 4 (bottom FAVE): output, to detector - See example: EBeam_LukasChrostowski_MZI_1550_FAVE.oas \ No newline at end of file diff --git a/README.md b/README.md index b6b96e8..42c52c7 100644 --- a/README.md +++ b/README.md @@ -7,12 +7,12 @@ # Fabrication process: Passive Silicon Nitride ## Technical summary: -- SOI wafer, 400 nm silicon nitride (see the layer builder file [SiN.lbr](https://github.com/SiEPIC/SiEPIC_EBeam_PDK/blob/master/klayout/EBeam/SiN.lbr) for process bias and sidewall angle information) +- SOI wafer, 400 nm silicon nitride (see the layer builder file [SiN.lbr](https://github.com/SiEPIC/SiEPIC_EBeam_PDK/blob/master/klayout/EBeam/SiN.lbr) for process bias and sidewall angle information), and [Applied Nanotools webpage](https://www.appliednt.com/nanosoi/sys/resources/rules_nitride/) - Baseline process: - Single full etch, using a negative resist (HSQ) - Oxide cladding - Edge coupling -- Facet-attached micro-lenses and vertical emitters +- Facet-attached micro-lenses and vertical emitters, by Dream Photonics - Process Design Kit: [SiEPIC-EBeam-PDK](https://github.com/siepic/SiEPIC_EBeam_PDK) - [Design for Test rules](DFT.md) @@ -32,15 +32,13 @@ The submission involves several steps. First, you need to create your design(s) using the process design kit (PDK) for this specific fabrication run. Then you need to create a Fork of this repository, commit your design(s), ensure that it passes the checks, and create a pull request. Once your pull request is approved, your design(s) will be merged into the layout for fabrication. You should verify that your design is correctly merged. Once the designs are fabricated, they will be tested, and the measurement results will be posted in this repository. -## Design area, Design for Test, Design verification - - Each EBeam / openEBL design area allocation is 1000 x 410 µm - - Wavelength for testing can be 1310 or 1550 nm, swept over a range of +/- 30 nm - - Grating couplers: - - should be facing right - - Cells: GC_SiN_TE_1550_8degOxide_BB or GC_SiN_TE_1310_8degOxide_BB, from the EBeam-SiN library - - The grating coupler that is second from the top should be labeled with an opt_in_TE_1310_device_designName label on the Text layer; it will be connected to the swept tunable laser - - The first, third and fourth grating couplers will be connected to detectors - - Design rules: the design must be error-free, namely passing the DRC manufacturing checks, and passing the Functional Layout Check (V in KLayout SiEPIC-Tools) +## Design area, Design for Test + - [Design for Test rules](DFT.md) + +## Design verification + - Design Verification: the design must be error-free, namely passing + - the DRC manufacturing checks, and + - the Functional Layout Check ("V" in KLayout SiEPIC-Tools) ## Design software and PDK installation instructions: - Design tools and process design kit (SiEPIC-EBeam-PDK, KLayout implementation) installation instructions. diff --git a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI2_1550_FaML.py b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI2_1550_FaML.py index 1a410bb..ce07cb6 100644 --- a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI2_1550_FaML.py +++ b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI2_1550_FaML.py @@ -76,7 +76,7 @@ cell_ebeam_y = ly.create_cell('ANT_MMI_1x2_te1550_3dB_BB', 'EBeam-SiN') cell_ebeam_delay = ly.create_cell('spiral_paperclip', 'EBeam_Beta', {'waveguide_type':waveguide_type_delay, - 'length':319, + 'length':311, 'loops':8, 'flatten':True}) diff --git a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_1550_FAVE.py b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_1550_FAVE.py index 15c7b3d..70b8303 100644 --- a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_1550_FAVE.py +++ b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_1550_FAVE.py @@ -67,7 +67,7 @@ waveguide_type_delay='SiN routing TE 1550 nm (compound waveguide)' # Load cells from library -cell_ebeam_gc = ly.create_cell('ebeam_dream_FAVE_SiN_1550_BB', 'EBeam-Dream',{}) +cell_ebeam_gc = ly.create_cell('ebeam_dream_FAVE_SiN_1550_BB', 'EBeam-Dream') cell_ebeam_y = ly.create_cell('ANT_MMI_1x2_te1550_3dB_BB', 'EBeam-SiN') ####################### @@ -76,9 +76,10 @@ # draw two edge couplers for facet-attached vertical emitters inst_fave = FaML_two(cell, label = "opt_in_TE_1550_FAVE_loopback_%s" % designer_name, - x_offset = 195e3, + x_offset = 211e3, y_offset = 59.5e3, cell_name = "ebeam_dream_FAVE_SiN_1550_BB", + cell_params = None, ) # Waveguides: connect_pins_with_waveguide(inst_fave[0], 'opt1', inst_fave[1], 'opt1', waveguide_type=waveguide_type1) @@ -89,9 +90,10 @@ # draw two edge couplers for facet-attached vertical emitters inst_fave = FaML_two(cell, label = "opt_in_TE_1550_FAVE_MZI1_%s" % designer_name, - x_offset = 195e3+275e3, + x_offset = 211e3+275e3, y_offset = 59.5e3, cell_name = "ebeam_dream_FAVE_SiN_1550_BB", + cell_params = None, ) # Y branches: instY1 = connect_cell(inst_fave[1], 'opt1', cell_ebeam_y, 'pin1') @@ -105,15 +107,16 @@ ####################### cell_ebeam_delay = ly.create_cell('spiral_paperclip', 'EBeam_Beta', {'waveguide_type':waveguide_type_delay, - 'length':269, + 'length':261, 'loops':8, 'flatten':True}) # draw two edge couplers for facet-attached micro-lenses inst_fave = FaML_two(cell, label = "opt_in_TE_1550_FAVE_MZI2_%s" % designer_name, - x_offset = 195e3, + x_offset = 211e3, y_offset = 59.5e3+254e3, cell_name = "ebeam_dream_FAVE_SiN_1550_BB", + cell_params = None, ) instY2 = connect_cell(inst_fave[0], 'opt1', cell_ebeam_y, 'pin1') instY1 = connect_cell(inst_fave[1], 'opt1', cell_ebeam_y, 'pin1') diff --git a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_loopback_1550_FaML.py b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_loopback_1550_FaML.py index fe8f02e..c16deaa 100644 --- a/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_loopback_1550_FaML.py +++ b/submissions/KLayout Python/EBeam_LukasChrostowski_MZI_loopback_1550_FaML.py @@ -58,7 +58,7 @@ and Draw the floor plan ''' cell, ly = new_layout(tech_name, top_cell_name, GUI=True, overwrite = True) -floorplan(cell, 230e3, 481e3) +floorplan(cell, 240e3, 481e3) waveguide_type1='SiN Strip TE 1550 nm, w=750 nm' waveguide_type_delay='SiN routing TE 1550 nm (compound waveguide)' diff --git a/submissions/OpenEBL_snewman_SiN_CDCB3_1_FAVE.gds b/submissions/OpenEBL_snewman_SiN_CDCB3_1_FAVE.gds index 9e74879..712b8cc 100644 Binary files a/submissions/OpenEBL_snewman_SiN_CDCB3_1_FAVE.gds and b/submissions/OpenEBL_snewman_SiN_CDCB3_1_FAVE.gds differ diff --git a/submissions/OpenEBL_snewman_SiN_CDCB3_1_FaML.gds b/submissions/OpenEBL_snewman_SiN_CDCB3_1_FaML.gds new file mode 100644 index 0000000..0654c14 Binary files /dev/null and b/submissions/OpenEBL_snewman_SiN_CDCB3_1_FaML.gds differ