deep submicron layout: guide

23
SungKyunKwan Univ . 1 VADA Lab. Deep Submicron Layout: Guide 조 조 조 조조조조조조 조조조조조조조조조조 http://vlsicad.skku.ac.kr 1998. 6

Upload: diana-cobb

Post on 03-Jan-2016

118 views

Category:

Documents


1 download

DESCRIPTION

Deep Submicron Layout: Guide. 조 준 동 성균관대학교 전기전자컴퓨터공학부 http://vlsicad.skku.ac.kr 1998. 6. Contents. 1. Fundamental Layout Algorithms 2. Deep Submicron Issues 3. Timing-Driven Layout 4. Clock Synthesis 5. Deep Submicron CAD Tools. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Deep Submicron Layout: Guide

SungKyunKwan Univ.

1VADA Lab.

Deep Submicron Layout: Guide

조 준 동성균관대학교

전기전자컴퓨터공학부http://vlsicad.skku.ac.kr 1998. 6

Page 2: Deep Submicron Layout: Guide

SungKyunKwan Univ.

2VADA Lab.

Contents

1. Fundamental Layout Algorithms

2. Deep Submicron Issues

3. Timing-Driven Layout

4. Clock Synthesis

5. Deep Submicron CAD Tools

Page 3: Deep Submicron Layout: Guide

SungKyunKwan Univ.

3VADA Lab.

• As physical feature sizes decreases, the time delay of electrical signals

• traveling in the interconnect between active devices and gates is approaching

• the delay through the devices and gates. The parasitic information of the

• interconnect is absolutely critical to predicting circuit performance.

• Thus, physical interconnections delay will overtake gate delays as a design

• concern by the tear 2000, mandating a shift in the physical design flow for

• deep-submicron. Therefore, Iterations between synthesis and layout increase

• dramatically due to timing and routability problems.

• The key to solving this problem is knowing more about the physical design,

• i.e., placement and estimated interconnect, early in the design cycle.

• The RTL is being defined to accurately predict size, timing and power,

• early in the design cycle and avoid downstream iterations. This means the

• design engineer needs to get back to the fundamentals of physics.

• It is the goal of this special issue to explore physical level solutions to

• the deep submicron problems.

Page 4: Deep Submicron Layout: Guide

SungKyunKwan Univ.

4VADA Lab.

Fundamental Layout Algorithms

1998. 5. 19

조 준 동

Page 5: Deep Submicron Layout: Guide

SungKyunKwan Univ.

5VADA Lab.

• 1. High-Performance Design Automation for MCMs and Packages, Jun-Dong Cho and Paul Franzon, World Scientific Publishing Co. 1996.

• 2. An Introduction to VLSI Physical Design, M. Sarrafzadeh and C.K.Wong. MacGraw-Hill, 1996.

• 3. On Optimal Interconnections for VLSI, A. B. Kahng and G. Robins. Kluwer Academic Publishers, 1995.

• 4. Combinatorial Algorithms for Integrated Circuit Layout, Thomas Lengauer, John Wiley & Sons 1990.

• 5. Low Power Digital CMOS Design, A. P. Chandrakasan and R. W. Brodersen

• 6. Fundamental of Algorithms, R. Neapolitan and K. Naimipour, D.C. Heath and Company, 1996

Deep-Submicron Layout DesignThis course studies computer-aided design algorithms with complex VLSI circuits. We discuss especially on up-to-date deep submicron layout synthesis issues on large-scaled VLSI circuit designs. The physical layout problems to be discussed in this course are: partitioning and floorplanning/placement, global and detailed routing, timing-driven layout, power and ground routing, clock synthesis, lower power synthesis, MCM layout, and layout verification.

Page 6: Deep Submicron Layout: Guide

SungKyunKwan Univ.

6VADA Lab.

Layout vs Algorithm• VLSI Physical Design Automation is essentially the study of algorith

ms and data structures related to the physical design process.

• The objective is to study optimal arrangements of devices on a plane (or in a three dimensional space) and efficient interconnection schemes between these devices to obtain the desired functionality.

• Efficient algorithms not only lead to fast turn-around time, but also permit designers to iteratively improve the layouts.

• Physical design automation is considered by many as the study of graph theoretic and combinatorial algorithms for manipulation of geometric objects in two and three dimensional space.

