You are on page 1of 11

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/303775161

A Modified Artificial Bee Colony Optimization based FIR filter Design with
Experimental Validation using FPGA

Article  in  IET Signal Processing · June 2016


DOI: 10.1049/iet-spr.2015.0214

CITATIONS READS

15 257

3 authors:

Atul Kumar Dwivedi S. Ghosh


Bundelkhand Institute of Engineering and Technology National Institute of Technology Raipur
30 PUBLICATIONS   103 CITATIONS    108 PUBLICATIONS   700 CITATIONS   

SEE PROFILE SEE PROFILE

Narendra Londhe
National Institute of Technology Raipur
111 PUBLICATIONS   804 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Development of efficient Devanagari Script Input Based P300 Speller system for Brain-Computer Interface View project

FIR Filter Design View project

All content following this page was uploaded by Narendra Londhe on 02 August 2016.

The user has requested enhancement of the downloaded file.


IET Signal Processing

Research Article

Modified artificial bee colony optimisation ISSN 1751-9675


Received on 4th June 2015
Revised 11th May 2016
based FIR filter design with experimental Accepted on 13th May 2016
doi: 10.1049/iet-spr.2015.0214
validation using field-programmable gate www.ietdl.org

array
Atul Kumar Dwivedi1, Subhojit Ghosh1 , Narendra D. Londhe1
1Department of Electrical Engineering, NIT Raipur, Raipur, India
E-mail: sghosh.ele@nitrr.ac.in

Abstract: Optimisation based design of finite impulse response (FIR) filters has been an active area of research for quite some
time. The various algorithms proposed for FIR filter design aim at meeting a set of desired specifications in the frequency
domain. Evolutionary algorithms have been found to be very effective for FIR filter design because of the non-linear, non-
differentiable and non-convex nature of the associated optimisation problem. The present work proposes two modified versions
of a recently developed evolutionary technique i.e. artificial bee colony (ABC) algorithm for design of FIR filters. The applicability
of the proposed approach has been evaluated by comparing its response with conventional reported filter design techniques.
The proposed variants of ABC are found to outperform other non-convex algorithms in achieving the desired specifications. In
addition to the simulation results, the designed filters have been implemented in hardware using Xilinx-xc7vx330t-3ffg1157
(Virtex-7) field programmable gate array. The hardware implementation allows validation of the proposed techniques for
practical filtering applications by considering real time operation parameters.

1 Introduction The limitations have motivated the applications of evolutionary


algorithms (EAs) for filter design. For filter design, EA based
The greater ease of implementation and faster execution time, has techniques have been found to meet the desired specifications of
led to wide usage of digital filters for different signal processing ripple content and attenuation over a wide range [12–22]. The
applications. For applications where stability and linear phase are inclusion of the stochastic behaviour in EAs leads to robustness of
of prime importance, digital filters are implemented in a non- the technique to problem size and constraints. For example, in the
recursive manner. The most common type of non-recursive filter is present problem of FIR filter design, the proposed scheme can be
the finite impulse response (FIR) filter. In recent times FIR filters easily extended for designing filters of higher order and dimension.
have found wide applications in digital communications, The various techniques reported in this regard include simulated
biomedical signal, speech and audio signal processing. annealing [12], hybrid genetic algorithm [13], Tabu search [14],
In spite of the advances in the development of design particle swarm optimisation (PSO) [15, 16], differential evolution
algorithms for FIR filters, there still exist some issues related to (DE) [17, 18], seeker optimisation algorithm (SOA) [19],
low ripple, sharper cut off, filter order reduction and power opposition based harmony search algorithm [20] and cat swarm
minimisation. For this purpose, optimal filters are designed by optimisation (CSO) [21]. Most of the above reported techniques
solving an optimisation problem based on a specified criterion, so suffer from the limitations of tuning and selection of a large
as to achieve a desired frequency response. In this regard number of control parameters, pre-mature convergence and large
approaches based on tree search [1], least square [2], neural execution time. In this context, a recently developed evolutionary
networks [3] and eigen vector [4] have been reported, which technique i.e. artificial bee colony (ABC) algorithm has been
provide sub-optimal filters, post convergence. To design a globally applied in the present work for the design of FIR filters. In [22],
optimal filter, convex non-linear optimisation [5] and non-convex ABC algorithm has been applied for the design of infinite impulse
global optimisation algorithms (OA) have been used in [6–11]. For response filters. The conventional ABC algorithm, in spite of
filter design, the major challenge of any optimisation based possessing the advantage of easier implementation suffers from the
technique is to achieve a desired frequency response with reduced limitation of slow convergence and getting trapped into the local
computational cost for the non-convex optimisation problem. The minima. To overcome this, two modified versions (ABC MOD-I
non-convexity of the objective function and hence the optimisation and ABC MOD-II) of the conventional ABC algorithm has been
problem is attributed to the presence of complex, non-linear proposed. The proposed variants aim at increasing the probability
relationship between the frequency response deviation and the of global convergence with reduced computational cost by
filter coefficients. Most of the optimisation based filter designing improving the search behaviour.
techniques quantifies the deviation in terms of absolute value, L2 All the reported EA based techniques discussed above have
norm or in logarithmic scale, thus leading to non-linear objective concentrated on simulations and have not addressed issues related
functions. The gradient based global OAs were based on initial to hardware implementation of the designed filter. Genetic
seed solution, and hence have a higher probability of converging to algorithm has been used in [23] for optimisation of high speed
the local minima. Among the non-convex techniques, the filled implementation in field-programmable gate array (FPGA) for
function based methods search for a global minimum among the improving pipelined architecture. GA suffers from limitation of
local minima. In other words they employ certain auxiliary premature convergence to the local optima, selection of number of
functions to move successively from one local minimum to another tuning parameters and high computational cost. With the filter
better one. Filled function based techniques though quite effective coefficients obtained post-convergence of the proposed OAs, the
in providing the global solution are not suitable for problems hardware implementation on a digital platform allows analysis of
having large number local minima. Moreover, like other non- quantisation errors, parasitic delays, area and power consumption.
convex techniques they are sensitive to initial parameterisation. These factors play an important role on the filter performance for

