?在FPGA的時(shí)序約束中,主時(shí)鐘約束是第一步就要做的,主時(shí)鐘通常有兩種情形:一種是時(shí)鐘由外部時(shí)鐘源提供,通過(guò)時(shí)鐘引腳進(jìn)入FPGA,該時(shí)鐘引腳綁定的時(shí)鐘為主時(shí)鐘:另一種是高速收發(fā)器(GT)的時(shí)鐘RXOUTCLK或TXOUTCLK。對(duì)于7系列FPGA,需要對(duì)GT的這兩個(gè)時(shí)鐘手工約束:對(duì)于UltraScale FPGA,只需對(duì)GT的輸入時(shí)鐘約束即可,Vivado會(huì)自動(dòng)對(duì)這兩個(gè)時(shí)鐘約束。
??對(duì)于進(jìn)入到IP Core(比如MMCM)的主時(shí)鐘,只有我們?cè)贗P Core中指定了時(shí)鐘頻率,那么Vivado會(huì)自動(dòng)產(chǎn)生一個(gè)約束文件來(lái)約束該輸入的主時(shí)鐘。
??我們以Vivado自帶的wave_gen工程為例,該工程中輸入一對(duì)差分的時(shí)鐘信號(hào),進(jìn)入到MMCM中,我們無(wú)需再對(duì)這個(gè)主時(shí)鐘添加約束。

可以看到,綜合后這個(gè)時(shí)鐘已經(jīng)被約束了:

這是因?yàn)樵搃p生成的xdc文件中,已經(jīng)包含了對(duì)這個(gè)主時(shí)鐘的約束,如下圖:

所以很多同學(xué)可能誤以為只要是進(jìn)了IP Core的主時(shí)鐘,都不需要再手動(dòng)添加約束了。
??但如果收入的差分時(shí)鐘先經(jīng)過(guò)了IBUFDS,然后再以單獨(dú)的形式進(jìn)入了MMCM:

綜合后,可以看到該時(shí)鐘是沒(méi)有被約束的:

此時(shí)由于輸入時(shí)鐘并非來(lái)自管腳,所以Source選擇為Global Buffer

再看剛剛的clk_core.xdc文件,已經(jīng)沒(méi)有產(chǎn)生主時(shí)鐘的約束了:

為什么會(huì)沒(méi)有這個(gè)約束了呢?因?yàn)檩斎氲臅r(shí)鐘并非來(lái)自管腳,IP Core并不知道從哪個(gè)pin輸入的,所以就無(wú)法添加主時(shí)鐘的約束,此時(shí)就需要我們?cè)偈謩?dòng)添加約束。
審核編輯:符乾江
-
FPGA
+關(guān)注
關(guān)注
1664文章
22509瀏覽量
639549 -
Vivado
+關(guān)注
關(guān)注
19文章
860瀏覽量
71428
發(fā)布評(píng)論請(qǐng)先 登錄
請(qǐng)推薦適合 VisionFive 的 CPU 風(fēng)扇型號(hào),如何將風(fēng)扇固定在CPU上,還是不需要風(fēng)扇?
輸入引腳時(shí)鐘約束_Xilinx FPGA編程技巧-常用時(shí)序約束詳解
系統(tǒng)c盤(pán)滿(mǎn)了怎么清理不需要文件
開(kāi)源RISC-V處理器(蜂鳥(niǎo)E203)學(xué)習(xí)(二)修改FPGA綜合環(huán)境(移植到自己的Xilinx FPGA板卡)
E203移植genesys2(差分時(shí)鐘板)生成比特流文件全過(guò)程
采用xc7a200開(kāi)發(fā)板移植蜂鳥(niǎo)E203
時(shí)序約束問(wèn)題的解決辦法
關(guān)于綜合保持時(shí)間約束不滿(mǎn)足的問(wèn)題
如何判斷電能質(zhì)量在線(xiàn)監(jiān)測(cè)裝置時(shí)鐘模塊需要進(jìn)行手動(dòng)校準(zhǔn)?
光纖線(xiàn)需不需要套管
進(jìn)入IP Core的時(shí)鐘,都不需要再手動(dòng)添加約束嗎
評(píng)論