You are on page 1of 5

Technology File The technology file contains process specific parameters such as layer thicknesses and the sheet

resistance of the various layers. There are two sample technology files included for reference. These technology files describe a generic CMOS and BiCMOS process. Using the comments in these files you should be able to set up your own technology file pretty quickly. Let's use the generic CMOS process as an example. Below is the technology file for such a CMOS process. The cross-section of the various substrate layers in shown in the figure below. The technology is divided into sub-sections. The first sub-section begins with the <chip> statement. The first two lines in the chip section define the chip x and y dimensions. For best results set the area to contain about four times the area of the layout. For instance, if you are simulating a spiral inductor of dimention 200x200, then use a 400x400 chip size. The next two parameters are the 2D FFT sizes. There is a relation between the chip size and the FFT size that determines simulation accuracy. The smallest panel of charge is a rectangle of dimension chipx/fftx by chipy/ffty. As a guideline, pick the FFT size so that at least one panel of charge can fit between all the metal structures residing in the layout. For instance, for a square spiral with spacing of 2 microns, aim for chip/FFT less than or equal to 2 microns. Generally, the larger the FFT size, the more memory required by the simulator. Thus the smallest FFT size that gives sufficient accuracy is optimal. The minimum recommended FFT size is 128x128. The TechFile is the name of the technology file that you choose. The TechPath is where binary data files will be stored. These files can be large (depending on the FFT size) and thus a local fast access point is optimal. Avoid putting these files on a slow NFS mounted directory. If you use the /tmp directory, keep in mind that you may want to keep these files across sessions since for a given fixed technology file, the binary data files only need to be generated once.

<chip> chipx = 512 ; dimensions of the chip in x direction in microns chipy = 512 ; dimensions of the chip in y direction fftx = 256 ; x-fft size (must be a power of 2) ffty = 256 ; y-fft size TechFile = sample.tek ; the name of this file TechPath = /home/niknejad/tekf ; the pathname of the data files freq = .1 eddy = 0 ; Layer 0 defined below is conductive eddy = 1 ; Layer 1 defined below is also conductive ; Layer 2 is not conductive (oxide) <layer> 0 ; Bulk Substrate ; Resistivity: ohm-cm ; Thickness: microns ; Permitivity: relative

rho = .1 t = 400 eps = 11.9 <layer> 1 ; Epi Layer

rho = 15 t = 1 eps = 11.9 <layer> 2 ; Oxide Layer

; ohm-cm ; microns ; relative

rho = 1e10 t = 50 eps = 4

; ohm-cm ; microns ; relative

<metal>

; Substrate Contact Layer ; ; ; ; ; ; Epi Layer Sheet Resistance Milli-Ohms/Square Metal Thickness (microns) Distance from bottom of layer (microns) name used in ASITIC color in ASITIC

layer = 1 rsh = 30 t = 0.1 d = .5 name = msub color = yellow <via> 0

; metal 1 to substrate top = 1 bottom = 0 r = 5 width = .4 space = 1.3 overplot1 = .3 overplot2 = .3 name = via0 color = purple ; ; ; ; ; ; ; ; ; via connects up to this metal layer via connects down to this metal layer resistance per via width of via minimum spacing between vias minimum dist to substrate metal minimum dist to metal 1 name in ASITIC color in ASITIC

<metal> 1

; metal layer 1

layer = 2 rsh = 50 t = 1 d = 1.62 name = m1 color = red <via> 1 ; metal 1 to metal 2 top = 2 bottom = 1 r = 4 width = .5 space = 1.5 overplot1 = .4 overplot2 = .4 name = via1 color = white <metal> 2 ; metal 2

; to substrate metal ; to metal 1

layer = 2 rsh = 32 t = 1.3 d = 2.74 name = m2 color = blue

Next, the <layer> statements define the various dielectric and substrate layers. A conducting substrate layer is specified by stating its resistivity in ohm-cm. A dielectric layer can be modeled

