• 沒有找到結果。

2.3 Problem Formulation

3.1.4 Path Selection

In general, if a routing path contains more co-wirelength, it means the total wire-length is smaller. The purpose of all of our rules is to get as more co-wirewire-length

Figure 3.6: (a) the MST topology of an example (b) the Direction-Oriented Path Search on the MST topology .

as possible. Here, we define a kind of edge, co-edge, and co-wirelength as follows : Co-edge : the possible co-wirelength with other connection at one direction search edge Co-wirelength : Pn

i=1(the co-edge on connection path )

Figure 2.9 is an example of co-edge. When we check co-edge of t1, we can see e2 is the co-edge of the right direction. There is no co-edge at up and down direction of t1, but there is a path existed. At the left direction of t1, we never do any search.

The same as the left direction of t2, e1 is the co-edge.

We say the possible co-wirelength is the total co-edge on the connection path.

This is the reason why we always select the path which contains highest total co-edge. Then, how to estimate the co-edge accurately is the problem we should resolve.

The solution we proposed will be described at the rest of this section.

We propose a way about rule based path selection. Here, we use the information from direction-oriented path search to give a better path selection. After observing routing example we think all two-pins nets can be divide into two kinds of situation.

The different situation will be handled by difference modes, Enhanced mode and Normal mode. The Enhanced mode means we should consider additional routing path case (it will form Z-shape ), because the additional solution might be better

than L-shape. The Normal mode means there is no chance to improve the solution in Z-shape , and then we will add a property called ” Avoid property ” to help making a decision at L-shape.

On this step, we still base on MST topology, and we only handle a two-pins net one time. When we select a two-pins net for path selection, we will decide which mode of this net should be. Then, we determine the routing path between these two-pin nets by the rules. The algorithm of path selection is shown in Figure 3.7.

Figure 3.7: The algorithm of path selection. We divided the path into two kinds of mode, and then selecting the path which had highest total number of co-edges

First, we show how to select which kind of mode the two-pins net belonged to.

When any search direction of two-pins net fit the condition shown in Figure 3.8, the net will be led into Enhanced mode.

The two conditions are shown in Figure 3.8 (a) and (b). In Figure 3.8, the

two-pins net to be handled are ” t1-t2 ” in (a) and ” t3-t4 ” in (b). (a)shows one direction of the pin, t1, is more than once and longest at handled two-pins net (like e1). (b)shows one direction of the pin, t4, is a failed search, but it is succeed in another two-pins net (like e2).

It is easy to show the reason why we only consider the Z-shape case when the net fits the Enhanced condition. If the net does not fit the condition, it means every direction of pins must be one of the situation: no path, only be searched one time, or not the longest path. As shown in Figure 3.11 (b), when we consider t1-t2 net, the down direction of t2 is not a longest path at this direction. IF we want to get maximal co-edge, the meaning is to use whole e2 to be the path. At this kind of case we only consider the L-shape path.

Figure 3.8: The conditions of enhanced mode: (a) one of the pin’s direction search is more than once and longest at handled two-pins net (like e1) (b) one of the pin’s direction is a failed search, but it is succeed in another two-pins net. (like e2).

• Enhanced Mode :

The difference of Enhanced mode and normal mode are not only the additional routing case, but also some additional edge estimation mode. If there is no

co-edge and path existed at one of any pin’s direction, we will check any hidden co-co-edge existed or not. We give an example of hidden co-edge at Figure 3.9.

In Figure 3.9, (a) is the direction-oriented path search. When we consider the two-pins net, t1-t3, shown in (b). There is only one path existed, if we just consider L-shape and the all of the co-edge is 0. In fact, there are 2 hidden co-edge existed.

One is t1’s right direction. Although, the t1’s right direction is failed in t1-t3 net, the t1’s right direction is successful in t1-t2 net. So, there is hidden co-edge, e1, at t1’s right direction. The same as e2 is an hidden co-edge. (c) is the net of t1-t2.

When we consider this net, there are two hidden co-edge too.

Figure 3.9: (a) the direction-oriented path search (b) the t1-t3 net have two hidden co-edge e1 and e2. (c) the t1-t2 net has two hidden co-edge e3 and e4. When we consider the hidden co-edge, we can have more solution space.

We list the hidden co-edge rules at table 3.1 If the co-edge is not existed, we will use the rule to check hidden co-edge. We show the hidden co-edge checking flow at Figure 3.10.

The Rule-1 is the same as e1 in Figure 3.9 (b) and e4 in (c). The search at the direction is successful in handling net, but is failed in other net.

The Rule-2 means the information of search time getting form direction- oriented path search. When any two-pin net’s direction-oriented path search is failed in one direction, but the opposite search is successful in the net. We will remark the successful search and the end position of this search. At this step, we measure the

hidden co-edge by these information. The Rule-2 is shown in Figure 3.11(a). In Figure 3.11 (a), there is no co-edge at t1’s right direction, but we can easily to see that there is one co-edge at the t2’s down direction. The e1 in 3.11(a) not fits Rule-1, because the down direction search of t2 is failed in handling net.

The Rule-3 means the total numbers of search time more than one time. The priority of these rules means the chance of co-edge really existed at these three kinds of condition. We discover the results of using these priority on experiment are better than others. As shown in Figure 3.9 (b) and (c), e2 and e3 fit Rule-3. There is no successful search at that direction, but the times of search are more than once.

Table 3.1: hidden co-edge rules. The success-fail search time means there is at least one of the search in other two-pin net is failed in this direction, but the the corresponding search direction is successful in the net.

Priority Formula

Rule-1 High (Failed search time * length) Rule-2 Med. (Success-Fail search time * length) Rule-3 Low ((All search time -1)* length)

• Normal Mode :

At this mode, we don’t need to consider hidden co-edge, but we should consider the net which is the neighbor of handled net. When the total co-edge at two L-shape are the same, we add a new parameter called ” avoid property ”. If the avoid property of one L-shape is higher than another one. We say the L-shape is not a good choice.

We define the property should be avoided and avoid direction as follows : Prop-erty : the co-edge of avoid direction. Avoid direction : the direction which will increase total wirelength.

The property is the co-edge of avoid direction. The avoid direction means the

Figure 3.10: When we determine the value of hidden co-edge in enhanced mode, our algorithm will run as this flow.

direction avoid now direction. Figure 3.12 (a) shows the avoid direction. The handling net is t1-t2 and the co-edge value of that net is the same at up L-shape and down L-shape. Let’s us check the property of down L-shape. The avoid direction of t1’s right direction is down direction. The reason is at t1-t3 net, if we select t1’s right direction to be the path, t1’s down direction is not be selected. All the other avoid directions are selected by the same way. In this example, the total number of property at down L-shape is E1, and then the total number of property at up L-shape is 0. We should select up L-shape at t1-t2 net. (b) is the final result at this case by our algorithm.

Figure 3.11: (a) The right direction of the pin,t1 , is a failed search, but it is successful in another two-pins net. (e1)(b) The down direction search of the pin, t2, is more than once and not longest at handled two-pins net. (e2)

Figure 3.12: (a)an example of avoid direction. When we consider the two-pin net t1-t2, t1’s down direction is the avoid direction of t1’s right direction, and E1 is the co-edge of down direction. The property of t1’s right direction is E1. (b) The result of considering the property.

• Path Selection :

After counting the co-edge in each direction of the two-pins net, we will pick up any two of them which have maximal overlapping wirelength. When the net lead in Enhanced mode, we should especially notice that the total co-edge of Z-shape be bounded by the length of one direction.

When we consider the Z-shape, we should notice that the additional path is available or not in the Z-shape. IF the path is not available, we will drop the

solution and choose other solution. In addition, our approach can apply to preferred direction problem too. The reason is that we consider one direction one time in our search and path selection step.

To see Figure 3.13, in (a), the total co-edge of up L-shape is e1+e2. In (b), the total co-edge of the Z-shape is e3+e4, but be bounded by the length of x direction.

The total co-edge is | xt3 - xt4 |.

Figure 3.13: (a) In the up L-shape,the total co-edge is e1+e2 (b) In the Z-shape,the total co-edge is bounded. The total co-edge of this example is | xt3 - xt4 |.

相關文件