• 沒有找到結果。

A neural network approach to channel routing

N/A
N/A
Protected

Academic year: 2021

Share "A neural network approach to channel routing"

Copied!
4
0
0

加載中.... (立即查看全文)

全文

(1)

A Neural Network Approach to Channel Routing

Pao-Hsu Shih and Wu-Shung Feng

Department of Electrical Engineering, National Taiwan University, Taipei, Taiwan, R.O.C.

Abstract -- This paper proposes a neural network for the channel routing problem. Neural network has been suc- cessfully applied to many combinatorial optimization problems. However, applying this technique to channel routing problem has not ever been reported. Typical ex- amples from published literature are taken for experi- ments. The theoretic lower bounds are achieved in all ex- amples.

1. Introduction

Sine Hopfield showed in 1982 that some types of neural network exhibit some important combinatorial properties, several applications of these networks have been reported in wide-spread areas[ 1-51. This paper will discuss the application of neural network on channel routing problem.

Channel routing makes interconnections among ter- minals located on opposite sides of a rectangular channel and has been proven to be NP-complete[6]. Most of cur- rently available algorithms are based on heuristics[’l-lO]. However, heuristics are rather problem-specific. A

general scheme for combinatorial optimization problem called simulated arznealing has been successfully applied to many NP-complete problems. However, its response time is inestimable.

Neural networks are systems constructed by many in- terconnected processing elements operating in parallel. The operation characteristic of processing elements is very simple and the function of a neural network is primarily determined by the connectivity of processing

elements.

Hopfield network model is a fully interconnected recurrent network. Each neuron takes an integrative

analog summation of the currents from other neurons as well as an external bias and its input-output relationship is described by a strictly increasing sigmoid function.

If a neuron represents a hypothesis of solution of the problem to be solved, the interconnection matrix T be-

tween these neurons will represent the interactive inhibi- tion and excitation of these hypotheses. The highly paral- lel structure of the network permit multiple hypotheses to be considered simultaneously. As network converges to a stable state, a possible solution will be found.

2. Channel Routing Problem

In a channel routing problem, terminal locations at top and bottom sides of a channel are specified and net- list specifying the interconnection of terminals is given. Each net is routed with horizontal segments in one layer and vertical segments in another. These two layers are made contacted by a via hole. The work of channel rout- ing is to connect the terminals of nets on these two sides with the channel width requirement minimized. A chan-

nel with its netlist is shown in Fig. 1.

Fig. 2 shows a special case of channel routing, which is called cycZic conflict. It can be observed that the routing requirement can not be realized without splitting some horizontal segments into more than one tracks as shown in Fig. 2(b). Usually, this condition can be avoided by a special consideration in the placement step. Thus, the problems considered here are assumed to not have this condition occurred.

The algorithms proposed for channel routing can be categorized into two groups. The first is the restrictive routing[9], which aims for a solution that the number of horizontal tracks on which any net can be placed is limited to one. The other type is the doglegging router[8],

(2)

which allow doglegs to be inserted. Dogleg insertion will cause via introduced. The occurrence of vias in the layout is often a source of reliability problems. We will consider the restrictive routing problem here.

Two graphs called vertical constraint graph (VCG) and horizontal constraint graph (HCG) are used to repre- sent the relationships among individual nets.

The x-interval of a net

i

is the range between its leftrnost terminal and rightmost terminals. Two nets are called to be horizontal conflict if their x-intervals overlap. An undirected graph HCG is constructed as follows. Each vertex in HCG represents a specific net. If two nets

i

a n d j are horizontal conflict, an edge is connected be- tween the vertices used for representing them. The HCG for the channel depicted in Fig. 1 is shown in Fig. 3. As in HCG, each net is represented as a vertex in VCG. On every column

i

within the channel to be routed, if its net number on top

(mi)

is different from the net number on bottom (BNJ and both are not 0, a directed edge is con- nected from

mi

to BNi. Shown in Fig. 4 is the VCG for the channel depicted in Fig. 1.

If the longest path within VCG is nl-

...-

nk, the lower bound of track requirement for channel routing will be

k.

In addition, the density of channel, which is the maximal number of horizontal segments crossing a vertical line, presents another lower bound of channel width.

3. Neural Network Approach

To solve a problem by neural networks, we first select an appropriate representation of the problem and find weights for connections and external bias. Then, im- plement or simulate the network and find its stable state.

The requirements of a feasible solution for channel routing problem are listed below and their encoding into the network will be described:

Every net should be assigned to exactly one track. Since a net can be assigned to one track only, each neuron has an inhibition to other neurons within the same column. This inhibition is shown in Fig. 5 as solid lines. Let the weighting of this inhibition is A, then, T matrix encoding by this inhibition is

where is the Kronecker delta defined as

6.. = 1, i f i = j

11

= 0, otherwise.

If nets

i

a n d j are horizontal conflict, they should not be assigned to the same track.

Define a function hcg(i, j ) as follows:

hcg(i, j ) = 1, if nets

i

and j are horizontal conflict,

= 0, otherwise.

Then, according to the requirement, if two nets

i

and j satisfy the relationship hcg(i, j ) = 1, a horizontal inhibi- tion is enforced to each other. This inhibition is shown in Fig. 5 as dashed lines and its T matrix encoding (with weighting B) is

T,j,kr = -Bhcg(k,i)d(

If there exists a directed path from net i to j in VCG, the track assigned to net

i

should be above that as- signed to net j .

Define functions vcg(i, j ) and @(i, j ) as follows: Based on the representation of problem, a local optimum

of the problem is found.

vcg(i,j) = 1, if a directed path from net i to j exists in VCG,

A doubly-indexed neuron N,i is used to represent the = 0, otherwise. hypothesis of assigning net

i

to track j . If N 9 with value 1,

we say that net

i

is assigned to track j . Otherwise, it is assigned to other track.

gt(i, j ) = 1, if

i

> j ,

= 0, otherwise.

(3)

In summary, the connection matrix T is constructed by

B C

Note that T has been indexed with two sets of sub- scripts.

cj,kl

means the connection weight from neuron Nkr to neuron N..

.

'I

Only inhibition without excitation will make all hypotheses vanish and network will converge to a state with each neuron zero. Therefore, a global excitation is added.

T.. = T.. A

gkl y,kI + q j k l + c j , k l

I.. = Dt

11

where t is the number of tracks available within the chan- nel.

For each vertex

i

in VCG, its level denoted as li is defined as follows:

1. If vertex

i

has no incoming link, it is in level 1. 2. If vertex

i

is one link reachable from a set of ver- tices {nl,

...,

n k } whose corresponding levels are

{II,

...,

lk} respectively, the level of vertex

i

is

li

= m u (11,

...

lk)

+

1

The maximum level of a VCG denoted as lm" is the maximum of these level values.

The track ti assigned to a vertex

i

with level

li

must satisfy the following equations:

ti z li, and ti 5 (t

-

l=)

+

li

These requirements are independent of the track assign- ment of any net. Thus, its enforcement can be completed by a fixed external inhibitory bias to each vertex out of the ranges listed above. Now, the external bias I.. should be modified as follows:

I/

Iii = Dt

- l l x (1 -

in-runge(i, j))Dt where in-range is a range checking function:

in-runge(i, j ) = 1, if assigning net i to track; satisfies the requirements of level,

= 0, otherwise.

An iterative trial-and-error routine is used to find the minimum number of tracks required:

S1. Assign t with the theoretical lower bound. S2. Use the neural network to route n nets within a channel with t tracks.

S3. If S2 can not converge to a feasible solution, in- crease t by one and go back to S2. Otherwise, the minimum number of tracks required is t.

4. Simulation And Results

A software is implemented to verify the performance of this network. All the programs are implemented in C language and run on a SUN/386i workstation. Typical ex- amples from published literature are taken for experi- ments. For each example, several runs of simulation loop are carried out and the best results are kept. The theoretic lower bounds are achieved in all examples. The detail results of these experiments are listed in Table 1.

.

J

5. Conclusions

Neural network is gathering widespread attention as a potential candidate for the sixth generation computer. In this paper, one type of neural network, Hopfield net- work, is applied to solve the channel routing problem. The positive results indicate that it may also be suitable for other combinatorial optimization problems.

References

[l] R. Libeskind-Hadas and C. L. Liu, "Solutions to the module orientation and rotation problems by neural computation networks," Proc. 26th DAC, 1988, pp. 400- 405.

[2] P.H. Shih and W.S. Feng, "Neural Computation for global routing," Proc. IASTED Intl. Symp. MODELING, SIMULA TING, and OPTIMIZATION, 1990.

[3] J.S. Yih and P. Mazumder, "A neural network design for circuit partitioning," Proc. 26th DAC, 1988, pp. 406- 411.

[4] D.W. Tank and J.J. Hopfield, "Simple 'neural' op- timization networks: an A / D converter, signal decision circuit, and a linear programming circuit," IEEE Trans. C&S, vol. CAS-33, no. 5, May 1986, pp. 533-541.

[5] J.J. Hopfield and D.W. Tank, "'Neural' computation of decisions in optimization problems," Biological Cyber- netics, vol. 52, 1985, pp.141-152.

(4)

[6] T.G. Szymanski, plete," IEEE Trans. pp. 31-40.

"Dogleg channel routing is NP-CO=- CAD, vol. CAD-4, no. 1, Jan. 1985,

[7] T. Yoshimura and E.S. Kuh, "Efficient algorithms for

channel routing," ZEEE Trans. CAD, vol. CAD-1, no. 1,

Jan. 1982, pp. 25-35.

1 1 2 1 1 2

2 0 1 2 0 1

(a) (b)

Fig. 2 Cyclic conflict.

5 2

Fig. 3 Horizontal constraint graph.

Fig. 4 Vertical constraint graph.

[8] D.N. Deutsch, "A 'dogleg' DAC, 1976, pp. 425-433.

channel router," Proc. 13rd

[9] M. Burstein, "Channel routing," in Layout Design and Verification by T. Ohtsuki (ed.), Elsevier Science Publish- ers B.V., North-Holland, 1986, pp. 133-167.

[lo] R.L. Rivest and C.M. Fiduccia, "A 'greedy' channel

router," Proc. 19th DAC, 1982, pp. 418-424.

[ l l ] H.W. Leong and C.L. Liu, "Discretionary channel routing," IEE Proc., vol. 135, Pt. G, no. 2, Apr. 1988, pp. 45-57.

[12] K.C. Chang and H.C. Du, "Layer assignment prob- lem for three-layer routing," IEEE Trans. Comp., vol. 37, no. 5, May 1988, pp. 625-632.

0 0 0 0

d

0 0 0 0

2 0

0 0 0

3 0

0 0 0

4 6 0

0

0

6 6 0 0

0 0 0 0

6 0 . 0

0

0

0 0 . 0 0

7 0 0

0

0 0 0 0 0

8 0 . 0 5 0 * 0

0

0

0 0 . 0 0

9 0 . 0

0

0

0.0

0 0

0

Fig. 5 Network architecture for channel routing.

Reference Problem # nets # columns channel our

1 9 13 5 5

data density solution

2 10 12 5 5 [7]Fig.l 3 4 7 4 4 [ll]Fig.3 4 3 10 3 3 [ll]Fig.lO 5 5 10 3 4* [ I 1lFig.11 6 4 7 3 3 [ I 2lFig.8 7 10 13 5 5 [12]Fig.9 8 10 12 5 5 [12]Fig.l1 9 10 12 6 6 [12]Fig. 12 10 13 15 7 7 [I 2lFig.13

* length of longest path in VCG is 4.

Table 1 Experimental results.

數據

Fig.  3 Horizontal constraint graph.

參考文獻

相關文件

The aim of the competition is to offer students a platform to express creatively through writing poetry in English. It also provides schools with a channel to

Students are asked to collect information (including materials from books, pamphlet from Environmental Protection Department...etc.) of the possible effects of pollution on our

In this paper, we have studied a neural network approach for solving general nonlinear convex programs with second-order cone constraints.. The proposed neural network is based on

Experiment a little with the Hello program. It will say that it has no clue what you mean by ouch. The exact wording of the error message is dependent on the compiler, but it might

In this project, we have done channel surface plasmon polaritons in transmission line, terahertz plasmonic microcavity,Ginzburg-Landau approach to study vortex pinning in

Moreover, this chapter also presents the basic of the Taguchi method, artificial neural network, genetic algorithm, particle swarm optimization, soft computing and

This study proposed the Minimum Risk Neural Network (MRNN), which is based on back-propagation network (BPN) and combined with the concept of maximization of classification margin

To solve this problem, this study proposed a novel neural network model, Ecological Succession Neural Network (ESNN), which is inspired by the concept of ecological succession