course: Bachelor-Praktikum ARM Processors for Embedded Cryptography

teaching methods:
practical course
responsible person:
Prof. Dr.-Ing. Tim Güneysu
Prof. Dr.-Ing. Tim Güneysu (ETIT), Dr.-Ing. Max Hoffmann (ETIT)
see examination rules
offered in:
winter term

dates in winter term

  • start: Thursday the 14.10.2021
  • lab Thursdays: from 16:15 to 17.45 o'clock in ID 04/445


Graduates of this course know the architecture and internal functionalities of microcontrollers. They know how a processor executes machine code and are able to write low-level programs using assembly. Furthermore, they are able to write very efficient implementations for the ARM architecture, which provide a significant performance boost in comparison to C implementations. Since this lab course focuses on ARM processors and ARM is the market leader for embedded processors, the contents of this course are also relevant outside of academia. This lab course tries to provide practically relevant lectures and exercises such that participants learn something they may use in the future.


In this lab course participants learn how to work with ARM microcontrollers. Therefore every participant gets a board with an ARM Cortex-M4 based microcontroller. First, participants learn the basics of CISC and RISC microcontrollers. They learn how hardware executes code and how they can write machine-oriented code themselves. After the first two sessions, they are able to write small programs in assembly for the ARM architecture. In the following sessions, they extend their knowledge of the ARM architecture and their board. The participants learn how microcontrollers communicate with each other and with peripherals. The theory is paired with practical exercises. Participants write programs in C and assembly to use different functionalities of their boards. Once they are more familiar with ARM assembly, they have to implement a variety of cryptographic applications. The focus is always on efficiency and they have to be faster than a C implementation in each task.



recommended knowledge

Basic knowledge of cryptography and C


COVID-19: In the winter term 2021/22 this lecture is offered in person again. All necessary information is available via the Moode course [1]. In order to get the course password, please send an informal email from your RUB-mail address including your matriculation ID to max.​hoffmann@​rub.​de. Messages from other mail domains are not egligible.


The sessions are held in German, all course documents and exercises are available in English.