SlideShare a Scribd company logo
1 of 5
Download to read offline
Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88
www.ijera.com 84|P a g e
Implementation of Huffman Decoder on Fpga
Safia Amir Dahri1
, Dr Abdul Fattah Chandio2
, Nawaz Ali Zardari3
Department of Telecommunication Engineering, QUEST NawabShah, Pakistan1,3
Principal, QUCEST Larkana, Pakistan2
Abstract
Lossless data compression algorithm is most widely used algorithm in data transmission, reception and storage
systems in order to increase data rate, speed and save lots of space on storage devices. Now-a-days, different
algorithms are implemented in hardware to achieve benefits of hardware realizations. Hardware implementation
of algorithms, digital signal processing algorithms and filter realization is done on programmable devices i.e.
FPGA. In lossless data compression algorithms, Huffman algorithm is most widely used because of its variable
length coding features and many other benefits. Huffman algorithms are used in many applications in software
form, e.g. Zip and Unzip, communication, etc. In this paper, Huffman algorithm is implemented on Xilinx
Spartan 3E board. This FPGA is programmed by Xilinx tool, Xilinx ISE 8.2i. The program is written in VHDL
and text data is decoded by a Huffman algorithm on Hardware board which was previously encoded by
Huffman algorithm. In order to visualize the output clearly in waveforms, the same code is simulated on
ModelSim v6.4. Huffman decoder is also implemented in the MATLAB for verification of operation. The
FPGA is a configurable device which is more efficient in all aspects. Text application, image processing, video
streaming and in many other applications Huffman algorithms are implemented.
Keywords: Huffman algorithm; FPGA; Variable length coding; communication;
I. INTRODUCTION
Recent developments in the field of hardware
design make it possible to achieve higher speed and
parallelism. Due to which software based systems or
algorithms used in various communication systems
and digital signal processing are implemented in
Hardware. Huffman decoder is one of the most
widely used algorithms to transmit variable length
code in order to reduce bandwidth, higher efficiency
and higher data rate. The Huffman decoder algorithm
can also be implemented on field programmable gate
array (FPGA). The FPGA is reconfigurable and
programmable device through which hardware can be
formed and it can achieve more speed than software
counterpart. In order to achieve these benefits, we
need to create hardware and software platform.
Realization is done on Spartan-3E FPGA board. To
program FPGA, Xilinx ISE8.2i software is used,
which performed synthesis, design, implementation
and bit file generation for the Huffman design file.
That file will be downloaded into the FPGA by an
iMPACT tool. The result verification is done by
simulating the design and MATLAB is used to
perform Huffman decoding.
Huffman algorithm is mostly used in data
compression in software applications. In this paper,
Huffman algorithm decoding is implemented on
FPGA. MATLAB is also used to verify and simulate
the data. The ModelSim is used to simulate the data
for clear visualization of results. The motivation of
hardware implementation of Huffman decoder is
clear from the fact that, the hardware implementation
is fast, and every algorithm is being implemented on
FPGA. Digital signal processing algorithms, fast
fourier transforms and filter design is now
implemented on hardware i.e. Field Programmable
Gate Array.
In recent years, the demand for lossless data
compression is increased drastically and software
implementation is not sufficient, hence Huffman
decoding algorithm is needed to implement on
hardware.
A Huffman decoder algorithm is used in data
communication and other fields. It requires less
transmission time and storage space because it has a
minimum average length. It has unique prefix
properties, it does not require end of character
delimiter. It is easy to implement and provides a
lossless compression and minimum redundancy.
It gains popularity due to its variable length
coding. It is used in data transmission, video and
voice streaming, wireless coding where transmission
and reception of data is needed. Some fields where
Huffman encoding and decoding is most widely used,
are, Text application (Zip and Unzip) For JPEG
compression For image/video coding standards
H.261, H.263 and MPEG1 and 2. MPEG format
compression and decompression.
II. PREVIOUS WORK
This is the type of source coding that was
developed by David A. Huffman in 1952. This is also
called entropy coding algorithm because it follows
the principle that the average number of bits per
RESEARCH ARTICLE OPEN ACCESS
Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88
www.ijera.com 85|P a g e
message should be less or equal to the average bits of
information per message which means entropy [1].
To achieve the higher efficiency, we have to reduce
the redundancy and for that purpose variable length
coding algorithms were developed. Both the Shannon
fanno algorithm and Huffman algorithm produce
variable length codes because according to these
theories the small numbers of bits are assigned to
frequently occurring symbol as compared to rare
occurred symbols.
Shannon fanno algorithm and Huffman algorithm
working on the same principle and depends upon the
probability of occurrence of each symbol or message,
but the difference is that unlike Shannon fanno
algorithm, the Huffman algorithm produces an
average number of bits per message equal to the
entropy [1].
Currently, some features of embedded systems
such as speed, time and power consumption make the
system more reliable and to be used in a wide variety
of applications [2]. It is the reason, software based
algorithm and digital signal processing algorithms are
implemented in hardware. Recent advances in the
field of programmable devices, i.e. FPGA make
realization simple on hardware. The FPGA is
programmable hardware. After programming it
behaves as hardware. It is used in many applications
on a software level.
A few decades earlier, Hatsukazu Tanaka,
presents his work about Huffman codes and its
applications in various fields [3]. In 2000, Zulifkar
Aspar et al presents his research paper about parallel
Huffman decoder on FPGA. He describes that
parallelism is important in some applications like
JPEG and MPEG. He also describes serial and
parallel bit Huffman decoder [4]. In 2004, Ying Chen
et al describes the JPEG application to make it
lossless. They used integer reversible transformation.
They also compare iJPEG and JPEG. More about this
can be found at [5]. In 2009, Tomas Frysa et al
contributed in the field of wireless transmission for
video streaming. In order to code the video streaming,
Huffman coding is used because of any advantages.
Their approach was to insert special symbols in the
Huffman codeword [6]. In 2010, Hoang-Anh Pham et
al described the adaptive Huffman algorithm in the
applications of MP3 encoding and decoding [7]. They
used single side growing approach for Huffman
coding. In 2012, Ke Zhu et al presented his work
about Huffman decoder implementation in the JPEG
application [8]. He presented the hardware JPEG
decoder with three functions for embedded systems.
This decoder could decode a JPEG image, and widely
used in digital camera, mobile phones and tablet PC,
etc. It uses soft IP core for processing.
III. FPGA TECHNOLOGY AND
PROGRAMMING
The FPGA gardware contains logic blocks to
program and build specific function or circuit rather
than planes of AND/OR gates. There are more
advantages of FPGA over ASIC (Application
Specific Integrated Circuit). Major advantages are
reconfigurability, higher performance, higher speed
and cost effectiveness. The only disadvantage can be
considered is that the circuit formed inside the FPGA
is larger than the ASIC design [9], [10], [11]. The
FPGA architecture is also called FPGA fabric. The
architecture consists of three main components.
ď‚· Logic Element
ď‚· Interconnects
ď‚· Input / Output Pins
The Fig.1. shows the generic structure of FPGA
fabric. Logic elements or CLB (Combinational Logic
Block) is the smaller unit and it consists of Look-Up
Table (LUT) which usually forms the functions of
most logic gates. These logic elements are combined
to form a larger design. The Logic elements are
connected through interconnects that can be
programmed. The FPGA has different types of
interconnect depending on the distance between the
logic elements to be connected as shown in Fig. 2.
Figure 1. FPGA Fabric/architecture
The third element I/O pins also known as IOBs
(I/O Blocks) to connect the function implemented to
the outside world [11]. The FPGA is discussed so far,
can be programmed by language, and is called
Hardware Description Language (HDL). There are
two major types HDLs which are most widely used
languages are VHDL and Verilog HDL. The program
written in these two languages are behaving as a
higher level of abstraction. In this language the
hardware is built in the form of codes, which means it
represents the textual representation of Hardware.
These languages can support RTL, Switch, logic and
other abstraction levels [12]. There are following
Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88
www.ijera.com 86|P a g e
processes used in order to generate a bitstream file for
FPGA programming, i.e. Synthesis, translate, map,
place & route and bit file generation. Bit file is
downloaded into the FPGA by using impact tool.
Figure 2. FPGA Interconnects
IV. METHODOLOGY AND
IMPLEMENTATION ON SPARTAN-3E
There are two main manufacturers of FPGA
boards, Xilinx and Altera. The board used in this
paper is from Xilinx Spartan series i.e. Spartan3E.
The Spartan3E can be programmed with the couple of
steps required. The software used to program the
FPGA on Spartan3E FPGA board is Xilinx ISE 8.2I,
provided by Xilinx have been used. The below flow
chart shows the methodology through which Huffman
coding is done in HDL.
Figure 3. Proposed Methodology (Flowchart)
The language used to program the FPGA is
VHDL, which is described in detail below.
A. VHDL
In this paper, Code is written in VHDL language.
In 1980, there were needed to make a standard
language in order to structure and function of
integrated ICs. For that purpose, a very high speed
integrated IC program (VHSIC) was initiated in the
USA under the contract from DRAPA, which results
in the development of VHDL Language [13].
The structure of the VHDL program consists of
two parts, entity and architecture. The entity is
declarative part and contains the input output ports. In
other words, it represents the black box model of the
circuit, while architecture referred to the internal
circuitry or internal structure of the actual logic.
VHDL contains a wide variety of data types and
its conversions. It is not case sensitive. VHDL is like
any other programming language, it contains
identifier, comments, variables, constants, numbers,
string, bitwise operations, and enumeration types and
many more features [13]. VHDL also fairly deals
with an array to analyzed data in one, two or more
dimensions. Advanced VHDL covers signal
resolution and buses, concurrent statements and
assertions in procedure call, etc. There are some
disadvantages of VHDL; it does not cover the all
levels of abstractions.
When the code is downloaded into the FPGA and
run the several process, it shows the device utilization
summary for a particular FPGA as shown in below
Fig. 4.
Figure 4. Device Utilization summary for Spartan
3E
V. RESULTS AND DISCUSSION
In this paper, Huffman decoder is implemented
and its operation is verified on FPGA. In order to
verify the Huffman decoder, firstly it is designed and
implemented in Matlab. Then for testing purpose a
text file is taken that contains the data i-e Safia Amir
Dahri (11-MCME-04) and applied to Huffman
encoder. The encoder has generated the encoded
bitstream and table that shows code for individual
data as shown in Fig. 5.
Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88
www.ijera.com 87|P a g e
Figure 5. MATLAB Program for encoding
The figure 5 shows that after running the
Huffman encoder program, it will ask for the text file
that is to be compressed so the Data1.txt is the name
of file and in the next line the data of the file is
shown. Then for code generation program requires
the file on which encoded bitstream and table is to be
saved, for that purpose Data1codes.txt and
Data1table.txt is provided respectively.
After verification of the Huffman decoder on
MATALB, we have developed code in VHDL and
simulated by using ModelSim v6.4 and actual data in
waveforms is found in Fig. 6.
Figure 6. Modelsim for Simulation
The simulation results are shown in below Fig. 7.
Figure 7. Results
VI. CONCLUSION
In this paper, Huffman decoding is studied and
implemented on Field Programmable Gate Array
(FPGA). Huffman algorithm is most widely used
algorithm in data communication because of several
reasons. In order to implement the Huffman decoder
on hardware, we need hardware platform. The
hardware platform needed, to make it possible, to
configure the FPGA device. For that purpose, Xilinx
ISE 8.2i tool is used. The programming is done in
VHDL language and whole algorithm is described in
that language, then in order to compile the code
synthesis process is needed. Design implementations
and bit file generation, logic, are ready to implement
in FPGA. In order to verify the operation of Huffman
algorithm, some data is selected and encoded by
Huffman algorithm and those codes are placed in the
VHDL code file and run the algorithm on hardware
and verify that the results are being decoded properly.
To visualize the output properly, the design file is
also simulated in ModelSim v6.4. To validate the
design, the same logic is performed on MATLAB as
well.
REFERENCES
[1] J.S.Chitode. (2009). Information coding
techni ques. Pune: Technical publications
[2] Azevedo Dias, W.R.; Moreno, E.D.; Nattan
Palmeira, I. (2013), "A new code
compression algorithm and its decompressor
in FPGA-based hardware," Integrated
Circuits and Systems Design (SBCCI), 2013
26th Symposium, vol., no., pp.1-6.
[3] Tanaka, Hatsukazu, (1987) "Data structure
of Huffman codes and its application to
efficient encoding and decoding
(Corresp.)," Information Theory, IEEE
Transactions , vol.33, no.1, pp.154-156.
[4] Aspar, Z.; Yusof, Z.M.; Suleiman, Ishak,
(2000) "Parallel Huffman decoder with an
optimized look up table option on
FPGA," TENCON 2000. Proceedings ,
vol.1, no., pp.73,76 vol.1.
[5] Chen Ying; Pengwei Hao, (2004) "Integer
reversible transformation to make JPEG
lossless," Signal Processing, 2004.
Proceedings. ICSP '04. 2004 7th
International Conference, vol.1, no.,
pp.835,838 vol.1.
[6] Fryza, T.; Prokopec, J. (2009),
"Experimental application of channel coding
for wireless transmission of compressed
video data," Ultra Modern
Telecommunications & Workshops, 2009.
ICUMT '09. International Conference, vol.,
no., pp.1-4
[7] Hoang-Anh Pham; Van-Hieu Bui; Anh-Vu
Dinh-Duc, (2010) "An Adaptive Huffman
Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com
ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88
www.ijera.com 88|P a g e
Decoding Algorithm for MP3
Decoder," Electronic Design, Test and
Application, 2010. DELTA '10. Fifth IEEE
International Symposium, vol., no., pp.153-
157.
[8] Ke Zhu; Wei Dong Liu; Jiang Du, (2012)
"Hardware JPEG Decoder and Efficient
Post-Processing Functions for Embedded
Application," Computer and Information
Technology (CIT), 2012 IEEE 12th
International Conference , vol., no., pp.814-
817.
[9] Baumann, C. (2010). Field Programmable
Gate Array (FPGA). Embedded System
Architecture.
[10] Gutiérrez, F. M. (2009). Implementation of a
Tx/Rx OFDM System in a FPGA.
[11] Wolf, W. (2004). FPGA Based System
Design. USA: Prentice Hall Professional
Technical Reference Pearson Education Inc.
[12] Nasri Sulaiman, Z. A. (2009). Design and
Implementation of FPGA-Based Systems -
A Review. Australian Journal of Basic and
Applied Sciences , 3575-3596.
[13] Ashenden, P. J. (1990). VHDL cookbook.

