Lab 6 Problems: Digital Design I Remember to solve these individually, working with your partner only when you get stuck, and seeking help from the TA only when you are both stuck. You may NOT use any calculators. Make sure you are on your own computer, editing your own file. This is your assignment for the week, not just for the day, so it is expected that you will not finish during this lab time. For each problem, make sure you write your answer on the line immediately after the prompt, and only on that line. For example: 0.) What is 2 + 2, in decimal? 0.answer) 4 ---ASSIGNMENT DESCRIPTION--- Each of the problems has the same process. 1: Identify the inputs and outputs - this will be given for you to make sure we all name them the same 2: Write the truth table - we will give you the table to fill in. Make sure you do not reorder the rows. 3: Unoptimized Sum of products. Make sure you format the answers correctly. - AND is not shown (place next to each other), OR is '+', and NOT is '!' - whitespace does not matter. - place your entire answer on one line - The order in which products occur doesn't matter ex. B A | C _______ 0 0 | 0 0 1 | 1 1 0 | 1 1 1 | 0 C = !BA + B!A 4: Draw K-map yourself on a piece of paper 5: Write out the minimized sum of products, using the K-map as a guide ---QUESTIONS--- 1.) In class, we went through the example of splitting a binary addition into single bit additions. This is simplest in terms of design time, but it does not lead to the fastest implementation. Instead, let's create a 2-bit adder as the smallest unit. In this case, there are four bits of input from the two numbers, in addition to the single input carry. There are two result bits and a single output carry. A0 is the least significant bit (the one on the right). inputs: A1, A0, B1, B0, Cin outputs: R0, R1, Cout For example, if we are performing an addition, it looks like this: A1 A0 Cin + B1 B0 _____ Cout R1 R0 Cin A1 B1 A0 B0 | Cout R1 R0 ____________________________ 1a) 0 0 0 0 0 | 1b) 0 0 0 0 1 | 1c) 0 0 0 1 0 | 1d) 0 0 0 1 1 | 1e) 0 0 1 0 0 | 1f) 0 0 1 0 1 | 1g) 0 0 1 1 0 | 1h) 0 0 1 1 1 | 1i) 0 1 0 0 0 | 1j) 0 1 0 0 1 | 1k) 0 1 0 1 0 | 1l) 0 1 0 1 1 | 1m) 0 1 1 0 0 | 1n) 0 1 1 0 1 | 1o) 0 1 1 1 0 | 1p) 0 1 1 1 1 | 1q) 1 0 0 0 0 | 1r) 1 0 0 0 1 | 1s) 1 0 0 1 0 | 1t) 1 0 0 1 1 | 1u) 1 0 1 0 0 | 1v) 1 0 1 0 1 | 1w) 1 0 1 1 0 | 1x) 1 0 1 1 1 | 1y) 1 1 0 0 0 | 1z) 1 1 0 0 1 | 1aa)1 1 0 1 0 | 1ab)1 1 0 1 1 | 1ac)1 1 1 0 0 | 1ad)1 1 1 0 1 | 1ae)1 1 1 1 0 | 1af)1 1 1 1 1 | Unoptimized Sum of products equations: 1ba) Cout = 1bb) R1 = 1bc) R0 = This problem is too large for a K-map. You are finished. 2.) In this problem, you are to figure out the logic of the overflow bit. Remember that the overflow bit is 1 if the result of the output is out of range for the signed representation of the number. It turns out that for this to be true, the sign of the result needs to be incorrect. First, write down a bunch of examples that differ in the upper-most bits and figure out the pattern. You can determine the value of the overflow bit just by looking at the uppermost bits of the inputs and output. Inputs: R (the leftmost bit of the result), A (the leftmost bit of the first operand), B (the leftmost bit of the second operand) Output: V (whether or not overflow occurred) R A B | V _________ 2a)0 0 0 | 2b)0 0 1 | 2c)0 1 0 | 2d)0 1 1 | 2e)1 0 0 | 2f)1 0 1 | 2g)1 1 0 | 2h)1 1 1 | Unoptimized sum of products equation: 2i) V = Draw the K-map and simplify Optimized sum of products equation: 2j) V = 3.) Given this truth table, do steps 2-4. A B C | O _________ 0 0 0 | 0 0 0 1 | 1 0 1 0 | 0 0 1 1 | 1 1 0 0 | 1 1 0 1 | 0 1 1 0 | 1 1 1 1 | 0 Unoptimized Sum of Products equation 3a) O = Draw the K-map and simplify Optimized Sum of Products equation 3b) O = 4.) Given this truth table, do steps 2-4. A B C D | O ___________ 0 0 0 0 | 1 0 0 0 1 | 1 0 0 1 0 | 1 0 0 1 1 | 1 0 1 0 0 | 1 0 1 0 1 | 0 0 1 1 0 | 0 0 1 1 1 | 0 1 0 0 0 | 1 1 0 0 1 | 0 1 0 1 0 | 0 1 0 1 1 | 0 1 1 0 0 | 1 1 1 0 1 | 0 1 1 1 0 | 0 1 1 1 1 | 0 Unoptimized Sum of Products equation 4a) O = Draw the K-map and simplify Optimized Sum of Products equation 4b) O = 5.) Given this truth table, do steps 2-4. A B C D | O ___________ 0 0 0 0 | 0 0 0 0 1 | 0 0 0 1 0 | 0 0 0 1 1 | 0 0 1 0 0 | 1 0 1 0 1 | 1 0 1 1 0 | 0 0 1 1 1 | 0 1 0 0 0 | 0 1 0 0 1 | 0 1 0 1 0 | 0 1 0 1 1 | 0 1 1 0 0 | 1 1 1 0 1 | 1 1 1 1 0 | 0 1 1 1 1 | 1 Unoptimized Sum of Products equation 5a) O = Draw the K-map and simplify Optimized Sum of Products equation 5b) O = 6.) For each problem use boolean algebra to simplify the equation. SHOW YOUR WORK, one step per line. You should use only variable names, negation (with `!`), AND (by putting terms next to each other), OR (with `+`), and parentheses. In addition, each line should start with an equal sign (`=`). The first step has been done for you to show how. Example) f(Z,Y,X) = !ZY!X + ZY!X + !YX = (!Z + Z)Y!X + !YX = Y!X + !YX 6a) f(A,B,C) = !A!BC + A!B!C + !ABC + !AB!C + A!BC 6b) f(A,B,C,D) = (A!D + !AC)(!B(C + BD))