Figure 5.3:
a) Separate I/O and memory space. b) Memory-mapped I/O. c) Hybrid.
| 
 | 
 
- Separate I/O and memory space
- I/O controller registers appear as I/O ports
 
- Accessed with special I/O instructions
 
 
- Memory-mapped I/O
- Controller registers appear as memory
 
- Use normal load/store instructions to access
 
 
- Hybrid; x86 has both ports and memory mapped I/O
 
- Bus Architectures (see Fig. 5.4)
Figure 5.4:
a) A single-bus architecture. b) A dual-bus memory architecture.
| 
 | 
 
- A single-bus architecture; if the computer has a single bus, having everyone look at every address is straightforward
 
- A dual-bus memory architecture; the trend in modern personal computers is to have a dedicated high-speed memory bus. This bus is tailored for optimize memory performance, with no compromises for the sake of slow I/O devices. Pentium systems even have three external buses (memory, PCI, ISA)
 
 
2004-05-25