今天我們要介紹的時(shí)序概念是設(shè)計(jì)約束文件 SDC . 全稱 Synopsys design constraints . SDC是一個(gè)設(shè)計(jì)中至關(guān)重要的一個(gè)文件。它對(duì)電路的時(shí)序,面積,功耗進(jìn)行約束,它是設(shè)計(jì)的命脈,決定了芯片是否滿足設(shè)計(jì)要求的規(guī)范。
Timing工程師在release sdc時(shí)必須非常小心,一個(gè)錯(cuò)誤的false path或者case constant就有可能導(dǎo)致整塊芯片不工作。
Timing Constraint 為使用者所給定,用來(lái)檢驗(yàn)設(shè)計(jì)電路時(shí)序的準(zhǔn)則。我們?cè)谧鯯TA前首先要了解各種約束是做什么的。
Timing Constraint按照它們的用途,大致分為以下幾類:
(1)描述芯片的工作速度,即時(shí)鐘的頻率,包括create_clock,create_generated_clock等
(2)描述芯片的邊界約束,包括set_input_delay, set_output_delay等
(3)描述芯片的一些設(shè)計(jì)違反rule(DRV),包括set_max_fanout,set_max_capacitance, set_max_transition等
(4)描述設(shè)計(jì)中一些特殊的路徑,包括set_false_path,set_multicycle_path等
(5)描述設(shè)計(jì)中一些需要禁止的timing arc,例如set_disable_timing
需要注意的是,設(shè)計(jì)的不同階段我們使用的sdc都有所不同(當(dāng)然,有的公司比較強(qiáng)大,會(huì)有一套golden sdc)。比如說(shuō),綜合時(shí)由于模型的粗糙,我們會(huì)選擇過(guò)約sdc,將時(shí)鐘頻率設(shè)得更高一些;CTS之前,由于skew的不確定性,通常我們也會(huì)加大uncertainty;還有signoff tool與PR工具correlation問(wèn)題,margin的設(shè)置也會(huì)不一樣。
那我們?nèi)绾稳ズ侠矶x一個(gè)設(shè)計(jì)的sdc呢?
這是一項(xiàng)非常有難度的工作,其實(shí)常用的sdc命令就以下幾條,但要準(zhǔn)確運(yùn)用他們可不容易。
clock相關(guān) :
create_clock
create_generated_clock
set_clock_uncertainty
set_clock_groups
set_input_delay
set_output_delay
系統(tǒng)接口相關(guān) :
set_input_transition
set_load
set_driving_cell
時(shí)序特例相關(guān):
set_false_path
set_multicycle_path
邏輯賦值相關(guān):
set_case_analysis
接下來(lái)幾篇文章會(huì)分別介紹這些命令
還有一個(gè)最重要的前提條件是:我們必須要盡早有一張結(jié)構(gòu)清晰的clock結(jié)構(gòu)圖。而且是越早做越好。clock結(jié)構(gòu)最好是讓前端設(shè)計(jì)人員給你,當(dāng)然也可以通過(guò)cad軟件自己去畫(huà)一張。這邊介紹一個(gè)比較好用的綠色小軟件 TinyCad . 簡(jiǎn)單易學(xué)~~
也可以通過(guò)Verdi來(lái)trace電路結(jié)構(gòu),這也是很方便的,只需要讀入設(shè)計(jì)的網(wǎng)表就行
好了,今天就大致介紹一下sdc的基本概念。
-
時(shí)序分析
+關(guān)注
關(guān)注
2文章
127瀏覽量
22542 -
DRV
+關(guān)注
關(guān)注
0文章
18瀏覽量
20635 -
SDC
+關(guān)注
關(guān)注
0文章
48瀏覽量
15518 -
CTS
+關(guān)注
關(guān)注
0文章
34瀏覽量
14037
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論