BUFG
BUFG是把局部时钟转为全局时钟,减少时钟延迟。
IBUFDS
在使用差分时钟转单端时,对于普通的bank,可以使用IBUFDS。
IBUFDS_GTE2
对于高速bank,需要使用IBUFDS_GTE2,如果仍然使用IBUFDS,此时在编译或者生成bit时报错,提示该时钟约束有问题,正常差分时钟的电平是不需要约束的,约束完后可以生成bit,但是转出的单端时钟不能使用。
IBUFDS_GTE2原语如下
IBUFDS_GTE2 #(
.CLKCM_CFG("TRUE"), // Refer to Transceiver User Guide
.CLKRCV_TRST("TRUE"), // Refer to Transceiver User Guide
.CLKSWING_CFG(2'b11) // Refer to Transceiver User Guide
)
IBUFDS_GTE2_inst (
.O(clk_156_25M), // 1-bit output: Refer to Transceiver User Guide
.ODIV2(), // 1-bit output: Refer to Transceiver User Guide
.CEB(1'b0), // 1-bit input: Refer to Transceiver User Guide
.I(Q0_CLK1_GTREFCLK_PAD_P_IN), // 1-bit input: Refer to Transceiver User Guide
.IB(Q0_CLK1_GTREFCLK_PAD_N_IN) // 1-bit input: Refer to Transceiver User Guide
);