Introduction to LED Schematic Capture
Led Basics: How to Create an Inverter Schematic
Introduction  
Led is the front end schematic entry and layout editing tool we will be using for
the VLSI class.  In this tutorial you will create the schematic for a CMOS inverter.
Later, we will use Led for creating layouts;  the editing commands used to create either a schematic
or layout are mostly the same. 
Setup  
Before running Led, you must add the following statement to your .cshrc file:
 swsetup ecad:meta:scs:mgc
This puts the binaries for the Mentor tools on your Unix search path.
If you have done the Hspice/MWAVES tutorial, then you have already done this step.
The basic command line for starting Led is:
 Led -t tech  -l tech_dir  & 
where 'tech' is the technology for the design and 'tech_dir' is the path of the
technology directory.  The 'tech_dir' pathname will always be the same; we may use more than
one technology during the class.   The '&' will start Led up as a background process.
For this tutorial, use technology 'scn06hp' which is a technology file for the HP 0.5 micron process
supported through the MOSIS foundry. You would invoke Led as:
 Led -t scn06hp -l /ecad/local/tech/rel/gdt &
You can also enter the following alias in your .cshrc file:
alias Led_tech "Led -t \!\!:1 -l /ecad/local/tech/rel/gdt &"
This alias accepts an argument which specifies the technology. Using this alias,
you would invoke Led as:
 Led_tech scn06hp
Before starting Led, make a directory for your work and change to that directory.
Led Exit, Interrupt, Menus  
- Once Led is started, you can use CTRL-C to interrupt any current command it is executing.
 - To exit Led:
  - Position the cursor over the window background (the grey area)
  
 - Press the right button on the mouse to display the background Menu
  
 - Select the Exit Led option
  
 - If the background Menu does not display, then you might be in
       the middle of a command in Led.  If the menu that appears has a
       cancel entry, select cancel to discontinue the command.  If
       there is no cancel entry, then press CTRL-C to cancel the command.
 
 - There are two main menus in Led: Background Menu and Led Edit Menu
- The background menu enables you to:
- Add and Manipulate windows
 - Change cursor
 - Open icons
 - Print
 - Exit
 
 - The Led Edit Window Menu enables you to access all of the layout and schematic commands
 
 - To display the background Menu:
- Move the cursor to the background area
 - Press and hold the right mouse button to display the Background Menu
 
 - To display the Led Edit Menu
- Move the cursor into an Led window
 - Press and hold the right mouse button to display the Led Edit Menu
 
 
