#include <lte-ue-phy.h>
Classes | |
struct | PssElement |
struct | UeMeasurementsElement |
Public Member Functions | |
LteUePhy () | |
LteUePhy (Ptr< LteSpectrumPhy > dlPhy, Ptr< LteSpectrumPhy > ulPhy) | |
virtual | ~LteUePhy () |
Ptr< DlCqiLteControlMessage > | CreateDlCqiFeedbackMessage (const SpectrumValue &sinr) |
Create the DL CQI feedback from SINR values perceived at the physical layer with the signal received from eNB. More... | |
virtual Ptr< SpectrumValue > | CreateTxPowerSpectralDensity () |
Create the PSD for the TX. More... | |
virtual void | DoDispose (void) |
virtual void | DoInitialize (void) |
virtual void | GenerateCtrlCqiReport (const SpectrumValue &sinr) |
virtual void | GenerateDataCqiReport (const SpectrumValue &sinr) |
Ptr< LteSpectrumPhy > | GetDlSpectrumPhy () const |
LteUeCphySapProvider * | GetLteUeCphySapProvider () |
Get the CPHY SAP provider. More... | |
LteUePhySapProvider * | GetLteUePhySapProvider () |
Get the PHY SAP provider. More... | |
uint8_t | GetMacChDelay (void) const |
double | GetNoiseFigure () const |
std::vector< int > | GetSubChannelsForReception (void) |
Get a list of sub channels to use in RX. More... | |
std::vector< int > | GetSubChannelsForTransmission (void) |
Get a list of sub channels to use in RX. More... | |
double | GetTxPower () const |
Ptr< LteSpectrumPhy > | GetUlSpectrumPhy () const |
void | PhyPduReceived (Ptr< Packet > p) |
PhySpectrum received a new PHY-PDU. More... | |
virtual void | ReceiveLteControlMessageList (std::list< Ptr< LteControlMessage > >) |
virtual void | ReceiveLteDlHarqFeedback (DlInfoListElement_s mes) |
PhySpectrum generated a new DL HARQ feedback. More... | |
virtual void | ReceivePss (uint16_t cellId, Ptr< SpectrumValue > p) |
virtual void | ReportInterference (const SpectrumValue &interf) |
virtual void | ReportRsReceivedPower (const SpectrumValue &power) |
void | SendSrs () |
Send the SRS signal in the last symbols of the frame. More... | |
void | SetHarqPhyModule (Ptr< LteHarqPhy > harq) |
Set the HARQ PHY module. More... | |
void | SetLteUeCphySapUser (LteUeCphySapUser *s) |
Set the CPHY SAP User. More... | |
void | SetLteUePhySapUser (LteUePhySapUser *s) |
Set the PHY SAP User. More... | |
void | SetNoiseFigure (double pow) |
void | SetSubChannelsForReception (std::vector< int > mask) |
Get a list of sub channels to use in RX. More... | |
void | SetSubChannelsForTransmission (std::vector< int > mask) |
Set a list of sub channels to use in TX. More... | |
void | SetTxPower (double pow) |
void | SubframeIndication (uint32_t frameNo, uint32_t subframeNo) |
trigger from eNB the start from a new frame More... | |
![]() | |
LtePhy () | |
LtePhy (Ptr< LteSpectrumPhy > dlPhy, Ptr< LteSpectrumPhy > ulPhy) | |
virtual | ~LtePhy () |
void | DoSetCellId (uint16_t cellId) |
std::list< Ptr < LteControlMessage > > | GetControlMessages (void) |
Ptr< LteNetDevice > | GetDevice () |
Get the device where the phy layer is attached. More... | |
Ptr< LteSpectrumPhy > | GetDownlinkSpectrumPhy () |
Ptr< PacketBurst > | GetPacketBurst (void) |
uint8_t | GetRbgSize (void) const |
uint16_t | GetSrsPeriodicity (uint16_t srcCi) const |
uint16_t | GetSrsSubframeOffset (uint16_t srcCi) const |
double | GetTti (void) const |
Ptr< LteSpectrumPhy > | GetUplinkSpectrumPhy () |
void | SetControlMessages (Ptr< LteControlMessage > m) |
void | SetDevice (Ptr< LteNetDevice > d) |
Set the device where the phy layer is attached. More... | |
void | SetDownlinkChannel (Ptr< SpectrumChannel > c) |
void | SetMacPdu (Ptr< Packet > p) |
void | SetTti (double tti) |
Receive SendLteControlMessage (PDCCH map, CQI feedbacks) using the ideal control channel. More... | |
void | SetUplinkChannel (Ptr< SpectrumChannel > c) |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
![]() | |
virtual | ~ObjectBase () |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static TypeId | GetTypeId (void) |
![]() | |
static void | Cleanup (void) |
![]() | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
void | DoConfigureUplink (uint16_t ulEarfcn, uint8_t ulBandwidth) |
void | DoReset () |
virtual void | DoSendLteControlMessage (Ptr< LteControlMessage > msg) |
virtual void | DoSendMacPdu (Ptr< Packet > p) |
Queue the MAC PDU to be sent (according to m_macChTtiDelay) More... | |
virtual void | DoSendRachPreamble (uint32_t prachId, uint32_t raRnti) |
void | DoSetDlBandwidth (uint8_t ulBandwidth) |
void | DoSetRnti (uint16_t rnti) |
void | DoSetSrsConfigurationIndex (uint16_t srcCi) |
void | DoSetTransmissionMode (uint8_t txMode) |
void | DoSyncronizeWithEnb (uint16_t cellId, uint16_t dlEarfcn) |
void | QueueSubChannelsForTransmission (std::vector< int > rbMap) |
void | ReportUeMeasurements () |
void | SetTxMode1Gain (double gain) |
void | SetTxMode2Gain (double gain) |
void | SetTxMode3Gain (double gain) |
void | SetTxMode4Gain (double gain) |
void | SetTxMode5Gain (double gain) |
void | SetTxMode6Gain (double gain) |
void | SetTxMode7Gain (double gain) |
void | SetTxModeGain (uint8_t txMode, double gain) |
Friends | |
class | MemberLteUeCphySapProvider< LteUePhy > |
class | UeMemberLteUePhySapProvider |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
virtual void | NotifyNewAggregate (void) |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
![]() | |
uint16_t | m_cellId |
std::vector< std::list< Ptr < LteControlMessage > > > | m_controlMessagesQueue |
uint8_t | m_dlBandwidth |
uint16_t | m_dlEarfcn |
Ptr< LteSpectrumPhy > | m_downlinkSpectrumPhy |
uint8_t | m_macChTtiDelay |
Ptr< LteNetDevice > | m_netDevice |
double | m_noiseFigure |
std::vector< Ptr< PacketBurst > > | m_packetBurstQueue |
uint8_t | m_rbgSize |
double | m_tti |
double | m_txPower |
uint8_t | m_ulBandwidth |
uint16_t | m_ulEarfcn |
Ptr< LteSpectrumPhy > | m_uplinkSpectrumPhy |
The LteSpectrumPhy models the physical layer of LTE
ns3::LteUePhy is accessible through the following paths with Config::Set and Config::Connect:
Definition at line 49 of file lte-ue-phy.h.
ns3::LteUePhy::LteUePhy | ( | ) |
Definition at line 113 of file lte-ue-phy.cc.
References NS_FATAL_ERROR, and NS_LOG_FUNCTION.
ns3::LteUePhy::LteUePhy | ( | Ptr< LteSpectrumPhy > | dlPhy, |
Ptr< LteSpectrumPhy > | ulPhy | ||
) |
dlPhy | the downlink LteSpectrumPhy instance |
ulPhy | the uplink LteSpectrumPhy instance |
Definition at line 119 of file lte-ue-phy.cc.
References DoReset(), m_amc, ns3::LtePhy::m_macChTtiDelay, m_ueCphySapProvider, m_ueMeasurementsFilterPeriod, m_uePhySapProvider, ns3::Simulator::Now(), NS_ASSERT_MSG, ReportUeMeasurements(), ns3::Simulator::Schedule(), ns3::Simulator::ScheduleNow(), SubframeIndication(), UeMemberLteUePhySapProvider, and UL_PUSCH_TTIS_DELAY.
|
virtual |
Definition at line 147 of file lte-ue-phy.cc.
References m_txModeGain.
Ptr< DlCqiLteControlMessage > ns3::LteUePhy::CreateDlCqiFeedbackMessage | ( | const SpectrumValue & | sinr | ) |
Create the DL CQI feedback from SINR values perceived at the physical layer with the signal received from eNB.
sinr | SINR values vector |
Definition at line 559 of file lte-ue-phy.cc.
References ns3::CqiListElement_s::A30, ns3::LtePhy::GetRbgSize(), m_a30CqiLast, m_a30CqiPeriocity, m_amc, ns3::LtePhy::m_dlBandwidth, ns3::SbMeasResult_s::m_higherLayerSelected, m_p10CqiLast, m_p10CqiPeriocity, m_rnti, ns3::HigherLayerSelected_s::m_sbCqi, ns3::HigherLayerSelected_s::m_sbPmi, m_transmissionMode, m_txModeGain, ns3::Simulator::Now(), NS_ASSERT, NS_ASSERT_MSG, NS_LOG_DEBUG, NS_LOG_FUNCTION, ns3::CqiListElement_s::P10, and ns3::TransmissionModesLayers::TxMode2LayerNum().
Referenced by GenerateCtrlCqiReport().
|
virtual |
Create the PSD for the TX.
Implements ns3::LtePhy.
Definition at line 397 of file lte-ue-phy.cc.
References ns3::LteSpectrumValueHelper::CreateTxPowerSpectralDensity(), GetSubChannelsForTransmission(), ns3::LtePhy::m_txPower, ns3::LtePhy::m_ulBandwidth, ns3::LtePhy::m_ulEarfcn, and NS_LOG_FUNCTION.
Referenced by SetSubChannelsForTransmission().
|
private |
Definition at line 1061 of file lte-ue-phy.cc.
References ns3::LtePhy::m_ulBandwidth, m_ulConfigured, and ns3::LtePhy::m_ulEarfcn.
|
virtual |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
It is safe to call GetObject from within this method.
Reimplemented from ns3::LtePhy.
Definition at line 153 of file lte-ue-phy.cc.
References ns3::LtePhy::DoDispose(), m_ueCphySapProvider, m_uePhySapProvider, and NS_LOG_FUNCTION.
|
virtual |
This method is called only once by Object::Initialize. If the user calls Object::Initialize multiple times, DoInitialize is called only the first time.
Subclasses are expected to override this method and chain up to their parent's implementation once they are done. It is safe to call GetObject and AggregateObject from within this method.
Reimplemented from ns3::Object.
Definition at line 263 of file lte-ue-phy.cc.
References ns3::Object::DoInitialize(), and NS_LOG_FUNCTION.
|
private |
Definition at line 976 of file lte-ue-phy.cc.
References ns3::EventId::Cancel(), m_a30CqiLast, ns3::LtePhy::m_controlMessagesQueue, m_dlConfigured, ns3::LtePhy::m_downlinkSpectrumPhy, ns3::LtePhy::m_macChTtiDelay, m_p10CqiLast, ns3::LtePhy::m_packetBurstQueue, m_raPreambleId, m_raRnti, m_rnti, m_rsrpSinrSampleCounter, m_sendSrsEvent, m_srsConfigured, m_srsPeriodicity, m_subChannelsForTransmissionQueue, m_transmissionMode, m_ulConfigured, ns3::LtePhy::m_uplinkSpectrumPhy, ns3::Simulator::Now(), and NS_LOG_FUNCTION.
Referenced by LteUePhy().
|
privatevirtual |
Definition at line 686 of file lte-ue-phy.cc.
References NS_LOG_FUNCTION, and ns3::LtePhy::SetControlMessages().
Referenced by GenerateCtrlCqiReport(), and ns3::UeMemberLteUePhySapProvider::SendLteControlMessage().
Queue the MAC PDU to be sent (according to m_macChTtiDelay)
p | the MAC PDU to sent |
Implements ns3::LtePhy.
Definition at line 346 of file lte-ue-phy.cc.
References NS_LOG_FUNCTION, and ns3::LtePhy::SetMacPdu().
Referenced by ns3::UeMemberLteUePhySapProvider::SendMacPdu().
|
privatevirtual |
Definition at line 694 of file lte-ue-phy.cc.
References ns3::LtePhy::m_controlMessagesQueue, m_raPreambleId, m_raRnti, and NS_LOG_FUNCTION.
Referenced by ns3::UeMemberLteUePhySapProvider::SendRachPreamble().
|
private |
Definition at line 1030 of file lte-ue-phy.cc.
References ns3::LteSpectrumValueHelper::CreateNoisePowerSpectralDensity(), ns3::LtePhy::m_dlBandwidth, m_dlConfigured, ns3::LtePhy::m_dlEarfcn, ns3::LtePhy::m_downlinkSpectrumPhy, ns3::LtePhy::m_noiseFigure, ns3::LtePhy::m_rbgSize, NS_LOG_FUNCTION, and ns3::Type0AllocationRbg.
|
private |
Definition at line 1070 of file lte-ue-phy.cc.
References m_rnti, and NS_LOG_FUNCTION.
|
private |
Definition at line 1085 of file lte-ue-phy.cc.
References ns3::LtePhy::GetSrsPeriodicity(), ns3::LtePhy::GetSrsSubframeOffset(), ns3::LtePhy::m_cellId, m_rnti, m_srsConfigured, m_srsPeriodicity, m_srsStartTime, m_srsSubframeOffset, ns3::Simulator::Now(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.
|
private |
Definition at line 1077 of file lte-ue-phy.cc.
References ns3::LtePhy::m_downlinkSpectrumPhy, m_transmissionMode, and NS_LOG_FUNCTION.
|
private |
Definition at line 1011 of file lte-ue-phy.cc.
References ns3::LteSpectrumValueHelper::CreateNoisePowerSpectralDensity(), ns3::LtePhy::m_cellId, ns3::LtePhy::m_dlBandwidth, m_dlConfigured, ns3::LtePhy::m_dlEarfcn, ns3::LtePhy::m_downlinkSpectrumPhy, ns3::LtePhy::m_noiseFigure, m_ulConfigured, ns3::LtePhy::m_uplinkSpectrumPhy, and NS_LOG_FUNCTION.
|
virtual |
generate a CQI report based on the given SINR of Ctrl frame
sinr | the SINR vs frequency measured by the device |
Implements ns3::LtePhy.
Definition at line 407 of file lte-ue-phy.cc.
References ns3::SpectrumValue::ConstValuesBegin(), ns3::SpectrumValue::ConstValuesEnd(), CreateDlCqiFeedbackMessage(), DoSendLteControlMessage(), ns3::LtePhy::GetDevice(), m_a30CqiLast, m_a30CqiPeriocity, ns3::LtePhy::m_cellId, m_dlConfigured, m_p10CqiLast, m_p10CqiPeriocity, m_pssList, m_pssReceived, m_pssReceptionThreshold, m_reportCurrentCellRsrpSinrTrace, m_rnti, m_rsIntereferencePower, m_rsInterferencePowerUpdated, m_rsReceivedPower, m_rsReceivedPowerUpdated, m_rsrpSinrSampleCounter, m_rsrpSinrSamplePeriod, m_UeMeasurementsMap, m_ulConfigured, ns3::Simulator::Now(), NS_ASSERT, NS_ASSERT_MSG, NS_LOG_DEBUG, NS_LOG_FUNCTION, NS_LOG_INFO, ns3::LteUePhy::UeMeasurementsElement::rsrpNum, ns3::LteUePhy::UeMeasurementsElement::rsrpSum, ns3::LteUePhy::UeMeasurementsElement::rsrqNum, and ns3::LteUePhy::UeMeasurementsElement::rsrqSum.
|
virtual |
generate a CQI report based on the given SINR of Data frame (used for PUSCH CQIs)
sinr | the SINR vs frequency measured by the device |
Implements ns3::LtePhy.
Definition at line 535 of file lte-ue-phy.cc.
Ptr< LteSpectrumPhy > ns3::LteUePhy::GetDlSpectrumPhy | ( | ) | const |
Definition at line 334 of file lte-ue-phy.cc.
References ns3::LtePhy::m_downlinkSpectrumPhy.
Referenced by GetTypeId().
LteUeCphySapProvider * ns3::LteUePhy::GetLteUeCphySapProvider | ( | ) |
Get the CPHY SAP provider.
Definition at line 292 of file lte-ue-phy.cc.
References m_ueCphySapProvider, and NS_LOG_FUNCTION.
LteUePhySapProvider * ns3::LteUePhy::GetLteUePhySapProvider | ( | ) |
Get the PHY SAP provider.
Definition at line 277 of file lte-ue-phy.cc.
References m_uePhySapProvider, and NS_LOG_FUNCTION.
uint8_t ns3::LteUePhy::GetMacChDelay | ( | void | ) | const |
Definition at line 328 of file lte-ue-phy.cc.
References ns3::LtePhy::m_macChTtiDelay.
double ns3::LteUePhy::GetNoiseFigure | ( | ) | const |
Definition at line 306 of file lte-ue-phy.cc.
References ns3::LtePhy::m_noiseFigure, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
std::vector< int > ns3::LteUePhy::GetSubChannelsForReception | ( | void | ) |
Get a list of sub channels to use in RX.
Definition at line 389 of file lte-ue-phy.cc.
References m_subChannelsForReception, and NS_LOG_FUNCTION.
std::vector< int > ns3::LteUePhy::GetSubChannelsForTransmission | ( | void | ) |
Get a list of sub channels to use in RX.
Definition at line 381 of file lte-ue-phy.cc.
References m_subChannelsForTransmission, and NS_LOG_FUNCTION.
Referenced by CreateTxPowerSpectralDensity().
double ns3::LteUePhy::GetTxPower | ( | ) | const |
Definition at line 320 of file lte-ue-phy.cc.
References ns3::LtePhy::m_txPower, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
|
static |
Definition at line 164 of file lte-ue-phy.cc.
References ns3::TypeId::ATTR_GET, GetDlSpectrumPhy(), GetNoiseFigure(), GetTxPower(), GetUlSpectrumPhy(), m_pssReceptionThreshold, m_reportCurrentCellRsrpSinrTrace, m_reportUeMeasurements, m_rsrpSinrSamplePeriod, m_ueMeasurementsFilterPeriod, m_ulPhyTransmission, ns3::MakeTimeChecker(), ns3::MakeTraceSourceAccessor(), SetNoiseFigure(), ns3::TypeId::SetParent(), SetTxMode1Gain(), SetTxMode2Gain(), SetTxMode3Gain(), SetTxMode4Gain(), SetTxMode5Gain(), SetTxMode6Gain(), SetTxMode7Gain(), and SetTxPower().
Ptr< LteSpectrumPhy > ns3::LteUePhy::GetUlSpectrumPhy | ( | ) | const |
Definition at line 340 of file lte-ue-phy.cc.
References ns3::LtePhy::m_uplinkSpectrumPhy.
Referenced by GetTypeId().
PhySpectrum received a new PHY-PDU.
Definition at line 355 of file lte-ue-phy.cc.
References m_uePhySapUser, and ns3::LteUePhySapUser::ReceivePhyPdu().
Referenced by ns3::LteHelper::InstallSingleUeDevice().
|
private |
Definition at line 875 of file lte-ue-phy.cc.
References ns3::LtePhy::m_macChTtiDelay, and m_subChannelsForTransmissionQueue.
Referenced by ReceiveLteControlMessageList().
|
virtual |
Definition at line 708 of file lte-ue-phy.cc.
References ns3::LteControlMessage::DL_DCI, ns3::Time::GetMilliSeconds(), ns3::LtePhy::GetRbgSize(), ns3::PhyTransmissionStatParameters::m_cellId, ns3::LtePhy::m_cellId, ns3::LtePhy::m_downlinkSpectrumPhy, m_harqPhyModule, ns3::PhyTransmissionStatParameters::m_imsi, ns3::PhyTransmissionStatParameters::m_layer, ns3::PhyTransmissionStatParameters::m_mcs, ns3::PhyTransmissionStatParameters::m_ndi, m_raPreambleId, m_raRnti, ns3::PhyTransmissionStatParameters::m_rnti, m_rnti, ns3::PhyTransmissionStatParameters::m_rv, ns3::PhyTransmissionStatParameters::m_size, ns3::PhyTransmissionStatParameters::m_timestamp, ns3::PhyTransmissionStatParameters::m_txMode, m_ueCphySapUser, m_uePhySapUser, m_ulPhyTransmission, ns3::LteControlMessage::MIB, ns3::Simulator::Now(), NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, NS_LOG_INFO, QueueSubChannelsForTransmission(), ns3::LteControlMessage::RAR, ns3::LteUePhySapUser::ReceiveLteControlMessage(), ns3::LteUeCphySapUser::RecvMasterInformationBlock(), SetSubChannelsForReception(), ns3::LteControlMessage::UL_DCI, and UL_PUSCH_TTIS_DELAY.
Referenced by ns3::LteHelper::InstallSingleUeDevice().
|
virtual |
PhySpectrum generated a new DL HARQ feedback.
Definition at line 1173 of file lte-ue-phy.cc.
References NS_LOG_FUNCTION, and ns3::LtePhy::SetControlMessages().
Referenced by ns3::LteHelper::InstallSingleUeDevice().
|
virtual |
Definition at line 847 of file lte-ue-phy.cc.
References ns3::LteUePhy::PssElement::cellId, m_dlConfigured, m_pssList, m_pssReceived, ns3::LteUePhy::PssElement::nRB, NS_LOG_FUNCTION, and ns3::LteUePhy::PssElement::pssPsdSum.
Referenced by ns3::LteHelper::InstallSingleUeDevice().
|
virtual |
generate a report based on the linear interference and noise power perceived during DATA frame NOTE: used only by eNB
sinr | the interference + noise power measured by the device |
Implements ns3::LtePhy.
Definition at line 541 of file lte-ue-phy.cc.
References m_rsIntereferencePower, m_rsInterferencePowerUpdated, and NS_LOG_FUNCTION.
|
virtual |
generate a report based on the linear RS power perceived during CTRL frame NOTE: used only by UE for evaluating RSRP
sinr | the RS power measured by the device |
Implements ns3::LtePhy.
Definition at line 549 of file lte-ue-phy.cc.
References m_rsReceivedPower, m_rsReceivedPowerUpdated, and NS_LOG_FUNCTION.
|
private |
Definition at line 659 of file lte-ue-phy.cc.
References ns3::LteUeCphySapUser::UeMeasurementsElement::m_cellId, ns3::LtePhy::m_cellId, m_reportUeMeasurements, m_rnti, ns3::LteUeCphySapUser::UeMeasurementsElement::m_rsrp, ns3::LteUeCphySapUser::UeMeasurementsElement::m_rsrq, m_ueCphySapUser, m_ueMeasurementsFilterPeriod, ns3::LteUeCphySapUser::UeMeasurementsParameters::m_ueMeasurementsList, m_UeMeasurementsMap, ns3::Simulator::Now(), NS_LOG_DEBUG, NS_LOG_FUNCTION, and ns3::Simulator::Schedule().
Referenced by LteUePhy().
void ns3::LteUePhy::SendSrs | ( | ) |
Send the SRS signal in the last symbols of the frame.
Definition at line 960 of file lte-ue-phy.cc.
References ns3::LtePhy::m_cellId, m_rnti, ns3::LtePhy::m_ulBandwidth, ns3::LtePhy::m_uplinkSpectrumPhy, NS_ASSERT, NS_LOG_FUNCTION, and SetSubChannelsForTransmission().
Referenced by SubframeIndication().
void ns3::LteUePhy::SetHarqPhyModule | ( | Ptr< LteHarqPhy > | harq | ) |
void ns3::LteUePhy::SetLteUeCphySapUser | ( | LteUeCphySapUser * | s | ) |
Set the CPHY SAP User.
s | a pointer to the SAP user |
Definition at line 285 of file lte-ue-phy.cc.
References m_ueCphySapUser, NS_LOG_FUNCTION, and s.
void ns3::LteUePhy::SetLteUePhySapUser | ( | LteUePhySapUser * | s | ) |
Set the PHY SAP User.
s | a pointer to the SAP user |
Definition at line 270 of file lte-ue-phy.cc.
References m_uePhySapUser, NS_LOG_FUNCTION, and s.
void ns3::LteUePhy::SetNoiseFigure | ( | double | pow | ) |
pw | the noise figure in dB |
Definition at line 299 of file lte-ue-phy.cc.
References ns3::LtePhy::m_noiseFigure, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::LteUePhy::SetSubChannelsForReception | ( | std::vector< int > | mask | ) |
Get a list of sub channels to use in RX.
mask | list of sub channels |
Definition at line 373 of file lte-ue-phy.cc.
References m_subChannelsForReception, and NS_LOG_FUNCTION.
Referenced by ReceiveLteControlMessageList().
void ns3::LteUePhy::SetSubChannelsForTransmission | ( | std::vector< int > | mask | ) |
Set a list of sub channels to use in TX.
mask | a list of sub channels |
Definition at line 361 of file lte-ue-phy.cc.
References CreateTxPowerSpectralDensity(), m_subChannelsForTransmission, ns3::LtePhy::m_uplinkSpectrumPhy, and NS_LOG_FUNCTION.
Referenced by SendSrs(), and SubframeIndication().
|
private |
Definition at line 1100 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1106 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1112 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1118 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1124 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1130 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1136 of file lte-ue-phy.cc.
References SetTxModeGain().
Referenced by GetTypeId().
|
private |
Definition at line 1143 of file lte-ue-phy.cc.
References ns3::LtePhy::m_downlinkSpectrumPhy, m_txModeGain, and NS_LOG_FUNCTION.
Referenced by SetTxMode1Gain(), SetTxMode2Gain(), SetTxMode3Gain(), SetTxMode4Gain(), SetTxMode5Gain(), SetTxMode6Gain(), and SetTxMode7Gain().
void ns3::LteUePhy::SetTxPower | ( | double | pow | ) |
pw | the transmission power in dBm |
Definition at line 313 of file lte-ue-phy.cc.
References ns3::LtePhy::m_txPower, and NS_LOG_FUNCTION.
Referenced by GetTypeId().
void ns3::LteUePhy::SubframeIndication | ( | uint32_t | frameNo, |
uint32_t | subframeNo | ||
) |
trigger from eNB the start from a new frame
frameNo | frame number |
subframeNo | subframe number |
Definition at line 882 of file lte-ue-phy.cc.
References ns3::LtePhy::GetControlMessages(), ns3::LtePhy::GetPacketBurst(), ns3::LtePhy::GetTti(), ns3::LtePhy::m_cellId, ns3::LtePhy::m_macChTtiDelay, m_pssReceived, m_rnti, m_rsInterferencePowerUpdated, m_rsReceivedPowerUpdated, m_sendSrsEvent, m_srsConfigured, m_srsPeriodicity, m_srsStartTime, m_srsSubframeOffset, m_subChannelsForTransmissionQueue, m_subframeNo, m_uePhySapUser, m_ulConfigured, ns3::LtePhy::m_uplinkSpectrumPhy, ns3::Simulator::Now(), NS_ASSERT_MSG, NS_LOG_FUNCTION, NS_LOG_INFO, NS_LOG_LOGIC, ns3::Simulator::Schedule(), SendSrs(), SetSubChannelsForTransmission(), ns3::LteUePhySapUser::SubframeIndication(), ns3::UL_DATA_DURATION, and ns3::UL_SRS_DELAY_FROM_SUBFRAME_START.
Referenced by LteUePhy().
|
friend |
Definition at line 53 of file lte-ue-phy.h.
|
friend |
Definition at line 52 of file lte-ue-phy.h.
Referenced by LteUePhy().
|
private |
Definition at line 263 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), DoReset(), and GenerateCtrlCqiReport().
|
private |
Definition at line 262 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), and GenerateCtrlCqiReport().
Definition at line 255 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), and LteUePhy().
|
private |
Definition at line 281 of file lte-ue-phy.h.
Referenced by DoReset(), DoSetDlBandwidth(), DoSyncronizeWithEnb(), GenerateCtrlCqiReport(), and ReceivePss().
|
private |
Definition at line 315 of file lte-ue-phy.h.
Referenced by ReceiveLteControlMessageList(), and SetHarqPhyModule().
|
private |
SubBand Aperiodic CQI: activated by DCI format 0 or Random Access Response Grant
Definition at line 258 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), DoReset(), and GenerateCtrlCqiReport().
|
private |
Wideband Periodic CQI: 2, 5, 10, 16, 20, 32, 40, 64, 80 or 160 ms
Definition at line 257 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), and GenerateCtrlCqiReport().
|
private |
Definition at line 299 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and ReceivePss().
|
private |
Definition at line 292 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), ReceivePss(), and SubframeIndication().
|
private |
Definition at line 301 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and GetTypeId().
|
private |
Definition at line 317 of file lte-ue-phy.h.
Referenced by DoReset(), DoSendRachPreamble(), and ReceiveLteControlMessageList().
|
private |
Definition at line 318 of file lte-ue-phy.h.
Referenced by DoReset(), DoSendRachPreamble(), and ReceiveLteControlMessageList().
|
private |
Trace information regarding RSRP and average SINR (see TS 36.214) uint16_t cellId, uint16_t rnti, double rsrp, double sinr
Definition at line 324 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and GetTypeId().
|
private |
Trace information regarding RSRP and RSRQ (see TS 36.214) uint16_t rnti, uint16_t cellId, double rsrp, double sinr, bool servingCell
Definition at line 332 of file lte-ue-phy.h.
Referenced by GetTypeId(), and ReportUeMeasurements().
|
private |
Definition at line 271 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), DoReset(), DoSetRnti(), DoSetSrsConfigurationIndex(), GenerateCtrlCqiReport(), ReceiveLteControlMessageList(), ReportUeMeasurements(), SendSrs(), and SubframeIndication().
|
private |
Definition at line 290 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and ReportInterference().
|
private |
Definition at line 289 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), ReportInterference(), and SubframeIndication().
|
private |
Definition at line 287 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and ReportRsReceivedPower().
|
private |
Definition at line 286 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), ReportRsReceivedPower(), and SubframeIndication().
|
private |
Definition at line 326 of file lte-ue-phy.h.
Referenced by DoReset(), and GenerateCtrlCqiReport().
|
private |
Definition at line 325 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and GetTypeId().
|
private |
Definition at line 334 of file lte-ue-phy.h.
Referenced by DoReset(), and SubframeIndication().
|
private |
Definition at line 278 of file lte-ue-phy.h.
Referenced by DoReset(), DoSetSrsConfigurationIndex(), and SubframeIndication().
|
private |
Definition at line 276 of file lte-ue-phy.h.
Referenced by DoReset(), DoSetSrsConfigurationIndex(), and SubframeIndication().
|
private |
Definition at line 279 of file lte-ue-phy.h.
Referenced by DoSetSrsConfigurationIndex(), and SubframeIndication().
|
private |
Definition at line 277 of file lte-ue-phy.h.
Referenced by DoSetSrsConfigurationIndex(), and SubframeIndication().
|
private |
Definition at line 250 of file lte-ue-phy.h.
Referenced by GetSubChannelsForReception(), and SetSubChannelsForReception().
|
private |
Definition at line 249 of file lte-ue-phy.h.
Referenced by GetSubChannelsForTransmission(), and SetSubChannelsForTransmission().
|
private |
Definition at line 252 of file lte-ue-phy.h.
Referenced by DoReset(), QueueSubChannelsForTransmission(), and SubframeIndication().
|
private |
Definition at line 284 of file lte-ue-phy.h.
Referenced by SubframeIndication().
|
private |
Definition at line 273 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), DoReset(), and DoSetTransmissionMode().
|
private |
Definition at line 274 of file lte-ue-phy.h.
Referenced by CreateDlCqiFeedbackMessage(), SetTxModeGain(), and ~LteUePhy().
|
private |
Definition at line 268 of file lte-ue-phy.h.
Referenced by DoDispose(), GetLteUeCphySapProvider(), and LteUePhy().
|
private |
Definition at line 269 of file lte-ue-phy.h.
Referenced by ReceiveLteControlMessageList(), ReportUeMeasurements(), and SetLteUeCphySapUser().
|
private |
Definition at line 313 of file lte-ue-phy.h.
|
private |
Definition at line 312 of file lte-ue-phy.h.
Referenced by GetTypeId(), LteUePhy(), and ReportUeMeasurements().
|
private |
Definition at line 311 of file lte-ue-phy.h.
Referenced by GenerateCtrlCqiReport(), and ReportUeMeasurements().
|
private |
Definition at line 265 of file lte-ue-phy.h.
Referenced by DoDispose(), GetLteUePhySapProvider(), and LteUePhy().
|
private |
Definition at line 266 of file lte-ue-phy.h.
Referenced by PhyPduReceived(), ReceiveLteControlMessageList(), SetLteUePhySapUser(), and SubframeIndication().
|
private |
Definition at line 282 of file lte-ue-phy.h.
Referenced by DoConfigureUplink(), DoReset(), DoSyncronizeWithEnb(), GenerateCtrlCqiReport(), and SubframeIndication().
|
private |
Trace information regarding PHY stats from DL Tx perspective PhyTrasmissionStatParameters see lte-common.h
Definition at line 340 of file lte-ue-phy.h.
Referenced by GetTypeId(), and ReceiveLteControlMessageList().