Advanced Signal Integrity Design Kits - AtaiTec · The user can enter the thickness, top/bottom...

24
X2D2 User's Guide March 17, 2016 AtaiTec Corporation San Jose, CA 95129 Phone: 408-597-7188, Fax: 408-777-8291 Email: [email protected] , Web: www.ataitec.com

Transcript of Advanced Signal Integrity Design Kits - AtaiTec · The user can enter the thickness, top/bottom...

X2D2

User's Guide

March 17, 2016

AtaiTec Corporation San Jose, CA 95129

Phone: 408-597-7188, Fax: 408-777-8291 Email: [email protected], Web: www.ataitec.com

X2D2-UG 2

Table of Content

Revision History .............................................................................................................................. 3 X2D2: 2D Field Solver with Surface Roughness .............................................................................. 4

Unit .............................................................................................................................................. 5 Material property ........................................................................................................................ 5 Dielectric layers ........................................................................................................................... 6 Conductor cross section .............................................................................................................. 6 Post-processing: ground or float conductors ............................................................................. 7 Run control .................................................................................................................................. 7 Target .s2p or .s4p file ................................................................................................................ 7

PCB extraction and modeling methodology ................................................................................... 8 Appendix ....................................................................................................................................... 21

ADK and ISD Installation (for all Windows) ............................................................................... 21 ADK and ISD Server for Linux on Intel 64bit ............................................................................. 24

X2D2-UG 3

Revision History

Date Changes Version

05/12/2014 Initial release. 2014.05

03/02/2015 Support different roughness for each surface of conductor. 2015.03

07/10/2015 Add “Target .s2p or .s4p” for manual optimization and comparison; Add “AtaiTec Tools” button to all graphs; Change length to inch;

2015.07

09/01/2015 Add “Help” menu; 2015.09

X2D2-UG 4

X2D2: 2D Field Solver with Surface Roughness x2D2 is a new 2D field solver that allows the user to easily model causal dielectrics and surface roughness and generate impedance, RLGC models and S parameters for a layered structure in Figure 1. Accurate models of causal dielectric and surface roughness are crucial for engineers to predict system performance above several Gbps. Through GUI in Figure 2, the user can specify (1) unit, (2) material property, (3) dielectric layers, (4) conductor cross section, (5) # meshes for discretization, (6) conductors to ground or float and (7) impedance or S parameters to simulate.

Figure 1

X2D2-UG 5

Unit The user can choose among four different units: mm, um, mil (default) and in to specify the dielectric thickness and conductor cross section. Other units are fixed: Sigma in S/m, Roughness in um, and Length in m.

Material property To best utilize X2D2, the user can build up their material library first. Each material is assigned an index (Mat ID), to be easily associated with dielectric and metal layers later. Indices 1 to 6 are reserved for constant dielectrics; indices 31 to 36 are reserved for causal dielectrics; and indices 51 to 57 are reserved for metals. The user can click “Save As…” to save their material library into a template file and click “Load .tp2 File” to load it back later.

Causal dielectric model

To ensure causality, X2D2 accepts the following wideband Debye (or Djordjevic-Sarkar) dielectric model:

( )δεεεε tan11010log1

1

2

1012

jfjfj

mm rm

m

rdri −⋅=

⋅+⋅+

⋅−

⋅+=

where the user will enter Eri, Erd, m1 and m2. To fit the wideband model, the user can click “Fit Dielectric”. To view equivalent εr and tanδ for Mat ID 31 to 36, the user can click “View Material”. Figure 3 to Figure 4 show some examples. The user has the option of specifying additional conductivity for both constant and causal dielectric models. When conductivity (sigma or σ) is specified, the following effective frequency-dependent loss tangent is added:

02tan

εεπσδ

reff f ⋅⋅

=

where ε0 is the free space permittivity.

Surface roughness model

X2D2-UG 6

The surface roughness model is based on “effective conductivity” (by G. Gold and K. Helmreich at DesignCon 2014). Only two variables are needed: the bulk conductivity (bulk) and RMS surface roughness (Rq). To view frequency-dependent effective conductivity for Mat ID 51 to 57 (with non-zero roughness), the user can click “View Material”. Figure 5 shows some examples.

