cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
832 Views
Registered: ‎04-01-2015

How to set ODELAYE2 REFCLK_FREQUENCY Attribute

Jump to solution

I used the SelectIO wizard (5.1) to configure an output port with a DDR 8:1 SERDES and an ODELAYE2 with variable loadable delay.  The delay reference clock is running at 400 MHz.  

When I compile this I get a critical warning:

CRITICAL WARNING: [Timing 38-469] The REFCLK pin of IDELAYCTRL gateDrivers/genblk1[0].gateDriver_i/gateDriverSelectIO_i/inst/delayctrl has a clock period of 2.500 ns (frequency 400.000 Mhz) but ODELAYE2 gateDrivers/genblk1[0].gateDriver_i/gateDriverSelectIO_i/inst/pins[0].odelaye2_bus has REFCLK_FREQUENCY of 200.000 Mhz (period 5.000 ns). The IDELAYCTRL REFCLK pin frequency must match the ODELAYE2 REFCLK_FREQUENCY property.

 

I see no way in the wizard to change the ODELAYE2 REFCLK_FREQUENCY attribute.   How is this supposed to be accomplished?  I've tried editing pinDriverSelectIO_selectio_wiz.v by hand but even then I get the critical warning.  

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Moderator
Moderator
785 Views
Registered: ‎04-18-2011

Re: How to set ODELAYE2 REFCLK_FREQUENCY Attribute

Jump to solution

Hi @norume

In this case I tried it with a simple example. 

There is no attribute on the IDELAYCTRL to set the reference clock. In this case it should be set by the create_clock at the reference clock input. 

It seems by default the wizard set the refclk property on the ODELAY to be 200MHz. 

So to get it all to work I set this in the synthesised netlist. 

set_property REFCLK_FREQUENCY 400 [get_cells io_inst/inst/odelaye2_bus]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[0].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[1].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[2].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[3].odelaye2_bus}]
create_clock -period 2.500 -name ref_clock [get_ports ref_clock]

 

It goes through the tools fine then. 

 

Keith 

 

 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

3 Replies
Highlighted
Moderator
Moderator
801 Views
Registered: ‎04-18-2011

Re: How to set ODELAYE2 REFCLK_FREQUENCY Attribute

Jump to solution

Hi @norume

I think (but I would need to double check) that support for 400mhz reference clock was added pretty late so my guess would be that this is some kind of mismatch in the wizard.

I would need to try this. 

A potential way to workaround it would be to do a set_property on the ODELAY in the netlist. Give that a try for now and see if it works.

Keith 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Highlighted
Moderator
Moderator
786 Views
Registered: ‎04-18-2011

Re: How to set ODELAYE2 REFCLK_FREQUENCY Attribute

Jump to solution

Hi @norume

In this case I tried it with a simple example. 

There is no attribute on the IDELAYCTRL to set the reference clock. In this case it should be set by the create_clock at the reference clock input. 

It seems by default the wizard set the refclk property on the ODELAY to be 200MHz. 

So to get it all to work I set this in the synthesised netlist. 

set_property REFCLK_FREQUENCY 400 [get_cells io_inst/inst/odelaye2_bus]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[0].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[1].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[2].odelaye2_bus}]
set_property REFCLK_FREQUENCY 400 [get_cells {io_inst/inst/pins[3].odelaye2_bus}]
create_clock -period 2.500 -name ref_clock [get_ports ref_clock]

 

It goes through the tools fine then. 

 

Keith 

 

 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

View solution in original post

Highlighted
Adventurer
Adventurer
777 Views
Registered: ‎04-01-2015

Re: How to set ODELAYE2 REFCLK_FREQUENCY Attribute

Jump to solution

Thanks.  I'll do that for now.

Hopefully an updated version of the wizard will take care of this too.

0 Kudos