Structure
There are two ways that processors may be connected, which result in tightly coupled or loosely coupled machines. Tightly coupled machines share a common memory bank, and communicate through memory. Therefore, if one processor would like to send a value to another processor, it would put that information in memory, which would then be accessed by the other processor. A loosely coupled machine is a group of processors that each contain their own banks of memory. These machines communicate through network cables, and each processor could function on its own.
Communication
There are several ways to set up processors, which affects how they can communicate with each other. While there are many ways to set up the connection network between processors, these are some basic configurations for a loosely coupled machine.
Pictured on the left is a fully connected network. Each processor is connected to all the others, which means that it takes only one step to send information from one processor to another, no matter how many processors there are. It is very fast, the fastest possible, but it requires extensive wiring. It is also very reliable since there are very many ways to get from one processor to another.
|
On the right is a linear network configuration. This is the slowest organization of the processors, but it requires the least amount of wires. Spreading information can take some time because it could have to go through all but one processor, if the processors on the ends are involved. If p represents the number of processors, it will take p - 1 steps to complete. It also has a problem with reliability because a single damaged wire would prevent connection to any processors on the other side of the damage.
|
Pictured here is a ring network connection, where a processor is at each vertex. This configuration is basically a linear organization, but the ends are connected. It requires only slightly more wiring (it only adds one extra connection), and cuts the possible amount of steps in half. This means that if there are p processors, it will take p/2 steps to complete at the most. It is more reliable than a linear configuration, as well, because there are two ways to get to each processor.
|
This is a mesh configuration, where the processors are arranged in a grid, at each vertex shown. This is a more complicated configuration that requires more elaborate wiring than a linear layout. The amount of steps needed to to send information changes are the amount of processors changes. The more processors, the more efficient it is. With only nine processors, as shown here, it is equally as efficient than a ring configuration, with a significantly greater amount of wiring. At nine processors, a ring configuration and a mesh configuration would take 4 steps at most. At twelve processors, however, the mesh configuration only takes five steps, while the ring would take six. It is also highly reliable because there are many ways to get from one processor to the next.
|