深入淺出講透set_multicycle_path,從此徹底掌握它

今天在跑 PR flow 后 debug timing 時(shí)工腋,發(fā)現(xiàn)前端給的 constraint 中存在一點(diǎn)問(wèn)題姨丈,若干地方的時(shí)序本可以設(shè)置 multicycle 的 path,給漏設(shè)了擅腰,直接影響工具對(duì) design timing 的優(yōu)化力度蟋恬。因此,小編打算寫(xiě)一篇文章來(lái)介紹下 multicycle path 的概念和用法趁冈,同時(shí)也帶領(lǐng)大家復(fù)習(xí)下 setup 和 hold 的時(shí)序檢查機(jī)制歼争。

通常情況下拜马,兩個(gè)同步的 reg 進(jìn)行 timing check 時(shí),組合邏輯的 delay 必須在一個(gè)時(shí)鐘周期內(nèi)到達(dá)沐绒,才能滿(mǎn)足 setup 的時(shí)序俩莽。但在某些情況下,從一個(gè)寄存器輸出到另外一個(gè)寄存器的 data 端需要不止一個(gè) cycle 的時(shí)間乔遮,而且又不影響邏輯的功能扮超。此時(shí),我們可以將這樣的 path 約束為 multicycle path蹋肮。圖 1 所示為一個(gè) 3cycle 的 multicycle path 的電路結(jié)構(gòu)圖和波形圖出刷。

因此,我們可以用下面的命令來(lái)定義約束:

create_clock -name CLKM -period 10 [get_ports CLKM]

set_multicycle_path 3 -setup -from [get_pins UFF0/Q] -to [get_pins UFF1/D]

setup 檢查:

默認(rèn)情況下坯辩,當(dāng) UFF0/CK 作為 launch clock 時(shí)(T=0ns 時(shí))馁龟,在 T=10ns 時(shí) UFF1/CK 采集到前一級(jí)過(guò)來(lái)的數(shù)據(jù)。

圖 1 multicycle path 下的 setup 時(shí)序檢查

但是當(dāng)我們通過(guò)以上的命令設(shè)置了 3 個(gè) cycle 的 multicycle path 的約束之后漆魔,launch clk 的沿推到了 T=30ns坷檩。因此,兩個(gè)寄存器之間那段組合邏輯的 delay 要求就放松到了近三個(gè)時(shí)間 cycle改抡。這種情況下 setup 是比較容易滿(mǎn)足的矢炼。對(duì)應(yīng)的 setup 檢查時(shí)序報(bào)告如下圖 2 所示。

圖 2 setup 檢查時(shí)序報(bào)告

hold 檢查:

默認(rèn)情況下雀摘,hold 檢查的沿應(yīng)該是在 T=20ns 時(shí)刻(較 setup capture edge 早一個(gè) cycle)裸删。這種檢查機(jī)制好不好呢?顯然不好阵赠。為什么呢涯塔?(可以自己畫(huà)波形,其實(shí)波形已經(jīng)在圖 3 中了)清蚀。從圖中看到這樣的 hold 檢查方式匕荸,會(huì)導(dǎo)致 hold 可能過(guò)度悲觀,很難滿(mǎn)足 hold time 的要求枷邪。

圖 3 multicycle path 下的 hold 時(shí)序檢查

因此榛搔,我們需要像單 cycle check 的情況一樣,即 hold 檢查的沿應(yīng)該和 launch clk 的 edge 一致(T=0 時(shí)刻)东揣。這樣我們的 hold time check 比較容易滿(mǎn)足践惑,也比較科學(xué)。那么如何實(shí)現(xiàn)這種想法呢嘶卧?我們引進(jìn)了如下約束命令:

set_multicycle_path 2 -hold -from [get_pins UFF0/Q] -to [get_pins UFF1/D]

這里面的數(shù)字 “2” 是指將默認(rèn)的 hold check edge 往前推 2 個(gè)時(shí)鐘周期尔觉,即從原來(lái)的 T=20ns 時(shí)刻往前移到 T=0ns 時(shí)刻。對(duì)應(yīng)的 hold 時(shí)序檢查報(bào)告如下圖 4所示芥吟。

圖 4 hold 檢查時(shí)序報(bào)告

因此侦铜,在我們給設(shè)計(jì)寫(xiě)約束文件時(shí)(定義 multicycle path 時(shí))专甩,需要同時(shí)定義如下命令:

