I/O MODULE FUNCTIONS


 I/O   MODULE FUNCTIONS

·       Control & Timing.
·       CPU Communication
·       Device Communication
·       Data Buffering
·       Error Detection

I/O  steps

         CPU checks I/O module device status
         I/O module returns status
         If ready, CPU requests data transfer
         I/O module gets data from device

         I/O module transfers data to CPU

A)  Input Output Techniques :

         1)   Programmed  I/O
2)   Interrupt driven  I/O
3)Direct Memory Access (DMA)


1)      Programmed I/O

·       CPU  has direct control over I/O for :
·       Sensing status
·       Read/write commands.
·       Transferring data
·          CPU waits for  I/O module to complete operation.
·          Wastes CPU time.

-> Programmed  I/O in  detail
         CPU requests I/O operation
         I/O module performs operation
         I/O module sets status bits
         CPU checks status bits periodically
         I/O module does not inform CPU directly
         I/O module does not interrupt CPU
         CPU may wait or come back later

-> I/O Commands
·       Control - telling module what to do. (e.g. spin up disk)
·       Test - check status
·       Read/Write

2)      Interrupt  Driven I/O 
      ·       Overcomes CPU waiting
      ·       No repeated CPU checking of device
      ·       I/O module interrupts when ready

-> Interrupt  Driven  I/O in detail

         CPU  issues read command
         I/O module gets data from peripheral while  CPU does other work
         I/O module interrupts CPU
         CPU requests data
         I/O module transfers data


CPU Viewpoint
         Issue read command
         Do other work
         Check for interrupt at end of each instruction cycle
         If  interrupted:-
  Save context (registers)
  Process interrupt
      Fetch data & store
1)      Direct Memory Access :
         Interrupt driven and  programmed  I/O require active CPU intervention , because
·       Transfer  rate is limited
·       CPU  is tied up
DMA Function
         Additional Module (hardware) on bus.
         DMA controller takes over from CPU for I/O
DMA Operation
         CPU tells DMA controller:-
  Read/Write
  Device address
  Starting address of memory block for data
  Amount of data to be transferred
         CPU carries on with other work
         DMA controller deals with transfer
         DMA controller sends interrupt when finished



Newest
Previous
Next Post »