A szoftveresen definiált rádió (SDR) egy olyan módszer, amely a fémmegmunkálás helyettesítésére szolgál (ami alapvetően jótékony hatással van az egészségre) és a programozás okozta fejfájásra. Az SDR-nek nagy jövőt jósolnak, és alapvető előnye a rádióprotokollok megvalósításának korlátozásainak eltávolítása. Egy példa az OFDM (Orthogonal frequency-division multiplexing) modulációs módszere, amely csak az SDR módszerével vált lehetővé. Az SDR-nek van egy másik, tisztán mérnöki képessége is — a jel ellenőrzésének és vizualizálásának lehetősége bármilyen tetszőleges ponton, minimális erőfeszítéssel.
Az egyik érdekes kommunikációs szabvány a DVB-T2 földi digitális televíziózás.
Miért? Természetesen csak simán fel lehet kapcsolni a tévét, de ott gyakorlatilag nincs mit nézni, és ez már nemcsak az én véleményem, hanem orvosi tény.
Komolyan véve, a DVB-T2 nagyon széleskörű lehetőségekkel lett kifejlesztve, többek között:
- beltéri alkalmazás
- moduláció QPSK-tól 256QAM-ig
- sávszélesség 1,7 MHz-től 8 MHz-ig
Van tapasztalatunk az SDR-alapú digitális televízió vételével. A DVB-T szabvány található a híres GNURadio projektben. Van egy gr-dvbs2rx blokk a DVB-T2 szabványhoz (mindent a GNURadio-hoz), de ez korai jelenszinkronizációt igényel, és inspirálónak tartják (külön köszönet Ron Economos-nak).
Mit is tudunk.
Van egy ETSI EN 302 755 szabvány, amely részletesen leírja a továbbítást, de nem a vételt.
A jel a levegőben 9,14285714285714285714 MHz mintavételezési frekvenciával, COFDM-mel modálva 32768 hordozóval, 8 MHz-es sávban.
Az ilyen jelek vételénél ajánlott a mintavételezési frekvencia megduplázása (hogy semmit ne veszítsünk el) és a közbenső frekvencia legyen nagyobb a sávszélességnél (szuperheterodin vétel), hogy megszabaduljunk az állandó áram (DC) eltéréstől és a lokális oszcillátor (LO) „vándorlásától” a vételi oldalon. Azok az eszközök, amelyek megfelelnek ezeknek a feltételeknek, túlságosan drágák egy egyszerű kíváncsiság számára.
A sdrPlay 10Msps 10bit vagy az AirSpy hasonló jellemzőkkel sokkal olcsóbb. Itt nincs szó a mintavételezési frekvencia megduplázásáról, és a vétel csak közvetlen átalakítással lehetséges (Zero IF). Ezért (pénzügyi okokból) átváltunk a „tiszta” SDR híveinek oldalára, minimális hardveres átalakítással.
Két feladatot kellett megoldani:
- Szinkronizálás. Megtudni a rádiófrekvencia pontos eltérését fázis pontossággal és a mintavételezési frekvencia eltérését.
- A DVB-T2 standard rewritten backwards.
The second task requires much more code, but it can be solved with persistence and is easily verified by test signals.
Test signals are available on the BBC server ftp://ftp.kw.bbc.co.uk/t2refs/ with detailed instructions.
The solution to the first problem heavily depends on the characteristics of the SDR device and control capabilities. Using the recommended frequency control functions, as they say, was not successful, but it provided a lot of experience in reading technical documentation, programming, watching series, and solving philosophical questions... in short, I couldn't abandon the project.
The belief in 'pure SDR' has only strengthened.
We take the signal as it is, interpolate it almost to an analog and extract a discrete version that resembles the real thing.
Synchronization flowchart:

Everything is according to the textbook here. It gets a bit more complex afterwards. Deviations need to be calculated. There is plenty of literature and research articles comparing the advantages and disadvantages of different methods. From the classics — it's "Michael Speth, Stefan Fechtel, Gunnar Fock, Heinrich Meyr, Optimum Receiver Design for OFDM-Based Broadband Transmission – Part I and II." However, I have not met a single engineer who can and wants to do the calculations, so an engineering approach was applied. The same method of synchronization introduced disturbances into the test signal. By comparing different metrics with known deviations (which I introduced), the best ones for performance and ease of implementation were chosen. The reception frequency deviation is calculated by comparing the guard interval and its repeating part. The reception frequency phase and sampling frequency are assessed by the pilot signals' phase deviations and the same is used in a simple, linear equalizer for OFDM signals.
Equalizer characteristics:

And all of this works well if you know when the DVB-T2 frame starts. For this purpose, a P1 preamble symbol is transmitted in the signal. The method for detecting and decoding the P1 symbol is described in Technical Specification ETSI TS 102 831 (it also contains many useful recommendations for reception).
Autocorrelation of signal P1 (the very top point marks the start of the frame):

The first image (only six months left until the moving image…):

És itt tudjuk meg, mi is az IQ imbalansz, DC offset és LO szivárgás. Általában az SDR eszköz meghajtójában valósítják meg ezen, a közvetlen átalakításhoz specifikus torzulások kompenzálását. Ezért sok időt eltöltöttünk a megértésével: a QAM64 boldog csillagait kiütni a kompenzáló funkciók munkája. Minden funkciót ki kellett kapcsolni, és saját kerékpárt kellett írni.
És a kép végre mozgásba lendült:

A QAM64 moduláció, a DVB-T2 szabványnak megfelelő specifikus csillagforgással:

Röviden ez a ledarált hús visszatolásának eredménye a húsdarálóba. A szabvány négyféle keveredést ír elő:
- bit interleaving (bit keverés oszlopcsavarással)
- cell interleaving (cellák keverése a kódolási blokkban)
- time interleaving (ugyanaz a kódolási blokk csoportban)
- frequency interleaving (frekvenciák keverése az OFDM szimbólumban)
Ennek eredményeképpen a bemeneten egy ilyen jel található:

Mindez a kódolt jel interferenciájának ellenállásáról szól.
Result
Most már nemcsak magát a jelet és formáját láthatjuk, hanem a segédinformációt is.
A légkörben két multiplex található. Mindegyikben két fizikai csatorna (PLP).
Az első multiplexben észlelt furcsaság — az első PLP címkéje „multiple”, ami logikus, hiszen nem egyedüli a multiplexben, míg a második PLP címkéje „single”, ami kérdést vet fel.
Még érdekesebb a második multiplexben észlelt furcsaság — az első PLP összes programja benne van, míg a második PLP csendes sebességgel egy ismeretlen eredetű jelet sugároz. Legalábbis a VLC lejátszó, amely körülbelül ötven videoformátumot és annyi hangformátumot ért, nem ismeri fel.
.
A projekt célja az volt, hogy meghatározza a DVB-T2 dekódolás lehetőségét SdrPlay segítségével (és most már AirSpy segítségével is), ezért ez még csak alfa verzió.
P.S. Amíg nehezen írtam a cikket, sikerült csatlakoztatni a PlutoSDR-t a projekthez.
Valaki azonnal azt mondja, hogy az USB2.0 kimeneti IQ jelhez csak 6Msps szükséges, míg legalább 9,2Msps-ra van szükség, de ez már egy másik téma.
Forrás: habr.com
