Subject: Re: Help - don't understand SATA!
To: None <netbsd-users@netbsd.org>
From: Dieter <netbsd@sopwith.solgatos.com>
List: netbsd-users
Date: 10/07/2005 12:03:57
> Correct me if I'm wrong, but "plain" SATA means one harddrive per
> channel? So, a normal motherboard with basic SATA support (two channels)
> means two harddrives maximum?

With SATA, the usual term is "port".  One drive per port.  I've seen
mainboards with as many as 8 SATA ports.  4 ports is pretty common.
E.g. the nforce4 provides 4 SATA ports.

> I read that there's something called a "Port Multiplier" which will
> allow 16 disks to be connected

The limit is 15, not 16.  The Port Multiplier uses up one address.
So far I have only seen one Port Multiplier offered for sale and it
only has 5 ports.  A mainboard with 4 SATA ports and 4 of these PMs
should be able to run 20 SATA disks.

Grepping through the NetBSD kernel code will find code for Port Multipliers,
although I don't know if it is actually working or not?

A nice thing about PMs is that they don't use up an expansion slot.

Another SATA feature to consider is NCQ (native command queueing).
Some controllers have it, some don't.  Same with disks.  Last I
heard, NetBSD doesn't support NCQ yet.  :-(

Some SATA controllers are faster than others.  I have a
Silicon Image SATALink 3512 which has 2 ports and barely
reads 40 MB/s total from 2 drives.  I have a board with the
nforce4 and drives on 2 of its 4 ports which easily reads
~137 MB/s total sustained from the same drives (at this speed
the drives are the limiting factor).

Note that the term "SATA-2" just means that the controller/drive
has one or more "SATA-2" features.  If you care about a particular
SATA-2 feature (faster interface speed, NCQ, ...) you have to verify
that the device in question actually has that particular feature.