2. Preliminaries

numerous parameters are needed to be optimized like transistor count, power delay product,

Conferring to Moore's Law, the transistor count doubles up in every 18 months [1]. Since the dimensions of the transistors are radically diminishing by the contemporary ages as a result of massive development in technologies, additional transistors are getting assimilated in that single chip region than before by means of cutting-edge assembling techniques. Therefore the length of interconnect has also been considerably amplified. Previously it was sufficient to overhaul the gate delay but interconnect delay has been more noticeable after the 130 nm

The objective of VLSI physical design is to optimize the devices arrangements and intercon-

Wire-length approximation of interconnects is considered in the routing phase of VLSI physical design process, which is largely categorized into Global Routing and Detailed Routing. In Global routing phase the circuit interconnections in shortest possible wavelength and minimum interconnect delay is required to be achieved. The complexities of global routing problem is solved to some extent with sequential approach where VLSI nets are sequenced according to their criticality and practical routers employs improvement phase. Technique of rerouting after ripping interfering wires [2] and 'shove-aside' technique [3] and also introducing concurrent approach where parallel integer programming concept are tried for enhance-

The Routing problem of VLSI physical design can also be mapped in classical Graph Theory where wire-length minimization of interconnected nodes rests in solving the Rectilinear Minimal Steiner Tree Problem (RMST) [4], a renowned NP Complete problem of Graph Theory. Such NP complete problems can be aimed to solve by a division of Artificial Intelligence known as Swarm Intelligence. Swarms interact among themselves to persist in any situation. It has been observed that these social agents have restricted competences of their own as an individual, however as an assemblage they are capable of accomplishing an assignment, somewhat perceptively for their existence. Scientists and engineers were ardent to mimic these activities of these natural swarm systems. Swarm intelligence was maidenly commenced in 1989 by G Beni and J Wang [5] to crack some practical problems associated to global optimization. These algorithms are heuristics and meta-heuristics in character. Heuristic infers "to ascertain by trial and error". These approaches are fairly beneficial in obtaining optimal solution or near optimal solution aimed at a complex optimization problem (like NP-complete problems) within a judicious time frame. Meta-heuristics ("meta" means "beyond" or "higher level") conversely execute even better than heuristic algorithms herein because they comprise of precise compromises related to randomization & local search. One such prevalent meta-

In VLSI system for solving the Routing problem the researcher Dong et al. [7] used PSO in 2009. The proposal by the authors was mainly novel encoding and updating schemes for a discrete or binary version of PSO where Interconnect delay is one of the most important disadvantage. A routing scheme based on PSO combined with buffer insertion at suitable intervals, was taken into consideration for overcoming the disadvantage, as proposed by Ayob

interconnect delay.

technological node was pioneered.

62 Particle Swarm Optimization with Applications

ment of global routing but with limitations.

nection schemes among these devices for desired performance.

heuristics algorithm is PSO (Particle Swarm Optimization) [6].

## 2.1. Global routing in VLSI physical design

VLSI routing in Physical Design context initiates with the procedure of interconnections amongst the circuit blocks and pins, specified according to the net list, generate results in the phase of placement. The inputs to the general routing problem are as follows:


Conventionally, the routing fashion can be broadly cleft into two main stages: the initial stage, also called as the "Global Routing" allocates a list of routing areas for individual net, putting aside the absolute geometrical blueprint of wires; whereas, the secondary stage, called as "Detailed Routing", finds the absolute geometrical blueprint of any net within the allocated routing areas.

The purpose of the routing problem is to curtail the wire length, at the same time accommodating the timing budget for the critical nets. Global routing is the initial phase of routing where a catalogue of routing regions are essentially allocated for a net, in default of stipulating the tangible geometric layout of interconnects, acknowledging that no net could be crisscrossing each other.

to create Steiner tree in turn to lessen the entire length of the MST where intermediate vertices are Steiner points. The challenges remain in selecting the number and position of Steiner vertices in the Gird layout. Steiner tree with restricted edge to be in rectilinear in rectangular grid graph originates RST. This tool is utilized to acquire the least possible length of the inter connections for a specified set of nodes in the grid graph. RST, although NP complete problem [15], is an efficient

Performance Comparison of PSO and Its New Variants in the Context of VLSI Global Routing

Nonetheless some other constraints for instance noise, power, electro-migration, signal integrity, packaging density, skew, inductance, reliability etc., frequently have vast impact on the objective function in deep-submicron VLSI design, the length of the non-critical nets however

