• DocumentCode
    129928
  • Title

    Dynamic Command Scheduling for Real-Time Memory Controllers

  • Author

    Yonghui Li ; Akesson, Benny ; Goossens, Kees

  • Author_Institution
    Eindhoven Univ. of Technol., Eindhoven, Netherlands
  • fYear
    2014
  • fDate
    8-11 July 2014
  • Firstpage
    3
  • Lastpage
    14
  • Abstract
    Memory controller design is challenging as real-time embedded systems feature an increasing diversity of real-time and non-real-time applications with variable transaction sizes. To satisfy the requirements of the applications, tight bounds on the worst-case execution time (WCET) of memory transactions must be provided to real-time applications, while the lowest possible average execution time must be given to the rest. Existing real-time memory controllers cannot efficiently achieve this goal as they either bound the WCET by sacrificing the average execution time, or are not scalable to directly support variable transaction sizes, or both. In this paper, we propose to use dynamic command scheduling, which is capable of efficiently dealing with transactions with variable sizes. The three main contributions of this paper are: 1) a back-end architecture for a real-time memory controller with a dynamic command scheduling algorithm, 2) a formalization of the timings of the memory transactions for the proposed architecture and algorithm, and 3) two techniques to bound the WCET of transactions with both fixed and variable sizes, respectively. We experimentally evaluate the proposed memory controller and compare both the worst-case and average-case execution times of transactions to a state-of-the-art semi-static approach. The results demonstrate that dynamic command scheduling outperforms the semi-static approach by 33.4% in the average case and performs at least equally well in the worst case. We also show the WCET is tight for transactions with fixed and variable sizes, respectively.
  • Keywords
    embedded systems; scheduling; storage management; WCET; average execution time; average-case execution time; back-end architecture; dynamic command scheduling; memory controller design; memory transactions; realtime embedded systems; transaction size; worst-case execution time; Bismuth; Dynamic scheduling; Heuristic algorithms; Memory management; Real-time systems; SDRAM; Timing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Real-Time Systems (ECRTS), 2014 26th Euromicro Conference on
  • Conference_Location
    Madrid
  • Print_ISBN
    978-1-4799-5797-2
  • Type

    conf

  • DOI
    10.1109/ECRTS.2014.18
  • Filename
    6932585