SIwave Region-Based Simulations in HFSS 3D Layout
Simulating package/PCB layouts using SIwave with HFSS regions defined around 3D structures (e.g., bondwires, irregular via transitions, BGA breakouts, et cetera), including ECAD-ECAD hierarchy (e.g., packages mounted on a PCB) and MCAD 3D components, can provide an optimal balance of accuracy and simulation time.
In a standard HFSS simulation, users designate areas in a layout as HFSS regions. During simulation, Electronics Desktop automatically segments the selected regions into separate projects, generates virtual ports on relevant signal nets, and solves the selected regions sequentially in HFSS. Electronics Desktop then solves any geometry outside of those HFSS Regions with SIwave. As long as the points of contact (e.g., solder balls) between EDB cells lie within the selected HFSS regions, Electronics Desktop maintains simulation speed without sacrificing accuracy due to design segmentation (Refer to Hierarchical Restrictions). The resulting S-matrices from both HFSS Regions and SIwave geometry are integrated in a final circuit simulation that computes results for the entire design.
The SIwave Regions layer enables region-based simulations. Users may want to create a separate HFSS solution setup if they want to modify default HFSS settings that are used when solving HFSS regions. This HFSS simulation setup can then be associated with an SIwave region-based solution by selecting the HFSS setups/sweeps when configuring the SIwave sweep in the Edit Frequency Sweep window.
Methods of Defining HFSS Regions
There are two methods of defining HFSS regions. A standard method is used by default. An alternative method, using conformal radiation boundaries, can be selected by setting the environment variable SIWAVE_HFSS_REGION_RECESS_PORT_DISTANCE_FACTOR=<trace recess factor>. The trace recess factor can be any real value greater than 0, and defines how far, as a multiple of trace widths, the trace is recessed from the region boundary (e.g., setting SIWAVE_HFSS_REGION_RECESS_PORT_DISTANCE_FACTOR=2.5 will result in traces being recessed from the clipping extent by 2.5x the trace width).
The following table compares the two methods.
Standard Method | Conformal Radiation Boundaries | |
Dielectric: |
Forms a bounding box that extends 15% of width/length past the defined geometry. |
Clipped to exactly match the board outline (a conformal clip with 0% padding). |
Radiation Boundary / HFSS Airbox: | Extends 25% past defined geometry in a bounding box. | Clipped to exactly match the board outline. |
Signal Traces: | Signal traces that require virtual ports are slightly rerouted to ensure they hit the boundary at an orthogonal angle. |
Signal traces that require virtual ports are not clipped exactly at the region boundary; instead, their ends are moved slightly inside the boundary with no other rerouting. The distance is defined by the trace recess factor. |
HFSS Regions for SIwave Sweeps
- From the Project Tree, expand Analysis.
- Expand SIwave, if one exists.
- Double-click an SIwave sweep to open the Edit Frequency Sweep window.
- From the 3D Solver area, select Q3D and/or HFSS.
- Using the Setup and Sweep drop-down menus, select an HFSS setup and a corresponding sweep.
- Click OK.
Rational Interpolation
Between the actual solution frequencies, the frequency response is obtained by rational interpolation. SIwave adaptively selects the frequency points at which it computes the field solution. After a new frequency point is solved, a new interpolating fit is generated. This is compared to the interpolant on the previous step, and the maximum difference between the two is determined. If the difference exceeds the requested tolerance, then a new frequency point is chosen for a solution. The interpolating sweep is complete when the difference between successive interpolants is less than the error tolerance criterion.
- From the Frequency Sweep grid, select
the method for distributing points on the Distribution option.
Select one of the following:
- Linear Count – The difference between the start frequency and the stop frequency is calculated and is divided by the number of solution points.
- Linear Step – The start frequency is incremented using the step size until the stop frequency to calculate the number of points.
- Enter the value for the minimum frequency to sweep in the Start field.
- Enter the value for a sweep maximum frequency in the Stop field.
- Specify the Points, Stepsize or Samples, depending on the Distribution option chosen.
- Optionally, modify the frequency points: click Add Above, Add Below, or Delete Selection.
- To preview all the frequency points, click Preview. The Frequency List Preview window opens, showing all the points.
- Select Time Domain Calculation to export the full-wave SPICE subcircuit. The Start value changes to 0 Hz.
If there is an existing S-parameter solution, an FWS simulation can be run without needing a 0Hz or 1Hz point.
Hierarchical Restrictions
If the project contains a hierarchical layout, ensure the following:
-
HFSS regions must surround the points of contact between both cells. Refer to Computing SYZ Solutions in HFSS 3D Layout.
-
The HFSS (user-defined regions) box is checked. If appropriate, check either the Generate regions schematic (do not simulate) box or the Solve regions in parallel box. Refer to Generating a Regions Schematic in HFSS 3D Layout and Configuring a Parallel HFSS Regions Simulation in HFSS 3D Layout.
-
If Solve regions in parallel is checked, click Configure to open the Parallel HFSS Region Compute Resource Allocation window. Specify the number of regions to solve in parallel (e.g., 2) and allocate a percentage of total resources to each region (e.g., 50). The percentage values are converted to specific machine names, CPU counts, and memory footprints during simulation. Then click OK to close the Parallel HFSS Region Compute Resource Allocation window.
-