• 沒有找到結果。

In this chapter, the results of experiments we collected will be illustrated. And all of them are conducted on workstation running Linux with Intel(R) Xeon(R) CPU E5-2643 v2 3.50 GHz system with 70 GB RAM. Both proposed algorithm and the control group, along with LineDiff Entropy algorithm, were implemented in C++

programming language compiled by g++ (GCC) v.4.8.2 released on 20140120.

Table 4.1 is adopted from Table 3.1, and it shows the specification of our implementation. Basically our proposed router and the control group are both designed for 14/16-nm technology node just like we introduced in section 3.1. The only difference between them is the strategies we’ve expressed in the previous chapter. The first strategy needs the routing track to be 84 nm in the width, resulting in a drop in routability. So a procedure which checks whether the source pin is able to connect the target pin directly, simple route, is taken place. But the most important modification is the calculation of the cost in A* search. Proposed router takes advantage of both distance and the performance of the patterns in LineDiff Entropy algorithm. While the control group in our implementation is a detailed router which contains only the original A* search algorithm to find the shortest path. And all other specifications in both designs are just the basic requirements in the technology roadmap. Expected compression ratio is 450, estimated in section 1.1 and it’s the ultimate goal we are trying to reach out.

The input cases were generated at random by their coordinates, and the original point was set on the top-left corner. Figure 4.1 shows a concept of this input file generation. There are three pairs of source and target pins in this figure, and our detailed router should find paths to connect them separately without any intersection. Another

constraint set in generating input is that each source and target node cannot be in the same grid in neither proposed router nor control group. Note that this figure does not show the exact input file format, the actual format is just pairs and pairs of coordinates of pins.

Groups Proposed A* search

Track width 84 nm 80 nm

Simple route Yes No

Cost evaluation

Distance and LDE(*) preference

Distance only

Wire width 40 nm

Pixel size 7nm * 7nm

Pixel depth 5 bits, 32 gray-level scales

Number of layers 3 layers

Expected CR 450

Table 4.1 Spec. of the implementation, (*)LDE: LineDiff Entropy algorithm.

Figure 4.1 Concept of input generation.

The following tables are the results of our experiments. Each of these tables contains four sets of input cases generated at random, and they are grouped by the size of the input circuit. We named the input cases in Table 4.2 the huge cases because each of them contains 10,000 wires to be routed. And the other cases are called large, medium, small, and tiny cases for Table 4.3, Table 4.4, Table 4.5, and Table 4.6 respectively, because of the number of wires needing routed is 8000, 5000, 3000, and 1000. After these complicated information, Table 4.7 shows the organized result of all.

In these tables, the basic information of each cases is listed on the top. The identifiers of each input cases were given just for convenience. In each cases, all the results can be viewed by two parts. The information on the left is from the control group which was implemented using A* search algorithm only, while the one on the right-hand side is our proposed detailed router. There are four topics we want to discuss, including routability, total wire length, and the two most-important issues in MEBDW systems, decompression rate and data compression ratio in LineDiff Entropy.

Routability is the primary concern for every router, and it’s defined by the success rate while finding the actual path for each wire. In the proposed detailed router, we designed a simple route process in order to deal with the severe problem in routability caused by making wires on-grid. And the results show that the proposed algorithm does route more wires than pure A* search. Actually the proposed detailed router has routability more than 95% in every single test case and 97.59% on average.

But everything has its price. To reach such a high routability and the benefits in other aspects, the router usually needs to take longer detours. So in Table 4.7 we can see that the total wire length in the proposed algorithm is 23.43% more than the control group. It’s actually not negligible, but compared to the contribution of this work, we should try to do something more in the future to fix this.

The two issues we want to discuss next, which are also extremely important in MEBDW systems, are decompression rate and compression ratio. Decompression hardware should be directly attached to the electron beam writer, so decompression rate being as fast as possible can save the hardware resources and make sure the decompressed data sent to the writers in real time. In our experiment results, we can see that the decompression time in the proposed router and the control group are almost the same. So we can conclude that our design did not affect the decompression rate.

