Isolated and Memory Mapped

Mapped: Here mapped means how we are going to connect memory or CPU to I/O devices.

If main memory and I/O devices are connected via a common bus, few conflicts may arise.

Conflict # 1: let CPU is asking for address 100, then we don't know which device is he referring? He may be referring either main memory address or I/O address? so to solve this conflict we have two strategies.

1. Isolated :

  1.  Here we have different instructions set for both memory and I/O device.
  2.  With isolated I/O the I/O ports are accessible only by special I/O commands,   which activate the I/O command lines on the bus.
  3.  If isolated I/O is used, there are only a few I/O instructions.
  4.  Because of less I/O instruction, it has programming efficiency.


2. Memory Mapped:

  1. Here some memory is dedicated for I/O and some for Processor. 
  2. We don't need a different instruction set.
  3. There is a relatively large instruction set 
  4. It has more programming efficiency then isolated.

Note: This diagram is taken from the book Computer Organisation and Architecture by William Stallings.