📄 adslout.m
字号:
function [r,x] = adslout(h,sx,sn,iter,b)% [r,x] = adslout(h,sx,sn,iter,b)% r = received data sequence (noisy channel output)% h = transmission channel, unit norm assumed% ssx = input signal power% ssn = noise power% iter = number of symbols to generate%% b = 256-vector containing bit rate assignment% If b is not given, 4-QAM constellations are used per carrier% [this is not actually used in the current version]%% generates ADSL-like data% (not yet 100% standard compliant)% This version taken from FRODO/MERRY files on 05/20/2002% Written by Rick Martin, last updated on 06/20/2002% Cornell University Blind Equalization Research Group%% Copyright 2002 Cornell University, All Rights Reserved%% SOFTWARE shall mean "adslout.m", Cornell Research Foundation% ("CRF") Docket D-3006. SOFTWARE is made available to allow% non-commercial and research use of SOFTWARE. Cornell% University specifically reserves all commercial rights to% SOFTWARE and these rights may be licensed by CRF on behalf% of Cornell University to third parties.%% CRF provides SOFTWARE on an ``as is'' basis. CRF does not% warrant, guarantee, or make any representations regarding% the use or results of SOFTWARE with respect to its% correctness, accuracy, reliability or performance. The% entire risk of the use and performance of SOFTWARE is% assumed by EVALUATOR. ALL WARRANTIES INCLUDING, WITHOUT% LIMITATION, ANY WARRANTY OF FITNESS FOR A PARTICULAR% PURPOSE OR MERCHANTABILITY ARE HEREBY EXCLUDED.N = 512; % FFT sizenu = 32; % CP lengthS = N+nu; % symbol lengthif nargin < 5, b = 2*ones(N,1); end;% 4-QAM dataX = sx/sqrt(2)*( 2*floor(2*rand(N/2,iter))-1 ) + ... j*sx/sqrt(2)*( 2*floor(2*rand(N/2,iter))-1 );% Take IFFT, convert P/S, and add CPx = zeros(1,S*iter);datain = zeros(N,1);for k=1:iter %datain([2:27,39:64]) = X(:,k); datain = i2r(X(:,k).'); x(S*(k-1)+[nu+1:S]) = real(ifft(datain)); x(S*(k-1)+[1:nu]) = x(S*(k-1)+[N+1:S]); % copy into CPend% received signalr = conv(x,h);r = r(1:S*iter) + sn*randn(1,S*iter);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -