DLD Project
DLD Project
Deadlines:
Last date for title and group selection (groups of 3 students) – May 11, 2021
Last date for project submission – June 08, 2021
Tasks:
You are expected to have a working design of your title.
This will require a report showing all the design steps and a working Proteus or Multisim simulation
file.
Email these files on or before the deadline to the email address - feventadesse3@gmail.com .
Your design should include truth tables, minimization, realization with gates or other combinational
logic circuits, state diagrams, state tables, transition tables, minimizations, implementations, etc. as
needed.
In your design you can only use ICs you have learned in class, such as basic logic gates (OR, AND,
NAND, XOR, XNOR, NOR, NOT), combinational building blocks (full adder, comparator, MUX,
DEMUX, encoder, decoder) and memory elements (JK, D and T flip-flops and shift registers).
Additional features can warrant additional marks.
Titles
1. 12-hour Digital Clock
A digital clock showing seconds (00-59), minutes (00-59), hours (01-12) and an AM/PM indicator. A
counter can be designed to count seconds, minutes and hours using synchronous sequential logic circuit
design. Then the outputs of the counters can be decoded and displayed on a 7-segment display. An
additional 7-segment display can be used to indicate A (for AM) and P (for PM).
2. Digital Stopwatch
A digital stopwatch that has start, stop, and reset functionality. It will start counting when the user enters a
button to start, from 00:00 up to 59:59 and back again until the user stops it or resets it. A counter can be
used to count for the seconds as well as the minutes and its output can be decoded on a 7-segment display.
3. Digital Countdown Timer
Many sporting events, such as basketball, football, volleyball, etc. are timed. The countdown timer for such
events can be designed using down counters and combinational logic gates. Design a 12-minute countdown
timer (i.e., 12:00 – 00:00) and decode the output to be displayed on a 7-segment display.
Addis Ababa Institute of Technology
School of Electrical and Computer Engineering
4. 24-hour Digital Clock
A digital clock can also display the time in a 24hours basis (also known as military time). In this design,
the digital clock will be showing seconds (00-59), minutes (00-59) and hours (00-23). A counter can be
designed to count seconds, minutes and hours using synchronous sequential logic design. Then the outputs
of the counters can be decoded and displayed on a 7-segment display.
5. Christmas Light Sequencer (multiple groups can select this title with different ‘patterns’)
A novel Christmas light sequencer circuit or any other type of sequencing LED ‘moving dot’ can be
designed using counters. This circuit will light LEDs of a specific pattern. The output of the counter can be
used to light an array of LEDs (i.e., Christmas Lights). (Different colored LEDs can also be lit with different
patterns apart from traditional Christmas Lights)
6. Digital Scoreboard
Many sporting events and competitive sports have scoreboards to indicate the scores of the opposing teams.
A counter can be used to indicate the digital value of the score in a game between two opponents. Design
a double-digit counter (00-99) of two opposing teams that will only count when a button is pressed on either
side of the teams.
7. 4-bit Calculator (Add, Sub, Inc and Dec) with display
Performs arithmetic operations like addition, subtraction, increment operation and decrement operation.
The inputs are 4-bit signed numbers represented in 2’s complement for the Adder/Subtractor unit. One 4-
bit signed number is required for the increment and decrement units. The 4-bit outputs of the two units are
fed to a selection circuit. The selection circuit outputs a 4-bit result based on the type of operation selected.
This circuit can be realized using multiplexers. And finally, the output is displayed on a 7-segment display
with an additional LED to indicate if the output is negative.
8. 8-bit Bitwise Logical Operation with display
Performs the bitwise operations OR/XOR/AND/XNOR/NOT/SHL (shift bits left)/SHR (shift bits right)
and clear (make output 0) on two 8-bit binary numbers. The output of these operations is fed to a selector
to output the 8-bit result based on the type of operation selected. This circuit can be realized using
multiplexer. The resulting 8-bit binary number is converted to hexadecimal (i.e., 0-F) and is displayed on
two 7-segment displays.
9. 8-bit multiplication and display
Performs the multiplication of two 8-bit unsigned binary numbers using full adders and shift registers. The
result is then decoded to be displayed on a 7-segment display (can be two-digit decimals) with an additional
LED to indicate overflow.
10. 8-bit division and display
The user inputs the dividend and the divisor (maximum 2-digit decimal), and the division is performed
returning the quotient and the remainder. These outputs are then decoded and displayed using 7-segment
display.
Addis Ababa Institute of Technology
School of Electrical and Computer Engineering
11. Average calculator
Calculates the average of two single digit decimal numbers (0-9). The user inputs two numbers and they
are added using full adders and a bitwise right shift (i.e., division by 2) is performed. The output is displayed
on a 7-segment display including decimal point if there is any.
12. Triangular Number Calculator
The triangular number of n is calculated by adding up all the numbers below (and including) n. Therefore,
as the user inserts a number (from 0-9) successive addition, accumulation and comparison is performed to
find the triangular number of the inserted number. And the result is displayed on a 7-segment display.
13. Hamming Weight Calculator
The Hamming Weight of a binary number is simply a count of the number of 1's it contains. So, the
Hamming Weight of 100001 is 2 and 1101 is 3. Therefore, the hamming weight of an 8-bit binary number
is calculated, and the result is displayed on a 7-segment display.
14. Square Calculator
Square is the same as multiplying a number by itself. Therefore, multiplication is performed by using full
adders and shift registers. The square of a number (0-9) is calculated, and the result is displayed on a 7-
segment display including an overflow indicator.
15. Game Show Circuit
Many game shows use a circuit to determine which of the three contestants ring in first. A circuit can be
designed to determine which of three contestants ring in first. It has three inputs S2, S1 and S0 which are
connected to the contestants' buttons. The circuit has three outputs Z2, Z1 and Z0 which are connected to
LEDs to indicate which contestant rang in first. There is also a reset button that is used by the game show
host to asynchronously reset the flip-flops to the initial state before each question. If contestant 0 rings in
first, the circuit turns on LED 0. Once LED 0 is on, the circuit leaves it on regardless of the inputs until the
circuit is asynchronously reset by the game show host. If contestant 1 rings in first, the circuit turns on LED
1 and leaves it on until the circuit is reset. If contestant 2 rings in first, the circuit turns on LED 2 and leaves
it on until the circuit is reset. If there is a tie, all LEDs are turned on.
16. Combinational Lock (multiple groups can select this title with different ‘correct key
combinations’)
Used to activate an output when a correct combination of keys is entered. The lock has four buttons (keys),
0, 1, 2 and 3. Each button normally (when not pressed) outputs a logical 0. When a button is pressed, it
outputs a logical 1. The buttons are connected to a 4 to 2 encoder. The encoder outputs a two-bit code
according to the button pressed.
The outputs of the encoder are connected to a synchronous sequential circuit. The sequential circuit is used
to determine whether the key combination entered is correct or not. A correct key combination contains a
sequence of three keys (e.g., “123”). If the correct key combination is entered, then the “OPEN” output is
activated (it becomes HIGH). Otherwise, the output remains LOW. Once the “OPEN” output is activated,
it remains activated until any key is pressed.
Addis Ababa Institute of Technology
School of Electrical and Computer Engineering
If an incorrect key combination is entered for three consecutive times, the “ALARM” output is activated
(it becomes HIGH). Otherwise, the output remains LOW. Once the “ALARM” output is activated, it
remains activated until the correct key combination is entered. You can make two separate circuits for the
two outputs to simplify the design.
17. Traffic Light Controller
Design a traffic light system with a pedestrian crossing function. Pedestrians could push a button to request
that the traffic be signaled to stop to provide them with a safe crossing. Such a system would have three
lights for the vehicles on the road: red, yellow, and green. Let us call these signals R, Y, and G. For the
pedestrians we would have a light to signal that the traffic has been stopped and it is safe to cross. Let us
call this signal M ('M' for man — the signal is usually a green walking man). We will also need an input
button for pedestrians to push when they want to cross the road.
18. Random Number Generator
A 6-bit pseudo random number is generated using shift registers and combinational logic gates. At a push
of a button, the output of the random number generated is then decoded into two 7-segment displays and a
number from 1-63 is displayed.
19. Number Guessing Game (multiple groups can select this title with different ‘reference
numbers’)
A reference number (between 0 and 63) is fed to the circuit beforehand. The user guesses the stored number.
A display shows whether the entered number is > = or < than the stored number. The user has 5 tries to
guess the number or else an alarm will sound. A comparator circuit along with a counter can be used to
compare the entered number and count the number of tries before the alarm.
20. Elevator (lift) control system
In a 5-floor system, the elevator can be called from any direction, therefore there should be an indicator to
show the status of the elevator (i.e., which floor it is on). Then a user can call it from any of the floors above
or below the current state. In this case it should indicate which direction it is going. And finally stop when
it reaches its destination. An UP/DOWN counter can be used along with a multiplexer, a comparator, and
a decoder to display the state of the elevator on a 7-segment display.
21. Vending Machine Controller
A vending machine is an automated machine that provides items such as snacks, beverages, or lottery tickets
to consumers after money is inserted into the machine. Design a vending machine controller that accepts 5
cents, 10 cents and 25 cents. When the value of the money inserted equals or exceeds 20 cents, the machine
vends the item and returns change if any and waits for the next transaction.
22. Car Alarm
23. Home Alarm System
24. Digital Safe
25. Smart Car Parking System
26. Your own preferred title