From Code to Silicon: Allocating Automotive Software Components to Semiconductor Design Partitions in System-on-Chips
收藏资源简介:
The increasing intricacy of automotive software presents substantial obstacles when attempting to deploy applications on contemporary multi-core processors. Safety-critical systems, such as advanced driver assistance systems, require both predictability and efficiency in the allocation of resources. Traditional static allocation methods, while they are predictable, often underutilize available cores. Conversely, dynamic allocation can exploit parallelism more effectively but introduces nondeterminism and runtime overhead. This trade-off complicates the choice of suitable allocation and scheduling policies in practice. To address this, a unified framework is presented that integrates both static and dynamic core allocation strategies with support for first-come-first-served and priority-aware scheduling. The framework is evaluated on task sets with long critical paths and balanced parallel structures, capturing realistic mixes of periodic and event-driven workloads. The findings indicate that static allocation provides determinism but entails inefficiency under parallelizable workloads. Conversely, dynamic allocation enhances throughput and reduces waiting times. The impact of priority-aware scheduling on enhancing system responsiveness is investigated, particularly in multi-core settings. The results demonstrate that while priority-aware scheduling can improve responsiveness in multi-core scenarios, it can also lead to an increase in waiting time in single-core cases. The framework systematically quantifies trade-offs in utilization, throughput, latency, and overhead, thereby providing practical guidance for reliable and efficient deployment of automotive software on multi-core platforms.



