M.2 SATAs either plug into an adapter card which connects to the board using SATA / SATA express, or many modern laptops have a built in port on the SATA bus. Some PCIe adapters that have an NVMe M.2 slot sometimes have a SATA M.2 slot above them but there will often be a SATA connector and it is provided with a SATA cable. Only the NVMe port uses the PCIe interface and the M.2 SATA port is connected to the SATA port. The host controller on the point to point SATA bus uses AHCI. The devices on the bus device controllers use SATA transport protocol. The devices do not have a built in AHCI controller, just a regular SATA controller. You can't put them in an NVMe/AHCI slot because they aren't a PCIe device and they need the AHCI controller on the other end of the SATA bus as the PCIe device that interfaces with the PCIe interface. The SATA controller doesn't know how to interface with PCIe.
M.2 AHCI PCIe drives have a built in AHCI controller and hence use an AHCI driver and can directly interface with the PCIe bus as AHCI host controllers. They either connect to a built in M.2 port on the PCIe bus or, if there isn't one on the motherboard, they connect to an adaptor which is inserted into a PCIe slot.
M.2 NVMe PCIe drives have a built in NVMe controller and hence use an NVMe driver. They either connect to a built in M.2 port on the PCIe bus or, if there isn't one on the motherboard, they connect to an adaptor which is inserted into a PCIe slot. There are all sorts of other adapters. For instance, a 3.5 inch Bay with a SATA M.2 slot connected to a SATA port and an M.2 NVMe slot connected via SAS (Mini SAS – Mini SAS cable) to a PCIe adapter. The M.2 NVMe / AHCI ports on the motherboard may also be connected to the SATA bus as well as the PCIe bus and therefore allow M.2 SATAs to also be inserted in the slot. Which looks something like this:
PCIe SSDs have a built in NVMe controller. They aren't adapters into which M.2 drives plug into; but instead, the card is the actual SSD; it has an AIC (Add In Card) form factor (which can be either FHFL, FHHL or HHHL). They directly connect with a PCIe connector to a PCIe slot. The NVMe controller uses the PCIe protocol to access RAM.
mSATA SSDs connect to mSATA ports on the SATA bus or to an adapter that connects via SATA. The adapter can sometimes be on multipurpose PCIe adapters and, like the M.2 SATA, actually connects via SATA / SATA Express cable provided with the adaptor, whereas the M.2s connect to the PCIe bus pins of the adaptor. mSATA has the same form factor as mPCIe but they aren't compatible. Some other devices use mPCIe such as WiFi cards. I think there are some rare mPCIe SSDs as well. mPCIe (replacement for the former mPCI) slots can be connected to the USB 2.0 bus or PCIe bus. The controller on board the mPCIe card will either support the USB interface, PCIe interface or both.
M.2 SATAs and mSATAs can appear on PCIe adapters without a SATA port on the adapter because the card has a built in AHCI controller which interfaces with the PCIe interface.
The M.2 specification identifies 12 keys A–M, but in common use are B and M. M.2 SATA SSDs are B+M-keyed (can fit in sockets for B-keyed and M-keyed modules), while M.2 NVMe/AHCI SSDs for PCIe 3.0 x4 lane are M-keyed.
U.2 is the form factor for a new type of 2.5 inch SSD that supports hotplugging unlike M.2. U.2 drives can be AHCI or NVMe. The U.2 drives can fit into a bay and connect via SAS to a PCIe adapter card with a Mini SAS port or the U.2 can actually fit on the PCIe adapter itself. The SAS cable used is a SFF-8639 to Mini SAS which is faster than a SATA express cable.