3,、16-QAM調制. 對于已定義的包含從0到15的整數(shù)的列向量xsym,就可以利用modem.qammod對象的modulate方法來調制它,。其中M值為16,,亦即為碼字表的大小。 %% Modulation y = modulate(modem.qammod(M),xsym); % Modulate using 16-QAM.
調制的結果是復數(shù)列向量,,其取值為16點QAM信號星座圖,。本示例中的隨后步驟中將會展示星座圖是什么樣子的。想要了解更多關于調制函數(shù)的信息,,可參見第8章“調制”,。另外,注意到modem.qammod對象的modulate方法沒有進行任何的脈沖成形處理,。
4,、加性高斯白噪聲. 對已調制信號可采用awgn函數(shù)添加加性高斯噪聲。其中比特能量與噪聲功率譜密度的比值,,Eb/N0,,設置為10dB。 將上述Eb/N0值轉換為相應的信噪比(SNR),,需要考慮每一符號包含的比特數(shù)k(16-QAM中為4)以及過采樣率因子nsamp(本示例中為1),。其中因子k是用來將Eb/N0轉換為等價的Es/N0(符號能量與噪聲功率譜密度的比值)。因子nsamp是用來將符號速率帶寬內的Es/N0轉換為采樣帶寬內的SNR,。
說明 ytx和yrx的定義以及snr定義中nsamp項到目前為止在本示例中顯現(xiàn)得并不是很重要, 但是這將使得其更容易擴展到之后的成形濾波示例,。
%% Transmitted Signal ytx = y; %% Channel % Send signal over an AWGN channel. EbNo = 10; % In dB snr = EbNo + 10*log10(k) - 10*log10(nsamp); ynoisy = awgn(ytx,snr,'measured'); %% Received Signal yrx = ynoisy; 5,、繪制散點圖。 對發(fā)射和接收信號利用scatterplot函數(shù)可顯示信號星座圖的樣子及噪聲對信號造成的失真程度,。在該圖中,,橫軸代表了信號的同相分量而縱軸代表了正交分量。下面的代碼還利用了MATLAB中的title,、legend以及axis函數(shù)來繪制特定的圖像,。
%% Scatter Plot % Create scatter plot of noisy signal and transmitted % signal on the same axes. h = scatterplot(yrx(1:nsamp*5e3),nsamp,0,'g.'); hold on; scatterplot(ytx(1:5e3),1,0,'k*',h); title('Received Signal'); legend('Received Signal','Signal Constellation'); axis([-5 5 -5 5]); % Set axis ranges. hold off; 6、16-QAM解調,。 對接收信號利用modem.deqammod對象的demodulate方法進行解調,。解調結果為包含0到15之間整數(shù)的列向量。
%% Demodulation % Demodulate signal using 16-QAM. zsym = demodulate(modem.qamdemod(M),yrx);
7,、整數(shù)信號轉換至二進制比特信號.
%% Symbol-to-Bit Mapping % Undo the bit-to-symbol mapping performed earlier. z = de2bi(zsym,'left-msb'); % Convert integers to bits. % Convert z from a matrix to a vector. z = reshape(z.',prod(size(z)),1); 8,、計算系統(tǒng)誤碼率.
對原始二進制向量和上述步驟解調得到二進制向量利用biterr函數(shù)即可得到誤比特數(shù)和誤碼率。
%% BER Computation % Compare x and z to obtain the number of errors and % the bit error rate. [number_of_errors,bit_error_rate] = biterr(x,z) >> number_of_errors =
71
bit_error_rate =
0.0024
上一步產(chǎn)生的信號為一整數(shù)列向量zsym,。要得到相應的二進制比特信號,只需要利用de2bi函數(shù)將每一個整數(shù)轉化為相應的4位二進制信號,。然后利用reshape函數(shù)將一個4列的矩陣整理為一個單獨列向量 |
|