Data cache organization for accurate timing analysis

被引:8
作者
Schoeberl, Martin [1 ]
Huber, Benedikt [2 ]
Puffitsch, Wolfgang [2 ]
机构
[1] Tech Univ Denmark, Dept Informat & Math Modeling, DK-2800 Lyngby, Denmark
[2] Vienna Univ Technol, Inst Comp Engn, A-1040 Vienna, Austria
关键词
WCET analysis; Data caches; Time-predictable computer architecture; PROCESSOR ARCHITECTURE; SCRATCHPAD MEMORIES; TIME; PREDICTABILITY; HIERARCHIES; ALLOCATION;
D O I
10.1007/s11241-012-9159-8
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Caches are essential to bridge the gap between the high latency main memory and the fast processor pipeline. Standard processor architectures implement two first-level caches to avoid a structural hazard in the pipeline: an instruction cache and a data cache. For tight worst-case execution times it is important to classify memory accesses as either cache hit or cache miss. The addresses of instruction fetches are known statically and static cache hit/miss classification is possible for the instruction cache. The access to data that is cached in the data cache is harder to predict statically. Several different data areas, such as stack, global data, and heap allocated data, share the same cache. Some addresses are known statically, other addresses are only known at runtime. With a standard cache organization all those different data areas must be considered by worst-case execution time analysis. In this paper we propose to split the data cache for the different data areas. Data cache analysis can be performed individually for the different areas. Access to an unknown address in the heap does not destroy the abstract cache state for other data areas. Furthermore, we propose to use a small, highly associative cache for the heap area. We designed and implemented a static analysis for this cache, and integrated it into a worst-case execution time analysis tool.
引用
收藏
页码:1 / 28
页数:28
相关论文
共 56 条
  • [1] Angiolini Federico., 2003, CASES '03: Proceedings of the 2003 international conference on Compilers, architecture and synthesis for embedded systems, P318, DOI DOI 10.1145/951710.951751
  • [2] ARNOLD R, 1994, REAL TIM SYST SYMP P, P172, DOI 10.1109/REAL.1994.342718
  • [3] Avissar Oren, 2002, ACM Trans. on Embedded Computing Systems (TECS), V1, P6, DOI [10.1145/581888.581891, DOI 10.1145/581888.581891]
  • [4] Adding instruction cache effect to schedulability analysis of preemptive real-time systems
    BusquetsMataix, JV
    Serrano, JJ
    Ors, R
    Gil, P
    Wellings, A
    [J]. 1996 IEEE REAL-TIME TECHNOLOGY AND APPLICATIONS SYMPOSIUM, PROCEEDINGS, 1996, : 204 - 212
  • [5] DEUTSCH A, 1992, PROCEEDINGS OF THE 1992 INTERNATIONAL CONFERENCE ON COMPUTER LANGUAGES, P2, DOI 10.1109/ICCL.1992.185463
  • [6] WCET-directed dynamic scratchpad memory allocation of data
    Deverge, Jean-Francois
    Puaut, Isabelle
    [J]. 19TH EUROMICRO CONFERENCE ON REAL-TIME SYSTEMS, PROCEEDINGS, 2007, : 179 - +
  • [7] The case for the precision timed (PRET) machine
    Edwards, Stephen A.
    Lee, Edward A.
    [J]. 2007 44TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, VOLS 1 AND 2, 2007, : 264 - +
  • [8] Emami Maryam., 1994, Context-sensitive interprocedural points-to analysis in the presence of function pointers, P242
  • [9] Efficient and precise cache behavior prediction for real-time systems
    Ferdinand, C
    Wilhelm, R
    [J]. REAL-TIME SYSTEMS, 1999, 17 (2-3) : 131 - 181
  • [10] Ferdinand Christian., 2001, EMSOFT 01, P469