It's amazing how much things have moved on since the OP. PCIe is so versatile. NVMe SSDs are just PCIe devices, which are generally backwards compatible with older PCIe versions or reduced PCIe lanes.
I've successfully used these cheap vertical Cablecc adapters from Aliexpress to run PCIe 3.0 x4 NVMes in a PCIe 3.0 x1 slot:
(Similar items are available from Amazon if you don't want to wait for shipping from China).
Bandwidth is constrained as expected, but still about twice as fast as a SATA SSD:
The x4 adapters also work fine and avoid the bandwidth constraints (when in a x4 or above slot). In fact I've even successfully used a x4 adapter advertised as PCIe 3.0 to run a Gen 4 drive at full speed in a PCIe 4.0 slot:
This allows otherwise impossible things like running two PCIe 4.0 x4 SSDs at full speed on a B550m motherboard (moving the GPU into a PCIe 3.0 chipset slot). Windows can even RAID them, not that you'd want to:
These are passive adapters so will work even on much older motherboards that don't have native M.2 slots (although you probably won't be able to boot from them, unless you are expert at patching BIOSes). For example, I've successfully run a PCIe 3.0 x4 NVMe in a PCIe 2.0 x4 slot
(Even older laptops with PCIe NGFF slots can in theory host other PCIe devices e.g. an M.2 NVMe SSD with a suitable keying adapter, or even an eGPU. Typically this would require sacrificing the internal wifi card in favour of USB wifi).
Beware PCIe adapters that take multiple M.2 drives. They seem to fall into three categories:
- x4 card with one NVMe slot and one SATA slot (the latter usually a passthrough from a motherboard SATA port - as pictured in another answer)
- x4 or x8 card with 2 or 4 NVMe slots, but multiplexing the NVMe traffic through a PCIe switch (reducing your theoretical maximum bandwidth, problematic if you wanted to RAID the cards)
- x16 card with 4 true NVMe x4 slots, but relying on PCIe bifurcation support in the chipset and BIOS (usually only available on higher-end boards - although if the chipset supports, it may be possible to patch it into the BIOS).