CSE370 Assignment 5
Distributed: 21 April 2000
Due: 28 April 2000
Reading:
-
Katz, Chapter 4 (pp. 207-224).
-
Katz, Chapter 5 (pp. 240-266).
Exercises:
-
Katz exercise 3.6 (c).
-
Katz exercise 3.8 (d).
-
Construct a schematic for the function F of the example in Section 3.4.3
(page 144) and its hazard-free implementation (F2). Recreate the timing
diagrams shown in Figure 3.36 and Figure 3.38 using the DesignWorks waveform
display.
-
Implement the 2-bit UComp block from assignment #4 using 3 16:1 multiplexers.
Show you truth table and how you derived the inputs to the multiplexers.
Now reimplement the circuit using 3 8:1 multiplexers controlled by the
inputs A1, A0, and B1 (you can assume that B0 and B0' are available). Turn
in a DesignWorks schematic that uses the Mux-8 devices in the Primlog library
(make sure to tie the EN input of the multiplexers to 0).
-
Katz problem 4.15 (b) and (c).
-
Implement the 2-bit UComp block of assignment #4 using the 16H8
PAL of Fig. 4.72 (i.e., print out the figure and places "x"s where
you want connections made in the AND plane. Ignore the first product term
in each group that goes to the tri-state buffer (triangle) after the OR
gate. Order the inputs as A1, A0, B1, B0 and the outputs as G, E, L from
top to bottom. Do the same thing for the "third block" that combines the
result of the 2 2-bit UComp blocks.
-
Draw schematics for two versions of a full-adder in DesignWorks. One should
be done using a half-adder as a sub-block and another without sub-blocks.
Make sure to read Chapters 7 and 8 of the DesignWorks manual that describe
how to create your own symbols. Turn in the schematics for each type of
full-adder and for the half-adder symbol. Simulate your schematics. Verify
that your designs are correct by trying all 8 input combinations in each
case. Turn in the timing waveforms as well.
-
Construct a 4-bit ripple-carry adder using the full-adder implementation
from the previous problem (use the one built using the half-adder as a
sub-block). Turn in the schematic. To verify your design, you may want
to use "Hex Keyboard" symbol in the "Primio" library to make it easier
to input a 4-bit number. Turn in the timing waveforms showing what happens
when you have "1111" and "0000" as the numbers to be added and you change
the "0000" to "0001". How long does it take the sum to get to the right
value? Repeat this experiment starting with "1010" and "0000" and changing
the "0000" to "0101".
Materials:
Rationale:
-
To practice how to convert word problems into a combinational logic formulation.
-
To compose hierarchical combinational circuits.
Comments to: cse370-webmaster@cs.washington.edu
(Last Update: )