Tools4SDR   A new version of the website is under development, powered by MediaWiki! You can already use it here.
 
 
 
 

Valid HTML 4.01 Transitional

Detection of DVB-T signals (with USRP, GNU Radio and matlab)

The objective of this demonstration is to illustrate an algorithm for detection of DVB-T signals [1]. This paper can be downloaded here.

DVB-T is a standard for numerical TV broadcast used mainly in Europe (in the US, another format is used). It is based on an OFDM modulation with several mode. The mode used in France is the mode 8k. The OFDM signal has then the following properties:
  1. N=8192 carriers are available. Note that all carriers are not used.
  2. D=N/32=256 is the length of the cycle prefix in samples
  3. $T_c = 7/8us$ is the information symbol period (or chip period). An OFDM symbol leasts $(N+D)T_c$.
  4. The intercarrier spacing equals 976.5625Hz
  5. The signal bandwith is close to 8MHz, the bandwidth of an UHF channel.
The purpose of the detection algorithm is to exploit the correlation induced by the cycle prefix of OFDM signals. Indeed, the cycle prefix is a copy of the D last samples of an OFDM symbol at its beginning. The beginning of an OFDM symbol is hence strongly correlated with its end.

1. Methodology of this demonstration

An USRP with a TVRX daughterboard has been connected to a PC running GNU radio (compiled with cygwin), and matlab.

An USRP connected to a PC running matlab

The following process has been used to evaluate the performance of this algorithm on real signals:
  1. Acquisition of a DVB-T signal with GNU Radio
  2. Exploitation of this signal with matlab

1.1. Acquisition of a signal

The DVB-T signal has been recorded thanks to an USRP with a TVRX daughterboard connected on slot RX B. The script usrp_rx_cfile.py, which stands in directory gnuradio3.1.3/gr-utils/src/python has been used:
./usrp_rx_cfile -F 474M -d 32 -R B -N 100000 acqui21.dat
  • -F 474M is the central frequency of the UHF channel #21. In Grenoble, DVB-T signals are broadcasted in this channel.
  • -d 32 is the decimation rate. It correspond to a signal bandwidth of 2MHz. Note that the frequency support of a DVB-T signal is 8MHz width, so that the signal is undersampled. Nevertheless, this trick has almost no consequence on the algorithm performance.
  • -N 100000 is the number of samples. This number corresponds to 5ms of signal
  • acqui21.dat is the filename that contains the received samples. This file is available for downloading [acqui21.dat].

1.2. Exploitation of this signal with matlab

This signal has then been loaded into matlab with the script [ReadAcquiSignal.m]:
[t,y] = ReadAcquiSignal('acqui21.dat');
Signal processing can now begin !

2. The tested algorithms

Two algorithms have been tested on the received signal: the correlation based method, which is the method described in the state of art articles, and the cyclostationarity based method described in the paper [1].

To illustrate these algorithms, the cost function criterion are plotted for several values of $NT_c$, the inverse of the intercarrier spacing (N is the number of carriers, $T_c$ is the time chip of one information symbol (not an OFDM symbol)). A peak is expected at the correct value of $NT_c/T_e = 1792$. The higher this peak stands (compared to the estimation noise), better is the algorithm detection performance. Note that both methods can be computed with the script [DVB_T_Detector.m].

2.1. Correlation based method

The cost function values have been obtained with the following call:
[J,tau,Criterion]= DVB_T_Detector(y,0);
semilogy(tau,J);

Detection of DVB-T signal - cost function 1

2.2. Cyclostationarity based method

The cost function values have been obtained with the following call:
[J2,tau2,Criterion]= DVB_T_Detector(y,10);
semilogy(tau,J);

Detection of DVB-T signal - cost function 2

2.3. Conclusion

Using cyclostationarity has proposed in the article reduces the estimation noise and attenuates the channel impact on the algorithm performance. Note that the DVB-T signal presents several peaks, probably due to the training sequences.

References:

[1] Pierre Jallon, An Algorithm for Detection of DVB-T Signals Based on Their Second-Order Statistics, EURASIP Journal on Wireless Communications and Networking

Attached files:

[ AF1 ] acqui21.dat
[ AF2 ] ReadAcquiSignal.m
[ AF3 ] DVB_T_Detector.m
About | Contact | Site map | Support