« www.tkk.fi

Suomeksi | På svenska | In English | GER | CAT | SPA | EPO | IT | Old

Siirry sivun sisällön alkuun





PMP and SATA controllers basic information

The Addonics 5X1 Internal SATA Port Multiplier (PM) AD5SAPM with a SATA host port enables SATA hard drives to be configured for a wide range of storage applications. The Internal Port Multiplier can combine up to 5 SATA hard drives into a single SATA port onboard or on an add-in controller. The 5 drives can be set up as individual drive, as RAID set or with JBOD to become one large hard drive depending on the controller. AD5SAMP-E has an e-SATA host port.

  1. Compatible with Host Controllers using the SiI3124 and SiI3132 chipset.
  2. Not compatible with Nvidia 680 integrated controller.
  3. Not compatible with ICH9R or ICH10.
  4. Performance of 4 disks is a bit higher than all 5 disks.
  5. Writing rates limited to ~ 2400 Mbps.
  6. SATA and eSATA offers similar performance.

Checking the ICH9 chipset datasheet: supports PMs, but only slow CB and not faster FIS switching. Checking the ICH10 chipset datasheet: Intel had heavily advertised PM and FIS support before the actual release of ICH10. Per datasheet however both PM and FIS support have actually been removed from ICH10. ICH10R 82801JIR has no datasheet.

The Addonics 4 x eSATA card ADSA3GPX8-4E for PCIe x8 employs a single SiI3124 PCI-X chip and a mystery PCI-X-to-PCIe bridge chip. The SiI3124 supports FIS-based switching. In kernel 2.6.26 not all drives are necessarily detected during boot. The only way is to unplug and replug the SATA cable of the missing disk, or replug the PMP with all the disks. It can take many tens of seconds to re-detect disks. Watch 'dmesg'.

The HP SC44Ge PCIe x8 is HP's version of the LSI Logic LSISAS1068E card. It is a 4 int (miniSAS) + 4 ext (SFF) SAS controller. It has an embedded 255MHz ARM966 processor. The card support SAS Expanders but not SATA Port Multipliers. Individual disks are seen in the OS as long as they aren't behind a PMP or in a RAID.

The HighPoint RocketRaid 2522 PCIe x8 has 2 x external miniSAS driven by two Marvell 88SX6042 chips (PCI-X) an additional PCI-X-to-PCIe bridge chip. The onboard BIOS supports port multipliers up to 40 drives. It is probably FIS-based. HighPoint claims 1.2 GByte/s sustained throughput. Configured RAID arrays are seen in the OS, individual disks are not.

PMP, SATA and SAS caveats

Below is a list of common caveats with Port Multipliers:

  1. the Port Multiplier appears first in the SATA-II standard
  2. the AHCI 1.x standards list Port Multipliers as an optional feature: not all AHCI hardware supports PMPs
  3. the AHCI mode may have to be enabled in BIOS, disable any Legacy modes
  4. If you use an ahci chipset, check that dmesg shows the 'pmp' flag that tells the hardware supports pmps:
    ahci 0000:00:0a.0: flags: 64bit sntf led clo pmp bio
  5. the SATA-II standard lists two methods for PMP: command based (CB) and frame information structure (FIS) based routing. Not all controllers support the faster FIS! With CB only one ATA command is executed at any time, hence PMP throughput is lower than a single disk. FIS allows parallel ATA commands and aggregate throughput closer to the 300MB/s host-to-pmp link speed.
  6. the SAS (Edge) Expanders are conceptually similar to SATA-II Port Multipliers. SAS equipment generally supports SATA disks. But often it does not support SATA PMPs.
  7. there is PMP support in Linux only since around kernel 2.6.20: mostly in sata_sil24, ahci. PMP is enabled on hardware that supports it.
  8. the impression is that PMP is still somewhat experimental even in 2.6.26, disk detection is flaky and many pmp resets are issued during detection, this may be normal
  9. some sources claim that the SATA disks must support NCQ for PMP throughput to be good, other sources say NCQ isn't that important, best to get NCQ drives anyway!

Intel, nVidia and PMP support

Below is an incomplete self-assembled table with information on AHCI and SATA port multiplier support on nForce (MCPxx) and Intel ICHxx chipsets. No guarantees about accuracy. AHCI "support" was checked by looking at kernel 2.6.25-10-2 ./drivers/ata/ahci.c. You can grep kernel sources for the 'ATA_FLAG_PMP' flag to find non-AHCI chipsets that support PMPs.

ChipsetPCI IDs from ahci.c, sata_sil24.cSupport status
MPC55...no ahci, no pmp
MCP650x044c..0x044f, 0x045c..0x045e, 0x045fahci (dmesg), type unknown
ahci 0000:00:0a.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl SATA mode
ahci 0000:00:0a.0: flags: 64bit led clo pmp pio
MCP670x0550..0x055bahci, pmp (dmesg), type unknown
ahci 0000:00:09.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl IDE mode
ahci 0000:00:09.0: flags: 64bit sntf led clo pmp pio slum part
MCP720x07B5, 0x07B9no ahci (or pci id not in kernel 2.6.27 ahci.c yet)
MCP730x07f0..0x07fbahci, pmp (dmesg), type unknown
ahci 0000:00:0e.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl SATA mode
ahci 0000:00:0e.0: flags: 64bit sntf led clo pmp pio
MCP770x0ad0..0x0adbahci, pmp (dmesg), type unknown
ahci 0000:00:12.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl SATA mode
ahci 0000:00:12.0: flags: ncq ilck pm led clo pmp pio slum part
MCP78?ahci, pmp dmesg), type unknown
ahci 0000:00:09.0: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x3f impl IDE mode
ahci 0000:00:09.0: flags: 64bit ncq sntf led clo pmp pio
MCP790x0ab4..0x0abfahci, pmp unkown
MCP7B0x0bc8..0x0bd3ahci, pmp unkown
ICH9...ahci (but no pmp?)
ICH9R...ahci, cb pmp (P35 product brief)
ICH100x3a05, 0x3a25ahci but no pmp at all (P45 product brief, same for G45)
ICH10R0x3a22our tests w/ Asus P5Q Pro: ICH10R datasheet incorrect: ahci, pmp, but it is cb-based
, native ports often loose disks even without any pmp so 2.6.27 ahci.c is broken?

SATA host controllers and PMP support

From ioi.com.tw, Marvell host controllers that support FIS: 88SX6042, 88SX7042, 88SE6145, 88SE6121, 88SE6111. Silicon Image host controllers that support FIS: Sil3132, Sil3124. Controllers that have bugs: SIL3112 can do only 120MB/s in total.

ChipsetPCI IDs from ahci.c, sata_sil24.cSupport status
SiI 31240x3124fis pmp, no ahci
88SE61210x6121ahci (patch), pmp support removed up to 2.6.26

EXPReS Logo EXPReS Logo This work has received financial support under the EU FP6 Integrated Infrastructure Initiative contract number #026642, EXPReS.