Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Q 1 ( demo ) : Design the following 'Keypad Number Display' which consists of the components: A ) A keypad ( 0 - 9

Q1(demo): Design the following 'Keypad Number Display' which consists of the components:
A) A keypad (0-9, A-F) represented by 16 switches.
B)16-to-4 priority encoder (behavioral, refer to Lab2, Part 2-1)
C)16x7 BCH ROM (it is a Hex-to-7Segment driver (Lab1 demo Q3) modeled as a ROM (Lab2
Part 3))
D)7 segment display
The design works as follows. The input (16 bit) is given by the 16 switches with each switch
representing a number in hexadecimal (so the range will be 0 to F). Higher numbers have greater
priority. The input is then encoded into a 4 bit number using the priority encoder (active high).
The 4 bit number is used as the input address to the ROM. The ROM should be initialized with 7
segment output values. The output of the ROM is sent to the 7 segment display. The display
should be off when no switch is activated. This will be controlled by an 'output enable' (OE)
signal from the Encoder, inverted and connected to an[0]. That is, when switches are off, OE?'0'
and an[0]='1'. All other times OE should be '1' and so an[0] should be '0'(segments on).
Example: a '9' on the keypad means '0000001x' on the switches. This input will be
encoded to the corresponding 4-digit binary, i.e,"1001". This is given to the ROM as its input
address and the ROM should have the correct 7 segment display code stored in address "1001". The
ROM then outputs the 7 segment binary code needed to display '9' on the selected seven segment.
Hints:
Design the priority encoder first. You can simplify the design, with 16 inputs, 4 outputs
and an output enable (OE). Refer to Part 2-1 where a 8-to-3 encoder has been designed.
Design the ROM. To read out data from the ROM you need integers as indexes. But since the
input address is in binary, you need to convert the binary to unsigned integer. Refer to the
VHDL_1164pkg.pdf section 2.4 on how to do that.
Use the encoder and ROM as components in a top level design. Appropriately connect the top level
input (sw[15:0]) and output ports (an[7:0] and seg[6:0]) to switches, anodes and led segments in
the xdc file. Note in the toplevel architecture, an[7:1] should be driven all 1s, while an[0] should be
connected to the encoder OE as shown in the figure.
image text in transcribed

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Big Data Systems A 360-degree Approach

Authors: Jawwad ShamsiMuhammad Khojaye

1st Edition

0429531575, 9780429531576

More Books

Students also viewed these Databases questions