Interconnection Standards
Interconnection Standards
• USB gives fast and flexible interface for connecting all kinds of peripherals.
• USB is playing a key role in fast growing consumer areas like digital imaging, PC telephony,
and multimedia games, etc.
• The presence of USB in most new PCs and its plug-n-play capability, means that PCs and
peripherals (such as CD ROM drives, tape and floppy drives, scanners, printers, video devices,
digital cameras, digital speakers, telephones, modems, key boards, mice, digital joysticks and
others) will automatically configure and work together, with high degree of reliability, in this
exciting new application areas.
• USB opens the door to new levels of innovation and its use for input devices. There are also
brand new opportunities of all types of peripherals from printers to scanners to high speed
connection such as Ethernet, DSL, cable and satellite communications.
• USB has advantages that specifically benefit developers, including the hardware designers who
select components and design the circuits, the PC programmers who write the software that
communicates with USB peripherals, and peripherals programmers who write the code that
resides inside USB peripherals.
USB Features
1. Simple connectivity
2. Simple cables
The USB cable connector are keyed so you cannot plug them in wrong.
USB is versatile enough to be usable with many kinds of peripherals with no need of having a
different connector and protocols for each peripheral. USB supports all kinds of data, from slow
mouse inputs to digitized audio and compresses video.
4. Automatic configuration
When a user connects a USB peripheral to a powered system, windows automatically detects the
peripheral and loads the appropriate software driver for it. There is no need to locate and run a
setup programme or restart the system before using the peripheral.
5. No user setting
USB peripherals do not have user selectable settings such as port address and interrupt request
(IRQ) lines.
Using USB for as many peripherals as possible frees up IRQ lines for the peripherals that do
require them.
USB supports three data transfer rates, 480 Mb/s (high-speed), 12 Mb/s (full-speed) and 1.5
Mb/s (low-speed).
USB 2.0 and IEEE 1394 offer similar data rate primarily differ in terms of application focus.
10. Reliability
Reliability of USB results from both the hardware design and data transfer protocols.
Even though USB is more complex than earlier interfaces, its components and cables are
inexpensive. A device with a USB interface is likely to cost the same or less than its equivalent
older interfaces.
Power circuits and code automatically power down USB peripherals when not in use, yet keep
them ready to respond when needed.
13. Flexibility
USB's four transfer types and three speed make it feasible for many types of peripherals.
Windows 98 was the first Windows operating system to reliably support USB, and its successors
such as Windows 2000 support USB as well. Other computers and operating systems also have
USB support. ON apple's iMac, the only peripherals connectors are USB. Other Macintoshes
also support USB, and support is in progress for Linux, NetBSD, and FreeBSD.
USB System
• The Fig. 8.11.1 shows the basic components of USB system. It consists of USB host, USB
device and USB cable. The USB host is a personal computer (PC) and devices are scanner,
printer etc. There will be only one host in the USB system, however there can be 127 devices in
the USB system.
USB Connector
• In either case, there are four signals as indicated in Table 8.11.1 The 5.0 V and ground signals
can be used to power the device connected on the PCI bus as long as the amount of current does
not exceed 100 mA per device.
• The data signals are biphase signals. When + data represents 5.0 V the data represents 0 V and
vice versa.
USB Data Encoding Format
• The USB uses NRZI (non-return-to zero, inverted) data encoding method for transmitting data
packets. In this method, the signal level does not change for the transmission of logic 1.
However, it is inverted for each change to a logic 0. This is illustrated in Fig. 8.11.3. In this
method data bits are always transmitted beginning with the least significant bit first, followed by
subsequent bits.
• To maintain the signal frequency in the specified range i.e. to achieve synchronization we have
to insert a sync bit in the data stream, if a logic 1 is transmitted for more than six bits in a row.
The process of inserting sync bit is known as bit stuffing.
• The bit stuffing isillustrated in Fig. 8.11.4.Bit stuffing ensures that Digital data
the receiver can maintain synchronization for long strings of logic 1s.
• The Fig. 8.11.5 shows the flowchart to generate USB data from the raw digital serial data.
(SeeFig. 8.11.5 on next page.)
8.11.1.5 USB Commands
• USB data is transmitted to particular receptor with the use of USB commands. •The
communication begins with the transmission of the sync byte (80H).
• It is followed by the packet identification byte (PID). The PID contains eight bits, but only the
rightmost four bits contain the type of packet. The leftmost four bits of the PID are the
complement form of four rightmost bits.
• For example, if a command is 1001, the actual PID byte is 0110 1001. The Table 8.11.2 shows
the available 4-bit PIDs and their 8-bit codes. The PIDs are also used as token indicators, as data
indicators, and for handshaking.
• The Fig. 8.11.6 shows the formats of data, token, handshaking and start-of frame packets used
on the USB.
• The data packet begins with PID, then data byte and ends with CRC (cyclic redundancy check)
code.
• Packets use two types of CRC codes : one is a 5-bit CRC and the other (used for data packets)
is a 16-bit CRC.
• The USB uses the ACK (acknowledge) and NAK (Not acknowledge) tokens to co-ordinate the
transfer of data packets between the host system (host is a PC or other computer that contain two
components: controller and a root hub). (A hub is device that contains one or more connecters or
internal connections to USB devices along with the hardware to enable communicating with each
device and the USB device.)
• Once a data packet is transferred from the host to the USB device, the USB device either
transmits and ACK or a NAK token back to the host.
• If the data and CRC are received without error, the ACK is sent; otherwise, the NAK is sent.
• If the host receives a NAK token, it retransmits the data packet until the receiver receives it
without error.
• This method of data transfer is known as stop and wait flow control. In this method, the host
has to wait for the client to send an ACK or NAK before transferring additional data packets.
• The USB is designed to handle many types of peripherals with varying requirements for
transfer rate, response time, and error correcting. There are four types of data transfers each
handle different needs and a peripheral can support the transfer types that are best suited for its
purpose.
1. Control transfer
• Control transfers are the only type with functions defined by the USB specification. These
transfers enable the host to read and select configurations and other settings on the devices being
enumerated. Control transfers may also send custom requests that send and receive blocks of
data for any purpose. All USB devices must support control transfers.
• This data transfer exchanges configuration, setup, and command information between the
device and host. CRCS check the data and initiate retransmissions when needed to guarantee the
correctness of these packets.
• Control transfers use message pipes. In a message pipe, each transfer begins with a Setup
transaction containing a request. To complete the transfer, the host and device may exchange data
and status information, or the device may just send status information. There is always at least
one transaction that sends information in each direction.
• If the request is one that the device supports, it takes the requested action. A device may also
respond with a code that indicates that it does not support the request.
2. Bulk transfer
• Bulk transfers are intended for situations where the rate of transfer isn't critical, such as sending
a file to a printer or receiving data from a scanner. In these cases quick transfers are nice, but the
data can wait if necessary. If the bus is very busy with other transfers that have guaranteed
transfer rates, bulk transfers must wait, but if the bus is idle, bulk transfers are very fast. Only
full-speed devices can do bulk transfers. Devices are not required to support bulk transfers, but a
specific I device class might require it.
• This data transfer moves large amounts of data when timely delivery is not critical. Typical
applications include printers and scanners. Bulk transfers are fillers, claiming unuse USB
bandwidth when nothing more important is going on. CRCs protect these packets.
3. Interrupt transfer
• Interrupt transfers are for devices that must receive the host's or device's attention quickly.
Other than control transfers, interrupt transfers are the only way that low speed devices can
transfer data. A keyboard or mouse can use interrupt transfers to send keypress or mouse
movement data. Both full and low speed devices can do interrupt transfers. Devices aren't
required to support interrupt transfers, but a specific device class might require it.
• This data transfers, though not interrupt in the CPU diverting sense, poll devices to see if they
need service. Peripherals exchanging small amounts of data that need immediate attention (such
as mice and keyboards) use interrupt transfers. Error checking validates the data.
• Isochronous transfers are for devices that must transfer data at a constant rate, such as audio
files to be played in real time, or other data that needs a guaranteed delivery rate or time. This is
the only transfer type that doesn't support automatic re-transmitting of data received with errors,
so occasional errors must be acceptable. Only full speed devices can do isochronous transfers.
Devices are not
required to support isochronous transfers, but a specific device class might require
it.
• This data transfer handling trimming data like an audio or video device. It is time sensitive
information so within limitation it has guaranteed access to a USB bus. No error checking occurs
so the system must tolerate occasional scrambled bytes. Above three transfers namely Bulk
transfer, Interrupt transfer, and Isochronous transfer use Stream Pipes.
• In a stream pipe, the data has no format defined by the USB specification. The receiving device
just accepts whatever arrives. The device firmware or host software can then process the data in
whatever way is appropriate for the application. Of course, even with stream data, the sending
and receiving devices will need to agree on some type of format.
Review Questions
1. Write short note on advantages of USB over older I/O bus architectures. AU: Dec.-06, Marks
8
5. What are the advantages of USB interface? AU: Dec.-08, May-13, Marks 2
SATA
• A serial advanced technology attachment (serial ATA, SATA or S-ATA) is a computer bus
interface that connects host bus adapters with mass storage devices like optical drives and hard
drives.
• As its name implies, SATA is based on serial signaling technology, where data is transferred as
a sequence of individual bits
• This interface is commonly used to connect hard disk drives to a host system such as a
computer motherboard.
• The first version of SATA communicated at 150 megabytes per second (MBps). The standard
was soon upgraded to 300 MBps in 2004 and 600 MBps in 2009-estimated to be sufficient to
accommodate 10 years of advances in device throughput.
Features
• Low Voltage Requirement: SATA operates on 500 mV (0.5 V) peak-to-peak signaling. This
help in promoting a much low interference and crosstalk between conductors.
• Hot Plugging: This feature helps users to change or remove storage devices even when the
computer is running.
• Staggered Spin-Up: Allows sequential hard disk drive startup, which helps even out power
load distribution during system booting.
• Native Command Queuing (NCQ): Usually, the commands reach a disk for reading or
writing from different locations on the disk. When the commands are carried out based on the
order in which they appear, a substantial amount of mechanical overhead is generated because of
the constant repositioning of the read/write head. SATA II drives use an algorithm to identify the
most effective order to carry out commands. This helps to reduce mechanical overhead and
improve performance.
• Port Selectors: Facilitates redundancy for two hosts connected to a single drive, allowing the
second host to take over in the event of a primary host failure.
• Simplified construction: PATA cables had 40-pin/80-wire ribbon cable. This was complex in
structure. In comparison, SATA had a single 7 pin data cable and a 15 pin power cable. This
cable resulted in a higher signaling rate, which translates to faster throughput of data.
• Differential Signaling: SATA uses differential signaling. Differential signaling is a technology
which uses two adjacent wires to simultaneously the in-phase and out-of-phase signals. Thus, it
is possible to transfer high-speed data with low operating voltage and low power consumption by
detecting the phase difference between the two signals at the receiver's end.
• High data transfer rate: SATA has a high data transfer rate of 150/300/600 MBS/second. This
capability of SATA allows for faster program loading, better picture loading and fast document
loading.
• Large Cable Length: SATA cable can be of length up to 1 meter, whereas PATA cable can
only have a length of maximum 18 inches.
Operating Modes
• IDE mode: IDE stands for Integrated Drive Electronics. This mode is used to provide
backward compatibility with older hardware, which runs on PATA, at low performance.
• AHCI mode: AHCI is an abbreviation for Advanced Host Controller Interface. AHCI is a high-
performance mode that also provides support for hot-swapping. •The Serial ATA [SATA] bus is
defined over two separate connectors, one connector for the data lines and one for the power
lines.