SlideShare a Scribd company logo
1 of 13
Download to read offline
63
IMPLEMENTATION OF ALPHANUMERIC ON A SEVEN
SEGMENT DISPLAY
OBJECTIVE
The main idea behind this is to implement the BINARY INPUT TO DISPLAY LETTERS AND
NUMBERS ON A SEVEN SEGMENT DISPLAY available on the NEXYS 4 DDR. In this the
binary input is applied through switches available on the board and the output will be a
combinational display of number’s (0-9) and letters from (a to z).
Tools:
Software Tools– Xilinx VIVADO design suite 14.2
Hardware Tools – Nexys 4 DDR
Basic idea:
Generally the seven segment displays are used in digital circuits to represent numbers. One of the
most common applications is in digital watches. We can implement the seven segment display
using BCD/HEXA input in which all the numbers from 0 to 9 are displayed and a letters from a
to f can be implemented, but using the single input values/ ASCII values (in binary format) as
inputs we wanted to generate all the letters from a to z and numbers from 0 to 9 on a single
platform.
The general idea representation is as shown below:
Letter ASCII Code Binary Letter ASCII Code Binary
a 097 01100001 A 065 01000001
b 098 01100010 B 066 01000010
c 099 01100011 C 067 01000011
Here we use the switches available on the Nexys board to provide the binary bits as input. The
binary input corresponding to the ASCII value has a letter associate with it which is displayed on
the seven segments corresponding to the VHDL program.
An example representation of the visual idea of the project described:
64
Block diagram
Fig.1 Block Diagram for Alpha Numeric on Seven Segment.
Seven Segment Display
A seven segment display is a form of electronic display device which is used to display
numerals. We can commonly find the seven segment display in digital devices which is used to
represent the numeric information to user, like watches, calculators, electronic instruments etc.
The name seven segment display itself states that it is a combination of seven segments of
display which are arranged in a fashion to represent numerals, when programmed in different
fashion. These seven different segments are marked from A-G as in, fig (2).
Fig 2: A Generalized Seven Segment Display.
FPGA Hardware Kit
6 5 4 3 2 1 0
Switches
s
Input
ASCII
Code
Simulation
& Synthesis
in Vivado
14.2
Simulated
Waveform
Seven segment array
Output Seven
Segment
Display
65
Types of seven segment display:
There are two types of seven segment display namely
1) Common Anode 7-segment display
2) Common Cathode 7-segment display
Display of Numerals &Letters
All the numerals can be displayed on the seven segment display. Along with the displaying of
numerals we can also display all the alphabets on the seven segments. A series of seven
segments display can also be used to represent words and scrolling sentences. The different
display of letters can be seen in the fig (2).
Fig 2: Seven segment display of letters and numerals
The project gives a basic idea of how the seven segment display is used to implement the display
of numerals and letters using 8 bits of binary input, using the NEXYS 4 DDR FPGA kit.
We have used VHDL coding to program the FPGA [XC100tcsg1] so that the binary input given
through switches is decoded according to the program which consists of defined modules to
convert the binary input to corresponding seven segment output. According to the program
output the seven segments glow to represent the corresponding output.
66
In the project we have used a common anode type Seven segment display, hence to make a
segment ‘ON’ we have to provide logic ‘0’ and to make a segment ‘OFF’ we have to provide
logic ‘1’.
Binary Switch Logic
INPUTS
Fig.3 Segment and switch number representation
1 1 1 1 1 1 1
0 0 0 0 0 0 0
SWITCH
ON
SWITCH
OFF
sw1 sw2 sw3 sw4 sw5 sw6 sw7
67
Aim:
To program the FPGA [XC100tcsg1] in VHDL for display numerals and letters on the seven
segments by providing 8 bit binary as input and to verify the output using the hardware kit.
Apparatus:
Hardware: Nexys 4 DDR FPGA kit.
Software: Xilinx Vivado design suite 14.2.
Verilog code:
module binary_to_seven_segment_display_project(
input [6:0] ip,
output a,b,c,d,e,f,g,
output [7:0] an
);
reg a,b,c,d,e,f,g;
reg [7:0] an = 8'b11111110;
always @ (ip) // checks for every change in input
// Code for Alphabets
if(ip[5] && ip[6])
begin
if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: a1
a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin : b1
a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: c1
a=1'b1; b=1'b1; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: d1
a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
68
else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: e1
a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b0; g=1'b0;
end
else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: f1
a=1'b0; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: g1
a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0;
end
else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4])
begin: h
a=1'b1; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4])
begin: i
a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b1;
end
else if(~ip[0] &&ip[1] && ~ip[2] &&ip[3] && ~ip[4])
begin: j
a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b1;
end
else if(ip[0] &&ip[1] && ~ip[2] &&ip[3] && ~ip[4])
begin: k
a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0;
end
else if(~ip[0] && ~ip[1] &&ip[2] &&ip[3] && ~ip[4])
begin: l
a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1;
end
else if(ip[0] && ~ip[1] &&ip[2] &&ip[3] && ~ip[4])
begin: m
a=1'b0; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b1; g=1'b1;
end
else if(~ip[0] &&ip[1] &&ip[2] &&ip[3] && ~ip[4])
begin: n
a=1'b1; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b1; g=1'b0;
end
else if(ip[0] &&ip[1] &&ip[2] &&ip[3] && ~ip[4])
begin: o
a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
else if(~ip[0] && ~ip[1] && ~ip[2] && ~ip[3] &&ip[4])
begin: p
69
a=1'b0; b=1'b0; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] &&ip[4])
begin: q
a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0;
end
else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] &&ip[4])
begin: r
a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b1; g=1'b0;
end
else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] &&ip[4])
begin: s
a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0;
end
else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] &&ip[4])
begin: t
a=1'b1; b=1'b1; c=1'b1; d=1'b0; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] &&ip[4])
begin: u
a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b1;
end
else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] &&ip[4])
begin: v
a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b1;
end
else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] &&ip[4])
begin: w
a=1'b1; b=1'b0; c=1'b1; d=1'b0; e=1'b1; f=1'b0; g=1'b1;
end
else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] &&ip[4])
begin: x
a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] &&ip[4])
begin: y
a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0;
end
else if(~ip[0] &&ip[1] && ~ip[2] &&ip[3] &&ip[4])
begin: z
a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
end
else
70
begin: numbers
if(~ip[5] && ~ip[6])
// Code for Numbers
begin
if(~ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: zero
a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b1;
end
else if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: one
a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1;
end
else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: two
a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0;
end
else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4])
begin: three
a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b1; g=1'b0;
end
else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: four
a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: five
a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0;
end
else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: six
a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4])
begin: seven
a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1;
end
else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4])
begin: eight
a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0;
end
else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4])
71
begin: nine
a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0;
end
else
begin: null
a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b1; f=1'b1; g=1'b1;
end
end
else
begin
=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b1; f=1'b1; g=1'b1;
end
end
endmodule
72
Verification:
Simulation:
The process of verification of functional correctness of the written code is called simulation
The above code is simulated and verified in the Xilinx Vivado design suite 14.2 for the exact
output. It needs an additional test bench to be written for the purpose of verification in which we
predefine the values.
Synthesis:
The process of mapping the implemented code onto a real world device is known as synthesis.
This is again done by the software
After the functional verification we have dumped the code into the hardware kit, Nexys 4 DDR
to verify the results on the seven segment display available on the kit
Output
The result of the above written code is as shown below:
Simulated output:
73
Synthesized output
When i/p is 1001010 output represented as J When i/p is 01100001 output represented as a
When i/p is 0000000 output represented as 0 When i/p is 0000111output represented as 7
74
Drawbacks:
In the above seven segmented display we cannot display few letters accurately for user
understanding, the user has to compromise between some letters such as W,X,K etc.
Conclusion:
The implementation of ASCII code to alphanumeric seven segment display has been performed
in the Vivado design suite and the simulated output is verified.
The Synthesized output has been performed and observed on the Xilinx Nexys 4 DDR FPGA kit
and the sample kit picture has been added to the project report.
75

