Lab 8:  - ECE 421L 

Final Project Part I

Cassandra Williams

Willi131@unlv.nevada.edu

11.9.15

  

For this lab we were to construct all the schematics for the components below.  For each one we ran simulations to ensure proper operation.  This is the first part of our final project which will be constructing an ALU.

-  NMOS                    -  31-stage Ring Oscillator with buffer to drive a 20pF load off chip.
-  PMOS                     -  8-bit up/down Counter
-  Inverter                     -  25K Resistor
-  NAND gate              -  25K/10K Voltage Divider
-  NOR gate

I.  NMOS
  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/19.%20NMOS%20Schematic.PNG    http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/20.%20NMOS%20Symbol.PNG

 

II.  PMOS
  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/16.%20PMOS%20Schematic.PNG     http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/17.%20PMOS%20Symbol.PNG

   

III. Inverter
   
For our project we will be using an inverter made with a 6/0.6 NMOS and a 12/0.6 PMOS as seen below.  Beside it is my Inverter symbol to be used in the simulation circuit.  Notice that in previous labs we actually instantiated the global VDD into each circuit which required it.  Here I have replaced it will an input/output pin labeled VDD.  This way once we do the layouts and have all the layers of our chip designed they will all connect up to the same VDD! instance....

   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/4.%20Inverter%20Schematic.PNG    http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/5.%20Inverter%20Symbol.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/6.%20Inv%20SIM%20schematic.PNG  Here is my test circuit.  I instantiated my Inverter symbol and ran a transient simulation.  Results are seen below.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/6b.%20Inv%20SIM%20Graph.PNG
   

IV.  NAND gate
   For the NAND gate below is my circuit.  Here we are using 6/0.6u NMOSs and PMOSs.  You can also see my symbol for the NAND gate.
   
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/1.%20NAND%20Schematic.PNG     http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/2.%20NAND%20Symbol.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/3.%20NAND%20Sim%20Schematic.PNG  For this simulation I also did a transient analysis.  You can see by the output below that the NAND gate is working just as expected it should.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/3b.%20NAND%20Sim%20Graph.PNG

V.  NOR gate
     
     For the NOR gate we use the same sized NMOS and PMOS devices as above in the NAND gate.  Here you can see my circuit and representative symbol for it.
   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/13.%20NOR%20Schematic.PNG    http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/14.%20NOR%20Symbol.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/15.%20NOR%20Sim%20Schematic.PNG  Using my symbol in a simulation circuit here, it ran as expected.  The output below shows a glitch during my A-input High to Low switching... This can be smoothed out a little bit more with minor tweaks.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/15b.%20NOR%20Sim%20Graph.PNG
   

