Sei sulla pagina 1di 11

Al-jazi Al-shoreihi AlAlBayan Al-hamdan AlThuria Al-ojaimi AlLena Al-sabr AlNora Al-monif Al-

I/O (input/output), program, or device that transfers data to or from a computer. Typical I/O devices are printers, hard disks, keyboards, and mouses. In fact, some devices are basically inputonly devices (keyboards and mouses); others are primarily output-only devices (printers); and others provide both input and output of data (hard disks, CD-ROMs). You should know what's I/O before I start my presentation today im going to talk about how I\O really works .

IOP :

Communicate directly with all I/O devices Fetch and execute its own instruction Designed to handle the details of I/O processing
Ce ntral Pro c e s s ing unit (CPU) Me m o ry b u s Pe riphe ral de vic e s PD PD PD PD

Me mo ry unit

Input- o utput pro c e s s o r (IOP)

I/O bus

Command Instruction that are read form memory by an IOP Distinguish from instructions that are read by the CPU Commands are prepared by experienced programmers and are stored in memory Command words = IOP program

CPU operation Send instruction to test IOP path If status OK. send start I/O instruction to IOP CPU continues with another program

IOP operation Transfer status word to memory location Access memory for IOP program

Conduct I/O transfers using DMA ; prepare status report I/O transfer completed; Interrupt CPU Transfer status word to memory location

Request IOP status Check status word for correct transfer CONTINUE

The IOP takes care of all data transfers between several I/O units and the memory while the CPU is processing another program. *The IOP and CPU are competing for the use of memory, so the number of devices that can be in operation is limited by the access time of the memory. It is not possible to saturate the memory by I/O devices in most system, as the speed of most devices is much slower than the CPU. Some very fast units, such as magnetic disks, can use an appreciable number of the available memory cycles. In that case, the speed of the CPU may deteriorate because it will often have to wait for the IOP to conduct memory transfers.

The CPU communicate with channels in two ways: Directly : through dedicated control lines in a memory. Indirectly : through reserved storage areas in a memory.

(a) I/O instruction format.

(b) Channel statues word format.

(c) Channel command word format.

A typical computer system configuration includes a number of channels. Each channel attached to one or more I/O devices . There are three types of channels :
channels

1-multiplexer

2-selector

3-Blockmultiplexer

Slow-meduium Speed device

High speed device

Combines 1&2

A microcomputer system use the Intel 8089 as a IOP with the 8086 as a CPU IOP\CPU share common memory throw bus controller. IOP Use local bus to communicate with Interfaces units connected to I/O devices. The CPU initiates an I/O operation by building a message in memory that describes the function to be performed. The 8089 IOP reads the message from memory, carries out the operation, and notifies the CPU when it has finished.

8 08 6 CPU

attention

Interrupt

Channel

Select

Bus Co ntro lle r

S ys te m b us

Me m o ry unit

8 08 9 IO P

Lo c a l b us

In te rfa c e

In te rfa c e

In p ut d e vic e

O utp ut d e vic e

8086 CP U

Channel attention

Interrupt

Select

Bus Co n tro lle r

S ys te m b us

Me m o ry un it

busy flag indicates whether the IOP is busy or not. CCW (channel command word) indicate the type of operation. The parameter block contains variable data that the IOP program must use in carrying out its task The task block contains the actual program to be executed in the IOP.

8089 IO P

Lo c a l b us

In te rfa c e

In te rfa c e

In p ut d e vic e

Outp ut d e vic e

Control bloc k Bus y CCW

Parameter bloc k TB addres s Memory addres s Byte count Devic e addres s Trac k and s ec tor S tatus

Tas k block

PB addres s

8089 IOP program

How the CPU communicate with 8089 IOP ? 1-CPU check the busy flag & ensure that the IOP is available then obtain use of memory. 2- CPU fills in the information in the parameter block & writes a "start operation" command in the CCW. 3-The CPU write a message for IOP and enable the channel attention line. 4- The IOP starts executing the program in the task block using the information in the parameter block. 5- When the I/O operation is completed, the IOP stores its status bits in the status word location of the parameter block. 3-issues an interrupt request to CPU.

Potrebbero piacerti anche