More Related Content

What's hot

Laboratory exercise 5
Laboratory exercise 5Laboratory exercise 5
Laboratory exercise 5swapnilswap11
 
Decoder for digital electronics
Decoder for digital electronicsDecoder for digital electronics
Decoder for digital electronicsIIT, KANPUR INDIA
 
verilog code for logic gates
verilog code for logic gatesverilog code for logic gates
verilog code for logic gatesRakesh kumar jha
 
Digital electronics- BCD & Decoder
Digital electronics- BCD & DecoderDigital electronics- BCD & Decoder
Digital electronics- BCD & DecoderPritam Shil
 
encoder and decoder in digital electronics
encoder and decoder in digital electronicsencoder and decoder in digital electronics
encoder and decoder in digital electronicsvikram rajpurohit
 
Ceng232 Decoder Multiplexer Adder
Ceng232 Decoder Multiplexer AdderCeng232 Decoder Multiplexer Adder
Ceng232 Decoder Multiplexer Addergueste731a4
 
Verilog full adder in dataflow & gate level modelling style.
Verilog full adder in dataflow  & gate level modelling style.Verilog full adder in dataflow  & gate level modelling style.
Verilog full adder in dataflow & gate level modelling style.Omkar Rane
 
VLSI experiments II
VLSI experiments IIVLSI experiments II
VLSI experiments IIGouthaman V
 
