Date of Award
6-2-2026
Document Type
Thesis
Publisher
Santa Clara : Santa Clara University, 2026
Departments
Computer Engineering; Computer Science and Engineering; Electrical Engineering; Electrical and Computer Engineering
First Advisor
Andrew Wolfe
Second Advisor
Younghyun Cho
Abstract
Embedded systems are a key component of modern technology. They are found in areas such as medical devices, IoT, gaming, automobiles, and basic microcontrollers. In this field, low-power, small, and reliable processors are key. The Cortex-M0 is one of these crucial processors. However, compared to other architectures, such as RISC-V or MIPS, the Cortex-M0 is closed-source. This restricts educators, researchers, and smaller start-ups from viewing the implementation or making microarchitecture changes to this design for research and testing. Our project looks to implement an open-source microprocessor, allowing new access to the internals of a behaviorally accurate Cortex-M0 through a Verilog implementation for simulation and synthesis on an FPGA.
Our project resulted in a Verilog implementation of the Cortex-M0 capable of running the ARMv6-M instruction set with a core, AHB-Lite bus matrix, and NVIC. Our implementation was tested to match a commercial Cortex-M0 in both function and timing through comparisons between the Verilog simulation and real Cortex-M0 results from an STMicro STM32F0 Discovery Board. A standard benchmark test, CoreMark, was used to verify and validate the implementation when synthesized on an FPGA. The implementation is open-source licensed through GPLv3 with a public GitHub repository 1, making the code accessible to all for viewing and iterating. This project acts as a minimal implementation of the Cortex-M0, with many optional components not included, along with the Cortex-M0 being the lowest-level Cortex-M Series processor. Our work opens up multiple opportunities through a new computer hardware and research ecosystem open and accessible to all. Potential future projects could continue developing more of the Cortex-M Series, its features, or look into potential improvements that can be made to this processor.
Recommended Citation
Kelly, Bryce and Thornburg, Dylan, "Open Source ARM Cortex-M0 Processor" (2026). Interdisciplinary Design Senior Theses. 119.
https://scholarcommons.scu.edu/idp_senior/119
