介 紹
傳統時序優化的方法和訓練方向主要集中在檢查和改善RTL代碼或是時序約束。盡管這種方法行之有效,但在實戰中因為技術和商業方面的限制,很多更改都不可能真正的執行下去。比如某些對設計比較大的修改,可能會讓產品的發布日期承擔滯后的風險。當下盛行可重復使用的設計模塊,設計中經常會出現不能輕易更改的第三方IP核。最糟糕情況的解決方案(“worstcase scenario” solution)也不過就是把目標器件升級到一個更大的或是有更快速度等級的版本,盡管它們都將帶來一筆不小的花費。
萬幸的是,當今FPGA工具(比如Xilinx的 Vivado)都有很多開關和設置選項來幫助時序收斂。InTime的方法,就是通過調整FPGA工具的編譯過程來解決用戶的時序問題和其他性能問題。Xilinx 的ISE和Vivado軟件包含了很多綜合和布局布線的參數,每一項都至少有兩個值可以直接影響最終結果。InTime幫助設計師深入挖掘這些工具的性能,以達到要求的結果。
上圖是一個客戶案例,X軸代表采用不同綜合和布局布線的編譯批次,Y軸顯示的是失敗最差余量(Failing Worst Slack, 0代表時序通過)的絕對值,單位為納秒。在這里您可以清楚地看到InTime把失敗最差余量從-0.45ns (-450ps) 減少到了0ns,僅通過調整編譯參數就達到了時序目標,而且對設計沒有任何變動。
很多情況下,用戶經常使用默認的綜合和布局布線的參數。因為不確定會有什么后果,很少有人會嘗試改變這些參數。再加上很多參數是相互聯動的,多個參數如果被同時設置錯誤會讓時序變得更加糟糕;所以調試參數這項任務,就變得更加舉步維艱。
更多內容還請點擊 “閱讀原文”,下載白皮書
了解InTime的流程
優化設計的步驟
步驟一:生成數據
步驟二:使用“Deep Dive”配方
步驟三:Auto Placement配方或Extra Optimization 配方
云端運行InTime和Vivado
結論
-
IP核
+關注
關注
4文章
326瀏覽量
49428 -
編譯
+關注
關注
0文章
654瀏覽量
32806
發布評論請先 登錄
相關推薦
評論