seven segment display using 74LS78 IC decoder
seven segment display using 74LS78 IC decoderseven segment display using 74LS78 IC decoder
seven segment display using 74LS78 IC decoderVeni Dan
 
The IoT Academy IoT Training Arduino Part 3 programming
The IoT Academy IoT Training Arduino Part 3 programmingThe IoT Academy IoT Training Arduino Part 3 programming
The IoT Academy IoT Training Arduino Part 3 programmingThe IOT Academy
 

What's hot (20)

Laboratory exercise 5
Laboratory exercise 5Laboratory exercise 5
Laboratory exercise 5
 
Decoder for digital electronics
Decoder for digital electronicsDecoder for digital electronics
Decoder for digital electronics
 
verilog code for logic gates
verilog code for logic gatesverilog code for logic gates
verilog code for logic gates
 
Digital Logic Rcs
Digital Logic RcsDigital Logic Rcs
Digital Logic Rcs
 
Digital electronics- BCD & Decoder
Digital electronics- BCD & DecoderDigital electronics- BCD & Decoder
Digital electronics- BCD & Decoder
 
encoder and decoder in digital electronics
encoder and decoder in digital electronicsencoder and decoder in digital electronics
encoder and decoder in digital electronics
 
Encoder and decoder
Encoder and decoderEncoder and decoder
Encoder and decoder
 
Mci ppt
Mci pptMci ppt
Mci ppt
 
Unit 4 dica
Unit 4 dicaUnit 4 dica
Unit 4 dica
 
The decoder
The decoderThe decoder
The decoder
 
LAB 4.docx
LAB 4.docxLAB 4.docx
LAB 4.docx
 
Ceng232 Decoder Multiplexer Adder
Ceng232 Decoder Multiplexer AdderCeng232 Decoder Multiplexer Adder
Ceng232 Decoder Multiplexer Adder
 
Verilog full adder in dataflow & gate level modelling style.
Verilog full adder in dataflow  & gate level modelling style.Verilog full adder in dataflow  & gate level modelling style.
Verilog full adder in dataflow & gate level modelling style.
 
VLSI experiments II
VLSI experiments IIVLSI experiments II
VLSI experiments II
 
seven segment display using 74LS78 IC decoder
seven segment display using 74LS78 IC decoderseven segment display using 74LS78 IC decoder
seven segment display using 74LS78 IC decoder
 
