the context switch overhead is reduced when the
number of RFs is approaching the number of task.
This experiment shows that our MRF makes
possible to properly execute6 applications with
starvations.
4.4 Area Overhead
We compare the additional area of RFs. The
proportion of single RF in VHDL-original excluding
the program and data memory is about 21%. We
compared the area proportions which come from
HDL synthesis tools, while changed the number of
RFs from 2 to 6 in Virtex-4 FPGA. Figure 5 shows
the result.
Figure 5: Comparison about area.
Figure 5 shows that the total area including
MUX, DEMUX and a select buffer, a special RF
increases proportionally to the number of RF in
FPGA. When the number of RF is 5 the total area is
almost double than original architecture in FPGA.
But in this experiment we didn’t implement the
memories in ATmega103 and the CPU area
including RF occupies very small amount in the
whole chip set so that the increasing area by adding
RFs is to be negligible.
5 CONCLUSIONS
In this paper, we presented MRF architecture and a
task to RF mapping algorithm based on RM
scheduling for fast task context switch. Our MRF
architecture makes faster response time possible by
reducing store and restore task context. We also
propose the mapping algorithm between tasks and
RFs which guarantees that the most frequently
executing tasks can have their own RFs. We
implemented ATmega103 by using VHDL and
FPGA for experiment and modified uC/OS-II to run
tasks on MRF architecture. As we expected the total
area increased linearly by adding more RFs but we
can reduce task context switching overheads by 23%,
shown as figure 3. And we can run the tasks
properly when starvation is occurred in our MRF
architecture.
We just assume static-priority scheduling
algorithm on MRF architecture, in the future, we
have to research other scheduling algorithms on the
MRF like EDF. Also, we need to research another
evaluation method, e.g. count instructions, count
time ticks. Finally we have to compare the result
among other solutions to ensure.
REFERENCES
John A. Stankovic. R. Rajkumar, 2004. The book, Kluwer
Academic Publishers. "Real-Time Operating System,"
Real-Time Systems.
Philip A. Laplante, 1996. The book, Real-Time systems
Design and Analysis: An Engineer
’
s Handbook,
Second Edition.
Hassan Gomaa, 2000. Designing Concurrent,
Distributed, and Real-Time Applications with
UML.
Dan Tsafrir, 2007. "The context-switch overhead inflicted
by hardware interrupts (and the enigma of do-nothing
loops)," Experimental computer science on
Experimental computer science.
David B. Stewart and Michael Barr, 2002. Paper.
Introduction to Rate Monotonic Scheduling,
Embedded Systems Programming.
J. S. Snyder, D. B. Whalley, and T. P. Baker, 1995. Paper.
Fast context swtiches: Compiler and architectural
support for preemptive scheduling. Microprocessors
and Microsystems.
X. Zhou and P. Petrov, 2006. Paper. Rapid and low-cost
context-switch through embedded processor
customization for real-time and control applications.
Proceedings of the 43rd annual Conference on Design
Automation.
R. Alverson, D. Callahan, D. Cummings, B. koblenz, A.
Porterfield, and B. Smith, 1990. Paper. The Tera
computer system. Proceedings of the 1990
International Conference on Supercomputing,
M. Adiletta, M. Rosenbluth, D. Bernstein, G. Wolrich, and
H. Wilkinson. 2002. Paper. The next generation of
intel ixp network processors. Intel Technology Journal.
P. Kongetira, K. Aingaran, and K. Olukotun, 2005. Paper.
Niagara: A 32-way multithreaded sparc processor.
Micro, IEEE.
P. R. Nuth and W. J. Dally, 1995. Paper. The named-state
register file: Implementation and performance. IN
Proc. 1st Intl Symp. on High-Performance Computer
Architecture HPCA.
Jean J Labrosse, 1998. The book., R&D Books [M].
uC/OS-II: The Real-Time Kernel.
IMPROVING THE PERFORMANCE OF RTOS USING MULTIPLE REGISTER FILES ARCHITECTURE
455