Field programmable gate arrays (FPGAs) are configurable digital electronic devices capable of providing high-speed, low-latency and controlled latency digital interfaces to experiments. For example, FPGAs have been used in fluorescence lifetime measurements, various imaging methods, detection of photon correlations, gravitational wave detectors, and gravimeters. This course will equip students with the basic knowledge of how to interface physics experiments to digital electronics, and how to program FPGAs. An introduction to hardware description languages (HDLs) is given on the example of Verilog. HDLs are fundamentally different from computer programming languages and understanding them is crucial for the use of FPGAs. After completion, participants will be able to integrate FPGAs into their own experiments, create simple FPGA configurations, understand common problems and strategies to overcome them, and be aware of resources to help extend these skills

Link to course

FPGA Programming for Physicists

Course contact

Johannes Herrnsdorf


12 hours (professional development)