Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Xilinx soft PCIe PHY? #83

Open
Elgox2 opened this issue Jan 5, 2022 · 3 comments
Open

Support for Xilinx soft PCIe PHY? #83

Elgox2 opened this issue Jan 5, 2022 · 3 comments

Comments

@Elgox2
Copy link

Elgox2 commented Jan 5, 2022

Hello,

I'm wondering if parts of this project can be used to control the Xilinx soft PCIe PHY (PG239)? If I'm right, the provided examples only use the hardened-in-silicon IPs from Xilinx.

Any experience with that core, or do you known some other resources for that?

Thanks :)

@enjoy-digital
Copy link
Owner

Hello @Elgox2,

LitePCIe is indeed using the hardened IPs with TLP interfaces. The Data Link and Transaction Layer will be missing. So this will not be directly supported but it could be a good intermediate step for a full open-source PCIe PHY. The Xilinx PHY could be reused + LitePCIe and the Data Link/Transaction Layers would be developed. Once working, we could also try to replace the PHY, this will probably consist of reusing LiteICLink wrappers + handling LTSSM.

@JCBuck
Copy link

JCBuck commented Jan 26, 2022

Hi @Elgox2 and @enjoy-digital,

Perhaps this question is better suited for Xilinx themselves, but according to (PG239):

The Vivado® IP catalog does not allow generation of this IP for all UltraScale and UltraScale+™
devices; however, if a device is selected and has the same transceiver type as the desired device
(UltraScale GTH, UltraScale+ GTH or UltraScale+ GTY), the IP can then be migrated to the
desired part.
Currently, the IP can be generated for the following devices:
 UltraScale+: ZU9EG (GTH), VU3P (GTY), and VU9P(GTY).
 UltraScale: KU040 (GTH), KU115 (GTH), VU440 (GTH), and VU440 ES2 (GTH)

I'm looking at a Kintex-7 KU9P which does not contain any PCIE4 or PCIE4C blocks but does have 16Gb/s GTH transceivers according to ds890

Does the verbiage in PG239 imply that the soft PHY could be modified to work with the KU9P variant and subsequently LicePCIe, if and when the remaining layers are implemented? I'm not too sure if there are any other limitations hardware and timing wise in the FPGA that would otherwise be required for a working soft PCIe implementation.

@enjoy-digital
Copy link
Owner

Hi @JCBuck,

it seems the IP could indeed be generated for your device, but as I was describing in the previous message, it would still requires the Data Link/Transaction Layer to be implemented to work with LitePCIe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants