90,96 Sii
90,96 Sii
90,96 Sii
Report
On
FIR FILTER
Submitted
To
By
G.PRASAD ACHARYA
ASSISTANT PROFESSOR
SNIST
SNIST SNIST
SREENIDHI INSTITUTE OF SCIENCE AND TECHNOLOGY
(Affiliated to Jawaharlal Nehru Technological University, Hyderabad)
Yamnampet (V), Ghatkesar (M), Hyderabad – 501 301
CERTIFICATE
This is to certify that the project report entitled “FIR FILTER” is being
submitted by 18311A0490, 18311A0496 in partial fulfilment of the
requirements for the award of Bachelor of Technology degree in
Electronics and Communication Engineering to Sreenidhi Institute of
Science and Technology affiliated to Jawaharlal Nehru Technological
University, Hyderabad (Telangana). This record is a bonafide work carried
out by them under our guidance and supervision. The results embodied in
the report have not been submitted to any other University or Institution for
the award of any degree or diploma.
Abstract 1
CHAPTER1 INTRODUCTION
CHAPTER 5 CONCLUSION 18
REFERENCES 18
ABSTRACT
The Finite Impulse Response (FIR) filter are a class of digital filter that have finite
impulse response and are extensively used in signal processing and communication
system in applications like noise reduction, echo cancellation, image enhancement,
speech and waveform synthesis etc. As the complexity of implementation grows with
the filter order and the precision of computation, the real-time realization of these
filters with desired level of accuracy becomes a challenging task. So, the
implementation of FIR filters on FPGAs is the need of the day because FPGAs can
give enhanced speed and allows reconfigurable architectures for realization of FIR
filter.
In this dissertation, digital filter has been designed using Kaiser window. This
technique is simple conceptually and computationally & it has the adjustable
parameter β, which is used to optimize the mainlobe width. The design complexity is
much less than that in non-linear optimizations. On the other hand, because in Kaiser
window design the stop band attenuation is determined by the window, direct control
over the stop-band attenuation can be achieved. The advantages of the Kaiser window
compared to the compared to the fixed windows are their near optimality and
flexibility.
The direct form structure has been used in designing of proposed filter as this
approach gives a better performance than common structures in terms of speed of
operation, cost and power consumption. The concept of pipelining has been
incorporated that results in reducing the delay of the FIR filter, thereby enhancing the
speed and reducing the power dissipation as compared to the non-pipelined
techniques.
The design of non-pipelined and pipelined FIR filter using both the encoding
schemes
– Radix-4 and Radix-8 has been carried out via Hardware Description Language.
Simulation and synthesis for FPGAs are accomplished on XILINX ISE Software
(Xilinx ISE 9.2i version) for Spartan 3E series FPGA (Field Programmable Gate
Array), target device (XC3S1600E) (Speed Grade-5).
1. Introduction
A filter is a device or process that removes some unwanted component or feature from
a signal. Filtering is a class of signal processing, the defining feature of filter being the
complete or partial suppression of some aspect of the signal.
In signal processing, the function of a filter is to remove unwanted parts of the
signal, such as random noise, or to extract useful parts of the signal, such as the
components lying within a certain frequency range. A filter is an electrical network
that alters the amplitude and/or phase characteristics of a signal with respect to
frequency. Ideally, a filter will not add new frequencies to the input signal, nor will it
change the component frequencies of that signal, but it will change the relative
amplitudes of the various frequency components and/or their phase relationships.
Filters are often used in electronic systems to emphasize signals in certain frequency
ranges and reject signals in other frequency ranges.
Filters are widely employed in signal processing and communication systems
in applications such as channel equalization, noise reduction, radar, audio processing,
video processing, biomedical signal processing, and analysis of economic and
financial data. For example in a radio receiver band-pass filters, or tuners, filters are
used to extract the signals from a radio channel. In an audio graphic equalizer the
input signal is filtered into a number of sub-band signals and the gain for each sub-
band can be varied manually with a set of controls to change the perceived audio
sensation. In a Dolby system pre-filtering and post filtering are used to minimize the
effect of noise. In hi-fi audio a compensating filter may be included in the preamplifier
to compensate for the non-ideal frequency response characteristics of the speakers.
Filters are also used to create perceptual audio-visual effects for music, films and in
broadcast studios.
2. EXPERIMENTAL WORK:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity fir_test_data_generator is
port (
i_clk : in std_logic;
i_rstb : in std_logic;
i_pattern_sel : in std_logic; -- '0'=> delta; '1'=> step
i_start_generation : in std_logic;
o_data : out std_logic_vector( 7 downto 0); -- to FIR
o_write_enable : out std_logic); -- to the output buffer
end fir_test_data_generator;
component edge_detector
port (
i_clk : in std_logic;
i_rstb : in std_logic;
i_input : in std_logic;
o_pulse : out std_logic);
end component;
begin
u_edge_detector : edge_detector
port map(
i_clk => i_clk ,
i_rstb => i_rstb ,
i_input => i_start_generation ,
o_pulse => w_start_pulse );
end rtl;
2.2 ,TEST BENCH CODE:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity fir_output_buffer is
port (
i_clk : in std_logic;
i_rstb : in std_logic;
i_write_enable : in std_logic;
i_data : in std_logic_vector( 9 downto 0); -- from FIR
i_read_request : in std_logic;
o_data : out std_logic_vector( 9 downto 0); -- to seven segment
o_test_add : out std_logic_vector( 4 downto 0)); -- test read address
end fir_output_buffer;
component edge_detector
port (
i_clk : in std_logic;
i_rstb : in std_logic;
i_input : in std_logic;
o_pulse : out std_logic);
end component;
begin
u_edge_detector : edge_detector
port map(
i_clk => i_clk ,
i_rstb => i_rstb ,
i_input => i_read_request ,
o_pulse => w_read_pulse );
end rtl;
2.3, DESIGN EXPLANATION
Step-1: Open Vivado and Enter the “Project Name” at the desired location and Click “Next”
as shown below
Step-2: Select RTL project and also click the check box “Do not specify sources at this time”
Then create a filename as per the naming the variables in verilog since it is used as the
module name then click “OK” and then click “Finish”.
Step-6: To create testbench module again click on “Add sources” and then click “Add or
Create simulation sources”.
4.RESULT:
4.1, RTL SCHEMATIC:
4.3, IMPLIMENTATION:
The FIR filters are extensively used in digital signal processing and can be
implemented using programmable digital processors. With the advancement in Very
Large Scale Integration (VLSI) technology as the DSP has become increasingly
popular over the years, the high speed realization of FIR filters with less power
consumption has become much more demanding. Since the complexity of
implementation grows with the filter order and the precision of computation, real-time
realization of these filters with desired level of accuracy is now becoming a
challenging task. So, the implementation of FIR filters on FPGAs is the need of the
day because FPGAs can give enhanced speed and allows reconfigurable architectures
for realization of FIR filter. This is due to the fact that the hardware implementation of
a lot of multipliers can be done on FPGA which are limited in case of programmable
digital processors.
6. REFERENCES:
[1] S. K. Mitra, “Digital Signal Processing”, New York: Tata McGraw Hill, 2005.
[2] S. W. Smith, “The Scientist and Engineer's Guide to Digital Signal Processing”,
San Diego: California Technical Publications, 1997.
[3] L. Tan, and J. Jiang, “Digital Signal Processing: Fundamentals and Applications”,
Amsterdam: Academic Press, 2007.
[4] http://en.wikipedia.org/wiki/Digital_filter
[6] E. C. Ifeachor, and B. W. Jervis, “Finite impulse response (FIR) filter design” in
Digital Signal Processing: A Practical Approach, South Asia: Prentice hall, 2002, pp.
342-440.