How can i insert Cyclic prefix in an array?

5 次查看(过去 30 天)
N=1024; Cp=64; NTx=8;
% Constellation of Binary-Coded 16-QAM
C=[-3+3j, -3+1j, -3-3j, -3-1j, -1+3j, -1+1j, -1-3j, -1-1j,...
3+3j, 3+1j, 3-3j, 3-1j, 1+3j, 1+1j, 1-3j, 1-1j];
% Generate random symbols
bk= randi ([0,15],NTx,N);
Dk=C(bk+1);
d=ifft(Dk).*sqrt(N);
tx=[d(end-Cp+1:end) d];
I have d is (8X1024) and I want to add Cyclic Prefix for each row, how can I do that?? [d(end-Cp+1:end) d]; this works for vectors only.

采纳的回答

Cedric
Cedric 2014-6-22
编辑:Cedric 2014-6-22
>> tx = [d(:,end-Cp+1:end) d] ;
>> size(tx)
ans =
8 1088
and
>> tx = [zeros(size(d,1), Cp) d] ;
if you wanted zero padding.

更多回答(1 个)

Qaisar Hussain Alvi
编辑:Walter Roberson 2018-4-8
IFFT_Data = ifft(d,N);
txCy = [IFFT_Data(N-Ncp+1):N,:); IFFT_Data];
  1 个评论
Walter Roberson
Walter Roberson 2018-4-8
What is the purpose of doing an ifft() of something that was just calculated as an ifft ?
d=ifft(Dk).*sqrt(N);

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Modulation 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by