Clear Filters
Clear Filters

how to convert cdl channel to awgn channel in nrpdsch link level simulation

4 views (last 30 days)
I am simulating nr pdsch throughput using 5g tool box in cdl channel.How can I do it for Awgn channel

Answers (2)

Sriram Tadavarty
Sriram Tadavarty on 5 Jan 2021
Hi Govindu,
The NR PDSCH Throughput example does addition of AWGN to the waveform passed through the CDL/TDL channel.
So, AWGN is already present in the example.
Hope this helps.

PAVAN KUMAR on 26 Jun 2023
Hi Sriram Tadavarty...
If I want to have only AWGN channel for PUSCH performance analysis, how to define the channel ? I want to simulate 'no fading' (Ideal) case.
Sriram Tadavarty
Sriram Tadavarty on 26 Jun 2023
Hi Pavan,
In the example, you can comment out this line and assign txWaveform to rxWaveform as such.
% [rxWaveform,pathGains,sampleTimes] = channel(txWaveform);
rxWaveform = txWaveform;
Also, use practical channel estimator by setting the simParameters.PerfectChannelEstimator to false. The perfect channel estimator is set to false because it requires the knowledge of channel path gains and sample times.
Hope this helps.
Note: I think you asked a question in the Answer section, rather than Comment to the previous answer.
PAVAN KUMAR on 27 Jun 2023
Hi Sriram... Thanks for the help..
I do not want to have HARQ for the link level simulation. I am trying to run the same example without using HARQ by chaning following lines. Can you confirm me whether the result given by this modified code is correct ? Or am I missing anything ?
% simParameters.PUSCHExtension.NHARQProcesses = 16;
simParameters.PUSCHExtension.EnableHARQ = false;
encodeULSCH.MultipleHARQProcesses = false;
decodeULSCH.MultipleHARQProcesses = false;
% harqSequence = 0:puschextra.NHARQProcesses-1;
% harqEntity = HARQEntity(harqSequence,rvSeq);
%if harqEntity.NewData
% trBlk = randi([0 1],trBlkSize,1);
% setTransportBlock(encodeULSCH,trBlk,harqEntity.HARQProcessID);
% if harqEntity.SequenceTimeout
% resetSoftBuffer(decodeULSCHLocal,harqEntity.HARQProcessID);
% end
% end
trBlk = randi([0 1],trBlkSize,1);
% procstatus = updateAndAdvance(harqEntity,blkerr,trBlkSize,puschIndicesInfo.G);

Sign in to comment.


Find more on 5G Toolbox in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!