29.01.2015 Views

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

State Space Compression in History 273<br />

In the case of the MPEG example the improvements achieved when using<br />

the hash table are spectacular. This is mainly due to the presence of many<br />

quasi-equivalent paths.<br />

A noteworthy aspect is that due to the employment of search heuristics to<br />

select the next ECS to fire, the schedules obtained when using hash tables can<br />

be different from those generated in their absence. As can be <strong>de</strong>duced from<br />

the <strong>for</strong>mer tables, the number of different states in the schedule tends to be<br />

lower when the hash table is used. Since the reachability graph needs to be<br />

traversed by the co<strong>de</strong> generation phase, this means that the obtained schedule<br />

could potentially be more efficient and help to produce co<strong>de</strong> of better quality.<br />

6. CONCLUSIONS<br />

In this paper we have addressed the problem of reducing the solution space<br />

explored during quasi-static scheduling in a software synthesis methodology<br />

<strong>for</strong> one-processor, embed<strong>de</strong>d, reactive systems.<br />

We have studied different ways to compress the state space to reduce the<br />

size of the schedule. We have shown that the structure of the specification<br />

PN can be examined to i<strong>de</strong>ntify sequences of traces that could be fired at once<br />

during the scheduling with the help of marking equations. Further, we have<br />

shown that a scheme based on the use of efficient hash tables provi<strong>de</strong>s an<br />

effective way to eliminate state repetitions.<br />

The experimental results we have obtained <strong>de</strong>monstrate the usefulness of<br />

our technique, yielding outstanding reductions in the CPU time and memory<br />

consumed by the scheduling algorithm <strong>for</strong> large-scale, real world problems.<br />

ACKNOWLEDGEMENTS<br />

This work is partly supported by MCYT projects TIC2000-0583-C02 and<br />

HI2001-0033.<br />

NOTE<br />

1<br />

This requirement does not impose restrictions because any PN with self-loops can be trans<strong>for</strong>med<br />

into self-loop-free PN by inserting dummy transitions.<br />

REFERENCES<br />

l.<br />

2.<br />

A. V. Aho, R. Sethi and J. D. Ullman. Compilers: Principles, Techniques and Tools. Addison<br />

Wesley, 1986.<br />

Corta<strong>de</strong>lla, J. et al. “Task Generation and Compile-Time Scheduling <strong>for</strong> Mixed Data-Control<br />

<strong>Embed<strong>de</strong>d</strong> <strong>Software</strong>.” In Design Automation Conference, pp. 489–494, 2000.

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

Saved successfully!

Ooh no, something went wrong!