Example_GSG_Pads_with_Bondwires

This is an example of how to set your CST simulation to create GSG Pads with bondwires

  1import numpy as np 
  2import matplotlib.pyplot as plt
  3import pandas as pandas
  4import sys
  5import os
  6# Add the directory containing the project to sys.path
  7current_path = os.path.dirname(os.path.abspath('__file__'))
  8sys.path.append(current_path)
  9from CST_Constructor import CST_Commands, Curves
 10
 11
 12
 13# =============================================================================
 14# Open new MWS CST 
 15# =============================================================================
 16
 17
 18obj = CST_Commands()
 19obj.New_Project("MWS")
 20
 21
 22# =============================================================================
 23# Create the GSG PADS with Bondwires
 24# =============================================================================
 25
 26# Set Units
 27Parameters = {}
 28Parameters["Unit Length"] = "um"
 29Parameters["Unit Frequency"] = "GHz"
 30Parameters["Unit Time"] = "ns"
 31Parameters["Unit Temperature"] = "K"
 32obj.set_Units(Parameters)
 33
 34
 35# Set Boundary and background
 36Params = {}
 37Params["Type Background"] = "Normal"
 38Params["Xmin Background"] = 0
 39Params["Xmax Background"] = 0
 40Params["Ymin Background"] = 0
 41Params["Ymax Background"] = 0
 42Params["Zmin Background"] = 0
 43Params["Zmax Background"] = 0
 44
 45obj.setBackground(Params)
 46
 47
 48BoundaryParams = {}
 49BoundaryParams["Xmin Boundary"] = 'open'
 50BoundaryParams["Xmax Boundary"] = 'open'
 51BoundaryParams["Ymin Boundary"] = 'open'
 52BoundaryParams["Ymax Boundary"] = 'open'
 53BoundaryParams["Zmin Boundary"] = 'open'
 54BoundaryParams["Zmax Boundary"] = 'open'
 55BoundaryParams["Xsymmetry Boundary"] = 'none'
 56BoundaryParams["Ysymmetry Boundary"] = 'none'
 57BoundaryParams["Zsymmetry Boundary"] = 'none'
 58
 59obj.setBoundary(BoundaryParams)
 60
 61
 62# Set Frequency Range for the simulation
 63Parameters = {}
 64Parameters["Min Frequency"] = 0     
 65Parameters["Max Frequency"] = 200
 66obj.setSimFreqeuncy(Parameters)
 67
 68
 69# Set Time Solver with TLM Mesh 
 70Parameters= {}
 71Parameters["Accuracy"] = 40
 72Parameters["Caclculate Modes Only"] = False
 73Parameters["Auto Impedance"] = True
 74Parameters["Impedance"] = 50
 75Parameters["Source Port"]  = 1
 76Parameters["Solver Mesh Type"] = "TLM"
 77obj.setTimeSolver(Parameters)
 78
 79# Set parameters 
 80Parameters = {}
 81Parameters["PAD Width GND"] = 100
 82Parameters["PAD Width Signal"] = 40
 83Parameters["PAD Length"] = 100
 84Parameters["PAD Thickness"] = 2.8
 85
 86
 87Parameters["PADs Distance"] = 219
 88Parameters["Bonwire Height"] = 20
 89Parameters["Bonwire Radius"] = 25/2
 90Parameters["Glue Thickness"] = 50
 91Parameters["Floating Shield Thickness"]= 35
 92
 93Parameters["Port Y Span"] = 70
 94Parameters["Port Z Span"] = 200
 95Parameters["Accuracy"] = 40
 96
 97
 98
 99# Parameters["Probes"] is set to False. If True two Probes without Ports will be set!
100Parameters["Probes"] = False
101obj.GSG_Bondwire_ChipToChip_connection(Parameters)
102
103