You are on page 1of 3

Marc Manguray mmangura Lab section: 1 TuTh 07:00pm 09:00pm TA: Kaitlyn Garifi, Ehsan Hemmati, Russell Kirmayer,

r, Kendall Lewis Due: Jan 18, 2014 Lab Partner: NONE Title: Lab 1: Introduction to Digital Logic Purpose: The purpose of this lab is to get familiar with using the MultiMedia Logic (MML) application and how to simulate a simple logic schematic. The other parts of the lab will show the properties of Boolean algebra and how it applies and affects digital logic gates. Procedure: Part A of the lab was mostly following instructions provided by the lab sheet and the YouTube video that showed the basics of using the MML software. De Morgans Law (AB = (A+B)) is demonstrated by first connecting each switch A and B to an inverter, then connecting those inverters to an AND gate, after that, the AND gate is connected to an LED output, this represents AB. Next, connect the same A and B switches to a NOR gate, and connect the NOR to a different LED output; this will represent (A+B). The testing results in both outputs show that AB and (A+B) are exactly the same, therefore results as proof for De Morgans law. For Part B, The truth table is deconstructed using the Sums of Products technique (See Table 1and Part B1a). Then, each AND combination is given its own AND gate with three inputs, proper NOT inverters are also included for each respective gate based on the non-simplified algorithm. The AND gates are then connected to a three-input OR gate, which is then connected to the output. For the second piece of Part B, only NAND gates are used for the logic. In order to do so, the Sums of Products algorithm needed to be simplified so that only NAND gates were used (Algorithm Part B2a). The second construction was almost a complete redesign of the first construction. First, the inverters for switch A were merged to become just one inverter. Second, switch B also gets a single inverter also, which then connects with a NAND gate along with the now inverted A. Next, A is also connected to a different NAND gate, this time its connected with switch C. C gets no inverters at all. Then the NANDs are connected to another NAND which is then connected to an output. To make testing more obvious, instead of making an entirely different set of switches for the second construction, the switches for the first construction are connected to the second. Because both constructions have identical outputs, this means that the implementation of the NAND gates is correct. After doing the simplification for Part B, Part Cs algorithm follows Part Bs up until only one of each switch is mentioned (minimization steps are detailed in Algorithm Part C). Its respective gates are then connected to each switch and are then connected to an output. The output is the same as the implementations in Part B which means that the implementation is correct.

Algorithms and Other Data TABLE 1: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 OUTPUT 1 1 0 1 0 0 0 0

ABC ABC ABC

PART A: De Morgans = (A+B) = AB Since AB = OUTPUT and (A+B) = OUTPUT Then, AB = (A+B) PART B: 1.) a.) SUMS OF PRODUCTS: ABC + ABC + ABC = OUTPUT b.) Other Data NOT gates * transistors in NOT gates: 6*2 3-input AND gates * transistors in 3-in AND gates: 3*8 3-input OR gates * transistors in 3-in OR gates: 1*8 # of Transistors = 38 2.) a.) ABC + ABC + ABC = OUTPUT AB(C + C) + ABC AB(1) + ABC AB + ABC A(B+BC) A(B+BC+BC) A(B+C(B+B)) A(B+C(1)) A(B + C) AB + AC ((AB)(AC)) = OUTPUT (Sums of Products) (Distributive) (Complement) (Identity) (Distributive) (Factor) (Distributive) (Complement) (Identity) (Distributive) (De Morgans)

b.) Other Data NOT gates * transistors in NOT gates: 2*2 NAND gates * transistors in NAND gates: 3*4 # of Transistors = 16

PART C: ABC + ABC + ABC = OUTPUT AB(C + C) + ABC AB(1) + ABC AB + ABC A(B+BC) A(B+BC+BC) A(B+C(B+B)) A(B+C(1)) A(B + C) = OUTPUT (Sums of Products) (Distributive) (Complement) (Identity) (Distributive) (Factorization) (Distributive) (Complement) (Identity)

Challenges: The simplification of the algorithm towards a purely NAND gate logic structure was rather tricky because of the lack of experience and familiarity regarding Boolean algebra and the process of changing an OR logic into an AND logic. It turns out for example, that using De Morgans law, if (x+y) can become (xy) then for, AB + AC if we make x = AB and y = AC then it because (xy) becomes ((AB)(AC)). Although once that obstacle was solved, it was much easier to progress to the rest of the lab. Other Information: There are 2 transistors in an inverter. 8 in a 3-input AND gate 8 in a 3-input OR gate. 4 in a 2-input NAND gate. The numbers of transistors in each logic construction were calculated and recorded based on the number of gates times the number of transistors in that specific gate added all together (Algorithm Part B1b and Part B2b). The original design for the first circuit has 38 transistors, while the purely NAND redesign has 16 transistors. AND and OR gates have more transistors because the basic construction of those gates rely on an inverted NAND or NOR gate which adds another CMOS pair to the build. The final circuit (Part C) has 16 transistors. 4 from the inverter gates, 6 from the OR gate, and 6 from the AND gate. Conclusion: Familiarity of the MML program has been achieved. Basic placement of switches, logic gates, output devices, and how to run a simple simulation was understood and accomplished. The basics of labeling the constructions properly and how to connect gates with wires were also learned. As expected, De Morgans Theorem was proven through a simple MML simulation as well as implemented during the challenge of reducing an algorithm consisting of many OR and AND logics to a purely NAND based construction. This provides a good introduction to what Boolean algebra and digital logic can do in terms of simplifying complex inefficient structures into something simpler to understand.

You might also like