• Since almost all problems in VLSI physical designs are computationally hard, the researchers have explored on heuristic algorithms.

Page 7: Deep Submicron Layout: Guide

SungKyunKwan Univ.

7VADA Lab.

Design of Algorithms and Complexity

• When efficient solutions appear difficult, negative results can sometimes provide very helpful guidance.

• If a problem is NP-complete it cannot be solved in polynomial time.

• For a given complexity function f(n), O(f(n)) is the set of complexity functions g(n) for which there exists some positive real constant c and some nonnegative integer N such that for all n >= N, g(n) <= c f(n).

• If g(n) O(f(n)), we say that g(n) is “O” of f(n), an asymptotic upper bound on a function.

• For a given complexity function f(n), (f(n)) is the set of complexity functions g(n) for which there exists some positive real constant c and some nonnegative integer N such that for all n >= N, g(n) >= c f(n).

• If g(n) (f(n)), we say that g(n) is “” of f(n), an asymptotic lower bound on a function.

Page 8: Deep Submicron Layout: Guide

SungKyunKwan Univ.

8VADA Lab.

Algorithm Complexity• For a given complexity function f(n), (f(n)) = O(f(n)) (f (n)).• This means that (f(n)) is the set of complexity functions g(n) for which there exists some p

ositive real constants c and d and some nonnegative• integer N such that, for all n >= N, c f(n) <= g(n) <= d f(n).• If g(n) (f(n)), we say that g(n) is order of f(n).• a problem is called intractable if it is impossible to solve it with a polynomial-time algorith

m.• Problems for which polynomial time algorithms have been found, called polynomial-time a

lgorithm: for example, shortest Path problem, minimum spanning tree problem.• Problems that have been proven to be intractable, called NP-complete problems

• Problems that have not been proven to be intractable, but for which polynomial-time

algorithms have never been found, called open problems

• Most of the problems arisen in VLSI physical designs are NP-complete, and we need fast he

uristic algorithms with error bounds.

Page 9: Deep Submicron Layout: Guide

SungKyunKwan Univ.

9VADA Lab.

Basic Algorithms• - 욕심꾸러기 알고리즘 (greedy algorithm)[RIC96,POP82]: Charles Dickens 의 소설 인물인 E

benezer Scrooge 는 매일마다 그의 단하나의 욕구는 단순히 그가 할 수 있는 한 많은 돈을 긁어 모으는 것이다 . 이 욕심꾸러기 알고리즘은 Scrooge 가 하는 것과 똑같은 방식으로 동작한다 . 욕심꾸러기 알고리즘은 매순간의 순차적인 결정으로 해답에 도달한다 . 그 각각의 결정은 단순히 그 순간에 가장 좋은 것을 택하는 것이다 . 즉 , 각 결정은 국부적 (local) 으로 최적화된 결정이다 . 바람직한 것은 이런식으로 결정을 할 때 전체적 (global) 으로 최적화된 해답을 얻는 것이지만 실제적으로 모든 문제에 대해서 항상 그렇게 되는 것은 아니다 .

• - 계층적인 (hierarchical) 접근 또는 분해 (decomposition)[NN96] 는 divide and conquer( 또는 cut and paste) 라고 불린다 . 만약 어떤 문제 사례 (instance) 의 크기가 너무 커서 쉽게 계산하기 어렵다면 그것들을 더 작은 개체들로 나눌 수 있다 . 이렇게 사례들을 아주 작은 크기로 나누어서 작은 크기 사례에 대하여 쉽게 해답을 얻을 수 있을때까지 나누기를 계속한다 . 이 divide-and-conquer 접근방식은 하향식 (top-down) 접근방법이다 . 즉 가장 최상위 수준의 문제의 해답은 아래로 내려가서 작은 사례들의 해답들을 얻음으로써 얻어질 수 있다 .

