vlsi lab tutorials tannereda

Upload: rajesh-nelavala

Post on 07-Jul-2018

267 views

Category:

Documents


6 download

TRANSCRIPT

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    1/45

     

    P a g e  

    Experiments 5 to 8 should be worked on Tanner. The basic working on all the tools of tanner is

    explained with simple Inverter Design.

    The following is the path for opening S-Edit tool :

    Start All Programs Tanner EDA Tanner V 15 S-Edit V15.0 32 Bit

    To do schematic entry , run S-Edit tool

    1 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    2/45

     

    P a g e  

    To create a new design : File New Design

    Enter the design name and give the path where it should be saved.

    Example : techlabs_designs is the design folder

    C:\Documents and Settings\phanendra\My Documents\Tanner_lab is the target location of

    design folder

    2 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    3/45

     

    P a g e  

     Add component libraries. The path for component libraries is given below.

    My Documents\Tanner EDA\Tanner Tools v15.0\Process\Generic_250nm

    Click add in S-Edit window for adding the libraries and follow the path of process folder.

    3 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    4/45

     

    P a g e  

    Double click all the component libraries under Generic_250nm and add all tanner database files

    (.tdb).

    To add Spice commands and Spice Elements for setting spice simulation follow the path.

    My Documents\Tanner EDA\Tanner Tools v15.0\Process\Standard_Libraries

    Now , we need to create a new cell.

    4 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    5/45

     

    P a g e  

    Give a new name for cell

    5 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    6/45

     

    P a g e  

    Scroll mouse for Zoom In and Zoom Out. And to view entire design press home button on

    keyboard.

    Click on Generic_250nm_Devices folder on libraries

    To add any component either drag the component on to the design area (black region

     with grids) or click Instance , then Instance Cell pops up where a user can change the

    properties . Keeping the icon on the design area , components icon can be placed N

    number of times. Either press ESC button on keyboard or Done on Instance Cell windowto stop placing of cells.

    6 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    7/45

     

    P a g e  

    In the same way place PMOS component on the design area.

    To Zoom the design area scroll the mouse or press home button on keyboard.

    7 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    8/45

     

    P a g e  

    Now place Vdd and Gnd Instances from the Misc folder under Library.

    Now place a DC Voltage and Pulse Voltage source from the Spice Elements folder under Library.

    8 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    9/45

     

    50 |P a g e  

    To place a Voltage Source, Click Spice Elements, Under Spice Elements Click Voltage Source and

    then Instance.

    To place a DC voltage source, change the interface to DC and edit the voltage value . Click done

    only after placing the voltage source on design area.

    9 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    10/45

     

    51 |P a g e  

    To place a Pulse voltage source, change the interface to DC and edit the voltage value . Click

    done only after placing the voltage source on design area.

    Place Vdd and Gnd even for the voltage sources as shown.

    Now place Input and Output ports.

    10 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    11/45

     

    52 |P a g e  

     When an input port is placed, In port window pops up where we can edit the port name , font size

    and orientation. Even the port orientation can be changed by pressing r button on key board.

    Now we have placed all the components on the design window. And connections are made using

    the wire as shown below

    11 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    12/45

     

    53 |P a g e  

    Now we need to set up simulation.

    12 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    13/45

     

    54 |P a g e  

    Now , give the path of library file.

    My Documents\Tanner EDA\Tanner Tools v15.0\Process\Generic_250nm\ Generic_250nm_Tech\Generic_250nm.lib

     After giving the path of Generic_250nm.lib, add TT as shown below.

    My Documents\Tanner EDA\Tanner Tools v15.0\Process\Generic_250nm\ Generic_250nm_Tech

    \Generic_250nm.lib TT

    TT is the corner model used . There are different types of Corner models in .lib file

    * TT : Typical model for NMOS & PMOS

    * SS : Slow NMOS Slow PMOS model

    * FF : Fast NMOS Fast PMOS model

    * SF : Slow NMOS Fast PMOS model

    Set Transient Analysis as shown below .

    13 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    14/45

     

    55 |P a g e  

    Run Simulation.

    14 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    15/45

     

    56 |P a g e  

    To view waveforms , place PrintVoltage from Spice Commands library.

    Now , Run Simulation.

    15 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    16/45

     

    57 |P a g e  

     Waveforms can be viewed on W-Edit tool once Simulation is Run again.

     Waveforms can be expanded by clicking Chart Expand Traces on W-Edit window.

    To extract the spice netlist from schematic, go to S-Edit and click the T-Spice option.

    16 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    17/45

     

    58 |P a g e  

    The following spice netlist is extracted from the schematic which contains the information of the

    circuit connections across its nodes, analysis setup , voltages applied and type of library used for

    simulation.

    Save the netlist as inverter_sch.sp

    ********* Simulation Settings - General Section *********

    .lib "C:\Documents and Settings\phanendra\My Documents\Tanner EDA\Tanner Tools

     v15.0\Process\Generic_250nm\Generic_250nm_Tech\Generic_250nm.lib" TT

    *-------- Devices With SPICE.ORDER == 0.0 --------

    ***** Top Level *****

    17 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    18/45

     

    59 |P a g e  

    MNMOS_2_5v_1 Out In Gnd 0 NMOS25 W=1.5u L=250n AS=975f PS=4.3u AD=975f PD=4.3u $

    $x=4793 $y=3700 $w=414 $h=600

    MPMOS_2_5v_1 Out In Vdd Vdd PMOS25 W=3u L=250n AS=1.95p PS=7.3u AD=1.95p PD=7.3u $

    $x=4793 $y=4700 $w=414 $h=600

    *-------- Devices With SPICE.ORDER > 0.0 --------

     VVoltageSource_2 Vdd Gnd DC 5 $ $x=1800 $y=3800 $w=400 $h=600 VVoltageSource_1 In Gnd PULSE(0 5 0 5n 5n 95n 200n) $ $x=3400 $y=3600 $w=400 $h=600

    .PRINT TRAN V(In) $ $x=2850 $y=4350 $w=1500 $h=300 $r=180

    .PRINT TRAN V(Out) $ $x=6250 $y=4050 $w=1500 $h=300

    ********* Simulation Settings - Analysis Section *********

    .tran 50n 1u start=0

    ********* Simulation Settings - Additional SPICE Commands *********

    .end

    L-EDIT

    CMOS Inverter Structure: -

    18 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    19/45

     

    60 |P a g e  

    The following is the path for opening L-Edit tool :

    Start All Programs Tanner EDA Tanner V 15 L-Edit V15.0 32 Bit 

    To do Layout , run L-Edit tool. Follow window pops up.

    Go to File New

    19 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    20/45

     

    61 |P a g e  

    Click Browse My Documents\Tanner EDA\Tanner Tools v15.0 \Process \Generic_250nm

    \Generic_250nm_Tech and add Generic_250nm_TechSetup.tdb file and click ok.

    Go to Cell New

    Name the Cell

    20 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    21/45

     

    62 |P a g e  

    Grids spacing can be minimized or maximized using – or + sign

    To change the technology Goto setup-> Design

    21 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    22/45

     

    63 |P a g e  

    Select Lambda or microns accordingly and click ok

    Before designing layout we need to remember following equations

    N Diffusion = N Implant and Active – (1)

    P Diffusion = P Implant and Active - (2)

    From layer palette, we can select layer then for drawing layer we need to switch at Drawing boxes

    as follows

    Now we can start layout designing. We are Taking Example of CMOS Layout design

    Background of L-Edit is P-Substrate by default

     We need to design PMOS, First draw active

    22 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    23/45

     

    64 |P a g e  

    Now draw P Implant over Active with keeping in mind Lambda based design rules

    Now draw poly over it accordingly

    23 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    24/45

     

    65 |P a g e  

    Now draw Contact for Active region

    Now draw metal1 around Contact

    24 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    25/45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    26/45

     

    67 |P a g e  

     We can perform DRC (Design Rule Check) at every stage

    If we are violating any Design rule then it will be shown in Error verification navigator

    26 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    27/45

     

    68 |P a g e  

    By clicking on the error, the tool points to the error that occur on layout.

    27 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    28/45

     

    69 |P a g e  

    By increasing the poly density area in the layout we can minimize that error. And again run DRC

    check.

     We need to design Gate contact.

    28 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    29/45

     

    70 |P a g e  

    To define port, go to (A)

     We can now find the port name added to gate .

    29 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    30/45

     

    71 |P a g e  

    Similarly we do NMOS layout.

    30 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    31/45

     

    72 |P a g e  

     After connecting NMOS and PMOS , CMOS layout looks like as follows.

    Now we can extract netlist by doing some settings

    31 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    32/45

     

    73 |P a g e  

    32 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    33/45

     

    74 |P a g e  

    Click options in Setup Extract above, and uncheck all Hiper Verify Options.

    Run Extraction, An spice file will open as follows

    This netlist is saved as inverter_layout.spc

     VVoltageSource_1 Vdd Gnd DC 5

     VVoltageSource_2 vin Gnd PULSE(0 5 0 5n 5n 95n 200n)

    .PRINT TRAN V(vin)

    .PRINT TRAN V(vout)

    .tran 1ns 500ns

    Final netlist

    .lib "C:\Documents and Settings\phanendra\My Documents\Tanner EDA\Tanner Tools

     v15.0\Process\Generic_250nm\Generic_250nm_Tech\Generic_250nm.lib" TT

    33 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    34/45

     

    75 |P a g e  

    M1 Vout Vin GND GND_ NMOS25 l=1.95e-006 w=2.55e-006 ad=5.1e-012 as=4.08e-012 pd=9.1e-006

    ps=8.3e-006 $(24.65 -272199 26.6 -272197)

    M2 Vout Vin VDD VDD PMOS25 l=1.95e-006 w=2.55e-006 ad=5.2275e-012 as=3.9525e-012 pd=9.2e-

    006 ps=8.2e-006 $(24.65 -272194 26.6 -272192)

     VVoltageSource_1 Vdd Gnd DC 5

     VVoltageSource_2 Vin Gnd PULSE(0 5 0 5n 5n 95n 200n)

    .PRINT TRAN V(Vin)

    .PRINT TRAN V(Vout)

    .tran 1ns 500ns

    .end

     After saving spice file, we can simulate it, W-Edit will invoked and we can check the response:

    34 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    35/45

     

    76 |P a g e  

    LVS

    (Layout Vs Schematic)

     We got two output files (one from S-Edit and second from L-Edit), Now we can compare results

    by using LVS

    35 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    36/45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    37/45

     

    78 |P a g e  

     After including these files, we need to run verification as follows &

    Results can be checked from Verification Window.

    Both netlists are equal.

    37 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    38/45

     

    79 |P a g e  

    Experiment No. 5:

    5. Schematic Entry and SPICE simulation of MOS differential amplifier. Determinationof gain, bandwidth, output impedance and CMRR.

    Theory :

     A differential amplifier is a type of  electronic amplifier that multiplies the difference between

    two inputs by some constant factor (the differential gain).

    Many electronic devices use differential amplifiers internally. The output of an ideal differential

    amplifier is given by:

     Where and are the input voltages and  Ad is the differential gain.

    In practice, however, the gain is not quite equal for the two inputs. This means, for instance, thatif and are equal, the output will not be zero, as it would be in the ideal case. A more

    realistic expression for the output of a differential amplifier thus includes a second term.

     Ac is called the common-mode gain of the amplifier.

     As differential amplifiers are often used when it is desired to null out noise or bias-voltages that

    appear at both inputs, a low common-mode gain is usually considered good.

    The common-mode rejection ratio,  usually defined as the ratio between differential-mode gain

    and common-mode gain, indicates the ability of the amplifier to accurately cancel voltages that

    are common to both inputs. Common-mode rejection ratio (CMRR):

    In a perfectly symmetrical differential amplifier,  Ac is zero and the CMRR is infinite. Note that a

    differential amplifier is a more general form of amplifier than one with a single input; by

    grounding one input of a differential amplifier, a single-ended amplifier results. An operational

    amplifier, or op-amp, is a differential amplifier with very high differential-mode gain, very high

    input impedances, and a low output impedance. Some kinds of differential amplifier usually

    include several simpler differential amplifiers. For example, an instrumentation amplifier, a fully

    differential amplifier,  an instrument amplifier,  or an isolation amplifier are often built from

    several op-amps.

    38 of 45

    http://en.wikipedia.org/wiki/Electronic_amplifierhttp://en.wikipedia.org/wiki/Gainhttp://en.wikipedia.org/wiki/Common-mode_rejection_ratiohttp://en.wikipedia.org/wiki/Operational_amplifierhttp://en.wikipedia.org/wiki/Operational_amplifierhttp://en.wikipedia.org/wiki/Instrumentation_amplifierhttp://en.wikipedia.org/wiki/Fully_differential_amplifierhttp://en.wikipedia.org/wiki/Fully_differential_amplifierhttp://en.wikipedia.org/wiki/Instrument_amplifierhttp://en.wikipedia.org/wiki/Isolation_amplifierhttp://en.wikipedia.org/wiki/Isolation_amplifierhttp://en.wikipedia.org/wiki/Instrument_amplifierhttp://en.wikipedia.org/wiki/Fully_differential_amplifierhttp://en.wikipedia.org/wiki/Fully_differential_amplifierhttp://en.wikipedia.org/wiki/Fully_differential_amplifierhttp://en.wikipedia.org/wiki/Instrumentation_amplifierhttp://en.wikipedia.org/wiki/Operational_amplifierhttp://en.wikipedia.org/wiki/Operational_amplifierhttp://en.wikipedia.org/wiki/Common-mode_rejection_ratiohttp://en.wikipedia.org/wiki/Gainhttp://en.wikipedia.org/wiki/Electronic_amplifier

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    39/45

     

    80 |P a g e  

    Differential amplifiers are found in many systems that utilise negative feedback, where one input

    is used for the input signal, the other for the feedback signal. A common application is for the

    control ofmotors or servos, as well as for signal amplification applications. In discrete electronics, 

    a common arrangement for implementing a differential amplifier is the long-tailed pair, which is

    also usually found as the differential element in most op-amp integrated circuits. A differential

    amplifier is used as the input stage emitter coupled logic gates.

    Design :

    In S-Edit, draw the circuit as shown below.

    Convert the schematic to symbol

    39 of 45

    http://en.wikipedia.org/wiki/Negative_feedbackhttp://en.wikipedia.org/wiki/Electric_motorhttp://en.wikipedia.org/wiki/Servomechanismhttp://en.wikipedia.org/wiki/Electronicshttp://en.wikipedia.org/wiki/Differential_amplifier#Long-tailed_pairhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Emitter_coupled_logichttp://en.wikipedia.org/wiki/Emitter_coupled_logichttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Differential_amplifier#Long-tailed_pairhttp://en.wikipedia.org/wiki/Electronicshttp://en.wikipedia.org/wiki/Servomechanismhttp://en.wikipedia.org/wiki/Electric_motorhttp://en.wikipedia.org/wiki/Negative_feedback

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    40/45

     

    81 |P a g e  

    40 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    41/45

     

    82 |P a g e  

    Using the lines for drawing, create a symbol for op-amp as below.

    Make the connections accordingly.

    41 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    42/45

     

    83 |P a g e  

     Again create a symbol for the above circuit and make the connections accordingly.

     Vpwr and Vpwr/2 are the instance name of the voltage souces.

    Now place the spice commands for finding out the gain, bandwidth.

    42 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    43/45

     

    84 |P a g e  

    Simulation setup

    Then click run simulation

    43 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    44/45

     

    85 |P a g e  

    Gain , Frequency and Bandwidth can be viewed from simulation window above.

     And waveforms can be viewed from w-Edit

    6th Experiment is already shown in the Tanner working Flow.

    44 of 45

  • 8/18/2019 VLSI LAB Tutorials TannerEDA

    45/45

     

    7th Experiment is 10 Bit Number Controlled Oscillator.

    The following schematic shows 10 bit VCO. By changing the values of D0 – D9 the input pulse

    applied varies accordingly.