0% found this document useful (0 votes)
5 views

Unit 4 Notes--- Io Interface

The document provides an overview of Input-Output (I/O) interfaces in computer architecture, explaining their role in connecting internal storage with external devices for data transfer. It discusses asynchronous data transfer methods, including strobe control and handshaking, highlighting their advantages and disadvantages, as well as the function of Direct Memory Access (DMA) controllers in enhancing data transfer efficiency. Additionally, it describes the I/O bus and interface modules that facilitate communication between the processor and peripheral devices through various command types.

Uploaded by

dhakgaurav23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Unit 4 Notes--- Io Interface

The document provides an overview of Input-Output (I/O) interfaces in computer architecture, explaining their role in connecting internal storage with external devices for data transfer. It discusses asynchronous data transfer methods, including strobe control and handshaking, highlighting their advantages and disadvantages, as well as the function of Direct Memory Access (DMA) controllers in enhancing data transfer efficiency. Additionally, it describes the I/O bus and interface modules that facilitate communication between the processor and peripheral devices through various command types.

Uploaded by

dhakgaurav23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

UNIT 4 NOTES

Introduction to Input-Output Interface:


What is I/O Interface?

In computer architecture, an input/output (I/O) interface is a hardware component that connects a


computer's internal storage to external devices, allowing data to be transferred between the two.

Input-Output Interface is used as a method which helps in transferring of information between the
internal storage devices i.e. memory and the external peripheral device. A peripheral device is that
which provide input and output for the computer, it is also called Input-Output devices. For Example:
A keyboard and mouse provide Input to the computer are called input devices while a monitor and
printer that provide output to the computer are called output devices. Just like the external hard-
drives, there is also availability of some peripheral devices which are able to provide both input and
output.

In micro-computer base system, the only purpose of peripheral devices is just to provide special
communication links for the interfacing them with the CPU. To resolve the differences between peripheral
devices and CPU, there is a special need for communication links.

The major differences are as follows:

The nature of peripheral devices is electromagnetic and electro-mechanical. The nature of the CPU is
electronic. There is a lot of difference in the mode of operation of both peripheral devices and CPU.

There is also a synchronization mechanism because the data transfer rate of peripheral devices are slow than
CPU.

In peripheral devices, data code and formats are differ from the format in the CPU and memory.

The operating mode of peripheral devices are different and each may be controlled so as not to disturb the
operation of other peripheral devices connected to CPU.

There is a special need of the additional hardware to resolve the differences between CPU and peripheral
devices to supervise and synchronize all input and output devices.
Asynchronous Data Transfer
Asynchronous data transfer enables computers to send and receive data without having to wait for a real-time
response. With this technique, data is conveyed in discrete units known as packets that may be handled
separately.

Terminologies used in Asynchronous Data Transfer

• Sender: The machine or gadget that transfers the data.

• Receiver: A device or computer that receives data.

• Packet: A discrete unit of transmitted and received data.

• Buffer: A short-term location for storing incoming or departing data.

Classification of Asynchronous Data Transfer

Strobe Control Method

Handshaking Method

Advantages of Asynchronous Data Transfer

• Because asynchronous data transfer sends data in discrete, independently processable pieces, it
enables faster data transfer speeds.
• This method is more effective than synchronous data transfer because there is no need for the
receiver to respond.
• Transmission is done by making large files or data sets into smaller packets and sending them in
parallel cuts the duration time.

Disadvantages of Asynchronous Data Transfer

• Asynchronous data transfer requires more complex programming and it may be possible that some
data may get corrupted or lose data if packets are not received in the correct order or are lost during
transmission.
• As we know there will be no real-time communication in asynchronous data transport can be more
prone to errors than synchronous data transfer.
Strobe Control Method for Data Transfer

Strobe control is a method used in asynchronous data transfer that synchronizes data flow between two
devices. Bits are transmitted one at a time, independently of one another, and without the aid of a clock signal
in asynchronous communication. To properly receive the data, the receiving equipment needs to be able to
synchronize with the transmitting device.

Strobe control involves sending data along with a different signal known as the strobe signal. The strobe signal
alerts the receiving device that the data is valid and ready to be read. The receiving device waits for the strobe
signal before reading the data to ensure it is synchronized with its clock.

