23.03.2017 Views

wilamowski-b-m-irwin-j-d-industrial-communication-systems-2011

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

34-12 Industrial Communication Systems<br />

8: else;<br />

9: cycle1 = cycle1 + 1;<br />

10: ctrl = FALSE;<br />

11: repeat<br />

12: if load[cycle1] + Vp[i,2] =<br />

(cycle + (Vp[i,1] div μCy)));<br />

16: if cycle1 >= (cycle + (Vp[i,1]<br />

div μCy) ) then<br />

17: bat[i,cycle1] = 1;<br />

18: load[cycle1] = load[cycle1] + 1;<br />

19: cycle = cycle + (Vp[i,1] div μCy)<br />

20: else<br />

21: /* MARK Vpi NOT SCHEDULABLE with<br />

RM Algorithm */<br />

22: cycle = cycle + (Vp[i,1] div μCy)<br />

23: end if<br />

24: end if<br />

25:until cycle > N<br />

26:end for<br />

return bat;<br />

------------------------------------------------------------------------<br />

Note that by using the RM algorithm some of the variables with longer periods can be scheduled in<br />

subsequent microcycles, thus inducing an increased <strong>communication</strong> jitter. For example, if the network<br />

data rate is 1.Mbps instead of 2.5.Mbps (Cp i = (64 + 80)/1 + 2 × 20 = 184.μs), a microcycle is only able to<br />

schedule up to five periodic buffer transfers (Table 34.4, Figure 34.9).<br />

34.5.5.3 Setting the WorldFIP BAT: Earliest Deadline Approach<br />

Assume now the set example shown in Table 34.5, in which all Cp = 0.30.ms.<br />

With the RM approach, the first request for Vp F would miss the deadline. In this case, the macrocycle<br />

is six microcycles (Table 34.6). In fact, there is no empty slot for a variable in the first three microcycles.<br />

When compared to the RM scheduling, one of the known advantages of the earliest deadline first (EDF)<br />

scheduling is that it allows a better utilization [4].<br />

TABLE 34.4 BAT (RM) for Modified Example of Table 34.1<br />

Microcycle<br />

1 2 3 4 5 6 7 8 9 10 11 12<br />

bat [A, cycle] 1 1 1 1 1 1 1 1 1 1 1 1<br />

bat [B, cycle] 1 0 1 0 1 0 1 0 1 0 1 0<br />

bat [C, cycle] 1 0 0 1 0 0 1 0 0 1 0 0<br />

bat [D, cycle] 1 0 0 0 1 0 0 0 1 0 0 0<br />

bat [E, cycle] 1 0 0 0 1 0 0 0 1 0 0 0<br />

bat [F, cycle] 0 1 0 0 0 0 1 0 0 0 0 0<br />

© <strong>2011</strong> by Taylor and Francis Group, LLC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!