Hi Aneesh,

Thanks for your comment. I used a Intel(R) Core(TM) i7-8850H CPU for the B-series experiment (which is somewhat weaker than the "AMD Ryzen 9 3900X 12-Core Processor" I used with the X310s, but the sampling rate was only 1MHz in both cases, so it should be fine). The software is basically a (self-made) JVM-based controller that communicates over sockets with a (self-made) C++-based server that uses UHD 4.0 under the hood. The whole thing is running on CentOS/Fedora. I attached the terminal outputs in case it helps, but I don't see any overruns/underruns.

As for the use case, I'm trying to use this to compare phase offsets across different receiver locations (given a fixed transmitter), so I need a constant (and ideally zero) frequency offset, otherwise the IQ vector keeps rotating back and forth as the frequencies drift apart.

Best regards,
Viktor

On 6/3/21 8:53 PM, aneesh patel wrote:
Viktor,

Cool benchmark.

Do you have some specifics on what's driving the b-series like host CPU specs, software, any stdout output like overruns etc.?

There seems to be an issue with the external clock implementation on the b series unless that's actually how it's supposed to look (!).

For the for factor, power, price, etc. I'd say the internal looks pretty good for *most things.

Best of luck. Hopefully someone with experience chines in on the setup!

Aneesh


Sent from Yahoo Mail on Android <https://go.onelink.me/107872968?pid=InProduct&c=Global_Internal_YGrowth_AndroidEmailSig__AndroidUsers&af_wl=ym&af_sub1=Internal&af_sub2=Global_YGrowth&af_sub3=EmailSignature>

    On Thu, Jun 3, 2021 at 7:37 AM, Viktor Erdelyi
    <[email protected]> wrote:

    Dear all,

    First post here. I have done some measurements with USRP B-series
    and X-series, and I noticed that, in the case of the B-series, the
    center frequency drifts even with an Octoclock 10MHz REF. (The
    drift is smaller than without Octoclock, though.) Is this
    expected? Is the X-series just so much better, or is there
    something else going on?

    Details of the experiment:

      * I sent a sine wave (constant I, constant Q) from one USRP to
        another at 5.9GHz and looked at the spectrogram of the
        received signal. The ideal result of such an experiment would
        be a straight vertical line at 0 Hz (i.e. 5.9GHz).
      * I added an image of the relevant spectrograms below. The left
        side of the figure is TX = USRP B205, RX = USRP B210, internal
        vs. external (Octoclock) REF. The right side of the figure is
        TX = USRP X310, RX = (another) USRP X310, internal vs.
        external (Octoclock) REF.
      * The two X310s have UBX-160 daughterboards.
      * I check for LO_locked and ref_locked before doing TX/RX.

    I would appreciate any insights.

    Thanks,
    Viktor


    _______________________________________________
    USRP-users mailing list -- [email protected]
    <mailto:[email protected]>
    To unsubscribe send an email to [email protected]
    <mailto:[email protected]>

