用于复杂实时系统的硬件调度器

S. Sáez, J. Vila, A. Crespo, A. Garcı́a
{"title":"用于复杂实时系统的硬件调度器","authors":"S. Sáez, J. Vila, A. Crespo, A. Garcı́a","doi":"10.1109/ISIE.1999.801754","DOIUrl":null,"url":null,"abstract":"The problem of jointly scheduling both hard deadline periodic tasks and soft aperiodic tasks has been the subject of considerable research in real-time systems. One of the most widely accepted solutions for this problem are slack stealing algorithms. However, these algorithms are rather impractical, since they all imply a considerable scheduler overhead. This paper faces the overhead problem by introducing a complete hardware architecture that implements slack stealing in hardware using an optimal algorithm that has been completely redesigned to perform efficiently in hardware. The proposed solution is a circuit that behaves as a kind of sophisticated interrupt controller that takes the task workload and the interrupts as inputs, and provides an output to inform the CPU which is the highest priority task. From the point of view of hardware design, the algorithm involves two main problems: first, to select the highest priority task at every moment and, second, to locate a set of slack gaps in a real-time computation. Locating slack gaps in a real-time computation is a problem that requires to \"look forward in time\" into the forecast schedule of a given workload. This paper presents a novel architecture that shows how to solve this problem in an efficient way using an event-driven simulation. A timing analysis of the proposed design is also presented.","PeriodicalId":227402,"journal":{"name":"ISIE '99. Proceedings of the IEEE International Symposium on Industrial Electronics (Cat. No.99TH8465)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"1999-07-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"30","resultStr":"{\"title\":\"A hardware scheduler for complex real-time systems\",\"authors\":\"S. Sáez, J. Vila, A. Crespo, A. Garcı́a\",\"doi\":\"10.1109/ISIE.1999.801754\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The problem of jointly scheduling both hard deadline periodic tasks and soft aperiodic tasks has been the subject of considerable research in real-time systems. One of the most widely accepted solutions for this problem are slack stealing algorithms. However, these algorithms are rather impractical, since they all imply a considerable scheduler overhead. This paper faces the overhead problem by introducing a complete hardware architecture that implements slack stealing in hardware using an optimal algorithm that has been completely redesigned to perform efficiently in hardware. The proposed solution is a circuit that behaves as a kind of sophisticated interrupt controller that takes the task workload and the interrupts as inputs, and provides an output to inform the CPU which is the highest priority task. From the point of view of hardware design, the algorithm involves two main problems: first, to select the highest priority task at every moment and, second, to locate a set of slack gaps in a real-time computation. Locating slack gaps in a real-time computation is a problem that requires to \\\"look forward in time\\\" into the forecast schedule of a given workload. This paper presents a novel architecture that shows how to solve this problem in an efficient way using an event-driven simulation. A timing analysis of the proposed design is also presented.\",\"PeriodicalId\":227402,\"journal\":{\"name\":\"ISIE '99. Proceedings of the IEEE International Symposium on Industrial Electronics (Cat. No.99TH8465)\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1999-07-12\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"30\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"ISIE '99. Proceedings of the IEEE International Symposium on Industrial Electronics (Cat. No.99TH8465)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISIE.1999.801754\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"ISIE '99. Proceedings of the IEEE International Symposium on Industrial Electronics (Cat. No.99TH8465)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISIE.1999.801754","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 30

摘要

硬期限周期任务和软期限非周期任务的联合调度问题一直是实时系统中研究较多的课题。对于这个问题,最广泛接受的解决方案之一是松弛窃取算法。然而,这些算法相当不切实际,因为它们都意味着相当大的调度器开销。本文通过引入一个完整的硬件架构来解决开销问题,该架构使用一种经过彻底重新设计的最优算法来实现硬件上的松弛窃取。提出的解决方案是一种电路,它作为一种复杂的中断控制器,将任务工作负载和中断作为输入,并提供输出来通知CPU哪个是最高优先级的任务。从硬件设计的角度来看,该算法涉及两个主要问题:一是在每个时刻选择优先级最高的任务;二是在实时计算中定位一组空闲间隙。在实时计算中,如何定位空闲间隙是一个需要“及时展望”给定工作量的预测进度的问题。本文提出了一种新颖的体系结构,展示了如何使用事件驱动模拟以有效的方式解决这个问题。本文还对所提出的设计进行了时序分析。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A hardware scheduler for complex real-time systems
The problem of jointly scheduling both hard deadline periodic tasks and soft aperiodic tasks has been the subject of considerable research in real-time systems. One of the most widely accepted solutions for this problem are slack stealing algorithms. However, these algorithms are rather impractical, since they all imply a considerable scheduler overhead. This paper faces the overhead problem by introducing a complete hardware architecture that implements slack stealing in hardware using an optimal algorithm that has been completely redesigned to perform efficiently in hardware. The proposed solution is a circuit that behaves as a kind of sophisticated interrupt controller that takes the task workload and the interrupts as inputs, and provides an output to inform the CPU which is the highest priority task. From the point of view of hardware design, the algorithm involves two main problems: first, to select the highest priority task at every moment and, second, to locate a set of slack gaps in a real-time computation. Locating slack gaps in a real-time computation is a problem that requires to "look forward in time" into the forecast schedule of a given workload. This paper presents a novel architecture that shows how to solve this problem in an efficient way using an event-driven simulation. A timing analysis of the proposed design is also presented.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信