首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REDHAWK UHD接收溢出的原因

REDHAWK UHD接收溢出的原因
EN

Stack Overflow用户
提问于 2015-02-11 00:18:48
回答 2查看 270关注 0票数 0

我在Macbook Pro OS X 10.10的CentOS 6.6VM(通过Parallels)上运行红鹰1.10.1。我用的是USRP N210。在连接实际的波形之前,我只是想让它启动并运行。

我使用以下命令配置OS X:

代码语言:javascript
复制
sudo sysctl -w net.inet.tcp.sendspace=1048576
sudo sysctl -w net.inet.tcp.recvspace=1048576

和具有以下特性的CentOS:

代码语言:javascript
复制
$ sudo sysctl -w net.core.wmem_max=1048576
$ sudo sysctl -w net.core.rmem_max=50000000

我还通过附加到/etc/security/limits.conf来配置线程调度优先级:

代码语言:javascript
复制
@redhawk  - rtprio    99

现在,我只需要将USRP_UHD dataShort_out连接到DataConverter dataShort_in。数据在流动,但在我开始执行后不久,我反复收到以下消息:

代码语言:javascript
复制
USRP_UHD_i:1295 - WARNING: TIMEOUT OCCURED ON USRP RECEIVE! (received num_samps=0)

我认为这可能是数据流问题,但我找不到任何对该消息的引用。这可能是由OS X接收缓冲区大小(我假设它限制了CentOS VM)造成的?不幸的是,OS不允许我将其提升到更高,当然也不会提高到50MB。是什么导致了这条消息?

我使用的是WBX子板。我调到了2 GHz,40 MHz的带宽,.2 Msps的SR。

DevMgr节点输出:

代码语言:javascript
复制
2015-02-18 19:48:06,578 DEBUG DCE:0b818b5e-aa99-47ac-87ca-ff4d37b6991b{1}:101 - Issuing event for DCE:9da85ebc-6503-48e7-af36-b77c7ad0c2b4 ({'fivemin': 0.26000000000000001, 'fifteenmin': 0.20999999999999999, 'onemin': 0.20999999999999999} != {'fivemin': 0.23000000000000001, 'fifteenmin': 0.20000000000000001, 'onemin': 0.11})
2015-02-18 19:48:06,584 DEBUG DCE:0b818b5e-aa99-47ac-87ca-ff4d37b6991b{1}:101 - Issuing event for DCE:6565bffd-cb09-4927-9385-2ecac68035c7 (3692 != 3693)
2015-02-18 19:48:06,585 DEBUG DCE:0b818b5e-aa99-47ac-87ca-ff4d37b6991b{1}:103 - Eventing for properties ['DCE:9da85ebc-6503-48e7-af36-b77c7ad0c2b4', 'DCE:6565bffd-cb09-4927-9385-2ecac68035c7']
2015-02-18 19:48:06,586 DEBUG DCE:0b818b5e-aa99-47ac-87ca-ff4d37b6991b{1}:65 - Skipping sendPropertiesEvent (no connections)

USRP节点输出:

代码语言:javascript
复制
2015-02-18 19:48:55 DEBUG USRP_UHD_i:1312 - usrpReceive|received data. num_samps=200000 buffer_size=400000 buffer_capacity=943718
2015-02-18 19:48:56 DEBUG USRP_UHD_i:1312 - usrpReceive|received data. num_samps=200000 buffer_size=800000 buffer_capacity=943718
2015-02-18 19:48:57 DEBUG USRP_UHD_i:1312 - usrpReceive|received data. num_samps=71859 buffer_size=943718 buffer_capacity=943718
2015-02-18 19:48:57 DEBUG USRP_UHD_i:240 - serviceFunctionReceive|pushing buffer of 471859 samples
2015-02-18 19:48:58 DEBUG USRP_UHD_i:1312 - usrpReceive|received data. num_samps=200000 buffer_size=400000 buffer_capacity=943718
2015-02-18 19:48:59 DEBUG USRP_UHD_i:1312 - usrpReceive|received data. num_samps=140642 buffer_size=681284 buffer_capacity=943718
2015-02-18 19:48:59 WARN USRP_UHD_i:1295 - WARNING: TIMEOUT OCCURED ON USRP RECEIVE! (received num_samps=0)
EN

回答 2

Stack Overflow用户

发布于 2015-02-11 03:36:08

您的调谐器分配使用的值是什么?我很久以前就遇到过和你一样的问题。我认为问题在于使用的值超出了USRP的范围。

试试这些:

代码语言:javascript
复制
center freq = 462e6
bandwidth = 40e6
sample rate = 0.2e6

之后,您可能会遇到端口的新问题。我建议遵循问题和解决方案here

票数 1
EN

Stack Overflow用户

发布于 2015-03-22 21:47:34

当你看到溢出的时候,问题很简单,就是你的电脑跟不上进来的样本。在200kS/s的采样速率下,这意味着您的虚拟机可能动力不足,或者您的应用程序过于复杂。

除了提高应用程序和/或机器的性能外,您对此无能为力。

通常,在VM中执行软件定义无线电不是一个好主意。有许多I/O工作要做,并且虚拟化在进入您的VM的每个以太网帧上放置了显著的开销。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28436515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档