Muxwright

Firmware & techniek

Via USB levert de Pluto continu slechts ongeveer 7 MS/s, terwijl DVB-T met 8 MHz 9,14 MS/s nodig heeft. Daarom draait de modulator op het apparaat zelf.

  1. PC / WSLffmpeg + TSDuck: video, audio, SI-tabellen, constante bitrate
  2. UDPTransportstroom tot 32 Mbit/s via het USB-netwerk
  3. Pluto-ARMCore 0: RS, interleaver, convolutiecode, mapper · core 1: NEON-IFFT
  4. DAC → HFAD9364, 70 MHz–6 GHz, verzwakking 0–89,75 dB

Vaste komma + NEON

Coder, interleaver, mapper en IFFT rekenen met vaste komma. De Stockham-radix-4-IFFT gebruikt NEON en is bitidentiek aan de C-referentie (zelfde checksum op x86 en ARM).

Realtime op 2 cores

8k/64-QAM/7/8 draait met realtimefactor 1,00 zonder underruns bij 55–67 % belasting per Cortex-A9-core. DVB-S met 22 MBd gebruikt 42–63 % van één core; DVB-S2 QPSK haalt 27 MBd op één core.

Firmware gebaseerd op v0.31

Buildroot 2019.02, Linux 4.14 en FPGA-bitstream identiek aan het origineel, plus libiio/iiod 0.25, realtime- en DMA-tuning en een apparaatagent met HTTP-API.

Getoetst aan een referentie

Piloten, TPS en datadraaggolven komen overeen met gr-dtv. Eigen ontvangst via de RX-ingang decodeert bitexact. De firmware kan eerst vanuit het RAM worden getest zonder het flashgeheugen te wijzigen.

Netto bitrates DVB-T in Mbit/s (8 MHz, guard 1/32)
Constellatie1/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

Inkijk

Controle-ontvangst, protocol en media