=============================================== Controller output 
===============================================
19:25:00.237 [main] INFO USRPNativeClient - Setting 10MHz REF source to external
19:25:00.239 [main] INFO USRPNativeClient - Setting PPS source to internal
19:25:00.240 [main] INFO main.radio.USRPMaker - Configuring USRP B205mini for 
TX...
19:25:00.241 [main] INFO USRPNativeClient - Setting TX subdevice to A:A
19:25:00.273 [main] INFO USRPNativeClient - Setting TX Gain to 60.0
19:25:00.316 [main] INFO USRPNativeClient - Setting TX SamplingRate to 1 MHz
19:25:00.676 [main] INFO USRPNativeClient - Setting TX Antenna to TX/RX
19:25:00.677 [main] INFO USRPNativeClient - Setting TX Bandwidth to 5.6E7
19:25:00.679 [main] INFO USRPNativeClient - Setting up TX streamer
19:25:02.622 [main] INFO USRPNativeClient - Setting 10MHz REF source to external
19:25:02.629 [main] INFO USRPNativeClient - Setting PPS source to internal
19:25:02.630 [main] INFO main.radio.USRPMaker - Configuring USRP B210_RF_A for 
RX...
19:25:02.630 [main] INFO USRPNativeClient - Setting RX subdevice to A:A
19:25:02.663 [main] INFO USRPNativeClient - Setting RX Gain to 76.5
19:25:02.705 [main] INFO USRPNativeClient - Setting RX SamplingRate to 1 MHz
19:25:03.157 [main] INFO USRPNativeClient - Setting RX Antenna to RX2
19:25:03.158 [main] INFO USRPNativeClient - Setting RX Bandwidth to 5.6E7
19:25:03.202 [main] INFO USRPNativeClient - Setting up RX streamer
19:25:03.270 [DefaultDispatcher-worker-2] INFO USRPNativeClient - Setting USRP 
time to 0.0 NOW
19:25:03.273 [DefaultDispatcher-worker-3] INFO USRPNativeClient - Setting USRP 
time to 0.0 NOW
19:25:03.315 [DefaultDispatcher-worker-3] INFO USRPNativeClient - Getting USRP 
time --> 0.002631
19:25:03.315 [DefaultDispatcher-worker-1] INFO USRPNativeClient - Getting USRP 
time --> 0.04193
19:25:03.319 [main] INFO DeviceSynchronizer - Sync error: -0.039299 s
19:25:03.327 [main] INFO TXRXSignalRecorderCmd - FREQ 5.9 GHz 
====================
19:25:03.328 [main] INFO USRPNativeClient - Getting USRP time --> 0.015192
19:25:03.328 [main] INFO DeviceSynchronizer - Tuning TX-RX...
19:25:03.328 [main] INFO USRPNativeClient - Setting command time to 
0.21519200000000002
19:25:03.370 [main] INFO USRPNativeClient - Setting command time to 
0.21519200000000002
19:25:03.412 [main] INFO USRPNativeClient - Setting TX center frequency to 5.9 
GHz (LO offset 2 MHz)
19:25:03.444 [main] INFO USRPNativeClient - Setting RX center frequency to 5.9 
GHz + 0 kHz (LO offset 2 MHz)
19:25:03.578 [main] INFO USRPNativeClient - Clearing command time
19:25:03.579 [main] INFO USRPNativeClient - Clearing command time
19:25:03.580 [main] INFO DeviceSynchronizer - Starting TX-RX sequence...
19:25:03.594 [pool-1-thread-2] INFO DeviceSynchronizer - [TX] starting to 
transmit
19:25:03.595 [pool-1-thread-2] INFO USRPNativeClient - Transmitting signal 
ConstantIQ, 10000000 samples, startTime 5.715192
19:25:03.595 [pool-1-thread-1] INFO DeviceSynchronizer - Joining...
19:25:03.597 [pool-1-thread-1] INFO DeviceSynchronizer - [RX] starting to 
receive
19:25:03.597 [pool-1-thread-1] INFO USRPNativeClient - Receiving 10000000 
samples @ time 5.715192
19:25:20.032 [pool-1-thread-2] INFO DeviceSynchronizer - [TX] transmitSignal 
returned
19:25:20.159 [pool-1-thread-1] INFO DeviceSynchronizer - [RX] Receiver returned 
(collected 10000000 samples)
19:25:26.256 [pool-1-thread-1] INFO DeviceSynchronizer - Sinks updated
19:25:26.257 [pool-1-thread-1] INFO DeviceSynchronizer - Done

=============================================== Native output 
===============================================
Accepting connections...
New client session
[2021-06-03 19:24:57.981299] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:24:57.981945] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'init serial=31B66D6'
[2021-06-03 19:24:57.981973] [0x00007f3f6ed19640] [info]    Creating the usrp 
device with: >>serial=31B66D6<<...
[INFO] [B200] Detected Device: B205mini
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
[2021-06-03 19:25:00.236557] [0x00007f3f6ed19640] [info]    Using Device: 
Single USRP:
  Device: B-Series Device
  Mboard 0: B205mini
  RX Channel: 0
    RX DSP: 0
    RX Dboard: A
    RX Subdev: FE-RX1
  TX Channel: 0
    TX DSP: 0
    TX Dboard: A
    TX Subdev: FE-TX1

