• DocumentCode
    2381917
  • Title

    DARTS: Techniques and Tools for Predictably Fast Memory Using Integrated Data Allocation and Real-Time Task Scheduling

  • Author

    Kang, Sangyeol ; Dean, Alexander G.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., North Carolina State Univ., Raleigh, NC, USA
  • fYear
    2010
  • fDate
    12-15 April 2010
  • Firstpage
    333
  • Lastpage
    342
  • Abstract
    Hardware-managed caches introduce large amounts of timing variability, complicating real-time system design. One alternative is a memory system with scratchpad memories which improve system performance while eliminating such timing variability. Prior work introduced the DARTS approach, which combines static allocation of data into scratchpad memories, with task scheduling for preemptive multi-threaded, hard real-time embedded systems.This study offers several significant contributions. First, it introduces a method to split a stack frame across multiple memory units, offering fine-grain allocation of automatic memory variables with very low run-time overhead. This enables more effective use of fast memory, improving run-times. Second, it introduces the completed tool-chain based on DARTS, which reallocates static and automatic variables across multiple memory banks and now targets the ARM7 architecture. Third, it evaluates the performance improvement from DARTS using experimental results from the code running on real hardware in a preemptively scheduled RTOS-based multi-tasking environment. This hands-on experimental approach ensures a high level of confidence in the results; previous studies have generally stopped at estimating performance rather than building and measuring a real implementation.In our experiments the execution time of each task is reduced up to 24% from the baseline external SRAM configurations. We show that our methods improve task execution time to achieve 37% to 99% of the performance improvement of an ideal unlimited-capacity scratchpad memory system. Finally, we find our allocations provide on average 2/3 of the performance enhancement of the equivalently-sized cache yet with easily-predicted performance.
  • Keywords
    SRAM chips; cache storage; embedded systems; multi-threading; scheduling; ARM7 architecture; DARTS approach; RTOS-based multitasking environment; SRAM; automatic memory variable fine-grain allocation; hard real-time embedded systems; hardware-managed caches; ideal unlimited-capacity scratchpad memory system; integrated data static allocation; multiple memory banks; preemptive multithreading; real-time system design; real-time task scheduling; Delay; Embedded system; Hardware; Processor scheduling; Programming profession; Real time systems; Runtime; Scanning probe microscopy; System performance; Timing; Memory reallocation; Preemption threshold scheduling; Scratchpad memory;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Real-Time and Embedded Technology and Applications Symposium (RTAS), 2010 16th IEEE
  • Conference_Location
    Stockholm
  • ISSN
    1080-1812
  • Print_ISBN
    978-1-4244-6690-0
  • Electronic_ISBN
    1080-1812
  • Type

    conf

  • DOI
    10.1109/RTAS.2010.36
  • Filename
    5465990