IET Signal Process. 1


© The Institution of Engineering and Technology 2016
real time applications. In the present work, along with the pass band and stop band, respectively. Most of the existing works
simulations, the low pass filters (LPFs) designed using the reported on the application of EA for FIR filter design have not
proposed techniques are experimentally validated by its concentrated on the minimisation of TW with faster pass band to
implementation using virtex-7 FPGA (device- stop band transition. In the present work the objective function (4)
xc7vx330t-3ffg1157). FPGA technology provide great flexibility in is modified by including a factor for sharper transition with
filter architecture and high reliability in its implementation. The reduced deviation between pass band and stop band cut off
hardware results have been compared with simulations and the frequency. With the TW factor the optimisation function is given as
complexity of the hardware required has been discussed in terms of
the utilised device logic, area and power requirements. �p
��
The major challenges of the present work can be summarised �3 = ∑ ��� ��� �p

− 1 − �p
as: application of an optimisation technique for filter design that �=0
converges to the globally optimal solution with reduced s . t . � ≤ �p
computational cost and implementing the filters using FPGA with (5)
�S
reduced hardware, area and power requirements. The contribution �� ��
of this work is three fold, first two modified versions of classical
+
� s
� − �p + ∑ ��� ��� �s

− �s
�=1
ABC algorithm has been proposed which have a higher probability s . t . ��, � > ��
of convergence to the global optimum and is computationally less
intensive as compared with other evolutionary optimisation where k is a constant used to provide a relative weightage to TW in
techniques. Second the proposed techniques have been applied to respect of other terms. For a given iteration i, k is evaluated as
FIR filter design with the aim of minimising ripple content and
transition width (TW). Finally to verify the applicability of the �2 � − 1
proposed techniques for real time applications, the designed filters �= (6)
have been implemented using FPGA. For all these cases a suitable �1 � − 1 + �3 � − 1
comparison has been carried out with existing non-convex heuristic
and deterministic optimisation techniques. where E1, E2 and E3 represent first, second and third error terms of
The paper is organised as follows. In the next section, (5). The objective function (5) is optimised to obtain the optimal
formulation of FIR filter design as an optimization problem has filter coefficients using modified ABC algorithm. FIR filters are
been discussed. In section 3, ABC algorithm and its modifications implemented in FPGA, using the optimised coefficients.
are discussed. In Section 4, FPGA implementation is discussed,
Section 5 describes the simulation and comparison of designed 3 ABC algorithm
filters with the state of the art algorithms, and finally Section 6
concludes the paper. ABC algorithm [22] is a relatively new EA which mimics the
intelligent information sharing behavior of honey bees regarding
the nectar amount available in food sources. The food sources are
2 FIR filter design using evolutionary algorithm assumed to be in the proximity of nectar containing nest. Each food
In the present work, FIR filter design process has been framed as source location represents a possible solution to the optimisation
an optimisation problem and further solved using the proposed problem. For the present work, the location corresponds to the
versions of conventional ABC algorithm. The algorithm filter coefficients. The hive of the bees is composed of: (i)
determines filter coefficients for a given set of filter specifications employed bees which are associated with particular food sources
based on the minimisation of the deviation between frequency and their locations, and (ii) unemployed bees which look for food
responses of desired and designed filter. The objective function can sources to exploit them. Further unemployed bees consist of
be framed as onlooker bees and scout bees. Based on the observation of
employed bees, the onlooker bees understand the location, distance
�1 = max ( | �(�) | − �p) + max ( | �(�) | − �s) and quality of the food sources. In ABC, this observational
(1)
� ≤� p � ≥� s behaviour of bees is used for solving optimisation problems.
An initial random population is generated for employed bees
where δs and δp are desired stop band and pass band ripple (PBR) and onlooker bees. Each solution xij(i = 1, 2, …, S) is a D-
content, E(ω ) is the deviation calculated from dimensional matrix given as:

� � = � � �d � − � � (2) �11 �12 … �1D


�21 �22 … �2D
where Md(ω ) and M(ω ) are the amplitude responses of the desired ��� � = (7)
and designed filters and … … … …
��1 ��2 … ��D �×�
�d � = �d � |� = e −j� (3)
where D is the number of parameters to be optimised. After
where ω  = (π/N)n, {ωε [0, π]}. Here the main aim of filter design initialisation, the population of bees (solutions) is subjected to
is to minimise the difference between desired and designed number of cycles, c = 1, 2, 3…MCN (max cycle number). An
amplitude response of the filter at N samples. In this regard, the employed bee produces a modification in the position depending
objective function specified in (1) has been modified as upon the local information and then the fitness (nectar) is
calculated. If fitness at new location is higher than the previous
�p one, the bee memorises the new location. The new location is given
��
�2 = ∑ ��� ��� �p

− 1 − �p by
�=0
s . t . � ≤ �p
��, � = ��, � + ��, � ��, � − ��, � (8)
(4)
�S
��
+ ∑ ��� ��� �s