The IoT Academy IoT Training Arduino Part 3 programming
The IoT Academy IoT Training Arduino Part 3 programmingThe IoT Academy IoT Training Arduino Part 3 programming
The IoT Academy IoT Training Arduino Part 3 programming
 
Encoder decoder Adc LDR &7 Segment PPT
Encoder decoder Adc LDR &7 Segment  PPTEncoder decoder Adc LDR &7 Segment  PPT
Encoder decoder Adc LDR &7 Segment PPT
 
Identity based encryption from the weil pairing
Identity based encryption from the weil pairingIdentity based encryption from the weil pairing
Identity based encryption from the weil pairing
 
08 decoder
08 decoder08 decoder
08 decoder
 
Digital design chap 3
Digital design   chap 3Digital design   chap 3
Digital design chap 3
 

Viewers also liked

Chamber column June 15, 2016 - Coldwater, MI
Chamber column June 15, 2016 - Coldwater, MIChamber column June 15, 2016 - Coldwater, MI
Chamber column June 15, 2016 - Coldwater, MICurt MacRae
 
modelo de-Sesión de aprendizaje n
modelo de-Sesión de aprendizaje nmodelo de-Sesión de aprendizaje n
modelo de-Sesión de aprendizaje nBeltrán Cusi
 
Certificate 4
Certificate 4Certificate 4
Certificate 4Faisal N.
 
Joc de descripció
Joc de descripcióJoc de descripció
Joc de descripcióeideideid
 
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...Human Capital Media
 
What MCQ based Medical Entrance Exam Lacks
What MCQ based Medical Entrance Exam LacksWhat MCQ based Medical Entrance Exam Lacks
What MCQ based Medical Entrance Exam LacksRooban Thavarajah
 

Viewers also liked (14)

LDR Counter
LDR CounterLDR Counter
LDR Counter
 
Visitor counter
Visitor counterVisitor counter
Visitor counter
 
2 Digit Object counter
2 Digit Object counter2 Digit Object counter
2 Digit Object counter
 
Visitor counter
Visitor counterVisitor counter
Visitor counter
 
Visitor counter
Visitor counterVisitor counter
Visitor counter
 
Chamber column June 15, 2016 - Coldwater, MI
Chamber column June 15, 2016 - Coldwater, MIChamber column June 15, 2016 - Coldwater, MI
Chamber column June 15, 2016 - Coldwater, MI
 
modelo de-Sesión de aprendizaje n
modelo de-Sesión de aprendizaje nmodelo de-Sesión de aprendizaje n
modelo de-Sesión de aprendizaje n
 
Tríptic RUTart Espirall 2014
Tríptic RUTart Espirall 2014Tríptic RUTart Espirall 2014
Tríptic RUTart Espirall 2014
 
Certificate 4
Certificate 4Certificate 4
Certificate 4
 
Database
DatabaseDatabase
Database
 
Bibliotheca Alexandrina
Bibliotheca AlexandrinaBibliotheca Alexandrina
Bibliotheca Alexandrina
 
Joc de descripció
Joc de descripcióJoc de descripció
Joc de descripció
 
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...
The Future of Employee Engagement: HR’s Critical Role in Driving Business Out...
 
What MCQ based Medical Entrance Exam Lacks
What MCQ based Medical Entrance Exam LacksWhat MCQ based Medical Entrance Exam Lacks
What MCQ based Medical Entrance Exam Lacks
 

Similar to Seven segment display

2 Level Guitar Hero Final Report
2 Level Guitar Hero Final Report2 Level Guitar Hero Final Report
2 Level Guitar Hero Final ReportCem Recai Çırak
 
Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Tom Paulus
 
Digital Alarm Clock 446 project report
Digital Alarm Clock 446 project reportDigital Alarm Clock 446 project report
Digital Alarm Clock 446 project reportAkash Mhankale
 
Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Tom Paulus
 
CODING QUESTIONS.pptx
CODING QUESTIONS.pptxCODING QUESTIONS.pptx
CODING QUESTIONS.pptxrani marri
 
