Structure Design for Field Programmable Gate Array (FPGA) through Digital Filters

Get Complete Project Material File(s) Now! »

Advantages and disadvantages of Digital Filters

Digital filters are more superior to analog filter because of some advantages.
 Digital filters have some properties which are not possible with analog filters such as they can be designed to give truly linear phase response.
 Digital filters are programmable as a program stored in a processors memory determines their operations. It means that we should easily change our digital filters without affecting the hardware and in analog filters we can change them by redesigning the circuit.
 Digital filters should be easily designed, tested and implemented on a general-purpose computer or workstation.
 The environment change does not affect the performance of digital filters like thermal variations but in a case of analog filters environment changes affect them.
 We can automatically adjust the frequency response of the digital filters as they are implemented using programmable processor so that is why they are use in adaptive filters.
 In the case of digital filters we need less hardware because using only one digital filter can filter several input signals or channel.
 In digital filters we can save filtered and unfiltered data for further use.
 In VLSI (very large scale integration) we have fabricate digital filters to make them in small size, to consume low power and to keep cost low.
 In practical digital filters are more precise than analog filters.
 Digital filters can be used in very low frequency applications like biomedical applications where the use of analog filters is impractical [4].
The following are the disadvantages of digital filters as compared with the analog filters:
 In the case of bandwidth in real time the analog filters can handle much more bandwidth than digital filters.
 As compared with analog filters the speed of digital filters depends upon the speed of digital processor used and arithmetic operations that should be performed for filtering process, which increases as the filter response, become tighter.
 The design and development process of digital filters are much longer than analog filters [4].

Design of Digital Filters

The design of filters involves five steps:
Before designing the digital filter the designer have the specification of the required filter such as signal characteristics (types of signal source, input and output interface, data rates and width), characteristics of a filter, the desired amplitude, phase responses, their tolerances, speed of operation, cost of filter, choice of signal processor, specific software and modes of filtering. The designers have not known the entire requirement but as many of the filter requirement to simplify the design.

Calculation of suitable filter coefficient:

We have select a number of approximation method calculate the values of coefficients such that the filter characteristics are satisfied. The methods for the calculating filter coefficients depend on the types of filter. The IIR filter coefficients are calculated by the transforming of analog filter characteristics into digital filter. There are some methods for calculating the coefficients of IIR filter are impulse invariant method, pole placement method, matched z-transform and bilinear transformation method should be explained later. As with IIR there are several methods for calculating the coefficients of FIR filters such as window method, optimal method and frequency sampling method.

Realization of filter structure:

Realization of a filter with a suitable structure converts the given transfer function 𝐻(𝑧) into suitable filter structure. Filter structures are in a form of block or flow diagrams, which shows the whole procedure of filter implementation, the structure of filters also depends on the type of filters as FIR or IIR.

Analysis the effects of finite word length on filter performance:

A finite numbers of bits affect the filter performance and sometime make it inappropriate. In this case the designer have to analyze these affects and select appropriate word length (number of bits) for the coefficients of filter. And all arithmetic operations should be done within the filter length.

Implementation:

Implementation of filter in software and hardware, after having filter coefficients, chosen a suitable structure and verified the filter performance after quantizing the coefficients and filter variables to the selected filter word length is acceptable and implement in a suitable software or hardware.

FIR (Finite Impulse Response) Filters:

FIR filters can be designed to have linear phase response and easy to implement. Due to non-recursive nature of FIR filters they offer significant computational advantages as compared to IIR. FIR filters suffer less from the effects of finite word length than IIR filters. FIR filters should be used whenever there is requirement to exploit any of the advantages above, in particular the advantage of linear phase. Specifications of the FIR filter contain to maintain the maximum pass band ripple, maximum stop band ripple, pass band edge frequency and stop band edge frequency. For the calculations of FIR filter coefficients requires large amount of computations. The coefficients can be calculated by using different software and tools such as FDA analysis tool in MATLAB. Filter design and analysis tool (FDA) is one of the most important tools of MATLAB, which is used to design the digital filter blocks more accurate and fast [2].
The most important property to design FIR filter is that its phase response should be linear. For this reason we shall look more closely at this property. When we have to pass any signal through the filter we see the changing in its amplitude and phase. The nature and amount of the variation of the signal is dependent on the amplitude and phase characteristics. We have modified the characteristics of the phase of filter by knowing its group delay. If a signal consists of several frequency components (such as speech waveform or a modulated signal) the phase delay of the filter is the amount of time delay each frequency component of the signal undergoes through the filter. The group delay on the other hand is the average time delay of the composite signal suffers at each frequency. Mathematically the phase delay is the negative of the phase angle divided by frequency is shown in equation (2.4) and the group delay is the negative of the derivative of the phase with respect to frequency is shown in equation (2.5).
𝑇𝑝=−𝜃(𝜔)/𝜔 (2.4).
𝑇𝑔=−𝑑𝜃(𝜔)/𝑑𝜔 (2.5).

READ  Comparing the Replacement Probability to the Prediction Probability

IIR (Infinite Impulse Response) Filters:

