Muxwright

펌웨어 및 기술

Pluto는 USB로 약 7 MS/s만 유지할 수 있지만, 8 MHz DVB-T에는 9.14 MS/s가 필요합니다. 그래서 변조기가 장치 자체에서 실행됩니다.

  1. PC / WSLffmpeg + TSDuck: 비디오, 오디오, SI 테이블, 고정 비트레이트
  2. UDPUSB 네트워크로 최대 32 Mbit/s 전송 스트림
  3. Pluto ARM코어 0: RS, 인터리버, 컨볼루션 부호, 매퍼 · 코어 1: NEON IFFT
  4. DAC → HFAD9364, 70 MHz–6 GHz, 감쇠 0–89.75 dB

고정소수점 + NEON

부호기, 인터리버, 매퍼, IFFT는 고정소수점입니다. Stockham radix-4 IFFT는 NEON을 사용하며 C 참조 구현과 비트 단위로 동일합니다(x86과 ARM에서 동일한 체크섬).

2코어로 실시간

8k/64-QAM/7/8이 실시간 계수 1.00, 언더런 0으로 동작하며 Cortex-A9 코어당 부하는 55–67 %입니다. 22 MBd의 DVB-S는 코어 하나의 42–63 %를 사용하고, DVB-S2 QPSK는 코어 하나로 27 MBd에 도달합니다.

v0.31 기반 펌웨어

Buildroot 2019.02, Linux 4.14, FPGA 비트스트림은 기본 펌웨어와 동일하며, libiio/iiod 0.25, 실시간 및 DMA 튜닝, HTTP API가 있는 장치 에이전트가 추가되었습니다.

참조 구현과 대조 검증

파일럿, TPS, 데이터 반송파가 gr-dtv와 일치합니다. RX 입력을 통한 자체 수신이 비트 단위로 정확히 디코딩됩니다. 펌웨어는 플래시를 바꾸지 않고 먼저 RAM에서 테스트할 수 있습니다.

DVB-T 유효 비트레이트(Mbit/s, 8 MHz, 보호 구간 1/32)
성상도1/22/33/45/67/8
QPSK6,038,049,0510,0510,56
16-QAM12,0616,0918,1020,1121,11
64-QAM18,1024,1327,1430,1631,67

내부 구조

모니터링, 시험 기록 및 미디어