Studies of the output hardware delay in SDR systems.
(Nov 1 2011)

Minimum Delay in Linrad.

With Linrad used for SDR processing one can set parameters for a total delay of 7 ms from antenna to loudspeaker. For details look here.

By replacing the output side with other hardware it is possible to determine the delay caused by the drive routines of different SDR hardware.

Output Delay under Windows XP (32 bit) on a fast computer.

These tests were performed on a D5400XS with 2 Xeon E5410 processors. 8 CPU cores in total. The operating system was Windows XP SP3 updated with Microsoft update to the latest state by Sept 25 2011. The Perseus was used for input at 125 kHz sampling rate.

The processing parameters that affect the delay were set like this for the tests under Windows XP:

First FFT bandwidth = 2000
First FFT window = 9
First mixer bandwidth reduction in powers of two = 2
Third FFT window = 8
Min DMA rate = 1000
Max DMA rate = 1000
Third FFT N = 6
Output sampling speed = 48000
Priority = 2
Timer resolution = 1

The ASIO, WDM-KS and WASAPI drivers are used through Portaudio. MME is used directly from Linrad. Portaudio is very slow with MME and Direct Sound.


                                       
Output hardware/driver                  delay    Latency  
                                        (ms)      factor  
Delta 44 Portaudio/ASIO                  18         1     
Delta 44 Portaudio/WDM-KS                18         1
Delta 44 MME                             45         - 
HDA Intel MME                            55         -
SB Live USB MME                          60         -
SB Live USB Portaudio/ASIO               32         3
SB Live! Value MME                       42         -       
SB Audigy LS MME                         68         -
SB Audigy LS Portaudio/WDM-KS            53        10
Lynx Two MME                             70         -
Lynx Two Portaudio/ASIO                  20         1
SB Ensoniq PCI ES1371 MME                45         -
SB Ensoniq PCI ES1371 Portaudio/WDM-KS   32         1
Xonar Essence STX MME                    65         -
Xonar Essence STX Portaudio/WDM-KS       55         1
Xonar Essence STX Portaudio/ASIO     Not working with small buffers.
Table 1. Observed delays with Windows XP on a fast computer.


Output Delay under Windows 7 (32 bit) on a fast computer.

The computer used was the same D5400XS which was used for the test with Windows XP above. The SDR-IP was used for input at 1MHz sampling rate.

The processing parameters that affect the delay were set like this for the tests under Windows 7:

First FFT bandwidth = 2000
First FFT window = 9
First mixer bandwidth reduction in powers of two = 5
Third FFT window = 8
Min DMA rate = 2000
Max DMA rate = 2000
Third FFT N = 6
Output sampling speed = 48000
Priority = 2
Timer resolution = 1

The ASIO, WDM-KS and WASAPI drivers are used through Portaudio. MME is used directly from Linrad. Portaudio is very slow with MME and Direct Sound.


Output hardware/driver                  Delay      Latency 
                                        (ms)        factor
Delta 44 Portaudio/ASIO                  13           1
Delta 44 Portaudio/WDM-KS                13           1
Delta 44 Portaudio/WASAPI                37           1
Delta 44 MME                             60           -
Lynx Two MME                             55           -
Lynx Two ASIO                            17           5
Lynx Two Portaudio/WASAPI                35           1
SB Live USB MME                         107           -
SB Live! USB Portaudio/WASAPI            80           2
SB Live! USB Portaudio/WDM-KS            55           1 (2 chan, 96kHz)
SB Audigy LS MME                         70           -
SB Audigy LS Portaudio/WASAPI            45           1
HDA Intel Portaudio/WASAPI               32           1
HDA Intel MME                            45           -
SB Ensoniq PCI ES1371 MME                65           -
SB Ensoniq PCI ES1371 Portaudio/WDM-KS   30           1
Xonar Essence STX MME                    80           -
Xonar Essence STX Portaudio => system crasch Reinstall Windows.
Table 2. Observed delays with Windows 7 on a fast computer.


Output Delay under Linux (32 bit) on a fast computer.

The computer used was the same D5400XS which was used for the test with Windows XP above. The tests were made with Linrad-03.27 while the Linux version used for these tests was Debian sid with the kernel 3.0.0. The SDR-IP was used for input at 100 kHz.

The processing parameters that affect the delay were set like this for the tests under Linux:

First FFT bandwidth = 2000
First FFT window = 9
First mixer bandwidth reduction in powers of two = 1
Third FFT window = 8
Min DMA rate = 1000
Max DMA rate = 1000
Third FFT N = 6
Output sampling speed = 48000
Priority = 2


Output soundcard          Delay    
                          (ms)
Delta 44                   16
HDA Intel                  16
SB Live USB                19
SB Audigy LS               18
Aureal Vortex au8820       18
ASUS Xonar STX             22
SB Ensoniq PCI ES1371      16
SB Live Value PCI          16
Table 3. Observed delays with Linux on a fast computer.


The above results are obtained with Linrad 3-27 which has a more precise timing than earlier versions.

Conclusions.

Device drivers are critical for transceiver performance. Under Windows most soundcards cause an unacceptable delay but there are "semi-professional soundcards" like Delta 44 and Lynx Two that allow near zero delay under Windows XP as well as Windows 7 provided that ASIO, WDM-KS or WASAPI drivers are selected. MME is always slow, but a soundcard is not necessarily fast just because it has ASIO, WDM-KS or WASAPI.

The output is fast under Linux with all the tested soundcards. Slowest is the ASUS Xonar STX, but it is only 6 ms slower than the fastest soundcards so it is perfectly OK for a SDR transceiver as output.

To SM 5 BSZ Main Page