Initial idea by Hannes and Dominique. To be discussed.

Name of the exercise

Data readout from a PCI module

Responsible for the exercise

Hannes Sakulin / Dominique Gigi

Description of the exercise

This exercise uses the same hardware as the exercise "Programming an FPGA to generate events".

An event generator similar to the one developed in exercise "Programming an FPGA to generate events". This event generator will send more complex events with headers, trailers and payload over an SLINK.

On the receiver side, students will develop software in C++ to read data from the receiver module and to decode the received events. The different fields in the header, trailer and payload should be displayed in a human-readable format. The software will access the PCI readout module using the HAL library.

What will the students learn

  • reading out data from a PCI module (G-III) via the PCI bus using a library
  • handling of digital data in a C++ program
    • e.g. extracting bit-fields from data words
  • Optionally if time permits to prepare the exercise: read-out by DMA (Direct Memory Access)


2 hours.

List of material

Same as the exercise "Programming an FPGA to generate events"

  • 2 PCs (can be provided by CMD)
  • 2 G-III cards (can be provided by CMD)
  • SLINK sender card (can be provided by CMD)
  • SLINK receiver card (can be provided by CMD)
  • SLINK cable (can be provided by CMD)

Optionally - in order to receive external triggers:

  • Trigger generator (e.g. NIM) & converter to TTL
  • Lemo cable (can be provided by CMD)
  • G-III add-on to receive triggers (can be provided by CMD)

Relevant information

Add URLs to:
  • Related lectures (typically the exercises will take place after the related lectures)

The manuals of the devices (modules, scopes, etc) and S/W packages used in the exercise

In addition you have to provide:

  • An installation guide. This document is for the supervisor of the exercise. It has to describe in detail how the material has to be set up before the exercise can start (Cabling, S/W installation, etc.)
  • An instruction sheet. This document is for the students and tells them whay they have to do


You have to provide a possible solution for the exercise witch the studens can consult after the exercise or if they get stuck. The solution should not be in this TWiki (we don't want the students to see it)

-- HannesSakulin - 2009-09-08

Edit | Attach | Watch | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 2009-09-08 - HannesSakulin
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback