KrutavShah / PCIE-to-MXM-Adapter

This adapter/card allows you to plug an MXM 3.1 graphics card into a desktop PCIE port.
https://www.krutav.com
35 stars 9 forks source link

PCIe x16 version #6

Open renne opened 1 year ago

renne commented 1 year ago

This is a great project! :+1:

PCIe x1 is quite a bottleneck for modern GPUs. I suggest to upgrade the PCB to PCIe x16 like the EGX-MXM-AD or the [Eurocom](https://eurocom.com/ec/multigpu()multiGPU) riser cards.

KrutavShah commented 1 year ago

I agree, x1 is definitely a bottleneck from my testing. I do have an x16 design that is missing a few components here and there, so not complete, but I have not released that here because I feel like the interest in this project has fallen away after a while of not being updated.

If this x16 version (with 4x DisplayPorts/3x DP + 1x HDMI) is something you still want to see, I would be inclined against adding all the design files here, simply because the ones for x1 design already available here have been copied by others without credit. I feel like it may not be worth bothering with as a result. I am, however, open to considering this again in the future if there is enough interest. Here is what the design currently looks like:

image
renne commented 1 year ago

Great! :+1: Please make sure the positions of the video ports match an easily available bezel. It would also be great to have an universal PCB layout which allows to solder HDMI or Displayport sockets at will.

KrutavShah commented 1 year ago

The PCB layout matches Nvidia's 10/20 series PCI brackets, so you could get one of those and the ports should line up exactly. On the front page of this repository, I have one of these GTX 1060 brackets installed on my prototype which you take a look at if you'd like. Quadro brackets should also work. I do not think AMD brackets line up with the ports, though.

RansomScientist commented 1 year ago

I agree, x1 is definitely a bottleneck from my testing. I do have an x16 design that is missing a few components here and there, so not complete, but I have not released that here because I feel like the interest in this project has fallen away after a while of not being updated.

If this x16 version (with 4x DisplayPorts/3x DP + 1x HDMI) is something you still want to see, I would be inclined against adding all the design files here, simply because the ones for x1 design already available here have been copied by others without credit. I feel like it may not be worth bothering with as a result. I am, however, open to considering this again in the future if there is enough interest. Here is what the design currently looks like: image

Hey, thank you very much for your design, what intrigues me though is if you have considered trace pair impedance and length matching? With 1x it might not be too much of a problem but with 16x I'm guessing it would be extremely important but I can't see any of that in the image?

KrutavShah commented 1 year ago

Hey, thank you very much for your design, what intrigues me though is if you have considered trace pair impedance and length matching? With 1x it might not be too much of a problem but with 16x I'm guessing it would be extremely important but I can't see any of that in the image?

Yes, the impedance of the differential pairs has been set in the PCB editor to meet a target of around 85 ohms, the standard for PCIe gen 3. As for the length matching, individual traces within pairs will be matched, but the inter-pair skew has some room for variation, which is why the separate lanes themselves are not matched. This shouldn't be much of an issue here. The goal here is to keep the lengths of the pairs short to minimize unnecessary losses.

This is from a Texas Instruments PCIe Layout Guidelines document:

image
RansomScientist commented 1 year ago

Hey, thank you very much for your design, what intrigues me though is if you have considered trace pair impedance and length matching? With 1x it might not be too much of a problem but with 16x I'm guessing it would be extremely important but I can't see any of that in the image?

Yes, the impedance of the differential pairs has been set in the PCB editor to meet a target of around 85 ohms, the standard for PCIe gen 3. As for the length matching, individual traces within pairs will be matched, but the inter-pair skew has some room for variation, which is why the separate lanes themselves are not matched. This shouldn't be much of an issue here. The goal here is to keep the lengths of the pairs short to minimize unnecessary losses.

This is from a Texas Instruments PCIe Layout Guidelines document: image

Good to know, if the design ever gets published or you feel comfortable sharing it in private it would be really nice if you could let me know. I would also happily share tests results if I build one.