VI. Ring Oscillator
   
      Our 31-stage Ring Oscillator was already constructed in a previous lab (As was all other components minus the Counter...).  I just made the VDD change as you can see below in my schematic.
   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/10.%20RingOsc%20Schematic.PNG    http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/11.%20RingOsc%20Symbol.PNG
   
   Beside it is my symbol to be used for the simulation.  Here, we had to make the addition of the buffer in order to ensure the capability of driving a large load off-chip of 20pF.  Further explanation of this, a Buffer is essentially just a string of inverters tied end to end together, each inverter larger than the previous by a calculated magnitude (Translation:  You multiply each MOSFET width by this calculated magnitude (A=[Cload/Cin of 1st Inverter]^1/N), N= # of inverters in string).  The point of this buffer is to aid in lower delays through the circuit.  On an actual chip this would be placed between the on-chip logic and bonding pads.
   
   Below is my simulation of the 31-Stage Inverter with the buffer attached:
     
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/12.%20Buffer%20Symbol.PNG
   
   
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/12a.%20RingOsc_Bf_Schematic.PNG
   
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/12b.%20RingOsc_Bf_SIM%20Schematic.PNG
   


VII. Counter
   
    For the Counter we had to first build a D-FlipFlop... This circuit is shown here:  So for a regular Edge-triggered D-FF, the two NAND gates in the circuit would be inverters.  However, we need clear and set inputs to the NAND gates were added.  This is an edge-triggered flip flop with asynchtrounous set and clear.
   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/7.%20DFF%20Schematic.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/8.%20DFF%20Symbol.PNG  A symbol was made for the Flip Flop in order to help make the Counter circuit more compact and simple.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/30.%20COUNTER%20schematic.PNG
   
Above is my Counter Circuit including the Flip Flop.... Below is my Symbol.  This is just a single-bit counter.  For the project we had to create an 8-bit Counter which follows below.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/31.%20Counter%20Symbol.PNG
   
As with the multi-staged Ring Oscillator, we use buses and arrays to create the multi-bit Counter.  Here you can see, the clk_in has a single input to the first cell, the the output is connected to the next cell and so on.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/32.%208bit%20counter%20schematic.PNG
   
From the schematic above I created the symbol for the 8-bit Counter below.
   
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/33.%208bit%20counter%20symbol.PNG  Using the 8-bit symbol I instatiated it into the schematic below in order to run a simulation to ensure proper operation.  
   
   
Here are my results:  The Counter is counting UP from 0-5us... Then at 5us my up_dn input goes high and switches the operation to begin counting down.  If you look closely, you'll see it is a mirror image.  That is because the Counter begins counting back down from the point at which it stopped counting up.... So it is working as intended.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/34.%208bit%20Counter%20up_dn%20SIM%20Graph.PNG
     
   
VIII. 25K Resistor
   
    Finally, the circuits, symbols, and simulations of the 25K resistor are shown below...
   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/22.%2025K%20R%20schematic.PNG   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/23.%2025K%20R%20Symbol.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/24.%2025K%20Resistor%20Sim%20schematic.PNG  You can see that here we only needed to run a simple DC analysis to see that the resistor is in fact working properly.  Basic Ohms Law can be used to verify V=I*R.  Here I have a 5V input and a 25K Resistor.  You can see that at 0V -> 0A and at 5V -> 200uA.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/25.%2025K%20Res%20Sim%20Graph.PNG

   
IX.  Voltage Divider
   
  Voltage divider is seen below.  Depending on the orientation of your resistors, your output is going to be either 10/35 parts of the input OR 25/35 parts of the input.
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/26.%20Rdiv%20Schematic.PNG         http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/27.%20Rdiv%20Symbol.PNG
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/28.%20Rdiv%20SIM%20schematic.PNG   Vout = Vin* [R2/R1+R2]
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Lab8%20pics/29.%20Rdiv%20SIM%20Graph.PNG  Here, my R1=10K and R2=25K... My results show Vout = 3.57V.  If the resistors were oriented in the opposite arrangement Vout would be 1.42V.... Either way, the circuit is performing as it should and as expected.

 Final Project Part II

For the second part of our Lab project we were to layout each of the components that will make up our test chip.  

   

 I. NMOS Transistor:

   

  Below is my NMOS layout.  As you can see, the source, drain, body and gate are labeled for clarity.  Beside the DRCed layout is the successful LVS extraction.  This was extracted with the schematic in the first part of the project (above).

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NMOS%20Layout%20DRC.PNG   http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NMOS%20Extracted%20LVS.PNG

   

   

   II. PMOS Transistor:

   

    Gate, Source, Drain, and Body labeled below.  You can see that the 6u/.6u PMOS layout/extracted matched the netlist with the schematic above as well.

  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/PMOS%20Layout%20DRC.PNG       http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/PMOS%20Extracted%20LVS.PNG

  

  III. Inverter 

  The layout below, after being extracted was LVSed with the schematic from the first part of the project above.  
http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/12P_6N_Inverter%20Layout%20DRC.PNG        http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/12P_6N_Inverter%20Extracted%20LVS.PNG  

    

   

IV.  NAND

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NAND%20Layout%20DRC.PNG         http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NAND%20Exctracted%20LVS.PNG

   

   

V. NOR

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NOR%20layout%20DRC.PNG          http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/NOR%20Extracted%20LVS.PNG

  

  VI. 31-Stage Ring Oscillator with Buffer:

   

   For the Ring Oscillator layout, I layed out each component, checked the DRC and LVS and then put them together.

   

  A. Buffer:

      Below is the first layout of my buffer...  I ended up changing it to correctly have one inverter with the 8 multiplier (as you can see below there is a string of them), and then one with the multiplier of 64.  This is better visible in the layout with the Buffer and Oscillator below.

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/Buffer%20DRC.PNG

      

  B. 31-stage Ring Oscillator:

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/31RingOsc%20Layout%20DRC.PNG

     

  Below is the Ring Oscillator extracted and successfully LVSed with just the oscillator (not including the buffer yet)

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/31RingOsc%20Extracted%20LVS.PNG

  

  31-stage ring oscillator AND buffer:

   Below is the final extracted view and LVS for the ring oscillator and the buffer.  You can see here, as mentioned above, that the buffer has one stage with an 8 multiplier, and a second stage with the 64 multiplier.   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/31RingOsc_Buffer%20Extracted%20LVS.PNG

   

VII.  8-bit Counter:

    

 A. Flip-Flop:

   

  For the 8-bit Counter I layed out each component one at a time, DRCed and LVSed them and then put them all together similar to the way I did my ring oscillator.

  First, I layed out the Flip-flop.  Below you can see that the inverters, NMOS, PMOS transistors, and Nand gates were each instantiated and then arranged and connected to their respective terminals.  Terminals were labeled for easy layout and connections.  This DRCed successfully.

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/FF%20Layout%20.PNG

      

Here, below you can see the the Flip-Flop was extracted and LVSed successfully with the netlists matching *high five* :)

   

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/FF%20Extracted%20LVS.PNG

     

