TY - GEN
T1 - A Dynamic Priority-aware Coherent Cache Architecture for Reactive Real-Time System
AU - Hoornaert, Denis
AU - Pritzi, Julian
AU - Bastoni, Andrea
AU - Caccamo, Marco
N1 - Publisher Copyright:
Copyright © 2024 held by the owner/author(s).
PY - 2025/1/3
Y1 - 2025/1/3
N2 - Achieving predictability and performance for real-time workloads on modern multi-processors System-on-Chips is challenging. In particular, their complex hierarchy of caches leads to hard-to-predict memory interactions among concurrently executing tasks and, in turn, to unexpected system overloads. Traditionally, such overloads have been handled by either guaranteeing some level of service - statically or via fair cache and interconnect access - for critical cores or by reacting to overloads by allocating more resources to critical cores and tasks. To our knowledge, dynamically prioritizing accesses of specific cores to memory or improving core-to-core traffic according to software-defined policies have been mostly unexplored directions. This article introduces DyPACC, a hardware design and implementation of a coherent cache that can favor the core-to-memory and core-to-core traffic according to software-defined runtime re-configurable priorities. The proposed cache architecture is implemented directly at the Register Transfer Level using a Hardware Description Language and integrated within an open-source RISC-V SoC framework. Our experimental evaluation of an FPGA-based prototype shows that DyPACC successfully manages bandwidth and latency according to the set priorities with extremely low overhead in terms of hardware resources.
AB - Achieving predictability and performance for real-time workloads on modern multi-processors System-on-Chips is challenging. In particular, their complex hierarchy of caches leads to hard-to-predict memory interactions among concurrently executing tasks and, in turn, to unexpected system overloads. Traditionally, such overloads have been handled by either guaranteeing some level of service - statically or via fair cache and interconnect access - for critical cores or by reacting to overloads by allocating more resources to critical cores and tasks. To our knowledge, dynamically prioritizing accesses of specific cores to memory or improving core-to-core traffic according to software-defined policies have been mostly unexplored directions. This article introduces DyPACC, a hardware design and implementation of a coherent cache that can favor the core-to-memory and core-to-core traffic according to software-defined runtime re-configurable priorities. The proposed cache architecture is implemented directly at the Register Transfer Level using a Hardware Description Language and integrated within an open-source RISC-V SoC framework. Our experimental evaluation of an FPGA-based prototype shows that DyPACC successfully manages bandwidth and latency according to the set priorities with extremely low overhead in terms of hardware resources.
KW - Cache Coherence
KW - Memory Scheduling
KW - Real-time Architecture
UR - http://www.scopus.com/inward/record.url?scp=85218357680&partnerID=8YFLogxK
U2 - 10.1145/3696355.3699700
DO - 10.1145/3696355.3699700
M3 - Conference contribution
AN - SCOPUS:85218357680
T3 - RTNS 2024 - 2024 32nd International Conference on Real-Time Networks and Systems
SP - 142
EP - 152
BT - RTNS 2024 - 2024 32nd International Conference on Real-Time Networks and Systems
PB - Association for Computing Machinery, Inc
T2 - 32nd International Conference on Real-Time Networks and Systems, RTNS 2024
Y2 - 6 November 2024 through 8 November 2024
ER -