Creating the Inverter  
- The first step is create a new schematic cell
- Select Cells from the Led Edit Window Menu
 - Select NEW SCHEMATIC CELL from the cells menu to display the NEW Cell form
 - In the text field, enter inva. This will be the name of the schematic.
 - Select the ok button
 
  Once you create the inverter cell, you can add circuit elements
  like resistors, transistors, etc. and alter their properties.
 - To Add an NMOS transistor
     
       - Left click on a point in the schematic where you want the transistor added.
       
 - Use the 'v' hotkey to popup the transistor list menu (Add->'Add transistor' menu choice).
       
 - Select the NMOS transistor choice which is an enhancement N-type transistor. You can also
	    select a PMOS enhancement (P-type) transistor.
       
 -  The transistor will now appear in your schematic and will
	    be 'selected' as indicated by the blinking 'X'.
       
 -  To move the transistor, hit the 'w' hotkey and then move the cursor to the new location.
	    Left-click to place the transistor. 
     
     
 
 
 Zooming, Panning, Screen Refresh 
     
       -  The '2' hotkey zooms in 2X.
       
 -  The '4' hotkey zooms out 2X.
       
 -  The '3' hotkey zooms to a region. After hitting '3', do left-click-hold and
	    drag out a rectangular selection box to zoom to this area.
       
 -  The '1' hotkey pans to a selected point. Hit '1', then click on the spot
	    you wish to pan to.
       
 -  Led does not automatically refresh the screen after
	    editing operations.  Use the 'tab' key to refresh the screen.
     
 
 Object Selection 
     
       -  Most editing commands work on the currently selected object or group of objects.
       
 -  To select an object or group of objects, left-click-hold
	    and drag to form a rectangular selection box. Release the
	    left mouse button to pop up the 'Find Objects Menu'
       
 -  All objects in the rectangular selection region will be
	    listed in the 'Find Objects Menu'.  Clicking on one of the
	    objects will select that object.  Clicking on '+' will
	    select all of the objects in the menu; clicking on '-' will
	    deselect all of the objects.
     
 
 NMOS Transistor Selection 
     
       -  Using the object selection commands above, select
	    everything within the region around the NMOS transistor.
       
 -  The 'Find Objects Menu' should list four items. Three of
	    the items are the drain, source, and gate terminals of the
	    NMOS transistor, the other item ('NMOS nmos0 W=0.9 L=0.6')
	    is the nmos transistor itself.  Some editing commands
	    require that you select you entire transistor; other
	    commands such as adding wires (nets) require that you just
	    select a terminal.
       
 -  Note that the transistor has a 'dot' near one of the source/drain
	    terminals.  The 'dot' marks the drain terminal of the
	    transistor.
     
 
     
 Other Editing Commands, (delete, duplicate, rotation, label) 
  -  Most of these commands require that the object be selected.
  
 - To Duplicate an element, select the element and then use the 'd'
       hotkey (Add-> 'Duplicate element' menu choice)
  
 - If you want to move the transistor after it is placed, select
       the transistor and use the 'w' hotkey to move it (Alter->Change.location)
  
 - If you wish to delete an element, select it,
       and delete with the 'q' hotkey (Alter->'Delete element' menu choice)    
  
 - An element can be rotated via the 'Alter->'Ch.rotation' menu
     choice.
  
 - An element can be reflected about the X-axis via the 'Alter->'Ch. X reflection' menu
       choice.
  
 - An element can be reflected about the Y-axis via the 'Alter->'Ch. Y reflection' menu
       choice.
  
 -  The default name for the first NMOS transistor is 'n0'.  To
       change the name, use the 'n' hotkey (Alter->Ch. name).
  
 -  The Width/Length of the transistor can altered via the 'i'
       (Alter->Ch. size) command.
 
 Writing our your design, Reading a designs 
  -  It is a good idea to save your work periodically.
  
 -  To save your design, use the 'W' hotkey (Files->Write cell(s))
       command. Note that this is a CAPITAL 'W', hotkey commands in
       Led are case sensitive.
  
 -  To read in a previous design, use the 'R' hotkey (Files->Read
       an L file).
 
       
 Naming Elements, Making Names visible 
  -  The default name for the first NMOS transistor is 'n0'.  To
       change the name, use the 'n' hotkey (Alter->Ch. name).
  
 -  By default, the name of an element is not plotted.  To make the
       name of element visible, the element must be selected and the
       'VIEWNAME' property added.
  
 -  Select the NMOS transistor, and use the 't' hotkey (Add->
       Property) command to bring up the 'Properties' menu.
  
 -  Select the 'VIEWNAME' property to make the element name
       visible. Hit the 'tab' key to refresh the display, you should
       now see the element name.
  
 -  To change the font size for the element name, you need to
       select the 'VIEWNAME' property for the element. It will look
       something like 'VIEWNAME for nmos0 ...' in the 'Find Objects'
       selection menu.  After the VIEWNAME property is selected, the
       'i' hotkey (Alter-> Ch. size) can be used to change the font
       size.
 
 
 -   Add a PMOS transistor 
     
  Use the 'v' hotkey to add a PMOS transistor.  Reflect
     the PMOS transistor about the X axis so that the drain of the
     PMOS transistor is pointing down; move the two transistors so
     that the drain terminals are aligned but leave a gap so that a wire
     can be added to connect the two terminals.
     
 
 - Add a wire to connect the drain terminal of the PMOS to the drain
     terminal of NMOS 
     
       - Click left and drag a small box around the drain of the
	    NMOS transistor.   If your box encloses other objects, then the Find Objects Form pops up.
       
 - Select nmos0.d from the Find Objects Form.  The blinking
	    cursor (x) appears  attached to the selected object.
       
 - Next, add a wire via the 'a' hotkey (Add->Add Wire menu
	    choice). A 'wire' should appear whose end is connected to
	    the nmos.d terminal; the wire will stretch as the cursor
	    is moved.
       
 -  To connect the wire to the PMOS drain terminal, move the
	    cursor to the PMOS drain terminal, then 
	    click left and drag a small box around the PMOS drain 
	    terminal to select it.  Make sure the box is small so that
	    only the PMOS drain terminal is selected. 
       
 - The wire should now be connected between the NMOS 
	    drain and the PMOS drain terminals.
       
 -  You can verify this by selecting the region around
		 the wire including the terminals; the 'Find Objects'
		 box should include a 'wire' element that looks like:
		 'Wire nmos0.d to pmos0.d'.
		 
     
 
 - Add a wire which connects the gate terminals of the two
     transistors. 
     
       - Use the procedure above to connect the nmos0.g terminal to
	    the pmos0.g terminal.
     
 
 - Add power terminals
     
       - To Add a Vdd terminal
	    
	      - Left click at a point above the PMOS source terminal to place the Vdd terminal
	      
 - Use the 'x' hotkey to bring up the Terminal menu list (Add->Add Terminals menu choice)
	      
 - Select VDD from the terminals list
	      
 - Add wire between the Vdd and the resistor
 
	  - To Add a GND terminal, use the same procedure as above
	      except select a 'GND' terminal from the Terminals menu
	      choice.  The 'GND' terminal should be connected to the
	      source terminal of the NMOS transistor. 
    
 
 - Add IN/OUT Terminals
     
       - Use the procedure above to add a terminal of type 'IN' to
	    the schematic.  This terminal should be connected the wire
	    which connects the two gate terminals.   The gate
	    terminals will already have a wire connecting them; when
	    drawing the wire between the IN terminal and the gate wire
	    you can select a small portion of the gate wire and this
	    will create a 'node' connection point in the wire. 
       
 - Use the procedure above to add a terminal of type 'OUT' to
	    the schematic.  This terminal should be connected the wire
	    which connects the two drain terminals.
    
 
    
 -  Change the name of the IN terminal to 'A', OUT terminal to 'Y'
     
       - Select the terminal, and use the 'n' hotkey
	    (Alter->Ch.name) to change the name to 'A'.
       
 - Make the name visible by adding a VIEWNAME property to the
	    'A' terminal. Change the size of the VIEWNAME property so
	    that the terminal name is easily visible.
       
 -  Follow the same procedure to change the OUT terminal name
	    to 'Y'.
    
 
	    
 -  Document your Schematic
     
       - Place the cursor where the text needs to be added
       
 - Select text from the 'Add->Properties' ('t' hotkey) menu
       
 - A window will pop up.  Enter the text in the window.
       
 - Select ok
     
 
       
 - To plot your schematic 
     
       - Use the 'Print->Postscript object' menu choice from the Led
	    Edit Window to print out your file to either a printer or
	    file. The default filename choice is '/tmp/printfile'.