More Related Content

What's hot

Ethercat.org industrial ethernet technologies
Ethercat.org industrial ethernet technologiesEthercat.org industrial ethernet technologies
Ethercat.org industrial ethernet technologiesKen Ott
 
Sudhakar_Resume
Sudhakar_ResumeSudhakar_Resume
Sudhakar_Resumesudhakar
 
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010Altera Corporation
 
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...csandit
 
Project report of 2016 Trainee_final
Project report of 2016 Trainee_finalProject report of 2016 Trainee_final
Project report of 2016 Trainee_finalAkash Chowdhury
 
Resume_8years-Exp_Embedded
Resume_8years-Exp_EmbeddedResume_8years-Exp_Embedded
Resume_8years-Exp_EmbeddedVijayraj Hada
 
The Reliability in Decoding of Turbo Codes for Wireless Communications
The Reliability in Decoding of Turbo Codes for Wireless CommunicationsThe Reliability in Decoding of Turbo Codes for Wireless Communications
The Reliability in Decoding of Turbo Codes for Wireless CommunicationsIJMER
 
Professional Skills Highlights
Professional Skills HighlightsProfessional Skills Highlights
Professional Skills HighlightsVideoguy
 
Ports and protocols
Ports and protocolsPorts and protocols
Ports and protocolsKailash Kumar
 
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...MAF InfoCom
 