Arduino coding class
Arduino coding classArduino coding class
Arduino coding classJonah Marrs
 
Computer Networks Lab File
Computer Networks Lab FileComputer Networks Lab File
Computer Networks Lab FileKandarp Tiwari
 
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdf
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdfLDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdf
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdfVedant Gavhane
 
Computer archi&mp
Computer archi&mpComputer archi&mp
Computer archi&mpMSc CST
 
Sample Program file class 11.pdf
Sample Program file class 11.pdfSample Program file class 11.pdf
Sample Program file class 11.pdfYashMirge2
 
Computer Organization And Architecture lab manual
Computer Organization And Architecture lab manualComputer Organization And Architecture lab manual
Computer Organization And Architecture lab manualNitesh Dubey
 
Starting with Arduino
Starting with Arduino Starting with Arduino
Starting with Arduino MajdyShamasneh
 
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...AntareepMajumder
 

Similar to Seven segment display (20)

2 Level Guitar Hero Final Report
2 Level Guitar Hero Final Report2 Level Guitar Hero Final Report
2 Level Guitar Hero Final Report
 
Est 6
Est 6Est 6
Est 6
 
Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1
 
Digital Alarm Clock 446 project report
Digital Alarm Clock 446 project reportDigital Alarm Clock 446 project report
Digital Alarm Clock 446 project report
 
Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013Getting Started With Raspberry Pi - UCSD 2013
Getting Started With Raspberry Pi - UCSD 2013
 
Interpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratchInterpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratch
 
CODING QUESTIONS.pptx
CODING QUESTIONS.pptxCODING QUESTIONS.pptx
CODING QUESTIONS.pptx
 
Arduino coding class
Arduino coding classArduino coding class
Arduino coding class
 
Computer Networks Lab File
Computer Networks Lab FileComputer Networks Lab File
Computer Networks Lab File
 
Anup2
Anup2Anup2
Anup2
 
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdf
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdfLDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdf
LDCQ paper Dec21 with answer key_62cb2996afc60f6aedeb248c1d9283e5.pdf
 
Computer archi&mp
Computer archi&mpComputer archi&mp
Computer archi&mp
 
mod-4.pptx
mod-4.pptxmod-4.pptx
mod-4.pptx
 
Sample Program file class 11.pdf
Sample Program file class 11.pdfSample Program file class 11.pdf
Sample Program file class 11.pdf
 
Computer Organization And Architecture lab manual
Computer Organization And Architecture lab manualComputer Organization And Architecture lab manual
Computer Organization And Architecture lab manual
 
VerilogHDL_Utkarsh_kulshrestha
VerilogHDL_Utkarsh_kulshresthaVerilogHDL_Utkarsh_kulshrestha
VerilogHDL_Utkarsh_kulshrestha
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Starting with Arduino
Starting with Arduino Starting with Arduino
Starting with Arduino
 
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...
FALLSEM2022-23_BCSE202L_TH_VL2022230103292_Reference_Material_I_08-08-2022_C_...
 