PSO is a multi-agent equivalent search technique which engages incorporates an iterative method to obtain the ideal solution in a multi-dimensional search space. Assume that there exists a d dimensional search space, where the number of agents arbitrarily allocated are n. The agents are primed with certain position and velocity vectors as Xi ¼ f g X1; X3;……; Xn and Vi ¼ f g V1; V2;……; Vn respectively. These vectors are periodically updated rendering to the

Where the constants c<sup>1</sup> and c<sup>2</sup> are accountable for the impact of the distinctive particle's individual information and so as of the group information correspondingly. The variables r<sup>1</sup> and r2are unvaryingly distributed random numbers [16]. All particles are adjusted randomly and keep on promoting the fitness value influenced by the pbest value (best position value of the individual) and gbest value (best position value of the entire swarm) correspond-

Swarm size infers the number of particles existing in the swarm. A huge number of particles can exploit a huge extent of a search space; therefore fewer iterations are required so as to achieve the optimal solution. Contrariwise an enormous swarm size upsurges the computa-

Number of iterations is a problem contingent parameter related to swarm size. An inadequate number of iterations can terminate the program precipitately earlier to the conjunction whereas huge number of iterations generates a redundant computational and time complexity.

<sup>þ</sup> <sup>c</sup>2∗r<sup>2</sup> gbest � Xi,t

Xi,tþ<sup>1</sup> ¼ Xi,t þ Vi,tþ<sup>i</sup> (2)

(1)

http://dx.doi.org/10.5772/intechopen.72811

65

method in improving the length of interconnects in VLSI circuits.

preserves its significance in wire length minimization.

characteristic equations of PSO as given in Eqs. (1) and (2).

ingly in anticipation of the optimal solution to be accomplished.

tional complexity and time complexity likewise.

Vi,tþ<sup>1</sup> ¼ Vi,t þ c1∗r1∗ pbest � Xi,t

2.3. Particle swarm optimization

2.4. PSO parameters

2.4.2. Iteration number

2.4.1. Swarm size

Now, the complications related to global routing can be overcome using two basic approachesthe sequential approach and the concurrent approach.

The term 'sequential' in sequential approach refers to something which occurs in a sequence of steps; and here as the name indicates, nets are connected in succession. This approach of routing is very susceptible to the order in which the nets are considered for routing, because a net once routed may hinder other nets. The parameters based on which the nets are ordered includes half of the total area of the confining polygon, their criticality, and the number of terminals. High criticality number is assigned to the net on the critical path as the performance of the circuit is dependent on them to a great extent. But nonetheless these techniques of sequencing are not impeccable. As a blunt aftermath of this, a factual router engages a development or improvement phase besides the sequencing phase to do away with the jam when no more routing is possible. But still this may not conquer the frailty of the sequential approach. 'Rip-up and reroute' [2] and 'shove-aside' techniques [3] are examples of improvement phase like this. As the name indicates, in case of the 'rip-up and reroute', the intrusive cables are ripped up and rerouted; but in case of the 'shove aside' technique, cables which make is viable to outright the failed connections are put aside without curbing the extant connections in any way.

In Concurrent approach, by simultaneously considering all the nets, the complications related to ordering can be evaded. There is no compelling polynomial algorithm (not even for nets with only two terminals) and as a consequence this approach is computationally tougher. Ergo, it was proposed to use integer programming; nonetheless as a consequence of the very large size of the resulting program, it can't be utilized efficiently. So, to overcome this problem, the program is fragmented into smaller sub programs using hierarchical method (which follows top down approach), which can be then readily dealt with by integer programming. A sequence of routing channels is accredited to each net by global routing without contravening the capacity of channels. At the same time, the total length of the wire is also occasionally revamped.

The intention of the routing problem is reliant on the attributes of IC which is to be fabricated. Nowadays, VLSI chips contain up to billions of transistors which makes it possible to complete a layout to route millions of nets. In turn there may be several thousands of routes in each net. It comprises the trade-off between routability of all nets and minimization of the wire length in interconnects. The objective function of this routing puzzle is an eminent NP-complete problem. All these attributes results the routing problem to be a computationally tough one which furnishes the scope for metaheuristic algorithm, like for resolving the problem, SI based algorithm are to be used.

## 2.2. Rectilinear Steiner tree problem

Rectilinear Steiner Tree (RST) is the resulting of Minimum Spanning Tree (MST) for a specified grid graph. For a certain set of vertices of a graph, minimum spanning tree is shaped by interconnecting them where MST is the maximal sub graph and the MST cost is the sum of the weights of all edges in the tree. Certain additional intermediate vertices are appended with MST

