HEP1_CMOS

Embed Size (px)

Citation preview

  • 7/28/2019 HEP1_CMOS

    1/17

    1

    CMOS Design

    Lab Manual

    Developed By

    University Program TeamCoreEl Technologies (I) Pvt. Ltd.

  • 7/28/2019 HEP1_CMOS

    2/17

    2

    Objective

    Objective of this lab is to learn the Mentor Graphics HEP2 tools as well learn the flow of the Full

    Custom IC design cycle. You will finish the lab by running DRC, LVS and Parasitic Extraction on

    the various designs. In the process you will create various components like inverter, NAND

    gate, XOR gate, Full adder, Latch, SRAM register cell and PLL, differential amplifier.

    You will start the lab by creating a schematic and will attach the technology library called

    TSMC018. Adding a technology library will ensure that you can do front to back design.

    You will create a new cell called Inverter with schematic view and hence build the inverter

    schematic by instantiating various components. Once inverter schematic is done, symbol forInverter is generated. Now you will create a new cell view called Inverter_sim, where you

    will instantiate Inverter symbol. This circuit is verified by doing various simulations using

    ELDO. In the process, you will learn to use EZviewer, waveform window options, waveform

    calculator, etc...

    You will learn the Pyxis Layout Editor basics by concentrating on designing an Inverter

    through automatic layout generation. Then you will go ahead with completing the other layouts,generating GDSII file. After that, by taking GDSII file as reference you will run DRC, LVS checks

    on the layout, Extract parasitic and back-annotate them to the simulation environment.

  • 7/28/2019 HEP1_CMOS

    3/17

    3

    1. To open the Mentor Server from client machine, one should open the Xmanager toolfrom Windows Desktop.

    2. This opens the terminal as below and follow the steps shown in the below screen shot.

    3. Run the commands displayed in the above picture and run da_ic & to open PyxisSchematic tool for design entry.

    Open

    Server IP

  • 7/28/2019 HEP1_CMOS

    4/17

    4

    4. In order to create new schematic select new Schematic and specify the name for thedesign in file name tab

    Click OK. It opens a new schematic page.

    File name

  • 7/28/2019 HEP1_CMOS

    5/17

    5

    5. Select Library Device Lib then add Pmos Transistor (4-pin) and Nmos Transistor (4-

    pin) on to the schematic area.

    6. After adding the transistors create the connections as per the screen shot and also add

    the ports.

    7. Click on the worksheet and select the following options from the palette Library Device Library

    8. Add a 4-pin PMOS and NMOS from the device lib.9. Connect the PMOS and NMOS as shown in the figure below to connect from one

    node to another node select w to select wire.

    10. Click on back tab on device lib palette. Select generic lib and add a input portand output port by selecting the portin and portout tabs.11. Select the input NET, and right click the mouse button and select Name

    Nets:.Change the net names.12. Change the properties of transistors by selecting the transistor and pressing

    Q.or right click and select edit properties, Change the ASIM_Model from NCH toN for NMOS & PCH to P for PMOS

  • 7/28/2019 HEP1_CMOS

    6/17

    6

    13. Change the W & L values of the Transistors toFor PMOS : L = 2u; W=10uFor NMOS : L = 2u; W =5u

    14. After editing the schematic check for errors by selecting check & save option.

    15. Go to Add Generate Symbol

    16. Select Replace existing & activate symbol options

    17. Click Ok. Symbol gets generated for you. Change the shape of symbol if

    required. Save the symbol.

    Test Bench Creation1. Close all schematics & symbols.2. Create a new schematic inv_sim by selecting new schematic from session.3. Add symbol of the schematic made.

    Add Instance Choose Symbol.4. Add a Pulse Source at the input to inverter and a DC Voltage source VDD port.

    And do the necessary connections as per the figure given below.** (from sources library we can pick various sources)

    5. Right click on the Pulse Generator Source and select Edit Properties.

    6. Change the values of the below mentioned parameters and apply the changes.Once you change the values that have to be reflected once you click on OK tab.Initial = 0V Pulse = 5V Delay = 1nS Rise = 1nSFall = 1nS Width = 25nS Period = 50ns.

    7. Also change the magnitude of the Voltage Source from 1V to 5V by following thebelow step.

    8. Right Click on the Voltage source adjacent to VDD and then Edit properties

    Add wire

    Add Ports

    Check & Save

  • 7/28/2019 HEP1_CMOS

    7/17

    7

    9. Now from the menu bar click on check and save button. This will report if any errorspresent.

    10. Now click on back tab and then select Simulation from the palette to run thesimulation and select ok.

    11. Select a New configuration (Give a new name for simulation).12. Now select the Session tab _simulator/viewer from Setup on the palette and ensure

    That the following options are set.Simulator Eldo and Viewer EZwave and then Ok.

    13. Select Lib/Temp/In include filesprovide the following path by selecting thebrowsebutton. $ADK/technology/ic/models/ami05.mod.

    14. Select Analysesand enable DC and Transient.

    15. Drop down the Analysis setup and select DC setup give the parameters as

    Select option Source

    Select the voltage source as V1

    Start: 0 stop: 5 Step 0.1

  • 7/28/2019 HEP1_CMOS

    8/17

    8

    16. Select Transient Setup and change the stop time to 1000N.

    17. Select the input path A and then hold CTRL key and then output path Y and clickon Probes from the palette. Select DC in Analysis tab, Plot from Task tabSelect add. Similarly select TRAN from Analysis tab and select add and close thewindow

  • 7/28/2019 HEP1_CMOS

    9/17

    9

    18. Now click on Run Eldo tab from the palette where it opens 2 windows showingvarious steps running in command line. Once it finishes it will invoke the EZWavewaveform viewer. If it is not invoked Click on the View Waves Tab from the paletteto invoke the EZWave Waveform Viewer.

    19. Now the EZWave displays the input and output signals.

    20. Here if you go and explore the folders and search for spi file in the simulation folderinside test bench folder. It will be something like the below path/home/student/inv/inverter_sim/simulation_name/inverter.spiThis .spi file will be used at post layout simulation

    Inverter Layout Generation1. Before Layout generation, change the ASIM_Model of PMOS from P to PMOS

    and NMOS

    2. from N to NMOS in inverter schematic.3. Invoke the IC station tool by typing the following command_ ic & on commandprompt

    4. Now choose the create option from the palette.5. Select Component.6. Component to the path of inverter schematic Cell name_ name of inverter

    schematic

  • 7/28/2019 HEP1_CMOS

    10/17

    10

    7. Process$ADK/technology/ic/process/ami058. Rules$ADK/technology/ic/process/ami05.rules

    9. MGC setup select left right tiling10. Set Grid to 0.5. (select the layout window)

    Setup Pyxis Assemble, and set the parameters as shown below11. Setup SDL

    In Component Subtype change model to asim _modelChoose SDL portstyles.Prompt user

    Click setup and select layer 49 (METAL 1 as default layer)

  • 7/28/2019 HEP1_CMOS

    11/17

    11

    12. Go to PlaceInst in Palate Area.13. This will place transistor in Layout view.14. Similarly do for NMOS transistor and ports.

    15. Select POLY for Layer Palate and connect the two gates of Transistors.Easy Edit Shape

  • 7/28/2019 HEP1_CMOS

    12/17

    12

    16. Similarly connect the Drain of PMOS and Drain of NMOS with Metal-1.17. Extend the Metal-1 layer that connects drains with IRoute option

    ToolsIRoute IRoute the after extending a layer of metal from M-1 layer thatconnects drains & press Space barwhich adds a via on which the port has to beplaced.

    18. Draw a square of 6X6 at POLY layer connecting two gates. At 1.5 distance fromsides of square

    19. Draw a square with CONTACT TO PLOY as an inner square with 2Lx2L toPOLY.

    20. Now connect input pin to Via drawn with Metal 1 layer using IRoute method.

    21. Connect VDD to Source of PMOS and VSS to Source of NMOS using M1 layer.Easy Edit shape (M1 from Layer palate).

    22. Draw M1 layer above PMOS & below NMOS to keep NWELL and PSUBcontacts.

    23. Rightclick on the layout area Add Layout

  • 7/28/2019 HEP1_CMOS

    13/17

    13

    Go to $ADK/technology/ic/process/ami05_viaAdd Pwell_contact at M1 layer below NMOS and also add on the top of PMOStransistor, now to change this Pwell to Nwell select the well contact and press Qand browse the location to $ADK/technology/ic/process/ami05_via and selectNwell_contact.

    DRC CheckingDRC check using Calibre:

    1. First we have to generate GDSII file:File Export GDSII

    2. Give the path where it has to be saved.

    Go Options.Check Replace Existing GDSII File & Add Text on Ports.

  • 7/28/2019 HEP1_CMOS

    14/17

    14

    3. ToolsCalibre Run DRC4. Give details as

    Rules: $ADK/technology/ic/process/ami05.rulesInputs: To the gds fileUnCheck Export from layout Viewer

    Run DRC:It will report with no results when the design is error free.

    Layout versus Schematic:1. Tools Calibre Run LVS

    Give details asRules: $ADK/technology/ic/process/ami05.calibre.rulesInputs: layout Browse for GDS fileInputs netlist Browse for inverter.spi (in your simulation directory of testbench);Format:SPICE

    UnCheck Export from layout Viewer & Export from schematic Viewer Format:SPICERun LVS

  • 7/28/2019 HEP1_CMOS

    15/17

    15

    Parasitic ExtractionTools Calibre Run PEXGive details asRules: $ADK/technology/ic/process/ami05.calibre.rulesDRC Run Directory: your directory

    Inputs:_ layout _GDSII file ;Format : GDSIIInputs _ netlist _ inverter.spi in your simulation directory; Format: SPICEUnCheck Export from layout Viewer & Export from schematic ViewerOutputs: Netlist _Format= DSPFUsed Names for _SchematicSelect only R+C instead of R+C+CRun LVSIt will generate a Pex Netlist file has to be used in post layout simulation

  • 7/28/2019 HEP1_CMOS

    16/17

    16

    POST LAYOUT SIMULATIONOpen your Test Bench: by running da_ic & command in terminal window.Descend into your schematic and change the Asim_model of PMOS to P and NMOS to

    NCheck and Save.Simulate your Test Bench.In Simulation Window on top palette,ToolsParasiticsAdd DSPFGo to the directory to find inverter.pex (inverter.pex.netlsit)Select RC, DSPF and click OKNow Simulate with Eldo.You can Add & Remove DSPF in Parasitic which show results with & without Parasitic.

  • 7/28/2019 HEP1_CMOS

    17/17

    17

    This ends the full custom IC design flow for an Inverter using HEP1 Design tools from Mentor

    Graphics.