B.  MUX/DEMUX:

   

    Next component used in the counter is the MUX.  Here, layed out below you can see each terminal as they're labeled for easy following.  This was constructed by simply instantiating my NMOS and PMOS transistors and connecting the just like the schematic.

  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/DEMUX%20Layout%20DRC.PNG   

   Here is the extracted view of the MUX/DEMUX.  As you can see, this was LVSed with the schematic and netlists matched successfully.

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/MUX%20Extracted%20LVS.PNG

   

   C.  Counter:

   

    Next, putting the Flip-Flip and MUX together I created a single bit counter.  This component, seen below represents only one of the 8 bits that will soon make up our final component...

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/1bitCounter%20Layout%20DRC.PNG    

   Below is the extracted and LVSed single-bit counter.

  

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/1bitCounter%20Extracted%20LVS.PNG

      

D.  8-Bit Counter

   

Simply instantiating the counter above into a new layout, I just copied it to build the 8-bit layout seen below.  Making the proper connections, and checking design rules, my DRC returned back clean.

  

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/8BitCounter%20Layout%20DRC.PNG

   This is a zoomed-in view or the 8-bit counter layout...

  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/Layout%20Zoomed%208bitCounter.PNG

   

  Finally, nexted after the DRC was successful and clean, I extracted the layout as seen below. (zoomed in for easy view)

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/Extracted%20Zoomed%208bit%20Counter.PNG

    

Next, I ran the LVS with the 8-bit counter schematic shown above in the first part of the project report and it returned successful with netlists matching.

  

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/8bitCounter%20Extracted%20LVS.PNG

  

   

 VIII. 25K Resistor:

  

  Below is the 25K resistor layout.  I used the n-well to layout the resistor as seen below.  DRC and LVS were successful.

    

  

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/25K%20R%20Layout%20DRC.PNG

   

  http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/25K%20R%20Extracted%20LVS.PNG

   

  IV.  25K/10K Voltage Divider:

   Below is the layout, extracted, and successful DRC and LVS for the voltage divider.

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/Rdiv_Layout%20DRC.PNG

   

  

http://cmosedu.com/jbaker/courses/ee421L/f15/students/willi131/Project/Project%20PtII%20Pics/Rdiv_Extracted%20LVS.PNG

Side Note:  For all these layouts, they were all compared with schematics shown in the Part 1 of the project (above).  These schematics are the basic, raw schematics that my symbols were created from, not the simulation schematics.  

   

Finally, after arranging groups we will be laying out all the components into a padframe layout in order to get a test chip fabricated.  Laying out the components will be simply instantiating them into the padframe layout and making the connections to the pads.  For this project each component will have their own power supply (vdd) connection.  This will be simply sorted out by naming each vdd on the schematic's pins as vdd<1>, vdd<2>, and so on.. Then all of the components will have the same global Ground (gnd!).  Arranging things this way will help prevent any issues with one particular component/circuit effecting any of the other ones on the chip. (ie. in case there is a short vdd-gnd in one circuit, it wont short everything out).

   

My design directory and all the schematics, layouts, extractions, and sims can be found here.  These were also all backed up via email/flashdrive.

 

   

Return to the directory listing of students in EE 421L, Fall 2015
 
Return to the EE421L Fall 2015 webpage