FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
5954 Discussions

PCIe DMA Testbench Generation Issue

Sudhirkv
Novice
384 Views

We need to integrate PCIe Gen2x1 and DDR3 via DMA. So we generated a PCIe Gen2x1  and we tried to add PCIE DMA Controller 64 and Avlon MM clock crossing bridge to access DDR3 memory of 2G space. But while generating testbench we are getting the error on differences in address mapping. While we are trying address 2GB of data, testbench is trying to address 4GB and we get a mismatch in address range. Could you please check these issues?.

I have attached the project file and screen error screen shot for your reference.

0 Kudos
1 Solution
BoonT_Intel
Moderator
369 Views

Hello Sir,

The reason is that you export the master port of the clock crossing bridge. And the BFM in default will generate the address 32bits. What you need to do is add the BFM slave manually and set the address to 30bits. And turn on the burst on burst boundaries only option. Then connect the CC bridge and the BFM slave clock and reset from the system. With this. The testbench can generate correctly. Attach the modified qsys file.

 

View solution in original post

6 Replies
BoonT_Intel
Moderator
370 Views

Hello Sir,

The reason is that you export the master port of the clock crossing bridge. And the BFM in default will generate the address 32bits. What you need to do is add the BFM slave manually and set the address to 30bits. And turn on the burst on burst boundaries only option. Then connect the CC bridge and the BFM slave clock and reset from the system. With this. The testbench can generate correctly. Attach the modified qsys file.

 

Sudhirkv
Novice
339 Views

Hi,

Thank you  for your response. We added the Avalon-MM slave BFM and set the parameters as advised by you and we were able to successfully create testbench system for the design. 

We could see a read transaction in the Avalon MM slave BFM but the Read response is always driven as X. Attached is the screenshot for the same. Could you please let us know how to proceed with this?

I will also add the QSYS file of the design for your reference.

BoonT_Intel
Moderator
335 Views

Hello,

The BFM component in platform design maybe is genric and unable to show full functionality.

Are you want to run the simulation for PCIe? If yes, maybe you can use the PCIe example design as explained in this UG:

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/ug-dex-a10-pcie-avst.pdf


Sudhirkv
Novice
304 Views

Thank you for the support.

We were able to do DDR3 memory access.

 

Regards,

Sudhir

BoonT_Intel
Moderator
298 Views

Good to know. Thanks.


BoonT_Intel
Moderator
298 Views

I’m glad that your question has been addressed, I now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.


Reply