33
Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Embed Size (px)

Citation preview

Page 1: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Triple Patterning Aware Detailed Placement With Constrained

Pattern AssignmentHaitong Tian, Yuelin Du,

Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Page 2: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Outline

• INTRODUCTION• PRELIMINARIES• CPA-FRIENDLY DETAILED PLACEMENT• CPA-FRIENDLY REFINEMENT WITH OPTIMAL HPWL• EXPERIMENTAL RESULTS• CONCLUSIONS

Page 3: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

INTRODUCTION

• With the fast development of the semiconductor industry, products are already available using 22nm technology node, and 14/10nm technology node is also coming near.

• For such small features, traditional immersion lithography are facing great challenges, as the features are so small and close to each other that they can not be well printed in one exposure.

• Triple patterning lithography (TPL) has been recognized as one of the most promising techniques for 14/10nm technology node.

Page 4: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

INTRODUCTION

• For standard cell based designs, assigning the same pattern for the same type of cells is a desired property for TPL decomposition.

• It is more robust for process variations and gives the chip similar physical and electrical characteristics as well as more reliable and predictable performance.

• Assigning the same type of pattern for the same type of cell is called a constrained pattern assignment (CPA) problem.

Page 5: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

INTRODUCTION

Page 6: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

INTRODUCTION

• As modifying the layout after the placement stage is extremely costly and inefficient, it is highly preferred to refine the layout during the detailed placement stage to make it CPA friendly.

Page 7: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

INTRODUCTION

• We formulate the problem into a weighted partial MAX SAT problem with limited number of clauses, which guarantees to find a solution while minimizing the area overhead.

• An efficient graph model is also proposed to compute the exact locations of the cells with optimal HPWL.

• For each standard cell, our algorithm compute a CPA-friendly solution graph, which essentially explores all legal solution space for the cell.

Page 8: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

CPA-friendly Detailed Placement

• Given a legalized standard cell based detailed placement layout and a minimum conflicting distance 𝑑𝑚𝑖𝑛, our objective is to compute a CPA friendly placement layout while minimizing the total area and HPWL overhead.

Page 9: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

CPA-FRIENDLY DETAILED PLACEMENT• We reuse the definitions of Constraint graph (CG) and Solution graph

(SG) in [15], and boundary polygons (BP) in [14] for consistency.

Page 10: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Hard Clauses

• The hard clauses denote those constraints that must be satisfied. After identifying all boundary polygons, the hard clauses are formulated as follows.

Page 11: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Hard Clauses

Page 12: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Soft Clauses

• After setting up all the hard clauses, a solution computed is guaranteed to be legal at the cell level. At the layout level, the inter-cell constraints need to be properly captured to reflect the CPA coloring requirements.

Page 13: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Soft Clauses

• Similar approaches can be used to formulate the soft clauses for two conflicting boundary polygons.

• Define 𝑤 𝑖𝑗as follows, which is the total number of placement sites needed to make all 𝑥 𝑖and 𝑥 𝑗 conflict free to each other.

Page 14: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• For two boundary polygons 𝑥1 and 𝑥2, 𝑤12 placement sites are needed to make them conflict free, the soft clauses will have weight 𝑤12. • Similarly, the weight for clauses between 𝑥1 and 𝑥3 is 𝑤13. The soft

clauses in Fig. 2 can be expressed as follows.

Page 15: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• Definition 1 (Atomic Unit). For any two conflicting polygons and 𝑥𝑖 , the Atomic Unit (AU) is defined as the following clauses:𝑥𝑗

• Lemma 1. For any AU, at least two of its three clauses are satisfied.

Page 16: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• Denote the atomic unit of two boundary polygons 𝑥 𝑖and 𝑥 𝑗as 𝐴𝑈 𝑖𝑗 . The soft clause for 𝑥 𝑖and 𝑥 𝑗 can be denoted as 𝑤𝑖𝑗𝐴𝑈 𝑖𝑗 .• Denote all the hard clauses as Cℎ𝑎𝑟𝑑, and rewrite the soft clauses as

• Our objective is to minimize

Page 17: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• The formulation are composed of two parts: • hard clauses which must be satisfied and soft clauses where the

