Design and Implementation of a Two-Stage Tiny Bootloader for Flash-Constrained Microcontrollers Using RAM Execution
This paper introduces an innovative two-stage Tiny Bootloader (TBL) that primarily runs in Random Access Memory (RAM), reducing reliance on Flash memory. In contrast to conventional bootloaders, which are stored mostly in Flash, this design optimizes Flash usage, which is particularly advantageous for microcontrollers with limited Flash capacity. By relocating most of the bootloader code to RAM, the proposed approach frees up Flash memory for program data, making it highly suitable for resource-constrained embedded systems. The implementation is showcased using the STM32G031K4 microcontroller with Universal Asynchronous Receiver-Transmitter (UART) communication. This paper will go over the concept, design, implementation, and testing of the new proposed Tiny Bootloader.
Authors
- Adnan Shaout (ORCID: https://orcid.org/0000-0002-9686-5804)
- Zachary Brauchler
- Jacob Westerbeek
Institutions
- University of Michigan–Dearborn (US)
Publication Details
- Published
- 2024-12-10
- DOI
- https://doi.org/10.1109/acit62805.2024.10877186
- Primary Topic
- Embedded Systems and FPGA Design
- Type
- article
- Field-Weighted Citation Impact
- 0.00