发新话题
打印

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

我正在使用的是Virtex II Pro 芯片VC2VP20,共有8个MGTs,上下各为四个。
我使用了MGT4,即TOP端最左边的一个MGT,输入时钟为156.25M。
据手册上所说,此时应该使用BREFCLK时钟,
芯片上的时钟采用差分输入,
时钟管脚为:GCLK5P(H18,差分时钟P端)和GCLK4S(J18,差分时钟N端),
然后经过IBUFGDS后再输入到DCM产生MGT所需要的时钟,
于是我在PACE进行如下约束:
  MGT: GT_X0Y1(即使用TOP端最左边的MGT)
    DCM:   DCM_X0Y1
  clk_p_in: H18  (外部差分时钟P端)
    clk_n_in: J18 (外部差分时钟N端)
  DCM clk0 BUFG: BUFGMUX5P
    输入时钟global buffer: BUFGMUX4S
如上进行约束后,下载到板子上后,用Chipscope对时钟信号进行捕捉,
没有发现时钟信号。每次打开PACE进行约束时总是提示:
  "Duplicate constraint 'LOC' with value 'J18' found in UCF for object çlk_n_in'.Previous value for this constraint will be discarded. Do you want to suppress further messages of this type?"
   不知道这是怎么回事?我应该怎么对BREFCLK外部差分时钟输入进行约束?
    我的约束文件如下:
NET "clk_n_in"  LOC = "J18"  ;
NET "clk_p_in"  LOC = "H18"  ;
INST "Inst_bufg" LOC = "BUFGMUX4S"  ;
INST "Inst_testDCM/CLK0_BUFG_INST" LOC = "BUFGMUX5P"  ;
INST "Inst_testDCM/DCM_INST" LOC = "DCM_X0Y1"  ;
INST "Inst_testGT/GT_CUSTOM_INST/GT" LOC = "GT_X0Y1"  ;
NET "ledout(0)"  LOC = "E31"  ;
NET "ledout(1)"  LOC = "E32"  ;
NET "ledout(2)"  LOC = "F31"  ;
NET "ledout(3)"  LOC = "F30"  ;
NET "ledout(4)"  LOC = "E1"  ;
NET "ledout(5)"  LOC = "E2"  ;
NET "ledout(6)"  LOC = "E3"  ;
NET "ledout(7)"  LOC = "E4"  ;
NET "sw_d(0)"  LOC = "G22" | PULLUP ;
NET "sw_d(1)"  LOC = "H22" | PULLUP ;
NET "sw_d(2)"  LOC = "G21" | PULLUP ;
NET "sw_d(3)"  LOC = "H21" | PULLUP ;
NET "sw_d(4)"  LOC = "G20" | PULLUP ;
NET "sw_d(5)"  LOC = "G19" | PULLUP ;
NET "sw_d(6)"  LOC = "H19" | PULLUP ;
NET "sw_d(7)"  LOC = "G18" | PULLUP ;

  非常感谢!!!

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

BREFCLK时钟是专用时钟引脚,只能ROCKETIO用,为什么要约束哩?只用用户逻辑侧的时钟(1/10,1/20...)才约束

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

BREFCLK确实是专用引脚,我使用的是MGT4,
这样时钟输入引脚也就确定了,
但是不管我有没有对时钟引脚进行约束,
都没有时钟信号输入到MGT.
结构是这样的:
  首先外部差分时钟经过一个IBUGFDS然后分别提供给MGT的BREFCLK管脚和
DCM的CLK_IN,DCM再生成MGT需要的其它时钟。
可是不知怎么回事在FPGA内部就是没有时钟信号。
不知外部差分时钟是不是还有什么特殊要求没有?

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

外部差分时钟必须符合XILINX的2.5V LVDS,好像3.3V LVDS可接,具体电路参考任何一个带ROCKETIO的XILINX评估板电路.我决得调ROCKETIO时先别用外部差分时钟,先用IO时钟,但时钟开关要切对.

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

电路应该是没有问题的,时钟输入也是正确的,
因为用厂家提供的例子是可以正常工作的。
我只是不知道应该如何把差分时钟提供给MGT的BREFCLK使用,应怎样进行约束?
用MODELSIM进行仿真的结果也是正确的,现在就只有时钟没引入到MGT,
不知道是怎么回事?

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

用CHIPSCOPE看结果,我从不用MODELSIM进行仿真,作了这麽多的项目,我MODELSIM都不会用

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

已经用chipscope进行捕捉过了,
当用BREFCLK作为捕捉时钟时,捉不到任何数据。
于是我用另外板子上的一个100MHZ时钟作为触发时钟,
这时捉出来的BREFCLK时钟持续为低电平‘0’,
所以我就想这个外部差分时钟输入给BREFCLK是不是需要进行什么特殊的约束
或需要注意点什么呢?
谢谢关注

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

BREFCLK怎么能作为捕捉时钟?BREFCLK只能用在ROCKETIO硅上,应该到不了USERLOGIC,用chipscope进行捕捉USERCLK/USER2CLK

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

问题已解决,
原因是外部时钟产生器没有工作, 需首先对其进行设置。
谢谢帮忙!

TOP

[求助]Virtex II Pro中如何为MGT提供BREFCLK时钟?该怎样进行约束?

不好意思,最近没有来这里看看,今天找资料才发现楼主给我的短消息。既然问题得到解决就好,很高兴我发的帖子可以对大家的设计有所帮助。不过我现在已经转作altera的芯片,一切还要从头再来。欢迎以后大家多多交流!

TOP

可以交流一下,QQ350995217

TOP

发新话题