16
An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Embed Size (px)

Citation preview

Page 1: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

An Efficient Linear Time Triple Patterning Solver

Haitong TianHongbo Zhang

Zigang XiaoMartin D.F. Wong

ASP-DAC’15

Page 2: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Outline• Introduction• Preliminaries• An Optimal Algorithm• Hierarchical Approach• Experimental result• Conclusions

Page 3: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Introduction• Triple patterning lithography (TPL) has

been recognized as one of the most promising techniques for 14/10nm technology node.

• The general TPL problem is a three coloring problem,which is a well-known NP-Complete problem.

Page 4: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Introduction• The contributions of this paper are summarized

as follows:

• A TPL algorithm is proposed which essentially explores all solution space incorporating all legal stitch candidates, and compute a TPL decomposition with optimal number of stitches if one exists.

• A novel graph model is proposed to minimize the number of vertices in the solution graph.

Page 5: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Preliminaries• A TPL algorithm targeting on standard cell based

designs is proposed in [10], which guarantees to find a solution if one exists for stitch-free designs.

• Problem Definition:• Given a standard cell based row structure layout

and a minimum coloring distance dmin, our objective is to find a legal triple patterning decomposition while minimizing the number of stitches.

Page 6: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15
Page 7: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

An Optimal Algorithm• Although the algorithm in [10] is able to find a

stitch-free decomposition if one exists, it may uses an excessive amount of runtime and memory than necessary.

Page 8: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

A Novel Graph Model

Page 9: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Fast computation of cutting line

sets• Constructing such a graph model is expensive.

For each original cutting line set, we need to compute all its subsets and enumerate the number of legal TPL solutions for all the subsets.

• The key observation here is that to reduce the number of TPL solutions for a cutting line set.

Page 10: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

• Any two adjacent cutting line sets are merged together if one of them is a subset of the other.

• Lemma 1. For any feature pi which first appears in the cutting line set sj , all conflicting features of pi with smaller left boundaries are included in the cutting line set sj−1.

Page 11: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Stitch candidatesThe approach of finding all legal TPL stitch candidates in [11] is embedded into our algorithm.

When stitches exist, the solution graph becomes a weighted graph, with the weight of an edge computed as the number of stitches needed for the connected vertices.

Page 12: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Hierarchical Approach• To further speed up the algorithm, the solution

graphs of different types of cells can be computed and stored in a look up table.

Page 13: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15
Page 14: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Experimental result• The algorithm is implemented in C++ and run on

a Linux server with 8GB RAM and a 3.0 GHZ CPU. The algorithm in [10] is also implemented to compare with our approach

Page 15: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15
Page 16: An Efficient Linear Time Triple Patterning Solver Haitong Tian Hongbo Zhang Zigang Xiao Martin D.F. Wong ASP-DAC’15

Conclusion• In this paper, we propose a linear time triple

patterning solver that guarantees to compute a TPL decomposition with optimal number of stitches if one exists.

• A fast approach is also proposed to achieve simultaneous memory and runtime reductions compared with state-of-the-art TPL algorithm.