EE523 Assignment #3
Due: Friday, November 1.
Design a digital logic circuit that, when it receives a START
pulse, will multiply two 5-bit "sign-magnitude" format
numbers, producing a 9-bit sign-magnitude format product. (See
Example 8.20 on pages 551-552 of the text.)
Computation:
P(8:0) = M(4:0) x Q(4:0)
P(8),M(4),Q(4) are sign bits (0=plus, 1=minus)
P(7:0),M(3:0),Q(3:0) are 8/4-bit binary absolute values (magnitudes)
Multiplication Algorithm:
Implement an "add-and-shift" algorithm (4 iterations).
External controller inputs and outputs:
- CLOCK (input)
- START (input) - pulse high to initiate multiplication
M(4:0) x Q(4:0).
- DONE (output) - low while multiplication is in progress
and high when a valid product is present on P(8:0).
Notes: Final P(8:0) should remain on the outputs until
a new START pulse is received. You may add a RESET input to simulate
"power on".
Component Library:
Use logic gates and MSI modules from the 74LS library (ls_lib).
Items to turn in:
- Two schematics: controller and top-level circuit
- Two simulation listings, one for each schematic.
- State/ASM diagram, state table, excitation tables, etc. for
design of controller.
Hand-annotate your simulation listings to highlight "significant
events" - including start pulses, input values, and partial/final
products.
Schematic #1: Controller circuit
- Synchronous sequential circuit (use encoded or "one-hot"
state assignment)
- Generate a symbol for it (from "Miscellaneous" menu
in Design Architect)
- Simulate completely as a stand-alone circuit, showing that
it goes through the proper state transitions and produces the
proper sequence of control signals needed to control the datapath.
Schematic #2: Top-level design (datapath plus controller)
- Where possible, use MSI modules for the datapath (adders,
shift registers, etc.)
- Draw buses (rather than individual wires) to connect the datapath
modules.
- Within this schematic, instantiate your controller symbol,
described above, and connect it to the datapath elements.
- Simulate and turn in a simulation listing showing the following
computations:
(+5) x (+6), (-13) x (-9), (+14) x (-3)
- Do NOT run three separate simulations. Run a single simulation
showing the application of the three pairs of numbers and three
START pulses over some period of time, producing three products.