RF pads

SiFab contains one component to build RF pads for high-frequency RF probes.

ProbePad

This component allows to generate RF pads with a parametric number of pads. These pads are characterised by a broad section and a narrow section. Their properties are illustrated in the following picture.

../../../../../../../../../_images/rf_pad.png

Different types of pads can be instantiated easily by adapting the number of layout properties provided, as shown in the examples below.

from si_fab import all as pdk
import numpy as np

# GS
rf = pdk.ProbePad(name="GS",
                  broad_widths=[100]*2,
                  broad_centers=[(0, y) for y in np.array([-0.5, 0.5])*150],
                  broad_lengths=[200]*2,
                  narrow_widths=[2]*2,
                  narrow_centers=[(300, y) for y in np.array([-0.5, 0.5])*5],
                  narrow_lengths=[5]*2,
                  port_names=["G", "S"])
rf.Layout().visualize(annotate=True)

# GSG
rf = pdk.ProbePad(name="GSG",
                  broad_widths=[100]*3,
                  broad_centers=[(0, y) for y in np.array([-1, 0, 1])*150],
                  broad_lengths=[200]*3,
                  narrow_widths=[2]*3,
                  narrow_centers=[(300, y) for y in np.array([-1, 0, 1])*5],
                  narrow_lengths=[5]*3,
                  port_names=["G1", "S", "G2"])
rf.Layout().visualize(annotate=True)

# GSGSG
rf = pdk.ProbePad(name="GSGSG",
                  broad_widths=[100]*5,
                  broad_centers=[(0, y) for y in np.array([-2, -1, 0, 1, 2])*150],
                  broad_lengths=[200]*5,
                  narrow_widths=[3, 1, 3, 1, 3],
                  narrow_centers=[(300, y) for y in np.array([-2, -1, 0, 1, 2])*5],
                  narrow_lengths=[20]*5,
                  port_names=["G1", "SL", "G2", "SR", "G3"])
rf.Layout().visualize(annotate=True)
../../../../../../../../../_images/example_rf_pad_00.png
../../../../../../../../../_images/example_rf_pad_01.png
../../../../../../../../../_images/example_rf_pad_02.png