#include <phy-ue.h>
|
void | PrintPerTaskDone (PrintType print_type, size_t frame_id, size_t symbol_id, size_t ant) |
|
void | PrintPerSymbolDone (PrintType print_type, size_t frame_id, size_t symbol_id) |
|
void | PrintPerFrameDone (PrintType print_type, size_t frame_id) |
|
void | ReceiveDownlinkSymbol (Packet *rx_packet, size_t tag) |
|
void | ScheduleDefferedDownlinkSymbols (size_t frame_id) |
|
void | ClearCsi (size_t frame_id) |
|
void | InitializeDownlinkBuffers () |
|
void | InitializeUplinkBuffers () |
|
void | ScheduleTask (EventData do_task, moodycamel::ConcurrentQueue< EventData > *in_queue, moodycamel::ProducerToken const &ptok) |
|
void | ScheduleWork (EventData do_task) |
|
void | InitializeVarsFromCfg () |
|
void | FrameInit (size_t frame) |
|
bool | FrameComplete (size_t frame, FrameTasksFlags complete) |
|
void | FreeUplinkBuffers () |
|
void | FreeDownlinkBuffers () |
|
◆ FrameTasksFlags
Enumerator |
---|
kNoWorkComplete | |
kDownlinkComplete | |
kUplinkTxComplete | |
kMacTxComplete | |
kFrameComplete | |
◆ PhyUe()
PhyUe::PhyUe |
( |
Config * |
config | ) |
|
|
explicit |
◆ ~PhyUe()
◆ ClearCsi()
void PhyUe::ClearCsi |
( |
size_t |
frame_id | ) |
|
|
private |
◆ FrameComplete()
◆ FrameInit()
void PhyUe::FrameInit |
( |
size_t |
frame | ) |
|
|
private |
◆ FreeDownlinkBuffers()
void PhyUe::FreeDownlinkBuffers |
( |
| ) |
|
|
private |
◆ FreeUplinkBuffers()
void PhyUe::FreeUplinkBuffers |
( |
| ) |
|
|
private |
◆ GetDemulData()
void PhyUe::GetDemulData |
( |
long long ** |
ptr, |
|
|
int * |
size |
|
) |
| |
◆ GetEqualData()
void PhyUe::GetEqualData |
( |
float ** |
ptr, |
|
|
int * |
size, |
|
|
int |
ue_id |
|
) |
| |
◆ InitializeDownlinkBuffers()
void PhyUe::InitializeDownlinkBuffers |
( |
| ) |
|
|
private |
◆ InitializeUplinkBuffers()
void PhyUe::InitializeUplinkBuffers |
( |
| ) |
|
|
private |
◆ InitializeVarsFromCfg()
void PhyUe::InitializeVarsFromCfg |
( |
| ) |
|
|
private |
◆ PrintPerFrameDone()
void PhyUe::PrintPerFrameDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id |
|
) |
| |
|
private |
◆ PrintPerSymbolDone()
void PhyUe::PrintPerSymbolDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id, |
|
|
size_t |
symbol_id |
|
) |
| |
|
private |
◆ PrintPerTaskDone()
void PhyUe::PrintPerTaskDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id, |
|
|
size_t |
symbol_id, |
|
|
size_t |
ant |
|
) |
| |
|
private |
◆ ReceiveDownlinkSymbol()
void PhyUe::ReceiveDownlinkSymbol |
( |
Packet * |
rx_packet, |
|
|
size_t |
tag |
|
) |
| |
|
private |
◆ ScheduleDefferedDownlinkSymbols()
void PhyUe::ScheduleDefferedDownlinkSymbols |
( |
size_t |
frame_id | ) |
|
|
private |
◆ ScheduleTask()
◆ ScheduleWork()
void PhyUe::ScheduleWork |
( |
EventData |
do_task | ) |
|
|
private |
◆ Start()
◆ Stop()
◆ complete_queue_
◆ config_
◆ csi_buffer_
Estimated CSI data First dimension: OFDM_CA_NUM * kFrameWnd Second dimension: BS_ANT_NUM * UE_NUM
◆ current_frame_user_num_
size_t PhyUe::current_frame_user_num_ = 0 |
|
private |
◆ decode_counters_
◆ decoded_buffer_
◆ demod_buffer_
◆ demul_counters_
◆ dl_data_symbol_perframe_
size_t PhyUe::dl_data_symbol_perframe_ |
|
private |
◆ dl_pilot_symbol_perframe_
size_t PhyUe::dl_pilot_symbol_perframe_ |
|
private |
◆ dl_symbol_perframe_
size_t PhyUe::dl_symbol_perframe_ |
|
private |
◆ encode_counter_
◆ equal_buffer_
Data after equalization First dimension: data_symbol_num_perframe * kFrameWnd Second dimension: OFDM_CA_NUM * UE_NUM
◆ expected_frame_id_from_mac_
size_t PhyUe::expected_frame_id_from_mac_ = 0 |
|
private |
◆ fft_buffer_
Data for FFT, after time sync (prefix removed) First dimension: FFT_buffer_block_num = BS_ANT_NUM * symbol_num_perframe * kFrameWnd Second dimension: OFDM_CA_NUM
◆ fft_dldata_counters_
◆ fft_dlpilot_counters_
◆ frame_tasks_
std::array<std::uint8_t, kFrameWnd> PhyUe::frame_tasks_ |
|
private |
◆ ifft_buffer_
Data for IFFT, (prefix added) First dimension: IFFT_buffer_block_num = BS_ANT_NUM * dl_data_symbol_perframe * kFrameWnd Second dimension: OFDM_CA_NUM
◆ mac_rx_ptoks_ptr_
◆ mac_std_thread_
std::thread PhyUe::mac_std_thread_ |
|
private |
◆ mac_thread_
◆ mac_tx_ptoks_ptr_
◆ max_equaled_frame_
size_t PhyUe::max_equaled_frame_ = 0 |
|
private |
◆ modul_buffer_
Data after modulation First dimension: data_symbol_num_perframe * kFrameWnd Second dimension: OFDM_CA_NUM * UE_NUM
◆ modulation_counters_
◆ next_frame_processed_
std::array<size_t, kMaxUEs> PhyUe::next_frame_processed_ = {} |
|
private |
◆ non_null_sc_ind_
std::vector<size_t> PhyUe::non_null_sc_ind_ |
|
private |
◆ phy_stats_
std::unique_ptr<PhyStats> PhyUe::phy_stats_ |
|
private |
◆ recorders_
◆ ru_
◆ rx_buffer_
Table<char> PhyUe::rx_buffer_ |
|
private |
Received data
Number of RX buffers (size = packet_length) and buffer status entries: RX_THREAD_NUM * RX_BUFFER_FRAME_NUM * BS_ANT_NUM * symbol_num_perframe
◆ rx_buffer_size_
size_t PhyUe::rx_buffer_size_ |
|
private |
◆ rx_counters_
◆ rx_downlink_deferral_
std::vector<std::queue<EventData> > PhyUe::rx_downlink_deferral_ |
|
private |
◆ rx_ptoks_ptr_
◆ rx_thread_num_
size_t PhyUe::rx_thread_num_ |
|
private |
◆ stats_
std::unique_ptr<Stats> PhyUe::stats_ |
|
private |
◆ to_mac_queue_
◆ tomac_counters_
◆ tx_buffer_
Transmit data
Number of transmit buffers (size = packet_length) and buffer status entries: TX_THREAD_NUM * TX_BUFFER_FRAME_NUM * UE_NUM * DL_SYM_PER_FRAME
◆ tx_buffer_size_
size_t PhyUe::tx_buffer_size_ |
|
private |
◆ tx_counters_
◆ tx_ptoks_ptr_
◆ tx_queue_
◆ ue_pilot_vec_
std::vector<std::vector<std::complex<float> > > PhyUe::ue_pilot_vec_ |
|
private |
◆ ue_tracker_
std::vector<UeTxVars> PhyUe::ue_tracker_ |
|
private |
◆ ul_bits_buffer_
Table<int8_t> PhyUe::ul_bits_buffer_ |
|
private |
Data before modulation First dimension: data_symbol_num_perframe * kFrameWnd Second dimension: OFDM_CA_NUM * UE_NUM
◆ ul_bits_buffer_size_
size_t PhyUe::ul_bits_buffer_size_ |
|
private |
◆ ul_bits_buffer_status_
Table<int8_t> PhyUe::ul_bits_buffer_status_ |
|
private |
◆ ul_data_symbol_perframe_
size_t PhyUe::ul_data_symbol_perframe_ |
|
private |
◆ ul_symbol_perframe_
size_t PhyUe::ul_symbol_perframe_ |
|
private |
◆ ul_syms_buffer_
Table<int8_t> PhyUe::ul_syms_buffer_ |
|
private |
◆ ul_syms_buffer_size_
size_t PhyUe::ul_syms_buffer_size_ |
|
private |
◆ work_producer_token_
◆ work_queue_
◆ workers_
std::vector<std::unique_ptr<UeWorker> > PhyUe::workers_ |
|
private |
The documentation for this class was generated from the following files: