From: XYZ on 10 Apr 2010 19:59 Hi, I've been struggling with OFDM timing synchronization using Schmidl algorithm for some time but I can't figure out how to find the sample at which the symbol starts. Authors seem to have the same problem but apparently they don't mention how to deal with it -- or is it just me not understanding it? The timing metric shows me where to sample (I actually only use P metric because AGC term R gives false peaks for non-training symbols) and I sometimes get my symbols circularly shifted. This happens when maximum of the metric is slightly off by one or two samples. For example after ifft of the first training symbol I transmit: first half second half cyclic prefix 1 2 3 4 5 1 2 3 4 5 1 2 3 -----------------------------------------------> 0 1 2 3 4 5 6 7 8 9 10 11 12 sample number N but the optimal timing point is for N=1. Knowing that useful part of OFDM symbol is 10 samples I take 10 samples starting from the second one which gives 2 3 4 5 1 2 3 4 5 1 This sequence carries the same information but circularly shifted and performing fft on it does not give what was put into ifft at the transmitter. How can I find out that a shift occured and by how many samples? I can't simply try all possible shifts to find the correct offset because subcarriers are altered in the channel and I need to know this correct offset within the symbol to perform channel estimation by (circshift(symb_received,n) ./ symb_expected) I also tried to investigate Park algorithm that gives very sharp metric. Authors say that the proposed preamble is of the form Ppro = [C D C* D*] and it is possible to generate this pattern by transmittng a PN sequence of BPSK points on even frequencies and zeros on odd frequencies. So for example s = [1 0 1 0 -1 0 1 0 -1 0 -1 0 1 0 1 0] should work but after ifft it simply gives Ppro2 = [C D C D] -- no conjugates in the second half of the symbol. I wouldn't even expect it to yield something else. But then how to generate symbol of the form [C D C* D*]? Alternatively, please recommend another algorithms I could try. My channel is dispersive. Thanks!
From: Frank_os on 13 Apr 2010 12:09 >Hi, > >I've been struggling with OFDM timing synchronization using Schmidl >algorithm for some time but I can't figure out how to find the sample at >which the symbol starts. Authors seem to have the same problem but >apparently they don't mention how to deal with it -- or is it just me >not understanding it? > >The timing metric shows me where to sample (I actually only use P metric >because AGC term R gives false peaks for non-training symbols) and I >sometimes get my symbols circularly shifted. This happens when maximum >of the metric is slightly off by one or two samples. > >For example after ifft of the first training symbol I transmit: > > first half second half cyclic prefix > 1 2 3 4 5 1 2 3 4 5 1 2 3 >-----------------------------------------------> > 0 1 2 3 4 5 6 7 8 9 10 11 12 sample number N > > >but the optimal timing point is for N=1. Knowing that useful part of >OFDM symbol is 10 samples I take 10 samples starting from the second one >which gives > > 2 3 4 5 1 2 3 4 5 1 > >This sequence carries the same information but circularly shifted and >performing fft on it does not give what was put into ifft at the >transmitter. > >How can I find out that a shift occured and by how many samples? I can't >simply try all possible shifts to find the correct offset because >subcarriers are altered in the channel and I need to know this correct >offset within the symbol to perform channel estimation by >(circshift(symb_received,n) ./ symb_expected) > >I also tried to investigate Park algorithm that gives very sharp metric. >Authors say that the proposed preamble is of the form Ppro = [C D C* D*] >and it is possible to generate this pattern by transmittng a PN sequence >of BPSK points on even frequencies and zeros on odd frequencies. So for >example > s = [1 0 1 0 -1 0 1 0 -1 0 -1 0 1 0 1 0] should work but after ifft >it simply gives Ppro2 = [C D C D] -- no conjugates in the second half of >the symbol. I wouldn't even expect it to yield something else. But then >how to generate symbol of the form [C D C* D*]? > >Alternatively, please recommend another algorithms I could try. My >channel is dispersive. > >Thanks! > Both Schmidl and Park algorithms assume the AWGN channel. The property of two identical symbols is destroyed by the dispersive channel. A better approach is to compute the cross correlation between the received signals and the preamble, but this approach increases the complexity of frame synchronization.
|
Pages: 1 Prev: 16 qam receiver symbol clock recovery noise Next: FMCW Radar help required. |