390 likes | 512 Vues
This document presents a thorough review of key concepts in Boolean algebra, including simplification techniques using Karnaugh maps and algebraic methods. It addresses fundamental topics such as memory address representation using base plus displacement format in instruction sets, reasons for uniform instruction lengths in CPUs, and arithmetic representation in binary systems. Additionally, it covers the implementation of two-bit counters with flip-flops and provides examples of floating-point arithmetic, illustrating the essential principles of computer architecture and digital logic design.
E N D
COSC 3330/6308First Review Session Fall 2012
First Question • Simplify the following Boolean expression. • w (v x y + y) +w' y + v w x + y
Answer • w (v x y + y) +w' y + v w x + y =v w x y + w y + w' y + v w x + y
Answer • By Karnaugh maps: • v w x + y • By algebra: • w (v x y + y) +w' y + v w x + y =v w x y + w y + w' y + v w x + y =y (v w x + w + w' + 1) + v w x =y + v w x
Second Question • Give a simplified implementation for the following expression using only NAND gates. • w' (x y) + w x y' + x' y'
Answer • w' (x y) + w x y' + x' y' =w' (x' y + x y') + w x y' + x' y' =w' x' y + w' x y' + w x y' + x' y'
Answer • w' x' y + w x y' + w' x y' + x' y' • w' x' + y'
Answer • Using algebra: • w' (x y) + w x y' + x' y' =w' (x' y + x y') + w x y' + x' y' =w' x' y + w' x y' + w x y' + x' y' =w' x' y + x y' (w' + w) + x' y' =w' x' y + x y' + x' y' =w' x' y + y' =w' x' y + w' x' y' + y' =w' x'( y + y') + y' = w'x' + y'
Reminder • A NAND B = (A B)' = A' + B' • (NOT A) NAND(NOT B) ( A' B')' = A+ B • NOT(A NAND B) = (A B)'' = A B • (A NAND B) NAND (C NAND D) =((AB)' (CD)')' = AB + CD
w' x' y Answer (w'x')' = w + x ((w + x)y)' = w'x' + y'
Third Question (I) • What is the main reason for using a base plus displacement representation of memory addresses in an instructions set?
Answer • What is the main reason for using a base plus displacement representation of memory addresses in an instructions set? • To be able to access a very large address space with as few bits as possible in order to keep instructions as short as possible • MIPS IS uses 5 bits to specify which register and 16 bits for the displacement
Third Question (II) • What is the main reason for requiring all instructions to have the same length? • To allow the CPU to fetch the next instruction before the current instruction is decoded • Would not work if we had 16-bit and 32-bit instructions
Fourth Question • Assume we have a very basic microprocessor doing 4-bit arithmetic. • How would you represent the decimal value – 8 in signed arithmetic?
Answer • How would you represent the decimalvalue – 8 in signed arithmetic? • 1000
Fourth question (II) • What would be its result of adding 0100 to 0101 assuming that the numbers being added were • Unsigned integers? • Signed integers?
Answer • What would be its result of adding 0100 to 0101 assuming that the numbers being added were • Unsigned integers? • Signed integers? • 0100 + 0101 = 1001 • 1001 represents 9 in unsigned arithmetic • 1001 represents -7 in signed arithmetic
Explanation • We use two complement's arithmetic • To change the sign of a positive value • Negate all its bits then add 1 • To change the sign of a positive value • Negate all its bits then add 1 • For 1001 we do • not(1001) + 1 = 0110 + 1 = 0111 = 7
Fifth question • Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice.
Answer • Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice. • How many flip-flops do we need?
Answer • Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice. • How many flip-flops do we need? • Two because we have 22 =4 states
Answer • Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice. • How many flip-flops do we need? • Two because we have 22 =4 states
Answer • Draw the Karnaugh maps for these flip-flops: • Least significant bit y
Answer • Draw the Karnaugh maps for these flip-flops: • Least significant bit y
Answer • Draw the Karnaugh maps for these flip-flops: • Most significant bit x
Answer • Draw the Karnaugh maps for these flip-flops: • Most significant bit x
Answer • The system equations are • y = y i • x = x iy = x(i' + y') + x' iy
Answer • We will use T flip-flops for x and y • y will be triggered by input i • x will be triggered by input iy
Sixth Question (I) • Which decimal values are stored in the following single precision floating point numbers?
Sixth Question (II) • Sign is negative • Exponent is 129 -127 = 2 • Coefficient is 1.01two = 1 + ¼ • - (1 + ¼) 22 = -5
Sixth Question (III) • Sign is positive • Exponent is 124 – 127 = -3 • Coefficient is 1.1two = 1+ ½ = 1.5 • 1.5 2-3 =1.5/8 = 3/16
Seventh Question • Multiply the two following floating-point numbers:
Answer • Multiply the two following floating-point numbers: • Compute the new sign • Add the exponents • Multiply the coefficients
Answer • Multiply the two following floating-point numbers: • Compute the new sign: Negative • Add exponents: (129 – 127) + (129- 127) • Multiply the coefficients: 11
Answer Result is -1 24 Sign bit is 1 Biased exponent is 127 + 4 =131 Coefficient is 1