The practical design methods for digital infinite impulse response (IIR) filters include popular methods which permit analog filters to be converted into equivalent digital filters. IIR digital filters are given by the following equation:
𝑦(𝑛)=Σℎ(𝑘)𝑥(𝑛−𝑘) (2.16).
𝑦(𝑛)= Σ𝑏𝑘 𝑥(𝑛−𝑘)−Σ𝑎𝑥 𝑦(𝑛−𝑘) (2.17).
where ℎ(𝑘) is the impulse response of the filter which is infinite in nature where 𝑎𝑘& 𝑏𝑘 are the coefficients of the filter, 𝑥(𝑛) and 𝑦(𝑛) are the input and output of the filter. An important thing in the design process is to find the suitable values for the coefficients.
An IIR filters have normally requires less coefficients than an FIR filter for the same specifications so we have use IIR filter when we requires sharp cutoff. As compared to the IIR filters, the FIR filters required more coefficients because of the sharper cutoff. FIR filters require more processing time and storage for their implementation for a specific given amplitude. However one can readily take advantage over the computational speed of the FFT and multi-rate technique has used to improve the FIR filters. A plot of the poles and zeros of the transfer function is known as pole zero diagrams and provide a very useful way of representing and analyzing the filter in complex z plane. For the filter to be stable its entire poles must be lie inside the unit circle and there are no restrictions on the zero location. If we have zeros on the unit circle that means your filter will cancel any signal with that frequency completely because the transfer function is zero and if the zero are outside, then the unit circle are non-minimum phase zero and minimum phase zero when zeros lies inside the unit 𝑍−1 + + + + 𝑤1(𝑛) 𝑦1(𝑛) 𝑘1 𝑘1 𝑥(𝑛)circle. The system, which does not have, zeros in the right half s-plane, are called minimum phase systems. If a transfer function has poles and/or zeros in right half of s-plane then it is called non-minimum phase. The phase response is always larger than for systems, which have minimum phase behavior with same amplitude response. Many applications such as microwave, radar and optical communications, video signal processing and digital image processing often used digital filters in order to manage the constant group delays to overcome the large signal delays, distortion and disturbances. Infinite impulse response digital filters are mostly preferred against finite impulse response filters because of their computational performance, frequency selectivity, and low group delays [6].
But along with this, the designing of IIR filters is much challenging task than FIR filters since their group delays are non-uniform, and optimization problems becomes non-convex in result. Transformation of the non-convex IIR filter design had been achieved by using the Semi-definite programming (SDP), linear programming (LP) and quadratic programming (QP) which shows better efficiencies by approaching optimal solution in mini-max and least-squares and least error norm sense.

Finite Word Length Affects in IIR filters:

The coefficients, 𝑎𝑘 and 𝑏𝑘 obtained earlier are of infinite or very high precision, typically six to seven decimal places. When an IIR digital filter is implemented in a small system, such as an 8-bit microcomputer, errors arise in representing the filter coefficients and in performing the arithmetic operations specified by the difference equation. These errors reduce the performance of the filter and filter should be unstable. Before the implementation of an IIR filter, it is important to determine the amount to which its performance will be reduced by finite word length effects and to find a remedy if the reduction is not suitable. In general, the effects of these errors can be reduced to acceptable levels by using more bits but this may be at the expense of increased cost.
The main errors in digital IIR filters are as follows:
 ADC quantization noise which results from presenting the samples of the input data, 𝑥(𝑛), by only a small number of bits.
 Coefficient quantization errors caused by presenting the IIR filter coefficients by a finite number of bits.
 Overflow errors which result from the additions or accumulation of partial results in a limited register length.
 Product round off errors caused when the output 𝑦(𝑛), and results of internal arithmetic operations are rounded to the allowed word length.

Table of contents :

1 Introduction
1.1 Background
1.2 Problem Definition
1.3 Methodology
2 Digital Filters
2.1 Introduction:
2.1.1 Advantages and disadvantages of Digital Filters
2.1.2 Design of Digital Filters
2.2 Types of Digital Filters
2.2.1 FIR (Finite Impulse Response) Filters:
2.2.2 2.2.2 IIR (Infinite Impulse Response) Filters:
2.2.3 Comparison between FIR and IIR Filters
3 Design and Implementation of Filters (MATLAB)
3.1 FIR Filter
3.2 IIR Filter
4 Structure Design for Field Programmable Gate Array (FPGA) through Digital Filters
4.1 Introduction:
4.2 FPGA Structure:
4.2.1 Modern FPGAs
4.2.2 Configuring FPGA
4.2.3 Applications of FPGA
4.2.4 Advantages of FPGA
4.3 Design of Structures for FPGA:
4.3.1 Using FIR Filter:
4.3.2 Using IIR Filter:
5 Results and Verification of Structures
5.1 Introduction
5.2 Implementation & Verification:
5.2.1 Verification of FIR filter
5.2.2 Verification of IIR filter
5.2.3 Comparing:
5.3 Digital Filters as a part of Measuring System:
5.3.1 Analog-to-Digital conversion
5.3.2 The 5V to 3.3V conversion
6 Conclusion
7 Appendix A (Code)
A.1 FIR LOW-PASS FILTER (MATLAB, M=19)
A.2 IIR LOW PASS FILTER (MATLAB, M=9)
A.3 FIR LOW PASS FILTER (VERILOG)
A.4 IIR LOW PASS FILTER (VERILOG)
8 Bibliography

GET THE COMPLETE PROJECT

Related Posts