确定执行时间的界限
1 引言
在嵌入式系统的设计中,特别是在硬实时系统中,确保任务在规定的时间内完成是至关重要的。为了满足这一需求,确定任务执行时间的上限是非常必要的。本文将介绍aiT时序分析工具的架构以及其实现的时序分析方法,包括缓存行为预测、流水线分析、使用整数线性规划的路径分析以及其他相关问题。这些方法旨在帮助工程师确保嵌入式系统能够在规定的时间内完成任务,尤其是在硬实时系统中。
2 缓存行为预测
缓存行为预测是确定执行时间界限的重要组成部分。缓存行为预测静态且近似地确定每个程序点的缓存内容。对于每次访问内存块,都会检查分析是否可以安全预测缓存命中。缓存分析后可以忘记关于缓存内容的信息。只有缺失/命中信息是流水线分析所需要的。流水线行为预测分析指令如何通过流水线,同时考虑缓存命中或缺失信息。在所有无法保证缓存命中的情况下,都会假设缓存未命中惩罚。
2.1 缓存未命中惩罚
缓存未命中会将缓存未命中惩罚加到程序的执行时间上。然而,对于某些处理器架构,缓存未命中实际上可能会加速程序执行。例如,MCF 5307具有统一的缓存,并且取指和执行流水线是独立的,可能发生以下情况:一个缓存命中的数据访问直接由缓存提供服务。同时,取指流水线从主内存中获取另一个指令块,执行分支预测并替换缓存中的两行数据。这些数据稍后可能会被重用,并可能导致两次缓存未命中。如果数据访问是缓存未命中,那么指令取指流水线可能没有取回这两行数据,因为执行流水线可能在这些行被取回之前已经解决了预测错误。
2.2 时序异常
时序异常是指一条指令的(局部)执行时间对整个程序的(全局)执行时间产生反直觉的影响。几种处理器特性之间的相互
超级会员免费看
订阅专栏 解锁全文
2993

被折叠的 条评论
为什么被折叠?



