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)
Duration
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
Solution
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