Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3576914.3587513acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article
Open access

Investigating and Mitigating Contention on Low-End Multi-Core Microcontrollers

Published: 09 May 2023 Publication History

Abstract

In this paper, we investigate the problem of contention and loss of predictability in modern microcontrollers (MCU). To address this issue, we first present a framework to empirically analyze and observe the impact of interference on low-end MCUs. With carefully crafted evaluation scenarios, we conduct experiments on an Arm’s Musca-A1 platform and provide sufficient evidence that even with common application setups, interference can slowdown applications by several orders of magnitude. Furthermore, we propose an architecture for a novel mitigation system that enables applications to monitor their timing progress slackness and mitigate temporal interference over shared resources. This is achieved by suspending less critical cores and reconfiguring their priority on the bus when intolerable contention delays are present. Our findings emphasize the critical importance of considering the impact of shared resources, such as interconnects and memory access patterns, on low-end multi-core MCUs. It is, therefore, crucial to design mechanisms that can allow MCU-based applications to regain control of their timeliness.

References

[1]
angr. 2023. CFG Documentation. https://docs.angr.io/built-in-analyses/cfg
[2]
Arm. 2018. Arm® Musca-A. Technical Report. Arm Ltd.
[3]
Michael G. Bechtel and Heechul Yun. 2019. Denial-of-Service Attacks on Shared Cache in Multicore: Analysis and Prevention. ArXiv CoRR (2019).
[4]
Diogo Costa Costa, Luca Cuomo, Daniel Oliveira, Ida Savino, Bruno Morelli, Jose Martins, Fabrizio Tronci, Alessandro Biasci, and Sandro Pinto. 2023. IRQ Coloring: Mitigating Interrupt-generated Interference on ARM Multicore Platforms. In Proc. NG-RES.
[5]
Alfons Crespo, Patricia Balbastre, José Simó, Javier Coronel, Daniel Gracia Pérez, and Philippe Bonnot. 2018. Hypervisor-Based Multicore Feedback Control of Mixed-Criticality Systems. IEEE Access (2018).
[6]
Rolf Ernst and Marco Di Natale. 2016. Mixed Criticality Systems—A History of Misconceptions?IEEE Design & Test (2016).
[7]
Farzad Farshchi, Qijing Huang, and Heechul Yun. 2020. BRU: Bandwidth Regulation Unit for Real-Time Multicore Processors. Proc. IEEE RTAS (2020).
[8]
Giovani Gracioli, Rohan Tabish, Renato Mancuso, Reza Mirosanlou, Rodolfo Pellizzoni, and Marco Caccamo. 2019. Designing Mixed Criticality Applications on Modern Heterogeneous MPSoC Platforms. In Proc. ECRTS.
[9]
Mohamed Hassan and Rodolfo Pellizzoni. 2020. Analysis of Memory-Contention in Heterogeneous COTS MPSoCs. In Proc. ECRTS.
[10]
Gideon Intrater. 2019. Execute in place (XiP): An external flash architecture ideal for the code and performance requirements of Edge Iot and ai. https://embeddedcomputing.com/technology/storage/execute-in-place-xip-an-external-flash-architecture-ideal-for-the-code-and-performance-requirements-of-edge-iot-and-ai
[11]
Dan Iorga, Tyler Sorensen, John Wickerson, and Alastair F. Donaldson. 2020. Slow and Steady: Measuring and Tuning Multicore Interference. In Proc. RTAS.
[12]
Tomasz Kloda, Marco Solieri, Renato Mancuso, Nicola Capodieci, Paolo Valente, and Marko Bertogna. 2019. Deterministic Memory Hierarchy and Virtualization for Modern Multi-Core Embedded Systems. Proc. IEEE RTAS (2019).
[13]
Angeliki Kritikakou, Claire Pagetti, Olivier Baldellon, Matthieu Roy, and Christine Rochange. 2014. Run-Time Control to Increase Task Parallelism In Mixed-Critical Systems. Proc. ECRTS.
[14]
Angeliki Kritikakou, Christine Rochange, Madeleine Faugere, Claire Pagetti, Matthieu Roy, Sylvain Girbal, and Daniel Gracia Perez. 2014. Distributed Run-Time WCET Controller for Concurrent Critical Tasks in Mixed-Critical Systems. In Proc. RTNS.
[15]
Claire Maiza, Hamza Rihani, Juan M. Rivas, Joël Goossens, Sebastian Altmeyer, and Robert I. Davis. 2019. A Survey of Timing Verification Techniques for Multi-Core Real-Time Systems. ACM Comput. Surv. (2019).
[16]
Renato Mancuso, Roman Dudko, Emiliano Betti, Marco Cesati, Marco Caccamo, and Rodolfo Pellizzoni. 2013. Real-time cache management framework for multi-core architectures. In Proc. IEEE RTAS.
[17]
José Martins and Sandro Pinto. 2023. Shedding Light on Static Partitioning Hypervisors for Arm-based Mixed-Criticality Systems. In Proc. IEEE RTAS.
[18]
José Martins, Adriano Tavares, Marco Solieri, Marko Bertogna, and Sandro Pinto. 2020. Bao: A Lightweight Static Partitioning Hypervisor for Modern Multi-Core Embedded Systems. In Proc. NG-RES.
[19]
Paolo Walter Modica, Alessandro Biondi, Giorgio C. Buttazzo, and Anup Patel. 2018. Supporting temporal and spatial isolation in a hypervisor for ARM multicore platforms. IEEE International Conference on Industrial Technology.
[20]
Mattia Nicolella, Shahin Roozkhosh, Denis Hoornaert, Andrea Bastoni, and Renato Mancuso. 2022. RT-Bench: An Extensible Benchmark Framework for the Analysis and Management of Real-Time Applications. In Proc. RTNS.
[21]
Jan Nowotsch and Michael Paulitsch. 2012. Leveraging Multi-core Computing Architectures in Avionics. Proc. EDCC.
[22]
NXP. 2022. i.MX RT. https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/i-mx-rt-crossover-mcus:IMX-RT-SERIES
[23]
Daniel Oliveira, Miguel Costa, Sandro Pinto, and Tiago Gomes. 2020. The Future of Low-End Motes in the IoT: A Prospective Paper. Electronics (2020).
[24]
Runyu Pan, Gregor Peach, Yuxin Ren, and Gabriel Parmer. 2018. Predictable Virtualization on Memory Protection Unit-Based Microcontrollers. In Proc. IEEE RTAS.
[25]
David Patterson, Jeremy Bennett, Palmer Dabbelt, Cesare Garlati, G. S. Madhusudan, and Trevor Mudge. 2020. Embench. www.embench.org/.
[26]
Sandro Pinto, Hugo Araujo, Daniel Oliveira, José Martins, and Adriano Tavares. 2019. Virtualization on TrustZone-Enabled MCUs? Voilà!. In Proc. IEEE RTAS.
[27]
Petar Radojkovic, Sylvain Girbal, Arnaud Grasset, Eduardo Quiñones, Sami Yehia, and Francisco. J. Cazorla. 2012. On the evaluation of the impact of shared resources in multithreaded COTS processors in time-critical environments. ACM Trans. Archit. Code Optim. (2012).
[28]
Manuele Rusci, Marco Fariselli, Martin Croome, Francesco Paci, and Eric Flamand. 2022. Accelerating RNN-based Speech Enhancement on a Multi-Core MCU with Mixed FP16-INT8 Post-Training Quantization. arXiv cs.SD (2022).
[29]
Ahsan Saeed, Dakshina Dasari, Dirk Ziegenbein, Varun Rajasekaran, Falk Rehm, Michael Pressler, Arne Hamann, Daniel M.-Gritschneder, Andreas Gerstlauer, and Ulf Schlichtmann. 2022. Memory Utilization-Based Dynamic Bandwidth Regulation for Temporal Isolation in Multi-Cores. In Proc. IEEE RTAS.
[30]
Alejandro Serrano-Cases, Juan M. Reina, Jaume Abella, Enrico Mezzetti, and Francisco J. Cazorla. 2021. Leveraging Hardware QoS to Control Contention in the Xilinx Zynq UltraScale+ MPSoC. In Proc. ECRTS.
[31]
Ashley Stevens. 2014. Quality of Service (QoS) in ARM Systems: An Overview. Technical Report. Arm Ltd.
[32]
STMicroelectronics. 2020. STM32H72. https://blog.st.com/stm32h723-stm32h733-stm32h725-stm32h735-stm32h730/
[33]
Rohan Tabish, Renato Mancuso, Saud Wasly, Ahmed Alhammad, Sujit S. Phatak, Rodolfo Pellizzoni, and Marco Caccamo. 2016. A Real-Time Scratchpad-Centric OS for Multi-Core Embedded Systems. In IEEE RTAS.
[34]
Ioan Ungurean. 2020. Timing Comparison of the Real-Time Operating Systems for Small Microcontrollers. Symmetry (2020).
[35]
Jinwen Wang, Ao Li, Haoran Li, Chenyang Lu, and Ning Zhang. 2022. RT-TEE: Real-time System Availability for Cyber-physical Systems using ARM TrustZone. In Proc. IEEE S&P Symp.
[36]
Heechul Yun, Renato Mancuso, Zheng Pei Wu, and Rodolfo Pellizzoni. 2014. PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms. Proc. IEEE RTAS.
[37]
Heechul Yun, Gang Yao, Rodolfo Pellizzoni, Marco Caccamo, and Lui Sha. 2013. MemGuard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In Proc. IEEE RTAS.
[38]
Heechul Yun, Gang Yao, Rodolfo Pellizzoni, Marco Caccamo, and Lui Raymond Sha. 2013. MemGuard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms. Proc. IEEE RTAS (2013).

Cited By

View all
  • (2024)Edge AI for Internet of Energy: Challenges and perspectivesInternet of Things10.1016/j.iot.2023.10103525(101035)Online publication date: Apr-2024
  • (2024)IA&AI: Interference Analysis in Multi-core Embedded AI SystemsData Science and Artificial Intelligence10.1007/978-981-97-9793-6_13(181-193)Online publication date: 9-Nov-2024

Index Terms

  1. Investigating and Mitigating Contention on Low-End Multi-Core Microcontrollers

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CPS-IoT Week '23: Proceedings of Cyber-Physical Systems and Internet of Things Week 2023
    May 2023
    419 pages
    ISBN:9798400700491
    DOI:10.1145/3576914
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 09 May 2023

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. contention
    2. microcontrollers
    3. multi-core
    4. predictability

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Funding Sources

    Conference

    CPS-IoT Week '23
    Sponsor:

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)290
    • Downloads (Last 6 weeks)19
    Reflects downloads up to 24 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Edge AI for Internet of Energy: Challenges and perspectivesInternet of Things10.1016/j.iot.2023.10103525(101035)Online publication date: Apr-2024
    • (2024)IA&AI: Interference Analysis in Multi-core Embedded AI SystemsData Science and Artificial Intelligence10.1007/978-981-97-9793-6_13(181-193)Online publication date: 9-Nov-2024

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media