As for the compression ratio, just like we estimated, has a great improvement. The compression ratio (CR) here is defined as the original data size divided by the compressed data size. The results show that CR in proposed router is improved by at most 1.67 times than the router with only A* search. And in Table 4.7 we can also know that our design has a roughly 1.42 times on average better than the control group in CR.

But aside from the multiples we’ve mentioned above, the important part is the goal of our design. In the previous section we know that the desired CR is about 450 in manufacturing. The results also show that in most of the input case, proposed router reach this target, while the control group doesn’t.

These two important issues are also plotted in Figure 4.2 and Figure 4.3. Note that in these figures, the numbers had been taken average in each size of input. We can see in Figure 4.2 that the decompression time is nearly the same in both designs. And Figure 4.3 shows CR in both designs, with the black line in the middle shows the ultimate goal, 450 times, of compression ratio in our research.

Input case ID. Huge_#1 Huge_#2

# of wires 10000 10000

Area (nm2) 97440 * 97440 97440 * 97440

Group A* search Proposed A* search Proposed

Routability 84.03% 93.40% 91.55% 97.48%

Total wire length (nm) 29614800 37031228 14799960 18289352

Decompression time (s) 38.51 37 37.02 37.72

Original data size (Byte) 1796598720 1796598720 1796598720 1796598720 Compressed data size (Byte) 6795886 4066245 5513903 3660736 Compression ratio 264.3656353 441.8323834 325.830672 490.7752758

CR Improvement 1.671292802 1.506227983

Total wire length (nm) 14773440 18223484 19912040 24538916

Decompression time (s) 37.82 37.24 34.74 35.39

Original data size (Byte) 1796598720 1796598720 1796598720 1796598720 Compressed data size (Byte) 5539075 3655172 5962215 3807019 Compression ratio 324.3499537 491.522347 301.3307504 471.9174556

CR Improvement 1.515407483 1.566111175

Table 4.2 Results of experiments for huge cases.

Input case ID. Large_#1 Large_#2

# of wires 8000 8000

Area (nm2) 87360 * 87360 87360 * 87360

Group A* search Proposed A* search Proposed

Routability 85.81% 94.34% 92.81% 97.89%

Total wire length (nm) 21290680 26586708 10617960 12997012

Decompression time (s) 30.83 30.84 31.82 32.69

Original data size (Byte) 1495690560 1495690560 1495690560 1495690560 Compressed data size (Byte) 5277262 3252139 4338296 2947402 Compression ratio 283.4216986 459.9097886 344.7645251 507.4606586

CR Improvement 1.622704934 1.471905088

Input case ID. Large_#3 Large_#4

# of wires 8000 8000

Area (nm2) 87360 * 87360 87360 * 87360

Group A* search Proposed A* search Proposed

Routability 92.28% 98.01% 89.76% 96.65%

Total wire length (nm) 10520240 12951368 14125160 17563512

Decompression time (s) 31.75 31.41 29.49 30.12

Original data size (Byte) 1495690560 1495690560 1495690560 1495690560 Compressed data size (Byte) 4333774 2940447 4708042 3062791 Compression ratio 345.1242635 508.6609485 317.6884488 488.3423518

CR Improvement 1.473848704 1.537173774

Table 4.3 Results of experiments for large cases.

Input case ID. Medium_#1 Medium_#2

# of wires 5000 5000

Area (nm2) 67200 * 67200 67200 * 67200

Group A* search Proposed A* search Proposed

Routability 88.10% 95.74% 93.60% 98.30%

Total wire length (nm) 10160440 12623972 4951760 5968560

Decompression time (s) 18.35 19.1 17.45 17.45

Original data size (Byte) 885024000 885024000 885024000 885024000 Compressed data size (Byte) 2980874 1892347 2414204 1714069 Compression ratio 296.9008418 467.6858948 366.5903958 516.3292726

CR Improvement 1.575225897 1.40846372

Input case ID. Medium_#3 Medium_#4

# of wires 5000 5000

Area (nm2) 67200 * 67200 67200 * 67200

Group A* search Proposed A* search Proposed

