routing for canvase level object is finished.

This commit is contained in:
2026-05-30 16:37:37 +08:00
parent bf223b52ac
commit e3f708a1a7
10 changed files with 1647 additions and 567 deletions
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 439 KiB

@@ -0,0 +1,243 @@
# =============================================
# mxPIC Cell/Project Definition File
# =============================================
schema_version: "2.0.0"
kind: cell
coordinate_system: gds_y_up
canvas_size:
width: 1000
height: 1000
project: mxpic_project_1
name: canvas_1
type: composite
version: "1.0.0"
# 1. External Ports (How this cell connects to the outside world)
ports:
- name: port
layer: WG_CORE
x: 200.0
y: -370.0
angle: 180.0
width: 0.5
- name: port_2
layer: WG_CORE
x: 200.0
y: -370.0
angle: 180.0
width: 0.5
- name: port_1
layer: WG_CORE
x: 200.0
y: -420.0
angle: 180.0
width: 0.5
- name: port_3
layer: WG_CORE
x: 691.9
y: -267.5
angle: 0.0
width: 0.5
# 2. Instances (The sub-components dropped onto this canvas)
instances:
MMI_7:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 310.0
y: -370.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_8:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 560.0
y: -130.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_9:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 560.0
y: -180.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_10:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 560.0
y: -230.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_11:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 560.0
y: -280.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_12:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 310.0
y: -420.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
elements:
port:
type: port
x: 200.0
y: -370.0
angle: 0.0
port_number: 1
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
Anchor_1:
type: anchor
x: 460.0
y: -300.0
angle: 90.0
port_number: 4
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
port_2:
type: port
x: 200.0
y: -370.0
angle: 0.0
port_number: 1
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
port_1:
type: port
x: 200.0
y: -420.0
angle: 0.0
port_number: 1
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
port_3:
type: port
x: 691.9
y: -267.5
angle: 180.0
port_number: 1
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
# 3. Bundles (Grouped links for multi-bus/parallel routing)
bundles:
output_bus:
routing_type: euler_bend
links:
- from: MMI_7:a1
to: port_2:port
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_12:a1
to: port_1:port
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_7:b1
to: Anchor_1:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_7:b2
to: Anchor_1:a2
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_12:b1
to: Anchor_1:a3
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_12:b2
to: Anchor_1:a4
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: Anchor_1:b4
to: MMI_11:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: Anchor_1:b3
to: MMI_10:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: Anchor_1:b2
to: MMI_9:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: Anchor_1:b1
to: MMI_8:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_11:b1
to: port_3:port
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 538 KiB

After

Width:  |  Height:  |  Size: 579 KiB

@@ -23,21 +23,10 @@ ports:
# 2. Instances (The sub-components dropped onto this canvas)
instances:
EC_1:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/edge_couplers/EC_SiN400_1310_1p0dB_L635_A0_QY_202604
x: 0.0
y: -2660.0
rotation: 180.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_1:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 936.8
y: -2358.5
MZM_1:
component: Silterra/EMO1_2ML_CU_Al_RDL/composites/Mach_Zender_modulators/MZI_SiN400_Si220_PIN_mod_1310_L1300_QY_202603
x: 1740.0
y: -2350.0
rotation: 0.0
flip: 0
flop: 0
@@ -45,87 +34,10 @@ instances:
settings:
length:
MMI_2:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 1089.2
y: -2247.3
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_3:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 1096.8
y: -2598.0
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_4:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 735.0
y: -2541.1
rotation: 90.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_5:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 1086.5
y: -2097.1
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
EC_2:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/edge_couplers/EC_SiN400_1310_1p0dB_L635_A0_QY_202604
x: 0.0
y: -2825.7
rotation: 180.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_6:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 913.7
y: -2537.3
rotation: 90.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_7:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 1027.2
y: -2736.7
rotation: 0.0
flip: 0
flop: 0
mirror: false
settings:
length:
MMI_8:
component: Silterra/EMO1_2ML_CU_Al_RDL/primitives/multimode_interferometers/1x2MMI_1310nm_TE_Silterra_202603_ZKY_v2
x: 842.6
y: -2941.6
canvas_1:
component: canvas_1
x: 903.5
y: -2681.6
rotation: 0.0
flip: 0
flop: 0
@@ -138,86 +50,27 @@ elements:
type: port
x: 50.0
y: -150.0
angle: 0.0
angle: 180.0
port_number: 1
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
anchor_1:
type: anchor
x: 732.7
y: -2824.7
angle: 0.0
port_number: 5
pitch: 10
layer: WG_CORE
width: 0.5
description: ""
# 3. Bundles (Grouped links for multi-bus/parallel routing)
bundles:
output_bus:
routing_type: euler_bend
links:
- from: MMI_1:b1
to: MMI_2:a1
- from: canvas_1:port_1
to: MZM_1:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_1:b2
to: MMI_3:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: EC_1:a1
to: anchor_1:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: anchor_1:b1
to: MMI_4:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_4:b2
to: MMI_1:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_5:a1
to: MMI_4:b1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: EC_2:a1
to: anchor_1:a2
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: anchor_1:b2
to: MMI_6:a1
xsection: strip
family: optical
width: 0.45
radius: 10
routing_type: euler_bend
- from: MMI_8:b1
to: MMI_7:a1
- from: canvas_1:port_3
to: MZM_1:a2
xsection: strip
family: optical
width: 0.45
Binary file not shown.