-
Floorplan design에 대해서전공/VLSI 설계 2021. 4. 7. 03:03
이전 게시글에서 언급했듯, Floorplan 단계는 Chip을 설계할 때 밑그림을 그리는 단계라고 했다.
그러면 밑그림을 그리는 단계에서는 무엇이 중요할까?
이를 생각해보면 아래 3가지가 중요한 요소로 고려된다.
1. Chip/Module의 면적
2. Chip/Module의 비율
3. 총 Wire의 길이
첫 번째 요소인 Chip/Module의 면적을 생각해보자.
Chip/Module의 면적이 작으면 여러 Scaling 이득(특히나 경제적 이득)을 얻을 수 있지만, 반대로 Routing 할 수 있는 공간이 줄어들어 Congestion이 발생할 수 있다. (여러 레이어를 사용해도 연결 못할 수 있다.)
따라서 Routing 할 공간을 최소한으로 남겨두고 최대한 작게 만드는 것이 최선이다.
두 번째로, Chip/Module의 비율(가로세로 비)을 생각해보자.
제조 비용과 패키지 크기를 고려하면 정사각형에 가까운 Chip이 낫다. (가로세로 비가 1에 가까운)
또한 각 모듈을 융통성 있게 배치/이용하기 위해서는 Chip의 비율은 정사각형에 가까운 것이 낫다.
세 번째로, Wire의 길이에 대해서 생각해보자.
Wire의 길이가 긴 경우
Interconnect delay는 증가하고, Power 소모도 커지고, Routability가 감소하고, 제조 비용도 증가한다.
무엇하나 장점이 없다. Wire는 그냥 짧으면 좋다.
자, 그러면 3가지 중요한 요소를 모두 확인하였으니 위 요소들이 모두 최고로 좋은 Floorplan design을 진행하면 되겠다!
...라고 생각했으나 우리가 한 가지 간과한 사실이 있다.
첫 번째 요소인 Chip/Module의 면적을 줄이는 것은 앞서 설명했듯 서로 연결할 공간을 줄어들게 만들어 Routability를 감소시킨다.
이렇게 Routability가 감소하면, Module끼리 바로 연결할 수 있었던 Wire가 우회하여 돌아가거나 여러 Metal layer를 사용하여 연결해야 하는 상황을 초래한다. (이러면서 세 번째 요소인 Total Wire length가 증가하게 된다.)
이 말이 의미하는 바는 당연하게도
면적과 총 Wire 길이는 Trade-off 관계가 되며, 이는 해당 Chip과 Module의 쓰임에 따라 최적의 Design이 달라진다는 것이다.
objective function $\alpha$ : Floorplan design시 중요도를 의미한다.
$area(F)$ : Chip/Module의 면적을 의미한다.
$L(F)$ : 근사치로 빠르게 계산한 총 Wire length를 나타낸다.
정리하면, 모든 상황에서 최고인 Floorplan design은 존재하지 않으니 쓰임에 맞게 $\alpha$값을 잘 조정하며 design을 진행하면 해당 쓰임에 최적인 밑그림이 생성될 것이다.
+ 점점 소자의 Scale이 작아짐에 따라서, Transistor delay보다는 Interconnect delay가 커지게 되었다.
따라서 Floorplan시 Gate-level에서 판별된 가장 긴 critical path에 속하는 interconnect을 먼저 연결하도록 우선권을 주면 추후 Routing으로 인한 delay 손실을 줄일 수 있다.
'전공 > VLSI 설계' 카테고리의 다른 글
Floorplan을 Constraint-Graph Pair로 변환하는 방법 (0) 2021.04.08 Floorplan 자료 구조 표현 (0) 2021.04.07 Chip planning 개요 (0) 2021.04.07 Multi cycle path와 False path에 대해서 (0) 2021.04.01 Logic Circuit의 Timing Violation 정리 (0) 2021.03.31