− �s where kε{1, 2, …, S × N} and jε{1, 2, …, D} are randomly chosen
�=1 indexes such that k ≠ i, ϕi,j is a randomly generated number
s . t . � s > �s between [−1, 1], which controls the production of food sources
around xi,j. It can be observed from (8) that, reduction in the
where Hp and Hs are the amplitude responses of the designed filters perturbation of x leads the search to its optimum value.
in pass band and stop band with Mp and Ns number of samples in The employed bees after completing their search process, share
the suitability of the food sources and position with onlooker bees.
2 IET Signal Process.
© The Institution of Engineering and Technology 2016
An onlooker bee evaluates the nectar information taken from all hence
employed bees and chooses a food source with a probability Pi
calculated as: � ��� � + 1 = � ��� � (17)

fit� from (16) and (17),


�� = (9)
∑�� = 1 fit�
� ��� � + 1 ≥ � ��� � (18)
Similar to employed bee, an onlooker bee also calculates nectar
amount at each location updates neighbourhood locations and With every iteration the fitness improves or at least the best value
employs greedy selection based on probability. If nectar in the is maintained. With lesser diversity after few iterations the solution
present location is higher, it memorises it. may converge to local optima. However, diversity in population is
Food source location which has repeatedly lowest nectar is maintained by employing scout bees. Assuming the scout bees
abandoned based on the limit value (L). These food source properly explore the search space, the global convergence of the
locations are termed as scout bees. The location of scout bee is proposed techniques can be ensured.
updated and new random location is given for nectar calculation.
If there is any scout bee, it is replaced with a new randomly 3.2 Modified ABC algorithm
generated solution as
The conventional ABC suffers from two major limitations for
��� = �min + � . �max − �min (10) optimisation problems which are multimodal and/or
� � �
multidimensional i.e. slower convergence (larger execution time)
and trapping into the local optimal solution. With the aim of
where r is a random number in [0,1] and θij is the food source
overcoming these limitations, two modifications in the
locations of selected onlooker bees. The best location is conventional ABC have been proposed in the present work. In the
memorised, following which the cycle count is updated till MCN. first proposed variant of ABC, the onlooker bee position is updated
based on the best solution (bee position) obtained, instead of a
3.1 Convergence of ABC random position in search space. This leads to the following
In (7), xij(c) represents initial population, and the corresponding equation for updating bee position
fitness isf(xij(c)). In the employed bee phase of algorithm, the new
��� = �best, � + ��, � �best, � − ��, � (19)
food location is determined in (8), for which the fitness is given by
where �best, � ���, � for ∀�, � ∈ 1.2…� represent location of
� ��� � = � ��� � + �� (11)
bees for minimum value of function in the current iteration.
Unlike conventional ABC which uses greedy selection for
where ε is a constant multiplier which generates perturbation εΔf in onlooker bees, in the proposed algorithm tournament selection has
the fitness f(xij(c)). Greedy selection is applied between f(xij(c)) and been adopted which gives equal unbiased importance to every
f(vij(c)). In greedy selection process, the employed bee memorise solution. While replacing (8) by (19) leads faster movement of all
better fitness between f(xij(c)) andf(vij(c)) as the bees towards best position, incorporation of tournament
selection improves diversity in the population, which might be lost
� ��� � = max � ��� � , � ��� � (12) due to motion of all bees along the same direction. The proposed
algorithm with these modifications is further referred as ABC
thus MOD-I.
In spite of the improved convergence speed, ABC MOD-I still
� ��� � ≥ � ��� � (13) suffers from the problem of converging to local minima. Thus,
though effective for unimodal functions, it fails to provide the
The solution xij improves its fitness value and moves towards the global solution for multimodal and multidimensional functions.
The present problem of FIR filter design involves an objective
optimal solution, however it does not guarantee convergence to function which is both multimodal and multi-dimensional. The
global optimum. To ensure achieving global optimum solution, a dimension of the problem increases with increase in the order of
probabilistic selection process is used by onlooker bees. Based on the filter. Hence, further modification has been proposed in
the probability obtained using (9), a set of new location θij(c) is conventional ABC. To achieve the same, a stochastic component
calculated as has been included, which increases diversity in search process
through randomness in the position updation (8). This component
��� � = ��� � + � ��� � − ��� � (14) takes into account the lesser exploration that might arise from the
similar movements of bees. With the random component in the
where ψ is random number between [−1 1]. Food location i, is search process, (19) is modified as
selected based on probability (9). The selection ensures faster
movement of the algorithm towards optimal fitness. As θij(c) is ��� = �best, � + ��� �best, � − ��, � + �¯ �� ��, � − ��, � (20)
selected based on higher probability,
where k ∈ {1, 2, …SN), xi,j is the current solution, ϕij and �¯ ij are
� ��� � ≥ � ��� � (15) randomly generated numbers between −1 and 1. Henceforth the
above algorithm is referred as ABC MOD-II.
Bees associated with non-selected food locations after L selections,
are referred as scout bees. The scout bee location is updated using
4 FPGA implementation
(10). The second term in (10) will be large initially and will reduce
with the approach of solution towards global optimum. As scout The output of a FIR filter can be written as
bee search somewhere far from the current employed bee location,
it ensures wider exploration of the search space and hence �−1
increases the probability of global convergence irrespective of �= ∑ ℎ � �d � (21)
�=0
initial population (xij). Further, bee locations θij, become employed
bee
where xd(k) = x(n − k). In this paper FIR filters are implemented
��� � + 1 = ��� � using distributed arithmetic (DA). In DA, input is represented in 2's
(16)

IET Signal Process. 3


© The Institution of Engineering and Technology 2016
Fig. 1  Implementation architecture of the FIR filter

The multiplierless architecture [24] is designed using shift and


