Design and Implementation of TinyGALS: A Programming Model for ...
Design and Implementation of TinyGALS: A Programming Model for ...
Design and Implementation of TinyGALS: A Programming Model for ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Application definition.<br />
include modules{<br />
count;<br />
leds;<br />
};<br />
count_out -> leds_in 50<br />
START@ count_start<br />
Figure 6: Definition <strong>of</strong> the application shown in Figure 1.<br />
line in the definition says that the system start port is count_start. Note that arguments<br />
(initial data) may be passed to the system start port on the same line.<br />
Using the tuple notation given in Equation 3, the example application can be defined as<br />
2.3 <strong>TinyGALS</strong> Semantics<br />
A = (MODULESA = [count,leds],<br />
GLOBALSA = /0,<br />
VARMAPSA = /0,<br />
CONNECT IONSA = [(count out,leds in)],<br />
STARTA = count start).<br />
In this section, we discuss the semantics <strong>of</strong> execution within a component, between com-<br />
ponents within a module, <strong>and</strong> between modules within an application. We also include a<br />
discussion <strong>of</strong> the conditions <strong>for</strong> well-<strong>for</strong>medness an application.<br />
2.3.1 Assumptions<br />
The <strong>TinyGALS</strong> architecture is intended <strong>for</strong> a plat<strong>for</strong>m with a single processor. All mem-<br />
ory is statically allocated; there is no dynamic memory allocation. A <strong>TinyGALS</strong> program<br />
13