🧠 BTF Data Acquisition – Overview
project: https://github.com/infn-epics/epics-btf-daq
📘 Introduzione
L’acquisizione dati del sistema BTF (Beam Test Facility) è basata su moduli VME e un controller ETH2VME (CAEN V4718).
Il setup hardware coinvolge principalmente i seguenti dispositivi:
| Modulo | Tipo | Descrizione |
|---|---|---|
| CAEN V513 | PIO | Modulo di I/O digitale |
| SIS3800 | Scaler | Contatore/scaler per sincronizzazione e conteggio trigger |
| CAEN 965 | QDC | QDC a 16 canali (integrazione cariche a bassa risoluzione)base address 0xee00 |
| CAEN 792 | QDCTDC | QDC TDC a 16 canali, software analogo al 965 |
| SIS 3153 | Controller VME | Bridge Controller ETH2VME ip 192.168.189.92 |
📎 Documentazione di riferimento:
🔗 BTF – Documentazione tecnica
...
Lettura iniziale dello scaler
Si legge il contatore SIS3800 (canale 30) per sincronizzare il ciclo di acquisizione.
Serve anche a misurare se durante il processo vengono persi eventi.
Acquisizione dei QDC/TDC
caen965_acquire_channels_poll(...)→ legge i 16 canali del QDC965.caen792_acquire_channels_poll(...)→ legge i 16 canali del QDC792.
Lettura finale dello scaler
Dopo l’acquisizione vengono riletti i canali 30 e 31 dello scaler.
La differenza tra i contatori prima e dopo indica il numero di trigger/eventi persi.
acquisizione
Calcolo e log
lost: eventi persi nel ciclo correntetot_lost: totale eventi persi
complessivamenteStampa quindi un log dettagliato:complessivamente
Il programma calcola:
(loop, ciclo965, ciclo792, counter_before, counter_after, lost, tot_lost, tempo_acquisizione)
🔧 Esempio di codice funzionante:
👉 test_btf_daq2.cpp
...
I moduli sono dispositivi VME gestiti tramite il controller CAEN V4718 (ETH2VME).ETH2VME SIS3153
Questo dispositivo permette di accedere al bus VME via Ethernet.
📗 Manuale tecnico:
🔗 UM8305 - V4718/VX4718 User Manual (CAEN)
...
🧠 Librerie e software
...
CAEN fornisce la libreria CAENVMELib, che consente di eseguire operazioni di lettura/scrittura VME via Ethernet.
Il tipico flusso di utilizzo è il seguente:
...
Inizializzare un oggetto controller (connessione con ETH2VME).
...
Accedere ai moduli VME specificando i relativi indirizzi.
Esiste un controllo EPICS per il SIS 3153 (USB):
https://github.com/epics-modules/SIS3153
qui le API che ho scritto per accedere SIS via ethernet:
https://baltig.infn.it/chaos-lnf-control/chaos-common-vme/-/tree/master/core?ref_type=heads
...
...
🔗 Integrazione con EPICS
...
Tuttavia, la maggior parte di questi moduli presuppone un controller VME locale (VMIC), con mapping diretto della memoria.
Nel caso del V4718 (ETH2VME), invece, la comunicazione avviene via rete, quindi occorre verificare se la CAENVMELib consente di emulare il mapping di memoria tramite driver Linux. Altrimenti l'uso dei moduli EPICS QDC,TDC che si trovano diventa meno immediata in quanto vanno utilizzate funzioni per l'accesso.Un esempio di integrazione EPICS basato su CAENVMELib è disponibile qui:🔗 EPICS softIoc con CAENVMELib – ESS Bilbao
...
🧭 Prossimi passi
Studiare il funzionamento della CAENVMELib con il controller V4718 (ETH2VME).
Implementare un driver EPICS che:
Inizializzi e gestisca i moduli CAEN965 e CAEN792.
Esegua la lettura dei canali e lo scarico dei dati via Ethernet.
Supporti la sincronizzazione con lo scaler SIS3800.
...
📎 Riferimenti
...