Can I insert an M.2 SSD with PCI-Express 3.0 x4 to a PCI-Express 2.0

Solution 1:

Yes, but it won't be as fast as advertised.

The PCI Express standards mandate proper down-negotiation of the exact PCI Express version being used on any given link to the maximum version supported by both endpoints. This means you can use PCI Express devices for any version of the spec (provided they are properly compliant with the spec) with a mainboard/chipset that uses any other version without having to perform any manual configuration at all.

In your case, this translates to the SSD running at PCI Express 2.0 speeds, with half the lanes it possibly could. This is actually a pretty significant performance hit. PCI-E 4.0 has a max throughput of roughly 1.9 GB per second per lane, while PCI-E 2.0 only gets about 0.5 GB per second per lane. This translates to a peak performance in your case of at most roughly 1/8 of the SSD's rated performance. It will still probably perform far better than a conventional hard drive would, but you may very well get better performance out of a SATA SSD on the same mainboard than you would an NVMe SSD.

You might be able to find a PCI-Express to M.2 adapter that would work, and then plug that into one of the PCI-Express 3.0 slots on the board, but that will only get you up to roughly half the rated performance for the SSD.


One quick final note, always check that the size of M.2 card is compatible with whatever you're using it with. The '2280' means that the SSD you're looking at is 22mm wide (which everything supports) and 80mm long (which not everything supports). In your case, this should fit (based on pictures, the motherboard does indeed have enough room for an 80mm M.2 card), but anything longer would not.

Solution 2:

As noted in another answer, PCI express will automatically train to the highest mutually supported speed regardless of which version is at each end of the link (via the speed advertisement field in the TS1 and TS2 ordered sets during link up. For details look at the PCIe LTSSM) provided the link itself can support that speed.

In your case, the link will attempt to come up at the PCIe 2.0 speed (5Gb/sec physical layer speed per lane). The actual details of link training are well beyond the scope of this answer.

What I will note (because it is of great importance) is that the link will always attempt to initiate the link at the gen 1 speed (2.5Gb/s) as that is the only guaranteed rate for any mix of link partners and that link width is established prior to attempting to change the link rate.

Your SSD may or may not actually operate, however in this scenario.

An often missed 'quirk' of PCI express is that a device is only required to operate on the design width (the number of lanes it was designed to expose) and on the 1x (single lane) physical interface.

Plugging a x4 device into a x2 connection may have any of the following results regardless of which version of the standard it was designed to:

1 It does not operate at all. I have seen this behaviour first hand; I had a motherboard of my own design that had 4x PCI express going to PMC slots. A PMC card with a x8 interface was plugged in and failed to link up in any way.

Reducing the physical interface to a 1x link (by removing coupling capacitors) got the unit to link up. In that particular case, the card had option resistors that were eventually found that permitted it to operate on a 4x link but this highlights the fact that operation is not required to be supported on all possible link widths.

2 The SSD adapts automatically to a 2x interface, where you will get a peak throughput of 8 Gb/sec (1 GB/sec) for read and write because the actual data rate is 80% of physical speed in the version 1 and 2 specifications due to 8b / 10b encoding (the actual throughput depends on a lot of factors that are beyond the scope of this answer).

3 The SSD does not support 2x but degrades gracefully to a 1x link, in which case you will get a single lane for 4Gb/sec (500MB/sec) peak throughput.

I looked at the specification of the SSD you linked but it was silent on this issue; the vendor may give you a definitive answer if you ask their tech support.