Forum Discussion
Agilex 7 R-tile PCIe Root Port reference design
Hello Everyone,
My design need to have PCIe ep in FPGA so (root port in)host machine can interact with it. It also need to have PCIe RP in FPGA so that, FPGA can interact with PCIe devices attached to FPGA card.
I am using Agilex 7 FPGA for my design needs and I am following documentation for PCIe R tile hard IP.
So far, I have experimented with PCIe endpoint example designs and its working well for me,
I am also able to successfully modify PCIe endpoint based example design to fit into my needs.
Now, I want to experiment with PCIe Root Port design.
First of all, I don’t find any example design around PCIe Root port which I can use as reference. If any such resource is available please share it.
I am able to create a root port IP (Gen5 4x4 - RP/RP/RP/RP)and bring it up on my Platform designer system view. I see bunch of AVMM /AVST/Conduit interfaces (attached screenshots below) for which I don’t find any details in documentation page https://www.intel.com/content/www/us/en/docs/programmable/683501/25-1/about-the-r-tile-streaming-fpga-ip-for.html. So, as of now I don’t know what is purpose and usage of these interfaces.
I need help and guidance on how can I make the root port IP start link training, enumeration and beyond that further interaction with PCIe devices ?
Beyond standard PCIe compliant sequences, once PCIe device is enabled by root port, I would need my root port to generate custom transaction ( Cfg RD/WR and Mem RD/WR )to these PCIe devices, how do I do that?
Thank you.
3 Replies
- Wincent_Altera
Regular Contributor
Hi @UserID4331231 ,
May I know which device that you are targetted ? I-series of M-series ?
If you are using I-series device , you may refer to
https://www.rocketboards.org/foswiki/Documentation/Agilex7PCIeRootPortDesignIf you are using M-series device , you may refer to
https://altera-fpga.github.io/rel-24.3.1/embedded-designs/agilex-7/m-series/pcie_rp/ug-pcie_rp-agx7m-hbm2e/#required-componentsLet me know if there is any further clarification is needed.
Regards,
Wincent- UserID4331231
Occasional Contributor
I am using Agilex 7 - "AGIB027R29A1E2VC" part. I think this part would be I series. is that correct?
- Wincent_Altera
Regular Contributor
Hi,
If you are using I-series device you may refer to the full step design under
https://www.rocketboards.org/foswiki/Documentation/Agilex7PCIeRootPortDesign
Regards,
Wincent