by Samarendra on April 5th, 2009

Samarendra

Question

Help answer this question below.

WHAT IS THE DIFFERENCE BETWEEN ISOLATED I/O AND MEMORY MAPPED I/O?

  • Like
  • Report

Answers. 2 helpful answers below.

  • by Pallab_C on December 16th, 2010

    Pallab_C

    Memory-mapped I/O (MMIO) and port I/O (also called port-mapped I/O (PMIO) or isolated I/O) are two complementary methods of performing input/output between the CPU and peripheral devices in a computer. Another method, not discussed in this article, is using dedicated I/O processors — commonly known as channels on mainframe computers — that execute their own instructions.
    Memory-mapped I/O (not to be confused with memory-mapped file I/O) uses the same address bus to address both memory and I/O devices, and the CPU instructions used to access the memory are also used for accessing devices. In order to accommodate the I/O devices, areas of the CPU's addressable space must be reserved for I/O. The reservation might be temporary — the Commodore 64 could bank switch between its I/O devices and regular memory — or permanent. Each I/O device monitors the CPU's address bus and responds to any of the CPU's access of address space assigned to that device , connecting the data bus to a desirable device's hardware register.
    Port-mapped I/O uses a special class of CPU instructions specifically for performing I/O. This is generally found on Intel microprocessors, specifically the IN and OUT instructions which can read and write one to four bytes (outb, outw, outl) to an I/O device. I/O devices have a separate address space from general memory, either accomplished by an extra "I/O" pin on the CPU's physical interface, or an entire bus dedicated to I/O. Because the address space for I/O is isolated from that for main memory, this is sometimes referred to as isolated I/O.
    A device's direct memory access (DMA) is not affected by those CPU-to-device communication methods, especially it is not affected by memory mapping. This is because by definition, DMA is a memory-to-device communication method that bypasses the CPU.
    Hardware interrupt is yet another communication method between CPU and peripheral devices. However, it is always treated separately for a number of reasons. It is device-initiated, as opposed to the methods mentioned above, which are CPU-initiated. It is also unidirectional, as information flows only from device to CPU. Lastly, each interrupt line carries only one bit of information with a fixed meaning, namely "an event that requires attention has occurred in a device on this interrupt line".

    • Like
    • Report

    No comments. Post one | Permalink

  • by nick on November 18th, 2009

    nick

    what are the advantage & disadvantage of Isolated I/O and Memory Mapped I/O

    No comments. Post one | Permalink

Want to attach an image to your answer? Click here.

Did this answer your question? If not, then ask a new question or create a poll.

You're reading WHAT IS THE DIFFERENCE BETWEEN ISOLATED I/O AND MEMORY MAPPED I/O?

Follow us on Facebook!

Related Ads

ANSWERBAG BUZZ

Isolated i o
Isolated I O
Isolated I O
Two advantages and two disadvantages between memory mapped I O and isolated I O
Advantages and disadvantages between memory mapped I O and isolated I O