Dielectric layers The user can specify up to 5 dielectric layers plus an additional top dielectric layer. An optional top ground plane can be placed above the top dielectric layer (Figure 1). The background dielectric is assumed to be air. If there is no top ground plane and the top dielectric layer has Er=1 and tanD=0, the thickness of top dielectric layer will not matter because it effectively merges with the background (i.e., air).

Conductor cross section The user can enter the thickness, top/bottom width, and spacing in scalar or vector form to specify the cross section of each conductor in multi-layered structures. When the number of thickness, top/bottom width, or spacing is less than the specified number of conductors in each layer, the last entered thickness, top/bottom width, or spacing is assumed for the rest of conductors. When the number of thickness, top/bottom width, or spacing is greater than the specified number of conductors in each layer, those entries past the number of conductors are ignored.

Different roughness for each surface of conductor

The user can specify up to three material indices (Mat ID), separated by space, for each metal layer. This feature allows the user to easily model the matte side and drum side (or the shiny side) of conductor. As shown in Figure 6, the top, side and bottom surfaces of each metal layer will assume the first, second and third Mat ID, respectively. If only one Mat ID is specified, the same Mat ID will be assigned to all surfaces. If two Mat IDs are specified, the second Mat ID will be assigned to the side and bottom surfaces. Only one Mat ID is needed for either Bottom Ground or Top Ground. If more than one Mat IDs are entered for Bottom Ground, only the first Mat ID (for the top surface) will be used. If more than one Mat IDs are entered for Top Ground, only the last Mat ID (for the bottom surface) will be used.

X2D2-UG 7

After the user finishes specifying the dielectric layers and conductor cross section, he/she can click “View & Save” to view the geometry that will be simulated. The cross-sectional geometry of Figure 2 is shown in Figure 7 and the cross-sectional geometry of Figure 8 is shown in Figure 9.

Post-processing: ground or float conductors The user can also ground or float conductors by entering their indices. The sequence of conductor number starts from 1 at the leftmost conductor on the bottom layer and increases from left to right and lower to higher layer.

Run control The user can choose to simulate either Impedance or S parameters. If Impedance is simulated, a summary file (Figure 10) will be created that contains single-ended (and differential- and common-mode, if any) impedance, delay, effective DK and RLGC matrices. In addition, a simple W-element RLGC model (Figure 11) is created in the same directory. If the user chooses to simulate S parameters, he/she will be able to specify length, minimum and maximum frequencies, number of frequency points, frequency points in linear or log scale and reference impedance. Besides S parameters, a tabulated W-element RLGC model (Figure 12) is created in the same directory. Additional options include “Enforce causality” and “Plot S param”. When “Enforce causality” is selected and when neither dielectrics nor conductors have frequency-dependent material property (i.e., only constant dielectrics and no surface roughness), X2D2 will deploy a proprietary algorithm to output causal S parameters. Figure 13 shows an example where the output S parameters are plotted when “Plot S param” is selected. Note that when frequency-dependent materials are used in S-parameter simulation, the CPU time will be directly proportional to the number of frequency points. If every frequency point takes 1 second to run, 900 points will take 15 minutes.

Target .s2p or .s4p file A reference .s2p or .s4p file can be imported (Figure 2) for direct comparison. This feature is most convenient when the user tries to manually optimize the material property to match the measurement ( - see the section of “PCB extraction and modeling methodology”).

X2D2-UG 8

PCB extraction and modeling methodology X2D2 can be used in conjunction with ISD (In-Situ De-embedding) to extract causal DK, DF and surface roughness models. As shown in Figure 14, the user can

1. measure two traces of different length (L1 & L2),

2. use ISD to extract trace-only data (for length L2-L1),

3. extract causal DK, DF and surface roughness models by running multiple X2D2 to fit (differential) insertion loss in both magnitude and phase.

An example is shown in Figure 15 where two traces (of 6” and 12”) are measured. After using ISD to de-embed SMA and lead-in traces (Figure 16), the user can run X2D2 with several different models and find the optimized model (Figure 17) that gives the best match to differential insertion loss in both magnitude and phase. To examine causality, the user can run “TDR & TDT” in ADK (Advanced SI Design Kits). As shown in Figure 18, the optimized model with both wideband dielectric model and surface roughness included gives very good causal response. Model A (with constant dielectric and no roughness) appears to give good causal response simply because of low dielectric loss (DF=0.004). On the other hand, Model A does not follow measurement in insertion loss (Figure 17). To show that high constant dielectric loss gives more non-causal response, Model D (with DF=0.014) is added to Figure 18. One of X2D2’s advantages is that it can predict the effect of surface roughness not just on IL, but on all IL, RL, NEXT and FEXT. Figure 19 shows the difference in IL, RL, NEXT and FEXT between Model A and Model B, where Model A has no surface roughness and Model B has 1 m of roughness.

