Dynamic Behavior Specification and Dynamic Mapping for Real-Time Embedded Systems

Dynamic Behavior Specification and Dynamic Mapping for Real-Time Embedded Systems
复制标题

DOI:
10.1145/2584658
复制
发表时间:
2014-04
期刊:
ACM Transactions on Embedded Computing Systems (TECS)
影响因子:
--
通讯作者:
Hanwoong Jung;Chanhee Lee;Shin-Haeng Kang;Sungchan Kim;Hyunok Oh;S. Ha
Hanwoong Jung;Chanhee Lee;Shin-Haeng Kang;Sungchan Kim;Hyunok Oh;S. Ha
中科院分区:
其他
文献类型:
--
作者:
Hanwoong Jung;Chanhee Lee;Shin-Haeng Kang;Sungchan Kim;Hyunok Oh;S. Ha

文献摘要

被引文献

相似文献

随着芯片中处理器数量的增加和更多功能的集成,系统状态将由于各种因素而动态变化,例如工作负载变化、QoS要求和意外组件故障。处理系统动态特性的一种典型方法是在运行时根据系统状态的局部信息来决定映射决策。在这样一个动态变化的系统中,保证某个应用的实时性能是非常具有挑战性的。为了解决这个问题,我们提出了一个混合规格的Cocklow-FSM模型,以指定系统区分应用程序间和应用程序内的动态行为。在顶层,每个应用程序都由一个控制流任务指定,动态行为被建模为监督应用程序执行的控制任务。在一个Cocklow任务中,我们使用与基于FSM的SADF类似的方式来指定动态行为,在SADF中,应用程序由每个操作模式的同步Cocklow图指定。它使我们能够执行每个图的编译时调度,以最大限度地提高吞吐量的不同数量的分配的处理器,并存储调度信息。当在运行时检测到系统状态的变化时,利用所存储的这些任务的调度信息来动态地确定分配给活动任务的处理器的数量,以便满足实时要求。所提出的技术在HOPES设计环境中实现。通过一个简单的智能手机的例子进行初步实验,我们证明了所提出的方法的可行性。
As the number of processors in a chip increases and more functions are integrated, the system status will change dynamically due to various factors such as the workload variation, QoS requirement, and unexpected component failure. A typical method to deal with the dynamics of the system is to decide the mapping decision at runtime, based on the local information of the system status. It is very challenging to guarantee any real-time performance of a certain application in such a dynamically varying system. To solve this problem, we propose a hybrid specification of dataflow and FSM models to specify the dynamic behavior of a system distinguishing inter- and intra-application dynamism. At the top level, each application is specified by a dataflow task and the dynamic behavior is modeled as a control task that supervises the execution of applications. Inside a dataflow task, we specify the dynamic behavior using a similar way as FSM-based SADF in which an application is specified by a synchronous dataflow graph for each mode of operation. It enables us to perform compile-time scheduling of each graph to maximize the throughput varying the number of allocated processors, and store the scheduling information. When a change in system state is detected at runtime, the number of allocated processors to the active tasks is determined dynamically utilizing the stored scheduling information of those tasks in order to meet the real-time requirements. The proposed technique is implemented in the HOPES design environment. Through preliminary experiments with a simple smartphone example, we show the viability of the proposed methodology.