Ethernet-Based Data Acquisition System for a Cosmic Muon Veto Detector
Ethernet-Based Data Acquisition System for a Cosmic Muon Veto Detector
플라스틱 신틸레이터와 SiPM으로 잡아낸 미약한 뮤온 신호를, 여러 보드에 걸쳐 정밀하게 디지털화하고 끊김 없이 백엔드로 보내야 하는 것이 입자물리 실험의 고질적 과제입니다. 이 프로젝트는 무겁고 비싼 VME 크레이트 대신 W5300 하드와이어드 이더넷 컨트롤러 + Spartan-7 FPGA(MicroBlaze) 조합으로, 저비용·고확장성의 이더넷 기반 데이터 수집(DAQ) 시스템을 구현해 그 답을 제시합니다.
COMPONENTS
Hardware components
- WIZnet W5300 — 하드와이어드 TCP/IP 이더넷 컨트롤러 (16-bit 병렬 버스, 8 소켓)
- Xilinx Spartan-7 FPGA — MicroBlaze 소프트코어 프로세서 호스팅
- DRS4 (Domino Ring Sampler) — 스위치드 커패시터 어레이 기반 고속 아날로그 파형 샘플러
- Pipelined ADC — DRS4가 보관한 아날로그 파형을 디지털 샘플로 변환
- SiPM (Silicon Photo Multiplier) — 신틸레이션 광자를 전기 신호로 변환
- Extruded Plastic Scintillator + WLS Fiber — 뮤온 통과 시 발광, 파장변환 광섬유로 광 전달
- Transimpedance Amplifier (TIA) — 미약한 SiPM 전류 신호 증폭
- Discriminator + Trigger Logic — 노이즈 제거 및 3-fold / 4-fold 동시계수(coincidence) 트리거 생성
- 9216-cell 하드웨어 FIFO, AXI Interconnect, Interrupt Controller, Clocking Wizard (FPGA 내부 IP)
Software & Tools
- MicroBlaze 펌웨어 — 인터럽트 구동(interrupt-driven) 수집/명령 처리 루틴
- Xilinx Vivado / AXI 메모리맵 설계 환경 (논문 명시 외 일반 도구 추정 — [확인 필요])
- C++ / Boost.Asio — 비동기·논블로킹 백엔드 통신 모델
- POSIX threads + Boost threads — UDP 명령 분배 / 보드별 TCP 수신 병렬 처리
- ROOT (binary file format) — 구조화된 이벤트 데이터 오프라인 저장·분석
- 실시간 GUI — 라이브 파형, 이벤트 필터링, 전하 히스토그램(charge histogram)
출처 안내 이 글은 IEEE 학술 논문 "Ethernet-based Data Acquisition System for a Cosmic Muon Veto Detector" (Raya Ghosh, Shivani Bhat, Satyanarayana Bheesette, Mandar Saraf, Ravindra Shinde, Prajjalak Chattopadhyay, Gobinda Majumder)를 바탕으로 합니다. 2026 International Conference on Emerging Trends and Innovations in ICT (ICEI), Pune, India에서 발표됐습니다 (DOI: 10.1109/ICEI65890.2026.11447885). 본 콘텐츠는 원문을 단순 번역하지 않고, WIZnet 메이커 독자가 W5300의 역할·동작 원리·구현 포인트를 이해할 수 있도록 기술적 관점에서 재구성한 소개 글입니다. 결과 그래프 등 논문 원문의 도표는 재현하지 않았으며, 상세 내용은 원 논문을 참조하시기 바랍니다.
작성자 / 출처 신뢰도
원 프로젝트 작성자 정보
이 연구는 두 기관의 협업으로 진행됐습니다.
- Tata Institute of Fundamental Research (TIFR), Dept. of High Energy Physics, Mumbai
- Mandar Saraf (mandar@tifr.res.in), Ravindra Shinde, Prajjalak Chattopadhyay, Gobinda Majumder
- Sardar Patel Institute of Technology (SPIT), Electronics & Telecom Engineering, Mumbai
- Raya Ghosh, Shivani Bhat, Satyanarayana Bheesette (bsn@spit.ac.in)
신뢰도 평가 — 높음. TIFR 측 저자진은 **인도 중성미자 관측소(INO, India-based Neutrino Observatory)**의 ICAL / mini-ICAL / Cosmic Muon Veto Detector(CMVD) 프로젝트를 장기간 수행해 온 검증된 연구 그룹입니다. 공개 출처로 확인되는 주요 실적:
- Gobinda Majumder, Mandar Saraf, Ravindra Shinde, B. Satyanarayana 등은 JINST, arXiv, INO 공식 출판 목록에 다수의 CMVD/ICAL 논문을 보유 ("Design, fabrication and large scale qualification of cosmic muon veto scintillator detectors," JINST 18 (2023) P05003; "Characterization of Silicon-Photomultipliers for a Cosmic Muon Veto detector," JINST 16 (2021) P11029 등).
- 본 논문의 참고문헌 [4][5]에서 인용된 선행 연구(INO ICAL RPC-DAQ용 TCP/IP 원격 펌웨어 업데이트, NIOS II 소프트코어 + 이더넷 솔루션, JINST 2025)는 동일 그룹의 임베디드 DAQ 계보를 보여줍니다.
- **B. Satyanarayana("bsn")**는 INO/ICAL 협력단의 잘 알려진 연구자로, 통상 TIFR 소속(bsn@tifr.res.in)으로 활동합니다. 본 논문에서는 SPIT 이메일(bsn@spit.ac.in)로 표기되어 있어, SPIT와의 공동/겸직 형태로 추정됩니다 (정확한 소속 관계 — [확인 필요]).
게시자 / 재구성자 정보
- SPIT 측 학부 저자(Raya Ghosh, Shivani Bhat)는 개별 공개 활동 이력(GitHub, 블로그 등)이 확인되지 않습니다 — [확인 필요].
- 이 글의 WIZnet Maker 게시자/재구성자 정보는 게시 시점에 별도 기입 필요 — [확인 필요].
신규 콘텐츠 요약
- 무엇: 우주선 뮤온 검출기(CMVD)를 위한 이더넷 기반 고속 DAQ 시스템. VME 크레이트를 대체하는 컴팩트·분산형 구조.
- 사용 칩: WIZnet W5300 (하드와이어드 TCP/IP), Xilinx Spartan-7 FPGA + MicroBlaze 소프트코어, DRS4 파형 샘플러, pipelined ADC, SiPM.
- 프로토콜: TCP(대용량 파형/상태 데이터) + UDP 멀티캐스트·유니캐스트(명령·제어), 50 Mbps 인터페이스.
- 플랫폼: FPGA 프론트엔드(MicroBlaze 펌웨어) + C++/Boost.Asio 멀티스레드 백엔드 서버 + 실시간 GUI.
- 핵심 가치: 프로토콜 처리를 W5300으로 오프로드해 FPGA·프로세서 자원을 수집·제어에 집중. 인터럽트 구동 + 소켓 기능 분리로 저(低) dead-time, 고(高) throughput, 다중 보드 동기화를 달성하면서 비용을 크게 낮춤.
유사한 기존 콘텐츠
WIZnet Projects 데이터셋(7,500+ 건)을 칩·플랫폼·프로토콜·응용분야 기준으로 교차 필터링해, 2개 이상 차원이 겹치는 콘텐츠를 선정했습니다.
1. Novel Readout Electronics for Large Field-of-View Gamma Camera (Physica Medica 2024)
- 링크: https://maker.wiznet.io/Benjamin/projects/development-of-novel-low-cost-readout-electronics-for-large-field-of-view-gamma-camera-detectors/
- 유사한 이유 (겹침 3+): 동일 칩(W5300) + 동일 응용(방사선 검출기 readout, 감마카메라 PMT 신호 처리) + 동일 가치(고가 상용 DAQ를 저비용 하드웨어로 대체). 이번 뮤온 DAQ와 문제의식이 사실상 같은 계열입니다.
- 다른 점: 감마카메라는 핵의학용으로 PMT 어레이의 위치·에너지(X, Y) 계산이 목적이며, 아날로그 신호 축약(reduction)으로 채널 수를 줄이는 데 초점. 반면 이번 프로젝트는 DRS4 기반 풀-파형(full-waveform) 디지털화와 다중 보드 동기 트리거가 핵심.
- 연결 포인트: "W5300 = 과학용 검출 readout의 저비용 네트워크 백본"이라는 공통 내러티브로 묶어 시리즈화 가능.
2. Implementing High-Speed Ethernet Communication with WIZnet W5300 and FPGA
- 링크: https://maker.wiznet.io/irina/projects/implementing-high-speed-ethernet-communication-with-wiznet-w5300-and-fpga/
- 유사한 이유 (겹침 4): 동일 칩(W5300) + 동일 플랫폼(FPGA, 16-bit 병렬 버스 인터페이스) + 동일 프로토콜(TCP/UDP) + 동일 특성(실시간 고속). W5300–FPGA 인터페이스 설계의 정석을 다룬 글로, 이번 프로젝트의 하드웨어 결합 방식과 직접 대응됩니다 (조회수 1,300+).
- 다른 점: 해당 글은 RF/전자전 신호 처리 시스템과 PoE 전원 설계에 초점을 둔 "인터페이스 가이드". 이번 프로젝트는 그 인터페이스 위에 DRS4 수집·트리거·멀티보드 DAQ·백엔드 서버까지 얹은 완성형 응용입니다.
- 연결 포인트: 이 가이드를 "W5300×FPGA 입문" → 본 프로젝트를 "실전 DAQ 적용 사례"로 연결하면 학습 경로가 매끄럽습니다.
3. ad9226_cyclone5_w5500 — FPGA 직접 구동 고속 ADC DAQ
- 링크: https://maker.wiznet.io/scott/projects/ad9226-cyclone5-w5500/
- 유사한 이유 (겹침 3): 동일 플랫폼(FPGA, Cyclone V) + 동일 응용(고속 ADC → 이더넷 스트리밍 DAQ 파이프라인) + 동일 가치(TCP/IP 스택을 WIZnet 하드웨어 칩에 오프로드). 칩은 W5500이지만 동일 아키텍처 계열.
- 다른 점: AD9226 프로젝트는 MCU·소프트웨어 스택 없이 RTL FSM이 W5500을 직접 구동하는 "FPGA-only" 최소 구성. 이번 프로젝트는 MicroBlaze 소프트코어 + 인터럽트 펌웨어로 패킷화·다중소켓·캘리브레이션 같은 복잡한 제어를 수행한다는 점이 대비됩니다.
- 연결 포인트: "FPGA에서 WIZnet 칩을 구동하는 두 가지 철학 — 순수 RTL(W5500) vs. 소프트코어 펌웨어(W5300)" 비교 글의 좋은 소재.
참고로 같은 계열의 TangNano_W5300_TOE_GOWIN (https://maker.wiznet.io/simons/projects/tangnano-w5300-toe-gowin/) 은 Verilog FSM으로 W5300을 FPGA에서 제어하는 예제로, "W5300×FPGA RTL 제어"를 더 깊이 보고 싶은 독자에게 연결할 수 있습니다.
차이점과 확장 가치
기존 콘텐츠 대비 차별점
확장 가치 / 연결 아이디어
- W5300 → W6300(10/100 + 향상된 처리량) 또는 W5500 계열로 포팅해 처리량·전력·폼팩터 트레이드오프를 비교하는 후속 콘텐츠.
- 50 Mbps 운용점을 더 높은 throughput으로 올릴 때의 FIFO 깊이·소켓 버퍼·dead-time 영향 분석.
- 멀티캐스트 기반 명령 동기화(HCPI)를 산업용 분산 센서 어레이/예지보전 같은 비(非)물리 분야로 일반화 — "결정론적 유선 연결이 필요한 다중 노드 수집"이라는 공통 프레임으로 묶을 수 있습니다.
PROJECT DESCRIPTION
문제 제기: 수십~수백 개의 검출 채널에서 쏟아지는 고해상도 파형을, 어떻게 패킷 충돌 없이·낮은 지연으로·보드 간 시간 동기를 유지하며·원격으로 재구성 가능하게 수집할 것인가? 그리고 이 모든 것을 무거운 VME 크레이트와 고가 전용 전원 없이 해낼 수 있는가?
이 프로젝트의 답은, "네트워크 프로토콜 처리를 FPGA 바깥의 하드웨어 칩(W5300)으로 완전히 분리하고, 프로세서는 인터럽트 구동으로 수집·제어에만 집중한다" 는 설계 철학입니다. 통신을 칩에 위임함으로써 FPGA fabric과 MicroBlaze는 파형 수집·패킷화·캘리브레이션 같은 본질적 작업에 자원을 쓸 수 있고, 소켓을 기능별로 분리해 데이터·명령·진단 흐름이 서로 간섭하지 않게 됩니다.
0. 핵심 기술 / 부품 설명
이 시스템의 두 주인공은 W5300(연결)과 DRS4(파형 포착)입니다.
- WIZnet W5300 은 TCP/IP·UDP·IP·ARP·ICMP를 하드웨어로 처리하는 이더넷 컨트롤러입니다. 8개의 독립 소켓과 16-bit 병렬 버스를 제공해 MCU뿐 아니라 FPGA와도 직접 결합됩니다. 핵심 가치는 오프로드입니다 — 소프트웨어 TCP/IP 스택을 FPGA에 구현하면 로직 자원과 검증 부담이 커지는데, W5300은 그 부담을 칩이 대신 짊어집니다.
- DRS4 는 스위치드 커패시터 어레이(switched capacitor array)에 아날로그 파형을 고속으로 "저장"한 뒤, 트리거가 오면 그 내용을 천천히 ADC로 읽어내는 방식의 파형 샘플러입니다. 짧고 빠른 펄스(뮤온 신호)를 잃지 않고 풀-파형으로 잡아내는 것이 역할입니다.
- 그 앞단에는 신틸레이터→WLS 광섬유→SiPM→TIA→Discriminator 로 이어지는 검출 체인이 있습니다. 뮤온이 신틸레이터를 통과하며 만든 빛이 SiPM에서 전기 신호가 되고, 미약하므로 TIA로 증폭됩니다.
1. 개발 도구 / 플랫폼 설명
FPGA에는 하드웨어 IP와 소프트코어 펌웨어가, 백엔드에는 C++ 멀티스레드 서버가 자리합니다.
- Spartan-7 FPGA + MicroBlaze 소프트코어: 복잡한 분기·패킷화·캘리브레이션 같은 "순차적 제어"를 FPGA fabric 대신 소프트코어 프로세서에 맡깁니다. AXI Interconnect가 프로세서와 메모리맵 주변장치(DRS 제어 레지스터, W5300)를 연결합니다.
- Clocking Wizard: MicroBlaze·DRS4·ADC 등 서브시스템 간 위상 정렬을 보장 — 분산 보드 간 시간 정밀도의 핵심.
- Boost.Asio (C++): 비동기·논블로킹 모델로 여러 보드의 TCP 스트림을 동시에 수신.
- ROOT: 입자물리에서 표준으로 쓰이는 데이터 분석 프레임워크. 이벤트를 구조화된 바이너리로 저장해 오프라인 분석을 지원.
2. 동작 원리
아날로그 빛 신호 → 디지털 파형 → 이더넷 패킷 → 백엔드 분석으로 이어지는 단방향 파이프라인입니다.
- 뮤온이 신틸레이터를 통과 → 발광 → WLS 광섬유 → SiPM이 전기 신호로 변환.
- 신호가 두 경로로 분기: ① DRS4 입력(파형 디지털화용), ② Discriminator(임계값으로 노이즈 제거 후 디지털 펄스 출력).
- Discriminator 펄스를 Trigger Logic이 모아 3-fold / 4-fold 동시계수 트리거를 생성, 여러 DRS4 보드에 분배해 동기 포착.
- 트리거 수신 시 DRS4가 스위치드 커패시터 어레이에 파형 저장 → pipelined ADC가 디지털 샘플로 변환 → 9216-cell 하드웨어 FIFO에 적재.
- FIFO 임계값/외부 트리거가 인터럽트를 발생 → MicroBlaze가 FIFO를 읽어 포맷·패킷화 → W5300을 통해 이더넷 전송.
- 백엔드 서버가 TCP로 파형/상태를, UDP로 명령을 주고받으며 ROOT 저장 + 실시간 GUI 표시
3. 장치 A 구현 — FPGA 프론트엔드 보드 (검출 → 수집 → 전송)
프론트엔드는 "인터럽트 중심(interrupt-centric)" 제어로 dead-time을 최소화합니다.
DRS4·ADC가 채운 FIFO가 임계값에 도달하거나 외부 트리거가 들어오면 이벤트 인터럽트가 Interrupt Controller를 거쳐 MicroBlaze로 라우팅됩니다. 프로세서는 폴링이 아니라 인터럽트로 반응하므로, 데이터가 준비된 순간에만 개입해 CPU 시간을 낭비하지 않습니다. 동시에 고우선순위 인터럽트가 들어오는 UDP 명령(수집/캘리브레이션/원격제어)을 처리합니다.
// 프론트엔드 인터럽트 구동 수집 (의사코드)
on FIFO_threshold_or_trigger_IRQ:
samples = read_FIFO(DRS4_channels) // 하드웨어 FIFO 비우기
pkt = format_and_packetize(samples, timestamp)
w5300_send(SOCKET_TCP_EVENT, pkt) // 이벤트 데이터 전송
on UDP_command_IRQ (high priority): // 명령은 수집보다 우선
cmd = w5300_recv(SOCKET_UDP)
dispatch(cmd) // start / stop / calibrate / configure / reset4. 장치 B 구현 — 백엔드 서버
백엔드는 명령은 스레드로 "퍼뜨리고", 데이터는 보드별 스레드로 "받아들이는" 멀티스레드 구조입니다.
- UDP (유니캐스트/멀티캐스트): 유니캐스트는 초기화·캘리브레이션·리셋처럼 개별 보드에 보내는 명령, 멀티캐스트는 모든 보드 동기 제어에 사용.
- TCP: 캘리브레이션·ROI(관심영역) 파형·하우스키핑 메트릭 등 보드가 보내는 데이터를 수신.
- 스레딩: POSIX 스레드가 병렬 UDP 명령 분배를, Boost 스레드가 보드별 TCP 수신을 담당 → 저지연·고확장.
- 저장·표시: 모든 데이터를 구조화된 바이너리(ROOT)로 아카이브하고, GUI는 유니캐스트로 약 100 µs 주기 갱신해 라이브 파형·이벤트 필터링·채널별 제어를 제공.
5. 핵심 통신 / 제어 로직 — W5300의 소켓 분리
W5300의 4개 소켓을 "기능별 전용 차선"처럼 나눈 것이 이 설계의 백미입니다.
* HCPI = Hybrid Command Processing Interface
이렇게 스트림을 기능으로 분리하면 패킷 충돌 위험이 줄고, 명령·이벤트·진단이 동시에 흘러도 서로 간섭하지 않습니다. "신뢰성이 중요한 대용량 파형은 TCP, 가볍고 즉각적인 명령은 UDP"라는 프로토콜 분담이 그대로 소켓 배치에 반영돼 있습니다.
6. 검증 / 예외 처리
노이즈와 우연한 단일 채널 신호를 걸러내는 1차 방어선이 트리거 로직과 캘리브레이션입니다.
- Discriminator 임계값: 유효 펄스만 디지털 출력으로 통과시켜 노이즈를 사전 차단.
- 3/4-fold 동시계수: 여러 검출면에서 동시에 신호가 잡혀야 트리거 → 우발적 단일 히트(잡음·암계수)를 배제하고 실제 뮤온 이벤트만 수집.
- Offset Calibration: 백엔드 플로우에 명시된 오프셋 보정 단계로 채널 간 기준선 차이를 정렬.
- 신호 무결성 확인: 결과 파형(C0, C2, C4, C6)이 날카롭고 베이스라인 노이즈가 적게 나타나, 잘 정의된 뮤온 이벤트임을 검증.
7. 서버 & 결과
실시간 GUI에서 파형을 보고, start/stop 셀로 전하(charge)를 적분해 히스토그램으로 평가합니다.
- 4개 채널의 실시간 ADC 파형이 안정적이고 진폭이 큰 뮤온 펄스로 나타남 → 양호한 신호 품질.
- 사용자가 파형 내 start/stop 셀을 지정하면 해당 구간을 적분해 전하 히스토그램을 생성, 후처리(post-acquisition) 정밀 평가 가능.
- 데이터는 ROOT 바이너리로 저장되어 조직적인 오프라인 분석을 지원.
Takeaways
- 연결은 칩에 맡겨라. W5300으로 TCP/IP를 오프로드하면 FPGA·프로세서 자원을 본질(수집·제어)에 집중할 수 있고, 검증 부담도 줄어든다.
- 소켓을 기능으로 나눠라. 명령/이벤트/진단을 전용 소켓·프로토콜(UDP/TCP)로 분리하면 충돌 없이 동시 흐름이 가능하다.
- 인터럽트 구동 + 동기 클럭이 dead-time과 시간 정밀도를 결정한다. 멀티보드 입자물리 실험에서 가장 중요한 두 지표다.
- 저비용 상용 부품으로 VME급 시스템을 대체할 수 있다. 과학 계측의 비용 장벽을 낮추는 실증 사례.
개선 여지
- 처리량: 현재 50 Mbps 운용점. 더 높은 throughput이 필요할 경우 W5300의 한계와 FIFO 깊이·소켓 버퍼 튜닝, 또는 상위 칩 검토 필요.
- 칩 세대: W6300 등 차세대 하드와이어드 컨트롤러로 포팅 시 처리량·전력·IPv6 지원 측면의 이점 비교 가치.
- 펌웨어 업데이트: 참고문헌의 TCP/IP 원격 펌웨어 업그레이드 기법을 본 W5300 구조에 통합하면 대규모 보드 어레이의 유지보수성이 향상될 것 — 본 논문 범위 외, 후속 과제로 [확인 필요].
- 보안: 멀티캐스트 명령(HCPI)의 인증·무결성 보호는 논문에 명시되지 않음 — 산업 적용 시 보강 포인트.
신규 설계 시 참고
- FPGA에서 W5300을 쓸 때는 16-bit 병렬 버스 인터페이스(CS/RD/WR/RESET) 핸들링이 출발점 — 유사 콘텐츠 #2(irina) 가이드 참조.
- 소프트코어(MicroBlaze) 펌웨어 vs. 순수 RTL(FSM) 중 선택은 제어 복잡도에 달려 있다. 복잡한 패킷화·다중소켓·캘리브레이션이 필요하면 소프트코어, 최소 지연·최소 자원이면 RTL(유사 콘텐츠 #3, TangNano 예제 참조).
- 멀티보드 동기가 필요하면 클럭 위상 정렬(Clocking Wizard 등)과 공통 트리거 분배를 설계 초기에 확정할 것.
- 데이터·명령·진단은 소켓 단위로 분리하는 것을 기본 원칙으로 삼으면 확장 시 충돌을 피할 수 있다.
Documents
- 원 논문: R. Ghosh, S. Bhat, S. Bheesette, M. Saraf, R. Shinde, P. Chattopadhyay, G. Majumder, "Ethernet-based Data Acquisition System for a Cosmic Muon Veto Detector," 2026 International Conference on Emerging Trends and Innovations in ICT (ICEI), Pune, India, Jan 9–11, 2026. DOI: 10.1109/ICEI65890.2026.11447885
- 관련 선행 연구 (동일 그룹):
- M. Saraf et al., "Design, fabrication and large scale qualification of cosmic muon veto scintillator detectors," JINST 18 (2023) P05003. (arXiv:2301.12486)
- M. Jangra et al., "Characterization of Silicon-Photomultipliers for a Cosmic Muon Veto detector," JINST 16 (2021) P11029.
- Y. Elangovan et al., "TCP/IP based remote firmware upgradation for INO ICAL RPC-DAQ modules," JINST 20 (2025) P03018.
- Y. Elangovan et al., "NIOS II soft-core processor and ethernet controller solution for RPC-DAQ in INO ICAL," JINST 20 (2025) P01021.
- WIZnet Maker 관련 콘텐츠:
- W5300 감마카메라 readout — https://maker.wiznet.io/Benjamin/projects/development-of-novel-low-cost-readout-electronics-for-large-field-of-view-gamma-camera-detectors/
- W5300 × FPGA 고속 이더넷 — https://maker.wiznet.io/irina/projects/implementing-high-speed-ethernet-communication-with-wiznet-w5300-and-fpga/
- FPGA 직접 구동 ADC DAQ (W5500) — https://maker.wiznet.io/scott/projects/ad9226-cyclone5-w5500/
- TangNano W5300 TOE (Verilog FSM) — https://maker.wiznet.io/simons/projects/tangnano-w5300-toe-gowin/
