Dynamic Command Scheduling for Real-Time Memory Controllers

Dynamic Command Scheduling for Real-Time Memory Controllers
复制标题

实时内存控制器的动态命令调度

DOI:
10.1109/ecrts.2014.18
复制
发表时间:
2014
期刊:
2014 26th Euromicro Conference on Real-Time Systems
影响因子:
--
通讯作者:
K. Goossens
K. Goossens
中科院分区:
--
文献类型:
--
作者:
Yonghui Li;B. Akesson;K. Goossens

文献摘要

被引文献

相似文献

随着实时嵌入式系统中实时和非实时应用的多样性以及事务大小的变化,存储器控制器的设计具有挑战性。为了满足应用程序的要求,严格的界限上的最坏情况下的执行时间(WCET)的内存事务必须提供给实时应用程序,而最低的平均执行时间必须给其余的。现有的实时内存控制器无法有效地实现这一目标,因为它们要么通过牺牲平均执行时间来限制WCET,要么无法扩展以直接支持可变事务大小,或者两者兼而有之。在本文中,我们建议使用动态命令调度,这是能够有效地处理可变大小的事务。本文的三个主要贡献是:1)一个后端架构的实时存储器控制器的动态命令调度算法,2)一个形式化的存储器事务的定时所提出的架构和算法,和3)两种技术绑定的WCET的事务与固定和可变的大小,分别。我们实验评估所提出的内存控制器,并比较最坏情况下和平均情况下的执行时间的事务的一个国家的最先进的半静态方法。结果表明,在平均情况下,动态命令调度优于半静态方法33.4%,在最坏的情况下,至少表现同样好。我们还表明,WCET是紧固定和可变大小的交易,分别。
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.