當前位置:
OFweek 人工智能網
> 正文
一文了解高級綜合優(yōu)化選項ungroup
2021-07-29 10:38
ExASIC
關注
我們在綜合時,為了面積和時序目標,常常開了很多優(yōu)化選項,比如compile_ultra。這個命令會根據面積和時序的要求,自動ungroup部分子模塊,并進行跨模塊邊界優(yōu)化。為了優(yōu)化動態(tài)功耗,我們還會自動插入門控時鐘。還有DCT、DCG模式,會打開物理優(yōu)化,為了修復Cap和Transition的違例,進行寄存器復制、子模塊端口復制等。下面就這些選項做一些說明。
flatten hierarchy
顧名思義就是打平層次關系,特別是一些純組合邏輯的小模塊,或者以連線為主的粘合邏輯。我們知道時序分析(setup/hold)時有以下幾種時序路徑:in2reg、reg2reg、reg2out、in2out。判斷一條路徑是否滿足時序要求,就是看路徑上的總延時大小。而總延時是跨模塊的,或者說是以邏輯錐(logic cone)為單位的。所以打平這些組合邏輯模塊后,就不需要保持層次關系的端口,更有利于以邏輯錐為單位進行優(yōu)化。相反,如果保留子模塊pin,優(yōu)化力度會打折扣。
那是不是把所有層次關系都去掉更好呢?對優(yōu)化面積和時序,是的。但對LEC、ECO、后仿調試,會大大加大難度。所以,一般建議只flatten跨模塊的大組合邏輯。并且建議設計時按邏輯錐來劃分模塊,即常講的模塊的信號總是用DFF打拍輸出。

聲明:
本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯(lián)系舉報。
請輸入評論內容...
請輸入評論/評論長度6~500個字