network. The types of adders that are used in shift and add
(coefficients) multiplication network are named as coefficient
multiplication adders (CMAs) and other adders as structural adders
(SAs). The effective word length (EWL) of a coefficient is
calculated by its word length excluding the sign bit and the leading
zero bits of the coefficient values; and the EWL of the filter refers
to the EWL of the coefficient with the maximum magnitude. The
mean adder length (MAL) is calculated from adder lengths of
CMAs and SAs as

Fig. 2  Example shift and add network used for implementation ∑� ���CMA + ∑ � ��SA

architecture for coefficients 2, 3 and 43 MAL = (27)


NA
complement system. Assuming B to be the word length of the where, NA is the number of adders. Here by adder length we mean
samples, then the input can be written as number of cascaded adders. The filters are implemented using full
�−1
adders. The number of full adders to implement jth fundamental bj,


�d � = − �d � + [�d � ]� 2−� (22) denoted as NFAFUN are expressed as
0
�=1
� �
NFAFUN = log2 � � + �in − �CMA (28)
Substituting this in (21) we get
The number of full adders required for SA (for 0 < i < N) which
�−1 �−1 �−1
adds h(n − i)x into the tap delay line can be expressed as
�= − ∑ ℎ � �d � 0
+ ∑ ℎ � ∑ [�d � ]� 2−� (23)
�=0 �=0 �=1

which can be written as



NFASA = log2 ∑ ℎ � − � + �in − ��SA (29)
�=0

�−1 �−1 �−1 � �


The total number of adders are calculated using NFAFUN and NFASA .
�= − ∑ ℎ � �d � 0
+ ∑ 2−� ∑ ℎ � [�d � ]� (24)
In the next section, the complexity of hardware used in the
�=0 �=1 �=0
present work has been compared with other reported works on
or FPGA based FIR implementation.

�−1
5 Results and discussion
�= ∑ 2−� �� − �0 (25)
�=1 To evaluate the performance of the proposed algorithms (ABC
MOD-I and ABC MOD-II), for filter design applications, a
where comparison has been carried out by considering two examples. In
the first example, the designed filters have been compared with
�−1 heuristic EAs. In the second example the proposed design method
�� = ∑ ℎ � [�d � ]� (26) has been compared with the non-convex deterministic optimisation
�=0
methods. Finally the filters are implemented in hardware using
FPGA and the hardware complexity in terms of device utilisation
Since all the elements of the N point binary sequence [Xd(k)] are has been compared with other techniques.
evaluated for for (0 ≤ k ≤ N − 1), all the values of Kb are pre-  
computed and stored in the look up table (LUT), they can be read Example 1: A low pass FIR type-I filter is considered, with the
out directly using the bit sequence [xd(k)]b. Based on the discussion following specifications, fpass = 450 Hz, fstop = 550 Hz, fsampling = 
above, the architecture used for filter implementation is shown in 2000 Hz, filter order = 20, PBR (δp) = 0.1 and stop band ripple
Figs. 1 and 2. (SBR) (δs) = 0.01. For selecting the optimisation control
parameters, a number of pilot runs with different settings were

4 IET Signal Process.


© The Institution of Engineering and Technology 2016
executed, based on which the colony size and number of cycles are
fixed at 50 and 500, respectively, while scout bee limit is taken as
20.
The effectiveness of proposed modified versions of ABC
algorithm for FIR filter design has been evaluated in two stages. In
the first stage the comparison has been done between ABC, ABC
MOD-I and ABC MOD-II. Further comparison has been done
using filters designed using other EAs, i.e. PSO [15], DE [17],
CSO [21], Hybrid DE and PSO [16] and SOA [19]. The
comparison has been carried out in terms of the PBR, SBR,
maximum attenuation in stop band (SBA) and TW. The frequency
response is obtained using filter coefficients (Table 1) generated
following convergence of the optimisation problem (7) is shown in
Fig. 3.
Fig. 4 reports the iterative variation of the objective function for
all three algorithms. One of the proposed variant of ABC, i.e. ABC
MOD-II, not only provides a better solution i.e. filter coefficients
resulting in lesser ripples, but also achieves the same with lesser
iterations.
It can be observed that among all the cases the maximum SBA
is provided by ABC MOD-II (Fig 3 and Table 2). Near similar
characteristics are observed for all the cases in the PBR as well as
in the TW. The desired PBR i.e. 0.1 is achieved to the maximum
extent by ABC MOD-I.
To evaluate the appropriateness of ABC MOD-I and ABC
Fig. 3  Frequency response of LPF designed using ABC, ABC MOD-I and MOD-II, they have been compared with other reported EAs
ABC MOD-II (Table 3) for a FIR LPF designed with the specifications

Fig. 4  Convergence profile for ABC and modified ABC algorithms

considered in [15–21].
From Table 3 it can be observed that ABC MOD-II is able to
Table 1 Optimised coefficients of the FIR LP filter of 20 achieve a performance comparable with PSO with much reduced
order order i.e. 20 instead of 30. For the same filter order i.e. 20,
h(n) ABC ABC MOD-I ABC MOD-II maximum SBA is observed in the proposed ABC MOD-II,
h(1) = h(21) −0.01921411 0.00933007 0.02888959 followed by CSO and ABC MOD-I. Closeness to the desired PBR
h(2) = h(20) −0.00444831 0.02487247 0.04744011 has been observed to be maximum in ABC MOD-I followed by
ABC MOD-II and ABC. For PBR, ABC and its variants are found
h(3) = h(19) 0.02374065 −0.00434513 0.00586561
to be most effective followed by SOA. ABC MOD-II outperforms
h(4) = h(20) 0.02430839 −0.04021879 −0.0357454 all other reported techniques in maximum SBA and maximum SBR
h(5) = h(17) −0.02397951 −0.00365455 0.00135159 whereas a similar TW is observed for ABC MOD-II and CSO.
h(6) = h(16) −0.04191195 0.06091880 0.06145737 To further compare the proposed techniques with other known
h(7) = h(15) 0.03489913 0.01041345 0.00390754 non-convex global OAs, following example has been considered
h(8) = h(14) 0.11170801 −0.09949873 −0.10000000 for experimentation as in [8–11].
h(9) = h(13) −0.02930880 −0.00560992 0.00291659  
Example 2: A filter with PBR = 0.1, SBA = −40 dB, length 28 with
h(10) = h(12) −0.31026400 0.31097220 0.31869221
0.128 and 0.2048 pass band and stop band frequencies has been
h(11) −0.45779553 0.50001853 0.50482147 considered as in [11]. For selecting the optimisation control