• - 동적 프로그래밍 (dynamic programming)[NN96] 은 전체 문제의 사례가 보다 작은 문제들의 사 례 로 나 뉘 어 진 다 는 면 에 서 devide-and-conquer 와 비 슷 하 다 . 그 러 나 , 동 적 프로그래밍에서는 먼저 작은 문제들의 사례를 먼저 해결한다 . 그리고 그 결과들을 저장한다 . 그리고 나서 그 결과가 필요할때마다 , 그것들을 다시 계산하지 않고 단순히 그 결과들을 참조하기만 하면 된다 . Fibonacci 수열의 n 번째 term 를 계산하는 것은 동적 프로그래밍의 한 예이다 . 이 알고리즘은 순서대로 0 에서 n 까지 인덱스 되어있는 배열 f 에서 처음의 n-1 번째 term 을 만듦으로써 n 번째 피보나치 수열의 term 을 결정한다 . 동적 프로그래밍에선 상향식 방식으로 (bottom up) 해답을 만들어간다 .

Page 10: Deep Submicron Layout: Guide

SungKyunKwan Univ.

10VADA Lab.

Basic Algorithms• - Branch and Bound Prunning[NN96] 을 이용한 최고 우선 탐색 (Best-First Search) 은 solution space 를

트리형태로 구성한 다음 각 노드 (node) 에서 그 노드가 유망한지 (promising) 를 결정하여 불필요한 해 공간(solution space) 에 대한 탐색을 최소화하여 최적해를 구하는 데 필요한 계산시간을 줄이는 것이다 . 만약 그 노드의 한계값이 지금까지 발견된 가장 좋은 해의 값보다 좋지 않다면 그 노드는 유망하지 않기 때문에 그노드에 연결된 부트리 (subtree) 는 가지치기 (pruning) 를 한다 . 반대의 경우 그 노드는 유망 (promising)하다고 하고 그 노드에 연결된 부트리에 대한 탐색을 계속하여 어떤 promising 경로가 트리의 leaf 노드에 도달할 때까지 같은 일을 반복한다 . Branch-and-bound 알고리즘은 최악의 경우 지수형태의 시간을 소모한다 . 그러나 많은 경우에 있어 커다란 사례에서 매우 효과적이다 . 각 노드에서 계산되는 한계값은 그 노드가 유망한지 아닌지 결정하는 것 이외에 유망한 노드들의 한계값들을 비교해서 가장 좋은 한계값을 갖는 노드의 자식노드들을 방문하는 데 쓰일 수 있다 . 이러한 접근방법을 branch-and-bound 가지치기 (prunning) 를 이용한 최고우선 탐색 (best-first search) 이라고 부른다 .

• - 담금질 (Simulated Annealing)[KJV83] 방법은 VLSI 설계 자동화 분야 (PLA folding [Wong et at. 1986], 분할 [Chung and Rao 1986], 배치 , 배선 [Vecchi and Kirkpatrick 1983], 배치계획 [Otten and van Ginnekin 1984]등 )뿐만 아니라 logic 최소화 [Lam and Delosme 1986], 스케쥴링 , 할당 문제들 , TSP(Travelling Salesman Problem)[Randoelman and Grest 1986], 그리고 다른 Operation Research 문제들에서 일어나는 커다란 크기의 어려운 최적화 문제들을 풀기위한 확률적 heuristic 방법이다 . 만약 Simulated Annealing 이 적절한 냉각 계획을 가지고 충분히 오랜시간동안 동작한다면 전체에서의 최소점 (global minimum) 에 도달한다는 것이 보장된다 . [Mitra et al. 1985; van Laarhoven and Aarts 1987]. 이 알고리즘의 동작을 쉽게 이해하기 위하여 다음의 비유를 살펴본다 . 먼저 이름이 연유된 첫 번째 비유를 살펴보자 . Simulated Annealing 은 금속에서의 어닐링 과정에 비유된다 . 만약 금속이 스트레스를 받고 불완전한 수정구조를 가지고 있을 때 , 이것의 원자배치를 다시 회복시키는 한 가지 방법은 아주 높은 온도로 열을 가하는 것이다 . 그러면 원자들은 아주 높은 운동에너지를 가지게 되어서 현재의 잘못된 위치의 느슨한 연결을 끊고 나오게 된다 . 금속이 냉각됨에 따라 원자들은 천천히 바른 격자 구조로 고정되기 시작한다 . 만약 금속이 너무 급속하게 냉각된다면 원자들은 바른 격자 위치를 찾아갈 기회를 잃게 된다 .

Page 11: Deep Submicron Layout: Guide

SungKyunKwan Univ.

11VADA Lab.

