Difficult Execution Time Data Analysis Radioactive Sources
Yes No

Purpose of the experiment

The purpose of this experiment is to demonstrate how a Python application can interact with FPGA firmware to configure and monitor a digital system. Students learn how to access memory-mapped registers in order to control the threshold discriminator and read the event counter implemented in the previous experiment.

Fundamentals
In FPGA-based data acquisition systems, configuration parameters and status information are often exposed through memory-mapped registers. These registers allow external software to configure firmware parameters and read measurement results. In this experiment, a Python program communicates with the FPGA firmware to:

  • set the threshold value of the discriminator,
  • reset the event counter,
  • read the number of detected events.

This approach reflects how many real detector systems are controlled, where software running on a computer manages configuration and data acquisition from programmable hardware.

Requirements
Python environment.

Carrying out the experiment

A Python script is used to communicate with the FPGA firmware and access the relevant registers. The script performs the following operations:

    • establishes the connection with the DT1260 board,
    • writes a threshold value to the discriminator register,
    • resets the event counter,
    • periodically reads the counter value.

By running the script while a signal is applied to the input, students can observe how the counter increases as events are detected.

Results

The Python application successfully accesses the registers controlling the threshold discriminator and event counter implemented in the FPGA firmware. This experiment demonstrates how software applications can interact with programmable hardware, enabling flexible control and monitoring of data acquisition systems.

Expected output.
Expected output.