IET Signal Process. 5


© The Institution of Engineering and Technology 2016
parameters, a number of pilot runs with different settings were 5.1 Computational complexity evaluation
executed, based on which the colony size and error goal are fixed
For evaluating the computational cost associated with the proposed
at 50 and 10−3, respectively, while scout bee limit is taken as 25.
algorithms, a comparison has been carried out with other heuristic
The effectiveness of the proposed algorithms has been evaluated
and deterministic non-convex optimisation techniques, in terms of
based on spectral characteristics of filters like PBR, SBR and
execution time required to achieve a defined convergence criterion
computation time (CT) to achieve the desired error goal. The
on a common platform. The objective function discussed in (18)
results obtained has been depicted in Table 4 and compared with
has been considered to optimise a low pass filter with 0.30 and
Remez [8], mixed integer linear programming (MILP) [9],
0.50 pass band and stop band frequencies, respectively. The
polynomial time algorithm (PTA) [10], filled function method
execution time required for different non-convex heuristic and
(FFM) [11], modified FFM [7] and pattern search algorithm.
stochastic algorithms is outlined in Table 5. The algorithms are
It can be observed from Table 4 that the spectral characteristics
obtained using proposed algorithms are competing to other global executed using MATLAB 8.1, on a Intel® Core i5 CPU with 2.67 
non-convex algorithms. Proposed ABC MOD-II outperforms all GHz, 4 GB RAM and 64 bit windows 7 (Build 7600).
other algorithms in terms of SBA, whereas ABC MOD-I The lesser computational cost of non-heuristic techniques
outperforms all other algorithms in terms of PBR. (Remez, MILP, FFM) as compared with the proposed and other
EAs (PSO, SOA, CSO, ABC, ABC MOD-I, ABC MOD-II) is
clearly reflected from Table 5. This is attributed to the absence of
population based search in deterministic techniques. Among the
Table 2 Comparison of performance parameters for evolutionary techniques one of the proposed variants, i.e. ABC
different algorithms MOD-I is found to provide faster convergence relative to other
filter design methods. However it may be noted for the present
Properties Algorithm application, where filter design task is carried out offline,
ABC ABC MOD-I ABC MOD-II minimisation of ripple content is more significant than
max PBR (normalised) computational effort. For adaptive filtering applications faster
max SBR (normalised) 0.04 0.023 0.017 convergence is an important consideration.
max SBA (dB) 26.81 32.83 34.96
TW (normalised) 0.1505 0.1404 0.1108 5.2 Hardware results

Table 3 Comparison of LPF design using proposed algorithm with other state of the art EAs
Model Parameters
Order Max SBA, dB Max PBR (normalised) Max SBR (normalised) TW (normalised)
PSO [15] 30 39a 0.1 0.01 0.12a
DE [18] 20 NRb 0.15a 0.039a 0.18a
SOA [19] 20 32.30 0.138 0.0243 0.0896
Hybrid DE and PSO [16] 20 24 0.257 0.259 0.07a
CSO [21] 20 33.99 0.164 0.0198 0.0946
ABC 20 26.81 0.08 0.04 0.1504
ABC-MOD-I 20 32.83 0.09 0.023 0.1404
ABC MOD-II 20 34.96 0.12 0.017 0.1108
Abbreviations: aXYZ, approximate value, bNR, not reported.

Table 4 Comparison of LPF design using ABC, ABC MOD- For experimental validation of the proposed modified versions of
I, ABC MOD-II algorithm with other reported non-convex ABC algorithm, designed filters are implemented using
global OAs in terms of pass band ripple and stop band xc7vx330t-3ffg1157 FPGA. Implementation in FPGA allows
attenuation analysing the effects of quantisation error, parasitic effects and
Technique PBR, norm SBA, dB inherent delays on the filter characteristics, which were not
Remez exchange [8] 0.17 −30.3 considered in simulations. The experimental setup used is shown in
Fig. 5. Xilinx 14.7 IDE is used for synthesis, analysis and
MILP [9] 0.16 −33.8
implementation purpose.
PTA [10] 0.17 −30.7 Filter coefficients are represented using a full precision, fixed
0.16 −34.4 point arithmetic with integer length of 16 bit and fractions of 16
0.13 −31.3 bit. The low pass characteristics of the designed filters are verified
0.10 −33.5 by generating a set of sinusoidal signals with fixed amplitude and
0.13 −34.8 variable frequency and applying it to the FPGA board. The time
0.11 −35.4 domain signal is observed in the oscilloscope (Fig. 5), while the
frequency response of designed FIR filters is observed using Xilinx
FFM [11] 0.17 −31.2
systems generator JTAG interface with Simulink. The
0.16 −34.4 corresponding frequency responses obtained with ABC, ABC-
0.13 −31.6 MOD-I and ABC MOD-II is reported in Fig. 6.
0.10 −34.1 As compared with the simulated frequency response, an
0.13 −36.9 increase in the ripple content and TW is observed in the hardware
0.11 −35.4 results, for all the three cases.
MFFM [7] 0.11 −39.64
The architecture used for FPGA implementation is shown in
Figs. 1 and 2. The device resources utilised in the FPGA during
pattern search 0.14 −30.32
implementation of proposed algorithms are outlined and compared
proposed ABC 0.24 −33.65 with the traditional FPGA implementation techniques. For
proposed ABC MOD-I 0.10 −37.43 comparison a set of benchmark LPF specifications are described in
proposed ABC MOD-II 0.063 −39.9 [25] has been considered. The comparison has been carried out in

