生成時鐘包括自動生成時鐘(又稱為自動衍生時鐘)和用戶生成時鐘。自動生成時鐘通常由PLL或MMCM生成,也可以由具有分頻功能的時鐘緩沖器生成如7系列FPGA中的BUFR、UltraScale系列FPGA中的BUFGCE_DIV/BUFG_GT以及Versal中的MBUFG/BUFG_GT等。對于這類時鐘,Vivado會自動創建時鐘,并不需要用戶手工通過create_generated_clock創建。
案例1:單端時鐘
這是比較典型的場景,如下圖所示:時鐘由全局時鐘管腳進入經IBUF驅動MMCM以及BUFG。此時只用在輸入時鐘管腳處(圖中紅色橢圓標記)創建時鐘即可,MMCM生成時鐘如圖中端口CLKOUT0,Vivado會自動創建。注意主時鐘的位置在sysClk對應的全局時鐘管腳處,不是MMCM的輸出端口,也不是BUFG的輸出端口。
案例2:差分時鐘
如下圖所示,差分時鐘轉單端驅動MMCM,這里主時鐘為clk_pin_p(圖中紅色方框所示),因此只用對該端口施加create_clock命令。
使用create_clock時,對于差分時鐘,施加對象為差分的P端而不是N端,同時只用對P端使用該命令,如下圖所示。
有了上述約束,工具就會自動推斷出MMCM生成時鐘,這可通過report_clocks命令查看并驗證,如下圖所示(需要打開綜合后的網表)。
案例3:7系列FPGA中高速收發器的TXOUTCLK/RXOUTCLK
如下圖所示,7系列FPGA中高速收發器的TXOUTCLK,輸出端口接BUFG。這時要在TXOUTCLK處施加命令create_clock,因此,要用get_pins而不是get_ports。
審核編輯:湯梓紅
-
FPGA
+關注
關注
1629文章
21729瀏覽量
602997 -
緩沖器
+關注
關注
6文章
1921瀏覽量
45473 -
時鐘
+關注
關注
10文章
1733瀏覽量
131447 -
輸出端口
+關注
關注
0文章
24瀏覽量
10144
原文標題:create_clock你用對了嗎?
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論