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.

Share

COinS