PCI-E is basically a network protocol over a series of network links. The chipset is the ‘Switch’, the lanes are the ‘cables’ and the cards are the ‘servers’. A single PCI-E slot is made up of one or many lanes. This can be likened to a network trunk. A 1x slot is like a single cable to a server, a 4x is like a 4 cable trunk and a 16x is like a 16 cable trunk. Data to be sent to the card is encapsulated, sent over multiple lanes, and then de-encapsulated once more. Just like a network trunk.
Again like a network, I recall the PCI-E specification saying that devices can negotiate for lanes and what speed the lanes run at. The speed, I assume is for future compatibility when they up the PCI-E speed to 200mhz or something, and the negotiation should mean that if a lane is faulty or missing or reassigned elsewhere (as it is in SLI) that the device can just keep on going with less available bandwidth.
We’ve already seen an example of its adaptability with SLI. With SLI, there are 2 physical 16x PCI-E slots. Under non-SLI configuration, one slot runs with 16 lanes and the other with 1 or 2 (that’s up to the motherboard manufacturer). When the key or bios setting is changed, the first slot loses 8 lanes. They are physically re-routed (either with a physical key or an electronic switch) to the second port. In this mode, the first card runs 8 lanes and the second card runs 8 lanes. There have also been reports of cards working in open ended 1x and 4x slots.
So what if…
I was to take a hacksaw to a 16x card and physically cut the second lane from the PCB? Would it actually work in a 1x slot and would it still work in a 16x slot with 15 active lanes or would it only ever run in 1x mode?
Theoretically it should auto-negotiate 15 lanes and continue on as normal. It might only want contiguous lanes though, so it might only run in 1x forever.
There’s a relatively easy way to test this. Sticky tape.
I plan to tape over lane2, insert the card into a 16x slot and see if it works at 15x.
Then, I plan to test 1x operation by taping over lanes 2-16 and re-inserting into the 16x slot.
Finally, assuming all is good, I will physically remove lane2’s interface from the bottom of the card. I will use a small saw and a file most likely.
As a possible future exercise, I may remove lane5 and lane 9. This would make a card capable of fitting in to any current PCI-E slot. 1x, 4x, 8x, 16x. Maximum theoretical speeds would be 1x(1x), 3x(4x), 6x(8x), 13x(16x) (where those numbers are speed(slot).)
It should end up looking something like this:
The pinout table for PCI-Express 16x is below, based on this page.
The pinout table for PCI-Express 1x is below, based on this page.