cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
9,280 Views
Registered: ‎05-17-2014

2 *1 pcie ep on a GTX_DUAL?

I need to implement two pcie endpoint (width = 1) on a single GTX_DUAL, using Virtex-5 FX70T.

But now the problem is  that Coregen generates a pcie ep with a GTX_DUAL.

And I have tried to generate two pcie ep (primary ep & secondary ep), and modify the code to implement one GTX_DUAL in the primary ep part. However, it does not work, cause host can only see one pcie endpoint.

 

Can a GTX_DUAL distribute to two pcie ep?

 

Thanks

0 Kudos
3 Replies
Highlighted
Community Manager
Community Manager
9,254 Views
Registered: ‎07-23-2012

Re: 2 *1 pcie ep on a GTX_DUAL?

Hi,

You can implement two PCIE cores in a GTX_DUAL that shouldn't be a problem.

Regards,
Krishna
-----------------------------------------------------------------------------------------------
Please mark the post as "Accept as solution" if the information provided answers your query/resolves your issue.

Give Kudos to a post which you think is helpful.
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
9,250 Views
Registered: ‎08-02-2007

Re: 2 *1 pcie ep on a GTX_DUAL?

You will need to check the ucf file and modify the GT location as needed

 

------------------------------------------------------------------------------
Don't forget to reply, give kudo and accept as solution
------------------------------------------------------------------------------
0 Kudos
Highlighted
Scholar
Scholar
9,243 Views
Registered: ‎02-03-2010

Re: 2 *1 pcie ep on a GTX_DUAL?

Hi,

 

Check thefile <generated core location>/ pcie_gtx_wrapper.v/vhd.

 

There are generate and end generate statements for the implementation of DUAL tile for the usage of which channel to be used.

By default the code occupies the Channel0 of the DUAL time.

 

You need to modify this for one of the core you want to imeplement for Channel1.

 

For example

Change the following

              .RXVALID0(gt_rx_valid_reg[i+0]),

              .RXVALID1(gt_rx_valid_reg[i+1]),

to

              .RXVALID0(gt_rx_valid_reg[i+1]),

              .RXVALID1(gt_rx_valid_reg[i+0]),

 

This applies to all the signals of the instance.

Then the tile1 gets connected to the PCIe block instead of tile 0.

 

So this way you can take the data from the lower channel to PCIe_0 instance and data from Upper channel to PCIe_1 instance.

 

Check if you way you can implement twi instances in one DUAL tile.

 

Regards,

KR

 

 

 

--------------------------------------------------​--------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful.
--------------------------------------------------​-------------------------------------------
0 Kudos