6 IET Signal Process.


© The Institution of Engineering and Technology 2016
Fig. 5  Experimental set-up for the hardware implementation of FIR filters using Virtex-7(device-xc7vx330t-3ffg1157)

Table 5 CT (seconds) required to achieve desired stopping criterion with 10% tolerance limit
Stopping criterion 3 2 1 0.5 0.25
PSO min 0.0900 0.0991 1.0371 9.0123 26.3420
max 0.1227 0.1343 3.1459 3.6556 26.9249
mean 0.1003 0.1121 3.1154 5.4990 26.6724
SD 0.0119 0.0146 0.1171 0.2601 0.2164
SOA min 0.8664 1.7811 2.2966 14.1301 15.5738
max 2.9807 2.3867 4.2522 18.7462 22.6951
mean 1.5106 1.9429 3.9725 16.2180 28.7501
SD 0.7515 0.2379 0.3437 2.9525 3.1619
CSO min 0.9474 1.0223 18.5379 40.5500 69.1223
max 1.8963 5.4477 49.3771 59.6938 71.2235
mean 0.9971 3.4863 37.2842 52.4766 69.9909
SD 0.2592 0.8108 10.0231 7.6038 0.7157
Remez min 0.1212 0.2465 0.4351 0.8654 1.0101
max 0.3981 0.4581 0.8795 1.4323 1.4021
mean 0.2739 0.4365 0.7346 1.0634 1.2798
SD 0.0947 0.1527 0.1541 0.3891 0.1032
MILP min 0.2132 0.6040 0.8756 1.9345 3.0342
max 0.6431 0.9453 1.2865 3.2399 4.6534
mean 0.4325 0.8395 1.0825 2.3792 4.2871
SD 0.1523 0.1377 0.1557 0.4807 1.3943
FFM min 0.1002 0.1001 0.9991 2.2201 6.2340
max 0.4965 0.8901 2.2309 4.3233 8.2130
mean 0.2750 0.6417 1.4201 2.8460 7.7942
SD 0.1594 0.2948 0.4571 0.8378 1.2814
pattern search min 0.0113 1.0176 5.0217 10.1438 20.3210
max 0.0207 3.0158 8.0171 17.4387 34.5423
mean 0.0128 1.6152 6.6185 14.7125 27.2062
SD 0.0412 1.0174 1.0180 2.5248 4.8344
ABC min 0.3071 5.6825 6.0441 12.4025 16.4300
max 4.6520 6.6025 6.6025 24.8261 34.4048
mean 2.5243 6.0502 6.0502 17.4168 24.6868
SD 1.6277 0.3436 0.3436 4.3206 5.7960
ABC MOD-I min 0.5829 1.0710 4.7513 9.3682 14.4974
max 0.8474 1.6657 6.2742 11.8603 16.6992
mean 0.6435 1.2612 4.8095 10.2696 15.5165
SD 0.1211 0.2157 0.9361 0.9135 0.7699
ABC MOD-II min 0.5829 1.1174 5.8271 9.5277 15.1466
max 1.0342 2.2954 11.7513 19.9230 23.1423
mean 0.7609 1.8612 7.8095 13.4428 18.9991
SD 0.1716 0.4269 2.4573 3.7020 3.2625

IET Signal Process. 7


© The Institution of Engineering and Technology 2016
Fig. 6  Normalised frequency responses of LPFs after hardware using Virtex-7 FPGA using
(a) ABC, (b) ABC MOD-I and (c) ABC MOD-II algorithms

terms of EWL, MAL, NA, NFA, power and area requirement proposed techniques for real time filtering applications has been
(Table 6). validated by implementing the corresponding filters using FPGA.
It can be concluded from Table 6 that the proposed architecture A reduction in the hardware complexity of FPGA implementation
using shift and add network (Figs. 1 and 2) require less hardware has been observed as compared with the reported techniques for
complexity as well as less power consumption as compared with FIR filter implementation. The comparison of the hardware results
the conventional implementation approaches. Table 7 reports the with simulation reveals that real time implementation leads to
comparison of hardware utilisation of the proposed work with other increment in ripple in both pass band and stop band. Future work in
reported works in the light of the results reported in [33]. this domain would be concentrated on filter design by
Finally Xilinx power estimator has been used for power incorporating the parasitic effects and real time operation
analysis of the design with increase in frequency. Dynamic power parameters of FPGA in the objective function.
consumption using proposed architecture is shown in Fig. 7. A
uniform increase in the dynamic power is observed with increase in 7 Acknowledgment
the operating frequency.
The authors thank Prof R.M. Patrikar, Professor VNIT Nagpur,
India for providing the necessary experimental support.
6 Conclusion
In this paper, two modified variants (ABC MOD-I and ABC MOD-
II) of the conventional ABC algorithm have been proposed for
designing FIR filters. The filter design task of attaining a set of pre-
defined frequency domain specifications has been formulated as an
optimisation problem, and solved using the proposed techniques.
The results obtained have been compared with reported EAs and
deterministic non-convex based optimisation methods. ABC MOD-
II is found to outperform all the other techniques in terms of stop
band attenuation, closeness to the desired SBR and TW. Similarly
ABC MOD-I achieves the least deviation from the desired pass
band ripple. As far as computational time is concerned, the
proposed technique though faster than other heuristic techniques, is
slower than deterministic methods. The applicability of the