License Plate Recognition Using Python and OpenCV
License Plate Recognition Using Python and OpenCVLicense Plate Recognition Using Python and OpenCV
License Plate Recognition Using Python and OpenCVVishal Polley
 
Chapter 21 c language
Chapter 21 c languageChapter 21 c language
Chapter 21 c languageHareem Aslam
 
Applications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief StudyApplications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief StudyComputer Science Journals
 
Wpmc2004 phy protection
Wpmc2004 phy protectionWpmc2004 phy protection
Wpmc2004 phy protectionArpan Pal
 
Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...Vincent Claes
 
Low power fpga solution for dab audio decoder
Low power fpga solution for dab audio decoderLow power fpga solution for dab audio decoder
Low power fpga solution for dab audio decodereSAT Publishing House
 

What's hot (20)

Ethercat.org industrial ethernet technologies
Ethercat.org industrial ethernet technologiesEthercat.org industrial ethernet technologies
Ethercat.org industrial ethernet technologies
 
Sudhakar_Resume
Sudhakar_ResumeSudhakar_Resume
Sudhakar_Resume
 
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010
Adv. FPGA Motor Control--EBV & Univ. of Koln: Embedded World 2010
 
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...
A REAL-TIME H.264/AVC ENCODER&DECODER WITH VERTICAL MODE FOR INTRA FRAME AND ...
 
