Connecting M.2 drives to various things (and not doing so)

(utcc.utoronto.ca)

50 points | by kencausey 2 days ago ago

15 comments

  • kube-system 8 hours ago

    It would be kind of an awkward to adapt a new and fast NVME drive to a clunky old SATA controller. M.2 conversions would typically not have the physical space required for any active conversion circuitry, and it would be more expensive than buying a SATA drive. If you've got a full 2.5" bay, you can get native 2.5" consumer SATA SSDs up to 16TB... which is more than I want to read/write at SATA3 speeds. And if you want to take advantage of fast storage, you can just skip the whole SATA controller and use PCIE.

    In an enterprise environment, nobody is really hooking up fast new storage to old slow storage controllers. They are either maintaining old systems, where they will use the legacy storage technologies, or they are deploying entirely new systems.

    • stephen_g 5 hours ago

      Yeah, there is very little reason to want to do this. It may become more of an issue if new SATA/SAS drives stop being produced anymore for maintaining those legacy systems - but at that point something based on an FPGA (as was suggested in another comment) is probably going to be more economic than a company bothering to spin an ASIC for the purpose. But I don't see SATA drives dying out for a fair while yet.

      • kube-system 4 hours ago

        Usually the tail end of legacy systems are adequately supported by new-old-stock for quite a while.

        e.g. 3.5" floppies are 40 years old, were obsolete 25 years ago, went out of production 15 years ago, and are just about ready to deplete their stock today. Yes, there are flash-to-floppy adapter, and a similar thing may happen for SATA, but we may not see that as a necessity until 2050.

  • Aurornis 2 hours ago

    > Since (M.2) NVMe to USB adapters exist, protocol conversion is certainly possible, and since such adapters are surprisingly inexpensive, presumably there's enough demand to drive down the price of the underlying controller chipsets.

    > (These chipsets are, for example, the Realtek RTL9210B-CG or the ASMedia ASM3242.)

    The NVMe to USB adapters aren't converting the NVMe protocol to another disk access protocol. They are USB3-connected PCIe endpoints, which allow the PCIe NVMe drive to connect to the host as an NVMe device.

    This isn't equivalent to the protocol conversion the author is seeking, which would accept SATA commands on one end and translate them to NVMe on the other end. I would actually call that SATA drive emulation, not protocol conversion, as SATA and NVMe aren't 1:1 such that you can convert SATA commands into NVMe commands and vice versa.

    • userbinator 2 hours ago

      They are USB3-connected PCIe endpoints, which allow the PCIe NVMe drive to connect to the host as an NVMe device

      No?

      https://us1.discourse-cdn.com/flex001/uploads/framework3/ori...

      This is an RTL9210B NVMe enclosure. It's a UAS device (and I believe it supports BOT too.)

      I have not examined this in much detail but I believe these converter ICs are actually rather powerful SoCs with PCIe host, SATA host, and USB device peripherals. The existence of firmware (several hundred KB!) for them is further evidence of this fact.

  • anon6362 an hour ago

    Oddly enough, I bought a bunch of M.2 format adapter things from the overseas fleamarket. One includes 9 SATA ports in a 2280 form factor. I've also seen PCIe x8/x16 expansion boards that connect via M.2.

    If I had transfinite funds, I would make a video about turning a dual socket motherboard+CPU combination with the most PCIe lanes with the goal to connect maximum GPUs via Thunderbolt 4 hubs and enclosures, PCIe bifurcation cards, and M.2-to-PCIe adapters (whichever method maximizes GPU count) all powered by many PSUs.

  • kccqzy 8 hours ago

    > there also doesn't currently seem to be any high capacity M.2 SATA SSDs

    I have a high capacity M.2 SATA in my computer. It's 4TB which I think qualifies for high. I bought it because I found out about that empty slot in my computer and wanted to fill it, not because of a particular need. Having a rare part in my computer gives me an indescribable sense of joy. And don't worry it's entirely used for extra redundancy so I won't lose data even if it dies.

    • SteveNuts 4 hours ago

      > And don't worry it's entirely used for extra redundancy so I won't lose data even if it dies.

      Just make sure to still back up the data!

  • yummypaint 9 hours ago

    You could do this on an FPGA dev board with the right connectors. Might be a nice project for someone with the time

    • IgnaciusMonk 3 hours ago

      Writing SATA to NVME adapter is nonsensical endeavor. It is as writing RoCE to HTTPS adapter. Makes no sense at all. And im not even talking about voltages etc.

      Any NVME disk can be connected even over PCIE3 x1 so there is plenty of capability on DESKTOP computers he is "managing".

      And what is he writing and how is he writing it is unbelievable that he can not seem to understand what SAS expander is etc.

      • userbinator 20 minutes ago

        No, it makes as much sense as USB-NVMe, which does exist, and as the article mentions, so does the other direction (a PCIe SATA controller in the shape of an M.2 SSD) but there's just not enough of a market for NVMe-SATA yet. They're just block device protocols, and the conversion between them is well-defined.

        A bidirectional example is IDE/SATA, for which plentiful cheap adapters in both directions (one IC automatically detects its role) exist; IDE host to SATA device, or SATA host to IDE device.

        For another "directional" example, it's worth noting that SATA to MMC/(micro/mini)SD(HC/XC)/TF adapters exist which let you use those cards (often multiple, even in RAID!) as a SATA drive, but the opposite direction, exposing a SATA drive as an SD card, does not (yet).

  • timzaman 2 hours ago

    What a surprisingly insightful post

  • privatelypublic 8 hours ago

    I think You're looking for something called a "tri-mode HBA." They run about $200 on ebay and as you mentioned- the m.2 to u.2, u.3, etc is passive (minus power)

    • rmb938 7 hours ago

      That's not really a M.2 nvme to sata converter though. That's just something that can take pci-e lanes and either give them to nvme drives through a pci-e multiplexer or convert the pci-e lanes to saas or sata. It also isn't passive, there's lots of processors to make it happen.

  • CyberDildonics 3 hours ago

    I don't understand this title.