How can mainboards provide more PCIe lanes than the chipset?
I'm currently choosing parts for a new computer, with my main focus on high PCI Express speed and a large number of slots. In this iteration, I will probably choose a board with an Intel Z97 chipset. The specification says that the Z97 chipset provides a total of 16 lanes Gen3 in 16 lanes, 8/8, or 8/4/4 configurations and 8 lanes Gen2. The mainboard, however, boasts with 4 PCIe slots, configurable with 16/16, 16/8/8 and 8/8/8/8 Gen 3 lanes. I suspect that these four ports are theoretically electrically capable of Gen3 but some of them will just use Gen2. But how can it provide more lanes than the chipset actually supports? Do boards have some kind of PCIe switch that distributes the available bandwidth on the lanes as-needed, capping the total bandwidth to that of 16 lanes, instead of 32, when in high load conditions?
Solution 1:
There are two ways a motherboard can provide more PCI-e lanes then the chipset provides:
- Some modern CPU's provide PCI-e lanes of their own. (in addition to the lanes provided by the chipset)
- There are PCI-e switches which provide extra PCI-e lanes. Think of this as an
Y
shape. The bottom of the Y can be 16 PCI-e lanes connected to the normal places on the motherboard (e.g. to the chipset or to the CPU). The upper two parts of the Y also provide 16 lanes but can not sustain full thoughput from both cards to the rest of the system of both at the same time. However it will work fine when sum of the bandwitdh of the 'upper Y connection' does not permanently exceed the based bandwitdh.
This can work fine if both cards want fast but bursty data.
Edit: some of those switches also allow card-to-card PCI-e connections. This is relevant because a common setup is to have two GPU's connected via PCI-e. (NVidia SLI, AMD XDMA). In such cases, bandwidth to the rest of the desktop is less of a constraint.