Page 1 of 2 12 LastLast
Results 1 to 10 of 20

Thread: Can anyone clarify the situation with M.2 SSD's please?

  1. #1
    Join Date
    Apr 2020
    Location
    where the work takes me
    Beans
    138
    Distro
    Ubuntu 18.04 Bionic Beaver

    Can anyone clarify the situation with M.2 SSD's please?

    So I know this isn't specifically an Ubuntu question, but I'm building my first PC soon and will be installing Ubuntu on it so there is that...

    I've been researching online in preparation for selecting my parts and I'm a good way in but there's this question of M.2 drives that's driving me insane! Mainly because a lot of the material online is contradictory of worded sloppily.

    So M.2 form factor devices are designed to support the SATA, USB 3.0 or PCIe bus, does this mean that a given M.2 device could potentially use either of these 3 busses, with the actual bus used depending on which bus the motherboards M.2 socket offers / UEFI settings? or is it the case that a particular M.2 device would only support that bus which was appropriate to the type of device it was (e.g an NVMe M.2 SSD would use PCIe, while a non NVMe device would use SATA) but that the statement itself actually simply means the form factor offers vendors flexibility to implement support for one of the 3 busses.

    My second question is, are all M.2 SSD's, that work over PCIe, NVMe devices? In other words is it the case that the sole reason an M.2 SSD works over PCIe is to enable the use of NVMe? or do there exist non NVMe capable M.2 PCIe SSD's? (I'm aware there were PCIe SSD's that predate NVMe and used another protocol, but I'm speaking specifically about M.2 PCIe SSD's)

    And my final question is, is it possible for an M.2 socket to be connected to more than one type of bus?

    If anyone could help clear these things up that would be really great!

  2. #2
    Join Date
    Jan 2006
    Location
    Sunny Southend-on-Sea
    Beans
    7,838
    Distro
    Kubuntu 18.04 Bionic Beaver

    Re: Can anyone clarify the situation with M.2 SSD's please?

    M.2 is the form factor. Not all M.2 devices are SSDs: M.2 WiFi devices are also fairly common.

    NVMe is a logical interface for storage devices connected over PCIe. It allows for addressing in parallel rather than the Serial ATA. Not all NVMe devices are M.2: you can just plug some of them into a PCIe slot.

    Which connections are supported across a particular M.2 interface is down to the manufacturers of the devices on each side. There are M.2 SSDs that can only use SATA. A motherboard having one M.2 slot that can only do SATA, and a second slot that can do both SATA and PCIe, is a common arrangement. Sometimes the PCIe lanes will be shared with another socket on the motherboard, so using the lanes for an SSD means that fewer are available for that other slot.

    SATA Express is the interface that supports both PCIe and SATA. By supporting SATAe SSD makers can use whichever interface happens to be available.

    Because of all the cross-compatibility, and signalling negotiation, the devices will all work. For the fastest speed you will want an NVMe device in something that can use PCIe lanes that aren't shared with anything else.

  3. #3
    Join Date
    Apr 2020
    Location
    where the work takes me
    Beans
    138
    Distro
    Ubuntu 18.04 Bionic Beaver

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Quote Originally Posted by CatKiller View Post
    There are M.2 SSDs that can only use SATA.
    Are there also M.2 SSDs that can selectively use SATA or PCIe, depending on what the socket supports?

    A motherboard having one M.2 slot that can only do SATA, and a second slot that can do both SATA and PCIe, is a common arrangement. Sometimes the PCIe lanes will be shared with another socket on the motherboard, so using the lanes for an SSD means that fewer are available for that other slot.
    I see, so that must mean that the motherboard manages dynamically which lanes, and how many, are allocated to various peripherals based on what you have plugged in?

    SATA Express is the interface that supports both PCIe and SATA. By supporting SATAe SSD makers can use whichever interface happens to be available.
    When you say SATA Express is an "interface", does this mean a logical interface, as in a protocol similar to NVMe, that the devices manufacturer implements to allow it to function over both PCIe and SATA?

    Sorry for the barrage of questions, this is my first PC build and it can sometimes feel like trying to unpick a Gordian knot!

  4. #4
    Join Date
    Jun 2007
    Location
    Arizona U.S.A.
    Beans
    4,686

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Are there also M.2 SSDs that can selectively use SATA or PCIe, depending on what the socket supports?
    No. An m2 SSD drive works with one of these only.

    Check specs to see what the motherboard m2 connector supports - SATA, NVMe or either. The PCIe drives are often labeled 'NVMe SSD' on the box. I have a m2 SATA drive plugged into the single m2 connector on this computer (built in 2014) because they were the first drive products available to use the connector. Later, NVMe m2 drives came along. Rather than replace the m2 SATA drive, I used an adapter to add an NVMe drive. The adapter card plugs into a PCIe x16 slot.

    I think SATA express is now pretty much abandoned by motherboard manufacturers?
    Last edited by Dennis N; June 13th, 2020 at 08:09 PM.

  5. #5
    Join Date
    Jan 2006
    Location
    Sunny Southend-on-Sea
    Beans
    7,838
    Distro
    Kubuntu 18.04 Bionic Beaver

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Quote Originally Posted by jcdenton1995 View Post
    Are there also M.2 SSDs that can selectively use SATA or PCIe, depending on what the socket supports?
    Yes, that's what the SATAe standard was for. Rather than just doing "SATA, but faster," they got aligned with PCIe. So if an SSD maker had already designed their chip to use SATA, that will still work with the new standard. If they're going all in on PCIe, that will work, too. If a motherboard runs out of PCIe lanes, the SSD can still work over SATA.

    I see, so that must mean that the motherboard manages dynamically which lanes, and how many, are allocated to various peripherals based on what you have plugged in?
    I think it mostly happens at boot time, but yes, connections are made based on which lanes are available. Hotplugging is supported by at least some of these things.

    When you say SATA Express is an "interface", does this mean a logical interface, as in a protocol similar to NVMe, that the devices manufacturer implements to allow it to function over both PCIe and SATA?
    Yep, that's the idea. It happened before NVMe and M.2 were finalised, I think, but it meant that all the fiddly stuff for negotiating connections had already been done.

    Device development takes a long time, inventory is expensive, and rollout only happens gradually. By aligning existing standards (SATAe) and then pushing them forwards in a backwards-compatible way (NVMe) no one gets lumbered with warehouses full of obsolete gear.

  6. #6
    Join Date
    Apr 2020
    Location
    where the work takes me
    Beans
    138
    Distro
    Ubuntu 18.04 Bionic Beaver

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Quote Originally Posted by Dennis N View Post
    No. An m2 SSD drive works with one of these only.
    Yes I believe your right about SSDs that are specifically in the M.2 form factor only supporting one physical bus interface or the other, but the next question is can they support more than one logical interface? As in can a PCIe based M.2 SSD support AHCI and NVME?

    I've been spending hours trawling the internet trying to figure this out, and found the below quote from Kingston Technology's website...

    "The M.2 spec was designed to accommodate both a SATA and PCIe interface for SSDs. M.2 SATA SSDs will use the same controller currently on typical 2.5 in SATA SSDs. M.2 PCIe SSDs will use a controller specifically designed to support the PCIe protocol. An M.2 SSD can only support one protocol, but some systems have M.2 sockets that can support either SATA or PCIe."

    What I find confusing is the last two sentences. Firstly, in the second to last sentence, the writer speaks of "the" PCIe protocol, which seems misleading to me as I believe that there are at least two protocols that can be used to control SSD's via PCIe - AHCI and the more recent NVMe?

    Secondly, the final sentence seems to conflate protocols with buses, and the whole paragraph only seems to make total sense if you are laboring under the misapprehension that there is only one possible protocol (as far as controlling SSD's is concerned) that can be used for each different bus - one for SATA and another for PCIe

    Should it be that the final sentence should actually read "An M.2 SSD can only support one bus, but some systems have M.2 sockets that can support either SATA or PCIe." Which would then entertain the possibility that an M.2 PCIe based SSD may not be able to also support operation over a SATA bus, but it could support operation over PCIe via both AHCI and NVMe?

    Quote Originally Posted by CatKiller View Post
    Yes, that's what the SATAe standard was for. Rather than just doing "SATA, but faster," they got aligned with PCIe. So if an SSD maker had already designed their chip to use SATA, that will still work with the new standard. If they're going all in on PCIe, that will work, too. If a motherboard runs out of PCIe lanes, the SSD can still work over SATA.
    Yes I see what your saying (after looking up SATA express at least) and this does totally answer the question of if there are SSD's that can work over SATA and PCIe, but I was meaning specifically SSD's that use the M.2 form factor as opposed to connecting via a SATA express connector.

    I think it mostly happens at boot time, but yes, connections are made based on which lanes are available. Hotplugging is supported by at least some of these things.
    Yes that makes the whole operation of the thing much, much clearer! Do you have any thoughts on what I wrote above in reply to Dennis N?

  7. #7
    Join Date
    Jun 2007
    Location
    Arizona U.S.A.
    Beans
    4,686

    Re: Can anyone clarify the situation with M.2 SSD's please?

    As in can a PCIe based M.2 SSD support AHCI and NVME?
    I don't think so. The controller chip (NVMe or SATA) is part of the drive hardware and the drive has one type of controller or the other. There is no dual mode controller that I know of.

    Some old PCIe drives did use AHCI but you won't likely find such a drive offered today because no one would chose that over NVMe.

    From a wikipedia article on M.2:

    At a high level, primary advantages of NVMe over AHCI relate to NVMe's ability to exploit parallelism in host hardware and software, based on its design advantages that include data transfers with fewer stages, greater depth of command queues, and more efficient interrupt processing.

  8. #8
    Join Date
    Mar 2010
    Location
    Squidbilly-Land
    Beans
    20,542
    Distro
    Ubuntu Mate 16.04 Xenial Xerus

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Be very careful when you read the motherboard data about m.2 storage connections.
    Some will steal regular SATA ports when m.2 is used. My Asus B450 loses SATA5 and SATA6 when m.2-1 gets used.
    if you care about performance more than price, NVMe is the only option and prices have come down recently.

    Be certain to pay attention to the bus slow speed and get an NVMe that can use that speed. x2, x3, x4 matter greatly for NVMe slots. Again, my Asus supports x4 with one m.2 NVMe, but only x2 when both are used.

    Read the motherboard manual carefully. There will be a chart showing all these gotchas. Best to know them BEFORE purchase.

  9. #9
    Join Date
    Apr 2020
    Location
    where the work takes me
    Beans
    138
    Distro
    Ubuntu 18.04 Bionic Beaver

    Re: Can anyone clarify the situation with M.2 SSD's please?

    Quote Originally Posted by Dennis N View Post
    Some old PCIe drives did use AHCI but you won't likely find such a drive offered today because no one would chose that over NVMe.
    This is pretty much the impression I got from looking at what's available to buy, all current PCIe based drives, weather conventional PCIe cards or M.2, appear to use NVMe while the SATA based M.2 drives must still use AHCI (or something else I haven't seen but not NVMe obviously)

    There is no dual mode controller that I know of
    I haven't seen anything myself, I'm just going based off articles that are floating around online that talk about "PCIe M.2 drives with support for NVMe" which I perhaps wrongly interpreted as meaning they were capable of another mode of operation, to which NVMe was an alternative that could be used if the system supported it - but I think what you say is correct, and what is actually meant is that said drives only support NVMe.

    Quote Originally Posted by TheFu View Post
    Be very careful when you read the motherboard data about m.2 storage connections.
    Some will steal regular SATA ports when m.2 is used.
    Surely this is only the case for SATA based M.2 drives? as in the chipset only supports a limited number of SATA links, so using a SATA M.2 means some of the regular ports must be cut off?

    Be certain to pay attention to the bus slow speed and get an NVMe that can use that speed.
    Is the "slow" speed the configuration that the drives will be run in when there aren't enough lanes available to run all drives using the max number of lanes they are capable of? like in your example of your ASUS supporting one M.2 in x4 but two drives must be run in x2?

  10. #10
    Join Date
    Jun 2009
    Location
    SW Forida
    Beans
    Hidden!
    Distro
    Ubuntu

    Re: Can anyone clarify the situation with M.2 SSD's please?

    This has a good summary of questions on SATA & NVMe.
    https://superuser.com/questions/1535...e-m-2-and-pcie
    https://www.pcpepper.com/sata-vs-msa...ht-ssd-for-me/

    My 2014 build z97 has a M.2 connector. When I built system, I did not know or pay attention to it. But it is SATA only and uses ngff or next gen miniSATA but then not NVMe.

    My 2016 build z170 then had M.2 for either SATA or NVMe, but back then NVMe drives were expensive, so I installed a SATA M.2 drive.

    I just upgraded to a new NVMe larger NVMe drive. Its quicker booting and loading large apps or files, but my normal use is not a lot faster. Most of my use is cached in RAM or is slowed down by the operator of the keyboard.

    I was going to move M.2 SATA to Z97 system, but needed to copy some data to Z170 and bought a M.2 SATA to USB adapter. Surprised at how fast it is, I thought it was USB3 ports were part of why my flash drives were so slow, but SSD on USB3 as fast or faster than my SATA HDD. Have multiple large flash drives, so may now only buy SSDs for USB backup.
    For more info on UEFI boot install & repair - Regularly Updated :
    http://ubuntuforums.org/showthread.php?t=2147295
    Please use Thread Tools above first post to change to [Solved] when/if answered completely.

Page 1 of 2 12 LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •