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

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

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

Chapter 15<br />

HARDWARE/SOFTWARE PARTITIONING OF<br />

OPERATING SYSTEMS<br />

The Hardware/<strong>Software</strong> RTOS Generation<br />

Framework <strong>for</strong> <strong>SoC</strong><br />

Vincent J. Mooney III<br />

School of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, GA,<br />

USA<br />

Abstract. We present a few specific hardware/software partitions <strong>for</strong> real-time operating systems<br />

and a framework able to automatically generate a large variety of such partitioned RTOSes.<br />

Starting from the traditional view of an operating system, we explore novel ways to partition<br />

the OS functionality between hardware and software. We show how such partitioning can result<br />

in large per<strong>for</strong>mance gains in specific cases involving multiprocessor System-on-a-Chip scenarios.<br />

Key words: hardware/software partitioning, operating systems<br />

1. INTRODUCTION<br />

Traditionally, an Operating System (OS) implements in software basic system<br />

functions such as task/process management and I/O. Furthermore, a Real-Time<br />

Operating Systems (RTOS) traditionally implements in software functionality<br />

to manage tasks in a predictable, real-time manner. However, with<br />

System-on-a-Chip (<strong>SoC</strong>) architectures similar to Figure 15-1 becoming more<br />

and more common, OS and RTOS functionality need not be imple-mented<br />

solely in software. Thus, partitioning the interface between hard-ware and<br />

software <strong>for</strong> an OS is a new i<strong>de</strong>a that can have a significant impact.<br />

We present the hardware/software RTOS generation framework <strong>for</strong><br />

System-on-a-Chip (<strong>SoC</strong>). We claim that current <strong>SoC</strong> <strong>de</strong>signs tend to ignore<br />

the RTOS until late in the <strong>SoC</strong> <strong>de</strong>sign phase. In contrast, we propose<br />

RTOS/<strong>SoC</strong> co<strong>de</strong>sign where both the multiprocessor <strong>SoC</strong> architecture and a<br />

custom RTOS (with part potentially in hardware) are <strong>de</strong>signed together.<br />

In short, this paper introduces a hardware/software RTOS generation<br />

framework <strong>for</strong> customized <strong>de</strong>sign of an RTOS within specific pre<strong>de</strong>fined<br />

RTOS services and capabilities available in software and/or hardware<br />

(<strong>de</strong>pending on the service or capability).<br />

187<br />

A Jerraya et al. (eds.), <strong>Embed<strong>de</strong>d</strong> <strong>Software</strong> <strong>for</strong> SOC, 187–206, 2003.<br />

© 2003 Kluwer Aca<strong>de</strong>mic Publishers. Printed in the Netherlands.

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

Saved successfully!

Ooh no, something went wrong!