約束設(shè)置與邏輯綜合在SoC設(shè)計(jì)中的應(yīng)用
3.4.2 端口的驅(qū)動(dòng)與負(fù)載
端口的驅(qū)動(dòng)和負(fù)載特性通過設(shè)置輸入驅(qū)動(dòng)單元、輸入輸出負(fù)載值以及信號(hào)躍遷時(shí)間等來描述。范例如下:
#設(shè)置端口a7的驅(qū)動(dòng)單元是BUFX2
set_drive_cell -lib_cell BUFX2 -pin
[get_ports {a7}];
#設(shè)置端口d17的負(fù)載值為20 pf
set_load -pin_load 20 [get_ports {d17}];
#設(shè)置端口d0的輸入信號(hào)上升時(shí)間是0.5 ns
set_input_transition -rise -min 0.5
[get_ports {d0}];
3.5 面積和功耗約束
Design Compiler的綜合以時(shí)序優(yōu)先,即優(yōu)化完約束后才根據(jù)約束優(yōu)化面積和功耗。初次綜合時(shí)很難對(duì)面積進(jìn)行評(píng)估,所以在第一次綜合時(shí)設(shè)置優(yōu)化目標(biāo)為0,表示在滿足時(shí)序約束的情況下最大努力地減小面積。待綜合報(bào)告出來之后,根據(jù)初步的面積和功耗報(bào)告,修改數(shù)值,從而進(jìn)一步優(yōu)化。
#面積設(shè)置
set_max_area 0;
#功耗的約束做類似的處理:
set_max_total_power 0;
3.6 綜合結(jié)果
根據(jù)上述綜合流程和約束設(shè)置,ZSU32系統(tǒng)芯片在邏輯綜合后滿足了時(shí)序約束,同時(shí)為后續(xù)物理設(shè)計(jì)提供了較好的起點(diǎn)。圖5是ZSU32時(shí)序分析報(bào)告的一部分。
評(píng)論