CS/ECE 3810
Solutions
–
Homework #6
Fall 2009
This problem asks you to design an overflow detection unit for a 32bit ALU.
This
problem is based on these diagrams:
(I have modified the diagram for the ALU for the
highest bit to include a ‘Signed’ inpu
t to the overflow detection unit.)
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
The left diagrams are the singlebit ALUs that are combined to form the 32bit ALU on
the right.
The lowerleft ALU is only used for the highest bit of the 32bit ALU.
As specified in the problem, and as shown in the diagram, there are six inputs to the
overflow detection unit:
high bit of
a
, high bit of
b
,
Binvert
,
Sum
,
Carry
, and
Signed.
The goal of this problem is to design a logic circuit to detect overflow using only these
inputs.
Discussion
All that is required for the discussion is a description of the six cases where overflow will
occur:
1.
Two positive numbers should not ever sum up to be a negative number.
Overflow
will occur if both
a
and
b
are false (indicating positive numbers),
Signed
is true
(indicating signed arithmetic),
Binvert
is false (indicating addition), and
Sum
is
true (indicating a negative number).
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '09
 SomeProfessor
 Addition, Subtraction, Negative and nonnegative numbers

Click to edit the document details