ENGR338 Lab 2021 Spring
Lab 9 Design a Simple 8-bit ALU
Tyrone Bracker
tabrackeryazzie@fortlewis.edu
Lab 9 Report: The 8-bit Arithmetic Logic Unit
Introduction
This lab dealt with one thing and that's the arithmetic logic unit or
"ALU" for short. There were four operations this ALU could execute and
those were addition, subtraction, AND logic, & OR logic. The goal
was to developing a schematic, test that schematic in LTSpice, then
finish the lab with the layout of the 8-bit ALU. The real challenge
came towards the end when it came time to create the layout, for many
reasons.
Materials and Methods
Task 1
was about creating the schematic and running it through some
simulations to check the logic. The schematic consisted of an 8-bit AND
gate, 8-bit OR gate, different inverters for all three8-bit MUXs, and
the 8-bit Full Adder developed in the last lab. Below you can see the
final schematic along with the DRC scan successfully passed.
Figure 1. Final 8bit_ALU{sch} design with DRC scan passed!
After
the schematic was complete, three simulations were ran in LTSpice to
further prove that the design was correct and the logic for each
operation worked. The different operations were determined by variables S1 and S0; if
S1S0 = "00" then that would make the ALU operate in AND logic, "01" for
OR logic, "10" for addition, & "11" for subtraction. Variables
S[0:7] will represent the output of A and B depending on the operation.
Co[7] is used in case there's a overflow and it "carries out" that 9th
bit. In the following four figures are demonstrations of each simulation outputting the correct results.
Task 2 was when the layout was designed for the 8-bit ALU. This took a lot of time and immense concentration to complete. The overall structure was followed by what was provided in the lab itself.
I made the mistake of importing different designs from previous labs
and had to go through and replace/update almost 6 to 8 designs that I
had already made. Eventually I had successfully created the layout with
it passing the DRC and NCC scans, all of which can be seen below.
Figure 6. Final 8bit_ALU{layout} design
Figure 7. 8bit_ALU{layout} with DRC and NCC scans successfully passed.
Discussion
This
lab was pretty challenging but I'm sure that was the idea. I'd say it's
a good last lab to have, since it can feel like the ultimate design. At
times I did get frustrated with ElectricVLSI because of the way it
imports the same design over to a new library but with time I managed
to finish the ALU. Some parts were confusing and required help from
others but I know that that's part of the process sometimes. I'm glad
to be done with this lab, it certainly made me work for that final
successful NCC scan.