Fast instruction cache simulation strategies in a hardware/software co-design environment

M. Lajolo, L. Lavagno, A. Sangiovanni-Vincentelli
{"title":"Fast instruction cache simulation strategies in a hardware/software co-design environment","authors":"M. Lajolo, L. Lavagno, A. Sangiovanni-Vincentelli","doi":"10.1109/ASPDAC.1999.760030","DOIUrl":null,"url":null,"abstract":"Cache memories are one of the main factors that affect software performance, and their use is becoming increasingly common even in embedded systems. Efficient analysis of the effects of parameter variations (cache dimensions, degree of associativity, replacement policy, line size, ...) is at the same time an essential and very time-consuming aspect of embedded system design, whose complexity increases when multi-tasking and real-time aspects must be considered. We propose a new simulation-based methodology, focused on an approximate model of the cache and of the multi-tasking reactive software, that allows one to trade off smoothly between accuracy and simulation speed. In particular, we propose to accurately consider intra-task conflicts, but approximate inter-task conflicts by considering only a finite number of previous task executions. The rationale for this choice can be found in a common pattern in embedded systems, where a \"normal\" data flow results in a regular intra-task common flow, interrupted from time to time by some urgent event, that pessimistically can be consider as disrupting the cache behavior. The approach is conservative because re-execution of a task after a large amount of time will always be considered as not in cache, and the simulation speed-up is considerable, as shown by theoretical analysis and experimental results.","PeriodicalId":201352,"journal":{"name":"Proceedings of the ASP-DAC '99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-01-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the ASP-DAC '99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASPDAC.1999.760030","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 12

Abstract

Cache memories are one of the main factors that affect software performance, and their use is becoming increasingly common even in embedded systems. Efficient analysis of the effects of parameter variations (cache dimensions, degree of associativity, replacement policy, line size, ...) is at the same time an essential and very time-consuming aspect of embedded system design, whose complexity increases when multi-tasking and real-time aspects must be considered. We propose a new simulation-based methodology, focused on an approximate model of the cache and of the multi-tasking reactive software, that allows one to trade off smoothly between accuracy and simulation speed. In particular, we propose to accurately consider intra-task conflicts, but approximate inter-task conflicts by considering only a finite number of previous task executions. The rationale for this choice can be found in a common pattern in embedded systems, where a "normal" data flow results in a regular intra-task common flow, interrupted from time to time by some urgent event, that pessimistically can be consider as disrupting the cache behavior. The approach is conservative because re-execution of a task after a large amount of time will always be considered as not in cache, and the simulation speed-up is considerable, as shown by theoretical analysis and experimental results.
硬件/软件协同设计环境下的快速指令缓存仿真策略
缓存存储器是影响软件性能的主要因素之一,即使在嵌入式系统中,它们的使用也变得越来越普遍。有效分析参数变化(缓存尺寸、关联度、替换策略、行大小等)的影响同时也是嵌入式系统设计的一个必要且非常耗时的方面,当必须考虑多任务和实时方面时,其复杂性会增加。我们提出了一种新的基于仿真的方法,专注于缓存和多任务反应软件的近似模型,允许人们在准确性和仿真速度之间顺利权衡。特别是,我们建议准确地考虑任务内冲突,但通过仅考虑有限数量的先前任务执行来近似任务间冲突。这种选择的基本原理可以在嵌入式系统中的常见模式中找到,其中“正常”数据流导致有规则的任务内部公共流,不时被一些紧急事件中断,悲观地说,可以将其视为破坏缓存行为。理论分析和实验结果表明,该方法具有保守性,因为在大量时间后重新执行任务将始终被认为不在缓存中,并且仿真加速幅度较大。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
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学术官方微信