clauses with a maximum amount of total weight are satisfied.• The problem remains of how can we properly map the value of the

objective function to the area overhead for achieving a CPA-friendly layout.

Page 18: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Capturing Critical Polygons

Page 19: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Capturing Critical Polygons

• Definition 2 (X-Freedom). The X-Freedom of two boundary polygons 𝑥 𝑖

and 𝑥 𝑗 is defined as the horizontal distance ℎ 𝑖𝑗one needs to move 𝑥 𝑖

and 𝑥 𝑗 further apart from each other, such that the distance of 𝑥 𝑖and 𝑥 𝑗

equals to 𝑑 𝑚𝑖𝑛 .

• Definition 3 (Critical Polygons). The critical polygons between two type of cells are defined as the pair of boundary polygons with the largest X-Freedom.

Page 20: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong
Page 21: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• Lemma 2. The value of equals to the area overhead to achieve a 𝐹CPA-friendly placement result.

Page 22: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Excluding Native Conflicts

• For non-critical boundary polygons, we need to be careful with the native conflicts when adding them into the hard clauses.

• If they are added into the hard clauses, the weighted partial MAX SAT solver will return no results even a solution exists.

Page 23: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Excluding Native Conflicts

• Therefore, a preprocessing step is incorporated to detect the native conflicts among non-critical boundary polygons.

• If there are native conflicts, they are not added into the hard clauses.

• Instead, we locate all such kind of boundaries and insert necessary placement sites to remove these conflicts.

• Denote the area overhead incurred by the native conflicts as 𝐹𝑛𝑎𝑡𝑖𝑣𝑒, the final area overhead equals to + 𝐹 𝐹𝑛𝑎𝑡𝑖𝑣𝑒.

Page 24: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

CPA-friendly Solution Graph

Page 25: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

CPA-FRIENDLY REFINEMENT WITH OPTIMAL HPWL

Page 26: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Capturing X-Scope of a Cell

• Definition 4 (X-Scope). The X-Scope of a cell instance 𝑠 𝑗 is defined as an interval [𝐿𝑗,𝑅 𝑗 ], where 𝐿 𝑗 and 𝑅 𝑗 represent the left most location and right most location respectively that we can place 𝑠𝑗while satisfying CPA coloring constraints.

Page 27: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Capturing X-Scope of a Cell

• A look-up table LUT is constructed with dimension ×𝑛 𝑛.

• For any two cells 𝑐𝑖 and 𝑐𝑗 , there are four types of cell adjacency

Page 28: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

• Intuitively, if we pack all the cell instances before 𝑠 𝑗 as compact as possible, we get 𝐿 𝑗 . Similarly, if we pack all the cell instances after 𝑠 𝑗

as compact as possible, we get 𝑅 𝑗 .

Page 29: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Constructing a Graph Model

• After computing the X-Scope of all cell instances, a directed acyclic graph model 𝐺 = ( ,𝑉 𝐸) can be constructed to compute the exact locations of all the cell instances with optimal HPWL.

Page 30: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

Constructing a Graph Model

Page 31: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

EXPERIMENTAL RESULTS

• The algorithm is implemented in C++ and run on a Linux server with 4GB RAM and a 2.53 GHZ CPU. All benchmarks are generated using NanGate FreePDK45 Generic Open Cell Library [2], which is available online.

• The standard cells are randomly selected from the cell library, and are aligned adjacently in different rows of a chip.• Nets for all cells are randomly generated, where each cell is

connected with three to ten nets.

Page 32: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

EXPERIMENTAL RESULTS

Page 33: Triple Patterning Aware Detailed Placement With Constrained Pattern Assignment Haitong Tian, Yuelin Du, Hongbo Zhang, Zigang Xiao, Martin D.F. Wong

CONCLUSIONS

• In this paper, we integrate the flow of detailed placement and TPL decompositions, which guarantees a CPA-friendly layout in the early design stage and avoids costly modifications after placement and routing.

• Compared with a the approach of fixing the cell colors beforehand, the area overhead reduction is as much as 79.4% on average for all the benchmarks. Better results are also reported on HPWL for all benchmarks.