文档结构  
翻译进度:已翻译     翻译赏金:0 元 (?)    ¥ 我要打赏

srsLTE

srsLTE 是一款 SRS 公司开发的 SDR UE 和 eNodeB 的开源免费的 LTE 类库。该类库是一个有着最低限度的模块间依赖或外部依赖的高度模块化的类库。它完全用C语言编写,如果系统支持的话,可以用VOLK(加速度库)将其分布式部署在GNURadio上。

srsLTE 使用的是 srsUE,一个 LTE UE 的全栈 (从 PHY 到 IP)实现。srsUE 可在这里获取 https://github.com/srslte/srsue

新闻:我们刚刚发布了 srsUE 1.2 版本,其中包含了重要的BUG修复和对同步程序的改善。查看 变更日志

第 1 段(可获 2 积分)

srsLTE 采用的是 AGPLv3 软件许可证。

当前特性:

  • 兼容 LTE 第8发布版本
  • 频分双工 (FDD)配置
  • 带宽测试:1.4, 3, 5, 10, 15 和 20 MHz
  • 传输模式 1 (单天线)和 2(发射分集
  • UE端:小区搜索及同步过程
  • UE 和 eNodeB 端支持所有的 DL 渠道/信号:PSS, SSS, PBCH, PCFICH, PHICH, PDCCH, PDSCH
  • UE 端支持所有的 UL 渠道/信号:PRACH, PUSCH, PUCCH, SRS
  • 基础频率 ZF 和 MMSE 均衡器
  • 可用于 Intel SSE4.1/AVX (+100 Mbps) 和 C标准 (+25 Mbps) 的高度优化的 Turbo 解码器
  • 许多组件的 MATLAB 和 OCTAVE MEX 生成类库
  • UE 接收方已测试,已通过 Amarisoft LTE 100 eNodeB 以及商业化 LTE 网络(爱尔兰的 Telefonica Spain, Three.ie 和 Eircom)的验证
第 2 段(可获 2 积分)

缺失的特性:

  • 闭环功率控制
  • 半持久调度
  • 非周期CQI报告

硬件

该库目前支持Ettus通用硬件驱动程序(UHD)和bladeRF驱动程序。 因此,可以使用由UHD或bladeRF支持的任何硬件。 没有采样率转换,因此硬件应该支持30.72 MHz时钟,以便与LTE采样频率和解码来自现场LTE基站的信号正确工作。

我们测试了以下硬件:

  • USRP B210
  • USRP X300
  • bladeRF

下载及安装说明

  • 强制依赖:
    • libfftw
  • 可选要求:
    • srsgui:用于实时绘图。 在这里下载:https://github.com/srslte/srsgui
    • VOLK:如果检测到VOLK库和标题,它们将用于加速某些信号处理功能。
    • Matlab / Octave:如果被CMake找到,MEX文件也将被生成和安装。 如果您发现MEX有任何编译问题,并且您不需要它们,请将-DDisableMEX = ON传递给cmake以禁用它们。
第 3 段(可获 2 积分)

下载并构建 srsLTE:

git clone https://github.com/srsLTE/srsLTE.git
cd srsLTE
mkdir build
cd build
cmake ../
make 

也可以通过命令行方式安装该类库:sudo make install

运行 srsLTE 示例

  • 在 LTE 商业网络中接收 SIB1 和测量 UE:
lte/examples/pdsch_ue -f [frequency_in_Hz]

这里的 -f 指的是 LTE 的信道频率。

  • eNodeB 到 UE 的 Downlink PHY 测试

你将需要两台都装有 USRP 的电脑。在发送方执行:

lte/examples/pdsch_enodeb -f [frequency_in_Hz] [-h for more commands]

在接收方执行:

第 4 段(可获 2 积分)
lte/examples/pdsch_ue -r 1234 -f [frequency_in_Hz]

在发送方控制台这边,通过输入一个新的数值(在0和28之间)并按下回车键,是可以修改调制与编码策略(MCS)的。

接收方得到的输出结果有点类似于下面的视频。在这个例子中,我们移除了demo中传输方和接收方的天线,(尽管有一些错误)但其展现了仍能接收的可能。

https://www.dropbox.com/s/txh1nuzdb0igq5n/demo_pbch.ogv

Screenshopt of the PBCH example output

  • 基于 Downlink PHY 的视频(eNodeB 到 UE)

前一个例子向 UE 发送了一个随机位。他可以打开一个TCP套接字并通过 LTE PHY DL 的无线连接产生视频流。在发送方,执行如下命令:

第 5 段(可获 2 积分)
lte/examples/pdsch_enodeb -f [frequency_in_Hz] -u 2000 [-h for more commands]

参数 -u 2000 将会打开2000端口,用于监听TCP连接。设置一个高阶的 MCS(调制与编码策略),例如16:在 eNodeB 控制台中输入16并按下回车键。

lte/examples/pdsch_ue -r 1234 -u 2001 -U 127.0.0.1 -f [frequency_in_Hz]

参数 -u 2001 -U 127.0.0.1 会以 "地址:端口" 的参数形式注入到 eNodeB 中。 一旦系统运行,你便可以传输一些有用的数据,如视频流。 在发送方执行:

第 6 段(可获 2 积分)
avconv -f video4linux2 -i /dev/video0 -c:v mp4 -f mpegts tcp://127.0.0.1:2000 

将本机2000端口的网络摄像头采集到的视频转为流。在接收方执行:

avplay tcp://127.0.0.1:2001?listen -analyzeduration 100 -loglevel verbose

即可观看视频。

支持

邮件列表: http://www.softwareradiosystems.com/mailman/listinfo/srslte-users

第 7 段(可获 2 积分)

文章评论