UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Explorer
Explorer
8,091 Views
Registered: ‎11-23-2013

After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Hello, I combined my logic and a PCIe core's .dcp file in pcie_adapter module. And I want to implement the pcie_adapter module in OOC mode.

I set the IO_BUFFER_TYPE to "none" in pcie_adapter.v file, but still met the error below.

ERROR: [DRC 23-20] Rule violation (REQP-1619) IBUFDS_GTE2_driven_by_IBUF - IBUFDS_GTE2 refclk_ibuf pins I and IB should be driven by IBUFs.

 

Attachment is my project. The OOC synth and implement flows are controlled by design_complete.tcl. Other related .tcl files are all come from ug946.

 

In attachment, I delete the synth and implement result to reduce the attachment's size.

 

Please help me check my project, and solve the problem.

0 Kudos
5 Replies
Xilinx Employee
Xilinx Employee
8,046 Views
Registered: ‎09-20-2012

Re: After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Hi @carnby

 

In the pcie_adapter.v you can find IBUFDS_GTE2 primitive instantiated (instance name refclk_ibuf).

 

The DRC error says that the IBUFDS_GTE2 inputs should come from IBUF buffers. Instantiate IBUF buffer on sys_clk_p and sys_clk_n inputs and then connect the IBUF output to IBUFDS_GTE2 instance input pins.

 

Thanks,

Deepika.

 

 

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
Explorer
Explorer
8,034 Views
Registered: ‎11-23-2013

Re: After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Thanks a lot.

I had inserted 2 IBUFs into the pcie_adapter.v, and the error moved. But the DRC still gives a critical warning that sys_clk_p and sys_clk_n have no user defined IOSTANDARD, and cannot generate bitstream. In standard flow, when I use a PCIe core, the compiler will decide the IOSTANDARD automatically. So I don't know what the IOSTANDARD is.

 

By the way, I thought the IBUFDS_GTE2 should connects to differential pins directly. I checked the ug476 and pg054 and other documents. No docs said the IBUFDS_GTE2 should connect to pins directly or not.

If you know any docs about this, please tell me. Thanks!

0 Kudos
Xilinx Employee
Xilinx Employee
8,014 Views
Registered: ‎09-20-2012

Re: After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Hi @carnby

 

I would suggest you to open the implemented design of the normal project (non-HD) with PCIe core. Now check the IOSTANDARD assigned to the PCIe pins. Use the same for your HD design.

 

If this does not help then I would suggest you to post this query in PCIe board.

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos
Explorer
Explorer
8,002 Views
Registered: ‎11-23-2013

Re: After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Thanks a lot!

I would try it

0 Kudos
Xilinx Employee
Xilinx Employee
7,988 Views
Registered: ‎09-20-2012

Re: After set io_buffer_type, IBUFDS_GTE2 cannot be initiated in OOC mode

Hi @carnby

 

Please close the thread by marking the answer for benifit of other users.

 

Thanks,

Deepika.

Thanks,
Deepika.
--------------------------------------------------------------------------------------------
Google your question before posting. If someone's post answers your question, mark the post as answer with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left)
0 Kudos