NETWORK-BASED
DESIGN:
Designing
a distributed embedded system around a network involves some of the same design
tasks we faced in accelerated systems. We must schedule computations in time
and allocate them to PEs. Scheduling and allocation of communication are
important additional design tasks required for many distributed networks.
Many
embedded networks are designed for low cost and therefore do not provide
excessively high communication speed. If we are not careful, the network can
become the bottleneck in system design. In this section we concentrate on
design tasks unique to network-based distributed embedded systems.
We know
how to analyze the execution time of programs and systems of processes on
single CPUs, but to analyze the performance of networks we must know how to determine
the delay incurred by transmitting messages. Let us assume for the moment that
messages are sent reliably we do not have to retransmit a message.
The message
delay for a single message with no contention (as would be the case in
a point-to-point connection) can be modeled as
where tx is the transmitter-side
overhead, tn is the
network transmission time, and tr
is the receiver-side overhead. In I2C, tx and tr
are negligible relative to tn
If
messages can interfere with each other in the network, analyzing communication
delay becomes difficult. In general, because we must wait for the network to
become available and then transmit the message, we can write the message delay as
where td is the network availability delay
incurred waiting for the network to become available. The main problem,
therefore, is calculating td.
That value depends on the type of arbitration used in the network.
If the
network uses fixed-priority arbitration, the network availability delay is
unbounded for all but the highest-priority device. Since the highest-priority
device always gets the network first, unless there is an application-specific
limit on how long it will transmit before relinquishing the network, it can
keep blocking the other devices indefinitely.
If the
network uses fair arbitration, the network availability delay is bounded. In
the case of round-robin arbitration, if there are N devices, then the worst case network availability delay is N(tx+tarb),where tarb is the
delay incurred for arbitration. tarb is usually small compared to
transmission time.
Of
course,a round-robin arbitrated network puts all communications at the same
priority. This does not eliminate the priority inversion problem because
processes still have priorities. Thus far we have assumed a single-hop
network: A message is
received at its intended destination directly from the source,without going
through any other network node.
It is
possible to build multihop networks in which messages are routed through network
nodes to get to their destinations. (Using a multistage network does not
necessarily mean using a multihop network—the stages in a multistage network
are generally much smaller than the network PEs.) Figure 4.5 shows an example
of a multihop communication.
The
hardware platform has two separate networks ( perhaps so that communications
between subsets of the PEs do not interfere),but there is no direct path from M1 to M5.The message is therefore routed through M3, which reads it from one network and sends it on to the other
one.
Analyzing
delays through multihop systems is very difficult. For example,the time that
the message is held at M3 depends on
both the computational load of M3 and
the other messages that it must handle.
If there
is more than one network,we must allocate communications to the networks. We
may establish multiple networks so that lower-priority communications can be
handled separately without interfering with high-priority communications on the
primary network.
Scheduling
and allocation of computations and communications are clearly interrelated. If
we change the allocation of computations, we change not only the scheduling of
processes on those PEs but also potentially the schedules of PEs with which they
communicate.
For
example, if we move a computation to a slower PE, its results will be available
later, which may mean rescheduling both the process that uses the value and the
communication that sends the value to its destination.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.