Information Technology Reference
In-Depth Information
Figure 9.13, the output node is placed on the right hand side of the inputs, so all
the nodes should direct their waves to the right. First each node that has a value 1
turns off its left switch to direct the wave to the right. Next, it sends out a spin
wave with an amplitude equal to its index and immediately turns off its right
switch to block the wave coming from its left hand side. As a result, the output
node will just receive the spin wave sent by the highest priority 1-valued node. This
analog value is converted to digital at the output node.
One application of priority encoder can the control of interrupt requests to a
processor in a computer system. Since several interrupts might occur at the same
time, a mechanism is required to determine which request should be handled. In
such a scenario, a priority encoder can be used to identify the interrupting signal
with the highest priority.
S PIN - WAVE P ROGRAMMABLE P RIORITY E NCODER . Similar to a priority encoder, a
programmable priority encoder is used to select one of the several events that can
occur simultaneously; however, in a programmable priority encoder, this selection is
not according to a predefined order, but at an order defined at run-time. The output
represents the index of the highest priority 1-valued input.
The structure of a spin-wave programmable priority encoder is shown in
Figure 9.14. This design includes a digital to analog converter, a shifter, and a
priority encoder. First, the analog value of p, which shows the highest priority
node's index, is found by the digital to analog converter on frequency f adc . At this
step, the receiving frequency of all the nodes, including the input and the output
nodes, is tuned on f adc , so all receive p.
In the next step, the data is rotated p times, so that the highest priority node is
mapped to the closest node to the output. For rotating the data, each input node
computes the sum of p and its index and finds the frequency of the destination
node to which it should sent its data. For node x i , the index of the destination
would be (i+p) mod N.
After the rotation is done, the next step will be finding the index of the highest
priority node that contains a 1. This step is performed as discussed in the
implementation of a priority encoder. The spin-wave switches let the index of
y k 1
y 0
...
x 0
Binary
priority input
N = 2 k
Input
A/D
y 0
x N 1
y
p k 1
p k 2
p 0
x 0
x i
x index
...
...
...
...
x i
y i
1
P
1
2
index
f index
y k 1
Digital to analog
converter
Index = (i+p) mod N
x N 1
...
p k 1
p 0
Figure 9.14. Structure of a nanoscale spin-wave programmable priority encoder.
Search WWH ::




Custom Search