Forum Discussion
PCIe DMA write posted or non-posted
- 2 years ago
What type of messages FPGA uses when it tries to write data to processor?
Posted Write Transactions.
Ref: 3. Intel® Arria® 10 or Intel® Cyclone® 10 GX Parameter Settings
When we send MSI interrupt? After completing posted write transfer or after getting confirmation about completion of non-posted transfer?
Posted write case: No acknowledgement -> MSI is not directly tied to the completion -> no completion needed
Non Posted case: acknowledgement TLP -> Once TLP received initiator can send an MSI interrupt
Conclusion: MSI are sent after the completion.
Second question - if i get crc error with posted message, will driver corrupt my data in device memory? (just to confirm )
No (Transmission error-> crc error is detected -> corrupted TLP packet is discarded -> No data is written to the memory.)
Is there any difference when using other device families (+ Agilex 5)?
Yes, Agilex 5 supports link speed upto 4.0 (cyclone 10 upto 2.0 only) different FPGAs have different Capabilities and varies in terms of performance, speed, number of transceivers availability [Vary with Tiles (F-tile, P-tile, H-tile, R-tile,etc)]
Check: PCIe* Intel® FPGA IP