What determines how PCIe lanes are used?

StephenP85

Honorable
Sep 3, 2013
67
0
10,660
I've been comparing AMD 970 boards, mostly for research purposes. The 970 chipset allows up to 22 PCIe lanes simultaneously, but comparing the boards that have 2 x16 slots, some of them will allow a x16/x8 configuration, or x8/x8, but some only support x16/x4. I'm just curious, what is it that determines this? I thought with AMD, the chipset dictates the use of lanes. So why the differences on the same chipset?
 
Solution
That board uses 16 lanes from the 970 chipset to feed pci-e slot one and if a card is installed in slot 4, pci-e slot one looses the last 8 lanes and they get sent down to slot 4(the electronic switches are right under the MSI heatsink on the chipset.). Nothing fancy used.

Slots
2x PCIe 2.0 x16 slots
PCI_E2 supports up to PCIe x16 speed (when PCI_E4 is empty) or PCIe x8 speed
(when PCI_E4 is installed)
PCI_E4 supports up to PCIe x8 speed
2x PCIe 2.0 x1 slots
2x PCI slots, support 3.3V/ 5V PCI bus Interface

Now an 990FX based board has 32 lanes for video cards :) yeah so 2 x x16 or 4 x x8

For the time being AMD is keeping the lanes in the chipset. This means ANY cpu that fits the board can use all the...

StephenP85

Honorable
Sep 3, 2013
67
0
10,660
Thanks, but I'm looking for more of a technical explanation. I get that there are components on a motherboard whose quality determine capabilities, and I understand more expensive motherboards have more/better components. I'm just curious what it is that makes one motherboard able to do x16/x8 and another one only able to do x16/x4 or x8/x8 when both motherboards have 2 PCIe x16 slots.
 
First you need to know that pci-e works in lanes so even a device designed to run on 16 will work on 1/4/8 just with less bandwidth.

Intel boards get most of the PCI-E lanes from the cpu now. It only has so many.

So say your cpu has only 16 lanes, you want to have 2 x16 slots. You have to split it 8 to each. This is done with an electronic switch that takes the last 8 lanes from the first slot and makes it into the first 8 on the second slot.

Take that a step further and you get 8 + 4 + 4. The electric switch takes the last 8 from the first slot and sends it to the last 2 slots if needed

This is a VERY simple and cheap solution. A cheaper option they used to use was actual jumpers or a card that would route the lanes to the lower slot as well.

Now higher end cpus have MORE lanes and can run 16 + 16 or 8+8+8+8

An option for middle end setups(limited lanes) is a device called a PCI-E switch/bridge(not the same as above). it allows you to turn lets say 16 lanes into 32. This allows a board with 2 x16 slots from a cpu that only has 16 lanes.
The biggest downside to this option is cost and board space to install this device.

This is the same setup used for most multi gpu video cards.
gpus-plx-bare.jpg


You also have MORE lanes on the chipset of the board, but these tend to be used for things like LAN/Sound/ect. Some boards HAVE used them for an x4 video card slot

I hope this helps you understand it a bit.

I am adding some images to show you some of the above mentioned items.

Jumpers to make a lower pci-e slot take the last 8 lanes from the upper slot.
jumpers.jpg


Flipping this card allows you to select single card(pci-e x16) or dual (pci-e x8 x 2)
lkp9.jpg


NF200. A very popular pci-e bridge chip used to allow x16 cpus to feed 2 x 16 cards.
pxh5.jpg
 

StephenP85

Honorable
Sep 3, 2013
67
0
10,660
Okay, thank you for that explanation. So, a motherboard like, say, MSI 970A-G46, which allows x16/x8, does it use a switch to convert x4 into x8? I understand this more in Intel systems, where the PLX chip basically makes efficient use of the 16 lanes by being able to actively switch their use between multiple GPUs. I'm guessing this is the same on AMD? Which is why that particular motherboard seems to advertise a total of 24 available lanes on this chipset?
 
That board uses 16 lanes from the 970 chipset to feed pci-e slot one and if a card is installed in slot 4, pci-e slot one looses the last 8 lanes and they get sent down to slot 4(the electronic switches are right under the MSI heatsink on the chipset.). Nothing fancy used.

Slots
2x PCIe 2.0 x16 slots
PCI_E2 supports up to PCIe x16 speed (when PCI_E4 is empty) or PCIe x8 speed
(when PCI_E4 is installed)
PCI_E4 supports up to PCIe x8 speed
2x PCIe 2.0 x1 slots
2x PCI slots, support 3.3V/ 5V PCI bus Interface

Now an 990FX based board has 32 lanes for video cards :) yeah so 2 x x16 or 4 x x8

For the time being AMD is keeping the lanes in the chipset. This means ANY cpu that fits the board can use all the lanes. Intel requires a better cpu/board to get more lanes(that or a board with a switch/bridge).

EDIT.

To add to this, some boards/chipsets may have PCI-E 3.0. x8 of 3.0 is as fast as x16 of 2.0 if the card supports it.

AMD boards can do the same thing as Intel as far as a bridge chip goes.
 
Solution

StephenP85

Honorable
Sep 3, 2013
67
0
10,660


I see now, so basically the Newegg description is inaccurate. It was confusing to me that any board could do an x16/x8 configuration in crossfire, especially since there are only 22 lanes for 970. That's what I needed to know.