OpenAirInterface OAI 代码分析

OpenAirInterface OAI 代码分析


OAI前段时间为了在eNB侧添加NGFI功能,对eNB侧代码做了较大的修改。同时,UE侧的数据处理也改成了多线程处理。我简单整理了eNB侧和UE侧各个主要线程的调用关系以及各个线程之间的信号量同步。


eNB:包含单线程模式、多线程模式


单线程模式 

eNB_thread_single,收发函数在同一个线程中


多线程模式

2个 eNB_thread_rxtx,分别负责奇、偶子帧数据的收发,收发函数在同一个线程中;


包含NGFI的功能,Turbo编码和译码有单独的线程,以后Turbo编译码会改成多线程处理。


多线程模式下线程梳理关系如下图所示。(图片若不清晰,可以下载后放大观看)



UE:多线程处理,收发函数在同一个线程中

2个UE_thread_rxn_txnp4线程,分别负责奇、偶子帧的数据处理,在第n子帧接收数据后,再生成n+4子帧要发送的数据;


当前子帧要处理下一个子帧的0号OFDM符号用于信道估计。


UE侧线程梳理关系如下图所示。(图片若不清晰,可以下载后放大观看)




尾注:个人能力有限,如果发现博客中有不对的地方,欢迎指正。


你可能感兴趣的:(代码分析,软件无线电,OAI,SDR)