Research Assistant / PhD position (m/f/d) for Embedded Software Design for Heterogeneous AI Platforms with location in …
Tätigkeitsprofil:
We are looking for a motivated PhD candidate to join the System Architectures Department. The research focus is on compiler and toolchain development for a heterogeneous embedded edge platform combining RISC-V-based
processors, FPGAs, and custom accelerators. The platform integrates conventional and non-conventional AI accelerators — including emerging technologies beyond CMOS — and a key challenge is mapping and scheduling
application workloads across these components at the compiler and runtime level. While RISC-V is our current baseline, the flow should not be limited to a single ISA or platform.
This position offers a deep insight into the programming of state-of-the-art hardware systems. It is anticipated the candidate will work towards a PhD. Your detailed tasks will include:
- Compiler backend development and toolchain integration for a custom embedded target platform
- Mapping and scheduling of application workloads onto heterogeneous processor-accelerator architectures
- Integration of accelerators and application-level inference pipelines into the software stack at the operator and runtime level
- Hardware-independent development and testing using ISA simulators (e.g. QEMU, Spike)
- Co-design support: accelerator selection, interface specification, and dimensioning in collaboration with hardware teams
- Continuous integration and deployment of hardware and software IP
Anforderungsprofil:
You hold a Master's degree in Computer Science, Electrical Engineering, or a related field. You have strong foundations in compiler construction (e.g. LLVM, code generation, intermediate representations) and proficiency in
C/C++ and Python. Familiarity with MLIR or TVM is a plus. You are comfortable working close to hardware and understanding system-level constraints. Familiarity with embedded or bare-metal targets is a plus, as is experiencewith heterogeneous computing concepts such as operator scheduling or memory hierarchies. Knowledge of hardware description or simulation environments is beneficial.
You will also be a strong team player. We are looking for a team member who can structure their own work and bring a well-organized and systematic approach to working with creative minds. You will be an ideal fit for this position if
you have experimental, analytical, and problem-solving skills, very strong communication skills, and the ability to quickly learn how to use the latest technical equipment, including various software. You must be fluent in English. German language skills are welcome. Further development of German language skills is expected and strongly encouraged, e.g. through in-house language courses and intensive courses.