日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

SDC是如何炼成的?Exception篇

發(fā)布時(shí)間:2023/12/15 综合教程 43 生活家
生活随笔 收集整理的這篇文章主要介紹了 SDC是如何炼成的?Exception篇 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

講述SDC中的各式各樣的Exception,大體上可以分為“加嚴(yán)”和“放松”兩種類型,如下面幾個(gè)命令:

##更嚴(yán)格##
set_max_delay

set_min_delay

set_data_check...

##更放松##

set_false_path

set_multicycle_path

set_case_analysis

set_disable_timing...

需要強(qiáng)調(diào)的是需要加嚴(yán)的部分,對(duì)于異步路徑,往往需要通過set_max_delay來約束,防止路徑過長。而且有些跨時(shí)鐘域(CDC)的路徑,為了保證握手時(shí)的數(shù)據(jù)一致性,需要用到格雷碼(Gray Code),約束時(shí)更加需要注意。



多周期路徑:

之前的文章有提到多半周期路徑,是為了加快數(shù)據(jù)的處理速度。這里的多周期路徑則是針對(duì)那些不需要太快的處理速度,一定程度上節(jié)省面積和功耗。多周期路徑常常發(fā)生在memory讀寫路徑,某些復(fù)位路徑,從慢時(shí)鐘域到快時(shí)鐘域的路徑等等。

當(dāng)然,多周期路徑是需要電路結(jié)構(gòu)配合實(shí)現(xiàn)的,但總體思路有兩個(gè):

(1)通過Enable信號(hào)控制Clock的采樣時(shí)刻

(2)通過Enable信號(hào)控制Data的變化時(shí)刻

下面舉一個(gè)通過方法(2)實(shí)現(xiàn)n-1個(gè)周期路徑的例子:

上圖主體上是從D1寄存器到D2寄存器的一條路徑,中間經(jīng)過了很長的組合邏輯。特殊之處在于D1/D2的數(shù)據(jù)變化是受FSM狀態(tài)機(jī)控制的,其中D1數(shù)據(jù)變化發(fā)生在第1個(gè)時(shí)鐘周期后(FF1的輸出信號(hào)使能),D2數(shù)據(jù)變化發(fā)生在第n的時(shí)鐘周期后(FFn的輸出信號(hào)使能)。從下面的波形圖可以看出,D1_OUT到D2_OUT經(jīng)過了n-1個(gè)周期。

優(yōu)先級(jí)順序

對(duì)于幾個(gè)常見的exception命令,使用時(shí)要特別注意優(yōu)先級(jí)順序,避免出現(xiàn)想要的約束不起作用的情況。

假設(shè)有一條從UFF1(CLKA)到UFF2(CLKB)的路徑,想通過以下命令進(jìn)行約束,最終的效果是怎樣的呢?

# CMD1s
et_multicycle_path 2 -from CLKA -to CLKB
# CMD2, 優(yōu)先級(jí)比CMD1高,覆蓋

set_multicycle_path 3 -from UFF1/CP
# CMD3,優(yōu)先級(jí)更高,覆蓋

set_max_delay 6.6 -from UFF1/CP -to UFF2/D
# CMD4,優(yōu)先級(jí)比CMD3低,忽略

set_max_delay 5 -from CLKA -to CLKB
# CMD5,優(yōu)先級(jí)最高,覆蓋

set_false_path -to UFF2/D

可以看出,最終的效果還是false path,設(shè)置的max_delay不起作用。

總結(jié)

以上是生活随笔為你收集整理的SDC是如何炼成的?Exception篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。