as an equivalent resistivity according to the dielectric loss tangent. The thickness is specified in microns. The relative permitivity is unitless. Notice that the substrate layers are defined from bottom up. In other words, the order is important. Thus the bulk layer is listed first, followed by the epi, and finally followed by the oxide layer. Note also that the air and ground layers do not need to be explicitly defined as they are implicitly in the boundary conditions. See the section boundary conditions for more details. The conducting metal layers are defined in the <metal> sections. Each metal layer belongs to a specific layer specified with the layer identification. Most metal layers will be defined in nonconducting oxide layers. This is true for the last two metal layers in the technology file above, but notice the first metal layer, named MSUB, actually resides in the epi layer. This is because this metal layer is used to ground the substrate (a substrate tap). This can be an important effect to model in simulation as it will affect the substrate current, isolation, and loss (see the section on boundary conditions ). The sheet resistance of the metal layers is specified in milli-Ohms/Square along with the metal thickness. The z-coordinate of the bottom of the metal layer is specified with d = xx where d is the distance in microns from the bottom of the substrate layer to the bottom of the metal layer. The name that you give the metal layer will be recognized in ASITIC so use an easy to remember alias such as M1. The color you specify will also be used in ASITIC to distinguish the metal layers. Notice that the order is important here as well. The metal layers are listed from bottom up and this is how they will be drawn in ASITIC. You can also define optional vias to make connections from metal layer to metal layer. Note that vias are totally optional and usually play a minor role in determining the characteristics of a device. On the other hand, one can create multi-layer devices, or symmetric center-tapped inductors, with many via connections in series with the device. In these situations the inclusion of vias is necessary. Via layers are added in the <via> sections. The top and bottom sections define the metal connectivity of the via. Note that the numbers correspond to the numbers used in the <metal> sections. The resistance per via is specified by r = xx. Note that while a single via may have a relatively large resistance, many such vias are usually employed in parallel to lower the contact resistance. Thus it is essential for ASITIC to know the via dimensions and minimum spacings. These numbers come from the design rules of the process. The overplot distances are the minimum distances between the edge of the via and the metal edges (bottom metal and top metal). To enable the eddy current engine, enable the eddy environmental variable and define two ajdacent conductive layers in the substrate. In the above example, layers "0" and "1" are both conductive, so they have been listed in the chip section. Boundary Conditions There are two relavent boundary condtions in ASITIC. While solving for the inductance matrix, the partial inductance matrix is computed assuming that each segment resides in an unbounded lossless medium. Thus, any induced eddy currents in conducting structures must be included explicitly in the computation. The eddy flag turns on the eddy-current calculation engine which includes substrate eddy currents. Eddy currents in the metalization is computed approximately by discretizing the thickness and width of each conductor.

In the capacitance matrix computation, ASITIC assumes that the back-plane of the lowest substrate layer is a perfect ground at zero potential. The top layer is assumed to interface with air. The side-walls boundary condition is that there is no field component penetrating the walls. These boundary conditions give reasonably good results without requiring a very large 'box' (chip size). For instance, many EM simulators assume a short on the side walls as well. This forces one to use a very large box to place the box walls sufficiently far from the device such that the boundary conditions do not affect the near field (although the far field radition will be very dependent on these boundary conditions, the device is much smaller than the wavelength and radiative effects are ignored). The assumption that the back of the chip is connected to a good ground may not be strictly true. For instance, the chip might be glued with a non-conductive material to the package. Furthermore, many inexpensive packages do not have an opening to allow an ohmic contact to be made with the lead frame, and thus the chip is floating. In these cases, you can simulate this effect by adding another substrate layer below your bulk substrate to model the interface. You can give it very low conductivity (rho=1e10) and very low permitivity (to prevent substantial displacement current from grounding the substrate). Also, to get meaningful simulations results, you need to add a third port to your device, where you define your ground connection. This is done through the substrate contact layer in the technology file or using a ground shield. Binary FFT Data Files Internally, ASITIC translates your technology file into a form suitable for efficient numerical computation. This data is stored in a series of binary data files (for each frequency point). This computation only needs to be performed once for a fixed technology file. ASITIC automatically detects when the technology file and the binary data file go out of synchronization and will regenerate the binary files as needed. The memory requirements place a limit on the FFT size you choose in the technology file. Generally, it is advisable that the FFT data fit into memory to avoid lengthy swaps. For Nmetal layers and an FFTsizexxFFTsizey size FFTs, each frequency point requires (Nmetal+1)xNmetal x FFTsizex x FFTsizey x sizeof(double) bytes of memory. For instance, a process with 3 metal layers and a 128x128 size FFT and a machine with sizeof(double)=8 requires 786 kbytes per frequency point. On the other hand, the same process with a 512x512 FFT sizes requires 12 Mbytes of memory. For a workstation with 128 Mbytes of RAM these numbers are very reasonable.

You might also like