This course will be given in English.
Subject and Goal
The course Reconfigurable Computing introduces into the field of computing with reprogrammable hardware structures. Computing systems built from reprogrammable hardware structures do not rely on a fixed hardware, but adapt their hardware architecture to the application under execution. The field was formed in the early 1990s when Field-programmable Gate Arrays (FPGAs) became commercially available that were powerful enough to be used for computing. Today, FPGA-based high-performance systems have outperformed state-of-the-art computers for many problems including database search, genomic sequence scanning, and cryptography. In embedded systems, FPGAs accelerate system functions, reduce system cost and energy consumption, and enable hardware-on-demand functionality. The course covers the following list of topics:
- Introduction to reconfigurable computing
- Evolution of programmable hardware devices
- Architectures of FPGAs
- Computer-aided design for FPGAs
- Application domains for FPGAs
- System design and programming reconfigurable computers
Who Should Take this Course?
This is an elective course for students of the Master programs Computer Science and Computer Engineering. There are no formal prerequisites for taking this course. However, since the course covers a wide range of topics from the architectures of micro/nano-electronic devices to algorithms for design automation, and the lab includes programming of hardware and software, we expect that students have completed Bachelor-level courses in digital design, algorithms, and programming.
Dates and Times, Materials
The course includes lectures, paper & pencil exercises and lab assignments. Teaching hours are on Wednesday, 11:15-12:45 in room D2, starting with October 9, 2019. The lab will be organized in two parallel groups with time slots on Wednesday, 13:00-16:00 and 16:00-19:00. The starting week for the lab will be announced later in the course.
The course materials will be provided via this PANDA course.