A TREE-STRUCTURED DICTIONARY
MACHINE
In dealing with circuit-level designs, we essentially proceed
in a direction that is the
reverse of what is done in the rest of the book: Rather than
defining a ge
PARALLEL ARCHITECTURES FOR
FFT
an eight-point FFT network that is derived directly from
the
divide-and-conquer computation scheme of Section 8.5.
Each circular node performs a
multiplyadd computation.
PARALLEL PREFIX NETWORKS
For the sake of brevity and concreteness, we will discuss
the design of circuits for
computing parallel prefix sums with unsigned integer
inputs, i.e., the operator is taken t
PARALLEL PREFIX COMPUTATION
Parallel prefix computation was defined in Section 2.1,
with several algorithms provided
subsequently in Sections 2.3 (linear array), 2.4 (binary
tree), 2.5 (2D mesh), and
MESH-CONNECTED COMPUTERS
A 2D mesh of processors was defined in Section 2.2 and
some simple algorithms for it
were presented in Section 2.5. This section covers a
complete definition for the simple 2D
THE SHEARSORT ALGORITHM
The shearsort algorithm was described without proof, in
Section 2.5. Here, we look at
the algorithm in more detail and provide a proof of its
convergence and correctness. As an
TYPES OF DATA ROUTING
OPERATIONS
Most of our discussion will focus on packet data routing or
packet switching where a
packet is an atomic unit of data transfer. A packet may be
a complete message, con
ACHIEVING THE LOWER BOUND
In this section, we describe a sorting algorithm, reported
by Schnorr and Shamir
[Schn86], that comes very close to the 3 lower bound of
Section 9.5 in terms of its running
t
RECURSIVE SORTING
ALGORITHMS
A recursive algorithm for sorting on a square mesh, based
on four-way divideandconquer strategy, is shown in Fig. 9.10. The algorithm
consists of four phases.
First recurs
VARIANTS OF SIMPLE SHEARSORT
Shearsort can be terminated earlier in some cases because
sorting is complete when no
exchange occurs during a row sort or a column sort. In
practice, one cannot take adva