IPBus 기반 I2C 관리 시스템 설계 및 구현

본 논문은 CBM DAQ 시스템에서 사용되는 AFCK 보드와 FMC 모듈의 I2C 장치를 IPBus를 통해 제어하기 위한 초기화 및 운영 모듈을 설계하고 검증한 내용을 다룬다. 전원 공급 시 ROM에 저장된 명령으로 필수 I2C 장치를 자동 초기화하고, 이후 Wishbone 인터페이스를 갖는 I2C 마스터를 IPBus 슬레이브로 연결해 실시간 제어가 가능하도록 구현하였다.

저자: Shiyu Luo, Junfeng Yang, Kezhu Song

IPBus 기반 I2C 관리 시스템 설계 및 구현
본 논문은 차세대 GBTx 기반 CBM(Compressed Baryonic Matter) 데이터 수집 시스템이 구축되기 전, DPB(Data Processing Board) 계층에서 사용되는 AFCK(AMC FMC Carrier Kintex) 보드와 그에 연결된 FMC 모듈들의 I2C 장치를 효율적으로 관리하기 위한 설계와 구현을 다룬다. CBM 실험은 FAIR(FAIR) 시설 내 다양한 검출기(MVD, STS, MUCH, RICH, TRD, TOF, PSD 등)와 연계된 고속 데이터 흐름을 처리해야 하며, 이 과정에서 보드 레벨의 저속 제어와 설정이 필수적이다. AFCK 보드에는 I2C 버스 멀티플렉서, 클럭 교차 스위치, 프로그래머블 크리스털, EUI‑48 EEPROM, 시스템 모니터링 IC 등 다수의 I2C 장치가 탑재되어 있다. 이들 장치는 IPBus라는 Ethernet 기반 슬로우 컨트롤 버스를 통해 원격으로 제어될 수 있지만, IPBus 자체가 정상 동작하기 위해서는 몇 가지 사전 설정이 필요하다. 구체적으로는 (1) 멀티플렉서를 통해 올바른 I2C 버스를 선택, (2) 클럭 교차 스위치를 통해 125 MHz 클럭을 1000BASE‑X/SGMII 인터페이스에 공급, (3) EEPROM에서 고유 MAC 주소를 읽어 IPBus 초기화에 사용, 이 세 가지가 선행되어야 IPBus 연결이 성립한다. 이를 해결하기 위해 논문에서는 두 단계로 구성된 I2C 관리 모듈을 제안한다. 첫 번째 단계는 전원 인가 시 자동 리셋에 의해 활성화되는 초기화 전용 모듈이다. 이 모듈은 FPGA 내부 ROM에 미리 저장된 16 bit 형식의 I2C 명령 시퀀스를 FSM으로 순차 실행한다. 명령어는 버스 번호(3비트), R/W 플래그(1비트), 레지스터 포트(4비트), 데이터(8비트)로 구성되어 있어, 멀티플렉서 선택, 프리스케일 설정, 제어 레지스터 쓰기 등 다양한 작업을 하나의 흐름으로 수행한다. 초기화가 끝나면 모듈은 자동으로 두 번째 단계인 IPBus 기반 I2C 마스터로 전환한다. 두 번째 단계는 Wishbone 인터페이스를 갖는 I2C 마스터 코어를 IPBus 슬레이브로 연결하는 구조이다. 이 마스터는 프리스케일 레지스터, 제어 레지스터, 전송/수신 레지스터, 명령/상태 레지스터 네 개의 8 bit 레지스터를 제공한다. IPBus 클라이언트(파이썬/CPP)에서 Ethernet 패킷을 통해 Wishbone 버스에 접근하면, 해당 레지스터를 읽고 써서 I2C 장치를 실시간으로 제어할 수 있다. 예를 들어, EEPROM에서 MAC 주소를 읽어 IPBus 초기화에 전달하고, 클럭 교차 스위치를 통해 125 MHz 클럭을 SGMII 포트에 라우팅하며, FMC 보드에 장착된 프로그래머블 크리스털을 원하는 주파수(예: 156.25 MHz)로 설정한다. 소프트웨어와 하드웨어의 연동 과정은 다음과 같다. 초기화 모듈이 전원 인가 직후 ROM 명령을 실행하면서 SCL 라인을 설정하고, I2C 버스를 활성화한다. 이후 EEPROM, 클럭 스위치, 멀티플렉서 등을 차례로 구성하고, 최종적으로 MAC 주소를 읽어 IPBus 초기화 파라미터로 전달한다. IPBus가 정상적으로 올라오면, IPBus‑I2C 마스터가 Wishbone을 통해 외부 제어에 노출되고, 운영자는 IPBus 명령을 이용해 언제든지 I2C 레지스터를 읽고 쓸 수 있다. 실험 결과, 제안된 초기화 모듈은 전원 인가 후 자동으로 모든 필수 I2C 장치를 설정했으며, IPBus 연결이 성공적으로 이루어졌다. 이후 IPBus를 통한 I2C 레지스터 조작은 실시간 모니터링 및 파라미터 튜닝에 사용될 수 있었으며, 전체 시스템이 CBM DPB 설계 요구사항을 충족함을 확인하였다. 특히, 초기화와 운영을 분리한 구조는 보드 재부팅 시마다 복잡한 수동 설정을 없애고, 시스템 가용성을 크게 향상시킨다. 결론적으로, 본 연구는 FPGA 내부 ROM 기반 초기화와 Wishbone‑IPBus 연동을 결합한 I2C 관리 솔루션을 제시함으로써, 고속 데이터 수집 시스템에서 저속 제어 인프라의 신뢰성과 확장성을 동시에 확보하였다. 향후 GBTx 기반 차세대 DAQ 시스템에도 동일한 설계 패턴을 적용할 수 있을 것으로 기대된다.

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기