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.

A Flexible Object-Oriented <strong>Software</strong> Architecture 115<br />

Building upon these hardware plat<strong>for</strong>ms, a set of operating systems resembles<br />

a first abstraction layer. This abstraction is meant to provi<strong>de</strong> flexibility<br />

with respect to the OS: while currently, eCos is used, future plat<strong>for</strong>ms of<br />

the family may promote a switch to a different operating system (<strong>for</strong> reasons<br />

of support, efficiency, etc.). By consi<strong>de</strong>ring this possibility right from the start<br />

on, the flexibility of the entire <strong>de</strong>sign is increased.<br />

The central element is a middleware plat<strong>for</strong>m, implemented as a framework<br />

architecture. Correspondingly, it resembles the glue between (variable)<br />

operating systems on different hardware plat<strong>for</strong>ms on the one hand and a<br />

number of product lines on the other hand. The purpose of this middleware<br />

is to abstract from the un<strong>de</strong>rlying hardware and operating systems and offer<br />

a well-<strong>de</strong>fined (UML-mo<strong>de</strong>led) API <strong>for</strong> application <strong>de</strong>velopment.<br />

Consequently, product line mo<strong>de</strong>ling builds upon the middleware.<br />

Assuming an efficient, well-<strong>de</strong>fined API, product lines can be <strong>de</strong>signed<br />

without the need of individual adaptations to specifics of the hardware and<br />

OS, which reduces <strong>de</strong>velopment time should further product lines have to be<br />

ad<strong>de</strong>d. On the other hand, mo<strong>de</strong>ling product lines instead of concrete applications<br />

reduces the <strong>de</strong>velopment time required if further product variants are<br />

<strong>de</strong>fined.<br />

As the UML mo<strong>de</strong>ling tool of choice, we selected ARTiSAN Real-Time<br />

Studio, primarily because of its UML 1.4 support and its customizable,<br />

template-based co<strong>de</strong> generator.

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

Saved successfully!

Ooh no, something went wrong!