Skip to content

Commit

Permalink
updt tuto_getting started
Browse files Browse the repository at this point in the history
  • Loading branch information
audrey01mit committed May 1, 2024
1 parent edc2341 commit d0d1141
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 39 deletions.
4 changes: 2 additions & 2 deletions docs/user/tutorials/getting_started.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,5 +114,5 @@
design.place_remaining_devices(remaining_cells, write_remaining_devices_map_txt=False)


# qp(CHIP)
design.write_gds()
qp(CHIP)
# design.write_gds()
79 changes: 42 additions & 37 deletions docs/user/tutorials/tuto_gettingstarted.rst
Original file line number Diff line number Diff line change
Expand Up @@ -84,20 +84,20 @@ Choose your design parameters, create a new design and build the chip.
layers = {'annotation':0, 'mgb2_fine':1, 'mgb2_coarse':2, 'pad':3}
design = qd.Design(name = 'demo_design',
chip_w = chip_w,
chip_margin = chip_margin,
N_dies = N_dies,
pad_size = pad_size,
device_outline = outline_fine,
die_outline = outline_coarse,
ebeam_overlap = ebeam_overlap,
annotation_layer = layers['annotation'],
device_layer = layers['mgb2_fine'],
die_layer = layers['mgb2_coarse'],
pad_layer = layers['pad'])
design = qd.Design(
name = 'demo_design',
chip_w = chip_w,
chip_margin = chip_margin,
N_dies = N_dies,
pad_size = pad_size,
device_outline = outline_fine,
die_outline = outline_coarse,
ebeam_overlap = ebeam_overlap,
annotation_layer = layers['annotation'],
device_layer = layers['mgb2_fine'],
die_layer = layers['mgb2_coarse'],
pad_layer = layers['pad']
)
CHIP = design.create_chip(create_devices_map_txt=False)
Expand All @@ -112,36 +112,39 @@ Add alignment cells like:
.. code-block:: python
:lineno-start: 38
ALIGN_CELL_LEFT = design.alignment_cell(layers_to_align = [layers['mgb2_coarse'], layers['pad']],
text = 'LEFT')
ALIGN_CELL_LEFT = design.alignment_cell(
layers_to_align = [layers['mgb2_coarse'], layers['pad']], text = 'LEFT'
)
design.place_on_chip(ALIGN_CELL_LEFT, (0, 2))
Add Van der Pauw cells like:

.. code-block:: python
:lineno-start: 46
:lineno-start: 48
VDP_TEST_MGB2 = design.vdp_cell(layers_to_probe = [layers['mgb2_coarse']],
layers_to_outline = [layers['mgb2_coarse']],
text = 'MGB2')
VDP_TEST_MGB2 = design.vdp_cell(
layers_to_probe=[layers["mgb2_coarse"]],
layers_to_outline=[layers["mgb2_coarse"]],
text="MGB2",
)
design.place_on_chip(VDP_TEST_MGB2, (0, 0))
Add resolution test cells like:

.. code-block:: python
:lineno-start: 56
:lineno-start: 62
RES_TEST_MGB2_FINE = design.resolution_test_cell(layer_to_resolve = layers['mgb2_fine'],
text = 'MGB2 FINE')
RES_TEST_MGB2_FINE = design.resolution_test_cell(
layer_to_resolve=layers["mgb2_fine"], text="MGB2 FINE"
)
design.place_on_chip(RES_TEST_MGB2_FINE, (2, 2))
Add etch test cell like:

.. code-block:: python
:lineno-start: 69
:lineno-start: 79
ETCH_TEST = design.etch_test_cell(layers_to_etch = [[layers['pad']]],
text = 'PAD')
ETCH_TEST = design.etch_test_cell(layers_to_etch=[[layers["pad"]]], text="PAD")
design.place_on_chip(ETCH_TEST, (3, 0))
Expand All @@ -153,24 +156,26 @@ Some nanowire electronics
~~~~~~~~~~~~~~~~~~~~~~~~~

.. code-block:: python
:lineno-start: 75
:lineno-start: 84
#SNSPD-NTRON
# SNSPD-NTRON
SNSPD_NTRON_01 = design.snspd_ntron_cell(w_choke=0.1)
SNSPD_NTRON_01 = design.snspd_ntron_cell(w_choke=0.1)
design.place_on_chip(SNSPD_NTRON_01, (1, 0))
# NANOWIRES
channels_w = [0.025, 0.1, 0.5, 1, 2]
channels_sources_w = [(x, 10*x) for x in channels_w]
NANOWIRES = design.nanowires_cell(channels_sources_w=channels_sources_w,
text = '\nsrc=10chn')
channels_sources_w = [(x, 10 * x) for x in channels_w]
NANOWIRES = design.nanowires_cell(
channels_sources_w=channels_sources_w, text="src=10chn"
)
design.place_on_chip(NANOWIRES, (1, 1))
channels_sources_w = [(x, 4*x) for x in channels_w]
NANOWIRES = design.nanowires_cell(channels_sources_w=channels_sources_w,
text = '\nsrc=4chn')
channels_sources_w = [(x, 4 * x) for x in channels_w]
NANOWIRES = design.nanowires_cell(
channels_sources_w=channels_sources_w, text="src=4chn"
)
design.place_on_chip(NANOWIRES, (3, 1))
# NTRONS
Expand All @@ -180,10 +185,10 @@ Some nanowire electronics
channel_to_choke_ratios = [5, 10]
for ratio in channel_to_choke_ratios:
for choke_w in chokes_w:
channel_w = choke_w*ratio
channel_w = choke_w * ratio
NTRON = design.ntron_cell(choke_w, channel_w)
remaining_cells.append(NTRON)
design.place_remaining_devices(remaining_cells, write_remaining_devices_map_txt = False)
design.place_remaining_devices(remaining_cells, write_remaining_devices_map_txt=False)
.. image:: tutorials_images/tuto_gettingstarted_some_electronics.png
:alt: tuto_gettingstarted_some_electronics.png
Expand Down

0 comments on commit d0d1141

Please sign in to comment.