X2D2-UG 9

Figure 2

X2D2-UG 10

Figure 3

Figure 4

X2D2-UG 11

Figure 5

Figure 6

X2D2-UG 12

Figure 7

Figure 8

Figure 9

X2D2-UG 13

Characteristic Impedance Matrix [ZC] (Ohm) 4.374401e+01 1.160174e+00 1.160174e+00 4.374401e+01 Attenuation Matrix [ALPHA] (neper/m) 5.833642e+00 1.842603e-02 1.842603e-02 5.833642e+00 Delay Matrix [BETA/w] (sec/m) 6.424585e-09 -9.049048e-13 -9.049048e-13 6.424585e-09 Effective DK 3.709638e+00 7.359481e-08 7.359481e-08 3.709638e+00 [L] Matrix (H/m) 2.810258e-07 7.413405e-09 7.413405e-09 2.810258e-07 [C] Matrix (F/m) 1.469761e-10 -3.918637e-12 -3.918637e-12 1.469761e-10 [R] Matrix (Ohm/m) 2.998104e+02 1.023625e+01 1.023625e+01 2.998104e+02 [G] Matrix (Mho/m) 1.101566e-01 -3.273971e-03 -3.273971e-03 1.101566e-01 Voltage Coupling Matrix - Saturated voltage in other line (row) due to 1V excitation 1.000000e+00 1.326105e-02 1.326105e-02 1.000000e+00 ================================================================== Order of Diff Pairs is (1,2), (3,4), ... Differential-Mode Characteristic Impedance Matrix [Zdiff] (Ohm) 8.516768e+01 Differential-Mode Attenuation Matrix [ALPHA] (neper/m) 5.815216e+00 Differential-Mode Delay Matrix [BETA/w] (sec/m) 6.425490e-09 Differential-Mode Effective DK 3.710683e+00 Differential-Mode [L] Matrix (H/m)

X2D2-UG 14

5.472248e-07 Differential-Mode [C] Matrix (F/m) 7.544737e-11 Differential-Mode [R] Matrix (Ohm/m) 5.791482e+02 Differential-Mode [G] Matrix (Mho/m) 5.671529e-02 ================================================================== Common-Mode Characteristic Impedance Matrix [Zcommon] (Ohm) 2.245209e+01 Common-Mode Attenuation Matrix [ALPHA] (neper/m) 5.852068e+00 Common-Mode Delay Matrix [BETA/w] (sec/m) 6.423680e-09 Common-Mode Effective DK 3.708593e+00 Common-Mode [L] Matrix (H/m) 1.442196e-07 Common-Mode [C] Matrix (F/m) 2.861149e-10 Common-Mode [R] Matrix (Ohm/m) 1.550233e+02 Common-Mode [G] Matrix (Mho/m) 2.137653e-01

Figure 10

X2D2-UG 15

* No. of lines 2 * Lo 2.810258e-07 7.413405e-09 2.810258e-07 * Co 1.469761e-10 -3.918637e-12 1.469761e-10 * Ro 8.579450e+00 9.558008e-02 8.579450e+00 * Go 0.000000e+00 0.000000e+00 0.000000e+00 * Rs 2.912309e-03 1.014067e-04 2.912309e-03 * Gd 1.101566e-11 -3.273971e-13 1.101566e-11

Figure 11

