Integrated Inductor Design using ADS Momentum: Difference between revisions

From VLSI
Jump to navigation Jump to search
Line 8: Line 8:
**If you are using a Cadence Process Design Kit (PDK) this setting is likely to be set by default.
**If you are using a Cadence Process Design Kit (PDK) this setting is likely to be set by default.
*Create the inductor layout making sure that it is DRC clean
*Create the inductor layout making sure that it is DRC clean
**If you instance a parameterized cell (p-cell) inductor, then you should flatten the layout by selecting '''Edit -> Hierarchy -> Flatten''' and then delete everything but the ''drawing'' layers from the design.
**If you instance a parameterized cell (p-cell) inductor, then you should flatten the layout by selecting <code>Edit->Hierarchy->Flatten</code> and then delete everything but the ''drawing'' layers from the design.


==Exporting Layout to ADS==
==Exporting Layout to ADS==

Revision as of 00:57, 20 March 2010

A common passive component in RFIC design is the integrated inductor and designers are commonly interested in the total inductance as well as the quality factor, or Q. In this tutorial you will learn how to take the layout of an inductor that was generated using Cadence and import it into ADS Momentum where you can find the inductance and Q values for that particular layout. This tutorial can also be adapted to designing integrated transformers where one is also interested in the coupling factor, k.

It is assumed that the reader is familiar with the basic operation of Cadence and the basic operation of ADS.

Inductor Layout

  • Begin by starting Cadence and creating a new layout cell view for the inductor. It is important that each inductor be given its own cell view because we will later be generating a time-domain model for using in future Cadence simulations and this model will be specific to a particular layout.
  • Once you have created the new layout view, click on Options->Display and change the X Snap Spacing and the Y Snap Spacing to the minimum spacing required by your fabrication process.
    • If you are using a Cadence Process Design Kit (PDK) this setting is likely to be set by default.
  • Create the inductor layout making sure that it is DRC clean
    • If you instance a parameterized cell (p-cell) inductor, then you should flatten the layout by selecting Edit->Hierarchy->Flatten and then delete everything but the drawing layers from the design.

Exporting Layout to ADS

We will now export the inductor layout to a *.gds file in preparation for simulation and modeling of the inductor in ADS Momentum.

  • In the Cadence CIW window click File -> Export -> Stream this brings up the Stream Out window.
    • Enter the name of the exported gds file. The file should have an extension '.gds' in the Stream File field.
    • Enter the technology library name in Technology Library
    • Enter the name of the Library where the indcutor cell view is located in the Library field
    • In Toplevel Cell(s) enter the name of the cell view containing the inductor layout
    • In the View field enter the view name of the inductor layout (e.g., layout)
  • Select Options and then the Layers tab
    • Click on Load File and load the layer mapping file (if you have one). This file maps the cadence layers to gds layers and will have an extension of *.map and may be called something like cds2gds.map. If you are using a PDK this file will often be included in the PDK files. You can also use Automatic Mapping if no mapping file exists.
    • Click OK
  • In the Stream Out window click Translate

ADS S-Parameter Simulation

We will now use ADS to first perform S-parameter simulations to extract certain performance metrics such as inductance (L), quality factor (Q), and self-resonant frequency (f_sr). This process will be broken up into several steps and it is assumed that the reader has some basic familiarity with ADS.

Importing the Layout into ADS

  • Begin by starting ADS and creating a new project. Alternatively, you can open an existing project.
  • Create a new layout window by clicking Window -> New Layout
  • You will now import the *.gds file that you created from your Cadence layout. In the ADS layout window click File -> Import
    • In the File Type select GDSII Stream Format
    • Enter the name and location of your *.gds file in the Import file name (source) field
    • In the Layers file name enter the name of the ADS layers file (if one exists). If you are using a PDK it is likely that such a file (with file extension *.lay) exists in the PDK files. If one does not exist, you can create one by hand or simply leave the field blank.
    • Click OK
  • Once you have imported your *.gds file into ADS you should see your inductor layout in the ADS layout window. Save your work, and remember that you must save the layout in the current project directory as this is where ADS will look for it.
  • We must make sure that the ADS grid spacing matches the grid spacing used in Cadence to create the layout. In the layout window click Options -> Preferences -> Grid/Snap
  • Change the Snap Grid Distance (in layout units) to match the X Snap Spacing and Y Snap Spacing that was used in Cadence
    • You can leave the Snap Grid Per Minor Display Grid and the Snap Grid Per Major Display Grid at the default values
  • It is a good ideal to merge all of the metal layers as this will help to speed up the simulation time
    • This is done by selecting everything on one layer and clicking Edit -> Merge -> Union
    • Repeat this step for each layer
  • Next you must insert ports. Click Insert -> Ports
  • Place a port at each terminal of the inductor ensuring that the layer on which the port is inserted matches the metal layer on the inductor that the port is being connected to
    • IMPORTANT: If the ports are on the same side of the inductor (see the figure below) the ports must be at exactly the same y-dimension for accurate simulation results.
    • Snapping options exist for ease of placement

Configure Simulation Settings

  • In order for the simulation to be accurate an accurate substrate definition file must be used. There may be a future tutorial on how to create this file manually, but for right now it is assumed that you already have such a file (for example from the PDK). Load the substrate file by clicking Momentum -> Substrate -> Open
  • You now must set up the Mesh. Again in the layout window click Momentum -> Mesh -> Setup
    • Set the Mesh Frequency to a frequency higher than the maximum frequency of interest. For example if you wanted to model and inductor from 1 GHz to 10 GHz you might set the Mesh Frequency to 15 GHz
    • Set the Mesh Density to 30 cells/wavelength. The larger this number the more accurate the simulation but the longer the overall simulation time.
    • Leave the Arc Resolution (max 45 deg) at the default value of 45
    • Unselect Edge Mesh
    • Select Horizontal side currents (thick conductors)
    • Click OK
  • You must now setup the S-parameter simulation
  • Click Momentum -> Simulation -> S-parameters
  • Fill in the Start and Stop frequencies and use the default values for everything else
  • Click Simulate

Note: that the first time you run the simulation it will take quite a long time because ADS must generate the Green's functions. Subsequent simulations, however, will be much shorter because ADS will save the Green's functions and simply reload them. The exception is if the simulation frequency range is increased. In this case ADS must recalculate the Green's functions and hence the simulation will again take a long time.

Viewing Results and Generating a Time-Domain Model