cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
wmansour
Contributor
Contributor
973 Views
Registered: ‎08-07-2008

trouble using xdma in axi bridge mode

Jump to solution

I am using the xdma IP in axi bridge mode on the KCU116 development board.i configured it to be Gen3x8 256 data width and 250 MHz clock frequency for the AXI interface.

I also configured the number of AXI:BARs to be 2. in the address editor i made each of them 4Mbytes size. the design placed and routed with no errors neither critical warning.

when testing the IP, I used a JTAG to AXI master IP to configure the PCIe endpoint.

I wrote to translation addresses the correct physical addresses allocated at the PC side. but a problem occured when writing to BAR1.

After days of debugging, I found that when reading back the translation register @ 0x214 which corresponds to the translation address for BAR1 is only taking into account the most significant four bits (i.e if i write 0xFFFFFFFF, i read 0xF0000000 from register 0x214).

BAR0 is working perfectly and the data are being translated correctly to their requested physical address.

does anybody have any hint regarding this issue?

Regards

 

0 Kudos
Reply
1 Solution

Accepted Solutions
bethe
Xilinx Employee
Xilinx Employee
910 Views
Registered: ‎12-10-2013

Hi @wmansour,

 

We are having some challenges with address propagation at times between the IPI Address Manager and the IP.  We believe these are all resolved in the upcoming version of Vivado, and the workaround for 2018.2 and earlier is to do a manual set_property on these to your desired values. 

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

View solution in original post

4 Replies
bethe
Xilinx Employee
Xilinx Employee
953 Views
Registered: ‎12-10-2013

Hi @wmansour,

 

Are you using the most recent version of the IP?   Do you have a capture of the command you are using to write to 0x214?  I am wondering if maybe there is a byte enable issue.  The translation address does need to be aligned to the BAR size...  can you also do a report_property dump on the IP itself and check the AXIBAR1 size attribute to make sure that propagated from the address manager correctly?

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Reply
wmansour
Contributor
Contributor
942 Views
Registered: ‎08-07-2008

Hi @bethe

thanks for your reply, after i did report_property of the IP i found that the bar1 is mapped to a different address and having a different size which corresponds to what i am getting in my tests. It seems the data are not propagated correctly from the address manager.

any hints?

 

0 Kudos
Reply
bethe
Xilinx Employee
Xilinx Employee
911 Views
Registered: ‎12-10-2013

Hi @wmansour,

 

We are having some challenges with address propagation at times between the IPI Address Manager and the IP.  We believe these are all resolved in the upcoming version of Vivado, and the workaround for 2018.2 and earlier is to do a manual set_property on these to your desired values. 

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

View solution in original post

wmansour
Contributor
Contributor
886 Views
Registered: ‎08-07-2008

thanks @bethe

I will accept it as a temporary solution, waiting to see if newer vivado releases will solve this issue.

Regards

 

0 Kudos
Reply