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.

PCIe Payload Length

Altera_Forum
Honored Contributor II
1,013 Views

Hi 

 

According to the PCIe spec, the TLP payload is 4kbytes. PCIe provided by Altera have some different types of specs which range from 128bytes to 4kbytes.  

 

I have tried to use Jungo driver to transmit some data and capture it by analyzer. What i find out is TLP length is always 1(32 bit) or 2(64 bit) no matter how big size of your payload. If you have chunk of data more than 32 bit, it will divided into several packet with TLP length of 1. It is kind of memory write 32. 

 

1. I wonder how to correlate 32 bit transfer with the 4kbytes?  

2. Is the limitation caused by the driver?  

3. How can i transmit TLP length of 4kbytes?  

4. If i transmit the data from the downstream to upstream, it it possible to transfer 4kbytes?  

 

Pls advice. Thanks
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
96 Views

To do long PCIe transfers you have to use a dma controller that is linked with the PCIe master - nothing else can actually tell the PCIe block to generate a longer TLP. 

 

As you may have noticed PCIe isn't 'express' in any sense unless you are using long TLP.
Altera_Forum
Honored Contributor II
96 Views

Thanks for your info. Do you the mean dma in hardware side? Can it be dma on the pcie driver side?

Altera_Forum
Honored Contributor II
96 Views

I'm not sure what you mean! 

dma is hardware, a driver is needed to write the dma controller registers to request the transfer....
Reply