Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning...

29
Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography- Aware Analog Placement

Transcript of Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning...

Page 1: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Hsing-Chih Chang Chien

Hung-Chih Ou

Tung-Chieh Chen

Ta-Yu Kuan

Yao-Wen Chang

Double Patterning Lithography-Aware Analog Placement

Page 2: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Outline

Introduction DPL conflict handling The algorithm flow Experimental results Conclusions

Page 3: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Introduction

DPL decompose patterns of a layer into two sub-patterns and

then use two masks to manufacture the two sub-patterns

Page 4: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

DPL conflict Two patterns separated by the distance less than Smin

belong to the same mask.

Page 5: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Analog Placement Problem

Previous Works corner stitching compliant B*-tree (CB-tree) [14]

DPL is not considered in previous works.

Page 6: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Analog designers usually reduce mismatches by predefining masks (colors)

Page 7: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Preliminaries

For constraint-driven analog placement, CB-tree is the most effective and efficient topological representation with module adjacency information

Page 8: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Review of Corner Stitching Corner stitching is a data structure for representing

non-overlapping rectangular modules in a two-dimensional plane (called tile plane).

Page 9: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 10: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Analog Constraints

Symmetry constraints are use to place some pairs of modules symmetrically

along a vertical or a horizontal symmetry axis. It can reduce mismatches of sensitive modules.

Proximity constraints are use to place modules at closest proximity to reduce

process variation.

Page 11: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Problem Formulation

Rectangular modules M = {mk|1 ≤ k ≤ |M|} Nets N = {nk|1 ≤ k ≤ |N|} Placement Constraints S = {sk|1 ≤ k ≤ |S|} Pre-coloring Constraints R = {rk|1 ≤ k ≤ |R|}

Place all modules in M to minimize the total area, wirelength, and DPL conflict

Page 12: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

DPL conflict handling

Resolving an analog placement with DPL conflicts. extended conflict graph(ECG) to model the global

relationship among patterns/modules.

Page 13: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Module Flipping

Page 14: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Extended Conflict Graph (ECG)

The traditional conflict graph considers the information from a fixed layout.

Since a poly can only be placed vertically, there are only two choices for module orientations: non-flipped and flipped.

Page 15: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 16: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 17: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Basic Integer Linear Programming (ILP) Formulation

Page 18: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 19: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

ILP Problem-Size Reduction

Connected Component Computation Two-Edge-Connected Component Computation

identify a bridge

Page 20: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

The algorithm flow

Page 21: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Perturbation

In stage 1 & 3

In stage 2

Page 22: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 23: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

The Three-Stage Placement Flow

Page 24: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Tile Plane Updating to create new tiles and update the corner stitches to

record the neighbors for each tile.

Page 25: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 26: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Experimental results

C++ programming language. Intel Xeon X5647 2.93GHz Linux workstation with

48GB memory. CPLEX12.3 [1] library to solve the ILP problems. Two industrial analog circuits Case1 and Case2.

Page 27: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 28: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.
Page 29: Hsing-Chih Chang Chien Hung-Chih Ou Tung-Chieh Chen Ta-Yu Kuan Yao-Wen Chang Double Patterning Lithography-Aware Analog Placement.

Conclusions

DPL-aware analog placement flow to simultaneously minimize area, wirelength, and DPL conflicts.

Propose an extended conflict graph (ECG). Develop an ILP algorithm considering symmetry and

pre-coloring constraints to minimize conflicts. A three-stage flow.