Although DMA controllers could be designed around a veriety
of configurations all of these configurations must satisfy certain
requirements.

During a block input byte transfer the following sequence occures as the
datum is sent from the interface to the memory:
- The interface sends the controller a request for DMA service
- The controller gains control of the bus
- The contents of the address register are put on the address bus
- The controller sends the interface a DMA acknowledgment which tells the
interface to put data on the data bus (For an output it signals the interface
to latch the next data placed on the bus)
- The data byte is transferred to the memory location indicated by the
address bus
- The controller relinquishes the bus
- The address register is incremented by 1
- The byte count register is decremented by 1
- If the byte count register is nonzero return to step 1; otherwise stop
The controller/interface design shows bidirectional address lines connected
to the controller and only unidirectional address lines going to the interface.