to create Steiner tree in turn to lessen the entire length of the MST where intermediate vertices are Steiner points. The challenges remain in selecting the number and position of Steiner vertices in the Gird layout. Steiner tree with restricted edge to be in rectilinear in rectangular grid graph originates RST. This tool is utilized to acquire the least possible length of the inter connections for a specified set of nodes in the grid graph. RST, although NP complete problem [15], is an efficient method in improving the length of interconnects in VLSI circuits.

Nonetheless some other constraints for instance noise, power, electro-migration, signal integrity, packaging density, skew, inductance, reliability etc., frequently have vast impact on the objective function in deep-submicron VLSI design, the length of the non-critical nets however preserves its significance in wire length minimization.

## 2.3. Particle swarm optimization

where a catalogue of routing regions are essentially allocated for a net, in default of stipulating the tangible geometric layout of interconnects, acknowledging that no net could be

Now, the complications related to global routing can be overcome using two basic approaches-

The term 'sequential' in sequential approach refers to something which occurs in a sequence of steps; and here as the name indicates, nets are connected in succession. This approach of routing is very susceptible to the order in which the nets are considered for routing, because a net once routed may hinder other nets. The parameters based on which the nets are ordered includes half of the total area of the confining polygon, their criticality, and the number of terminals. High criticality number is assigned to the net on the critical path as the performance of the circuit is dependent on them to a great extent. But nonetheless these techniques of sequencing are not impeccable. As a blunt aftermath of this, a factual router engages a development or improvement phase besides the sequencing phase to do away with the jam when no more routing is possible. But still this may not conquer the frailty of the sequential approach. 'Rip-up and reroute' [2] and 'shove-aside' techniques [3] are examples of improvement phase like this. As the name indicates, in case of the 'rip-up and reroute', the intrusive cables are ripped up and rerouted; but in case of the 'shove aside' technique, cables which make is viable to outright the

failed connections are put aside without curbing the extant connections in any way.

nels. At the same time, the total length of the wire is also occasionally revamped.

In Concurrent approach, by simultaneously considering all the nets, the complications related to ordering can be evaded. There is no compelling polynomial algorithm (not even for nets with only two terminals) and as a consequence this approach is computationally tougher. Ergo, it was proposed to use integer programming; nonetheless as a consequence of the very large size of the resulting program, it can't be utilized efficiently. So, to overcome this problem, the program is fragmented into smaller sub programs using hierarchical method (which follows top down approach), which can be then readily dealt with by integer programming. A sequence of routing channels is accredited to each net by global routing without contravening the capacity of chan-

The intention of the routing problem is reliant on the attributes of IC which is to be fabricated. Nowadays, VLSI chips contain up to billions of transistors which makes it possible to complete a layout to route millions of nets. In turn there may be several thousands of routes in each net. It comprises the trade-off between routability of all nets and minimization of the wire length in interconnects. The objective function of this routing puzzle is an eminent NP-complete problem. All these attributes results the routing problem to be a computationally tough one which furnishes the scope for metaheuristic algorithm, like for resolving the problem, SI based

Rectilinear Steiner Tree (RST) is the resulting of Minimum Spanning Tree (MST) for a specified grid graph. For a certain set of vertices of a graph, minimum spanning tree is shaped by interconnecting them where MST is the maximal sub graph and the MST cost is the sum of the weights of all edges in the tree. Certain additional intermediate vertices are appended with MST

crisscrossing each other.

64 Particle Swarm Optimization with Applications

algorithm are to be used.

2.2. Rectilinear Steiner tree problem

the sequential approach and the concurrent approach.

PSO is a multi-agent equivalent search technique which engages incorporates an iterative method to obtain the ideal solution in a multi-dimensional search space. Assume that there exists a d dimensional search space, where the number of agents arbitrarily allocated are n. The agents are primed with certain position and velocity vectors as Xi ¼ f g X1; X3;……; Xn and Vi ¼ f g V1; V2;……; Vn respectively. These vectors are periodically updated rendering to the characteristic equations of PSO as given in Eqs. (1) and (2).

$$V\_{i,t+1} = V\_{i,t} + c\_1 \ast r\_1 \ast \left(p\_{\text{best}} - X\_{i,t}\right) + c\_2 \ast r\_2 \left(g\_{\text{best}} - X\_{i,t}\right) \tag{1}$$

$$X\_{i,t+1} = X\_{i,t} + V\_{i,t+i} \tag{2}$$

Where the constants c<sup>1</sup> and c<sup>2</sup> are accountable for the impact of the distinctive particle's individual information and so as of the group information correspondingly. The variables r<sup>1</sup> and r2are unvaryingly distributed random numbers [16]. All particles are adjusted randomly and keep on promoting the fitness value influenced by the pbest value (best position value of the individual) and gbest value (best position value of the entire swarm) correspondingly in anticipation of the optimal solution to be accomplished.