8 IET Signal Process.


© The Institution of Engineering and Technology 2016
Table 6 Comparison between the proposed and traditional design algorithms for filter design as sum of powers of two
Filters Method EWL MAL NA NFA Power, mW Area, sq. µm
G1 MILP [26] 6 1.58 17 222 1.65 31,903
ESS [27] 6 1.58 17 222 1.65 31,903
SFT [25] 6 1.9 17 209 1.31 30,794
proposed 6 1.7 17 204 0.06 20,145
Y1 MILP [26] 10 2.75 29 222 1.65 69,851
ESS [27] 10 2.17 29 222 1.65 66,783
SFT [25] 10 2.14 29 209 1.31 65,627
proposed 13 2.12 29 205 1.01 65,432
Y2 MILP [26] 11 2.73 37 721 8.01 85,641
ESS [27] 11 2.73 37 721 8.01 85,641
SFT [25] 11 2.73 37 721 8.01 85,641
proposed 12 2.17 37 721 8.01 84,323
Y3 MILP [26] 11 2.14 59 972 21.39 138,651
ESS [27] 11 2.59 58 919 16.57 132,287
SFT [25] 11 2.14 60 983 22.57 139,832
proposed 10 2.12 61 920 22.15 121,761
L2 MILP [26] 10 2.31 73 1151 24.51 165,696
ESS [27] 11 N.A. 73 N.A. 21.97 N.A.
SFT [25] 10 2.20 72 1127 24.51 164,586
proposed 10 2.11 73 1120 22.15 163,345
S2 MILP [26] 10 2.56 59 1255 27.30 173,732
ESS [27] 10 2.51 58 1268 27.11 174,849
SFT [25] 13 2.41 57 1225 24.05 171,143
proposed 10 2.14 57 1210 25.87 175,477

Table 7 Comparison of hardware utilisation and performance of the proposed method with other reported methods
Method Taps Bits Device Slices Flip-flops Four input Max_delay, ns F_max, MHz
LUTs
serial DA FIR [28] 16 16 Spartan 3E 180 171 263 19.2385 –
parallel DA FIR [28] 16 16 Spartan 3E 243 192 407 15.725 –
1-BAAT(bit-at-a-time) pipelined [29] 8 64 Spartan 3E 300 500 290 – 120
2-BAAT pipelined [29] 8 64 Spartan 3E 500 1000 460 – 100
Serial multiplier and serial adder [30] 8 8 Xc4vf100 103 97 162 – 225
Shift/add_form1 [30] 8 8 Xc4vf100 101 48 119 – 79.171
MBF(multiplexer based reconfigurable FIR filter) 6 – Virtex 5349 – 9669 – –
[31]
DPR (dynamic partial reconfigurable FIR filter) 6 – Virtex 4733 – 8427 – –
[31]
add shift method [32] 10 12 Virtex-II 474 916 406 – –
PDA method [32] 10 12 Virtex-II 781 1480 1103 – –
modified retiming serial multiplier [33] 8 8 Xc4vf100 287 196 379 2.713 302.253
proposed method 11 16 Xc7vx330t-3ffg1157 190 108 278 4.04 347.551

[2] Psarakis, E.Z.: ‘A weighted L2-based method for the design of arbitrary one-
dimensional FIR digital filters’, Signal Process. J., 2006, 6, (86), pp. 937–950
[3] Wang, X.-H., He, w.G., Li, T.-Z.: ‘Neural network algorithm for designing
FIR filters utilizing frequency-response masking technique’, J. Comput. Sci.
Technol., 2009, 24, (3), pp. 463–471
[4] Pei, S.-C., Shyu, J.-jy.: ‘Complex eigen filter design of arbitrary coefficient
FIR digital filters’, IEEE Trans. Circuits Syst. II, 1993, 40, (1), pp. 32–40
[5] Wu, S.-P., Boyd, S., Vandenberghe, L.: ‘FIR filter design via spectral
factorization and convex optimization’, Appl. Comput. Control Signals
Circuits, 1999, 40, (1), pp. 215–245
[6] Ho, C.F., Ling, B.K., Benmesbah, L., et al.: ‘Two-channel linear phase FIR
QMF bank minimax design via global nonconvex optimization
programming’, IEEE Trans. Signal Process., 2010, 58, (8), pp. 4436–4441
[7] Ling, W., Ho, C., Teo, K., et al.: ‘Optimal design of cosine modulated non
uniform linear phase FIR filter bank via both stretching and shifting
frequency response of single prototype filter’, IEEE Trans. Signal Process.,
2014, 62, (10), pp. 2517–2530
[8] Ait-Boudaoud, D., Cemes, R.: ‘Modified sensitivity criterion for the design of
Fig. 7  Variation of dynamic power consumption with operating frequency powers-of-two FIR filters’, IEEE Electron. Lett., 1993, 29, (16), pp. 1467–
1469
8 References [9] Li, D., Song, J., Lim, Y.C.: ‘A polynomial-time algorithm for designing
digital filters with power-of-two coefficients’. IEEE Int. Symp. on Circuits
[1] Jaumard, B., Minoux, M., Siohan, P.: ‘Finite precision design of FIR digital and Systems, ISCAS'93, May 1993, pp. 84–87
filters using a convexity property’, IEEE Trans. Audio Electroacoust., 1988, [10] Çiloğlu, T.: ‘Design of FIR filters for low implementation complexity’, IEEE
36, (3), pp. 407–411 Electron. Lett., 1999, 35, (7), pp. 529–530