[2021-06-03 19:25:00.236797] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.239575] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setClockSource_10MHzREF 
external'
[2021-06-03 19:25:00.239887] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.240437] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setClockSource_PPS 
internal'
[2021-06-03 19:25:00.240669] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.241704] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXSubdevice A:A'
[2021-06-03 19:25:00.269961] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.314551] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXGain 60.0'
[2021-06-03 19:25:00.314687] [0x00007f3f6ed19640] [info]    Setting TX Gain: 
60.000000 dB...
[2021-06-03 19:25:00.315355] [0x00007f3f6ed19640] [info]    Actual TX Gain: 
60.000000 dB...
[2021-06-03 19:25:00.315482] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.316825] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXSamplingRate 
1000000.0'
[2021-06-03 19:25:00.316944] [0x00007f3f6ed19640] [info]    Setting TX Rate: 
1.000000 Msps...
[INFO] [B200] Asking for clock rate 32.000000 MHz...
[INFO] [B200] Actually got clock rate 32.000000 MHz.
[2021-06-03 19:25:00.635895] [0x00007f3f6ed19640] [info]    Actual TX Rate: 
1.000000 Msps...
[2021-06-03 19:25:00.636062] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.677311] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXAntenna TX/RX'
[2021-06-03 19:25:00.677596] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.678460] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXBandwidth 5.6E7'
[2021-06-03 19:25:00.678614] [0x00007f3f6ed19640] [info]    Setting TX 
Bandwidth: 56.000000 MHz...
[2021-06-03 19:25:00.679610] [0x00007f3f6ed19640] [info]    Actual TX 
Bandwidth: 56.000000 MHz...
[2021-06-03 19:25:00.679798] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:00.680510] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setupTXStreamer fc32 sc16'
[2021-06-03 19:25:00.706156] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

Accepting connections...
New client session
[2021-06-03 19:25:00.748538] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:00.748656] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'init serial=31B92C1'
[2021-06-03 19:25:00.748778] [0x00007f3f6d516640] [info]    Creating the usrp 
device with: >>serial=31B92C1<<...
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
[2021-06-03 19:25:02.622215] [0x00007f3f6d516640] [info]    Using Device: 
Single USRP:
  Device: B-Series Device
  Mboard 0: B210
  RX Channel: 0
    RX DSP: 0
    RX Dboard: A
    RX Subdev: FE-RX2
  RX Channel: 1
    RX DSP: 1
    RX Dboard: A
    RX Subdev: FE-RX1
  TX Channel: 0
    TX DSP: 0
    TX Dboard: A
    TX Subdev: FE-TX2
  TX Channel: 1
    TX DSP: 1
    TX Dboard: A
    TX Subdev: FE-TX1

