Clear Filters
Clear Filters

nrTDLchannel for uplink - using swapTransmitAndReceive or TransmissionDirection

23 views (last 30 days)
Hello,
I want to simulate 5G NR pusch transmission (I will based on MATLAB example).
I using nrTDLchannel to simulate the chaneel between UE and gNB.
In the documentation of nrTDLchannel there is "TransmissionDirection" (Downlink or Uplink), but at the "NR PUSCH Throughput" example they using function "swapTransmitAndReceive" instead of the "TransmissionDirection".
What is the diffrenece between two approach?
Thanks,
Oron

Answers (1)

Malay Agarwal
Malay Agarwal on 26 Jun 2024 at 10:02
Hi @Oron,
In MATLAB's 5G Toolbox, both "TransmissionDirection" and "swapTransmitAndReceive" are used to handle the direction of the transmission in a channel model, but they serve slightly different purposes and contexts.
The "TransmissionDirection" property of the "nrTDLChannel" object specifies whether the channel is being used for downlink (DL) or uplink (UL) transmission. This property adjusts the channel model parameters to reflect the characteristics of the transmission direction.
For example:
channel = nrTDLChannel;
channel.TransmissionDirection = 'Uplink'; % or 'Downlink'
Setting this property ensures that the channel model correctly represents the physical layer characteristics for the specified direction, such as path loss, delay spread, etc.
The "swapTransmitAndReceive" function is used to reverse the roles of the transmitter and receiver in a given channel model. This can be useful when you want to reuse a channel model for both uplink and downlink transmissions without creating a new channel object.
For example, if you have a channel object configured for downlink transmission and you want to use the same object for uplink transmission, you can use "swapTransmitAndReceive" to swap the roles:
channel = nrTDLChannel;
% Simulate downlink transmission
% ...
% Swap transmit and receive roles
swapTransmitAndReceive(channel);
% Now use the same channel object for uplink transmission
% ...
To summarise:
  • "TransmissionDirection": This property is set when creating or configuring the channel object to define its primary usage (DL or UL). It ensures that all relevant parameters are set correctly for the specified direction.
  • "swapTransmitAndReceive": This function is used to dynamically swap the roles of transmitter and receiver in an existing channel object. This is useful in scenarios where the same channel object needs to be used for both directions without reconfiguring or recreating it.
In the example, "swapTransmitAndReceive" is used since by default, the CDL channel is configured for downlink transmissions and we want to measure the physical uplink shared channel (PUSCH) throughput of the channel.
Please refer to the following resources for more information:
Hope this helps!
  2 Comments
Oron
Oron on 27 Jun 2024 at 6:54
Thank you for your answer.
I am going to use only TDL at uplink (no need downlink), so I will use the "TransmissionDirection".
Just to verify, when I am using nrTDLChannel with Uplink "TransmissionDirection" the "NumberTransmitAntennas" represent the UE transmit antennas and the "NumberReceiveAntennas" represent the gNB receive antennas, right?

Sign in to comment.

Categories

Find more on End-to-End Simulation 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!