IET Signal Process. 9


© The Institution of Engineering and Technology 2016
[11] Feng, Z.G., Teo, K.L.: ‘A discrete filled function method for the design of SPIE Defense, Security, and Sensing Int. Society for Optics and Photonics,
FIR filters with signed-powers-of-two coefficients’, IEEE Trans. Signal 2012, pp. 84010–84010
Process., 2008, 56, (1), pp. 134–139 [24] Chandra, A., Chattopdhyay, S., Ghosh, B.: ‘Design and implementation of
[12] Oliveira, H.A.Jr., Petraglia, A., Petraglia, M.R.: ‘Frequency domain FIR filter SORIGA- optimized power of two FIR filter on FPGA’. AASRI Conf. on
design using fuzzy adaptive simulated annealing’, Circuits Syst. Signal Circuit and Signal Processing, 2014, (9), pp. 51–56
Process., 2009, 28, (6), pp. 899–911 [25] Ye, W.B., Yu, Y.J.: ‘Bit-level multiplier less FIR filter optimization
[13] Boudjelaba, K., Ros, F., Chikouche, D.: ‘An efficient hybrid genetic algorithm incorporating sparse filter technique’, IEEE Trans. Circuits Syst. I, 2014, 61,
to design finite impulse response filters’, J. Expert Syst. Appl., 2014, 41, (14), (11), pp. 3206–3215
pp. 5917–5937 [26] Shi, D., Yu, Y.J.: ‘Design of linear phase FIR filters with high probability of
[14] Karaboga, D., Horrocks, D.H., Karaboga, N., et al.: ‘Designing digital FIR achieving minimum number of adders’, IEEE Trans. Circuits Syst. I Reg.
filters using Tabu search algorithm’. Proc. of the IEEE Int. Symp. on Circuits Pap., 2011, 58, (1), pp. 126–136
and Systems, 1997, (4), pp. 2236–2239 [27] Yao, C.Y., Hsia, W.C., Ho, Y.H.: ‘Designing hardware-efficient fixed-point
[15] Najjarzadeh, M., Ayatollahi, A.: ‘FIR digital filters design: particle swarm FIR filters in an expanding sub expression space’, IEEE Trans. Circuits Syst.
optimization utilizing LMS and minimax strategies’. Proc. of the IEEE Int. I, 2014, 61, (1), pp. 202–212
Symp. on Signal Processing and Information Technology, 2008, pp. 129–132 [28] Singh Pal, N., Pal Singh, H., et al.: ‘Implementation of high speed FIR filter
[16] Ababneh, J.I., Bataineh, M.H.: ‘Linear phase FIR filter design using particle using serial and parallel distributed arithmetic algorithm’, Int. J. Comput.
swarm optimization and genetic algorithms’, Digit. Signal Process., 2008, 18, Appl., 2011, 25, (7), pp. 26–32
(4), pp. 657–668 [29] Sudhakar, V., Murthy, N.S., Anjaneyulu, L.: ‘Area efficient pipelined
[17] Karaboga, N., Cetinkaya, B.: ‘Design of digital FIR filters using differential architecture for realization of FIR filter using distributed arithmetic, (ICIII)’.
evolution algorithm’, Circuits Syst. Signal Process., 2006, 25, (5), pp. 649– 2012, vol. 31, pp. 169–174
660 [30] Rashidi, B., Rashidi, B., Pourormazd, M.: ‘Design and implementation of low
[18] Luitel, B., Venayagamoorthy, K., : ‘Differential evolution particle swarm power digital FIR filter based on low power multipliers and adders on Xilinx
optimization for digital filter design’. Proc. of the IEEE Congress on FPGA’, 2011 3rd Int. Conf. Electron. Computing Technology, 2011, 2, (3), pp.
Evolutionary Computation, 2008, pp. 3954–3961 18–22
[19] Saha, S.K., Kar, R., Mandal, D., et al.: ‘Seeker optimization algorithm: [31] Lee, H., Choi, C.-S.: ‘Implementation of a FIR filter on a partial
application to the design of linear phase FIR filter’, IET Signal Process., reconfigurable platform’. Proc. Tenth Int. Conf. Knowledge-Based Intelligent
2012, 6, (8), pp. 763–771 Information and Engineering Systems, (LNAI 4253), 2006, Part III, pp. 108–
[20] Saha, S.K., Dutta, R., Choudhary, R., et al.: ‘Efficient and accurate optimal 115
linear phase FIR filter design using opposition-based harmony search [32] Mirzaei, S., Hosangadi, A., Kastner, R.: ‘FPGA implementation of high speed
algorithm’, Sci. World J., 2013, 2013, (13), pp. 1–16 FIR filters using add and shift method’. IEEE Int. Conf. Computer Design,
[21] Saha, S.K., Ghosal, S.P., Kar, R., et al.: ‘Cat swarm optimization algorithm 2007, pp. 308–313
for optimal linear phase FIR filter design’, ISA Trans., 2013, 52, (6), pp. 781– [33] Rashidi, B.: ‘High performance and low-power finite impulse response filter
794 based on ring topology with modified retiming serial multiplier on FPGA’,
[22] Karaboga, N.: ‘A new design method based on artificial bee colony algorithm IET Signal Process., 2013, 7, (8), pp. 743–753
for digital IIR filters’, J. Franklin Inst., 2009, 346, (4), pp. 328–348
[23] Meyer, B.U., Botella, G., Romero, D. E. T., et al.: ‘Optimization of high
speed pipelining in FPGA-based FIR filter design using genetic algorithm’.

10 IET Signal Process.


© The Institution of Engineering and Technology 2016

View publication stats

You might also like