Vivado 的XDC設(shè)置輸出延時,用于輸出伴隨時鐘和數(shù)據(jù)的,數(shù)據(jù)是由系統(tǒng)時鐘125M驅(qū)動,伴隨時鐘是由125M經(jīng)過Pll相位移動-90度。
設(shè)置輸出時鐘時,參考時鐘選擇相移的那個,發(fā)現(xiàn)不起作用,沒有路徑。
如果選擇系統(tǒng)時鐘,分析后是系統(tǒng)時鐘的最大最小延時,沒有相位移動后的信息,這是什么問題?
伴隨時鐘創(chuàng)建的Create_generated_clock中的Set_output_delay如下:
Txc1 是鎖相環(huán)移動相位后直接送到輸出管腳,Rxc1是驅(qū)動數(shù)據(jù)的。
數(shù)據(jù)輸出路徑以及對應(yīng)的Clock的連接Schematic截圖
Txc是Rx經(jīng)過鎖相環(huán)再經(jīng)過oddr生成的
數(shù)據(jù)輸出是Rxc驅(qū)動Oddr打出來的
軟件認為這個時鐘沒有路徑,這個問題在ISE上也遇到過,軟件時鐘始終不認伴隨時鐘
A1
ISE約束和Vivado的約束用法不同,Create_generated_clock的source指定的net是哪一段,改為用get_pins指定的ODDR的C pin試試。Report_clocks結(jié)果查一下你的clock約束都生效了嗎?
Q2
指定Obuf的O管腳和Edit Constraints重新編輯后,約束成功了,請問原因是什么?create_generated_clock在set_output_delay約束的簽名,有時候把鎖相環(huán)輸出的bufg改成no buffer但是生成的網(wǎng)表里仍然有,關(guān)閉再打開就沒了,但時序分析路徑卻有這個bug。
A2
是不是synthesized design沒有reload?如果synthesized design 已經(jīng)是打開的情況下,修改設(shè)計重新synthesize,已經(jīng)打開的synthesized design會提示需要reload,否則是修改之前的結(jié)果
如果發(fā)生約束沒有約束上的問題,可以查一下messages窗口里的critical warning或warning,看是否有提到關(guān)于這條約束的問題。
也可以在synthesized design或者implemented design的tcl console里,report_timing用-from -to指定路徑起始點來report下相應(yīng)path看是如何分析的,可以從分析結(jié)果看下是path不存在還是約束有問題。
如果用edit constraints重新編輯并保存就好了,很可能是原來手寫的約束哪里有問題
原文標(biāo)題:本周一問 | Vivado 的XDC設(shè)置輸出延時
文章出處:【微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
Xilinx
+關(guān)注
關(guān)注
71文章
2155瀏覽量
120850 -
Vivado
+關(guān)注
關(guān)注
19文章
804瀏覽量
66224
原文標(biāo)題:本周一問 | Vivado 的XDC設(shè)置輸出延時
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論