Welcome to electrical and electronics engineering discussion website, Please login or register to continue.

Explain the advantages and disadvantages of using memory I/O and standard I/O.

Please log in or register to answer this question.

1 Answer

0 votes

Memory mapped I/O and standard I/O are the two methods for communicating microprocessor with peripherals.

Processor talks to both memory and peripheral using the same bus.
Two ways to talk to a peripheral.

  1. Memory mapped I/O
  2. Standard I/O

Memory mapped I/O: 

  • Peripheral registers occupy addresses in same address space as memory.
  • e.g. Bus has 16-bit address.
  • Lower 32k addresses may correspond to memory.
  • Upper 32k addresses may correspond to peripherals.
  • Requires no special instructions.
  • Assembly instructions involving memory like MOV and ADD work with peripherals as well.
  • Standard I/O requires special instructions (e.g. IN, OUT) to move data between peripheral registers and memory.
  • The advantage of memory mapped I/O is that microprocessor need not include special instructions for communicating with peripherals.

Standard I/O (I/O mapped I/O): 

  • Additional pin (M/IO) on bus indicates whether a memory or peripheral access.
  • Standard I/O is also known as I/O mapped I/O.
  • e.g. Bus has 16-bit address
  • All 64k addresses correspond to memory when M/IO set to 0.
  • All 64 addresses correspond to peripherals when M/IO set to 1.
  • No loss of memory addresses to peripherals.
  • Simpler address decoding logic in peripherals possible.
  • When the number of peripherals much smaller than address space then high order address bits can be ignored.
  • Smaller and/or faster comparators.
  • The advantage of standard I/O is no loss of memory addresses to the use as I/O addresses.

Related questions

0 answers 27 views
1 answer 33 views
2 answers 41 views
1 answer 35 views

Welcome to Q&A site for electrical and electronics engineering discussion for diploma, B.E./B.Tech, M.E./M.Tech, & PhD study.
If you have a new question please ask in English.
If you want to help this community answer these questions.