Project report of 2016 Trainee_final
Project report of 2016 Trainee_finalProject report of 2016 Trainee_final
Project report of 2016 Trainee_final
 
Resume_8years-Exp_Embedded
Resume_8years-Exp_EmbeddedResume_8years-Exp_Embedded
Resume_8years-Exp_Embedded
 
SCA_4_adoption_may2013
SCA_4_adoption_may2013SCA_4_adoption_may2013
SCA_4_adoption_may2013
 
The Reliability in Decoding of Turbo Codes for Wireless Communications
The Reliability in Decoding of Turbo Codes for Wireless CommunicationsThe Reliability in Decoding of Turbo Codes for Wireless Communications
The Reliability in Decoding of Turbo Codes for Wireless Communications
 
Professional Skills Highlights
Professional Skills HighlightsProfessional Skills Highlights
Professional Skills Highlights
 
Ports and protocols
Ports and protocolsPorts and protocols
Ports and protocols
 
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...
MAF ICIMS™ Monitoring, Analytics & Reporting for Microsoft Teams and UC - glo...
 
Jda foqa briefing slide view
Jda foqa briefing slide viewJda foqa briefing slide view
Jda foqa briefing slide view
 
License Plate Recognition Using Python and OpenCV
License Plate Recognition Using Python and OpenCVLicense Plate Recognition Using Python and OpenCV
License Plate Recognition Using Python and OpenCV
 
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGSA STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
 
Chapter 21 c language
Chapter 21 c languageChapter 21 c language
Chapter 21 c language
 
Applications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief StudyApplications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief Study
 
Wpmc2004 phy protection
Wpmc2004 phy protectionWpmc2004 phy protection
Wpmc2004 phy protection
 
Wi Fi documantation
Wi Fi documantationWi Fi documantation
Wi Fi documantation
 
Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...
 
Low power fpga solution for dab audio decoder
Low power fpga solution for dab audio decoderLow power fpga solution for dab audio decoder
Low power fpga solution for dab audio decoder
 

Viewers also liked

Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...
Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...
Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...IJERA Editor
 
Construction of Keyword Extraction using Statistical Approaches and Document ...
Construction of Keyword Extraction using Statistical Approaches and Document ...Construction of Keyword Extraction using Statistical Approaches and Document ...
Construction of Keyword Extraction using Statistical Approaches and Document ...IJERA Editor
 
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...IJERA Editor
 
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...IJERA Editor
 
Comparison of Cell formation techniques in Cellular manufacturing using three...
Comparison of Cell formation techniques in Cellular manufacturing using three...Comparison of Cell formation techniques in Cellular manufacturing using three...
Comparison of Cell formation techniques in Cellular manufacturing using three...IJERA Editor
 
Finger Movement Based Wearable Communication & Navigation Aid for partially d...
Finger Movement Based Wearable Communication & Navigation Aid for partially d...Finger Movement Based Wearable Communication & Navigation Aid for partially d...
Finger Movement Based Wearable Communication & Navigation Aid for partially d...IJERA Editor
 
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...IJERA Editor
 
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...IJERA Editor
 
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...IJERA Editor
 
Machining of Aircraft Bearing Rings using High Quality Bearing Steel
Machining of Aircraft Bearing Rings using High Quality Bearing SteelMachining of Aircraft Bearing Rings using High Quality Bearing Steel
Machining of Aircraft Bearing Rings using High Quality Bearing SteelIJERA Editor
 
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...IJERA Editor
 
Transient Stability Analysis of IEEE 9 Bus System in Power World Simulator
Transient Stability Analysis of IEEE 9 Bus System in Power World SimulatorTransient Stability Analysis of IEEE 9 Bus System in Power World Simulator
Transient Stability Analysis of IEEE 9 Bus System in Power World SimulatorIJERA Editor
 
FEA based Dissipation Energy and Temperature Distribution of Rubber Bushing
FEA based Dissipation Energy and Temperature Distribution of Rubber BushingFEA based Dissipation Energy and Temperature Distribution of Rubber Bushing
FEA based Dissipation Energy and Temperature Distribution of Rubber BushingIJERA Editor
 
Seismic Drift Control in soft storied RCC buildings
Seismic Drift Control in soft storied RCC buildingsSeismic Drift Control in soft storied RCC buildings
Seismic Drift Control in soft storied RCC buildingsIJERA Editor
 
Studying nanotube-based oscillators and their application as memory cells via...
Studying nanotube-based oscillators and their application as memory cells via...Studying nanotube-based oscillators and their application as memory cells via...
Studying nanotube-based oscillators and their application as memory cells via...IJERA Editor
 
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...IJERA Editor
 
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...Investigation of Significant Process Parameter in Manganese Phosphating of Pi...
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...IJERA Editor
 
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...IJERA Editor
 
Energy Wastage Estimation of a Cold Storage
Energy Wastage Estimation of a Cold StorageEnergy Wastage Estimation of a Cold Storage
Energy Wastage Estimation of a Cold StorageIJERA Editor
 
Plastic
PlasticPlastic
Plasticrudr2001
 

