TY - GEN
T1 - A Comparative Analysis of ARM and RISC-V ISAs for Deeply Embedded Systems
AU - Simson, Natalie
AU - Tahiraga, Ares
AU - Ecker, Wolfgang
N1 - Publisher Copyright:
© MBMV 2024. All rights reserved.
PY - 2024
Y1 - 2024
N2 - In recent years, the open-source RISC-V Instruction Set Architecture (ISA) has proven to be a strong competitor to the long-established ARM architectures. Following this development, it is therefore of high interest to have a clear and comprehensive understanding of how RISC-V compares to ARM. So far, existing literature focuses more on comparing specific aspects of RISC-V and ARM processors, such as performance [1], energy efficiency [2], or code size [3]. However, none of the available studies take a holistic approach and compare the ISAs themselves. This paper aims at an in-depth analysis and comparison of two specific ISAs suited for embedded systems. More precisely, the subset of the Thumb instruction set supported by the ARM Cortex-M0+ processor and RISC-V’s RV32IMCZcZicsr instruction set. Our comparison covers the following aspects: first, the programmer’s level and encoding formats. A key difference is that ARM and RISC-V focus on different constraints inherent with embedded systems: ARM on compression to achieve a smaller memory footprint and RISC-V on regular formats to simplify the decoding which can reduce the area requirements of the core. Second, the individual instruction sets. Both ISAs provide a lot of instructions with similar functionality. However, there are some instructions supported by the ARM Cortex-M0+ that the chosen RISC-V ISA cannot easily replicate. Finally, we provide sequences of RISC-V instructions that can replicate specific Thumb instructions. While RISC-V can emulate all of them, it can’t perform them as efficiently as ARM as it needs more instructions to provide the same functionality.
AB - In recent years, the open-source RISC-V Instruction Set Architecture (ISA) has proven to be a strong competitor to the long-established ARM architectures. Following this development, it is therefore of high interest to have a clear and comprehensive understanding of how RISC-V compares to ARM. So far, existing literature focuses more on comparing specific aspects of RISC-V and ARM processors, such as performance [1], energy efficiency [2], or code size [3]. However, none of the available studies take a holistic approach and compare the ISAs themselves. This paper aims at an in-depth analysis and comparison of two specific ISAs suited for embedded systems. More precisely, the subset of the Thumb instruction set supported by the ARM Cortex-M0+ processor and RISC-V’s RV32IMCZcZicsr instruction set. Our comparison covers the following aspects: first, the programmer’s level and encoding formats. A key difference is that ARM and RISC-V focus on different constraints inherent with embedded systems: ARM on compression to achieve a smaller memory footprint and RISC-V on regular formats to simplify the decoding which can reduce the area requirements of the core. Second, the individual instruction sets. Both ISAs provide a lot of instructions with similar functionality. However, there are some instructions supported by the ARM Cortex-M0+ that the chosen RISC-V ISA cannot easily replicate. Finally, we provide sequences of RISC-V instructions that can replicate specific Thumb instructions. While RISC-V can emulate all of them, it can’t perform them as efficiently as ARM as it needs more instructions to provide the same functionality.
UR - http://www.scopus.com/inward/record.url?scp=85192989591&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:85192989591
T3 - MBMV 2024: Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen - 27. Workshop
SP - 110
EP - 119
BT - MBMV 2024
PB - VDE VERLAG GMBH
T2 - 27. Workshop Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen, MBMV 2024 - 27th Workshop on Methods and Description Languages ??for Modeling and Verification of Circuits and Systems, MBMV 2024
Y2 - 14 February 2024 through 15 February 2024
ER -