Analog to Digital Converter
Analog to Digital ConverterAnalog to Digital Converter
Analog to Digital Converter
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Seven segment display

  • 1. 63 IMPLEMENTATION OF ALPHANUMERIC ON A SEVEN SEGMENT DISPLAY OBJECTIVE The main idea behind this is to implement the BINARY INPUT TO DISPLAY LETTERS AND NUMBERS ON A SEVEN SEGMENT DISPLAY available on the NEXYS 4 DDR. In this the binary input is applied through switches available on the board and the output will be a combinational display of number’s (0-9) and letters from (a to z). Tools: Software Tools– Xilinx VIVADO design suite 14.2 Hardware Tools – Nexys 4 DDR Basic idea: Generally the seven segment displays are used in digital circuits to represent numbers. One of the most common applications is in digital watches. We can implement the seven segment display using BCD/HEXA input in which all the numbers from 0 to 9 are displayed and a letters from a to f can be implemented, but using the single input values/ ASCII values (in binary format) as inputs we wanted to generate all the letters from a to z and numbers from 0 to 9 on a single platform. The general idea representation is as shown below: Letter ASCII Code Binary Letter ASCII Code Binary a 097 01100001 A 065 01000001 b 098 01100010 B 066 01000010 c 099 01100011 C 067 01000011 Here we use the switches available on the Nexys board to provide the binary bits as input. The binary input corresponding to the ASCII value has a letter associate with it which is displayed on the seven segments corresponding to the VHDL program. An example representation of the visual idea of the project described:
  • 2. 64 Block diagram Fig.1 Block Diagram for Alpha Numeric on Seven Segment. Seven Segment Display A seven segment display is a form of electronic display device which is used to display numerals. We can commonly find the seven segment display in digital devices which is used to represent the numeric information to user, like watches, calculators, electronic instruments etc. The name seven segment display itself states that it is a combination of seven segments of display which are arranged in a fashion to represent numerals, when programmed in different fashion. These seven different segments are marked from A-G as in, fig (2). Fig 2: A Generalized Seven Segment Display. FPGA Hardware Kit 6 5 4 3 2 1 0 Switches s Input ASCII Code Simulation & Synthesis in Vivado 14.2 Simulated Waveform Seven segment array Output Seven Segment Display
  • 3. 65 Types of seven segment display: There are two types of seven segment display namely 1) Common Anode 7-segment display 2) Common Cathode 7-segment display Display of Numerals &Letters All the numerals can be displayed on the seven segment display. Along with the displaying of numerals we can also display all the alphabets on the seven segments. A series of seven segments display can also be used to represent words and scrolling sentences. The different display of letters can be seen in the fig (2). Fig 2: Seven segment display of letters and numerals The project gives a basic idea of how the seven segment display is used to implement the display of numerals and letters using 8 bits of binary input, using the NEXYS 4 DDR FPGA kit. We have used VHDL coding to program the FPGA [XC100tcsg1] so that the binary input given through switches is decoded according to the program which consists of defined modules to convert the binary input to corresponding seven segment output. According to the program output the seven segments glow to represent the corresponding output.
  • 4. 66 In the project we have used a common anode type Seven segment display, hence to make a segment ‘ON’ we have to provide logic ‘0’ and to make a segment ‘OFF’ we have to provide logic ‘1’. Binary Switch Logic INPUTS Fig.3 Segment and switch number representation 1 1 1 1 1 1 1 0 0 0 0 0 0 0 SWITCH ON SWITCH OFF sw1 sw2 sw3 sw4 sw5 sw6 sw7
  • 5. 67 Aim: To program the FPGA [XC100tcsg1] in VHDL for display numerals and letters on the seven segments by providing 8 bit binary as input and to verify the output using the hardware kit. Apparatus: Hardware: Nexys 4 DDR FPGA kit. Software: Xilinx Vivado design suite 14.2. Verilog code: module binary_to_seven_segment_display_project( input [6:0] ip, output a,b,c,d,e,f,g, output [7:0] an ); reg a,b,c,d,e,f,g; reg [7:0] an = 8'b11111110; always @ (ip) // checks for every change in input // Code for Alphabets if(ip[5] && ip[6]) begin if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: a1 a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin : b1 a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: c1 a=1'b1; b=1'b1; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: d1 a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end
  • 6. 68 else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: e1 a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b0; g=1'b0; end else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: f1 a=1'b0; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: g1 a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0; end else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4]) begin: h a=1'b1; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4]) begin: i a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b1; end else if(~ip[0] &&ip[1] && ~ip[2] &&ip[3] && ~ip[4]) begin: j a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b1; end else if(ip[0] &&ip[1] && ~ip[2] &&ip[3] && ~ip[4]) begin: k a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0; end else if(~ip[0] && ~ip[1] &&ip[2] &&ip[3] && ~ip[4]) begin: l a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1; end else if(ip[0] && ~ip[1] &&ip[2] &&ip[3] && ~ip[4]) begin: m a=1'b0; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b1; g=1'b1; end else if(~ip[0] &&ip[1] &&ip[2] &&ip[3] && ~ip[4]) begin: n a=1'b1; b=1'b1; c=1'b0; d=1'b1; e=1'b0; f=1'b1; g=1'b0; end else if(ip[0] &&ip[1] &&ip[2] &&ip[3] && ~ip[4]) begin: o a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end else if(~ip[0] && ~ip[1] && ~ip[2] && ~ip[3] &&ip[4]) begin: p
  • 7. 69 a=1'b0; b=1'b0; c=1'b1; d=1'b1; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] &&ip[4]) begin: q a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0; end else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] &&ip[4]) begin: r a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b0; f=1'b1; g=1'b0; end else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] &&ip[4]) begin: s a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0; end else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] &&ip[4]) begin: t a=1'b1; b=1'b1; c=1'b1; d=1'b0; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] &&ip[4]) begin: u a=1'b1; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b1; g=1'b1; end else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] &&ip[4]) begin: v a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b1; end else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] &&ip[4]) begin: w a=1'b1; b=1'b0; c=1'b1; d=1'b0; e=1'b1; f=1'b0; g=1'b1; end else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] &&ip[4]) begin: x a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] &&ip[4]) begin: y a=1'b1; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0; end else if(~ip[0] &&ip[1] && ~ip[2] &&ip[3] &&ip[4]) begin: z a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end end else
  • 8. 70 begin: numbers if(~ip[5] && ~ip[6]) // Code for Numbers begin if(~ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: zero a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b1; end else if(ip[0] && ~ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: one a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1; end else if(~ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: two a=1'b0; b=1'b0; c=1'b1; d=1'b0; e=1'b0; f=1'b1; g=1'b0; end else if(ip[0] &&ip[1] && ~ip[2] && ~ip[3] && ~ip[4]) begin: three a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b1; f=1'b1; g=1'b0; end else if(~ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: four a=1'b1; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: five a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b1; f=1'b0; g=1'b0; end else if(~ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: six a=1'b0; b=1'b1; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] &&ip[1] &&ip[2] && ~ip[3] && ~ip[4]) begin: seven a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b1; g=1'b1; end else if(~ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4]) begin: eight a=1'b0; b=1'b0; c=1'b0; d=1'b0; e=1'b0; f=1'b0; g=1'b0; end else if(ip[0] && ~ip[1] && ~ip[2] &&ip[3] && ~ip[4])
  • 9. 71 begin: nine a=1'b0; b=1'b0; c=1'b0; d=1'b1; e=1'b1; f=1'b0; g=1'b0; end else begin: null a=1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b1; f=1'b1; g=1'b1; end end else begin =1'b1; b=1'b1; c=1'b1; d=1'b1; e=1'b1; f=1'b1; g=1'b1; end end endmodule
  • 10. 72 Verification: Simulation: The process of verification of functional correctness of the written code is called simulation The above code is simulated and verified in the Xilinx Vivado design suite 14.2 for the exact output. It needs an additional test bench to be written for the purpose of verification in which we predefine the values. Synthesis: The process of mapping the implemented code onto a real world device is known as synthesis. This is again done by the software After the functional verification we have dumped the code into the hardware kit, Nexys 4 DDR to verify the results on the seven segment display available on the kit Output The result of the above written code is as shown below: Simulated output:
  • 11. 73 Synthesized output When i/p is 1001010 output represented as J When i/p is 01100001 output represented as a When i/p is 0000000 output represented as 0 When i/p is 0000111output represented as 7
  • 12. 74 Drawbacks: In the above seven segmented display we cannot display few letters accurately for user understanding, the user has to compromise between some letters such as W,X,K etc. Conclusion: The implementation of ASCII code to alphanumeric seven segment display has been performed in the Vivado design suite and the simulated output is verified. The Synthesized output has been performed and observed on the Xilinx Nexys 4 DDR FPGA kit and the sample kit picture has been added to the project report.
  • 13. 75