coen 180 hard drive interface evolution. hard drive interface how does the system interact with the...
TRANSCRIPT
Hard Drive Interface Evolution
Hard Drive Interface How does the system interact with
the disk. Slow development towards
autonomous, intelligent storage devices.
Hard Drive Interface Evolution ST412/506
Named after two Seagate disks from 1980 and 1981.
Adopted by IBM for PC Hard drive accommodates only
control circuitry for stabilizing disk rotation and head position.
Everything else is controlled by the controller.
Hard Drive Interface Evolution
Disk interface resides in adapter card.
Connected with two cables 20 pin data or B cable. 34 pin controller or A cable.
Hard Drive Interface Evolution ST412/506
Write operation (as an example) Controller knows the current track. Uses the direction signal and the step signal to
move one track at a time. If the controller ever looses control of the track,
then the controller moves the heads outwards until the drive indicates with the track 00 signal that the head is over the outmost track.
Sector identification is in the sector header. Once correct sector is reached, controller sends
over the write current. Any type of magnetic code can be used.
MFM gives a data rate of 5MHz RLL 7,2 gives a data rate of 7.5MHz.
Hard Drive Interface Evolution
IDE 1984: Compaq asked Western Digital
to produce an ST506 controller embedded in the hard drive itself and connected to the system bus via a 40 pin cable.
IDE is standardized as the ATA standard.
Hard Drive Interface Evolution
IDE implements a register model. To the host system, the IDE controller
looks like two blocks of I/O registers in the I/O space of the ISA bus.
Registers allow the host To control hard drive, To control transfer rate (via PIO or DMA). To receive status messages.
Hard Drive Interface Evolution
IDE PIO command Sets up a register block
Writes IDE address register Writes Drive / Head register
Which contains bits for the head number. Writes sector count register. Writes feature register. Etc.
Hard Drive Interface Evolution IDE PIO command
Sets up a register block Sends the write command to disk. Drive responds by setting DRIVE READY bit in the status
register. Host writes data via the data register to the sector
buffer. When the sector buffer is full, then the disk drive sets
the BUSY bit in the status register. Data is written to the medium. Drive deasserts the BUSY bit and sets the INTRQ bit. That signals the host to read the status register. Status register (hopefully) indicates a successful write.
Hard Drive Interface Evolution
IDE has two addressing modes: Physical Addressing Mode (CHS)
Cylinder Head Sector
Logical Addressing Mode (LBA) LBA - Logical Block Address
LBA = (CylinderNumber*HeadCount+HeadNumber)*SectorCount + SectorNumber - 1.
Hard Drive Interface Evolution
SCSI 1979: Disk drive manufacturer
Shugart proposes a new interface. 1986: ANSI approves the first SCSI
standard. SCSI in many variations remains the
primary interface for enterprise class storage devices.
Hard Drive Interface Evolution
SCSI Has an IO bus.
With originally 8 devices. SCSI interfaces exists for many
storage devices.
Example: First RAIDS had strings of disks hanging from a single SCSI bus.
Hard Drive Interface Evolution SCSI has its own language. SCSI address is a SCSI ID. Device with a single SCSI ID can consist of
LUNs (Logical UNits) Originally 8 LUNs per SCSI ID
Devices are either Targets. Initiators.
Tells target what to do. Computer system is connected to SCSI bus
through an HBA (Host Bus Adapter). Peripherals have a controller instead.
Hard Drive Interface Evolution SCSI standards
SCSI-1 (1986) Two transfer rates
Asynchronous transfer (1.5MHz to 4MHz) Synchronous transfer (5Mhz)
SCSI-2 (1990/1994) Fast (Synchronous) SCSI (10MHz) Wide (16b to 32b transfers with additional B-
cable. SCSI-3 (since 1993)
Family of standards, including Fibre Channel, IEEE-1394
Hard Drive Interface Evolution
Asynchronous transfer Sender and receiver exchange data
using the request / acknowledge handshake.
Hard Drive Interface Evolution
Asynchronous Transfer Sender asserts data. Sender asserts REQ
when data is stable. Receiver asserts ACK. Sender deasserts
data and REQ. Receiver deasserts
ACK.
Transmission of 1 bit followed by 0 bit on a single data line with a handshake protocol.
Hard Drive Interface Evolution
Synchronous Transfer Sender and Receiver negotiate a
clock rate at which data is send.
Hard Drive Interface Evolution
Synchronous transfer example From target to initiator
Target pulses REQ 5 times at a fixed rate. Assume 5 is the REC/ACK offset.
Initiator sends 5 pieces of data. Initiator validates the data by pulsing ACK
when data is stable. Target reads data and sends an
acknowledgment by pulsing REQ.
Hard Drive Interface Evolution
SCSI bus width Originally 8b. Extended to 16b and 32b.
Currently, serial transfer (one data bit at a time) is fastest because of lack of interference.
Hard Drive Interface Evolution
Name Specification # of Devices Bus Width Bus Speed MBps
Asynchronous SCSI SCSI-1 8 8b 5MHz 4MBps
Synchronous SCSI SCSI-1 8 8b 5MHz 5MBps
Wide SCSI SCSI-2 16 16b 5MHz 10MBps
Fast SCSI SCSI-2 8 8b 10MHz 10MBps
Fast/Wide SCSI SCSI-2 16 16b 10MHz 20MBps
Ultra SCSI SCSU-3 SPI 8 8b 20MHz 20MBps
Ultra/Wide SCSI SCSU-3 SPI 8 16b 20MHz 40MBps
Ultra2 SCSI SCSU-3 SP2 8 8b 40MHz 40MBps
Ultra2/Wide SCSI SCSU-3 SP2 16 16b 40MHz 80MBps
Ultra3 SCSI SCSU-3 SP2 16 16b 40MHz 160MBps
Hard Drive Interface Evolution
HBA Gives system access to a SCSI bus System can have many HBAs.
Storage Area Network: Addresses
Bus Target LUN
Hard Drive Interface Evolution Devices are either initiator or target.
Originally, a device was either one or the other.
Now, they can be both. Example:
Tape drive is target when the system sends it a command.
When the tape is ready to perform the command, it might become the initiator and the system the target.
Hard Drive Interface Evolution
The initiator is the master in the function and the slave in protocol, the target is the slave in function and the master in protocol" (M. Schultz).
Hard Drive Interface Evolution SCSI cables 3 different versions of cabling:
Single-ended (SE) – The most common form of signaling for PCs, single-ended signaling
means that the controller generates the signal and pushes it out to all devices on the bus over a single data line. Each device acts as a ground. Consequently, the signal quickly begins to degrade, which limits SE SCSI to a maximum of about 10 ft (3 m).
High-voltage differential (HVD) – The preferred method of bus signaling for servers, HVD uses a tandem
approach to signaling, with a data high line and a data low line. Each device on the SCSI bus has a signal transceiver. When the controller communicates with the device, devices along the bus receive the signal and retransmit it until it reaches the target device. This allows for much greater distances between the controller and the device, up to 80 ft (25 m).
Low-voltage differential (LVD) – A variation on the HVD signaling method, LVD works in much the same
way. The big difference is that the transceivers are smaller and built into the SCSI adapter of each device. This makes LVD SCSI devices more affordable and allows LVD to use less electricity to communicate. The downside to LVD is that the maximum distance is half of HVD -- 40 ft (12 m).
Hard Drive Interface Evolution Bus free phase. Arbitration phase
one or more initiators indicate that they would like to use the bus.
If more than one initiator enters the arbitration phase, the one with the highest SCSI ID wins.
Selection phase, Initiator puts the address of the target onto the data
bus. (The reselection phase fulfills a similar function, after
winning arbitration, a target that released the bus to execute a command can reestablish the connection to the initiator.)
Hard Drive Interface Evolution Four phases for exchanging data:
command phase is used for transferring command opcodes,
data phase is used for transferring data bytes,
message phase allows sending or receiving information concerning the protocol itself,
status phase concludes a command and gives the status of the operation back to the initiator.