马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
以下程序是我用来产生一对800M差分时钟对输出的verilog程序,编译无错误提示,但Place&Route出现错误,望给与指正,非常感谢!
module top(
input clk,
input rst,
output O,
output OB
);
wire CLK_160M,CLK_160M_to;
wire CLK_800M;
wire LOCKED;
wire LOCK;
wire tx_SERDESSTROBE;
wire CLK_OUT;
my_pll my_pll_ins
(// Clock in ports
.CLK_IN1(clk), // IN
// Clock out ports
.CLK_160M(CLK_160M), // OUT
.CLK_800M(CLK_800M), // OUT
// Status and control signals
.LOCKED(LOCKED)
); // OUT
BUFG BUFG_inst (
.O(CLK_160M_to), // 1-bit output: Clock buffer output
.I(CLK_160M) // 1-bit input: Clock buffer input
);
BUFPLL #(
.DIVIDE(5)
)
tx_bufpll_inst(
.IOCLK(CLK_OUT),
//OUTPUT
.LOCKED(LOCKED),
//IN
.LOCK(LOCK),
//OUTPUT
.PLLIN(CLK_800M), //IN
.GCLK(CLK_160M_to), //IN
.SERDESSTROBE(tx_SERDESSTROBE)//OUTPUT
);
OBUFDS #(
.IOSTANDARD("DEFAULT") // Specify the output I/O standard
) OBUFDS_inst (
.O(O), // Diff_p output (connect directly to top-level port)
.OB(OB), // Diff_n output (connect directly to top-level port)
.I(CLK_OUT) // Buffer input
); |