On Wed, Mar 21, 2012 at 11:42 AM, Vincenzo Pellegrini <wwvi...@gmail.com>wrote:
> HI fellows, > > I was wondering if anybody has been trying to reach 8 Complex Msps over > the USB 2.0 on the Tx path. > While this has always been OK with old libusrp (and USRP 1) it appears to > be no longer possible by means of UHD > neither when trying to do that on USRP1 (a few underruns) nor on B100 > (lots of overruns). > > > Everything appears instead fine on the Rx path > > Is there any workaround to this? > > ..or did I miss something? > > > thanks everybody > > PS > USB 3.0 seems to be capable enough for the 8 Msps. > Is USB3.0 a requirement for 8 Msps on the B100? > > Look for other devices on that USB bus using lsusb. Avoid sharing the bus with other peripherals (bluetooth, wlan, etc). You can also modify the transport parameters using --args=recv_frame_size=xxxxx,send_frame_size=xxxxx. This will give you the same control over receive & send frame size that the old USRP1 drivers had. The default receive/send frame sizes are 16K, which seems to work OK on most machines. For comparison, the USB host controller I'm using is the Intel 6 Series/C200, and on B100 I can use a TX send rate of 10.67Msps without underflow, although occasionally underflows occur at the very beginning of the transmission (likely due to interrupt coalescing on the USB controller). I also have a USB 3.0 controller (an NEC Corporation uPD720200) on this laptop, which fares more poorly, but still easily achieves 8Msps. I don't have a good explanation as to why some USB controllers do better than others. USB 3.0 is certainly not required on B100/USRP1, as neither device uses USB 3.0. --n > > > ____________________________________________________________B100 > > ./benchmark_rate --tx_rate 8e6 > linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; > UHD_003.004.000-325-g7e296167 > > > Creating the usrp device with: ... > -- USRP-B100 clock control: 10 > -- r_counter: 2 > -- a_counter: 0 > -- b_counter: 20 > -- prescaler: 8 > -- vco_divider: 5 > -- chan_divider: 5 > -- vco_rate: 1600.000000MHz > -- chan_rate: 320.000000MHz > -- out_rate: 64.000000MHz > -- > Using Device: Single USRP: > Device: B-Series Device > Mboard 0: B100 (B-Hundo) > RX Channel: 0 > RX DSP: 0 > RX Dboard: A > RX Subdev: WBX RX v3 + Simple GDB > TX Channel: 0 > TX DSP: 0 > TX Dboard: A > TX Subdev: WBX TX v3 + Simple GDB > > Testing transmit rate 8.000000 Msps > > UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU > Benchmark rate summary: > Num received samples: 0 > Num dropped samples: 0 > Num overflows detected: 0 > Num transmitted samples: 79931260 > Num sequence errors: 0 > Num underflows detected: 406 > > > Done! > > > > ./benchmark_rate --tx_rate 8e6 --tx_otw sc16 > linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; > UHD_003.004.000-325-g7e296167 > > > Creating the usrp device with: ... > -- USRP-B100 clock control: 10 > -- r_counter: 2 > -- a_counter: 0 > -- b_counter: 20 > -- prescaler: 8 > -- vco_divider: 5 > -- chan_divider: 5 > -- vco_rate: 1600.000000MHz > -- chan_rate: 320.000000MHz > -- out_rate: 64.000000MHz > -- > Using Device: Single USRP: > Device: B-Series Device > Mboard 0: B100 (B-Hundo) > RX Channel: 0 > RX DSP: 0 > RX Dboard: A > RX Subdev: WBX RX v3 + Simple GDB > TX Channel: 0 > TX DSP: 0 > TX Dboard: A > TX Subdev: WBX TX v3 + Simple GDB > > Testing transmit rate 8.000000 Msps > > UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU > Benchmark rate summary: > Num received samples: 0 > Num dropped samples: 0 > Num overflows detected: 0 > Num transmitted samples: 79890620 > Num sequence errors: 0 > Num underflows detected: 696 > > > Done! > > > ____________________________________________________________USRP 1 > > ./benchmark_rate --tx_rate 8e6 --tx_otw sc16 > linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; > UHD_003.004.000-325-g7e296167 > > > *** Warning! *** > Benchmark results will be inaccurate on USRP1 due to insufficient features. > > Creating the usrp device with: ... > -- Opening a USRP1 device... > -- Using FPGA clock rate of 64.000000MHz... > Using Device: Single USRP: > Device: USRP1 Device > Mboard 0: USRP1 (Classic) > RX Channel: 0 > RX DSP: 0 > RX Dboard: B > RX Subdev: WBX RX v2 + Simple GDB > TX Channel: 0 > TX DSP: 0 > TX Dboard: B > TX Subdev: WBX TX v2 + Simple GDB > > Testing transmit rate 8.000000 Msps > UUUUU > Benchmark rate summary: > Num received samples: 0 > Num dropped samples: 0 > Num overflows detected: 0 > Num transmitted samples: 80022656 > Num sequence errors: 0 > Num underflows detected: 5 > > > Done! > > > ____________________________________________________________everything > fine with 8bit samples > > ./benchmark_rate --tx_rate 8e6 --tx_otw sc8 > linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; > UHD_003.004.000-325-g7e296167 > > > -- Loading firmware image: /usr/share/uhd/images/usrp_b100_fw.ihx... done > Creating the usrp device with: ... > -- USRP-B100 clock control: 10 > -- r_counter: 2 > -- a_counter: 0 > -- b_counter: 20 > -- prescaler: 8 > -- vco_divider: 5 > -- chan_divider: 5 > -- vco_rate: 1600.000000MHz > -- chan_rate: 320.000000MHz > -- out_rate: 64.000000MHz > -- > -- Loading FPGA image: /usr/share/uhd/images/usrp_b100_fpga.bin... done > Using Device: Single USRP: > Device: B-Series Device > Mboard 0: B100 (B-Hundo) > RX Channel: 0 > RX DSP: 0 > RX Dboard: A > RX Subdev: WBX RX v3 + Simple GDB > TX Channel: 0 > TX DSP: 0 > TX Dboard: A > TX Subdev: WBX TX v3 + Simple GDB > > Testing transmit rate 8.000000 Msps > > Benchmark rate summary: > Num received samples: 0 > Num dropped samples: 0 > Num overflows detected: 0 > Num transmitted samples: 80053688 > Num sequence errors: 0 > Num underflows detected: 0 > > > Done! > > > > > -- > Vincenzo Pellegrini > http://www.youtube.com/user/wwvince1 > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio