Application of nature inspired algorithms in power delivery network ...

26 downloads 4503 Views 814KB Size Report
algorithms for solving an industrial problem of power delivery network design. To achieve the target impedance in a power delivery network, optimum number of ...
Application of Nature Inspired Algorithms in Power Delivery Network Design : An Industrial Case Study Jai Narayan Tripathi1 , Jayanta Mukherjee2 , Raj Kumar Nagpal1 , and Rakesh Malik1 1 TR&D, STMicroelectronics Pvt. Ltd., Greater Noida, India. 2 Department of Electrical Engineering, IIT Bombay, Mumbai, INDIA. Email: 1 {jainarayan.tripathi, rajkumar.nagpal, rakesh.malik}@st.com 2 {jayanta}@ee.iitb.ac.in

Abstract— This paper presents application of nature inspired algorithms for solving an industrial problem of power delivery network design. To achieve the target impedance in a power delivery network, optimum number of decoupling capacitors and their optimum locations on board are found from thousands of available capacitors. S-parameters based data is used for the accurate analysis. Three natural computing algorithms - Particle Swarm Optimization, Cuckoo Search and Firefly Algorithm are used and compared for solving this problem. Index Terms— Power Integrity, Power Delivery Networks, Decoupling Capacitors, S-parameters, Nature Inspired Algorithms, Swarm Intelligence.

positions. All of these algorithms belong to the family of swarm intelligence algorithms. Swarm Intelligence (SI) is the property of a system where the collective behaviors of entities interacting locally with their environment and other entities, result into a global pattern formation. The inspiration often comes from nature, especially biological systems [9][10]. The performance of these algorithms are compared, in context of the problem presented in this chapter, for finding decoupling capacitor locations on a power plane.

I. I NTRODUCTION The complexity of Power Delivery Network (PDN) design is increasing with the shift of technology at higher ends. The increasing operating frequency and decreasing voltage margins for new generation transistors make it difficult to design impedance controlled PDNs in order to maintain Power Integrity (PI). A term called ‘Target Impedance’ (ZT ) is defined for PDNs, which is the ratio of maximum allowable ripple to the maximum current in the system. The impedance of a typical PDN, in mid-frequency range (from a few tens of MHz to a few hundreds of MHz), depends upon the decoupling network which is comprised of decoupling capacitors [1]. Because of their low time constant, decoupling capacitors are used to maintain supply of charge to switching devices. The impedance of a decoupling capacitor decreases with frequency and then starts increasing after a certain frequency which is called resonance frequency. A sufficient number of decoupling capacitors, with appropriate values and resonance points, are needed to maintain the impedance of the PDN below target impedance (ZT ), over the desired frequency range [2][3]. In this paper, an industrial case study of selection and placement of decoupling capacitors using s-parameters based approach is presented [4]. A board (as shown in fig. 1) was used for analysis which was having 34 available ports for placing capacitors, from a set of 3702 capacitors available to choose from. For power plane decoupling capacitor placement, Genetic Algorithm (GA) and Simulated Annealing (SA) are used in literature [5]-[8]. In this work, Particle Swarm Optimization (PSO), Cuckoo Search Method and Firefly Algorithm are used for finding the optimum capacitors and their

978-1-4799-3643-4/14/$31.00 ©2014 IEEE

Fig. 1.

Board used for the analysis (courtesy : STMicroelectronics)

II. S WARM I NTELLIGENCE A LGORITHMS A. Particle Swarm Optimization Particle Swarm Optimization (PSO) was introduced by Kennedy and Eberhart (1995) [11][12]. PSO is inspired by the movement of fishes while schooling and the same of birds while flocking. The fishes or birds follow the group behavior and the collective intelligence is used for the movement of the entire swarm. In PSO, there are P particles defined randomly in a design space. Each particle is assigned a position and an initial velocity. Each particle claims to be a solution of the problem within the search space, intending to attain optimal position. After generating particles, the fitness of all the particles are calculated. Fitness is the objective function

103

of optimization problem. Particles keep the track of their best positions obtained so far as local best (‘lbest’) and the best position among all the particles as global best (‘gbest’). In next iterations, particles move according to lbest and gbest, their velocities and positions are updated by some equations which are given in pseudo-code in next section. vi (t + ∆t) = ω(t)vi (t) + p1 r1 (xl − xi ) + p2 r2 (xg − xi ) (1) xi (t + ∆t) = xi (t) + vi (t + ∆t)∆t

(2)

(tmax ) − t + ωf (3) tmax where xi is the position of a particle and vi is the velocity, i is the particle index, t is the current iteration number, ∆t is equal to 1. r1 and r2 are random numbers uniformly distributed in the range [0, 1]. Each particle has the memory to store its best position till now, denoted by xi . The parameter ω is “inertia”, and p1 and p2 are the acceleration coefficients. The xg represents the best position attained by globally best particle. ωi and ωf represent the initial and final values of ω, respectively, and tmax is the maximum number of iterations. The second term of in eq. 1 is called “cognitive component” while the last term is called “social component”. According to Kennedy (2006): New Position = Current Position + Persistence + Social Influence. Thus in each iteration, particle considers the impact of persistence and social influence. After each iteration, each particle is moved to a new position and attains a new velocity, according to eq. 1 and eq. 2. ω is updated linearly as given in eq. 3. ω(t) = (ωi − ωf )

B. Cuckoo Search Cuckoo Search (CS) is also a meta-heuristic optimization technique belonging to SI family, developed by X. S. Yang and S. Deb (2009). This algorithm is inspired by the cuckoo bird breeding behavior. Generally cuckoo birds lay their eggs in the nest of other host birds. In CS method, cuckoos’ eggs represent solutions for desired objective. The aim is to use the new and potentially better solutions to replace not-so-good solutions in the nests. In the simplest form, each nest has one egg. In addition, Yang and Deb discovered that the randomwalk style search is better performed by Levy flights rather than simple random walk. CS is based on three idealized rules. • Each cuckoo lays one egg at a time, and dumps its egg in a randomly chosen nest. • The best nests with high quality of eggs will carry over to the next generation. • The number of available hosts nests is fixed, and the egg laid by a cuckoo is discovered by the host bird with a probability pa ∈ (0, 1). Discovering operates on some set of worst nests, and discovered solutions are dumped from further calculations [13][14].

to act as a signal to attract other fireflies. It is recently (2008) developed by Xin-She Yang at Cambridge University [15][16]. Primary assumptions of firefly algorithm are as follows: • All fireflies are uni-sexual, so that one firefly will be attracted to all other fireflies. • Attractiveness is proportional to their brightness, and for any two fireflies, the less brighter one will be attracted by the brighter one. However, the brightness can decrease as their distance increases. • If there are no fireflies brighter than a given firefly, it will move randomly. • The brightness should be associated with the objective function. III. O PTIMIZATION For this analysis, S-parameters data (for the board and for the capacitors as well) is used. The S-parameters data for the board was taken from the 3D EM simulation while the same of the capacitors was taken from the capacitor manufacturing companies. The coordinates of the ports on the board were also taken for the analysis. For applying SI algorithms, the parameters or variables taken were the index number of the capacitor and the port number. So, the basic entity in all the algorithms (particle, nest, or fly) had two variables. The problem was defined as discrete optimization problem. The values of upper bounds of parameters were taken from the total number of capacitors and total number of ports available on board. The cumulative impedance after placing the capacitor on the board was found by a black-box MATLAB function [4]. The impedance was observed from port 33. The maximum value of the impedance over the frequency ranges, was defined as the objective function (to be minimized). The decoupling capacitors and their corresponding values, were found by PSO, CS and FA. The pseudo-codes for the search process are given below. The basic parameters used in these algorithms are shown in table I. TABLE I PARAMETERS TAKEN FOR VARIOUS ALGORITHMS Algorithm PSO CS FA

wi =0.9 pa =0.25 α=0.25

Parameters wf =0.4 p1 =1.49 β =3/2 σ = 0.6966 βmin = 0.3 γ =1

p2 =1.49 -

A. Pseudo-Code for PSO

C. Firefly Algorithm The firefly algorithm (FA) is also a nature-inspired metaheuristic optimization algorithm, inspired by the flashing behavior of fireflies. The primary purpose for a firefly’s flash is

104

1) Define maximum number of iterations Tmax 2) For D dimensions , generate P particles, their respective positions x(i, j) and velocities v(i, j); ∀i ∈ {1, 2, ., P } and j ∈ {1, 2, ....D}, within the lower and upper bounds. 3) Calculate the maximum impedance peak max imp(i) corresponding to all the i particles. 4) Define all the local particles as local best particles lbest and find the global best particle gbest. 5) Loop 1 : while Number of iterations t ≤ Tmax . 6) Loop 2 : for i = 1:P 7) Update inertia, velocities and positions )−t ω = (ωi − ωf ) (TTmax + ωf max

8) 9) 10) 11) 12) 13)

v(i, j) = ω(t)v(i, j) + p1 r1 (lbest(i, j) − x(i, j) + p2 r2 (gbest − x(i, j) x(i, j) = x(i, j) + v(i, j) Limit the positions and velocities within the lower and upper bounds. End : Loop 2 Update lbest(i, j) and gbest(j) accordingly. Increment the counter : t = t + 1 END : Loop 1 Final Solution = gbest.

B. Pseudo-Code for CS 1) Define maximum number of iterations Tmax 2) For D dimensions , generate N number of nests nest(i, j); ∀i ∈ {1, 2, ., N } and j ∈ {1, 2, ....D},within the lower and upper bounds. 3) Calculate the fitness associated with all nests (as maximum impedance peak max imp). 4) Find the nest with the greatest fitness (minimum impedance) best nest. 5) Loop 1 : while Number of iterations t ≤ Tmax 6) Loop 2 : i = 1 : N Update nests by Levy flights and Evaluate their fitness Fi . Choose random nests and Update them by random vector. Evaluate fitness Fj of new nest. 7) if (Fi > Fj ), Replace old by the new solution, Keep the best solutions (or nests with quality solutions). 8) Limit the nests within the lower bounds and upper bounds. 9) End : Loop 2 10) Update best nest accordingly. 11) Increment the counter : t = t + 1 12) END : Loop 1 13) Final Solution = best nest.

13) Increment the counter : t = t + 1 14) END : Loop 1 15) Final Solution = brightest. a IV. R ESULTS In order to compare the solution provided by the algorithms, the number of entities (particles/nests/flies) were limited to 15 and number of iterations to 25. Number of capacitors were fixed to 4. The simulations were run on a machine with 8 GB RAM, 3.4 GHz CPU speed and Windows 7 Operating System. Table II shows results obtained from various swam intelligence algorithms and their comparisons. In one iteration PSO calls objective function (cost function) once, CS calls it twice while FA can call it N (number of flies) to 0 times depending on the value it reaches. That is why there is the difference among the time taken by these algorithms, which can be seen clearly by table II. For 4 capacitors, the possible combinations were > 1014 . Fig. 2 shows the variation of the impedance of best entities of all three algorithms with each iteration. For current set of simulations, the minimum average of maximum impedance (over the desired frequency range) is achieved by Firefly Algorithm. The minimum simulation time was taken by PSO. Table III shows the capacitor numbers and their locations on the board, obtained from these algorithms to achieve the solution. Fig. 3 shows the impedance profiles after the placement of the decoupling capacitors by these algorithms.

C. Pseudo-Code for FA 1) Define maximum number of iterations Tmax 2) For D dimensions ,generate P population of fireflies , their respective positions pos(i, j); ∀i ∈ {1, 2, ., P } and j ∈ {1, 2, ....D},within the lower and upper bounds. 3) Calculate the light intensity associated with all fireflies as maximum impedance peak max imp . 4) Find the firefly with the highest light intensity (minimum impedance) brightest. 5) Loop 1 : while Number of iterations t ≤ Tmax 6) Loop 2 : i = 1 : P 7) Loop 3 : k = 1 : P 8) if max imp(i) > max imp(k) r ← distance between the flies 2 β = (β0 − βmin )e−γr + βmin temp ← random vector pos(i, :) = pos(i, :)(1 − β) + pos(j, :)β + temp 9) Limit the positions of flies within the lower bounds and upper bounds. 10) End : Loop 3 11) End : Loop 2 12) Update brightest accordingly.

Fig. 2.

105

Convergence of PSO, CS and FA algorithms.

TABLE II P ERFORMANCE COMPARISON OF VARIOUS ALGORITHMS Run No. 1 2 3 4 5 6 7 8 9 10

PSO Max. Time Imp.(Ω) (sec) 1.7406 992.6 1.7145 995.2 1.7737 995.7 1.6533 999.8 1.7390 983.8 1.6887 988.5 1.7024 977.1 1.7477 993.4 1.822 990.8 1.6954 986.3

CS Max. Imp.(Ω) 1.7201 1.7383 1.7226 1.7122 1.7324 1.7245 1.7118 1.7423 1.7362 1.7215

Time (sec) 1354.1 1326.2 1382.6 1344.2 1379.4 1362.3 1318.3 1399.6 1381.7 1329.4

FA Max. Imp.(Ω) 1.6448 1.6353 1.6473 1.6412 1.6367 1.6442 1.6407 1.6384 1.6441 1.6424

Time (sec) 3552.5 3582.5 3572.9 3610.0 3605.3 3570.5 3569.6 3559.7 3535.5 3521.4

V. C ONCLUSION A real world discrete optimization problem for power integrity has been solved by nature inspired swarm intelligence algorithms. The solutions of this problem provided by them are also compared. Optimum capacitors and their ports on the board are found. The analysis was done using by S-parameter files for more accuracy and to attain realistic approach. The problem was solved in a generic way and thus the analysis used here can be adapted easily for similar power integrity problem and decoupling network design. Fig. 3.

