【技术实现步骤摘要】
一种支持多级一致性协议的多核处理器WCET分析方法
[0001]本专利技术涉及计算机应用
,特别涉及一种支持多级一致性协议的多核处理器最坏情况完成时间(Worst
‑
Case Execution Time,以下简称WCET)分析方法。
技术介绍
[0002]由于多核处理器优越的计算性能,现已在嵌入式实时系统中广泛应用。多核处理器通常采用对称多处理器(Symmetric Multi
‑
Processor,SMP)架构,通过读写共享数据实现内核之间的通信。在将共享数据读取到私有Cache时,会导致多个数据副本不一致性的情况,产生Cache一致性问题,需要使用一致性协议维护数据一致性。
[0003]相对于单核处理器,多核处理器存在共享资源竞争、核间任务干扰等因素,使得多核平台下任务时序的可预测性更加困难,尤其是多核处理器中缓存一致性协议的使用,进一步增加了WCET预测的复杂性。然而WCET作为嵌入式实时系统的重要参数,是任务编排、可调度性分析的前提,多核处理器WCET分析方法的缺失 ...
【技术保护点】
【技术特征摘要】
1.一种支持多级一致性协议的多核处理器WCET分析方法,其特征在于步骤如下:步骤1:建立多核处理器Cache模型:CA=(C
S
,C
W
,C
C
)式中:C
S
表示Cache的结构,C
W
表示Cache写策略,一致性域内采用写直达和非写分配的写策略,一致性域间采用写回和写分配的写策略,C
C
表示Cache一致性协议,Cache结构C
S
为一级L1Cache私有,二级L2 Cache局部共享,三级L3 Cache全局共享,C
W
为一致性域内采用写直达和非写分配的写策略,一致性域之间采用写回和写分配的写策略,C
C
仅针对MESI一致性协议,其中M表示Modify状态,E表示Exclusive状态,S表示Shared状态,I表示Invalid状态;C
S
描述了整个处理器的Cache层次结构以及每一级Cache的具体配置;Cache层次结构中每一级的模型描述如下:C
S
=(capacity,block_size,associativity,cores)式中,capacity表示Cache容量,block_size表示块大小,associativity表示相联度,cores表示共享此Cache的内核,对于L1 Cache完全由内核独占,不存在共享的情况,可以通过对各级Cache模型的实例化,实现对Cache的建模;步骤2:定义并配置Cache的时间参数:Ψ
R
(m,m
′
)/Ψ
W
(m,m
′
):表示域内Cache读/写访问时间延迟和状态转换情况,m表示被访问的数据,m'表示被访问数据的副本;Ψ
′
R
(m,m
′
)/Ψ
′
W
(m,m
′
):表示跨域Cache读/写访问时间延迟和状态转换情况,m表示被访问的数据,m'表示被访问数据的副本;T:表示访问时间延迟,并定义H
p
表示私有Cache访问命中时间延迟,H
i
表示在i级Cache访问命中时间延迟,L
i
→
j
表示数据从i级Cache加载到j级Cache的时间延迟,Inv表示域内使其它数据副本失效的时间延迟,Inv
′
表示跨域使其它数据副本失效的时间延迟;m
s
/m
′
s
:表示本地/远程Cache状态;表示被访问共享数据被替换出Cache,导致替换缺失发生/未发生;步骤3:一致性域的划分定义使用相同一致性协议管理数据副本的内核集合,称之为一致性域;多级一致性域采用分层划域的思想,下层一致性域是上层一致性域的一个结点clump;步骤4:域内读访问WCET分析当内核发出读数据m的读请求时,如果m存在于L1中,其状态可能是为E或者S并且未发生替换缺失,在L1中能够读命中,数据访问延迟为H
L1
,所有Cache块的状态不会发生改变;如果数据m在域内,m的状态为E或者S但是发生替换缺失,此时数据访问延迟为读取L2中数据的时间Ψ
′
R
,同时需要将数据从L2 Cache加载到本地L1 Cache中,考虑连贯性要求,数据访问延迟为max(Ψ
′
R
,L
L2
‑
L1
),Cache状态不发生变化;如果数据m在域内,m的状态为I,且副本m'的状态为E或者S时,此时数据访问延迟为读取L2中数据的时间Ψ
′
R
,同时需要将数据从L2 Cache加载到本地L1 Cache中,考虑连贯性要求,数据访问延迟为max(Ψ
′
R
,L
L2
‑
L1
),m的状态转换为S,副本m'的状态转换为S;如果数据m不在域内,在L2 Cache中会出现访问缺失,假定访问L2 Cache的时间为Ψ
′
R
,
对于Ψ
′
R
的取值我们放在下一级进行分析;此时m的状态由I转换为E,L2Cache的状态需要根据L2的一致性协议进一步分析;可以得出Cache域内读访问时间延迟和状态转换的状态更新函数:步骤5:域内写访问WCET分析当内核发出写m的请求时,如果m仅存在本地L1 Cache且状态为E时,此时会发生Cache写命中;首先需要将数据写入到L1中,根据步骤1模型可知C
W
可知,由于使用写直达策略,需要同时写入到L2当中,因此数据访问时间为H
L1
+Ψ
′
W
,Cache状态不发生改变;如果m存在于L1 Cache中且状态为S时,此时会发生Cache写命中,数据访问延迟为H
L1
+Ψ
′
W
,状态转换为E,由于采用写失效的一致性协议,因此需要将副本的状态修改为I,考虑连贯性要求,数据访问最终的延迟为max(H
L1
+Ψ
′
W
,Inv);如果数据m位于本地L1 Cache中,m的状态为E或者S,并且发生替换缺失,此时会出现写缺失;如果m的状态为E,此时数据访问时间为Ψ
′
W
,并且状态转换为I;如果m的状态为S,在进行L2 Cache写操作之后,需要对其他...
【专利技术属性】
技术研发人员:朱怡安,史先琛,李联,任鹏远,董威振,
申请(专利权)人:西北工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。