ofdm dft dft inverse dft an n-point dft (or inverse dft) requires a total of n 2 complex...
TRANSCRIPT
OFDM
DFT DFT
Inverse DFT
An N-point DFT (or inverse DFT) requires a total of N2 complex multiplications This transform can be implemented very efficiently by the fast Fourier
transform (FFT)
Serial-to-parallel
converter
Parallel-to-serial converter
Signal mapper
Signal demapper
IDFT
DFT
P/S
S/P
Guard interval /
cyclic prefix insertion
CP removal
channel
1,,1,0,2exp][)(1
0
NkN
nkjnxkX
N
n
1,,1,0,2exp][][1
0
NnN
nkjkXnx
N
n
OFDM OFDM implementation
An OFDM signal consists of a sum of subcarriers that are modulated by using QAM, and is implemented using the inverse DFT (discrete Fourier transform)
di : the i-th complex QAM symbol N : the number of subcarriers
1,,1,0,2exp)(1
0
NnN
injdns
N
ii
Serialto
parallelQAM data
dN-1 … d2 d1 d0
dN-1
d1
d0
X
X
X
Exp(j*2*pi*0*n/N)
Exp(j*2*pi*1*n/N)
Exp(j*2*pi*(N-1)*n/N)
+s(N-1) … s(2) s(1) s(0)
OFDM FFT
The FFT drastically reduces the amount of calculations by exploiting the regularity of the operations in the DFT
Using the radix-2 algorithm, an N-point FFT (or inverse FFT) requires only (N/2)log2N complex multiplications 256 multiplications for DFT versus 32 for FFT (for a 16-point transform) – a
reduction by a factor of 8 In VDSL system, 4096-point transform is used – a reduction by a factor of
about 683
Homework 16-point DFT & 16-point inverse DFT programming 16-point FFT & 16-point inverse FFT programming
(Tip) Definition for complex variable should be needed
Complex variable (real + imaginary, A=a+ib) Complex multiplication (A*B=(a+ib)*(c+id)=(ac-bd)+i*(ad+bc)) Complex addition (A+B=(a+ib)+(c+id)=(a+c)+i*(b+d)) Complex subtraction (A-B=(a-c)+i*(b-d))
Block diagram
마감 : 12 월 12 일 수요일 낮 12 시까지 ( 교수 이메일로 보낼것 ) 제출자료
source program (c-code) with comments .exe file (file_name = student_id.exe) for demonstration
Random generator
16 complex symbols Serial-to-
parallel
16-point inverse
DFT
16-point DFT
parallel-to-serial
printf(these values) printf(these values) printf(these values)
Random generator
16 complex symbols Serial-to-
parallel16-point
inverse FFT16-point
FFTparallel-to-
serial
printf(these values) printf(these values) printf(these values)