11.07.2015 Views

IAR PowerPac RTOS User Guide

IAR PowerPac RTOS User Guide

IAR PowerPac RTOS User Guide

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

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

Performance and resource usageThis chapter covers the performance and resource usage of embOS. It explains how to benchmark <strong>IAR</strong> <strong>PowerPac</strong><strong>RTOS</strong> and information about the memory requirements in typical systems which can be used to obtain sufficientestimates for most target systems.IntroductionHigh performance combined with low resource usage has always been a major design consideration. <strong>IAR</strong> <strong>PowerPac</strong><strong>RTOS</strong> runs on 8/16/32-bit CPUs. Depending on which features are being used, even single-chip systems with less than2 Kbytes ROM and 1 Kbyte RAM can be supported by <strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong>. The actual performance and resourceusage depends on many factors (CPU, compiler, memory model, optimization, configuration, etc.).Memory requirementsThe memory requirements of <strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> (RAM and ROM) differ depending on the used features of thelibrary. The following table shows the memory requirements for the different modules.Module Memory type Memory requirements<strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> kernel ROM 1100 - 1600 bytes *<strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> kernel RAM 18 - 25 bytes *Mailbox RAM 9 - 15 bytes *Binary and counting semaphores RAM 3 bytesRecource semaphore RAM 4 - 5 bytes *Timer RAM 9 - 11 bytes *Event RAM 0 bytesTable 129: <strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> memory requirements* Depends on CPU, compiler, and library model usedBenchmarking<strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> is designed to perform fast context switches. This section describes two different methods tocalculate the execution time of a context switch from a task with lower priority to a task with a higher priority.The first method uses port pins and requires an oscilloscope. The second method uses the high-resolution measurementfunctions. Example programs for both methods are supplied in the \Example directory of your <strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong>shipment.Segger uses these programs to benchmark the <strong>IAR</strong> <strong>PowerPac</strong> <strong>RTOS</strong> performance. You can use these examples toevaluate the benchmark results. Note, that the actual performance depends on many factors (CPU, clock speed,toolchain, memory model, optimization, configuration, etc.).PP<strong>RTOS</strong>-2 127

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

Saved successfully!

Ooh no, something went wrong!