srsLTE:高度模块化的 3GPP LTE 开源库
srsLTE 是由 SRS 开发的一款 SDR UE 和 eNodeB 的免费且开源的 LTE 库。该库采用最低的内置模块和外部依赖方式实现了高度模块化。它完全是由 C 语言编写,因此如果在系统中可用,可以使用加速库 VOLK 将其分布在 GNURadio 上。
srsLTE 使用的是 srsUE,一个 LTE UE 的全栈(PHY 至 IP)实现。srsUE 地址:https://github.com/srslte/srsue
srsLET 的软件许可为 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标准(+25Mbps)的高度优化的 Turbo 解码器;
- MATLAB 和 OCTAVE MEX 库生成许多组件;
- UE 接收方测试且验证 Amarisoft LTE 100 eNodeB 和商业化 LTE 网络(爱尔兰的 Telefonica Spain、Three.ie 和 Eircom)。
更新后舍去的特性:
- 闭环功率控制
- Semi-Persistent 调度
硬件
该库目前支持 Ettus Universal Hardware Driver(UHD)和 bladeRF 驱动。另外,适用于 UHD 或 bladeRF 驱动的任何硬件也都支持。其中没有采样率转换,因此为了保持 LTE 基站中 LTE 抽样频率和解码信号正常工作,硬件应该支持 30.72 MHz的采样率。
我们已测试以下硬件:
- USRP B210
- USRP X300
- bladeRF
运行 srsLTE
- 商业化 LTE 网络的 SLB1 接收和 UE 测量:
lte/examples/pdsch_ue -f [frequency_in_Hz]
其中 -f 是 LTE 频道频率。
- eNodeB端 至 UE 端 下行 PHY 测试
需要两台电脑,每台配备一个 USRP。在发送器端运行:
lte/examples/pdsch_enodeb -f [frequency_in_Hz] [-h for more commands]
接收端运行:
lte/examples/pdsch_ue -r 1234 -f [frequency_in_Hz]
在发送器的控制台,通过键入一串新的数字(0-28之间)可以改变调制和编码方案(MCS)。
在接收端的输出类似于下图。在这个案例中,我们在中间演示过程中移除发送器和接收机天线,结果显示接收端仍可能接收。
https://www.dropbox.com/s/txh1nuzdb0igq5n/demo_pbch.ogv(需科学上网)
- 视频下行 PHY(eNodeB 至 UE 端)
上一个例子是发送随机二进制数字至 UE 端。在 LTE PHY DL 无线连接中打开 TCP 套接字和流视频。在发送机端,运行以下命令:
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 端定向注入地址:通过参数显示端口。一旦系统运行,就可以发送一些有用的数据,如视频流。在发送器端,运行:
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
来观看视频。
更多内容,详见 Github:https://github.com/srsLTE/srsLTE
srsLTE:高度模块化的 3GPP LTE 开源库相关推荐
- TorchSeg—基于PyTorch的快速模块化语义分割开源库
点击我爱计算机视觉标星,更快获取CVML新技术 昨日,语义分割算法DFN.BiSeNet 第一作者ycszen开源了TorchSeg项目,基于PyTorch的快速模块化语义分割开源库,复现了DFN, ...
- 常用C/C++开源库
1. 框架 Apache C++ Standard Library : 是一系列算法,容器,迭代器和其他基本组件的集合 ASL : Adobe源代码库提供了同行的评审和可移植的C++源代码库. Boo ...
- Kimera:一个基于度量语义的SLAM开源库
标题:Kimera:an Open-Source Library for Real-Time Metric-Semantic Localization and Mapping 作者:Antoni Ro ...
- 妙笔生花:一个易用、高效的文本生成开源库
文本生成作为近年来自然语言处理中的热门领域,受到了学界和工业界的广泛关注.随着研究的不断深入,文本生成领域下的子任务和相应的模型越来越丰富,一些优秀的开源框架也纷纷涌现. 现有的开源文本生成库大致可分 ...
- C++开源库大全(转)
http://blog.csdn.net/chen19870707/article/details/40427645 程序员要站在巨人的肩膀上,C++拥有丰富的开源库,这里包括:标准库.Web应用框架 ...
- C/C++程序员必须熟悉的开源库
作为一个经验丰富的Linux C/C++程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实 ...
- 赶在 2018 年前推荐 30 个最火爆的开源库
点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介:杨守乐,CSDN 知名博主,关注 Android.Java 领域,现在主要专注于音 ...
- Android开源项目以及开源库集合(持续更新中)
UI Awesome-MaterialDesign – MaterialDesignCenter改名为Awesome-MaterialDesign,优化了布局,新增了不少库. awesome-andr ...
- python的开源库是什么_python开源库列表
标准库 Python标准库描述了 Python 语言的具体语法和语义,这份库参考则介绍了与 Python 一同发行的标准库.它还描述了通常包含在 Python 发行版中的一些可选组件. API手册:h ...
最新文章
- mojoportal学习——文章翻译之多行横排菜单
- 职业生涯中12个最致命的想法
- JPA分页查询与条件分页查询
- 揭秘“21世纪最性感的职业”:数学、编程、沟通和商业技能一个都不能少!...
- Could not create a validated object, cause: ValidateObject failed
- CactiEZ中文版10.1与CAS单点登录
- Eclipse — 快速生成提示代码和快速导包
- jdbc mysql 存储过程执行失败_JDBC连接执行MySQL存储过程报权限错误
- QQ机器人闪照转发/撤回消息转发【最新beta2版本】
- elasticsearch 模板
- 基于深度学习的图像修复—心中无码
- android admob sdk,android – 无法显示AdMob横幅
- OSPF路由器类型 ABR与ASBR路由聚合区别
- 小学计算机课后作业,小学信息技术课后作业设计研究
- 常用笔记啊(持续更新)
- luogu1091合唱队形
- 海思开发板上挂载额外的存储空间
- android10和11,安卓10与安卓11究竟差异在哪里?我们拿这两台新机试了一下
- matplotlib画布中属性设置常用函数及其说明
- 服务器2003光盘修复,将Windows安装到光盘上 修复系统故障简单轻松