Saturday, October 17, 2015

Programmed I/O and I/O mapped I/O

Memory mapped I/O is mapped into the same address space as program memory and/or user memory, and is accessed in the same way. I/O mapped I/O (also known as port mapped I/O) uses a separate, dedicated
address space and is accessed via a dedicated set of microprocessor instructions. If you're using a microprocessor or microcontroller that doesn't support port mapped I/O, then you have to use memory mapped I/O.

Microprocessors that support port mapped I/O include Intel x86 and compatible processors, and also the Zilog Z80 and Intel 8080.
Microprocessors that DON'T support port mapped I/O (and hence require the use of memory mapped I/O) include the Motorola 6800 and the MOS Technology 6502.
The advantage of port mapped I/O is that it makes for neater code and requires fewer external components to implement I/O. However, it adds to the complexity and pin count of the microprocessor itself.

No comments:

Post a Comment