www eecs ucf edu jinyier courses eee5390 cadence part 6 lay

Upload: adityapolepeddi

Post on 03-Jun-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    1/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    UCF Computer Engineering

    Home> Courses> EEE5390: Full-Custom VLSI Design> Cadence Tutorial

    Part 6 - Layout Creation

    Cadence Tutorial

    Part 1| Part 2| Part 3| Part 4| Part 5|Part 6| Part 7| Part 8| Part 9

    Overview

    Now that we have designed a circuit and convinced ourselves that it should work, we actually want to implement thiscircuit in silicon. That requires us to create a physical layout for the circuit. This physical layout will be used to

    generate the mask set used to fabricate the circuit on a silicon wafer. There are a variety ways to go from a

    schematic to a physical layout. These range from full-custom hand layout where every single transistor and wire isdrawn by hand to fully-synthesized layouts which are entirely computer generated. Most designers use something in

    between. In order tolearn as much as possible we will do the entire design by hand. This isn't as bad as it sounds as

    long as you use good hierarchical design principles.

    Getting Started

    We will create a new Cell View for our layout. Open the library manager, select your EEE5390 library then select

    File->New->Cell View. Enter 'layout' for the cell view name and Virtuoso for the tool. Click ok.

    http://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-1-starting-cadencehttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-2-schematic-capturehttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-3-symbol-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-4-test-bench-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-5-schematic-simulationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-6-layout-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-7-layout-extractionhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-8-layout-simulationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-9-appendix-veriloghttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/cadence-tutorialhttp://www.eecs.ucf.edu/http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://www.eecs.ucf.edu/http://www.eecs.ucf.edu/~jinyier/http://www.eecs.ucf.edu/~jinyier/courseshttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390http://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/cadence-tutorialhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/cadence-tutorialhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-1-starting-cadencehttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-2-schematic-capturehttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-3-symbol-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-4-test-bench-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-5-schematic-simulationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-6-layout-creationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-7-layout-extractionhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-8-layout-simulationhttp://www.eecs.ucf.edu/~jinyier/courses/EEE5390/cadence/part-9-appendix-verilog
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    2/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    The virtuoso window will appear and will look similar to the one you used for drawing schematics and symbols,however, there will be another new window, called the LSW (layer selection window.) This window lists all the

    available layers for the process you have selected. It also allows you to select the current layer for drawing as well as

    to choose which layers to display or to protect.

    Drawing the PMOS

    We will start laying out our circuit by drawing the PMOS. It is slightly more complicated than the NMOS so we'll do it

    together and then you can do the NMOS on your own.

    Active (Diffusion)

    The first step is to draw the p-type diffusion (or active) region. This will define the source and drain regions of the

    transistor and well as the width of the channel. Recall that our PMOS had a width of 1.6um. Select pactive from theLSW, and use the rectangle tool (Create->Shape->Rectangle from the menu) to draw a rectangle that is 3.6um wide

    and 1.5um high. The location is not important as we will move it around later.You may also need the ruler tool (Tools->Create Ruler from the menu) to precisely draw the layout.

    Notice that you can only move the mouse by increments of 0.15um. This is not an accident. For the current process,

    AMI06, lambda is 0.3um. So 0.15 corresponds to 1/2 lambda. This increment is called the design grid ormanufacturing grid and is the minimum address size of features on your masks. So even though the smallest feature

    you can draw is 0.6um or 2 lambda, you can position these features with a precision of 0.15 um.

    Gate Poly

    Now we will draw the gate of the transistor. Select Poly from the LSW. Draw a rectangle that is 0.6um wide and

    2.7um high, centered at the same point as the active region. Wherever poly crosses active will form the channel of atransistor.

    Here's what you should have now:

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    3/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Hint: To zoom in press ctrl-z, to zoom out press shift-z. Use arrow keys to move the view around.

    Active ContactsNow we will contact the active region to form the source and drain of the PMOS. Select layer 'cc' from the LSW.

    Don't ask me why they named this layer 'cc' I don't know. 'cc' allows you to form a contact between active or poly and

    the first metal layer, 'metal1.' Draw two rectangles that are 0.6um by 0.6um (2 lambda x 2 lambda) to form sourceand drain contacts as shown:

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    4/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Hint: You could have used the copy function to make the second rectangle. Highlight an object or multiple objects,

    press 'c' and then point to the destination and click. Also, try out the ruler function. It's the last button of the toolbar.

    Metal

    Let's draw the metal layer that will contact the diffusion layer through the contacts we just drew. Select 'metal1' from

    the LSW. Draw two rectangles that surround the contacts by at least 0.3um or 1 lambda. Typically they would be thesame width as the active region but they don't have to be. Draw them as shown for now:

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    5/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    P SelectThe active layer tells the foundry where to perform ion implantation, but not what type of dopant to use. That

    information is conferred through the layers 'pselect' and 'nselect' You might have thought that the name 'pactive'

    implied that this was the p-diffusion region and that 'nactive' implied n-diffusion, but actually both these layers share

    the same layer number and get converted to a single layer 'active'. In fact, you could have used active in place ofpactive or nactive and the result would be the same. They are just there for convenience (they help you remember

    which flavor of MOS you are working with.

    Select layer 'pselect' from the LSW. Draw a rectangle that surrounds the pactive by 2 lambda(0.6um) in all directions

    as shown:

    N-WellThe PMOS transistors must sit in an n-type diffusion well to isolate them from the p-type substrate. Select 'nwell' from

    the LSW and draw a rectangle of width 7.8um and height 5.1um as shown.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    6/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    You may wonder why the well is not centered with respect to the PMOS. This is where we are going to put the welltap. The well tap allows us to contact the n-well and ensure that the pn junction formed by the active region and the

    well remains reverse-biased, electrically isolating the transistor.

    Well TapNow we are going to draw the well tap. This consists of an n-type diffusion region (nactive and nselect) and a

    contact.

    First we need to use the stretch command to edit one of the rectangles we already drew. hit 's' and select the edge

    that you wish to stretch, then click on the destination. Move the left edge of the pselect rectangle 0.6 um to the right.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    7/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Now select 'nselect' from the LSW and draw a rectangle that abuts the 'pselect' with a width of 2.1um and a height of2.7um.

    Select 'nactive' and draw a 1.5um square abutting the 'pactive' region.

    Finally, using 'cc' draw a 0.6um square contact in the 'nactive' region. It should be a distance of 2 lambda from the

    adjacent p diffusion region. Stretch the metal layer covering the left contact so that it also covers the well tap. This will

    tie the well to the drain of the pmos. You just finished drawing your first transistor.

    Here is what the completed PMOS with the well tap should look like.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    8/16

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Drawing the NMOS

    I expect that you can do most of this on your own now so I'll just give you a few hints. Most of the rectangles will be thesame size for the nmos as for the pmos since the design rules don't specify which type of doping they refer to.

    Active (Diffusion)

    This time we will use 'nactive' to draw the n-type diffusion region, although, recall that you could also just use 'active.'Make the active region for the nmos the same size as the pmos you alread drew. Again we are going to draw a fet

    that is the minimum allowable size.

    Gate Poly

    Draw the gate poly as before.

    Active Contacts

    Place the contacts using 'cc'

    Metal

    Draw the metal1 layer surrounding the contacts.

    N Select

    Draw the n-select region to assign n-type doping to the active region.

    Substrate TapIn the case of the nmos we don't need to draw a well because the substrate is already p-type so the device is alreadyisolated by a pn junction as long as this junction remains reverse-biased. We can ensure this by drawing a substrate

    tap to tie the substrate to ground. Draw the substrate tap just like the well tap, substituting 'pactive' for 'nactive' and

    'pselect' for 'nselect.' Stretch the metal contact from the source to cover the substrate tap contact.

    Here is what your nmos should look like.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    9/16

    df d mi b PRO i Are you a developer? Try out the HTML to PDF API

    Wiring up the Inverter

    Now that we have drawn our transistors, we will want to connect them together to make the inverter.

    First of all you will want to position your transistors properly. Select the entire nmos transistor and drag i t below the

    pmos so that the gates are aligned horizontally and there is a gap of 1.2um between the nwell of the pmos and thepselect of the nmos. This is shown here:

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    10/16

    df di b PRO i Are you a developer? Try out the HTML to PDF API

    Drawing Connections

    First we will connect the outputs of the transistors to form the output net of the inverter circuit. Select 'metal1' from theLSW and draw a rectangle that connects the right contact of the pmos to the right contact of the nmos. Its alright if

    these rectangles overlap since they will be joined when the file gets converted to the mask set. If you want you canjoin them now by selecting them and using the 'merge' command or pressing shift-m. Sometimes this helps your

    layouts to look less cluttered. Only objects on the same layer will be merged.

    While we have the metal1 layer selected lets draw the power rails. Draw a rectangle that is 3 lambda tall and the

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    11/16

    df di b PRO i A d l ? T t th HTML t PDF API

    entire width of the both select regions (6.2um), spaced 3 lambda above the pmos active region. Repeat this belowthe nmos active region. These will be the supply rails for the circuit. Now connect these to the source/drain contacts

    of the transistors as shown here.

    Note that we drew our supply rails the minimul allowable width (3 lambda.) This is not ususally advisable since these

    wires generally carry a lot of current. However, in this exercise we are trying to draw the smallest allowable inverter

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    12/16df di b PRO i A d l ? T t th HTML t PDF API

    circuit, not necessarily one that will perform well for any given application. You will have to decide how wide you needto make your power rails when you draw the gates for your own project.

    Now we will connect the gates and make a poly-metal1 contact to form the input of the circuit. Select 'poly' and

    connect the gates of the two transistors. Now we want to draw a square that is 4 lambda, abutting the connectedgates. Place a 'cc' contact (2x2 lambda) in the center of this square. Finally draw a 'metal1' square covering the

    contact (4x4 lambda). Heres what you get:

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    13/16df di b PRO i

    Are you a developer? Try out the HTML to PDF API

    Creating Pins

    Now we need to add pins to get signals into and out of our circuit. Select 'metal1' from the LSW. Now select Create-

    >Pin from the menu in Virtuoso. The create pin dialog box will open. We want to give out pins the same names wegave them in the other cell views (vdd, vss, in, out) so that they all match. First do vdd. Type in the pin name, keep the

    type as inputoutput. Select the Display Pin Name option so that pin names will be showed in the layout view. Click ok

    and draw a rectangle overlapping the high supply rail as shown below. Repeat for the other pins.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    14/16df di b PRO iAre you a developer? Try out the HTML to PDF API

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    15/16df di b PRO iAre you a developer? Try out the HTML to PDF API

    You are now finished with the layout for your inverter.

    Design Rules Check

    Before we proceed, we want to make sure we haven't made any errors in our layout. We will use the design rules

    checker (DRC) to ensure that we haven't violated any of the MOSIS design rules. This doesn't guarantee that the

    circuit will work properly; it only guarantees that the foundry can fabricate it as drawn.

    Before running DRC, go back to your PuTTY window and do the following:cd ~/ncsu-cdk-1.6.0.beta/lib/NCSU_TechLib_ami06

    rm divaDRC.rulln -s ~/ncsu-cdk-1.6.0.beta/techfile/divaDRC.rul divaDRC.rul

    rm divaEXT.rulln -s ~/ncsu-cdk-1.6.0.beta/techfile/divaEXT.rul divaEXT.rul

    rm divaLVS.rulln -s ~/ncsu-cdk-1.6.0.beta/techfile/divaLVS.rul divaLVS.rul

    Select Verify->DRC

    The default options should work just fine. Click OK and the DRC will run. Check the CIW for the results. If there are no

    errors it will read

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 8/12/2019 Www Eecs Ucf Edu Jinyier Courses EEE5390 Cadence Part 6 Lay

    16/16

    Are you a developer? Try out the HTML to PDF API

    ********* Summary of rule violations for cell "test layout" *********

    Total errors found: 0

    otherwise there will be a list of errors like this one:

    4 (SCMOS Rule 6.5.b) active contact to active spacing: 1.50 um

    The rule number will be listed along with a description, which is very helpful when troubleshooting. You can go to the

    Mosis rules websiteto get the details of the rule in question.

    You are done with this section.This website is created and maintained by Prof. Yier Jin. Please contact Yier Jinif you have any questions

    concerning the materials on the website and all other general questions.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fwww.eecs.ucf.edu%2f~jinyier%2fcourses%2fEEE5390%2fcadence%2fpart-6-layout-creation%2f&id=ma-140411141358-4a5476bfhttp://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://www.mosis.com/Technical/Designrules/scmos/scmos-main.htmlmailto:[email protected]