Viewers also liked (20)

Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...
Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...
Transport properties of Gum mediated synthesis of Indium Oxide (In2O3) Nano f...
 
Construction of Keyword Extraction using Statistical Approaches and Document ...
Construction of Keyword Extraction using Statistical Approaches and Document ...Construction of Keyword Extraction using Statistical Approaches and Document ...
Construction of Keyword Extraction using Statistical Approaches and Document ...
 
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...
Evaluation the Impact of Human Interaction/Debate on Online News to Improve U...
 
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...
Trace Analysis of Driver Behavior on Traffic Violator by Using Big Data (Traf...
 
Comparison of Cell formation techniques in Cellular manufacturing using three...
Comparison of Cell formation techniques in Cellular manufacturing using three...Comparison of Cell formation techniques in Cellular manufacturing using three...
Comparison of Cell formation techniques in Cellular manufacturing using three...
 
Finger Movement Based Wearable Communication & Navigation Aid for partially d...
Finger Movement Based Wearable Communication & Navigation Aid for partially d...Finger Movement Based Wearable Communication & Navigation Aid for partially d...
Finger Movement Based Wearable Communication & Navigation Aid for partially d...
 
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...
Crystal Growth and Studies of Dihydrogen Phosphates of Potassium and Ammonium...
 
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...
Mechanical Properties of Concrete with Marine Sand as Partial Replacement of ...
 
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...
Maximum PowerPoint Tracking of PV System Based on a SEPIC Converter Using Fuz...
 
Machining of Aircraft Bearing Rings using High Quality Bearing Steel
Machining of Aircraft Bearing Rings using High Quality Bearing SteelMachining of Aircraft Bearing Rings using High Quality Bearing Steel
Machining of Aircraft Bearing Rings using High Quality Bearing Steel
 
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...
Developing an Environmentally Sustainable Hot Mix Asphalt Using Recycled Conc...
 
Transient Stability Analysis of IEEE 9 Bus System in Power World Simulator
Transient Stability Analysis of IEEE 9 Bus System in Power World SimulatorTransient Stability Analysis of IEEE 9 Bus System in Power World Simulator
Transient Stability Analysis of IEEE 9 Bus System in Power World Simulator
 
FEA based Dissipation Energy and Temperature Distribution of Rubber Bushing
FEA based Dissipation Energy and Temperature Distribution of Rubber BushingFEA based Dissipation Energy and Temperature Distribution of Rubber Bushing
FEA based Dissipation Energy and Temperature Distribution of Rubber Bushing
 
Seismic Drift Control in soft storied RCC buildings
Seismic Drift Control in soft storied RCC buildingsSeismic Drift Control in soft storied RCC buildings
Seismic Drift Control in soft storied RCC buildings
 
Studying nanotube-based oscillators and their application as memory cells via...
Studying nanotube-based oscillators and their application as memory cells via...Studying nanotube-based oscillators and their application as memory cells via...
Studying nanotube-based oscillators and their application as memory cells via...
 
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...
Interference Minimization Protocol in Heterogeneous Wireless Sensor Network f...
 
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...Investigation of Significant Process Parameter in Manganese Phosphating of Pi...
Investigation of Significant Process Parameter in Manganese Phosphating of Pi...
 
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...
Strategies of detecting Profile-injection attacks in E-Commerce Recommender S...
 
Energy Wastage Estimation of a Cold Storage
Energy Wastage Estimation of a Cold StorageEnergy Wastage Estimation of a Cold Storage
Energy Wastage Estimation of a Cold Storage
 
Plastic
PlasticPlastic
Plastic
 

Similar to Implementation of Huffman Decoder on Fpga

VHDL Implementation of FPGA Based OFDM Modem for Wireless Applications
VHDL Implementation of FPGA Based OFDM Modem for Wireless ApplicationsVHDL Implementation of FPGA Based OFDM Modem for Wireless Applications
VHDL Implementation of FPGA Based OFDM Modem for Wireless ApplicationsEditor IJCATR
 
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...cscpconf
 
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...csandit
 
Channel Coding and Clipping in OFDM for WiMAX using SDR
Channel Coding and Clipping in OFDM for WiMAX using SDRChannel Coding and Clipping in OFDM for WiMAX using SDR
Channel Coding and Clipping in OFDM for WiMAX using SDRidescitation
 
FPGA Implementation of Higher Order FIR Filter
FPGA Implementation of Higher Order FIR Filter FPGA Implementation of Higher Order FIR Filter
FPGA Implementation of Higher Order FIR Filter IJECEIAES
 
Communication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsCommunication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsIJERA Editor
 
Jg3515961599
Jg3515961599Jg3515961599
Jg3515961599IJERA Editor
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmAngie Lee
 
Design and Implementation of FPGA Based Signal Processing Card
Design and Implementation of FPGA Based Signal Processing Card  Design and Implementation of FPGA Based Signal Processing Card
Design and Implementation of FPGA Based Signal Processing Card VLSICS Design
 
System designing and modelling using fpga
System designing and modelling using fpgaSystem designing and modelling using fpga
System designing and modelling using fpgaIAEME Publication
 
A Review of FPGA-based design methodologies for efficient hardware Area estim...
A Review of FPGA-based design methodologies for efficient hardware Area estim...A Review of FPGA-based design methodologies for efficient hardware Area estim...
A Review of FPGA-based design methodologies for efficient hardware Area estim...IOSR Journals
 
Power efficient and high throughput of fir filter using block least mean squa...
Power efficient and high throughput of fir filter using block least mean squa...Power efficient and high throughput of fir filter using block least mean squa...
Power efficient and high throughput of fir filter using block least mean squa...eSAT Publishing House
 

Similar to Implementation of Huffman Decoder on Fpga (20)

VHDL Implementation of FPGA Based OFDM Modem for Wireless Applications
VHDL Implementation of FPGA Based OFDM Modem for Wireless ApplicationsVHDL Implementation of FPGA Based OFDM Modem for Wireless Applications
VHDL Implementation of FPGA Based OFDM Modem for Wireless Applications
 
B034205010
B034205010B034205010
B034205010
 
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
 
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
A NEW SYSTEM ON CHIP RECONFIGURABLE GATEWAY ARCHITECTURE FOR VOICE OVER INTER...
 
Channel Coding and Clipping in OFDM for WiMAX using SDR
Channel Coding and Clipping in OFDM for WiMAX using SDRChannel Coding and Clipping in OFDM for WiMAX using SDR
Channel Coding and Clipping in OFDM for WiMAX using SDR
 
91 94
91 9491 94
91 94
 
91 94
91 9491 94
91 94
 
FPGA Implementation of Higher Order FIR Filter
FPGA Implementation of Higher Order FIR Filter FPGA Implementation of Higher Order FIR Filter
FPGA Implementation of Higher Order FIR Filter
 
Communication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design ApplicationsCommunication Protocols Augmentation in VLSI Design Applications
Communication Protocols Augmentation in VLSI Design Applications
 
R43019698
R43019698R43019698
R43019698
 
Jg3515961599
Jg3515961599Jg3515961599
Jg3515961599
 
Fpga seminar
Fpga seminarFpga seminar
Fpga seminar
 
FPGA Seminar
FPGA SeminarFPGA Seminar
FPGA Seminar
 
509 512
509 512509 512
509 512
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 Algorithm
 
Design and Implementation of FPGA Based Signal Processing Card
Design and Implementation of FPGA Based Signal Processing Card  Design and Implementation of FPGA Based Signal Processing Card
Design and Implementation of FPGA Based Signal Processing Card
 
System designing and modelling using fpga
System designing and modelling using fpgaSystem designing and modelling using fpga
System designing and modelling using fpga
 
A Review of FPGA-based design methodologies for efficient hardware Area estim...
A Review of FPGA-based design methodologies for efficient hardware Area estim...A Review of FPGA-based design methodologies for efficient hardware Area estim...
A Review of FPGA-based design methodologies for efficient hardware Area estim...
 
Hydan
HydanHydan
Hydan
 
Power efficient and high throughput of fir filter using block least mean squa...
Power efficient and high throughput of fir filter using block least mean squa...Power efficient and high throughput of fir filter using block least mean squa...
Power efficient and high throughput of fir filter using block least mean squa...
 

Recently uploaded

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAbhinavSharma374939
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog Converter
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 

Implementation of Huffman Decoder on Fpga

  • 1. Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88 www.ijera.com 84|P a g e Implementation of Huffman Decoder on Fpga Safia Amir Dahri1 , Dr Abdul Fattah Chandio2 , Nawaz Ali Zardari3 Department of Telecommunication Engineering, QUEST NawabShah, Pakistan1,3 Principal, QUCEST Larkana, Pakistan2 Abstract Lossless data compression algorithm is most widely used algorithm in data transmission, reception and storage systems in order to increase data rate, speed and save lots of space on storage devices. Now-a-days, different algorithms are implemented in hardware to achieve benefits of hardware realizations. Hardware implementation of algorithms, digital signal processing algorithms and filter realization is done on programmable devices i.e. FPGA. In lossless data compression algorithms, Huffman algorithm is most widely used because of its variable length coding features and many other benefits. Huffman algorithms are used in many applications in software form, e.g. Zip and Unzip, communication, etc. In this paper, Huffman algorithm is implemented on Xilinx Spartan 3E board. This FPGA is programmed by Xilinx tool, Xilinx ISE 8.2i. The program is written in VHDL and text data is decoded by a Huffman algorithm on Hardware board which was previously encoded by Huffman algorithm. In order to visualize the output clearly in waveforms, the same code is simulated on ModelSim v6.4. Huffman decoder is also implemented in the MATLAB for verification of operation. The FPGA is a configurable device which is more efficient in all aspects. Text application, image processing, video streaming and in many other applications Huffman algorithms are implemented. Keywords: Huffman algorithm; FPGA; Variable length coding; communication; I. INTRODUCTION Recent developments in the field of hardware design make it possible to achieve higher speed and parallelism. Due to which software based systems or algorithms used in various communication systems and digital signal processing are implemented in Hardware. Huffman decoder is one of the most widely used algorithms to transmit variable length code in order to reduce bandwidth, higher efficiency and higher data rate. The Huffman decoder algorithm can also be implemented on field programmable gate array (FPGA). The FPGA is reconfigurable and programmable device through which hardware can be formed and it can achieve more speed than software counterpart. In order to achieve these benefits, we need to create hardware and software platform. Realization is done on Spartan-3E FPGA board. To program FPGA, Xilinx ISE8.2i software is used, which performed synthesis, design, implementation and bit file generation for the Huffman design file. That file will be downloaded into the FPGA by an iMPACT tool. The result verification is done by simulating the design and MATLAB is used to perform Huffman decoding. Huffman algorithm is mostly used in data compression in software applications. In this paper, Huffman algorithm decoding is implemented on FPGA. MATLAB is also used to verify and simulate the data. The ModelSim is used to simulate the data for clear visualization of results. The motivation of hardware implementation of Huffman decoder is clear from the fact that, the hardware implementation is fast, and every algorithm is being implemented on FPGA. Digital signal processing algorithms, fast fourier transforms and filter design is now implemented on hardware i.e. Field Programmable Gate Array. In recent years, the demand for lossless data compression is increased drastically and software implementation is not sufficient, hence Huffman decoding algorithm is needed to implement on hardware. A Huffman decoder algorithm is used in data communication and other fields. It requires less transmission time and storage space because it has a minimum average length. It has unique prefix properties, it does not require end of character delimiter. It is easy to implement and provides a lossless compression and minimum redundancy. It gains popularity due to its variable length coding. It is used in data transmission, video and voice streaming, wireless coding where transmission and reception of data is needed. Some fields where Huffman encoding and decoding is most widely used, are, Text application (Zip and Unzip) For JPEG compression For image/video coding standards H.261, H.263 and MPEG1 and 2. MPEG format compression and decompression. II. PREVIOUS WORK This is the type of source coding that was developed by David A. Huffman in 1952. This is also called entropy coding algorithm because it follows the principle that the average number of bits per RESEARCH ARTICLE OPEN ACCESS
  • 2. Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88 www.ijera.com 85|P a g e message should be less or equal to the average bits of information per message which means entropy [1]. To achieve the higher efficiency, we have to reduce the redundancy and for that purpose variable length coding algorithms were developed. Both the Shannon fanno algorithm and Huffman algorithm produce variable length codes because according to these theories the small numbers of bits are assigned to frequently occurring symbol as compared to rare occurred symbols. Shannon fanno algorithm and Huffman algorithm working on the same principle and depends upon the probability of occurrence of each symbol or message, but the difference is that unlike Shannon fanno algorithm, the Huffman algorithm produces an average number of bits per message equal to the entropy [1]. Currently, some features of embedded systems such as speed, time and power consumption make the system more reliable and to be used in a wide variety of applications [2]. It is the reason, software based algorithm and digital signal processing algorithms are implemented in hardware. Recent advances in the field of programmable devices, i.e. FPGA make realization simple on hardware. The FPGA is programmable hardware. After programming it behaves as hardware. It is used in many applications on a software level. A few decades earlier, Hatsukazu Tanaka, presents his work about Huffman codes and its applications in various fields [3]. In 2000, Zulifkar Aspar et al presents his research paper about parallel Huffman decoder on FPGA. He describes that parallelism is important in some applications like JPEG and MPEG. He also describes serial and parallel bit Huffman decoder [4]. In 2004, Ying Chen et al describes the JPEG application to make it lossless. They used integer reversible transformation. They also compare iJPEG and JPEG. More about this can be found at [5]. In 2009, Tomas Frysa et al contributed in the field of wireless transmission for video streaming. In order to code the video streaming, Huffman coding is used because of any advantages. Their approach was to insert special symbols in the Huffman codeword [6]. In 2010, Hoang-Anh Pham et al described the adaptive Huffman algorithm in the applications of MP3 encoding and decoding [7]. They used single side growing approach for Huffman coding. In 2012, Ke Zhu et al presented his work about Huffman decoder implementation in the JPEG application [8]. He presented the hardware JPEG decoder with three functions for embedded systems. This decoder could decode a JPEG image, and widely used in digital camera, mobile phones and tablet PC, etc. It uses soft IP core for processing. III. FPGA TECHNOLOGY AND PROGRAMMING The FPGA gardware contains logic blocks to program and build specific function or circuit rather than planes of AND/OR gates. There are more advantages of FPGA over ASIC (Application Specific Integrated Circuit). Major advantages are reconfigurability, higher performance, higher speed and cost effectiveness. The only disadvantage can be considered is that the circuit formed inside the FPGA is larger than the ASIC design [9], [10], [11]. The FPGA architecture is also called FPGA fabric. The architecture consists of three main components. ď‚· Logic Element ď‚· Interconnects ď‚· Input / Output Pins The Fig.1. shows the generic structure of FPGA fabric. Logic elements or CLB (Combinational Logic Block) is the smaller unit and it consists of Look-Up Table (LUT) which usually forms the functions of most logic gates. These logic elements are combined to form a larger design. The Logic elements are connected through interconnects that can be programmed. The FPGA has different types of interconnect depending on the distance between the logic elements to be connected as shown in Fig. 2. Figure 1. FPGA Fabric/architecture The third element I/O pins also known as IOBs (I/O Blocks) to connect the function implemented to the outside world [11]. The FPGA is discussed so far, can be programmed by language, and is called Hardware Description Language (HDL). There are two major types HDLs which are most widely used languages are VHDL and Verilog HDL. The program written in these two languages are behaving as a higher level of abstraction. In this language the hardware is built in the form of codes, which means it represents the textual representation of Hardware. These languages can support RTL, Switch, logic and other abstraction levels [12]. There are following
  • 3. Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88 www.ijera.com 86|P a g e processes used in order to generate a bitstream file for FPGA programming, i.e. Synthesis, translate, map, place & route and bit file generation. Bit file is downloaded into the FPGA by using impact tool. Figure 2. FPGA Interconnects IV. METHODOLOGY AND IMPLEMENTATION ON SPARTAN-3E There are two main manufacturers of FPGA boards, Xilinx and Altera. The board used in this paper is from Xilinx Spartan series i.e. Spartan3E. The Spartan3E can be programmed with the couple of steps required. The software used to program the FPGA on Spartan3E FPGA board is Xilinx ISE 8.2I, provided by Xilinx have been used. The below flow chart shows the methodology through which Huffman coding is done in HDL. Figure 3. Proposed Methodology (Flowchart) The language used to program the FPGA is VHDL, which is described in detail below. A. VHDL In this paper, Code is written in VHDL language. In 1980, there were needed to make a standard language in order to structure and function of integrated ICs. For that purpose, a very high speed integrated IC program (VHSIC) was initiated in the USA under the contract from DRAPA, which results in the development of VHDL Language [13]. The structure of the VHDL program consists of two parts, entity and architecture. The entity is declarative part and contains the input output ports. In other words, it represents the black box model of the circuit, while architecture referred to the internal circuitry or internal structure of the actual logic. VHDL contains a wide variety of data types and its conversions. It is not case sensitive. VHDL is like any other programming language, it contains identifier, comments, variables, constants, numbers, string, bitwise operations, and enumeration types and many more features [13]. VHDL also fairly deals with an array to analyzed data in one, two or more dimensions. Advanced VHDL covers signal resolution and buses, concurrent statements and assertions in procedure call, etc. There are some disadvantages of VHDL; it does not cover the all levels of abstractions. When the code is downloaded into the FPGA and run the several process, it shows the device utilization summary for a particular FPGA as shown in below Fig. 4. Figure 4. Device Utilization summary for Spartan 3E V. RESULTS AND DISCUSSION In this paper, Huffman decoder is implemented and its operation is verified on FPGA. In order to verify the Huffman decoder, firstly it is designed and implemented in Matlab. Then for testing purpose a text file is taken that contains the data i-e Safia Amir Dahri (11-MCME-04) and applied to Huffman encoder. The encoder has generated the encoded bitstream and table that shows code for individual data as shown in Fig. 5.
  • 4. Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88 www.ijera.com 87|P a g e Figure 5. MATLAB Program for encoding The figure 5 shows that after running the Huffman encoder program, it will ask for the text file that is to be compressed so the Data1.txt is the name of file and in the next line the data of the file is shown. Then for code generation program requires the file on which encoded bitstream and table is to be saved, for that purpose Data1codes.txt and Data1table.txt is provided respectively. After verification of the Huffman decoder on MATALB, we have developed code in VHDL and simulated by using ModelSim v6.4 and actual data in waveforms is found in Fig. 6. Figure 6. Modelsim for Simulation The simulation results are shown in below Fig. 7. Figure 7. Results VI. CONCLUSION In this paper, Huffman decoding is studied and implemented on Field Programmable Gate Array (FPGA). Huffman algorithm is most widely used algorithm in data communication because of several reasons. In order to implement the Huffman decoder on hardware, we need hardware platform. The hardware platform needed, to make it possible, to configure the FPGA device. For that purpose, Xilinx ISE 8.2i tool is used. The programming is done in VHDL language and whole algorithm is described in that language, then in order to compile the code synthesis process is needed. Design implementations and bit file generation, logic, are ready to implement in FPGA. In order to verify the operation of Huffman algorithm, some data is selected and encoded by Huffman algorithm and those codes are placed in the VHDL code file and run the algorithm on hardware and verify that the results are being decoded properly. To visualize the output properly, the design file is also simulated in ModelSim v6.4. To validate the design, the same logic is performed on MATLAB as well. REFERENCES [1] J.S.Chitode. (2009). Information coding techni ques. Pune: Technical publications [2] Azevedo Dias, W.R.; Moreno, E.D.; Nattan Palmeira, I. (2013), "A new code compression algorithm and its decompressor in FPGA-based hardware," Integrated Circuits and Systems Design (SBCCI), 2013 26th Symposium, vol., no., pp.1-6. [3] Tanaka, Hatsukazu, (1987) "Data structure of Huffman codes and its application to efficient encoding and decoding (Corresp.)," Information Theory, IEEE Transactions , vol.33, no.1, pp.154-156. [4] Aspar, Z.; Yusof, Z.M.; Suleiman, Ishak, (2000) "Parallel Huffman decoder with an optimized look up table option on FPGA," TENCON 2000. Proceedings , vol.1, no., pp.73,76 vol.1. [5] Chen Ying; Pengwei Hao, (2004) "Integer reversible transformation to make JPEG lossless," Signal Processing, 2004. Proceedings. ICSP '04. 2004 7th International Conference, vol.1, no., pp.835,838 vol.1. [6] Fryza, T.; Prokopec, J. (2009), "Experimental application of channel coding for wireless transmission of compressed video data," Ultra Modern Telecommunications & Workshops, 2009. ICUMT '09. International Conference, vol., no., pp.1-4 [7] Hoang-Anh Pham; Van-Hieu Bui; Anh-Vu Dinh-Duc, (2010) "An Adaptive Huffman
  • 5. Safia Amir Dahri et al. Int. Journal of Engineering Research and Applications www.ijera.com ISSN: 2248-9622, Vol. 6, Issue 1, (Part - 3) January 2016, pp.84-88 www.ijera.com 88|P a g e Decoding Algorithm for MP3 Decoder," Electronic Design, Test and Application, 2010. DELTA '10. Fifth IEEE International Symposium, vol., no., pp.153- 157. [8] Ke Zhu; Wei Dong Liu; Jiang Du, (2012) "Hardware JPEG Decoder and Efficient Post-Processing Functions for Embedded Application," Computer and Information Technology (CIT), 2012 IEEE 12th International Conference , vol., no., pp.814- 817. [9] Baumann, C. (2010). Field Programmable Gate Array (FPGA). Embedded System Architecture. [10] GutiĂ©rrez, F. M. (2009). Implementation of a Tx/Rx OFDM System in a FPGA. [11] Wolf, W. (2004). FPGA Based System Design. USA: Prentice Hall Professional Technical Reference Pearson Education Inc. [12] Nasri Sulaiman, Z. A. (2009). Design and Implementation of FPGA-Based Systems - A Review. Australian Journal of Basic and Applied Sciences , 3575-3596. [13] Ashenden, P. J. (1990). VHDL cookbook.