[2021-06-03 19:25:02.622478] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:02.623264] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setClockSource_10MHzREF 
external'
[2021-06-03 19:25:02.629006] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:02.629637] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setClockSource_PPS 
internal'
[2021-06-03 19:25:02.629871] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:02.630850] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXSubdevice A:A'
[2021-06-03 19:25:02.663549] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:02.664441] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXGain 76.5'
[2021-06-03 19:25:02.664579] [0x00007f3f6d516640] [info]    Setting RX Gain: 
76.500000 dB...
[2021-06-03 19:25:02.664915] [0x00007f3f6d516640] [info]    Actual RX Gain: 
76.000000 dB...
[2021-06-03 19:25:02.665037] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:02.747440] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXSamplingRate 
1000000.0'
[2021-06-03 19:25:02.747504] [0x00007f3f6d516640] [info]    Setting RX Rate: 
1.000000 Msps...
[INFO] [B200] Asking for clock rate 32.000000 MHz...
[INFO] [B200] Actually got clock rate 32.000000 MHz.
[2021-06-03 19:25:03.157016] [0x00007f3f6d516640] [info]    Actual RX Rate: 
1.000000 Msps...
[2021-06-03 19:25:03.157265] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.157844] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXAntenna RX2'
[2021-06-03 19:25:03.158620] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.159021] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXBandwidth 5.6E7'
[2021-06-03 19:25:03.159110] [0x00007f3f6d516640] [info]    Setting RX 
Bandwidth: 56.000000 MHz...
[2021-06-03 19:25:03.160793] [0x00007f3f6d516640] [info]    Actual RX 
Bandwidth: 56.000000 MHz...
[2021-06-03 19:25:03.160907] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.203273] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setupRXStreamer fc32 sc16'
[2021-06-03 19:25:03.205655] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.273285] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setUSRPTimeNow 0.0'
[2021-06-03 19:25:03.273327] [0x00007f3f6d516640] [info]    Setting USRP time 
to 0.000000 NOW...
[2021-06-03 19:25:03.273645] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.312410] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setUSRPTimeNow 0.0'
[2021-06-03 19:25:03.312457] [0x00007f3f6ed19640] [info]    Setting USRP time 
to 0.000000 NOW...
[2021-06-03 19:25:03.312753] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.315270] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'getUSRPTime'
[2021-06-03 19:25:03.315458] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.315514] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'getUSRPTime'
[2021-06-03 19:25:03.315656] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.327846] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'getUSRPTime'
[2021-06-03 19:25:03.328080] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.370363] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setCommandTime 
0.21519200000000002'
[2021-06-03 19:25:03.370517] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.411599] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setCommandTime 
0.21519200000000002'
[2021-06-03 19:25:03.411826] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.413040] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'setTXCenterFrequency 
5.9E9 2000000.0'
[2021-06-03 19:25:03.413189] [0x00007f3f6ed19640] [info]    Setting TX Freq: 
5900.000000 MHz (LO offset: 2.000000 MHz)...
[2021-06-03 19:25:03.443842] [0x00007f3f6ed19640] [info]    Actual TX Freq: 
5900.000000 MHz...
[2021-06-03 19:25:03.444041] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.445499] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'setRXCenterFrequency 
5.9E9 2000000.0'
[2021-06-03 19:25:03.445755] [0x00007f3f6d516640] [info]    Setting RX Freq: 
5900.000000 MHz (LO offset: 2.000000 MHz)...
[2021-06-03 19:25:03.577933] [0x00007f3f6d516640] [info]    Actual RX Freq: 
5900.000000 MHz...
[2021-06-03 19:25:03.578104] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.579157] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'clearCommandTime'
[2021-06-03 19:25:03.579403] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Waiting for command...

[2021-06-03 19:25:03.580264] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'clearCommandTime'
[2021-06-03 19:25:03.580439] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Waiting for command...

[2021-06-03 19:25:03.598349] [0x00007f3f6d516640] [info]    
[Session-remoteport-56958] Received control command: 'receiveSamples 10000000 
5.715192'
[2021-06-03 19:25:03.598883] [0x00007f3f6d516640] [info]    RX LO locked
[2021-06-03 19:25:03.599273] [0x00007f3f6d516640] [info]    Sensor 
'ref_locked': Ref: locked
[2021-06-03 19:25:03.599336] [0x00007f3f6d516640] [info]    ReceiveSamples: 
receiving 10000000 samples
[2021-06-03 19:25:03.636401] [0x00007f3f6ed19640] [info]    
[Session-remoteport-56952] Received control command: 'transmitSamples 
ConstantIQ 10000000 5.715192'
[2021-06-03 19:25:03.636655] [0x00007f3f6ed19640] [info]    TX LO locked
[2021-06-03 19:25:03.636881] [0x00007f3f6ed19640] [info]    Sensor 
'ref_locked': Ref: locked
[2021-06-03 19:25:03.637072] [0x00007f3f6ed19640] [info]    TransmitSamples: 
Generating 10000000 samples, curtime: 0.324215 deadline: 5.71519
[2021-06-03 19:25:03.758660] [0x00007f3f6d516640] [info]    ReceiveSamples: RX 
buffer size = 2040 samples
[2021-06-03 19:25:04.012968] [0x00007f3f6ed19640] [info]    Transmitting 
10000000 samples, curtime @ 0.700081
[2021-06-03 19:25:04.013169] [0x00007f3f6ed19640] [info]    TransmitSamples: TX 
buffer size = 2040 samples
[2021-06-03 19:25:18.971993] [0x00007f3f6ed19640] [info]    Waiting for async 
burst ACK (USRP time = 15.6589)
[2021-06-03 19:25:18.989226] [0x00007f3f6d516640] [info]    Done (collected 
10000000 samples)
[2021-06-03 19:25:19.028159] [0x00007f3f6ed19640] [info]    Got TX Burst ACK @ 
USRP time 15.7152
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to