Basic Algorithm• ( 계속 ) 그래서 수정구조에 결점이 있는 채로 냉각되어버린다 . 이와 유사하게 , 시뮬레이트 어닐링에서의 높은

온도에서는 처음의 구성에 아주 많은 임의적인 교환이 일어나게 된다 . 이것들은 잘못된 위치에 놓여져 있는 셀들에게 처음의 위치로부터 움직일 기회를 가져다 준다 . 온도가 줄어듦에 따라 셀들은 천천히 그들의 최적의 위치로 찾아들게 된다 . 두 번째 비유에서는 Simulated Annealing 은 상자안의 언덕이 많은 지형에 있는 공에 비유된다 . 외부의 충격이 없으면 공은 움푹 들어간 곳을 만날 때까진 언덕을 따라 내려가게 된다 . 비록 멈춰서 있는 구덩이가 가장 낮은 계곡보다는 높은 곳에 있지만 그곳에 영원히 멈춰 있게 될 것이다 . 공을 전체에서 가장 낮은 계곡으로 보내기 위해선 상자가 아주 심하게 흔들려서 공이 높은 언덕을 넘어설 수 있을 만큼 되어야 한다 . 동시에 상자는 점점 흔들림이 줄어들어서 공은 가장 낮은 계곡에 들어서고 그곳에서 빠져나오지 못해야 한다 . 상자를 흔드는 진동의 세기는 확률적인 함수와 초기 온도에 의해서 결정된다 . 그리고 진동의 기간은 냉각 스케쥴과 루프 내부의 평가기준에 의해서 결정된다 . 더욱 자세한 내용은 뒤에 설명되는 배치 및 배선과정에서 다룰 것이다 .

• - 유전자 알고리즘 (Genetic Algorithm)[D.E89]: VLSI 칩의 레이아웃 설계는 아주 복잡한 최적화 문제라서 보통 여러개의 단계로 나누어져서 풀고 있다 . 그 각각의 단계 사이에는 많은 연관성이 존재하기 때문에 그것들 중의 여러 가지 것들을 결합하는 방법이 추천된다 . 그 복잡성 때문에 오히려 유전자 알고리즘같은 단순한 경험적 접근방법이 사용될 수 있다 . 유전자 일고리즘은 유전학에서 사용하는 우성인자 쌍들의 교배 및 우성인자의 변이를 통하여 새로운 개체군을 만들어 해를 구하는 방법으로 그 효율성이 최근 입증되고 있다 . 유전자 알고리즘도 Simulated Annealing 방식과 함께 VLSI 설계의 많은 분야에서 적용되고 있다 . 레이아웃 설계에서는 배치계획에 먼저 적용된 바 있다 .

• - 선형 프로그램 (Linear Programming)[PDP82] 은 간결성 및 정형성으로 가장 선호하는 최적화 기법 중의 하나이며 LP package 는 Matlab 또는 internet 의 shareware 를 통하여 쉽게 이용할 수 있기 때문에 많은 엔지니어에 의해서 선호되는 방법이다 . 그 기본 형식은 다음과 같이 정의된다 .

• For all x, MAX(cx), subject to Ax <= a and Bx=b • 여기서 x는 변수의 벡터 공간을 나타내며 , c 는 비용 함수를 , A 와 a 는 부등식으로 표현되는 제약조건을 , B 와 b

는 등식의 제약 조건을 나타낸다 . Simplex method 라는 알고리즘에 의하여 그 효율성이 입증되었다 .

Page 12: Deep Submicron Layout: Guide

SungKyunKwan Univ.

12VADA Lab.

Basic Algorithm• - 병렬 처리 알고리즘 [BAN94]: IC 의 집적도가 커짐에 따라 시스템의 복잡도는 크게 증가하고 있다 . 기존의 배치나 배선 알고리즘들은 그들 자체가 가지고 있는 순차적인 성질 때문에 크게 계산시간적인 제약을 받고 있다 . Simulated Annealing 과 같은 randomize 된 탐색 알고리즘이 사용될 때 , 대부분의 계산 시간은 비용함수를 계산할 때 거의 사용된다 . 계산함수의 계산은 PVM을 구성하는 parallel machine 에서 계산될 수 있다 . PVM 환경은 master-slave mode 에서 작동한다 . 최적화 부분은 main host 를 사용함으로 해서 master mode 에서 작동하며 비용함수 계산은 slave mode 를 사용함으로 해서 parallel 하게 작동한다 . 특히 net 에 대해서 많은 수를 가지고 있는 설계는 이런 방법으로 속도개선을 가능하게 한다 . 신경망 알고리즘들도 이러한 문제들을 해결하기 위해서 병렬적인 해들을 제공하고 있다 . 그러나 문제의 크기가 큰 VLSI 레이아웃 설계의 경우에는 적용하기가 어렵다는 단점이 있다 . 따라서 새로운 tool 은 성능을 개선시키기 위해 병렬 프로세서를 이용하기도 하고 그래프이론 및 최적화 기법 , 또는 전문가 시스템과 같은 heuristic 프로그래밍 기술을 사용하기도 한다 .

