Documente Academic
Documente Profesional
Documente Cultură
I started with first writing down the Boolean equation that describes the 2-input mux on the gate level
diagram.
The truth table is easily found by plugging in all possible values of A, X0, and X1 into the inputs and
recording Y.
A X1 X0 Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
Lab1 Page 1
2 - Transistor Level Schematic (Virtuoso)
I decided against using symbols because of the simplicity of the circuit. Any larger than this, and I'm sure it
would be wise to work at the gate level .
Lab1 Page 2
3 - Logic Simulation (irsim)
cmd.bat
stepsize 50
analyzer A X1 X0 Y
vector in A X1 X0
set in 000
s
set in 001
s
set in 010
s
set in 011
s
set in 100
s
set in 101
s
set in 110
s
set in 111
s
Finally, using IRSIM with the input script and the CMOS description file found on the TA page.
>irsim cmos.prm sch.sim -sim.cmd
Lab1 Page 3
4 - Hand Calculations
First step was to calculate the capacitive load for the final NAND gate. The specification call for the mux
driving 32 minimum size CMOS inverters, and a 100fF wiring cap.
Estimating the capacitive load of one CMOS inverter using only the gate capacitances for both the NMOS and
PMO S device :
Solving for final load by multiplying Cinv by 32 and adding the 100fF wiring cap:
Calculate the current required to switch the load in the allotted 600ps propagation delay.
Lab1 Page 4
5 - Table of Calculations
Lab1 Page 5
6 - Simulation Waveforms
After first simulating the circuit with the orginal calculated Wp and Wn, I realized that not taking into
account some of the parasitics caused me to underestimate the current required to charge the load.
By increasing my Wn to 660nm and my Wp to 2.22um for the last nand gate to take into account the
parasitics, I was able to meet the 600ps specification for rise time.
Lab1 Page 6
7 - Layout Design
The layout design was completed successfully and passed the CRC and all design constraints.
Lab1 Page 7