Page 110 -
P. 110
3.3 / INTERCONNECTION STRUCTURES 83
complete (t = 35) is the printer ISR resumed.When that routine completes (t = 40),
control finally returns to the user program.
I/O Function
Thus far, we have discussed the operation of the computer as controlled by the
processor, and we have looked primarily at the interaction of processor and mem-
ory. The discussion has only alluded to the role of the I/O component. This role is
discussed in detail in Chapter 7, but a brief summary is in order here.
An I/O module (e.g., a disk controller) can exchange data directly with the
processor. Just as the processor can initiate a read or write with memory, designat-
ing the address of a specific location, the processor can also read data from or write
data to an I/O module. In this latter case, the processor identifies a specific device
that is controlled by a particular I/O module. Thus, an instruction sequence similar
in form to that of Figure 3.5 could occur, with I/O instructions rather than memory-
referencing instructions.
In some cases, it is desirable to allow I/O exchanges to occur directly with
memory. In such a case, the processor grants to an I/O module the authority to read
from or write to memory, so that the I/O-memory transfer can occur without tying
up the processor. During such a transfer, the I/O module issues read or write com-
mands to memory, relieving the processor of responsibility for the exchange. This
operation is known as direct memory access (DMA) and is examined Chapter 7.
3.3 INTERCONNECTION STRUCTURES
A computer consists of a set of components or modules of three basic types (proces-
sor, memory, I/O) that communicate with each other. In effect, a computer is a net-
work of basic modules.Thus, there must be paths for connecting the modules.
The collection of paths connecting the various modules is called the
interconnection structure. The design of this structure will depend on the exchanges
that must be made among modules.
Figure 3.15 suggests the types of exchanges that are needed by indicating the
major forms of input and output for each module type: 2
• Memory: Typically, a memory module will consist of N words of equal length.
Each word is assigned a unique numerical address (0, 1, . . . , N – 1).A word of
data can be read from or written into the memory.The nature of the operation
is indicated by read and write control signals.The location for the operation is
specified by an address.
• I/O module: From an internal (to the computer system) point of view, I/O is
functionally similar to memory.There are two operations, read and write. Fur-
ther, an I/O module may control more than one external device. We can refer
to each of the interfaces to an external device as a port and give each a unique
address (e.g., 0, 1,..., M – 1). In addition, there are external data paths for the
2 The wide arrows represent multiple signal lines carrying multiple bits of information in parallel. Each
narrow arrows represents a single signal line.