• - 그래프를 이용한 문제 정형화 [AMO93,PAP82]: 대부분의 VLSI CAD 툴에서 사용되는 설계 최적화를 위해서 사용되는 그래프이론은 다음과 같다 : Maxflow, mincost flow, shortest path, minimum spanning tree, multicommodity flow, tansportation problem, traveling saleasperson problem. Euler graph, perfect graph, planar graph등 .

Page 13: Deep Submicron Layout: Guide

SungKyunKwan Univ.

13VADA Lab.

Design Flow

Page 14: Deep Submicron Layout: Guide

SungKyunKwan Univ.

14VADA Lab.

Physical Constraints• Physical interconnections delay will overtake gate delays as a design concern by the year 2000 ,

mandating a shift in the physical design flow for deep-submicron, said Thomas Yin, vice president of the research group at workshop cosponsor Avant! Corp.

• "The other four steps in the flow follow as a result of the physical constraints imposed by deep-submicron design rules: timing-driven hierarchical place-and-route; physical timing optimization; parasitic extraction and delay calculation; and, finally, hierarchical verification,” Yin said.

• Manfred Wiesel, a design manager at Intel Corp.'s microprocessor group (Hillsboro, Ore.), offered a list of "creative tools," which he defines as tools that become more than incrementally better with each generation. Wiesel believes that clock routing and synthesis have begun to get creative and that floor planning -- with the exception of editing functions -- and cell synthesis are on the brink of creativity.

• On the other hand, Wiesel said, some tools are actually declining in usefulness. Such tools as standard-cell synthesis/place-and-route and full-chip place-and-route were more useful five years ago than they are today, he said.

• "The focus of EDA has been on ASICs, and the result is that creative tools have not kept up with submicron processes, increased clock speeds and electrical rules in today's full-custom designs," Wiesel said.

• On his wish-list are tools whose output can be used without a large amount of iterations and editing; standardization of rules by such bodies as Sematech; standard interfaces; and, or course, EDA tools that run on Windows-based PCs.

Page 15: Deep Submicron Layout: Guide

SungKyunKwan Univ.

15VADA Lab.

Feed Forward Design

Page 16: Deep Submicron Layout: Guide

SungKyunKwan Univ.

16VADA Lab.

Floorplanner

Page 17: Deep Submicron Layout: Guide

SungKyunKwan Univ.

17VADA Lab.

Design Systems Today

Page 18: Deep Submicron Layout: Guide

SungKyunKwan Univ.

18VADA Lab.

Floorplan/Placement

Page 19: Deep Submicron Layout: Guide

SungKyunKwan Univ.

19VADA Lab.

Global Routing(top-down recursion)

C 4 C 1

C 3

C 4

C 2 C 2

C 1

C 3

1,2 1,3

2,3 1,2

C 4=2C 1=2

C 3=2

C 2=21

2

1

3

3

2

1

2

C 1

C 3

C 2

C 4

C 3

C 1

C 2

C 4

1

2

1

3

3

2

1

2

C 2

C 1

C 3

C 4

Page 20: Deep Submicron Layout: Guide

SungKyunKwan Univ.

20VADA Lab.

Global Routing(flat design)

Page 21: Deep Submicron Layout: Guide

SungKyunKwan Univ.

21VADA Lab.

Line Search Maze routing(with obstacles)

Page 22: Deep Submicron Layout: Guide

SungKyunKwan Univ.

22VADA Lab.

Multichip Module routing

Page 23: Deep Submicron Layout: Guide

SungKyunKwan Univ.

23VADA Lab.

Channel Routing