set_multicycle_path N -setup -from [get_pins UFF0/Q] -to [get_pins UFF1/D]

set_multicycle_path N-1 -hold -from [get_pins UFF0/Q] -to [get_pins UFF1/D]

如果只定義了 - setup 3 而沒(méi)有定義 - hold 時(shí),工具 hold check 時(shí)钉稍, 默認(rèn)的 clock edge 為 capture edge(setup timing check 時(shí))前一個(gè) cycle 的那個(gè) edge涤躲。

到此小編已經(jīng)介紹完了 set_multicycle_path 的概念,用法以及 setup hold time 的檢查機(jī)制贡未。本文用的例子是兩個(gè)寄存器是被同一個(gè) CLK 所驅(qū)動(dòng)的种樱。那如果兩個(gè)寄存器是被不同的 clk 所驅(qū)動(dòng)的,情況又是如何呢羞秤?這里我就不多啰嗦了缸托,大家自己思考左敌,必須學(xué)會(huì)舉一反三瘾蛋。圖 5 中的 setup check 和 hold check 對(duì)不對(duì)呢?

圖 5 思考題波形圖


原文鏈接:https://blog.csdn.net/weixin_37584728/article/details/117746704

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末矫限,一起剝皮案震驚了整個(gè)濱河市哺哼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌叼风,老刑警劉巖取董,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異无宿,居然都是意外死亡茵汰,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)孽鸡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)蹂午,“玉大人,你說(shuō)我怎么就攤上這事彬碱《剐兀” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵巷疼,是天一觀的道長(zhǎng)晚胡。 經(jīng)常有香客問(wèn)我,道長(zhǎng)嚼沿,這世上最難降的妖魔是什么估盘? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮骡尽,結(jié)果婚禮上遣妥,老公的妹妹穿的比我還像新娘。我一直安慰自己爆阶,他們只是感情好燥透,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布沙咏。 她就那樣靜靜地躺著,像睡著了一般班套。 火紅的嫁衣襯著肌膚如雪肢藐。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,554評(píng)論 1 305
  • 那天吱韭,我揣著相機(jī)與錄音吆豹,去河邊找鬼。 笑死理盆,一個(gè)胖子當(dāng)著我的面吹牛痘煤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播猿规,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼衷快,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了姨俩?” 一聲冷哼從身側(cè)響起蘸拔,我...
    開(kāi)封第一講書(shū)人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎环葵,沒(méi)想到半個(gè)月后调窍,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡张遭,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年邓萨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菊卷。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡缔恳,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出的烁,到底是詐尸還是另有隱情褐耳,我是刑警寧澤,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布渴庆,位于F島的核電站铃芦,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏襟雷。R本人自食惡果不足惜刃滓,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望耸弄。 院中可真熱鬧咧虎,春花似錦、人聲如沸计呈。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至茁彭,卻和暖如春总寒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背理肺。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工摄闸, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人妹萨。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓年枕,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親乎完。 傳聞我的和親對(duì)象是個(gè)殘疾皇子熏兄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • https://my.oschina.net/u/4583591/blog/4455472 完整視頻鏈接:鏈接: ...
    非魚(yú)知樂(lè)閱讀 7,768評(píng)論 0 1
  • 上次介紹了sdc的基本概念,那接下來(lái)幾期囱怕,我們來(lái)講解一些比較常用的sdc命令霍弹。雖然sdc大大小小有上百條命令,但實(shí)...
    飛奔的大虎閱讀 1,555評(píng)論 0 2
  • 邏輯綜合基本步驟 綜合是將RTL轉(zhuǎn)換成門(mén)級(jí)網(wǎng)表(gate-level netlist)的過(guò)程娃弓。綜合過(guò)程分為轉(zhuǎn)換(t...
    飛奔的大虎閱讀 4,317評(píng)論 0 2
  • 以下三個(gè)是最經(jīng)常被問(wèn)到的,基本上屬于介紹性的題目岛宦,無(wú)所謂正確答案台丛,在我看來(lái),這些不算真正的問(wèn)題砾肺。 Discuss ...
    蜀湘情緣閱讀 6,160評(píng)論 0 8
  • 這個(gè)不錯(cuò)分享給大家挽霉,從扣上看到的,就轉(zhuǎn)過(guò)來(lái)了 《電腦專(zhuān)業(yè)英語(yǔ)》 file [fail] n. 文件变汪;v. 保存文...
    麥子先生R閱讀 6,565評(píng)論 5 24