專題製作成果 報告 gated clock cloning for timing fixing

18
專專專專專專專專 Gated Clock Cloning for Timing Fixing 指指指指 指指指指指 指指指指 指指指 指指指

Upload: keenan

Post on 06-Feb-2016

77 views

Category:

Documents


0 download

DESCRIPTION

專題製作成果 報告 Gated Clock Cloning for Timing Fixing. 指導教授: 林榮彬 教授 專題組員: 韓儩源、蔡萬都. 大綱. 問題 描述 演算法 流程圖 測試結果 Q&A. 問題描述. 問題描述. Constraint Function Max( Si+Li ) + Enable Logic(E0+Ej) + Skew

TRANSCRIPT

Page 1: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

專題製作成果報告Gated Clock Cloning for Timing Fixing

指導教授: 林榮彬教授專題組員: 韓儩源、蔡萬都

Page 2: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

大綱 問題描述 演算法 流程圖 測試結果 Q&A

Page 3: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

問題描述

Page 4: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

問題描述

Constraint Function Max(Si+Li) + Enable Logic(E0+Ej) + Skew <= Clock

Period (P0) + Delay (Sj)

Page 5: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

演算法 Build Kd-tree For Grouping Flip-Flops Decision Clock Gating Location Merge Clock Gating

Page 6: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Build Kd-tree For Grouping Flip-Flops利用現有的” kdtree algorithm” 來對 flip-flop進行 nearest neighbor 的分堆

Page 7: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating LocationConstraint Function

Maxdelay(Si+Li) +E0 +Ej+skew<=period+Sj

找到一個點是符合 skew 又不超過Maxdelay(Si+Li)

加入 Ej 檢查 Constraint function

Page 8: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location 利用提供的查找表來計算 delay

clock root 固定置於 (0,0) - Sj = x + y , 先決定 Sj 再調整 Lj

距離計算方法: Manhattan Distance

Page 9: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location

x + y = Sj

ENABLELOGIC

FLIP FLOP

clock root

CLOCK GATE

Page 10: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location 而從要符合 skew 的條件下,我們可以得到一

個 delay(Lj) 的範圍:Maxdelay-Sj-skew <= Lj <=Maxdelay-

Sj

再利用查找表將 Lj 的範圍長度算出i1 <= delay(Lj)’s length <= i2

Page 11: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location

x + y = Sj

ENABLELOGIC

FLIP FLOP

clock root

CLOCK GATE

Lj 的範圍

Lj 的範圍

Delay Sj

Delay Lj

Page 12: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location 加入 Ej 檢查 Constraint function

若是不符合 Constraint function 或是找不到 delay(Lj) 的範圍,便重新決定 Sj

Page 13: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Decision Clock Gating Location

x + y = Sj

ENABLELOGIC

FLIP FLOP

clock root

CLOCK GATE

Delay Sj

Delay Lj

Delay Ej

New x + y = Sj

Page 14: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Merge Clock Gating Bottom-up FLIP FLOP

合併後的 group

Page 15: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

流程圖

Page 16: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

測試結果 主辦單位測試檔

主辦單位測試結果

Test case PERIOD DIE_SIZE FLIP_FLOP

case1 4000 8000 x 8000 800

case2 50000 20000 x 15000 1200

Test case Buffer number

Gate number Run time

case1 2417 172 1529s

case2 3817 240 804s

Page 17: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Q&A

Page 18: 專題製作成果 報告 Gated Clock Cloning for Timing Fixing

Thank you