Routability 93.46% 98.64% 91.40% 97.38%

Total wire length (nm) 4921960 5973624 6738560 8327120

Decompression time (s) 17.98 17.48 18.47 18.08

Original data size (Byte) 885024000 885024000 885024000 885024000 Compressed data size (Byte) 2426859 1721081 2661106 1798012 Compression ratio 364.6787885 514.2256524 332.5775072 492.2236337

CR Improvement 1.410078317 1.48002683

Table 4.4 Results of experiments for medium cases.

Input case ID. Small_#1 Small_#2

# of wires 3000 3000

Area (nm2) 52080 * 52080 52080 * 52080

Group A* search Proposed A* search Proposed

Routability 91.07% 96.90% 95.20% 99.07%

Total wire length (nm) 4700520 5883716 2269280 2628396

Decompression time (s) 10.98 11.38 10.85 10.55

Original data size (Byte) 548714880 548714880 548714880 548714880 Compressed data size (Byte) 1703269 1110990 1337456 1010446 Compression ratio 322.1539757 493.8972268 410.2676125 543.0422605

CR Improvement 1.533109209 1.323629368

Input case ID. Small_#3 Small_#4

# of wires 3000 3000

Area (nm2) 52080 * 52080 52080 * 52080

Group A* search Proposed A* search Proposed

Routability 94.30% 99.20% 93.30% 98.67%

Total wire length (nm) 2234960 2648696 3063680 3672492

Decompression time (s) 10.8 10.45 11.34 11.29

Original data size (Byte) 548714880 548714880 548714880 548714880 Compressed data size (Byte) 1332523 1008515 1489779 1058049 Compression ratio 411.7864232 544.0820216 368.3196501 518.6100833

CR Improvement 1.321272366 1.408043484

Table 4.5 Results of experiments for small cases.

Input case ID. Tiny_#1 Tiny_#2

# of wires 1000 1000

Area (nm2) 30240 * 30240 30240 * 30240

Group A* search Proposed A* search Proposed

Routability 95.00% 97.80% 97.50% 99.30%

Total wire length (nm) 881440 1072176 421040 427356

Decompression time (s) 3.97 4.14 3.89 3.8

Original data size (Byte) 199130400 199130400 199130400 199130400

Compressed data size (Byte) 497082 361671 383569 316350

Compression ratio 400.598694 550.5843709 519.1514434 629.4623044

CR Improvement 1.374403809 1.212483009

Total wire length (nm) 437640 439072 572360 625980

Decompression time (s) 4.13 3.79 3.85 4.01

Original data size (Byte) 199130400 199130400 199130400 199130400

Compressed data size (Byte) 389990 318149 423360 335303

Compression ratio 510.6038616 625.9029574 470.3571429 593.8819515

CR Improvement 1.225809291 1.262619183

Table 4.6 Results of experiments for tiny cases.

Group A* search Proposed

Average routability 92.26% 97.59%

Total wire length (nm) 177007920 218472740

Total wire length exceeded 23.43%

Total decompression time (s) 404.04 403.93 Difference of decompression time -0.03%

Average compression ratio 364.0431 517.5174

Average CR improvement 1.421583

Table 4.7 Overall results of experiments.

Figure 4.2 Decompression time comparison

Figure 4.3 Compression ratio comparison, the black line indicates the goal of the research 450

There are two routing results shown in Figure 4.4 and Figure 4.5. In both figures, the layouts on the left is the result of the control group, while the ones on the right is the result of our proposed router. And all three layers are listed together. We can see that when we’re using only A* search, layer_2 is rarely used, while proposed router has a better area utilization. Figure 4.4 is the result of case Huge_#1 and Figure 4.5 shows the result of case Medium_#3.

Layer_0 Layer_0

Layer_1 Layer_1

Layer_2 Layer_2

(a) A* search (b) Proposed

Figure 4.4 Routing results for Huge_#1.

Layer_0 Layer_0

Layer_1 Layer_1

Layer_2 Layer_2

(a) A* search (b) Proposed

Figure 4.5 Routing results for Medium_#3.

相關文件