PIO

PIO (Programmed input/output) is a method of transferring data between the CPU and a peripheral, such as for example a network interface controller or an ATA storage controller.

=Overview= In general, programmed I/O happens when software running on the CPU uses instructions that access I/O address space to perform data transfers to or from an I/O device. This is in contrast to DMA (Direct Memory Access) transfers.

The best known example of a PC device that uses programmed I/O is the ATA interface; however, this interface can also be operated in any of several DMA modes. Many older devices in a PC also use PIO, including legacy serial ports, legacy parallel ports when not in ECP mode, the PS/2 keyboard and mouse ports, legacy MIDI and joystick ports, the interval timer, and older network interfaces.

= PIO on Allwinner SoCs =
 * A10 PIO Guide
 * A10s PIO Guide
 * A13 PIO Guide
 * A20 PIO Guide
 * H3 PIO Guide

= External links =
 * Programmed input/output (PIO) article on Wikipedia