## 2.4. PSO parameters

## 2.4.1. Swarm size

Swarm size infers the number of particles existing in the swarm. A huge number of particles can exploit a huge extent of a search space; therefore fewer iterations are required so as to achieve the optimal solution. Contrariwise an enormous swarm size upsurges the computational complexity and time complexity likewise.

## 2.4.2. Iteration number

Number of iterations is a problem contingent parameter related to swarm size. An inadequate number of iterations can terminate the program precipitately earlier to the conjunction whereas huge number of iterations generates a redundant computational and time complexity.

## 2.4.3. Velocity component

The velocity update factor in Eq. (1) comprises of three terms. The first term is the preceding velocity vector i.e. the former direction & the magnitude of the velocity of a particle. This component averts a particle from a radical alteration in velocity in current iteration. The following component is the cognitive one. It is centered on the memory of an agent in agreement with its proficiency. The cognitive component continuously inspire a particle to reappear to its position, suitable for it in local. The subsequent component is the social component. This is the knowledge to an individual by social communication, which constantly encourage the particle to travel in the direction of the best position, knowledgeable by its vicinity.

3.2. Inertia weight

Inertia Weight (w) was additionally familiarized [13] progressing PSO-W to substitute Vmax, to regulate the momentum of the particle in assessing the updated velocity. It is presented to regulate the exploration and exploitation aptitudes of the swarm with the intention of the algorithm to converge more efficiently upon time. Therefore Eq. (1) is adapted as Eq. (3).

• If w > 1: then the velocity will increase over time and the particles will barely be capable

Typically the inertia weight w is selected dependent to the size of the search space. A high value of w is essential for complex high dimensional problem space and trivial value for small

The inertia weight can be differed by Eq. (4), where s is the population size, D is the Dimension

� �<sup>2</sup> " #�<sup>1</sup>

The PSO algorithm is reorganized to substitute the inertia weight w & max velocity Vmax by a fresh parameter χ, known as constriction factor given in Eq. (6). Clerc [17] pioneered this factor, which proved to be exceptionally significant in regulating the exploration & exploitation tradeoff, thus guaranteeing an efficient conjunction of algorithm. Eq. (1) gets amended as Eq. (5).

<sup>2</sup> � <sup>ɸ</sup> � ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

Here, ɸ ¼ ɸ<sup>1</sup> þ ɸ2, ɸ<sup>1</sup> ¼ c1∗r<sup>1</sup> and ɸ<sup>2</sup> ¼ c2∗r2. Characteristically applying the value of ɸ as 4.1 the value of χ results to 0.729. Therefore, χ∗w ¼ 0:729∗w < w, infers that the particles rapidly alter their course manipulated by pbest and gbest with assured convergence. Both

Acceleration coefficient as a PSO parameter has previously been explained in the preceding segment. Usually both the values of c<sup>1</sup> and c<sup>2</sup> are applied to be 2 [19]. The equilibrium concerning

R <sup>8</sup> <sup>∗</sup><sup>D</sup>

� � <sup>þ</sup> <sup>Φ</sup>2<sup>∗</sup> gbest � Xi,t

<sup>ɸ</sup><sup>2</sup> � <sup>4</sup><sup>ɸ</sup>

� �are multiplied by 2∗0:<sup>729</sup> <sup>¼</sup> <sup>1</sup>:458 [18]. Generally these values are

� � � � (5)

h i <sup>p</sup> (6)

200 � � <sup>þ</sup>

• If w < 1: particles can rapidly alter their route subjective to pbest and gbest values.

• If w ¼ 0: particles travel lack of any acquaintance of the preceding velocity.

size and R is relative quality of corresponding solution standardized to [0,1].

<sup>w</sup> <sup>3</sup> � exp �<sup>s</sup>

Vi,tþ<sup>1</sup> ¼ χ∗ Vi,t þ Φ1∗ pbest � Xi,t

<sup>χ</sup> <sup>¼</sup> <sup>2</sup>

� � <sup>þ</sup> <sup>c</sup>2∗r<sup>2</sup> gbest � Xi,t

Performance Comparison of PSO and Its New Variants in the Context of VLSI Global Routing

� � (3)

http://dx.doi.org/10.5772/intechopen.72811

(4)

67

Vi,tþ<sup>1</sup> ¼ w∗Vi,t þ c1∗r1∗ pbest � Xi,t

• If w ¼ 1: then Eq. (3) is similar to the original Eq. (1).

of altering their direction.

dimensional search space.

3.3. Constriction factor

pbest � Xi,t

� �and gbest � Xi,t

3.4. Acceleration coefficient

preferred for improved stability and convergence.
