2015-02-10 37 views
0

我在CentOS 6.6 VM(通過Parallels在Macbook Pro OS X 10.10上)上運行REDHAWK 1.10.1。我正在使用USRP N210。我只是試圖在將實際波形連接到它之前啓動並運行。REDHAWK UHD接收溢出的原因

我配置OS X有:

sudo sysctl -w net.inet.tcp.sendspace=1048576 
sudo sysctl -w net.inet.tcp.recvspace=1048576 

和CentOS有:

$ sudo sysctl -w net.core.wmem_max=1048576 
$ sudo sysctl -w net.core.rmem_max=50000000 

我也被追加到在/etc/security/limits.conf配置線程調度優先級:

@redhawk - rtprio 99 

現在我只需將USRP_UHD dataShort_out連接到DataConverter的dataShort_in。數據是流動的,但很快就會在我開始執行,我反覆收到以下消息:

USRP_UHD_i:1295 - WARNING: TIMEOUT OCCURED ON USRP RECEIVE! (received num_samps=0) 

我想這可能是一個數據流的問題,但我找不到該信息的參考。可能是由OS X接收緩衝區大小(我認爲是限制CentOS VM)引起的?不幸的是,OS X不會讓我把它提高得多,當然不會達到50 MB。什麼可能導致此消息?

我正在使用WBX子板。我調諧到2 GHz,40 MHz的帶寬,2 Msps的SR。

DevMgr節點輸出:

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節點輸出:

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) 

回答

1

您使用的是您的調諧器分配什麼樣的價值觀?我和你很久以前都有同樣的問題。我認爲這個問題使用的是超出USRP範圍的值。

嘗試這些:

center freq = 462e6 
bandwidth = 40e6 
sample rate = 0.2e6 

之後,你可能會遇到一個新的問題與端口。我會推薦以下問題和解決方案here

+0

我已經嘗試過一些設置,其中包括一些與您的建議非常相似的設置。我仍然遇到這個問題。我開始懷疑是否由於虛擬機網絡的性能。我最終可能會嘗試使用本地Linux安裝來查看是否可以修復它。你使用虛擬機嗎? – bruno617 2015-02-17 21:56:11

+0

是的,我通過oracle vmbox使用了CentOS 6.5。如果你有時間可以試試這個嗎? 在調試級別4或5中運行域。 在調試級別4或5中運行設備。 讓兩者都運行一段時間,然後複製粘貼一些結果,然後開始向您發出警告。 – user3508688 2015-02-18 22:21:26

+0

此外,您可能需要檢查USRP在哪個子板上使用:http://www.ettus.com/product/details/UN210-KIT – user3508688 2015-02-18 22:33:20

0

當你看到溢出時的問題僅僅是你的電腦跟不上樣品。以200kS/s的採樣率,這意味着你的虛擬機可能動力不足,或者你的應用程序太複雜。

除了讓應用程序和/或機器更具性能外,您無能爲力。

一般來說,在虛擬機中製作軟件定義無線電是一個壞主意。有很多I/O工作要完成,並且虛擬化會在進入虛擬機的每個以太網幀上產生大量開銷。