How does memory-mapped I/O actually work? Every device that attaches to the system bus has a decoder that takes in the address wires and interprets them. If that address is within the range specified for that device, then an "activated" wire goes high, similar to the MA (memory active) wire of memory. If the address is not for that device, then the activated wire is low and the device ignores the bus. Main memory also has a decoder that enables it to ignore the read and write commands that are meant for peripheral devices. |