COMPUTER ORGANIZATION (UNIT - 3) - Note
COMPUTER ORGANIZATION (UNIT - 3) - Note
I/O Controllers: These are the hardware components that manage the data transfer between
the computer system and the input/output devices, such as:
Keyboard controller
Disk controller
Graphics controller
Programmed I/O: The CPU (Central Processing Unit) directly controls the data transfer between
the computer system and the input/output devices.
Interrupt-Driven I/O: The CPU is interrupted by the input/output devices when data is ready to
be transferred.
Direct Memory Access (DMA): A specialized controller transfers data between the computer
system and the input/output devices without CPU intervention.
Programmed I/O: Advantages: simple to implement, low cost. Disadvantages: CPU is tied up
during data transfer, slow data transfer rate.
Interrupt-Driven I/O: Advantages: faster data transfer rate, CPU can perform other tasks during
data transfer. Disadvantages: more complex to implement, higher cost.
DMA: Advantages: fastest data transfer rate, CPU is free to perform other tasks during data
transfer. Disadvantages: most complex to implement, highest cost.
Interrupts are a crucial aspect of input/output (I/O) organization in computer systems. An interrupt is a
signal to the CPU (Central Processing Unit) that an event has occurred and requires immediate
attention. In the context of I/O organization, interrupts are used to notify the CPU that an input/output
device is ready to transfer data.
Types of Interrupts:
Hardware Interrupts: These are generated by hardware devices, such as keyboards, disk
controllers, and network interface cards.
Software Interrupts: These are generated by software, such as operating system calls or
application programs.
1. Interrupt Request: The input/output device sends an interrupt request to the CPU.
2. Interrupt Acknowledgment: The CPU acknowledges the interrupt request and saves the current
state of the program.
3. Interrupt Service Routine (ISR): The CPU executes the ISR, which is a specialized program that
handles the interrupt.
4. Data Transfer: The ISR transfers data between the input/output device and the computer
system.
5. Interrupt Completion: The ISR completes the interrupt handling process and restores the
original state of the program.
Advantages of Interrupts:
Improved System Responsiveness: Interrupts allow the CPU to respond quickly to input/output
events.
Increased System Efficiency: Interrupts enable the CPU to perform other tasks while waiting for
input/output operations to complete.
Better Multitasking: Interrupts enable the CPU to handle multiple tasks concurrently.
Disadvantages of Interrupts:
Increased Complexity: Interrupt handling can be complex and require significant CPU resources.
Interrupt Overhead: Interrupt handling can introduce overhead, such as context switching and
interrupt handling time.
Polling: The CPU periodically checks the status of input/output devices to determine if an
interrupt is pending.
Interrupt-Driven I/O: The CPU is interrupted by input/output devices when data is ready to be
transferred.
Examples of Interrupts:
Keyboard Interrupt: When a key is pressed on the keyboard, the keyboard controller sends an
interrupt to the CPU.
Disk Interrupt: When a disk I/O operation is complete, the disk controller sends an interrupt to
the CPU.
Accessing I/O devices is a crucial aspect of computer organization, as it enables the computer system to
interact with the external world. There are several ways to access I/O devices, each with its own
advantages and disadvantages.
Programmed I/O
In programmed I/O, the CPU (Central Processing Unit) directly controls the data transfer between the
computer system and the I/O device. The CPU executes a sequence of instructions to read or write data
to the I/O device.
Advantages:
Simple to implement
Low cost
Disadvantages:
Interrupt-Driven I/O
In interrupt-driven I/O, the CPU is interrupted by the I/O device when data is ready to be transferred.
The CPU executes an interrupt service routine (ISR) to handle the interrupt and transfer data.
Advantages:
Disadvantages:
Higher cost
Direct Memory Access (DMA)
In DMA, a specialized controller transfers data between the computer system and the I/O device
without CPU intervention. The DMA controller takes control of the system bus to transfer data.
Advantages:
Disadvantages:
Highest cost
In I/O mapped I/O, the I/O device is mapped to a specific memory address. The CPU accesses the I/O
device by reading or writing to the corresponding memory address.
Advantages:
Simple to implement
Disadvantages:
Memory-Mapped I/O
In memory-mapped I/O, the I/O device is mapped to a specific memory address range. The CPU accesses
the I/O device by reading or writing to the corresponding memory address range.
Advantages:
Simple to implement
Disadvantages:
Enabling and disabling interrupts are essential operations in computer organization, as they allow the
CPU to control when interrupts are processed. Interrupts are a crucial aspect of input/output (I/O)
organization, enabling the CPU to respond to events generated by I/O devices.
Enabling Interrupts:
Enabling interrupts allows the CPU to receive and process interrupt requests from I/O devices. When
interrupts are enabled, the CPU sets a flag in the status register, indicating that it is ready to receive
interrupts.
Instruction-Level Enable: The CPU executes a specific instruction to enable interrupts, such as
the sti instruction in x86 architecture.
Register-Level Enable: The CPU sets a specific bit in a control register to enable interrupts, such
as the IF flag in the EFLAGS register in x86 architecture.
Disabling Interrupts:
Disabling interrupts prevents the CPU from receiving and processing interrupt requests from I/O
devices. When interrupts are disabled, the CPU clears the flag in the status register, indicating that it is
not ready to receive interrupts.
Instruction-Level Disable: The CPU executes a specific instruction to disable interrupts, such as
the cli instruction in x86 architecture.
Register-Level Disable: The CPU clears a specific bit in a control register to disable interrupts,
such as the IF flag in the EFLAGS register in x86 architecture.
Enable Interrupts:
During normal system operation, when the CPU needs to respond to I/O events.
Disable Interrupts:
During critical sections of code, to prevent interrupts from interfering with sensitive
operations.
During system initialization, to prevent spurious interrupts from occurring.
Interrupt Starvation: Disabling interrupts for extended periods can lead to interrupt starvation,
where I/O devices are unable to request attention from the CPU.
System Instability: Enabling interrupts during critical sections of code can lead to system
instability, as interrupts can interfere with sensitive operations.
Best Practices:
Minimize Interrupt Disable Time: Disable interrupts only when necessary and for the shortest
duration possible.
Use Interrupt-Driven I/O: Use interrupt-driven I/O to minimize the need for disabling interrupts.
Direct Memory Access (DMA) is a technique used in computer organization to transfer data between
devices and memory without the involvement of the CPU. DMA allows peripherals to access system
memory directly, reducing the CPU's workload and improving system performance.
DMA Controller is a hardware device that allows I/O devices to directly access memory with less
participation of the processor. DMA controller needs the same old circuits of an interface to
communicate with the CPU and Input/Output devices.
Direct Memory Access uses hardware for accessing the memory, that hardware is called a DMA
Controller. It has the work of transferring the data between Input Output devices and main memory
with very less interaction with the processor. The direct Memory Access Controller is a control unit,
which has the work of transferring data.
DMA Controller is a type of control unit that works as an interface for the data bus and the I/O Devices.
As mentioned, DMA Controller has the work of transferring the data without the intervention of the
processors, processors can control the data transfer. DMA Controller also contains an address unit,
which generates the address and selects an I/O device for the transfer of data. Here we are showing the
block diagram of the DMA Controller.
Types of Direct Memory Access (DMA)
Single-Ended DMA
Dual-Ended DMA
Arbitrated-Ended DMA
Interleaved DMA
Single-Ended DMA: Single-Ended DMA Controllers operate by reading and writing from a single memory
address. They are the simplest DMA.
Dual-Ended DMA: Dual-Ended DMA controllers can read and write from two memory addresses. Dual-
ended DMA is more advanced than single-ended DMA.
Arbitrated-Ended DMA: Arbitrated-Ended DMA works by reading and writing to several memory
addresses. It is more advanced than Dual-Ended DMA.
Interleaved DMA: Interleaved DMA are those DMA that read from one memory address and write from
another memory address.
Address register – It contains the address to specify the desired location in memory.
The figure below shows the block diagram of the DMA controller. The unit communicates with the CPU
through the data bus and control lines. Through the use of the address bus and allowing the DMA and
RS register to select inputs, the register within the DMA is chosen by the CPU. RD and WR are two-way
inputs. When BG (bus grant) input is 0, the CPU can communicate with DMA registers. When BG (bus
grant) input is 1, the CPU has relinquished the buses and DMA can communicate directly with the
memory.
Explanation: The CPU initializes the DMA by sending the given information through the data bus.
The starting address of the memory block where the data is available (to read) or where data
are to be stored (to write).
It also sends word count which is the number of words in the memory block to be read or
written.
There are 3 modes of data transfer in DMA that are described below.
Burst Mode: In Burst Mode, buses are handed over to the CPU by the DMA if the whole data is
completely transferred, not before that.
Cycle Stealing Mode: In Cycle Stealing Mode, buses are handed over to the CPU by the DMA
after the transfer of each byte. Continuous request for bus control is generated by this Data
Transfer Mode. It works more easily for higher-priority tasks.
Transparent Mode: Transparent Mode in DMA does not require any bus in the transfer of the
data as it works when the CPU is executing the transaction.
8237 DMA Controller is a type of DMA Controller which has a flexible number of channels but generally
works on 4 Input-Output channels. In these present channels, the channel has to be given the highest
priority to be decided by the Priority Encoder. Each channel in the 8237 DMA Controller has to be
programmed separately.
8257 DMA Controller is a type of DMA Controller, that when a single Intel 8212 I/O device is paired with
it, becomes 4 channel DMA Controller. In 8257 DMA Controller, the highest priority channel is
acknowledged. It contains two 16-bit registers, one is DMA Address Register and the other one is
Terminal Count Register.
1. DMA Controller: A DMA controller is a specialized chip that manages DMA operations. It is
responsible for arbitrating access to the system bus and controlling data transfer between
devices and memory.
2. DMA Request: A peripheral device, such as a disk drive or network interface, requests a DMA
transfer by sending a signal to the DMA controller.
3. DMA Controller Arbitration: The DMA controller arbitrates access to the system bus, ensuring
that only one device can access the bus at a time.
4. DMA Transfer: The DMA controller takes control of the system bus and transfers data between
the peripheral device and memory.
5. Interrupt Generation: Once the DMA transfer is complete, the DMA controller generates an
interrupt to notify the CPU that the transfer is complete.
Types of DMA:
Third-Party DMA
In third-party DMA, the DMA controller is a separate entity that manages data transfer between devices
and memory.
In bus master DMA, the peripheral device itself acts as the DMA controller, managing data transfer
between devices and memory.
Chain DMA
In chain DMA, multiple DMA controllers are connected in a chain, allowing multiple devices to access
the system bus simultaneously.
Advantages of DMA:
Improved System Performance: DMA reduces the CPU's workload, allowing it to focus on other
tasks.
Increased Throughput: DMA enables high-speed data transfer between devices and memory.
Reduced CPU Interrupts: DMA reduces the number of interrupts generated, allowing the CPU to
focus on other tasks.
Disadvantages of DMA:
Higher Cost: DMA controllers are more expensive than traditional I/O interfaces.
Bus Contention: DMA controllers can contend with the CPU for access to the system bus.
Disk Drives: DMA is used to transfer data between disk drives and memory.
Network Interfaces: DMA is used to transfer data between network interfaces and memory.
Graphics Cards: DMA is used to transfer data between graphics cards and memory.
Bus Arbitration:
Bus arbitration is a technique used to manage access to a shared bus in a computer system. It ensures
that only one device can access the bus at a time, preventing data corruption and system crashes.
Centralized Arbitration
In centralized arbitration, a single arbiter is responsible for managing access to the bus. The arbiter
receives requests from devices and grants access to the bus based on a priority scheme.
Distributed Arbitration
In distributed arbitration, each device on the bus is responsible for managing its own access to the bus.
Devices use a protocol to negotiate access to the bus.
Hybrid Arbitration
In hybrid arbitration, a combination of centralized and distributed arbitration is used. A central arbiter
manages access to the bus, but devices also use a protocol to negotiate access.
Fixed Priority
In fixed priority, each device is assigned a fixed priority level. The device with the highest priority is
granted access to the bus.
Dynamic Priority
In dynamic priority, the priority of each device is determined dynamically based on the system's current
state.
Round-Robin
Token Passing
In token passing, a token is passed between devices, granting the device possessing the token access to
the bus
Buses:
A bus is a communication pathway that allows devices to exchange data. Buses are classified based on
their functionality, size, and speed.
Types of Buses:
Address Bus
The address bus carries memory addresses from the CPU to memory.
Data Bus
Control Bus
The control bus carries control signals, such as read and write signals, between devices.
Bus Characteristics:
Bus Width
The bus width determines the number of bits that can be transmitted simultaneously.
Bus Speed
Bus Protocol
The bus protocol determines the rules and procedures for data transmission.
Examples of Buses:
Synchronous Bus:
A synchronous bus is a type of bus that uses a clock signal to synchronize data transfer between devices.
The clock signal ensures that all devices on the bus are operating at the same frequency, allowing for
efficient and reliable data transfer.
Data is transferred in a synchronized manner, ensuring that all devices receive data at the same time.
High-Speed Data Transfer: Synchronous buses support high-speed data transfer rates.
Low Latency: Synchronous buses have low latency, as data is transferred in a synchronized
manner.
Clock Skew: Clock skew can occur, causing data transfer errors.
Limited Scalability: Synchronous buses can become bottlenecked as the number of devices
increases.
Asynchronous Bus:
An asynchronous bus is a type of bus that does not use a clock signal to synchronize data transfer
between devices. Instead, devices use handshaking protocols to negotiate data transfer.
No Clock Signal
Handshaking Protocols
Handshaking protocols are used to negotiate data transfer between devices.
Flexibility: Asynchronous buses are more flexible, as devices can operate at different
frequencies.
Scalability: Asynchronous buses are more scalable, as devices can be added or removed without
affecting the bus.
Low Power Consumption: Asynchronous buses consume less power, as devices only transmit
data when necessary.
Higher Latency: Asynchronous buses have higher latency, as devices must negotiate data
transfer.
Ethernet
RS-232
Bus interface circuits are electronic circuits that connect devices to a bus, enabling data transfer
between devices. These circuits play a crucial role in computer organization, as they facilitate
communication between devices and ensure reliable data transfer.
Transceivers
Transceivers are bus interface circuits that transmit and receive data between devices. They convert
digital signals to analog signals for transmission and vice versa.
Line Drivers
Line drivers are bus interface circuits that amplify digital signals to ensure reliable transmission over long
distances.
Line Receivers
Line receivers are bus interface circuits that receive and amplify analog signals, converting them back to
digital signals.
Bus Repeaters
Bus repeaters are bus interface circuits that regenerate and retransmit signals, extending the distance
over which data can be transmitted.
Bus Terminators
Bus terminators are bus interface circuits that absorb signals at the end of a bus, preventing signal
reflections and ensuring reliable data transfer.
Signal Amplification
Bus interface circuits amplify digital signals to ensure reliable transmission over long distances.
Signal Conversion
Bus interface circuits convert digital signals to analog signals for transmission and vice versa.
Signal Regeneration
Bus interface circuits regenerate signals to extend the distance over which data can be transmitted.
Signal Termination
Bus interface circuits absorb signals at the end of a bus, preventing signal reflections and ensuring
reliable data transfer.
Ethernet
Signal Integrity
Bus interface circuits must ensure signal integrity, minimizing signal degradation and distortion.
Power Consumption
Bus interface circuits must consume minimal power to reduce heat generation and increase system
efficiency.
Noise Immunity
Bus interface circuits must be designed to withstand noise and interference, ensuring reliable data
transfer.
Scalability
Bus interface circuits must be designed to accommodate increasing data transfer rates and device
densities.
Parallel Port, Serial Port, and Standard I/O Interfaces in Computer Organization
In computer organization, input/output (I/O) interfaces play a crucial role in facilitating communication
between the computer and external devices. Here's an overview of parallel ports, serial ports, and
standard I/O interfaces: Parallel Port
A parallel port is a type of interface that allows multiple bits of data to be transmitted
simultaneously over multiple wires.
It uses a parallel communication protocol, where data is sent in parallel, one byte at a time.
Parallel ports were commonly used for connecting printers, scanners, and other peripherals to a
computer.
Characteristics:
Serial Port
A serial port is a type of interface that transmits data one bit at a time over a single wire.
It uses a serial communication protocol, where data is sent sequentially, one bit at a time.
Serial ports were commonly used for connecting modems, mice, and other low-speed devices to
a computer.
Characteristics:
Standard I/O interfaces are a set of interfaces that provide a common way for devices to
communicate with a computer.
Characteristics:
Often faster and more reliable than parallel and serial ports
In summary, parallel ports and serial ports are older interfaces that were commonly used for connecting
devices to a computer. While they are still used in some applications, they have largely been replaced by
standard I/O interfaces like USB and SATA, which offer faster and more reliable communication.
PCI 32 bits have a transport speed of 33 MHz and work at 132 MBps.
PCI 64 bits have a transport speed of 33 MHz and work at 264 MBps.
PCI 32 bits have a transport speed of 66 MHz and work at 512 MBps.
Function of PCI:
PCI slots are utilized to install sound cards, Ethernet and remote cards and presently strong state drives
utilizing NVMe innovation to supply SSD drive speeds that are numerous times speedier than SATA SSD
speeds. PCI openings too permit discrete design cards to be included to a computer as well.
PCI openings (and their variations) permit you to include expansion cards to a motherboard. The
extension cards increment the machines capabilities past what the motherboard may create alone, such
as: upgraded illustrations, extended sound, expanded USB and difficult drive controller, and extra
arrange interface options, to title a couple of.
Advantages of PCI :
You’ll interface a greatest of five components to the PCI and you’ll be able moreover supplant
each of them by settled gadgets on the motherboard.
The PCI transport will improve the speed of the exchanges from 33MHz to 133 MHz with a
transfer rate of 1 gigabyte per second.
The PCI can handle gadgets employing a greatest of 5 volts and the pins utilized can exchange
more than one flag through one stick.
Disadvantages of PCI :
Data transfer and data storage are very important aspects in the world of computing. That evolved
significantly over the years. One of the leading technologies in this field is the Small Computer System
Interface(or SCSI). It provides a high level of versatility and efficiency in data transfer. and also Played an
important role in connecting and managing various peripheral devices. In this article, we will learn in
detail about the world of SCSI.
SCSI (pronounced SKUH-zee and sometimes known colloquially as “skuzy”), short for Computer System
Interface, is a set of American National Standards Institute (ANSI) standard electronic interfaces used for
computers. Allows communication with peripheral hardware such as disk drives, tape drives, CD-
ROM drives, printers, and scanners faster and more flexible than previous parallel data transfer
interfaces.
A SCSI host adapter is a device used to connect one or more SCSI devices to a computer bus. A SCSI host
adapter is commonly referred to as a SCSI controller, which is not entirely accurate, as any component
that understands the SCSI protocol can be called a controller. In this notion, all SCSI devices have a SCSI
controller integrated, while host adapters are responsible for transferring data between the computer’s
input/output bus and the SCSI bus.
SCSI Devices
SCSI Devices encompass a wide range of peripherals, including hard drives, CD/DVD drives, tape
recording drives, scanners, and printers. These devices are designed to connect to a SCSI machine and
communicate with the host computer through the SCSI host appendage. A SCSI machine is the physical
connection through which SCSI bias are connected to the SCSI host appendage. It can be either internal
or external, depending on the configuration of the computer and the bias.
Although not all devices support all levels of SCSI, SCSI standards are generally backward-compatible.
That is, if an older peripheral device is connected to a newer computer with support for a later standard,
the older device will operate at an older and slower data rate. In personal computing, the SCSI interface
has for the most part been replaced by Universal Serial Bus (USB). In the enterprise, SCSI is still used in
server farms for hard drive controllers.
SCSI Components
Initiator: An initiator issues requests for service by SCSI devices and receives responses.
Initiators come in various forms and may be integrated into the server’s system board or exist
within the host bus adapter. iSCSI connectivity typically uses a software-based initiator.
Target: The SCSI target is typically a physical storage device (although software-based SCSI
targets also exist). The target can be a single hard disk or an entire storage array. It is also
possible for non-storage hardware to act as a SCSI target. Although rare today, it was once
common to connect an optical scanner to a computer via a SCSI bus and act as a SCSI target.
Service Delivery Subsystem: The mechanism that allows communication between the initiator
and the target; This usually takes the form of cabling.
Expander: Used only with serial-attached SCSI (SAS) Allows multiple SAS devices to share a
single initiator port.
SAS products are compatible with devices that use earlier SCSI technologies. The Serial Storage
Architecture (SSA) standard can be used when SCSI performance is not sufficient, such as iSCSI,
which embeds SCSI-3 over TCP/IP (most SCSI-3 specification designations begin with Ultra).
Preserves command sets.
SAS has become a popular alternative to parallel SCSI in enterprise environments. Both serial
and parallel SCSI are based on the SCSI command set. SAS Parallel offers the following distinct
advantages over SCSI:
o It supports up to 65,535 devices (through the use of an extender). The latest parallel
SCSI standards allow only 16 devices.
o It is a point-to-point technology. This means that SAS is not subject to the resource
contention issues that are so common with parallel SCSI.
USB was designed to standardize the connection of peripherals like pointing devices, keyboards, digital
images and video cameras. But some devices such as printers, portable media players, disk drives, and
network adaptors to personal computers used USB to communicate and to supply electric power. It is
commonplace to many devices and has largely replaced interfaces such as serial ports and parallel ports.
USB connectors have replaced other types of battery chargers for portable devices with themselves.
Universal Serial Bus (USB) is an industry standard that establishes specifications for connectors, cables,
and protocols for communication, connection, and power supply between personal computers and
their peripheral devices. There have been 3 generations of USB specifications:
USB 1.x
USB 2.0
USB 3.x
The first USB was formulated in the mid-1990s. USB 1.1 was announced in 1995 and released in 1996. It
was too popular and grab the market till about the year 2000. In the duration of USB 1.1 Intel
announced a USB host controller and Philips announced USB audio for isochronous communication with
consumer electronics devices.
In April of 2000, USB 2.0 was announced. USB 2.0 has multiple updates and additions. The USB
Implementer Forum (USB IF) currently maintains the USB standard and it was released in 1996.
USB connectors have different shapes and sizes. Most of the USB connectors are the standard USB,
Mini-USB, and Micro-USB, which have two or more variations of connectors. Information on each type
are shown below.
Types of USB
Mini USB
Mini USB is available in three different types A type, B type, and AB type. It is used with computer
peripherals and digital cameras. The most common kind of interface is this one, that is referred to as
mini B. Micro USB and USB-C cables basically take the place of mini USB on the latest devices. It
uses coaxial cable to transmit data and power between two devices. it applies to mobile hard drives,
digital cameras, and MP3 players. One end of a micro USB cable has a much smaller quadrilateral hub,
and the other end has a regular USB hub with a flat head. It can be easily plugged into mobile devices.
Although the tiny USB is mainly designed for, it can also be used to transfer data between computers
having at least one USB port for charging device.
Micro USB
A reduced version of the USB (Universal Serial Bus), the micro-USB. It was created for connecting small
and mobile devices including digital cameras, smartphones, GPS components, MP3 players, and
photo printers and was first announced in 2007 as a replacement for mini USB.
The three different types of Micro-USB are Micro A, Micro B, and Micro USB 3. The connector size for
the type Micro-A and Micro-B is 6.85 x 1.8 mm, while the Micro-A connector has a larger maximum
overmild size. Because it has more pins on the side for twice as many wires than micro B, USB 3 micro is
more comparable to micro B yet has faster speed. Micro USB and normal USB versions are both plug-
and-play and hot-swappable is still widely used with electronic devices.
USB Type-C
A USB Type-C port is a relatively new type of connector that may be found on the majority of
contemporary newer Android smartphones and other USB-connected devices. Data and power are
delivered to computing machines using it. In contrast to traditional USB connections, USB-C cables can
be connected into devices in either direction, including upside down.
Since it is an external bus standard, USB 1.0 can accommodate up to 127 peripheral devices and data
transfer rates of 12 Mbps.
The USB 2.0 standard, commonly referred to as high-speed USB, was created in 2001 by Philips, Lucent,
Microsoft, Hewlett-Packard, Intel, NEC, and Compaq. It can support a transfer rate of 60 megabytes per
second or more up to 480 Mbps.
USB 3.0, generally known as SuperSpeed USB 3.0, was made accessible for the first time by Buffalo
Technology in November 2009. The enhanced functionality and speed of USB 3.0 contributed to
advancements in power management, improved bandwidth capacity, and USB 2.0 technology.
Up to 5.0 gigabits per second (Gbps), or 640 megabytes per second, can be supported. After the release
of USB 3.1, its name was changed to USB 3.1 Gen1 for manufacturing considerations. With the release of
their Dell XPS and Inspiron computer series in April 2011, Dell began to roll out USB 3.0 connections.
The most recent version of the USB protocol commonly known as SuperSpeed, that was made available
until July 31, 2013, is USB 3.1. It can support transfer rates of up to 10 Gbps. Recently, USB 3.0 and 3.1
revisions are used by different devices to improve speed and performance.
Advantages of USB
The Universal Serial Bus was designed to simplify and improve the interface between personal
computers and peripheral devices when compared with previously existing standard or ad-hoc
proprietary interfaces.
1. The USB interface is self-configuring. This means that the user need not adjust settings on the
device and interface for speed or data format, or configure interrupts, input/output addresses,
or direct memory access channels.
2. USB connectors are standardized at the host, so any peripheral can use any available receptacle.
USB takes full advantage of the additional processing power that can be economically put into
peripheral devices so that they can manage themselves. USB devices mostly do not have user-
adjustable interface settings.
3. The USB interface is hot pluggable or plug and plays, meaning devices can be exchanged without
rebooting the host computer. Small devices can be powered directly from the USB interface thus
removing extra power supply cables.
4. The USB interface defines protocols for improving reliability over previous interfaces and
recovery from common errors.
5. Installation of a device relying on the USB standard minimal operator action is required.
Disadvantages of USB
2. USB has a strict tree topology and master-slave protocol for addressing peripheral devices.
Peripheral devices cannot interact with one another except via the host, and two hosts cannot
communicate over their USB ports directly.
3. Some very high-speed peripheral devices require sustained speeds not available in the USB
standard.
4. For a product developer, the use of USB requires the implementation of a complex protocol and
implies an intelligent controller in the peripheral device.
5. Use of the USB logos on the product requires annual fees and membership in the organization.