lte: Use uint16_t instead of uint8_t for bandwidth
This commit is contained in:
committed by
ZorazeAli
parent
503e330c1a
commit
a6765843e3
@@ -111,7 +111,7 @@ int main (int argc, char *argv[])
|
||||
bool generateSpectrumTrace = false;
|
||||
bool generateRem = false;
|
||||
int32_t remRbId = -1;
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double distance = 1000;
|
||||
Box macroUeBox = Box (-distance * 0.5, distance * 1.5, -distance * 0.5, distance * 1.5, 1.5, 1.5);
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@ int main (int argc, char *argv[])
|
||||
bool generateSpectrumTrace = false;
|
||||
bool generateRem = false;
|
||||
int32_t remRbId = -1;
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double distance = 1000;
|
||||
Box macroUeBox = Box (-distance * 0.5, distance * 1.5, -distance * 0.5, distance * 1.5, 1.5, 1.5);
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ int main (int argc, char *argv[])
|
||||
|
||||
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
|
||||
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double d1 = 0;
|
||||
|
||||
// Create Nodes: eNodeB and UE
|
||||
|
||||
@@ -175,7 +175,7 @@ CcHelper::EquallySpacedCcs ()
|
||||
|
||||
uint32_t ulEarfcn = m_ulEarfcn;
|
||||
uint32_t dlEarfcn = m_dlEarfcn;
|
||||
uint32_t maxBandwidthRb = std::max<uint32_t> (m_ulBandwidth, m_dlBandwidth);
|
||||
uint16_t maxBandwidthRb = std::max<uint16_t> (m_ulBandwidth, m_dlBandwidth);
|
||||
|
||||
// Convert bandwidth from RBs to kHz
|
||||
uint32_t maxBandwidthKhz = LteSpectrumValueHelper::GetChannelBandwidth(maxBandwidthRb) / 1e3;
|
||||
|
||||
@@ -711,7 +711,7 @@ LteHelper::InstallSingleEnbDevice (Ptr<Node> n)
|
||||
ccPhy->GetUlSpectrumPhy ()->SetLtePhyRxCtrlEndOkCallback (MakeCallback (&LteEnbPhy::ReceiveLteControlMessageList, ccPhy));
|
||||
ccPhy->GetUlSpectrumPhy ()->SetLtePhyUlHarqFeedbackCallback (MakeCallback (&LteEnbPhy::ReportUlHarqFeedback, ccPhy));
|
||||
NS_LOG_LOGIC ("set the propagation model frequencies");
|
||||
double dlFreq = LteSpectrumValueHelper::GetCarrierFrequency (it->second->m_dlEarfcn);
|
||||
double dlFreq = LteSpectrumValueHelper::GetCarrierFrequency (it->second->GetDlEarfcn ());
|
||||
NS_LOG_LOGIC ("DL freq: " << dlFreq);
|
||||
bool dlFreqOk = m_downlinkPathlossModel->SetAttributeFailSafe ("Frequency", DoubleValue (dlFreq));
|
||||
if (!dlFreqOk)
|
||||
@@ -719,7 +719,7 @@ LteHelper::InstallSingleEnbDevice (Ptr<Node> n)
|
||||
NS_LOG_WARN ("DL propagation model does not have a Frequency attribute");
|
||||
}
|
||||
|
||||
double ulFreq = LteSpectrumValueHelper::GetCarrierFrequency (it->second->m_ulEarfcn);
|
||||
double ulFreq = LteSpectrumValueHelper::GetCarrierFrequency (it->second->GetUlEarfcn ());
|
||||
|
||||
NS_LOG_LOGIC ("UL freq: " << ulFreq);
|
||||
bool ulFreqOk = m_uplinkPathlossModel->SetAttributeFailSafe ("Frequency", DoubleValue (ulFreq));
|
||||
@@ -1295,7 +1295,7 @@ LteHelper::DoDeActivateDedicatedEpsBearer (Ptr<NetDevice> ueDevice, Ptr<NetDevic
|
||||
}
|
||||
|
||||
void
|
||||
LteHelper::DoComponentCarrierConfigure (uint32_t ulEarfcn, uint32_t dlEarfcn, uint8_t ulbw, uint8_t dlbw)
|
||||
LteHelper::DoComponentCarrierConfigure (uint32_t ulEarfcn, uint32_t dlEarfcn, uint16_t ulbw, uint16_t dlbw)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << ulEarfcn << dlEarfcn << ulbw << dlbw);
|
||||
|
||||
|
||||
@@ -684,7 +684,7 @@ private:
|
||||
* \param ulbw uplink bandwidth for each CC
|
||||
* \param dlbw downlink bandwidth for each CC
|
||||
*/
|
||||
void DoComponentCarrierConfigure (uint32_t ulEarfcn, uint32_t dlEarfcn, uint8_t ulbw, uint8_t dlbw);
|
||||
void DoComponentCarrierConfigure (uint32_t ulEarfcn, uint32_t dlEarfcn, uint16_t ulbw, uint16_t dlbw);
|
||||
/**
|
||||
* Create an eNodeB device (LteEnbNetDevice) on the given node.
|
||||
* \param n the node where the device is to be installed
|
||||
|
||||
@@ -149,14 +149,14 @@ RadioEnvironmentMapHelper::GetTypeId (void)
|
||||
}
|
||||
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
RadioEnvironmentMapHelper::GetBandwidth () const
|
||||
{
|
||||
return m_bandwidth;
|
||||
}
|
||||
|
||||
void
|
||||
RadioEnvironmentMapHelper::SetBandwidth (uint8_t bw)
|
||||
RadioEnvironmentMapHelper::SetBandwidth (uint16_t bw)
|
||||
{
|
||||
switch (bw)
|
||||
{
|
||||
@@ -170,7 +170,7 @@ RadioEnvironmentMapHelper::SetBandwidth (uint8_t bw)
|
||||
break;
|
||||
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) bw);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << bw);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -61,13 +61,13 @@ public:
|
||||
/**
|
||||
* \return the bandwidth (in num of RBs) over which SINR is calculated
|
||||
*/
|
||||
uint8_t GetBandwidth () const;
|
||||
uint16_t GetBandwidth () const;
|
||||
|
||||
/**
|
||||
*
|
||||
* \param bw the bandwidth (in num of RBs) over which SINR is calculated
|
||||
*/
|
||||
void SetBandwidth (uint8_t bw);
|
||||
void SetBandwidth (uint16_t bw);
|
||||
|
||||
/**
|
||||
* Deploy the RemSpectrumPhy objects that generate the map according to the specified settings.
|
||||
|
||||
@@ -84,8 +84,8 @@ public:
|
||||
|
||||
struct SiConfiguration_s m_siConfiguration; ///< SI configuration
|
||||
|
||||
uint8_t m_ulBandwidth; ///< UL bandwidth
|
||||
uint8_t m_dlBandwidth; ///< DL badnwidth
|
||||
uint16_t m_ulBandwidth; ///< UL bandwidth
|
||||
uint16_t m_dlBandwidth; ///< DL badnwidth
|
||||
|
||||
enum NormalExtended_e m_ulCyclicPrefixLength; ///< UL cyclic prefix length
|
||||
enum NormalExtended_e m_dlCyclicPrefixLength; ///< DL cyclic prefix length
|
||||
|
||||
@@ -48,8 +48,8 @@ public:
|
||||
* @param ulBandwidth
|
||||
* @param dlBandwidth
|
||||
*/
|
||||
virtual void ConfigureMac (uint8_t ulBandwidth,
|
||||
uint8_t dlBandwidth) = 0;
|
||||
virtual void ConfigureMac (uint16_t ulBandwidth,
|
||||
uint16_t dlBandwidth) = 0;
|
||||
|
||||
/**
|
||||
* Add UE function
|
||||
|
||||
@@ -57,7 +57,7 @@ public:
|
||||
* \param ulBandwidth the UL bandwidth in PRBs
|
||||
* \param dlBandwidth the DL bandwidth in PRBs
|
||||
*/
|
||||
virtual void SetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth) = 0;
|
||||
virtual void SetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth) = 0;
|
||||
|
||||
/**
|
||||
* \param ulEarfcn the UL EARFCN
|
||||
@@ -155,7 +155,7 @@ public:
|
||||
|
||||
// inherited from LteEnbCphySapProvider
|
||||
virtual void SetCellId (uint16_t cellId);
|
||||
virtual void SetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
virtual void SetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
virtual void SetEarfcn (uint32_t ulEarfcn, uint32_t dlEarfcn);
|
||||
virtual void AddUe (uint16_t rnti);
|
||||
virtual void RemoveUe (uint16_t rnti);
|
||||
@@ -192,7 +192,7 @@ MemberLteEnbCphySapProvider<C>::SetCellId (uint16_t cellId)
|
||||
|
||||
template <class C>
|
||||
void
|
||||
MemberLteEnbCphySapProvider<C>::SetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
MemberLteEnbCphySapProvider<C>::SetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
m_owner->DoSetBandwidth (ulBandwidth, dlBandwidth);
|
||||
}
|
||||
|
||||
@@ -67,7 +67,7 @@ public:
|
||||
EnbMacMemberLteEnbCmacSapProvider (LteEnbMac* mac);
|
||||
|
||||
// inherited from LteEnbCmacSapProvider
|
||||
virtual void ConfigureMac (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
virtual void ConfigureMac (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
virtual void AddUe (uint16_t rnti);
|
||||
virtual void RemoveUe (uint16_t rnti);
|
||||
virtual void AddLc (LcInfo lcinfo, LteMacSapUser* msu);
|
||||
@@ -89,7 +89,7 @@ EnbMacMemberLteEnbCmacSapProvider::EnbMacMemberLteEnbCmacSapProvider (LteEnbMac*
|
||||
}
|
||||
|
||||
void
|
||||
EnbMacMemberLteEnbCmacSapProvider::ConfigureMac (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
EnbMacMemberLteEnbCmacSapProvider::ConfigureMac (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
m_mac->DoConfigureMac (ulBandwidth, dlBandwidth);
|
||||
}
|
||||
@@ -789,9 +789,9 @@ LteEnbMac::DoReceivePhyPdu (Ptr<Packet> p)
|
||||
// ////////////////////////////////////////////
|
||||
|
||||
void
|
||||
LteEnbMac::DoConfigureMac (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
LteEnbMac::DoConfigureMac (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << " ulBandwidth=" << (uint16_t) ulBandwidth << " dlBandwidth=" << (uint16_t) dlBandwidth);
|
||||
NS_LOG_FUNCTION (this << " ulBandwidth=" << ulBandwidth << " dlBandwidth=" << dlBandwidth);
|
||||
FfMacCschedSapProvider::CschedCellConfigReqParameters params;
|
||||
// Configure the subset of parameters used by FfMacScheduler
|
||||
params.m_ulBandwidth = ulBandwidth;
|
||||
|
||||
@@ -217,7 +217,7 @@ private:
|
||||
* \param ulBandwidth the UL bandwidth
|
||||
* \param dlBandwidth the DL bandwidth
|
||||
*/
|
||||
void DoConfigureMac (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
void DoConfigureMac (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
/**
|
||||
* \brief Add UE function
|
||||
* \param rnti the RNTI
|
||||
|
||||
@@ -239,16 +239,16 @@ LteEnbNetDevice::HasCellId (uint16_t cellId) const
|
||||
return false;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteEnbNetDevice::GetUlBandwidth () const
|
||||
{
|
||||
return m_ulBandwidth;
|
||||
}
|
||||
|
||||
void
|
||||
LteEnbNetDevice::SetUlBandwidth (uint8_t bw)
|
||||
LteEnbNetDevice::SetUlBandwidth (uint16_t bw)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << uint16_t (bw));
|
||||
NS_LOG_FUNCTION (this << bw);
|
||||
switch (bw)
|
||||
{
|
||||
case 6:
|
||||
@@ -261,19 +261,19 @@ LteEnbNetDevice::SetUlBandwidth (uint8_t bw)
|
||||
break;
|
||||
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) bw);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << bw);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteEnbNetDevice::GetDlBandwidth () const
|
||||
{
|
||||
return m_dlBandwidth;
|
||||
}
|
||||
|
||||
void
|
||||
LteEnbNetDevice::SetDlBandwidth (uint8_t bw)
|
||||
LteEnbNetDevice::SetDlBandwidth (uint16_t bw)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << uint16_t (bw));
|
||||
switch (bw)
|
||||
@@ -288,7 +288,7 @@ LteEnbNetDevice::SetDlBandwidth (uint8_t bw)
|
||||
break;
|
||||
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) bw);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << bw);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,22 +116,22 @@ public:
|
||||
/**
|
||||
* \return the uplink bandwidth in RBs
|
||||
*/
|
||||
uint8_t GetUlBandwidth () const;
|
||||
uint16_t GetUlBandwidth () const;
|
||||
|
||||
/**
|
||||
* \param bw the uplink bandwidth in RBs
|
||||
*/
|
||||
void SetUlBandwidth (uint8_t bw);
|
||||
void SetUlBandwidth (uint16_t bw);
|
||||
|
||||
/**
|
||||
* \return the downlink bandwidth in RBs
|
||||
*/
|
||||
uint8_t GetDlBandwidth () const;
|
||||
uint16_t GetDlBandwidth () const;
|
||||
|
||||
/**
|
||||
* \param bw the downlink bandwidth in RBs
|
||||
*/
|
||||
void SetDlBandwidth (uint8_t bw);
|
||||
void SetDlBandwidth (uint16_t bw);
|
||||
|
||||
/**
|
||||
* \return the downlink carrier frequency (EARFCN)
|
||||
@@ -244,8 +244,8 @@ private:
|
||||
|
||||
uint16_t m_cellId; /**< Cell Identifier. Part of the CGI, see TS 29.274, section 8.21.1 */
|
||||
|
||||
uint8_t m_dlBandwidth; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- downlink bandwidth in RBs */
|
||||
uint8_t m_ulBandwidth; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- uplink bandwidth in RBs */
|
||||
uint16_t m_dlBandwidth; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- downlink bandwidth in RBs */
|
||||
uint16_t m_ulBandwidth; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- uplink bandwidth in RBs */
|
||||
|
||||
uint32_t m_dlEarfcn; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- downlink carrier frequency */
|
||||
uint32_t m_ulEarfcn; /**<DEPRECATE - It is maintained for backward compatibility after adding CA feature- uplink carrier frequency */
|
||||
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
* \param ulBandwidth the UL bandwidth
|
||||
* \param dlBandwidth the DL bandwidth
|
||||
*/
|
||||
virtual void SetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
virtual void SetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
/**
|
||||
* Set Cell ID function
|
||||
*
|
||||
@@ -116,7 +116,7 @@ EnbMemberLteEnbPhySapProvider::SendMacPdu (Ptr<Packet> p)
|
||||
}
|
||||
|
||||
void
|
||||
EnbMemberLteEnbPhySapProvider::SetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
EnbMemberLteEnbPhySapProvider::SetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
m_phy->DoSetBandwidth (ulBandwidth, dlBandwidth);
|
||||
}
|
||||
@@ -894,7 +894,7 @@ LteEnbPhy::CreatePuschCqiReport (const SpectrumValue& sinr)
|
||||
|
||||
|
||||
void
|
||||
LteEnbPhy::DoSetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
LteEnbPhy::DoSetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << (uint32_t) ulBandwidth << (uint32_t) dlBandwidth);
|
||||
m_ulBandwidth = ulBandwidth;
|
||||
|
||||
@@ -329,7 +329,7 @@ private:
|
||||
* \param ulBandwidth UL bandwidth
|
||||
* \param dlBandwidth DL bandwidth
|
||||
*/
|
||||
void DoSetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
void DoSetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
/**
|
||||
* Set EARFCN
|
||||
*
|
||||
|
||||
@@ -2175,11 +2175,11 @@ LteEnbRrc::ConfigureCell (std::map<uint8_t, Ptr<ComponentCarrierBaseStation>> cc
|
||||
{
|
||||
auto it = ccPhyConf.begin ();
|
||||
NS_ASSERT (it != ccPhyConf.end ());
|
||||
uint8_t ulBandwidth = it->second->GetUlBandwidth ();
|
||||
uint8_t dlBandwidth = it->second->GetDlBandwidth ();
|
||||
uint16_t ulBandwidth = it->second->GetUlBandwidth ();
|
||||
uint16_t dlBandwidth = it->second->GetDlBandwidth ();
|
||||
uint32_t ulEarfcn = it->second->GetUlEarfcn ();
|
||||
uint32_t dlEarfcn = it->second->GetDlEarfcn ();
|
||||
NS_LOG_FUNCTION (this << (uint16_t) ulBandwidth << (uint16_t) dlBandwidth
|
||||
NS_LOG_FUNCTION (this << ulBandwidth << dlBandwidth
|
||||
<< ulEarfcn << dlEarfcn);
|
||||
NS_ASSERT (!m_configured);
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ LteFfrAlgorithm::DoDispose ()
|
||||
NS_LOG_FUNCTION (this);
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrAlgorithm::GetUlBandwidth () const
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
@@ -87,9 +87,9 @@ LteFfrAlgorithm::GetUlBandwidth () const
|
||||
}
|
||||
|
||||
void
|
||||
LteFfrAlgorithm::SetUlBandwidth (uint8_t bw)
|
||||
LteFfrAlgorithm::SetUlBandwidth (uint16_t bw)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << uint16_t (bw));
|
||||
NS_LOG_FUNCTION (this << bw);
|
||||
switch (bw)
|
||||
{
|
||||
case 6:
|
||||
@@ -102,12 +102,12 @@ LteFfrAlgorithm::SetUlBandwidth (uint8_t bw)
|
||||
break;
|
||||
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) bw);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << bw);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrAlgorithm::GetDlBandwidth () const
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
@@ -115,9 +115,9 @@ LteFfrAlgorithm::GetDlBandwidth () const
|
||||
}
|
||||
|
||||
void
|
||||
LteFfrAlgorithm::SetDlBandwidth (uint8_t bw)
|
||||
LteFfrAlgorithm::SetDlBandwidth (uint16_t bw)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << uint16_t (bw));
|
||||
NS_LOG_FUNCTION (this << bw);
|
||||
switch (bw)
|
||||
{
|
||||
case 6:
|
||||
@@ -130,7 +130,7 @@ LteFfrAlgorithm::SetDlBandwidth (uint8_t bw)
|
||||
break;
|
||||
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) bw);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << bw);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -172,7 +172,7 @@ LteFfrAlgorithm::DoSetCellId (uint16_t cellId )
|
||||
}
|
||||
|
||||
void
|
||||
LteFfrAlgorithm::DoSetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth)
|
||||
LteFfrAlgorithm::DoSetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth)
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
SetDlBandwidth (dlBandwidth);
|
||||
|
||||
@@ -99,22 +99,22 @@ public:
|
||||
/**
|
||||
* \return the uplink bandwidth in RBs
|
||||
*/
|
||||
uint8_t GetUlBandwidth () const;
|
||||
uint16_t GetUlBandwidth () const;
|
||||
|
||||
/**
|
||||
* \param bw the uplink bandwidth in RBs
|
||||
*/
|
||||
void SetUlBandwidth (uint8_t bw);
|
||||
void SetUlBandwidth (uint16_t bw);
|
||||
|
||||
/**
|
||||
* \return the downlink bandwidth in RBs
|
||||
*/
|
||||
uint8_t GetDlBandwidth () const;
|
||||
uint16_t GetDlBandwidth () const;
|
||||
|
||||
/**
|
||||
* \param bw the downlink bandwidth in RBs
|
||||
*/
|
||||
void SetDlBandwidth (uint8_t bw);
|
||||
void SetDlBandwidth (uint16_t bw);
|
||||
|
||||
/**
|
||||
* \param cellTypeId for automatic FR configuration
|
||||
@@ -202,7 +202,7 @@ protected:
|
||||
* \brief DoGetMinContinuousUlBandwidth in number of RB
|
||||
* \return number of RB in min continuous UL Bandwidth
|
||||
*/
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth () = 0;
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth () = 0;
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
|
||||
@@ -217,7 +217,7 @@ protected:
|
||||
* \param ulBandwidth UL bandwidth in number of RB
|
||||
* \param dlBandwidth DL bandwidth in number of RB
|
||||
*/
|
||||
virtual void DoSetBandwidth (uint8_t ulBandwidth, uint8_t dlBandwidth);
|
||||
virtual void DoSetBandwidth (uint16_t ulBandwidth, uint16_t dlBandwidth);
|
||||
|
||||
/**
|
||||
* \brief Implementation of LteFfrRrcSapProvider::ReportUeMeas.
|
||||
|
||||
@@ -365,7 +365,7 @@ LteFfrDistributedAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrDistributedAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -72,7 +72,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -831,7 +831,7 @@ LteFfrEnhancedAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrEnhancedAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -80,7 +80,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
* \brief Get the minimum continuous Ul bandwidth
|
||||
* \returns the minimum continuous UL bandwidth
|
||||
*/
|
||||
virtual uint8_t GetMinContinuousUlBandwidth () = 0;
|
||||
virtual uint16_t GetMinContinuousUlBandwidth () = 0;
|
||||
}; // end of class LteFfrSapProvider
|
||||
|
||||
|
||||
@@ -168,7 +168,7 @@ public:
|
||||
virtual void ReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void ReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t GetTpc (uint16_t rnti);
|
||||
virtual uint8_t GetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t GetMinContinuousUlBandwidth ();
|
||||
private:
|
||||
MemberLteFfrSapProvider ();
|
||||
C* m_owner; ///< the owner class
|
||||
@@ -240,7 +240,7 @@ MemberLteFfrSapProvider<C>::GetTpc ( uint16_t rnti )
|
||||
}
|
||||
|
||||
template <class C>
|
||||
uint8_t
|
||||
uint16_t
|
||||
MemberLteFfrSapProvider<C>::GetMinContinuousUlBandwidth ()
|
||||
{
|
||||
return m_owner->DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
@@ -569,7 +569,7 @@ LteFfrSoftAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrSoftAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -78,7 +78,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -359,7 +359,7 @@ LteFrHardAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1; // 1 is mapped to 0 for Accumulated mode, and to -1 in Absolute mode TS36.213 Table 5.1.1.1-2
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFrHardAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -77,7 +77,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -170,7 +170,7 @@ LteFrNoOpAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1; // 1 is mapped to 0 for Accumulated mode, and to -1 in Absolute mode TS36.213 Table 5.1.1.1-2
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFrNoOpAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -83,7 +83,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -475,7 +475,7 @@ LteFrSoftAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFrSoftAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -78,7 +78,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -500,7 +500,7 @@ LteFrStrictAlgorithm::DoGetTpc (uint16_t rnti)
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFrStrictAlgorithm::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -78,7 +78,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -266,12 +266,12 @@ protected:
|
||||
* The UL bandwidth in number of PRBs.
|
||||
* Specified by the upper layer through CPHY SAP.
|
||||
*/
|
||||
uint8_t m_ulBandwidth;
|
||||
uint16_t m_ulBandwidth;
|
||||
/**
|
||||
* The DL bandwidth in number of PRBs.
|
||||
* Specified by the upper layer through CPHY SAP.
|
||||
*/
|
||||
uint8_t m_dlBandwidth;
|
||||
uint16_t m_dlBandwidth;
|
||||
/// The RB group size according to the bandwidth.
|
||||
uint8_t m_rbgSize;
|
||||
/**
|
||||
|
||||
@@ -74,7 +74,7 @@ RrcAsn1Header::GetMessageType ()
|
||||
}
|
||||
|
||||
int
|
||||
RrcAsn1Header::BandwidthToEnum (uint8_t bandwidth) const
|
||||
RrcAsn1Header::BandwidthToEnum (uint16_t bandwidth) const
|
||||
{
|
||||
int n;
|
||||
switch (bandwidth)
|
||||
@@ -86,15 +86,15 @@ RrcAsn1Header::BandwidthToEnum (uint8_t bandwidth) const
|
||||
case 75: n = 4; break;
|
||||
case 100: n = 5; break;
|
||||
default:
|
||||
NS_FATAL_ERROR ("Wrong bandwidth: " << (uint16_t) bandwidth);
|
||||
NS_FATAL_ERROR ("Wrong bandwidth: " << bandwidth);
|
||||
}
|
||||
return n;
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
RrcAsn1Header::EnumToBandwidth (int n) const
|
||||
{
|
||||
uint8_t bw;
|
||||
uint16_t bw;
|
||||
switch (n)
|
||||
{
|
||||
case 0: bw = 6; break;
|
||||
|
||||
@@ -72,14 +72,14 @@ protected:
|
||||
* \param bandwidth Bandwidth in RBs: 6, 15, 25, 50, 75, 100
|
||||
* \returns ENUMERATED value: 0, 1, 2, 3, 4, 5
|
||||
*/
|
||||
int BandwidthToEnum (uint8_t bandwidth) const;
|
||||
int BandwidthToEnum (uint16_t bandwidth) const;
|
||||
/**
|
||||
* Convert from ENUMERATED value to bandwidth (in RBs)
|
||||
*
|
||||
* \param n ENUMERATED value: 0, 1, 2, 3, 4, 5
|
||||
* \returns bandwidth Bandwidth in RBs: 6, 15, 25, 50, 75, 100
|
||||
*/
|
||||
uint8_t EnumToBandwidth (int n) const;
|
||||
uint16_t EnumToBandwidth (int n) const;
|
||||
|
||||
|
||||
// Serialization functions
|
||||
|
||||
@@ -88,7 +88,7 @@ public:
|
||||
struct FreqInfo
|
||||
{
|
||||
uint32_t ulCarrierFreq; ///< UL carrier frequency
|
||||
uint8_t ulBandwidth; ///< UL bandwidth
|
||||
uint16_t ulBandwidth; ///< UL bandwidth
|
||||
};
|
||||
|
||||
/// RlcConfig structure
|
||||
@@ -121,7 +121,7 @@ public:
|
||||
{
|
||||
SETUP, RESET
|
||||
} type; ///< action type
|
||||
uint8_t srsBandwidthConfig; ///< SRS bandwidth config
|
||||
uint16_t srsBandwidthConfig; ///< SRS bandwidth config
|
||||
uint8_t srsSubframeConfig; ///< SRS subframe config
|
||||
};
|
||||
|
||||
@@ -133,7 +133,7 @@ public:
|
||||
{
|
||||
SETUP, RESET
|
||||
} type; ///< action type
|
||||
uint8_t srsBandwidth; ///< SRS bandwidth
|
||||
uint16_t srsBandwidth; ///< SRS bandwidth
|
||||
uint16_t srsConfigIndex; ///< SRS config index
|
||||
};
|
||||
|
||||
@@ -325,7 +325,7 @@ public:
|
||||
struct MeasObjectEutra
|
||||
{
|
||||
uint32_t carrierFreq; ///< carrier frequency
|
||||
uint8_t allowedMeasBandwidth; ///< allowed measure bandwidth
|
||||
uint16_t allowedMeasBandwidth; ///< allowed measure bandwidth
|
||||
bool presenceAntennaPort1; ///< antenna port 1 present?
|
||||
uint8_t neighCellConfig; ///< neighbor cell config
|
||||
int8_t offsetFreq; ///< offset frequency
|
||||
@@ -543,8 +543,8 @@ public:
|
||||
/// CarrierBandwidthEutra structure
|
||||
struct CarrierBandwidthEutra
|
||||
{
|
||||
uint8_t dlBandwidth; ///< DL bandwidth
|
||||
uint8_t ulBandwidth; ///< UL bandwidth
|
||||
uint16_t dlBandwidth; ///< DL bandwidth
|
||||
uint16_t ulBandwidth; ///< UL bandwidth
|
||||
};
|
||||
|
||||
/// RachConfigDedicated structure
|
||||
@@ -586,8 +586,8 @@ public:
|
||||
/// MasterInformationBlock structure
|
||||
struct MasterInformationBlock
|
||||
{
|
||||
uint8_t dlBandwidth; ///< DL bandwidth
|
||||
uint8_t systemFrameNumber; ///< system frame number
|
||||
uint16_t dlBandwidth; ///< DL bandwidth
|
||||
uint16_t systemFrameNumber; ///< system frame number
|
||||
};
|
||||
|
||||
/// SystemInformationBlockType1 structure
|
||||
|
||||
@@ -173,9 +173,9 @@ LteSpectrumValueHelper::GetUplinkCarrierFrequency (uint32_t nUl)
|
||||
}
|
||||
|
||||
double
|
||||
LteSpectrumValueHelper::GetChannelBandwidth (uint8_t transmissionBandwidth)
|
||||
LteSpectrumValueHelper::GetChannelBandwidth (uint16_t transmissionBandwidth)
|
||||
{
|
||||
NS_LOG_FUNCTION ((uint16_t) transmissionBandwidth);
|
||||
NS_LOG_FUNCTION (transmissionBandwidth);
|
||||
switch (transmissionBandwidth)
|
||||
{
|
||||
case 6:
|
||||
@@ -191,7 +191,7 @@ LteSpectrumValueHelper::GetChannelBandwidth (uint8_t transmissionBandwidth)
|
||||
case 100:
|
||||
return 20.0e6;
|
||||
default:
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << (uint16_t) transmissionBandwidth);
|
||||
NS_FATAL_ERROR ("invalid bandwidth value " << transmissionBandwidth);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ struct LteSpectrumModelId
|
||||
*/
|
||||
LteSpectrumModelId (uint32_t f, uint8_t b);
|
||||
uint32_t earfcn; ///< EARFCN
|
||||
uint8_t bandwidth; ///< bandwidth
|
||||
uint16_t bandwidth; ///< bandwidth
|
||||
};
|
||||
|
||||
LteSpectrumModelId::LteSpectrumModelId (uint32_t f, uint8_t b)
|
||||
@@ -236,9 +236,9 @@ static std::map<LteSpectrumModelId, Ptr<SpectrumModel> > g_lteSpectrumModelMap;
|
||||
|
||||
|
||||
Ptr<SpectrumModel>
|
||||
LteSpectrumValueHelper::GetSpectrumModel (uint32_t earfcn, uint8_t txBandwidthConfiguration)
|
||||
LteSpectrumValueHelper::GetSpectrumModel (uint32_t earfcn, uint16_t txBandwidthConfiguration)
|
||||
{
|
||||
NS_LOG_FUNCTION (earfcn << (uint16_t) txBandwidthConfiguration);
|
||||
NS_LOG_FUNCTION (earfcn << txBandwidthConfiguration);
|
||||
Ptr<SpectrumModel> ret;
|
||||
LteSpectrumModelId key (earfcn, txBandwidthConfiguration);
|
||||
std::map<LteSpectrumModelId, Ptr<SpectrumModel> >::iterator it = g_lteSpectrumModelMap.find (key);
|
||||
@@ -271,9 +271,9 @@ LteSpectrumValueHelper::GetSpectrumModel (uint32_t earfcn, uint8_t txBandwidthCo
|
||||
}
|
||||
|
||||
Ptr<SpectrumValue>
|
||||
LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint8_t txBandwidthConfiguration, double powerTx, std::vector <int> activeRbs)
|
||||
LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint16_t txBandwidthConfiguration, double powerTx, std::vector <int> activeRbs)
|
||||
{
|
||||
NS_LOG_FUNCTION (earfcn << (uint16_t) txBandwidthConfiguration << powerTx << activeRbs);
|
||||
NS_LOG_FUNCTION (earfcn << txBandwidthConfiguration << powerTx << activeRbs);
|
||||
|
||||
Ptr<SpectrumModel> model = GetSpectrumModel (earfcn, txBandwidthConfiguration);
|
||||
Ptr<SpectrumValue> txPsd = Create <SpectrumValue> (model);
|
||||
@@ -295,9 +295,9 @@ LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint8_t t
|
||||
}
|
||||
|
||||
Ptr<SpectrumValue>
|
||||
LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint8_t txBandwidthConfiguration, double powerTx, std::map<int, double> powerTxMap, std::vector <int> activeRbs)
|
||||
LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint16_t txBandwidthConfiguration, double powerTx, std::map<int, double> powerTxMap, std::vector <int> activeRbs)
|
||||
{
|
||||
NS_LOG_FUNCTION (earfcn << (uint16_t) txBandwidthConfiguration << activeRbs);
|
||||
NS_LOG_FUNCTION (earfcn << txBandwidthConfiguration << activeRbs);
|
||||
|
||||
Ptr<SpectrumModel> model = GetSpectrumModel (earfcn, txBandwidthConfiguration);
|
||||
Ptr<SpectrumValue> txPsd = Create <SpectrumValue> (model);
|
||||
@@ -333,9 +333,9 @@ LteSpectrumValueHelper::CreateTxPowerSpectralDensity (uint32_t earfcn, uint8_t t
|
||||
}
|
||||
|
||||
Ptr<SpectrumValue>
|
||||
LteSpectrumValueHelper::CreateUlTxPowerSpectralDensity (uint16_t earfcn, uint8_t txBandwidthConfiguration, double powerTx, std::vector <int> activeRbs)
|
||||
LteSpectrumValueHelper::CreateUlTxPowerSpectralDensity (uint16_t earfcn, uint16_t txBandwidthConfiguration, double powerTx, std::vector <int> activeRbs)
|
||||
{
|
||||
NS_LOG_FUNCTION (earfcn << (uint16_t) txBandwidthConfiguration << powerTx << activeRbs);
|
||||
NS_LOG_FUNCTION (earfcn << txBandwidthConfiguration << powerTx << activeRbs);
|
||||
|
||||
Ptr<SpectrumModel> model = GetSpectrumModel (earfcn, txBandwidthConfiguration);
|
||||
Ptr<SpectrumValue> txPsd = Create <SpectrumValue> (model);
|
||||
@@ -357,9 +357,9 @@ LteSpectrumValueHelper::CreateUlTxPowerSpectralDensity (uint16_t earfcn, uint8_t
|
||||
}
|
||||
|
||||
Ptr<SpectrumValue>
|
||||
LteSpectrumValueHelper::CreateNoisePowerSpectralDensity (uint32_t earfcn, uint8_t txBandwidthConfiguration, double noiseFigure)
|
||||
LteSpectrumValueHelper::CreateNoisePowerSpectralDensity (uint32_t earfcn, uint16_t txBandwidthConfiguration, double noiseFigure)
|
||||
{
|
||||
NS_LOG_FUNCTION (earfcn << (uint16_t) txBandwidthConfiguration << noiseFigure);
|
||||
NS_LOG_FUNCTION (earfcn << txBandwidthConfiguration << noiseFigure);
|
||||
Ptr<SpectrumModel> model = GetSpectrumModel (earfcn, txBandwidthConfiguration);
|
||||
return CreateNoisePowerSpectralDensity (noiseFigure, model);
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ public:
|
||||
*
|
||||
* \return the nominal channel bandwidth in Hz as per 3GPP TS 36.101
|
||||
*/
|
||||
static double GetChannelBandwidth (uint8_t txBandwidthConf);
|
||||
static double GetChannelBandwidth (uint16_t txBandwidthConf);
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -109,7 +109,7 @@ public:
|
||||
* configuration. If such SpectrumModel does not exist, it is
|
||||
* created.
|
||||
*/
|
||||
static Ptr<SpectrumModel> GetSpectrumModel (uint32_t earfcn, uint8_t bandwidth);
|
||||
static Ptr<SpectrumModel> GetSpectrumModel (uint32_t earfcn, uint16_t bandwidth);
|
||||
|
||||
|
||||
/**
|
||||
@@ -126,7 +126,7 @@ public:
|
||||
* \return a pointer to a newly allocated SpectrumValue representing the TX Power Spectral Density in W/Hz for each Resource Block
|
||||
*/
|
||||
static Ptr<SpectrumValue> CreateTxPowerSpectralDensity (uint32_t earfcn,
|
||||
uint8_t bandwidth,
|
||||
uint16_t bandwidth,
|
||||
double powerTx,
|
||||
std::vector <int> activeRbs);
|
||||
|
||||
@@ -147,7 +147,7 @@ public:
|
||||
* \return a pointer to a newly allocated SpectrumValue representing the TX Power Spectral Density in W/Hz for each Resource Block
|
||||
*/
|
||||
static Ptr<SpectrumValue> CreateTxPowerSpectralDensity (uint32_t earfcn,
|
||||
uint8_t bandwidth,
|
||||
uint16_t bandwidth,
|
||||
double powerTx,
|
||||
std::map<int, double> powerTxMap,
|
||||
std::vector <int> activeRbs);
|
||||
@@ -167,7 +167,7 @@ public:
|
||||
* \return a pointer to a newly allocated SpectrumValue representing the TX Power Spectral Density in W/Hz for each Resource Block
|
||||
*/
|
||||
static Ptr<SpectrumValue> CreateUlTxPowerSpectralDensity (uint16_t earfcn,
|
||||
uint8_t bandwidth,
|
||||
uint16_t bandwidth,
|
||||
double powerTx,
|
||||
std::vector <int> activeRbs);
|
||||
|
||||
@@ -182,7 +182,7 @@ public:
|
||||
*
|
||||
* \return a pointer to a newly allocated SpectrumValue representing the noise Power Spectral Density in W/Hz for each Resource Block
|
||||
*/
|
||||
static Ptr<SpectrumValue> CreateNoisePowerSpectralDensity (uint32_t earfcn, uint8_t bandwidth, double noiseFigure);
|
||||
static Ptr<SpectrumValue> CreateNoisePowerSpectralDensity (uint32_t earfcn, uint16_t bandwidth, double noiseFigure);
|
||||
|
||||
/**
|
||||
* create a SpectrumValue that models the power spectral density of AWGN
|
||||
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
/**
|
||||
* \param dlBandwidth the DL bandwidth in number of PRBs
|
||||
*/
|
||||
virtual void SetDlBandwidth (uint8_t dlBandwidth) = 0;
|
||||
virtual void SetDlBandwidth (uint16_t dlBandwidth) = 0;
|
||||
|
||||
/**
|
||||
* \brief Configure uplink (normally done after reception of SIB2)
|
||||
@@ -114,7 +114,7 @@ public:
|
||||
* \param ulEarfcn the uplink carrier frequency (EARFCN)
|
||||
* \param ulBandwidth the UL bandwidth in number of PRBs
|
||||
*/
|
||||
virtual void ConfigureUplink (uint32_t ulEarfcn, uint8_t ulBandwidth) = 0;
|
||||
virtual void ConfigureUplink (uint32_t ulEarfcn, uint16_t ulBandwidth) = 0;
|
||||
|
||||
/**
|
||||
* \brief Configure referenceSignalPower
|
||||
@@ -316,8 +316,8 @@ public:
|
||||
virtual void StartCellSearch (uint32_t dlEarfcn);
|
||||
virtual void SynchronizeWithEnb (uint16_t cellId);
|
||||
virtual void SynchronizeWithEnb (uint16_t cellId, uint32_t dlEarfcn);
|
||||
virtual void SetDlBandwidth (uint8_t dlBandwidth);
|
||||
virtual void ConfigureUplink (uint32_t ulEarfcn, uint8_t ulBandwidth);
|
||||
virtual void SetDlBandwidth (uint16_t dlBandwidth);
|
||||
virtual void ConfigureUplink (uint32_t ulEarfcn, uint16_t ulBandwidth);
|
||||
virtual void ConfigureReferenceSignalPower (int8_t referenceSignalPower);
|
||||
virtual void SetRnti (uint16_t rnti);
|
||||
virtual void SetTransmissionMode (uint8_t txMode);
|
||||
@@ -375,14 +375,14 @@ MemberLteUeCphySapProvider<C>::SynchronizeWithEnb (uint16_t cellId, uint32_t dlE
|
||||
|
||||
template <class C>
|
||||
void
|
||||
MemberLteUeCphySapProvider<C>::SetDlBandwidth (uint8_t dlBandwidth)
|
||||
MemberLteUeCphySapProvider<C>::SetDlBandwidth (uint16_t dlBandwidth)
|
||||
{
|
||||
m_owner->DoSetDlBandwidth (dlBandwidth);
|
||||
}
|
||||
|
||||
template <class C>
|
||||
void
|
||||
MemberLteUeCphySapProvider<C>::ConfigureUplink (uint32_t ulEarfcn, uint8_t ulBandwidth)
|
||||
MemberLteUeCphySapProvider<C>::ConfigureUplink (uint32_t ulEarfcn, uint16_t ulBandwidth)
|
||||
{
|
||||
m_owner->DoConfigureUplink (ulEarfcn, ulBandwidth);
|
||||
}
|
||||
|
||||
@@ -1434,7 +1434,7 @@ LteUePhy::DoSynchronizeWithEnb (uint16_t cellId)
|
||||
}
|
||||
|
||||
void
|
||||
LteUePhy::DoSetDlBandwidth (uint8_t dlBandwidth)
|
||||
LteUePhy::DoSetDlBandwidth (uint16_t dlBandwidth)
|
||||
{
|
||||
NS_LOG_FUNCTION (this << (uint32_t) dlBandwidth);
|
||||
if (m_dlBandwidth != dlBandwidth or !m_dlConfigured)
|
||||
@@ -1465,7 +1465,7 @@ LteUePhy::DoSetDlBandwidth (uint8_t dlBandwidth)
|
||||
|
||||
|
||||
void
|
||||
LteUePhy::DoConfigureUplink (uint32_t ulEarfcn, uint8_t ulBandwidth)
|
||||
LteUePhy::DoConfigureUplink (uint32_t ulEarfcn, uint16_t ulBandwidth)
|
||||
{
|
||||
m_ulEarfcn = ulEarfcn;
|
||||
m_ulBandwidth = ulBandwidth;
|
||||
|
||||
@@ -493,14 +493,14 @@ private:
|
||||
*
|
||||
* \param dlBandwidth the DL bandwidth
|
||||
*/
|
||||
void DoSetDlBandwidth (uint8_t dlBandwidth);
|
||||
void DoSetDlBandwidth (uint16_t dlBandwidth);
|
||||
/**
|
||||
* \brief Configure UL uplink function
|
||||
*
|
||||
* \param ulEarfcn UL EARFCN
|
||||
* \param ulBandwidth the UL bandwidth
|
||||
*/
|
||||
void DoConfigureUplink (uint32_t ulEarfcn, uint8_t ulBandwidth);
|
||||
void DoConfigureUplink (uint32_t ulEarfcn, uint16_t ulBandwidth);
|
||||
/**
|
||||
* \brief Configure reference signal power function
|
||||
*
|
||||
|
||||
@@ -1355,9 +1355,9 @@ LteUeRrc::ApplyRadioResourceConfigDedicatedSecondaryCarrier (LteRrcSap::NonCriti
|
||||
|
||||
|
||||
uint16_t physCellId = scell.cellIdentification.physCellId;
|
||||
uint8_t ulBand = scell.radioResourceConfigCommonSCell.ulConfiguration.ulFreqInfo.ulBandwidth;
|
||||
uint16_t ulBand = scell.radioResourceConfigCommonSCell.ulConfiguration.ulFreqInfo.ulBandwidth;
|
||||
uint32_t ulEarfcn = scell.radioResourceConfigCommonSCell.ulConfiguration.ulFreqInfo.ulCarrierFreq;
|
||||
uint8_t dlBand = scell.radioResourceConfigCommonSCell.nonUlConfiguration.dlBandwidth;
|
||||
uint16_t dlBand = scell.radioResourceConfigCommonSCell.nonUlConfiguration.dlBandwidth;
|
||||
uint32_t dlEarfcn = scell.cellIdentification.dlCarrierFreq;
|
||||
uint8_t txMode = scell.radioResourceConfigDedicateSCell.physicalConfigDedicatedSCell.antennaInfo.transmissionMode;
|
||||
uint8_t srsIndex = scell.radioResourceConfigDedicateSCell.physicalConfigDedicatedSCell.soundingRsUlConfigDedicated.srsConfigIndex;
|
||||
|
||||
@@ -822,8 +822,8 @@ private:
|
||||
|
||||
LteRrcSap::PdschConfigDedicated m_pdschConfigDedicated; ///< the PDSCH condig dedicated
|
||||
|
||||
uint8_t m_dlBandwidth; /**< Downlink bandwidth in RBs. */
|
||||
uint8_t m_ulBandwidth; /**< Uplink bandwidth in RBs. */
|
||||
uint16_t m_dlBandwidth; /**< Downlink bandwidth in RBs. */
|
||||
uint16_t m_ulBandwidth; /**< Uplink bandwidth in RBs. */
|
||||
|
||||
uint32_t m_dlEarfcn; /**< Downlink carrier frequency. */
|
||||
uint32_t m_ulEarfcn; /**< Uplink carrier frequency. */
|
||||
|
||||
@@ -270,7 +270,7 @@ LteFfrSimple::DoGetTpc (uint16_t rnti)
|
||||
return 1; // 1 is mapped to 0 for Accumulated mode, and to -1 in Absolute mode TS36.213 Table 5.1.1.1-2
|
||||
}
|
||||
|
||||
uint8_t
|
||||
uint16_t
|
||||
LteFfrSimple::DoGetMinContinuousUlBandwidth ()
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
|
||||
@@ -113,7 +113,7 @@ protected:
|
||||
virtual void DoReportUlCqiInfo (const struct FfMacSchedSapProvider::SchedUlCqiInfoReqParameters& params);
|
||||
virtual void DoReportUlCqiInfo ( std::map <uint16_t, std::vector <double> > ulCqiMap );
|
||||
virtual uint8_t DoGetTpc (uint16_t rnti);
|
||||
virtual uint8_t DoGetMinContinuousUlBandwidth ();
|
||||
virtual uint16_t DoGetMinContinuousUlBandwidth ();
|
||||
|
||||
// FFR SAP RRC PROVIDER IMPLEMENTATION
|
||||
virtual void DoReportUeMeas (uint16_t rnti, LteRrcSap::MeasResults measResults);
|
||||
|
||||
@@ -94,8 +94,8 @@ private:
|
||||
|
||||
uint16_t m_nUser; ///< the number of users
|
||||
uint16_t m_dist; ///< the distance
|
||||
uint32_t m_dlBandwidth; ///< DL bandwidth
|
||||
uint32_t m_ulBandwidth; ///< UL bandwidth
|
||||
uint16_t m_dlBandwidth; ///< DL bandwidth
|
||||
uint16_t m_ulBandwidth; ///< UL bandwidth
|
||||
uint32_t m_numberOfComponentCarriers; ///< number of component carriers
|
||||
|
||||
std::map <uint8_t, uint32_t> m_ccDownlinkTraffic; ///< CC DL traffic
|
||||
|
||||
@@ -356,7 +356,7 @@ static LteDownlinkPowerControlTestSuite lteDownlinkPowerControlTestSuite;
|
||||
*/
|
||||
|
||||
LteDownlinkPowerControlSpectrumValueTestCase::LteDownlinkPowerControlSpectrumValueTestCase (std::string name,
|
||||
uint16_t earfcn, uint8_t bw, double powerTx,
|
||||
uint16_t earfcn, uint16_t bw, double powerTx,
|
||||
std::map<int, double> powerTxMap, std::vector <int> activeRbs,
|
||||
SpectrumValue& expected)
|
||||
: TestCase ("Downlink Power Control: " + name),
|
||||
|
||||
@@ -75,7 +75,7 @@ public:
|
||||
* \param expected the expected Tx Power Spectral Density
|
||||
*/
|
||||
LteDownlinkPowerControlSpectrumValueTestCase (std::string name,
|
||||
uint16_t earfcn, uint8_t bw, double powerTx,
|
||||
uint16_t earfcn, uint16_t bw, double powerTx,
|
||||
std::map<int, double> powerTxMap, std::vector <int> activeRbs,
|
||||
SpectrumValue& expected);
|
||||
virtual ~LteDownlinkPowerControlSpectrumValueTestCase ();
|
||||
|
||||
@@ -175,7 +175,7 @@ UlDataRxStartNofitication (LteFrTestCase *testcase,
|
||||
}
|
||||
|
||||
LteFrTestCase::LteFrTestCase (std::string name,
|
||||
uint32_t userNum,uint8_t dlBandwidth,uint8_t ulBandwidth,
|
||||
uint32_t userNum,uint16_t dlBandwidth,uint16_t ulBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb)
|
||||
: TestCase ("Test: " + name),
|
||||
m_userNum (userNum),
|
||||
@@ -242,9 +242,9 @@ LteFrTestCase::DoRun (void)
|
||||
|
||||
LteHardFrTestCase::LteHardFrTestCase (std::string name, uint32_t userNum,
|
||||
std::string schedulerType,
|
||||
uint8_t dlBandwidth, uint8_t ulBandwidth,
|
||||
uint8_t dlSubBandOffset, uint8_t dlSubBandwidth,
|
||||
uint8_t ulSubBandOffset, uint8_t ulSubBandwidth,
|
||||
uint16_t dlBandwidth, uint16_t ulBandwidth,
|
||||
uint8_t dlSubBandOffset, uint16_t dlSubBandwidth,
|
||||
uint8_t ulSubBandOffset, uint16_t ulSubBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb)
|
||||
: LteFrTestCase (name, userNum, dlBandwidth, ulBandwidth, availableDlRb, availableUlRb),
|
||||
m_schedulerType (schedulerType),
|
||||
@@ -357,9 +357,9 @@ LteHardFrTestCase::DoRun (void)
|
||||
|
||||
LteStrictFrTestCase::LteStrictFrTestCase (std::string name, uint32_t userNum,
|
||||
std::string schedulerType,
|
||||
uint8_t dlBandwidth, uint8_t ulBandwidth,
|
||||
uint8_t dlCommonSubBandwidth, uint8_t dlEdgeSubBandOffset, uint8_t dlEdgeSubBandwidth,
|
||||
uint8_t ulCommonSubBandwidth, uint8_t ulEdgeSubBandOffset, uint8_t ulEdgeSubBandwidth,
|
||||
uint16_t dlBandwidth, uint16_t ulBandwidth,
|
||||
uint16_t dlCommonSubBandwidth, uint8_t dlEdgeSubBandOffset, uint16_t dlEdgeSubBandwidth,
|
||||
uint16_t ulCommonSubBandwidth, uint8_t ulEdgeSubBandOffset, uint16_t ulEdgeSubBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb)
|
||||
: LteFrTestCase (name, userNum, dlBandwidth, ulBandwidth, availableDlRb, availableUlRb),
|
||||
m_schedulerType (schedulerType),
|
||||
@@ -1508,7 +1508,7 @@ LteDistributedFfrAreaTestCase::DoRun (void)
|
||||
Config::SetDefault ("ns3::LteEnbRrc::RsrqFilterCoefficient",
|
||||
UintegerValue (0));
|
||||
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
|
||||
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
|
||||
Ptr<PointToPointEpcHelper> epcHelper = CreateObject<PointToPointEpcHelper> ();
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
* \param availableUlRb the available UL per RB
|
||||
*/
|
||||
LteFrTestCase (std::string name,
|
||||
uint32_t userNum,uint8_t dlBandwidth,uint8_t ulBandwidth,
|
||||
uint32_t userNum,uint16_t dlBandwidth,uint16_t ulBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb);
|
||||
virtual ~LteFrTestCase ();
|
||||
|
||||
@@ -83,8 +83,8 @@ protected:
|
||||
virtual void DoRun (void);
|
||||
|
||||
uint32_t m_userNum; ///< the number of UE nodes
|
||||
uint8_t m_dlBandwidth; ///< the DL bandwidth
|
||||
uint8_t m_ulBandwidth; ///< the UL bandwidth
|
||||
uint16_t m_dlBandwidth; ///< the DL bandwidth
|
||||
uint16_t m_ulBandwidth; ///< the UL bandwidth
|
||||
|
||||
std::vector<bool> m_availableDlRb; ///< the available DL for each RB
|
||||
bool m_usedMutedDlRbg; ///< used muted DL RBG?
|
||||
@@ -121,9 +121,9 @@ public:
|
||||
*/
|
||||
LteHardFrTestCase (std::string name, uint32_t userNum,
|
||||
std::string schedulerType,
|
||||
uint8_t dlBandwidth, uint8_t ulBandwidth,
|
||||
uint8_t dlSubBandOffset, uint8_t dlSubBandwidth,
|
||||
uint8_t ulSubBandOffset, uint8_t ulSubBandwidth,
|
||||
uint16_t dlBandwidth, uint16_t ulBandwidth,
|
||||
uint8_t dlSubBandOffset, uint16_t dlSubBandwidth,
|
||||
uint8_t ulSubBandOffset, uint16_t ulSubBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb);
|
||||
virtual ~LteHardFrTestCase ();
|
||||
|
||||
@@ -168,9 +168,9 @@ public:
|
||||
*/
|
||||
LteStrictFrTestCase (std::string name, uint32_t userNum,
|
||||
std::string schedulerType,
|
||||
uint8_t dlBandwidth, uint8_t ulBandwidth,
|
||||
uint8_t dlCommonSubBandwidth, uint8_t dlEdgeSubBandOffset, uint8_t dlEdgeSubBandwidth,
|
||||
uint8_t ulCommonSubBandwidth, uint8_t ulEdgeSubBandOffset, uint8_t ulEdgeSubBandwidth,
|
||||
uint16_t dlBandwidth, uint16_t ulBandwidth,
|
||||
uint16_t dlCommonSubBandwidth, uint8_t dlEdgeSubBandOffset, uint16_t dlEdgeSubBandwidth,
|
||||
uint16_t ulCommonSubBandwidth, uint8_t ulEdgeSubBandOffset, uint16_t ulEdgeSubBandwidth,
|
||||
std::vector<bool> availableDlRb, std::vector<bool> availableUlRb);
|
||||
virtual ~LteStrictFrTestCase ();
|
||||
|
||||
@@ -179,13 +179,13 @@ private:
|
||||
|
||||
std::string m_schedulerType; ///< scheduler type
|
||||
|
||||
uint8_t m_dlCommonSubBandwidth; ///< DL common subbandwidth
|
||||
uint16_t m_dlCommonSubBandwidth; ///< DL common subbandwidth
|
||||
uint8_t m_dlEdgeSubBandOffset; ///< DL edge subband offset
|
||||
uint8_t m_dlEdgeSubBandwidth; ///< DL edge subbandwidth
|
||||
uint16_t m_dlEdgeSubBandwidth; ///< DL edge subbandwidth
|
||||
|
||||
uint8_t m_ulCommonSubBandwidth; ///< UL common subbandwidth
|
||||
uint16_t m_ulCommonSubBandwidth; ///< UL common subbandwidth
|
||||
uint8_t m_ulEdgeSubBandOffset; ///< UL edge subband offset
|
||||
uint8_t m_ulEdgeSubBandwidth; ///< UL edge subbandwidth
|
||||
uint16_t m_ulEdgeSubBandwidth; ///< UL edge subbandwidth
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -263,8 +263,8 @@ protected:
|
||||
|
||||
std::string m_schedulerType; ///< the scheduler type
|
||||
|
||||
uint8_t m_dlBandwidth; ///< the DL bandwidth
|
||||
uint8_t m_ulBandwidth; ///< the UL bandwidth
|
||||
uint16_t m_dlBandwidth; ///< the DL bandwidth
|
||||
uint16_t m_ulBandwidth; ///< the UL bandwidth
|
||||
|
||||
Time m_teleportTime; ///< the telport time
|
||||
Ptr<MobilityModel> m_ueMobility; ///< the UE mobility model
|
||||
|
||||
@@ -207,7 +207,7 @@ LteUplinkOpenLoopPowerControlTestCase::DoRun (void)
|
||||
|
||||
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
|
||||
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double d1 = 0;
|
||||
|
||||
// Create Nodes: eNodeB and UE
|
||||
@@ -321,7 +321,7 @@ LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun (void)
|
||||
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
|
||||
lteHelper->SetFfrAlgorithmType ("ns3::LteFfrSimple");
|
||||
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double d1 = 100;
|
||||
|
||||
// Create Nodes: eNodeB and UE
|
||||
@@ -434,7 +434,7 @@ LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun (void)
|
||||
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
|
||||
lteHelper->SetFfrAlgorithmType ("ns3::LteFfrSimple");
|
||||
|
||||
uint8_t bandwidth = 25;
|
||||
uint16_t bandwidth = 25;
|
||||
double d1 = 10;
|
||||
|
||||
// Create Nodes: eNodeB and UE
|
||||
|
||||
Reference in New Issue
Block a user