$ W1 i1 i2 0 o1 o2 0 N=2 L=0.0254 $ + TABLEMODEL=ataitec .MODEL ataitec W MODELTYPE=TABLE N=2 LMODEL=lmod1 + CMODEL=cmod1 RMODEL=rmod1 GMODEL=gmod1 .MODEL lmod1 sp N=2 SPACING=NONUNIFORM VALTYPE=REAL + INFINITY=( 2.847341e-07 7.545439e-09 2.847341e-07) + DATA=(201, + (0.000000e+00 3.316515e-07 8.497396e-09 3.316515e-07) + (1.000000e+08 3.061610e-07 8.021501e-09 3.061610e-07) + (2.000000e+08 3.005031e-07 7.914645e-09 3.005031e-07) + (3.000000e+08 2.976859e-07 7.859720e-09 2.976859e-07) + (4.000000e+08 2.959199e-07 7.824214e-09 2.959199e-07) + (5.000000e+08 2.946789e-07 7.798568e-09 2.946789e-07) + (6.000000e+08 2.937444e-07 7.778782e-09 2.937444e-07) + (7.000000e+08 2.930074e-07 7.762832e-09 2.930074e-07) + (8.000000e+08 2.924064e-07 7.749570e-09 2.924064e-07) : + (1.980000e+10 2.847459e-07 7.545821e-09 2.847459e-07) + (1.990000e+10 2.847400e-07 7.545629e-09 2.847400e-07) + (2.000000e+10 2.847341e-07 7.545439e-09 2.847341e-07)

X2D2-UG 16

+ ) .MODEL cmod1 sp N=2 SPACING=NONUNIFORM VALTYPE=REAL + INFINITY=( 1.469761e-10 -3.918637e-12 1.469761e-10) + DATA=(201, + (0.000000e+00 1.469761e-10 -3.918638e-12 1.469761e-10) + (1.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + (2.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + (3.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + (4.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + (5.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + (6.000000e+08 1.469761e-10 -3.918637e-12 1.469761e-10) + : + (1.980000e+10 1.469761e-10 -3.918637e-12 1.469761e-10) + (1.990000e+10 1.469761e-10 -3.918637e-12 1.469761e-10) + (2.000000e+10 1.469761e-10 -3.918637e-12 1.469761e-10) + ) .MODEL rmod1 sp N=2 SPACING=NONUNIFORM VALTYPE=REAL + INFINITY=( 4.661571e+02 1.659364e+01 4.661571e+02) + DATA=(201, + (0.000000e+00 8.579450e+00 9.558008e-02 8.579450e+00) + (1.000000e+08 1.955670e+01 4.240087e-01 1.955670e+01) + (2.000000e+08 2.718369e+01 6.600428e-01 2.718369e+01) + (3.000000e+08 3.359452e+01 8.656944e-01 3.359452e+01) + (4.000000e+08 3.930566e+01 1.053339e+00 3.930566e+01) + (5.000000e+08 4.454489e+01 1.228436e+00 4.454489e+01) + (6.000000e+08 4.943702e+01 1.394027e+00 4.943702e+01) : + (1.980000e+10 4.629654e+02 1.647534e+01 4.629654e+02) + (1.990000e+10 4.645625e+02 1.653453e+01 4.645625e+02) + (2.000000e+10 4.661571e+02 1.659364e+01 4.661571e+02) + ) .MODEL gmod1 sp N=2 SPACING=NONUNIFORM VALTYPE=REAL + INFINITY=( 2.203132e-01 -6.547943e-03 2.203132e-01) + DATA=(201, + (0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00) + (1.000000e+08 1.101566e-03 -3.273971e-05 1.101566e-03) + (2.000000e+08 2.203132e-03 -6.547943e-05 2.203132e-03) + (3.000000e+08 3.304698e-03 -9.821914e-05 3.304698e-03) + (4.000000e+08 4.406264e-03 -1.309589e-04 4.406264e-03) + (5.000000e+08 5.507830e-03 -1.636986e-04 5.507830e-03) + (6.000000e+08 6.609396e-03 -1.964383e-04 6.609396e-03) : + (1.980000e+10 2.181101e-01 -6.482463e-03 2.181101e-01) + (1.990000e+10 2.192116e-01 -6.515203e-03 2.192116e-01) + (2.000000e+10 2.203132e-01 -6.547943e-03 2.203132e-01) + )

Figure 12

X2D2-UG 17

Figure 13

Figure 14

X2D2-UG 18

Figure 15

Figure 16

X2D2-UG 19

Figure 17

Figure 18

X2D2-UG 20

Figure 19

X2D2-UG 21

Appendix

ADK and ISD Installation (for all Windows) 1. Download and install “Matlab Compiler Runtime 8.0” by running

http://ataitec.com/download/MCR_R2012b_win32_installer.exe

or

https://www.dropbox.com/s/a2s4jlk6g9seaqn/MCR_R2012b_win32_installer.exe?dl=0

Make sure that the file size is 351,078 KB. You will get MCR error later if the download file is incomplete.

(You can skip this step if you have installed the Matlab Compiler Runtime 8.0 before.)

2. Download and extract the ADK and ISD .zip file from

http://ataitec.com/download/ADK_ISD.zip

The user guides and examples are in the .zip file. Install ADK and ISD by executing

AtaiTec_SI_Suites_2016.03.msi 3. Install ADK (and ISD) licenses:

Click “All Programs->Accessories->Command Prompt”; Enter “ipconfig /all”; Copy down Physical Address and send it to AtaiTec; Obtain XXX.lic (a license file in .lic extension) from AtaiTec. If you have a floating license, change the hostname in XXX.lic from “localhost” to the server’s hostname. (If you have a node-locked license, there is no hostname to change.) By default, the port number is set to 5053. Change this port number if necessary. For more details, please see: http://www.reprisesoftware.com/RLM_Enduser.html Save XXX.lic under the directory where ADK and ISD were installed (such as C:\Program Files \AtaiTec\License or C:\Program Files (x86) \AtaiTec\License).

4. Run ADK (or ISD)

X2D2-UG 22

If you have a node-locked ADK (or ISD) license, simply double-click the ADK (or ISD) icon to run. If you encounter MCR error, check the following: • Was the Matlab Compiler Runtime downloaded completely and installed correctly?

• Enter “path” under Command Prompt. Add the following path to Matlab Compiler

Runtime if it does not appear:

C:\Program Files (x86)\MATLAB\MATLAB Compiler Runtime\v80\runtime\win32

• Reboot the computer. If you have a floating license, make sure you complete Steps 1 to 3 on BOTH server and client computers first. Click “All Programs->AtaiTec SI Suites->License Server” in the server computer. Then, double-click the ADK (or ISD) icon in the client computer to run. Note: (a) The server’s and client’s Command windows contain the license and program status. (b) Closing either server’s or client’s Command window will result in the termination of running ADK or ISD. (c) You don’t need to click “All Programs->AtaiTec SI Suites->License Server” in the client computer. Figure 20 shows an example of floating license where “localhost” is to be renamed to the server’s hostname, “5053” is the default port number which can also be modified, “2012.06” is the maintenance expiration date (or the highest ADK version number for which this license will run), “31-dec-2012” is the license expiration date, and the number “1” before “issued” indicates the number of licenses available.

HOST localhost 0013e86eceed 5053 ISV ataitec LICENSE ataitec adk2 2012.06 31-dec-2012 1 issued=30-jun-2011 _ck=40d6d2f02a sig="c2S25g2K4gm29XCXm+EstFkqEFi+pQ8+BN8mqvbHg581x*0 M4kNg3Ay5YUBfJV8" LICENSE ataitec isd2 2012.06 permanent 1 issued=30-jun-2011 _ck=6b36cac159 sig="c2W25g2x67Asneus~KVnno5Wrk~bQ9joQg8n0aJ0PghedTs JW6PU=xmHKZoPNwsq"

Figure 20

5. To install an updated ADK and ISD release (if you have previously installed ADK and ISD):

X2D2-UG 23

Remove the existing ADK and ISD through Control Panel->Add or Remove Programs->AtaiTec SI Suites->Remove, then go to Step 2. (You do not need to remove the “Matlab Compiler Runtime Library”.)

X2D2-UG 24

ADK and ISD Server for Linux on Intel 64bit The ADK and ISD executables do not run on Linux. However, if you have a floating license, you can start the license server from an Intel 64bit computer with Linux OS, check out the license from that server, and run ADK or ISD from Windows-based computers. To install the license server on an Intel 64bit computer with Linux OS (not Solaris or HPUX): 1. Download the ADK and ISD license server from

http://ataitec.com/download/AtaiTec_on_Linux.tar

Extract the downloaded .tar file by entering tar –xvf AtaiTec_on_Linux.tar There are several files in the directory: ataitec.set rlm rlmutil testlic

2. Save the license file XXX.lic in the same directory. (Modify XXX.lic for the correct hostname and port number if necessary. Please see the previous pages and http://www.reprisesoftware.com/RLM_Enduser.html for more details.)

3. Start the license server (and keep it running) by entering rlm & You can test the license by entering testlic 4. Follow the steps in “ADK and ISD Installation” to install ADK and ISD on Windows-based

computers, copy the license file XXX.lic to the license directory (…/License), and click ADK or ISD icon to run.