Hi,
   I found the OFDM IFFT caculation is very different from what I got in
MATLAB.
  In detail, my command is shown below
  ./benchmark_ofdm_tx.py -f 10M -i 512 --fft-length=64 --occupied-tones=32
--cp-length=4 (bpsk)

  The packet size is 8 bits, after a serials of operation, it added 4 bytes
in front, and 5 bytes afterward.
   For example, I compare the 0C0C IFFT transfer ( 0C0C is the 4 bytes
header), since only 30 carriers are actually filled up with data, so, the
binary number are X= 0(repeat 16 times) 1 (repeat 10 times) -1 -1 1 1 1  00
1 (repeat 11 times) -1 -1 1 1 0(repeat 16 times)
  and in matlab the IFFT(X, 64)=

       0.3438
  -0.2123 + 0.0408i
  -0.0122 + 0.0184i
   0.0799 - 0.1137i
  -0.0080 + 0.1171i
  -0.0278 - 0.0266i
   0.0027 - 0.0499i
  -0.0154 + 0.0531i
   0.0488 - 0.0202i
   0.0036 + 0.0030i
  -0.1120 - 0.0136i
   0.1315 + 0.0317i
  -0.0437 - 0.0186i
  -0.0124 - 0.0452i
  -0.0280 + 0.1096i
   0.0650 - 0.0959i
  -0.0156 + 0.0156i
  -0.0587 + 0.0278i
   0.0648 + 0.0077i
  -0.0114 - 0.0391i
  -0.0317 - 0.0003i
   0.0355 + 0.0512i
  -0.0212 - 0.0339i
   0.0128 - 0.0225i
  -0.0175 + 0.0423i
   0.0261 - 0.0253i
  -0.0204 + 0.0182i
  -0.0030 - 0.0217i
   0.0209 + 0.0104i
  -0.0155 + 0.0028i
   0.0012 + 0.0049i
   0.0022 - 0.0135i
        0
   0.0022 + 0.0135i
   0.0012 - 0.0049i
  -0.0155 - 0.0028i
   0.0209 - 0.0104i
  -0.0030 + 0.0217i
  -0.0204 - 0.0182i
   0.0261 + 0.0253i
  -0.0175 - 0.0423i
   0.0128 + 0.0225i
  -0.0212 + 0.0339i
   0.0355 - 0.0512i
  -0.0317 + 0.0003i
  -0.0114 + 0.0391i
   0.0648 - 0.0077i
  -0.0587 - 0.0278i
  -0.0156 - 0.0156i
   0.0650 + 0.0959i
  -0.0280 - 0.1096i
  -0.0124 + 0.0452i
  -0.0437 + 0.0186i
   0.1315 - 0.0317i
  -0.1120 + 0.0136i
   0.0036 - 0.0030i
   0.0488 + 0.0202i
  -0.0154 - 0.0531i
   0.0027 + 0.0499i
  -0.0278 + 0.0266i
  -0.0080 - 0.1171i
   0.0799 + 0.1137i
  -0.0122 - 0.0184i
  -0.2123 - 0.0408i
 which is very much different from what I got from the output of gnuradio
the gr_ofdm_cyclic_prefixer.cc. (This is the second output of whole packet
since the first output 67 complex numbers are preamble, I guess the second
output should match to the partial of the header 0C0C)

 cyclic 0 -0.5097 -7.4924  cyclic 1 -5.1105 -7.2764  cyclic 2 -0.7801
-1.1804  cyclic 3 13.5876 2.6097  (CP)
======================
 cyclic 4 22.0000 0.0000
 cyclic 5 13.5876 -2.6097  cyclic 6 -0.7801 1.1804  cyclic 7 -5.1105
7.2764  cyclic
8 -0.5097 7.4924  cyclic 9 1.7798 1.6997  cyclic 10 0.1735 -3.1954  cyclic
11 0.9864 -3.3997  cyclic 12 3.1213 -1.2929  cyclic 13 -0.2281 -0.1922  cyclic
14 -7.1693 -0.8714  cyclic 15 -8.4139 -2.0297  cyclic 16 -2.7969
-1.1926  cyclic
17 0.7941 2.8952  cyclic 18 -1.7896 7.0168  cyclic 19 -4.1604 6.1374  cyclic
20 -1.0000 1.0000  cyclic 21 3.7586 -1.7804  cyclic 22 4.1488 0.4929  cyclic
23 0.7278 2.5028  cyclic 24 -2.0315 -0.0211  cyclic 25 -2.2737 -3.2793  cyclic
26 -1.3547 -2.1691  cyclic 27 -0.8221 1.4382  cyclic 28 -1.1213 2.7071  cyclic
29 -1.6704 1.6217  cyclic 30 -1.3064 1.1638  cyclic 31 0.1896 1.3886  cyclic
32 1.3381 0.6640  cyclic 33 0.9932 -0.1775  cyclic 34 0.0778 0.3133  cyclic
35 -0.1378 0.8635  cyclic 36 0.0000 0.0000  cyclic 37 -0.1378 -0.8635  cyclic
38 0.0778 -0.3133  cyclic 39 0.9932 0.1775  cyclic 40 1.3381 -0.6640  cyclic
41 0.1896 -1.3886  cyclic 42 -1.3064 -1.1638  cyclic 43 -1.6704 -1.6217  cyclic
44 -1.1213 -2.7071  cyclic 45 -0.8221 -1.4382  cyclic 46 -1.3547 2.1691  cyclic
47 -2.2737 3.2793  cyclic 48 -2.0315 0.0211  cyclic 49 0.7278 -2.5028  cyclic
50 4.1488 -0.4929  cyclic 51 3.7586 1.7804  cyclic 52 -1.0000 -1.0000  cyclic
53 -4.1604 -6.1374  cyclic 54 -1.7896 -7.0168  cyclic 55 0.7941 -2.8952  cyclic
56 -2.7969 1.1926  cyclic 57 -8.4139 2.0297  cyclic 58 -7.1693 0.8714  cyclic
59 -0.2281 0.1922  cyclic 60 3.1213 1.2929  cyclic 61 0.9864 3.3997  cyclic
62 0.1735 3.1954  cyclic 63 1.7798 -1.6997  cyclic 64 -0.5097 -7.4924  cyclic
65 -5.1105 -7.2764  cyclic 66 -0.7801 -1.1804  cyclic 67 13.5876 2.6097
Anyone knows the reason? Or Did I misunderstand how it works?
Thanks,
Bin
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to