Memory Mapped I/O and Isolated I/O are two methods of performing input-output operations between CPU and installed peripherals in the system. Memory mapped I/O uses the same address bus to connect both primary memory and memory of hardware devices. Thus the instruction to address a section or portion or segment of RAM can also be used to address a memory location of a hardware device.
On the other hand, isolated I/O uses separate instruction classes to access primary memory and device memory. In this case, I/O devices have separate address space either by separate I/O pin on CPU or by entire separate bus. As it separates general memory addresses with I/O devices, it is called isolated I/O.
Read More: What are memory mapped I/O and isolated I/O?
Differences Between Isolated I/O and Memory Mapped I/O:
Isolated I/O
|
No.
|
Memory Mapped I/O
|
Isolated I/O uses separate memory space.
|
01
|
Memory mapped I/O uses memory from the main memory.
|
Limited instructions can be used. Those are IN, OUT, INS, OUTS.
|
02
|
Any instruction which references to memory can be used.
|
The addresses for Isolated I/O devices are called ports.
|
03
|
Memory mapped I/O devices are treated as memory locations on the memory map.
|
IORC & IOWC signals expands the circuitry.
|
04
|
IORC & IOWC signals has no functions in this case which reduces the circuitry.
|
Efficient I/O operations due to using separate bus
|
05
|
Inefficient I/O operations due to using single bus for data and addressing
|
Comparatively larger in size
|
06
|
Smaller in size
|
Uses complex internal logic
|
07
|
Common internal logic for memory and I/O devices
|
Slower operations
|
08
|
Faster operations
|