R EFERENCES

Comparison of Solutions by PSO, CS and FA.

TABLE III C APACITORS ’ NUMBERS AND THEIR PORT LOCATIONS BY

DIFFERENT

ALGORITHMS

PSO Cap No. 1 3702 2658 65

Port 16 36 16 26

CS Cap No. Port 21 13 3389 35 157 16 1921 7

FA Cap No. 290 312 1158 2179

Port 34 31 7 9

TABLE IV S OLUTION BY PSO

S.No. 1. 2. 3. 4.

Serial No. in Capacitor Bank 1 3702 2658 65

Capacitor Name GJ821BB31H105KA12 TWAE687M050 TPSB336K006R0450 GRM033B31C332KA87

Manufa -cturer Murata AVX AVX Murata

Port Number 16 36 16 26

Manufa -cturer Murata AVX Murata AVX

Port Number 13 35 16 7

Manufa -cturer Murata Murata AVX AVX

Port Number 34 31 7 9

TABLE V S OLUTION BY CS

S.No. 1. 2. 3. 4.

Serial No. in Capacitor Bank 21 3389 157 1921

Capacitor Name GRM0222C1C5R0CD05 TAJE107020TNJV GJ4216C81E104JA01 TAJB476006TNJ

[1] M. Swaminathan and A. Ege Engin, Power Integrity Modeling and Design for Semiconductors and Systems, Prentice Hall, 2008. [2] J. N. Tripathi,“Analysis of Signal Integrity and Power Integrity at System Level”, VDM Publishers, 2010. [3] Z. Mu, “Power Delivery System : Sufficiency, Efficiency, and Stability”, 2008 9th International Symposium on Quality Electronic Design, pp. 465-469, March 2008. [4] J. N. Tripathi, R. K. Nagpal, N. K. Chhabra, R. Malik, J. Mukherjee, P. R. Apte.,“Power Integrity analysis and discrete optimization of decoupling capacitors on high speed power planes by particle swarm optimization”, 2013 14th International Symposium on Quality Electronic Design (ISQED), pp. 670-675, March 2013, USA. [5] Jun Chen, Lei He, “Efficient In-Package Decoupling Capacitor Optimization for I/O Power Integrity”, IEEE Transaction on Computer Aided Design of Integrated Circuits and Systems, Vol. 26 No. 4, April 2007. [6] S. Kahng, “GA-Optimized Decoupling Capacitors Damping Power Bus’ Cavity-Mode Resonances”, IEEE Microwave and Wireless Component Letters, Vol.16, No.6, June 2006. [7] Kai-Bin Wu et al, “Optimization for the Locations of Decoupling Capacitors in Suppressing the Ground Bounce by Genetic Algorithm”, Progress In Electromagnetic Research Symposium 2005, pp. 411-415, Hangzhou, China, August 2005. [8] T. Hubing, “Effective strategies for choosing and locating printed circuit board decoupling capacitors”, International Symposium on Electromagnetic Compatibility, pp.632-637, Aug. 2005. [9] X. S. Yang, Nature-Inspired Metaheuristic Algorithms, Luniver Press, 2008. [10] X. S. Yang, Engineering Optimization: An Introduction with Metaheuristic Applications, Wiley & Sons, New Jersey, (2010). [11] J. Kennedy, R. Eberhart, “Particle Swarm Optimization”, in Proc. IEEE International Conference on Neural Networks, 1995. [12] J. Kennedy, “The particle swarm: social adaptation of knowledge”, in Proc.IEEE International Conference on Evolutionary Computation 1997. [13] Xin-She Yang, S. Deb . “Cuckoo search via Levy flights”, World Congress on Nature & Biologically Inspired Computing (NaBIC 2009), pp. 210-214. [14] Xin-She Yang, S. Deb, “Engineering optimisation by cuckoo search”, Int. J. Mathematical Modelling and Numerical Optimisation”, Vol. 1, No. 4, 330-343 (2010). [15] Xin-She Yang, “Firefly algorithms for multimodal optimization”, Stochastic Algorithms: Foundations and Applications, LNCS, Vol. 5792, pp. 169-178 (2009). [16] Xin-She Yang, “Firefly Algorithm, Levy Flights and Global Optimization”, Research and Development in Intelligent Systems XXVI, Part 5, pp. 209-218, Springer.

TABLE VI S OLUTION BY FA

S.No. 1. 2. 3. 4.

Serial No. in Capacitor Bank 290 312 1158 2179

Capacitor Name GA242QR7E2102MW01 GR331BD72W333KW01 TWCB687008LSZ0 TAJD336016TNJV

106

Suggest Documents