PCIe branching - Requirement of Switch
This is conceptually very easy to understand, but maybe not very clear from the specification. I have been wrestling with this issue a while back and this is how it works:

You cannot split a single port into multiple ports. Or to say it differently: No matter how many lanes a port has, you can only use all those lanes to feed one device. Like all other related serial protocols (SATA, USB 3.0 and up, thunderbolt), you need to use a switch to use multiple devices on one port. Such switches are also not particularly trivial devices, they need to do a minimal amount of arbitration aside from physical switching, so you cannot get by with just muxes. Fortunately, if you sign a boatload of NDAs, you can get these parts fairly cheaply from companies like Pericom, JMicron and ParadeTech.