Lab 7 - EE 421L
Cesar Macias
maciasc4@unlv.nevada.edu
10-26-2014
Using buses and arrays in the design of word inverters, muxes, and high-speed adders
We first create a 4 bit inverter to demonstrate the use of buses. The shematic can be seen below
This
can be more consice by the use of buses and making the specifying the
size of the instance when instering the piece (IO<from:to>) the
same schematic as the previous can be seen using buses.
symbol of previosu schematic
we will now simulate this piece and put different size capacitor in each of the ouputs
From
the simulations results we can see the teh bigger the capacitor the
longer it takes for the signal to change (charge and discharge) and we
can grab a specific signal from the bus without having to do multiple
simulations.
We will now create multiple logic gates that use 8 bit size inputs and outputs
NAND:
schematic
this is the symbol for the 2 bit NAND symbol
and the schematic for the NAND 8 bit gate
NOR:
schematic
2 bit symbol
and the 8 bit schematic
OR:
schematic
2 bit symbol
and the or 8 bit schematic
AND:
schematic
2 bit symbol
and the 8 bit schematic
INVERTER:
schematic
single input single output symbol
and the 8 bit schematic
We can now run a simulation of the gates, it's possible to run it in a single schematic as we did below.
Simulation results can be seen below
Now we will work on the MUX
The
operation of the MUX is really simple, if high is selected then A is
the output and if Low is selected the B is the output. The
demultiplexer works the same but opposite. When S is high, then the
output will be A but when S is low then the output will be B.
Now
the 8 bit wordsize mux and demux will work the same except this
time the lengt of the input and outputs is eight bits long.
8bit multiplexer schematic
We
selected just a couple of output to demostrate that the multiplexer
works, it is not necessary to have 8 bit word sizes since for
demostration purposes all the bits contain the same information. The
same will be done to the demux for simplicity purposes.
We
will now do an 8 bit full adder, we will star by making a 2 bit adder
that includes a carry in and a carry out, the schematic can be seen
below
This is the layour for the full adder
Now
using this full adder we will creaste an 8 bit adder by cascading the
carry outs, the schematic for the 8 bit can be seen below.
by using buses we connect the carry out from 0 to 6 the the carry in and carry in 0 is separate.
this is the symbol for the 8 bit full adder
this is the test schematic
this
are the simulated results, I tried using the most general
test possible that will test all
possible cases. I used 1111,1111 + 0000,0000 and a
carry in of 1 after a set time. At first we can see the the output is
1111,1111 carry out 0 but once the carry in is included we get
0000,0000 carry out 1 so it added all the numbers are succesfully and
carried out the 1. Feel free to test the
adder as necessary.
The layout and proof of LVS can be seen below.
Now we will back up this lab
The files for this lab can be found here.
Return to labs