The strobe signal is usually generated by the transmitting device and is sent either before or after the data. If
the strobe signal is sent before the data, it is called a leading strobe. If it is sent after the data, it is called a
trailing strobe.

Overall, strobe control, which is frequently employed in a range of electronic devices and systems, is a
helpful technique for assuring dependable data flow in asynchronous communication.

Types of Strobes

Handshaking Method For Data Transfer

During an asynchronous data transfer, two devices manage their communication using handshaking. It is
guaranteed that the transmitting and receiving devices are prepared to send and receive data. Handshakes are
essential in asynchronous communication since there is no clock signal to synchronize the data transfer.

During handshaking, we use two types of signals mostly they are request-to-send (RTS) and clear-to-send
(CTS). The receiving device is notified by an RTS signal when the transmitting equipment is ready to provide
data. The receiving device responds with a CTS signal when it is ready to accept data.

once data is transmitted to the receiver end. the receiver generates a signal that it has done by sending an
acknowledgment (ACK) signal. If the data is not successfully received, the receiving device will notify that a
new transmission is necessary via a negative acknowledgment (NAK) signal.
The handshaking procedure guarantees synchronized and dependable data delivery. Additionally, it allows for
flow management, preventing the transmitting device from sending the receiving device an excessive amount
of data all at once. In order to offer flow control, handshaking signals are utilized to regulate the rate at which
data is sent.

The Handshaking Method in asynchronous data transfer is used in different devices for the transfer of data to
ensure reliable communication.

Direct Memory Access (DMA) Controller


Introduction

In modern computer systems, transferring data between input/output devices and memory can be a slow
process if the CPU is required to manage every step. To address this, a Direct Memory Access (DMA) Controller
is utilized. A Direct Memory Access (DMA) Controller solves this by allowing I/O devices to transfer data directly
to memory, reducing CPU involvement. This increases system efficiency and speeds up data transfers, freeing
the CPU to focus on other tasks. DMA controller needs the same old circuits of an interface to communicate
with the CPU and Input/Output devices.

What is a DMA Controller?

Direct Memory Access (DMA) 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 in Computer Architecture

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.

Block Diagram of DMA Controller


Working of DMA Controller

The DMA controller registers have three registers as follows.

Address register – It contains the address to specify the desired location in memory.

Word count register – It contains the number of words to be transferred.

Control register – It specifies the transfer mode.

Note: All registers in the DMA appear to the CPU as I/O interface registers. Therefore, the CPU can both read
and write into the DMA registers under program control via the data bus.

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.

Working Diagram of DMA Controller

A control command in an input/output (I/O) interface is a command that activates a peripheral device and
instructs it on what action to perform.

An interface may receive four types of commands. They are control, status, data input and data output Control
command: It is issued to activate the peripheral and to inform it what to do. Status command: It is used to test
various status conditions in the interface and the peripheral.
I/O Bus and Interface Modules
How various peripherals are connected with the processor through I/O bus.

The data bus, address bus and control bus that arise out of the processor and are intended to communicate
with I/O devices are called I/O bus. The communication link between the processor and several peripherals is
shown in the given figure. The I/O bus is connected to all peripheral interfaces. To communicate with a
particular device, the processor places a device address on the address bus. Each interface attached to the I/O
bus contains an address decoder that monitors the address lines. When the interface detects an address to be
its own, it activates the path between the bus and the device that it controls. All other peripherals are disabled.
At the same time, a function code is provided to the control bus which is called I/O command.

Communication Link between Processor and Peripherals

The types of I/O commands that are given out by the processor are:

Control Commands: This is the function code that activates the corresponding peripherals and informs them
about what to do.

Status Commands: A status command is used to test various status conditions in the interface and the
peripheral devices like BUSY, ERROR, data available or not in the buffer etc .

Data Output Command: A data output command causes the interface to respond by transferring the data
from the processor to the peripheral. The data is sent from the CPU to the buffer of interface after this
command is provided.

Data Input Command: This command is sent by the CPU if the data is to be read from the peripheral. After
this command is issued, the data of peripheral are extracted into the buffer of the interface and are read by
the CPU.

You might also like