Before you start
Objectives: Learn the specifics about the SATA standards and how do SATA devices look like.
Prerequisites: you have to be familiar with different types of storage devices which can be used on computers.
SATA vs PATA
In contrast to Parallel ATA, Serial ATA uses a serial bus architecture that overcomes many of the electrical constraints that limit the speed of our PATA drives. With IDE, EIDE or ATA we use a so called ribbon cable. The ribbon cable transfers data in parallel. In fact, there are 80 wires in a ribbon cable for ATA standard. This type of data transfer has the same type of problems which we mentioned in our article about the parallel port. In short, the cable which is used for parallel connection must be short and the speed of the data transfer has to be constrained. If we don’t meet those requirements, data won’t be delivered correctly. Because of that, parallel systems have strong limitations on the cable length and the speed of data transfer. With ATA standard we actually met the theoretical maximum speed which is 133 MBps.
SATA addresses all those problems by using the serial type of bus. As we said, with SATA standard we transfer data by using a serial connection. SATA uses two channels. Each channel is composed of two wires. One wire is used for transmission, and the other is used for receiving. One channel is used to transmit data, and the other channel is used for acknowledgments. Of course, in addition to those wires, we also have grounding wires in the cable.
With SATA standard the length of our cable can be up to 1m.
In addition, the connector is very different from the PATA connector. The SATA devices use a 7-pin connector. Here are some SATA interfaces on the motherboard.
SATA on Motherboard
SATA uses a point-to-point connection between a device and the SATA controller. This means that each device has its own cable, so each device has its own dedicated bandwidth. Each point-to-point connection (each device on each cable) works independently. Because of this, we don’t have to worry about the master-slave relationship anymore, as we had to with PATA standard.
SATA comes in different version or revision, and each revision brings different transfer speed. At the time of writing this article SATA revisions are:
- SATA 1.0 – provides a native transfer rate of 1.5 Gbit/s, but the maximum uncoded transfer rate is 1.2 Gbit/s (150 MB/s)
- SATA revision 2.0 – native transfer rate of 3 Gbit/s, uncoded is 2.4 Gbit/s (300 MB/s). This revision also brought support for external devices (also called eSATA), hot plug support (allows data to be added and removed while the system is running), Native Command Queuing (NCQ – for increased performance), and port multiplier support (allows multiple devices to be connected to a single SATA port.
- SATA revision 3.0 – native transfer rate of 6 Gbit/s, uncoded is 4.8 Gbit/s (600 MB/s)
- SATA revision 3.1 – new power-saving measures, TRIM performance improvements for solid-state drives, and miscellaneous tweaks.
- SATA revision 3.2 – SATA Express, uses SATA software protocols over the PCI Express hardware interface to increase SATA transfer speeds up to 8 Gbit/s or 16 Gbit/s.
SATA hardware is not compatible with PATA hardware.
Remember that when we have to install a SATA drive like the one on the picture below, we don’t have to configure the master-slave relationship by using jumpers. That’s because each SATA drive uses its own cable for connection. Connectors are keyed, so we can’t plug in the cable the wrong way.
On SATA drives you will also notice that the power connector is different from the one used on PATA drives. The 4-pin white molex power connector is not used with SATA drives. We have to have a special power connector for SATA drives. All newer power supplies will already have SATA connectors implemented. If your power supply doesn’t have SATA power connector, we can use an adapter for the white molex connector like the one shown on the picture.
SATA Power Adapter
If we have multiple SATA devices, we connect each device to a different SATA interface on the motherboard.