Errata of "SDR Implementation of Analog
FM Broadcast Multipath Filter"by Kenji Rikitake, author
Last update: 3-NOV-2021
This errata list is for the following technical report:
Kenji Rikitake, "SDR Implementation of Analog FM Broadcast Multipath Filter", IEICE
Technical Report, vol. 121, no. 227, SR2021-43, pp. 17-24, November 2021.

ErrataThe following errors were found by the author on 22-OCT-2021. The author has reported
the errors to IEICE SR SIG.
In Page 21, Table 4, the value of NLMS coefﬁcient update rate is shown as: "48kHz(once in 8 samples)". This should be corrected and shown as: "96kHz (once in 4
samples)".
In Page 21, at the 8th line from the bottom on the left column, a part of the paragraphis shown as "[...] empirically set to 48kHz to [...]". This should be corrected and shownas "[...] empirically set to 96kHz to [...]".
[End of document]一般社団法人 電子情報通信学会
THE INSTITUTE OF ELECTRONICS,
社団法人 電子情報通信学会
INFORMATIONAND COMMUNICATION ENGINEERS

信学技報
IEICE Technical Report
信学技報 SR2021-43(2021-11)

THE INSTITUTE OF ELECTRONICS,
INFORMATION AND COMMUNICATION ENGINEERSTECHNICAL REPORT OF IEICE.

ソフトウェア無線によるアナログ FM 放送マルチパスフィルタの実装
力武 健次†,††

あらまし† 力武健次技術士事務所†† GMO ペパボ株式会社 ペパボ研究所
E-mail: †kenji.rikitake@acm.org

マルチパスによる受信障害の低減はアナログ FM 放送の高品質受信にとって不可欠である．過去に適応フィルタによる解決法が示されているが，その実装詳細は明らかではない．本報告では，筆者が開発した IF 出力に対し複素 NLMS フィルタを適用したオープンソースの SDR 実装の詳細について説明し，開発上の留意点とマルチパ
スフィルタによる改善された受信結果の評価について述べる．実験の結果，提案したマルチパスフィルタは 880Hzの時報音の放送にて THD+N を 1.22% から 0.33% まで低減し，簡易に設置されたアンテナでも効果的に受信品質を上げることを示した．

キーワード マルチパス，適応フィルタ，FM 放送, SDR

SDR Implementation of Analog FM Broadcast Multipath Filter
Kenji RIKITAKE†,††† Kenji Rikitake Professional Engineer’s Office†† Pepabo R&D Institute, GMO Pepabo, Inc.
E-mail: †kenji.rikitake@acm.org
Abstract Reduction of the reception degradation caused by multipath propagation is essential for the high-quality receptionof analog FM broadcast. Previous reports show adaptive filters effectively solve this issue, but the implementation details are
not well-described. In this report, the author explains the details of an open-source SDR implementation that applies a complex
NLMS filter to the IF output developed by the author. The author also describes the critical points to consider for the development
and the evaluation of the improved reception results by the multipath filter. Experiments showed that the proposed multipath
filter reduced the THD+N of an 880Hz time tone signal broadcast from 1.22% to 0.33% and that the multipath filter effectively
improved the reception quality for simple antenna installations.
Key words Multipath, adaptive filter, FM broadcast, SDR

1

directive antennas for solving the distortion issue is not necessarily

Introduction

sufficient to reduce the unwanted reflected waves. It is not practical

Quality degradation of radio communication’s frequency modula-

either because of the large size and mechanical fragility of the beamtion (FM) scheme has been observed since the beginning of the com-antennas, particularly for smaller antenna installations such as thosemunication experiments after Armstrong [1] invented the modulation

on balconies of an apartment complex and on mobile vehicles.

scheme in 1933. Corrington [2] published one of the first mathemat-

Analog FM broadcast stations in Japan have been a popular source

ical analyses of FM multipath in 1945. Corrington concluded thatof quality audio contents since 1969 when the national broadcasterthe drops of carrier modulation amplitudes caused high-level output

NHK-FM [3] and FM Tokai (now TOKYO FM [4]) started the official

audio distortion, resulting in spikes in the output audio waveform,

broadcasting operation. FM broadcast is more resistant to urban elec-

which causes annoying sounds and degrading the quality.

trical noise than amplitude modulation (AM) broadcast. Commercial

Solving the distortion issue of FM multipath is challenging due tobroadcasters in Japan have announced in July 2021 that they will start

the nature of multipath propagation, especially in the urban environ-replacing the AM radio stations with the equivalent FM stations by fall

ment where the reflection of airwaves caused by many buildings exists,

2028 [5] to reduce service costs and improve reception sound quality.

which causes a complex pattern of frequency-selective fading. Using

Degradation of the transmission quality caused by the multipath- 17 -—1—
This article is a technical report without peer review, and its polished and/or extended version may be published elsewhere.
Copyright ©2021 by IEICE

propagation has been a persistent issue of FM broadcast reception.

sal filter (equivalent to FIR filter in the discrete digital domain) for

Removing the effect of received reflected signals cannot be done triv-

erasing the distortion caused by the echoes (equivalent to multipath

ially by adding a received signal amplifier to the antenna cable orsignals) in the received signal of FM broadcast in 1983.

adding a filter to the demodulated audio signals.

Godard [15] proposed the methodology of the Constant Modulus

Eliminating the root cause of the degradation caused by the in-

Algorithm (CMA) in 1980. Treichler and Agee [16] showed a detailed

terference of receiving multiply delayed and echoed signals by the

analysis of CMA by simulation in 1983. Trichler and Larimore [17]multipath propagation requires a finite impulse response (FIR) filter

later extended the CMA for faster processing with non-complex real

for the adaptive cancellation. However, this adaptive filter function

signals and known envelope characteristics in 1985.

is not popular among commercially available FM receivers, and the

CMA applies the Least-Mean Square (LMS) [18] algorithm for

known receivers with this function are expensive and not generally

adaptive filters to the complex number representation [19] of the in-available for the consumers1.

phase and quadrature (IQ) signals. The goal of CMA is to filter out theOn the other hand, inexpensive software-defined receivers (SDRs)

delayed multipath signals by applying the adaptive FIR filter so that

become more available at a lower price as the technology matures. In

the amplitude of the signal is closest to the given constant value, under

addition, the signal processing performance of commercially available

the assumption that the amplitude of the transmitted FM signal is acomputers has also been increasing rapidly and can handle intermedi-

constant and that the amplitude of the received signal changes solely

ate frequency (IF) signals from the SDR frontends directly under thedue to the effects of the propagation environment. Mochizuki andorder of mega samples per second. Regarding the availability of more

Hatori [20] showed detailed simulation results of applying a complex

computing and processing powers, implementing an FM multipath fil-LMS filter and the CMA for the IQ signal to received FM broadcast

ter for a receiver with an SDR frontend and a computer by the adaptive

signals in 1985. Kammeyer [21] shows an optimization method ofcancellation of the interfering signals becomes a practical solution forthe complex equalizer coefficients of the CMA in 1986. Hayashi [22]improving the general reception quality of the FM broadcast signals.

announced an FPGA-based FM stereo receiver prototype production

In this paper, the author describes the design and implementa-

in 2018, including a similar multipath filter algorithm with CMA.

tion details of an FM multipath filter on the author’s SDR software

There are other methods to reduce the multipath-derived distortion

called airspy-fmradion [8] and evaluates how the filter has improvedof the received FM broadcast signals than CMA. Ishigaki, Muraoka,

the reception signal quality of FM broadcast stations. In Section 2,

and Hagiwara [23] presented a multipath reduction system based on

the author introduces and explains the related work. In Section 3,

a pre-calculated model of a single reflected wave with analog pro-the author describes the design details of the FM multipath filter ofcessing circuits in 1980. Otani, Tong, and Akaiwa [24] proposed aairspy-fmradion. In Section 4, the author shows the performance

multiple antenna diversity FM broadcast reception system to mini-

evaluation of the implemented filter. Finally, in Section 5, the author

mize the distortion power of the stereo pilot signal. Moir and Petti-

concludes the paper and shows the issues for future work.

grew [25] showed a signal regeneration method with their proposed2

amplitude-locked loop in analog and SDR circuits without adaptive

Related Workfilters specifically for mobile reception environments in 2014. Chen,ITU-R presents the overall specification that defines the FM stereo

Baker, McCarthy, and Thyssen [26] proposed a noise estimation andbroadcast signal as the Recommendation BS.450 [9] Section 2.2

audio noise reduction method based on the observed L-R stereo sub-(Pilot-Tone System). This specification was initially an approved

carrier and the modulated signals in 2015.

standard of US FCC in April 1961 [10] and has been the national
standard in Japan since July 1968 [11].

3

FM Multipath Filter Design for SDR airspyfmradion

The relationship between time delays caused by the multipath propagation and the result of demodulated FM signals has been analyzed

In this section, the author explains the design details of the SDR

both in analytic and numerical manners. Engel [12] proposed a model

airspy-fmradion and the FM multipath filter.

of demodulated signals from the multipath structure of the propaga-

3. 1

Overview of airspy-fmradion

tion channel in 1969. Ohara [13] showed an analysis of the desired-

The SDR airspy-fmradion is a forked software from two previous

to-undesired channel ratio (D/U ratio) and the multipath distortion

SDR open source software packages called SoftFM [27] and NG-

and how the distortion significantly affected the subjective listening

SoftFM [28]. SoftFM implemented an FM stereo SDR receiver withquality of the stereophonic signal by a computer simulation in 1980.

the SDR frontend support for RTL-SDR [29], [30] and the basic sup-Kondo and Date [14] detailed simulation results of applying a transver-port of stereo signal decoding of the Pilot-Tone System. NGSoftFM
enhanced the SoftFM with support for various frontends such as1

According to the author’s survey as of September 2021, only one consumer receiver [6]and one professional monitor receiver [7] have the function of FM multipath filtering. The
implementation details of the filters are unknown because they are proprietary products.

AirSpy R2/Mini [31], [32].
Figure 1 shows the architectural diagram of airspy-fmradion. The
SDR software processes the IQ signal input from either the SDR fron-- 18 -

—2—

+

ln

abs

input

RF signal-1

SDR frontend device

Recorded IQ signal file
g

Z -1

exp

IQ signal input+

airspy-fmradion software

K

X

Audio signal output
Other software
via stdio

PortAudio

abs: absolute value (for IQ signal: sqrt(I2+Q2)
ln: natural logarithm (logex)

WAV/binary audio file

Virtual audio
devicedriverFig. 3

airspy-fmradion functional diagram.

Table 1

airspy-fmradion specification summary.

A

A: reference levele: error signal
K: step size
g: loop gain
(loop gain does not exceed
the pre-defined maximum value)

IF AGC block diagram for airspy-fmradion FM multipath filter.

IQ signal input

Fig. 1+

outputexp: exponential (ex)Z-1: step time delay

Physicalaudio deviceeX<latexit sha1_base64="E6mCIUWwQFFqml+bVusOuuj8eLw=">AAAB63icbVBNSwMxEJ2tX7V+VT16CRahIpRdEfVY9OKxgv2AdinZNG1Dk+ySZMVl6V/woqCIV/+Qt/4bs20P2vpg4PHeDDPzgogzbVx34uRWVtfWN/Kbha3tnd294v5BQ4exIrROQh6qVoA15UzSumGG01akKBYBp81gdJv5zUeqNAvlg0ki6gs8kKzPCDaZ9FQenXaLJbfiToGWiTcnpepx5+x1Uk1q3eJ3pxeSWFBpCMdatz03Mn6KlWGE03GhE2saYTLCA9q2VGJBtZ9Obx2jE6v0UD9UtqRBU/X3RIqF1okIbKfAZqgXvUz8z2vHpn/tp0xGsaGSzBb1Y45MiLLHUY8pSgxPLMFEMXsrIkOsMDE2noINwVt8eZk0ziveZeXi3qZxAzPk4QiOoQweXEEV7qAGdSAwhGd4g3dHOC/Oh/M5a80585lD+APn6weRs5Dq</latexit>x(k)IQ signal output

Complex FIR filter<latexit sha1_base64="H1dYuLOavp569Dkw99u0aO++kw4=">AAAB63icbVBNSwMxEJ2tX7V+VT16CS1CRSi7Iuqx6MVjBfsB7VKyadqGJtklyQrL0r/gRUERr/4hb/03ZtsetPXBwOO9GWbmBRFn2rju1MmtrW9sbuW3Czu7e/sHxcOjpg5jRWiDhDxU7QBrypmkDcMMp+1IUSwCTlvB+C7zW09UaRbKR5NE1Bd4KNmAEWwyKamMz3rFslt1Z0CrxFuQcq3UPX+d1pJ6r/jd7YckFlQawrHWHc+NjJ9iZRjhdFLoxppGmIzxkHYslVhQ7aezWyfo1Cp9NAiVLWnQTP09kWKhdSIC2ymwGellLxP/8zqxGdz4KZNRbKgk80WDmCMTouxx1GeKEsMTSzBRzN6KyAgrTIyNp2BD8JZfXiXNi6p3Vb18sGncwhx5OIESVMCDa6jBPdShAQRG8Axv8O4I58X5cD7nrTlnMXMMf+B8/QCTOpDr</latexit>y(k)weight vector<latexit sha1_base64="fD6lrsFKHsX8SglMicWy/0Mb9IE=">AAACAHicbZBLSwMxFIUz9VXrq+rSTWgRKkKZEVGXRTcuK9iHdIaSSTNtaJIZkowyDLPxL+hS9+7Erf+kW3+J6WNhWw8EPs49l1yOHzGqtG2PrNzK6tr6Rn6zsLW9s7tX3D9oqjCWmDRwyELZ9pEijArS0FQz0o4kQdxnpOUPb8bz1iORiobiXicR8TjqCxpQjLSxHlyfp09ZZXjSLZbtqj0RXAZnBuVayT19HdWSerf44/ZCHHMiNGZIqY5jR9pLkdQUM5IV3FiRCOEh6pOOQYE4UV46OTiDx8bpwSCU5gkNJ+7fjRRxpRLumyRHeqDmZj7PFrPj0H/ZTqyDKy+lIoo1EXj6cRAzqEM4bgP2qCRYs8QAwpKa2yEeIImwNp0VTCnOYgXL0DyrOhfV8zvTzjWYKg+OQAlUgAMuQQ3cgjpoAAw4eAFv4N16tj6sT+trGs1Zs51DMCfr+xctepnk</latexit>w(k)Supported SDR frontends:

Airspy R2/Mini,

error

Airspy HF+ Dual<latexit sha1_base64="6yS8vr5ezaPwOt81D3cgsK8S3BY=">AAACCXicbZBLS8NAFIUn9VXrK+rSTWgRKkJJRNRl0Y3LCrYWmlAm00k7dB5hZlIIIb/ArUu3uncnbv0V3fpLnD4WtvXAwMe55zKXE8aUKO26Y6uwtr6xuVXcLu3s7u0f2IdHLSUSiXATCSpkO4QKU8JxUxNNcTuWGLKQ4qdweDeZP42wVETwR53GOGCwz0lEENTG6tq2P4ISx4pQwbO8Ojzr2hW35k7lrII3h0q97J+/jOtpo2v/+D2BEoa5RhQq1fHcWAcZlJogivOSnygcQzSEfdwxyCHDKsiml+fOqXF6TiSkeVw7U/fvRgaZUikLTZJBPVALs5Dly9lJ6L9sJ9HRTZARHicaczT7OEqoo4UzqcXpEYmRpqkBiCQxtztoACVE2pRXMqV4yxWsQuui5l3VLh9MO7dgpiI4AWVQBR64BnVwDxqgCRAYgVfwBt6tZ+vD+rS+ZtGCNd85Bguyvn8BhYqdWA==</latexit>

Coeﬃcient
updatePort [33]/Discovery [34], RTL-SDR, and reading recorded IQ signals from
WAV and binary files

"(k)

Error
calculation

Supported operating systems: macOS, Linux (Ubuntu/Debian), and Raspberry Pi OS
Downsampled IF bandwidth from SDR frontends: 384kHz for FM broad-Fig. 4Adaptive complex FIR filter block diagram for airspy-fmradion FM
multipath filter.

cast 2, 192kHz for the other modes
Received output formats: 48kHz mono/stereo audio data in 16-bit signed
integer or 32-bit floating-point valuesof the frontend 3, so the output sampling rate has to be normalized to

Output destinations: binary raw data stream to the standard output; files

the IF sampling rate of 384kHz by a fractional downsampler of thein WAV/RF64 [35] and the raw binary format, with the optional timestamp

libsoxr [38] library and be optionally applied the IQ low-pass filter

text file; and OS audio output devices including physical audio devices andvirtual device drivers through PortAudio [36] library(LPF) for a narrower signal bandwidth to reduce interference.
3. 2

FM Multipath Filter Design Details

In this section, the author explains the FM multipath filter part

IQ signal
from SDR frontend
or a recorded file

shown in Figure 2 and the design details. The multipath filter part is
split into two blocks: the IF automatic gain control (AGC) and the

Source driverfor IQ signal

Downsampler +LPF(IQ signal to
384kHz IF)

FM demodulator +FM stereo decoder

Downsampler +LPF(384kHz IF to
48kHz audio)

adaptive complex FIR filter with CMA.
Figure 3 shows the IF AGC algorithm 4 prepended before the FM
broadcast multipath filter 5. This AGC algorithm, called logarithmic-

IF AGC

Adaptive
complex FIR filter
with CMA

L+R and L-Rprocessing
for left and rightaudio channels

loop AGC, aims to minimize the difference between the complex
amplitude of the input IQ signal to the reference level 𝐴 6, which is

FM multipath filter part of airspy-fmradion

suitable for further processing by the multipath filter. The logarithmic-

Audio signal output

Fig. 2loop AGC algorithm performs well for both AM and FM, which preserves the input amplitude change necessary for later processing inairspy-fmradion FM broadcast receiver diagram.

the multipath filter.

tend devices or the recorded IQ signal file and outputs the demodulated
audio for the multiple output objects.
Table 1 shows the specification summary of airspy-fmradion [37].
This paper focuses on describing the FM broadcast functions ofairspy-fmradion and the experimentation results.
Figure 2 shows the software components within airspy-fmradion
when the software processes FM broadcast signal. The source driveris specific for each frontend device, including the IQ signal file reader.
The output sample rate of the source driver differs due to the limitation

Figure 4 shows the adaptive complex FIR filter block for the FM
broadcast multipath filter. This filter has the coefficient vector of3

For example, the valid sampling rate of Airspy R2 is either 10MHz or 2.5MHz, andfor RTL-SDR, it is above 900kHz and below 3.25MHz. The downsampling ratio is notnecessarily to be an integer, so a fractional downsampler is mandatory.
4

The author modified the algorithm from the original one [39] in the following manners:

the complex amplitude function (of absolute value) replaced the AGC detector; the logarithmic and exponential functions were moved out of the feedback loop, and an addition
replaced a multiplication in the original algorithm for faster computation.
5

The author could not find any previous example of explicitly prepending an AGC

before the FIR filter in the surveyed documents.
6- 19 -𝐴 is set to 1.0 for simplifying the later multipath filter design.

—3—

length 𝑁, the same as the number of FIR filter coefficients. The filter

Table 2

Reception conditions for airspy-fmradion FM multipath filter.

output 𝑦(𝑘) at the discrete timing value 𝑘 changes as the filter input

Location𝑥(𝑘) changes to minimize the error 𝜀(𝑘) so that the 𝑦(𝑘)’s complex

Antenna

35.67N, 139.63E (accuracy: ±0.01 degrees)

mounted horizontally at 8m-high above the ground with 5m×5

amplitude is closest to unity (1.0), as configured in the prepended

counterpoise wires, directed to 15 degrees east from the true

AGC stage.

north (antenna directivity: approx. east-west), with 15m 5D-

The following explains the complex LMS algorithm [19] [17, Sec-FB coaxial cable, 1:2 splitter, and 20cm RG-316/u coaxial cabletion II]. Given the discrete time complex input 𝑥(𝑘) at time 𝑘, theFIR filter output 𝑦(𝑘) can be described as𝑦(𝑘) = 𝒙(𝑘) ! 𝒘(𝑘)Receivers

Airspy HF+ Discovery and RTL-SDR V3

Softwareairspy-fmradion Version 20210817-0, compiled with gcc
10.3.0, and libvolk [43] Version 2.4(1)

Computer(2)

and 𝒘(𝑘), the size-𝑁 complex vector of FIR filter coefficient, is givenby𝒘(𝑘) = [𝑤0 (𝑘), 𝑤1 (𝑘), . . . , 𝑤 𝑁 −1 (𝑘)] !

Intel NUC NUC10i7FNH with Intel Core i7-10710U CPU,
16GB RAM, Linux 5.11.0-31-generic, Ubuntu 21.04 x86_64

where 𝒙(𝑘) is the size-𝑁 complex vector of FIR filter input𝒙(𝑘) = [𝑥(𝑘), 𝑥(𝑘 − 1), . . . , 𝑥(𝑘 − 𝑁 + 1)] !

Diamond Antenna AZ510FMH (91cm-length whip antenna),

where #𝒙(𝑘)# is the 𝐿 2 norm of 𝒙(𝑘).

Note well that the frequency of coefficient update of LMS/NLMS

algorithms does not have to be every time the filter calculation is done
(i.e., in the filter sample rate), regarding the slower time variance of(3)

the radio wave propagation environment.

4

where the index 𝑘 shows that the coeffients are adjustable in time.
The complex error value 𝜀(𝑘) to the reference amplitude level ofunity is given by

Evaluation of the FM Multipath Filter
In this section, the author shows the experimentation results of theairspy-fmradion FM multipath filter and the evaluation.
2

𝜀(𝑘) = {#𝑦(𝑘)# − 1} · 𝑦(𝑘)

4. 1

(4)

Measurement Indices

The author introduces two methods for measuring reception

where #𝑦(𝑘)# is 𝐿 2 norm of 𝑦(𝑘).

𝒘(𝑘 + 1), the updated coefficient vector for time 𝑘 + 1 from 𝒘(𝑘)is given byquality.

The first one is total harmonic distortion plus noise(THD+N) [44], [45]. THD+N is suitable for measuring multipathinduced distortion of a pure sine-wave transmission, which happens𝒘(𝑘 + 1) = 𝒘(𝑘) − 𝜇𝜀(𝑘)𝒙 ∗ (𝑘)regularly and periodically on NHK-FM time tone transmission of(5)

440Hz and 880Hz. Research of aural detection thresholds [46] sug-

where each element of 𝒙 ∗ (𝑘) is the complex conjugate of the respec-tive element of 𝒙(𝑘) and 𝜇 is the adaptation gain or step size, whichgests THD of 0.6% is detectable and affects the subjective evaluationof listening audio quality.

determines the convergence characteristics.

The second one is Quadrature Multipath Monitor (QMM) [47].

In LMS, choice of the fixed adaptation gain value 𝜇, which is also

Decoding the L-R audio signal from the received composite audio

critical for the stability of the algorithm, is not trivial and the optimal

requires multiplying the regenerated 38kHz clock from the received

value is difficult to determine. The author decided to use the Normal-

19kHz pilot signal with the zero phase shift [9, Section 2.2.2.5]. On

ized LMS (NLMS) algorithm [40], a variable-step LMS (VS-LMS)

the other hand, multiplication of the 𝜋/2-shifted regenerated 38kHz

algorithm reflecting the input data amplitude, to maximize the stability

clock to the received composite audio signal should not generate any

and faster convergence. Bismor, Czyz, and Ogonowski [41] showed

output in an ideal propagation condition. However, various distor-

NLMS had an unrivaled advantage for real-time nonstationary datation and interference results can be observed from the result of thisprocessing by comparing 17 VS-LMS algorithms including NLMS.

multiplication. QMM employs this multiplication result as the index.

In NLMS, 𝜇 for time 𝑘 is calculated dynamically with the vector

QMM is applicable for measuring generic broadcasting content qual-𝒙(𝑘) and is given byity, provided that the L-R signal power is significant, such as that of

𝜇 = 𝛼/#𝒙(𝑘)# 2 = 𝛼/(𝒙(𝑘) ! 𝒙 ∗ (𝑘))music and commercial advertisements.

(6)

4. 2

Experiment Setup and Conditions

where 𝛼 is a real number constant to determine the adaptation gain.

Table 2 shows the experiment setup 7. The author decided to use

Slock [42] proved NLMS converges when 0 < 𝛼 < 2. From the equa-a simple whip antenna to reproduce the condition of casual reception

tions (5) and (6), the coefficient update algorithm of complex NLMS

without the beam antennas. The computer in the table had adequate

is given by

performance in processing the incoming signal without dropping the𝒘(𝑘 + 1) = 𝒘(𝑘) − 𝛼𝜀(𝑘)𝒙 ∗ (𝑘)#𝒙(𝑘)# 2

data from the SDR frontends.
(7)
7- 20 -The exact reception location is hidden to protect the author’s privacy.

—4—

Table 3

FM broadcast station antenna information.

NHK-FM Tokyo (JOAK-FM 82.5MHz) [48]
At Tokyo Skytree, 35.710139N, 139.810833E (∼ 17km east of the reception
location); Antenna ground height: 540m; Output: 7kW, ERP: 57kWInterFM Tokyo (JODW-FM 89.7MHz) [49]At Tokyo Tower, 35.658611N, 139.745556E (∼ 11km east of the reception
location); Antenna ground height: 320m; Output: 10kW, ERP: 13kW
Table 4

Parameters of airspy-fmradion FM multipath filter.

Overall sampling rate
IF AGCNLMS
FIR filter

384kHz (∼ 2.6𝜇s/sample)

initial gain

1.0

maximum gain

10000.0 (80dB)

reference level 𝐴

1.0

step size 𝐾

0.001

adaptation gain 𝛼

0.1

coefficient update rate

48kHz (once in 8 samples)𝒘 (𝑘) initial values

1 + 0 𝑗 at the reference position,( 𝑗 2 = −1)

Fig. 5NHK-FM Tokyo time tone spectrum without the multipath filter.

0 + 0 𝑗 for all the other elements

𝒘 (𝑘) value conditions: for 𝑆-stage filter, the reference position is 𝑘 = 3𝑆 +1,

with 3𝑆 + 1 elements of the past samples and 𝑆 − 1 elements of the futuresamples; the filter order 𝑁 = 4𝑆 + 1; and the imaginary part value is always
0 for the coefficient at the reference position element 𝑤3𝑆+1 (𝑘).

Table 3 shows the FM broadcast station antenna locations and details used for the experimentation. The distance between the reception
location and the antennas was less than 20km. The direction was approximately at the east, within the directivity range of the antenna forreception, and many reflected radio waves from the local buildings
were expected. The signal strength measured by Airspy HF+ Discovery for NHK-FM Tokyo and InterFM Tokyo were # − 24dBFS 8,
which was adequate for the multipath filter evaluation.

Fig. 6 NHK-FM Tokyo time tone spectrum with the 15-stage multipath filter.

Table 4 shows the parameters of the FM multipath filter. The
IF AGC configuration retained the amplitude variance information

decoding the played-back signal data in different conditions, such asnecessary for the multipath filtering. The author empirically set thechanging the number of filter stages.

NLMS adaptation gain to 0.1 for stability. This gain value was much

4. 3

Experiment Results

higher than the fixed gain value 𝜇 = 10−5 in [20], but the filter re-

Figure 5 shows the received audio spectrum of an 880Hz time tone

mained stable during the real-world signal processing of NHK-FM

output broadcast by NHK-FM Tokyo at 11:00 Japan Time (02:00

and InterFM radio waves at the reception location. Results of theUTC), September 7, 2021, by WaveSpectra [51]. Figure 6 shows thereception with a 15-stage filter showed the QMM output of the fil-audio spectrum after the 15-stage multipath filter was applied. The

ter converged within 0.3 seconds from the beginning of the reception.

harmonics of 880Hz tones were reduced by the filter more than 10dB.
The author experimented by incrementally changing the number of

The coefficient update rate was also empirically set to 48kHz to reduce

filter stages from 0 to 10 by one, and 15, 20, 30, 40, and 50. Fig-

the processing load while maximizing the noise reduction.
The reference point in the initial coefficient vector is where theures 7, 8, and 9 show how the THD+N level 9 and the QMM output

element value is first set to unity and whose imaginary part is alwaysof the 880Hz time tone, and the noise level of no-sound output in thereset to zero during the filter processing for the filter stability. The

time tone announcement changed by the number of filter stages. The

element is intentionally positioned to reflect the expertise that the

QMM level decreased maximum in 10.6dB, and the no-sound noise

past samples affected more than the future ones. The author recordedlevel decreased maximum in 2.26dB. The similarity of THD+N and

the IQ output signal from the SDR frontends and experimented by

9

THD+N was measured by WaveSpectra [51] 1.51, for 48kHz 32bit floating-point stereo

format, with the FFT of 16384 samples and the Hanning window, left channel, at the point
8

The unit dBFS stands for decibels relative to full scale (0dBFS) [50].

of 480000 samples (10 seconds) from the beginning.

- 21 -

—5—

−34

1.3

−42

QMM level [dBFS]−38

max: stages=0, QMM=−35.6dB; min: stages=15, QMM=−48.5dB

−46

0.9
0.7
0.3

−50

0.5

THD+N [%]

1.1

max: stages=0, THD+N=1.22%; min: stages=15, THD+N=0.33%

0

10

20

30

40

50

0

10

Number of multipath filter stages

THD+N of NHK-FM Tokyo time tone.

−44

Fig. 7

20

30

40

50

Number of multipath filter stages

Fig. 11

QMM output of InterFM Tokyo received by RTL-SDR.

−48
−50
−52
−56

−54

QMM level [dBFS]−46

max: stages=0, QMM=−44.6dB; min: stages=20, QMM=−55.2dB

0

10

20

30

40

50

Number of multipath filter stages

Fig. 8QMM output of NHK-FM Tokyo time tone.
Coefficients of the FIR filter for NHK-FM Tokyo reception.

max: stages=0, RMS=−71.13dB; min: stages=4, RMS=−73.39dB; at stages=10, RMS=−72.92dB−72.0

nals received by two different SDR frontends at two different sources.
Figure 10 shows the result of the QMM level after 20-second reception−73.0

from 16:13:12 Japan Time (07:13:12 UTC) on September 7, 2021,
by Airspy HF+ Discovery. Figure 11 shows RTL-SDR’s 20-second−74.0

Noise level in RMS [dBFS]−71.0

Fig. 12

reception from 9:48 Japan Time (00:48 UTC) on September 13, 2021.
0

10

20

30

40

50

The contents of both receptions were pop music. In either case, theNumber of multipath filter stages

QMM level decreased maximum in 13 ∼ 14dB. This result suggests
Fig. 9that the proposed filter also worked well on the musical contents.

RMS level of NHK-FM Tokyo no-sound output.

Figure 12 shows the coefficient vector in polar form for the NHKFM Tokyo time tone reception after 3600 blocks (∼ 0.96 seconds) of−35

agation environment. Excluding the signal at the reference point, the−39well with the Rayleigh fading model [52]. Furthermore, the amplitude−43

amplitude of the past samples was exponentially decreasing, which fitsof the future samples from the reference point is approximately 1/10thof those of the past samples, which suggests that allocating a shorter−47

QMM level [dBFS]−31

reception, showing the estimated delay profile of the multipath propmax: stages=0, QMM=−32.2dB; min: stages=8, QMM=−46.0dB

0

10

20

30

40

vector for future samples does not hamper the filter performance. On

50

Number of multipath filter stages

the other hand, the higher amplitude level of both past and future ends
in the coefficients suggests that a larger vector size is required forFig. 10

QMM output of InterFM Tokyo received by Airspy HF+ Discovery.

more accurate delay profiling of the multipath propagation.
4. 4

Observations

The author measured the processing performance difference on the

QMM level characteristics suggests that either one could be used ascomputer shown in Table 2 with how the single-instruction multiple-

an index for distortion measurement of the received audio signal.
The author also experimented with how the QMM output level

data (SIMD) parallelization library libvolk [43] was configured andchanged by changing the number of filter stages for InterFM Tokyo sig-

optimized for each computer. The CPU usage with 100 stages of- 22 -—6—

the FM multipath filter given the optimal configuration for libvolk

which proved that the filter was a practical solution for FM broadcast

was ∼ 19% of a single core when the scaling_governor [53]listeners with simple antennas to improve their listening quality. The

was performance mode and the scaling_max_freq was 4700000

author also showed that implementing the filter on modern computers(4.7GHz). On the other hand, the CPU usage was ∼ 43% without

was feasible by applying CPU usage optimization and the empiricalto use generic functions written in C. This observation suggests thatOn the other hand, the proposed multipath filter and the quality

floating-point vector calculation still consists of significant CPU usage

measurement indices do not cover all the possible conditions of FM

and that optimization is crucial 10. The author successfully executed

broadcast reception, such as that via the cable TV links. For such

airspy-fmradion on a Raspberry Pi 4 Model B [55] with enabling thecases, alternative quality indices and filtering methods such as mea-

multipath filter by the libvolk optimization.

suring the distortion of the 19kHz stereo pilot-tone signal and setting

the SIMD optimization, when all libvolk functions were configured

The author also observed that the prepended IF AGC made themultipath filter more robust in receiving weaker station signals bykeeping the signal amplitude closer to the target value at the FIR filter

parameter choice.

the adaptive filter to minimize the distortion should be considered.

Acknowledgment

input. The author learned the effect while listening to radio stations

The author thanks Youssef Touil, Teruhiko Hayashi, Takehiro

in Yokohama 11, which had weaker signals than those in Tokyo andSekine, and the members of Pepabo R&D Institute for constructive

whose line-of-sight radio waves were blocked behind large buildings.

reviews and discussions during the development of airspy-fmradion.

CMA requires the assumption that the propagation channel preserves the amplitude change of modulated signals. This assumption

References

is false for some propagation channels. For example, the FM broad-[1]

cast signals relayed through the cable TV links are through a hard
limiter which sets the signal amplitude to a fixed value and removes[2]

the information in the amplitude change. The author observed thatthe proposed multipath filter in this paper was not effective for the[3]signals received through the cable TV links.
While QMM is effective as a quality index of highly modulated
signals such as pop music, some contents such as classical music and[4]news reading contain low-level modulated signals and do not necessarily contain rich L-R components. Under such circumstances, anothermeasurement index of multipath distortion is necessary. Measuring
the THD+N of the 19kHz pilot tone of the FM broadcast [24] after filtering the tone signal to remove other modulation signals is a possible
candidate, though handing the signal delay between the demodulated
pilot tone and the error calculation of the FIR filter to minimize the

[5]

[6]

[7]

distortion will be a hard-to-solve problem.

5

Conclusions[8]

This paper described the historical significance of reducing multi-[9]path distortion for FM broadcast reception and presented the theoretical background, design details, and evaluation of the FM multipath
filter of the author’s open-source SDR receiver airspy-fmradion.

[10]

The experiment of the proposed multipath filter with the real-world
FM broadcast stations, not by the simulated signals such as those in
the previous research papers, showed that the filter significantly re-[11]

duced the multipath distortion to improve the objective audio quality
indices such as THD+N and QMM output level. The proposed mul-

[12]

tipath filter could reduce the THD+N from above 1% to below 0.6%,
10

Takehiro Sekine contributed a function specific to LMS calculation for libvolk called

volk_32fc_x2_s32fc_multiply_conjugate_32fc [54] for making a better use of
libvolk, specifically for ARM NEON instructions.
11

Yokohama City, Kanagawa, is approximately 35 ∼ 42km from the reception location.

- 23 -[13]

The Editors of Encyclopaedia Britannica, “Edwin H. Armstrong”. Accessed 2021-10-08. https://www.britannica.com/biography/
Edwin-H-Armstrong
M.S. Corrington, “Frequency-Modulation Distortion Caused by Multipath Transmission,” Proceedings of the IRE, vol.33, no.12, pp.878–
891, 1945. DOI: 10.1109/JRPROC.1945.232568.
NHK Broadcasting Culture Research Institute, “Rekishi [History of
Broadcasting Culture Research Institute] (in Japanese)”. Accesssed2021-10-05. https://www.nhk.or.jp/bunken/about/history.
html
Tokyo FM, “Enkaku [History of Tokyo FM] (in Japanese)”. Accesssed2021-10-05. https://www.tfm.co.jp/company/profile/index4.
html
The Mainichi, “44 of 47 AM radio stations in Japan to switch to FM by2028”. June 16, 2021, Accessed 2021-10-05. https://mainichi.
jp/english/articles/20210616/p2a/00m/0na/013000c
Accuphase Laboratory, Inc., “DDS FM STEREO TUNER T-1200
Catalog (in Japanese)”. Accessed 2021-10-05. https://www.
accuphase.co.jp/cat/t-1200.pdf
RF-Design Co., Ltd., “FMDR-600 Catalog [Full Digital Multipath Cancel FM Studio Monitoring Receiver] (in Japanese)”. Accessed 2021-10-05. https://www.rf-design.co.jp/products/
detail.php?product_id=32
K. Rikitake, “airspy-fmradion”. Accessed 2021-10-05. https://github.com/jj1bdx/airspy-fmradion
ITU-R, “Recommendation BS.450: Transmission standards for FM
sound broadcasting at VHF (current version in force: BS.450-4(10/2019))”. Accessed 2021-10-05. https://www.itu.int/rec/RREC-BS.450-4-201910-I/en
J.P. van Duyne, “A Modulator for The New FM Stereo System”. Originally published as The Notebook, Number 30, Fall 1961, Boonton
Radio Corporation, Boonton, NJ, USA, Accessed 2021-10-05. http://www.hparchive.com/Boonton/BRC-The-Notebook-30.pdf
S. Sakakibara, “1-2 Technical Standard of Stereophonic Broadcasting(in Japanese),” The Journal of the Institute of Television Engineers ofJapan, vol.34, no.4, pp.269–271, 1980. DOI: 10.3169/itej1978.34.269.
J.S. Engel, “Effects of multipath transmission on the measured propagation delay of an FM signal,” IEEE Transactions on Vehicular Technology, vol.18, no.1, pp.44–52, 1969. DOI: 10.1109/T-VT.1969.23397.
M. Ohara, “Distortion and Crosstalk Caused by Multipath Propagation in Frequency-Modulation Sound Broadcasting,” IEEE Transactions on Broadcasting, vol.BC-26, no.3, pp.70–81, 1980. DOI:
10.1109/TBC.1980.266372.

—7—

[14]

[15]

[16]

[17]

[18]

[19]

[20]

[21]

[22]

[23]

[24]

[25]

[26]

[27]
[28]
[29]

[30]

[31]
[32]
[33]
[34]

S. Kondo and H. Date, “Simulation of an Echo Distortion Automatic
Canceller in an FM Broadcasting Receiver (in Japanese),” IEICE Trans.
Commun. (Japanese Edition), vol.J66-B, no.3, pp.273–280, 1983.
Godard, D., “Self-Recovering Equalization and Carrier Tracking in
Two-Dimensional Data Communication Systems,” IEEE Transactions
on Communications, vol.28, no.11, pp.1867–1875, 1980. DOI:
10.1109/TCOM.1980.1094608.
J. Treichler and B. Agee, “A new approach to multipath correction of constant modulus signals,” IEEE Transactions on Acoustics,
Speech, and Signal Processing, vol.31, no.2, pp.459–472, 1983. DOI:
10.1109/TASSP.1983.1164062.
J. Treichler and M. Larimore, “New processing techniques based on theconstant modulus adaptive algorithm,” IEEE Transactions on Acoustics, Speech, and Signal Processing, vol.33, no.2, pp.420–431, 1985.
DOI: 10.1109/TASSP.1985.1164567.
B. Widrow, J.M. McCool, M.G. Larimore, and C.R. Johnson, “Stationary and nonstationary learning characteristics of the LMS adaptive
filter,” Proceedings of the IEEE, vol.64, no.8, pp.1151–1162, 1976.
DOI: 10.1109/PROC.1976.10286.
B. Widrow, J. McCool, and M. Ball, “The complex LMS algorithm,”
Proceedings of the IEEE, vol.63, no.4, pp.719–720, 1975. DOI:
10.1109/PROC.1975.9807.
T. Mochizuki and M. Hatori, “Automatic Cancelling of FM Multipath
Distortion Adaptive Digital Filter (in Japanese),” The Journal of theInstitute of Television Engineers of Japan, vol.39, no.3, pp.228–234,
1985. DOI: 10.3169/itej1978.39.228.
K. Kammeyer, “Multipath echo cancellation in FM transmission using adaptive FIR filters,” ICASSP ’86. IEEE International Conferenceon Acoustics, Speech, and Signal Processing, vol.11, pp.1305–1308,
1986. DOI: 10.1109/ICASSP.1986.1168732.
T. Hayashi, “Direct Sampling FM SDR no Seisaku Dai 1kai [Buildinga Direct Sampling FM SDR, Part 1] (in Japanese),” Transistor Gijutsu,
vol.55, no.11, pp.151–156, Nov. 2018.
Y. Ishigaki, T. Muraoka, and M. Hagiwara, “Electronic Reductionof FM Distortion Caused by Multipath Transmission,” IEEE Transactions on Consumer Electronics, vol.CE-26, no.1, pp.28–35, 1980.
DOI: 10.1109/TCE.1980.273317.
T. Otani, F. Tong, and Y. Akaiwa, “Adaptive Combining Techniques
to Minimize Noise and Distortion for an FM Broadcasting Receiverwith Array Antenna (in Japanese),” IEICE Trans. Commun. (Japanese
Edition), vol.J82-B, no.11, pp.2195–2198, 1999.
T.J. Moir and A.M. Pettigrew, “A Multiplicative Cancellation Approach to Multipath Suppression in FM Radio,” Wireless PersonalCommunications, vol.75, no.2, pp.799–819, March 2014. DOI:
10.1007/s11277-013-1392-5.
J.-H. Chen, T. Baker, E. McCarthy, and J. Thyssen, “System architectures and digital signal processing algorithms for enhancing theoutput audio quality of stereo FM broadcast receivers,” 2015 IEEE
International Conference on Acoustics, Speech and Signal Processing(ICASSP), pp.226–230, 2015. DOI: 10.1109/ICASSP.2015.7177965.
J. van Rantwijk, “SoftFM”. Accessed 2021-10-06. https://github.
com/jorisvr/SoftFM
E. Griffiths, “NGSoftFM”. Accessed 2021-10-06. https://github.
com/f4exb/ngsoftfm
RTL-SDR.COM, “Buy RTL-SDR Dongles (RTL2832U)”. Accessed2021-10-06. https://www.rtl-sdr.com/buy-rtl-sdr-dvb-tdongles/
RTL-SDR.COM, “RTL-SDR Blog V3 Datasheet”.
Accessed
2021-10-06. https://www.rtl-sdr.com/wp-content/uploads/
2018/02/RTL-SDR-Blog-V3-Datasheet.pdf
airspy.com, “Airspy R2”. Accessed 2021-10-06. https://airspy.
com/airspy-r2/
airspy.com, “Airspy Mini”. Accessed 2021-10-06. https://airspy.
com/airspy-mini/
airspy.com, “Airspy HF+ Dual Port”. Accessed 2021-10-06. https://airspy.com/airspy-hf-plus/
airspy.com, “Airspy HF+ Discovery”. Accessed 2021-10-06. https://airspy.com/airspy-hf-discovery/- 24 -

[35]

[36]
[37]

[38]
[39]

[40]

[41]

[42]

[43]
[44]

[45]

[46]

[47]
[48]

[49]

[50]

[51]
[52]

[53]

[54]

[55]

ITU-R, “Recommendation BS.2088: Long-form file format for the international exchange of audio programme materials with metadata (current version in force: BS.2088-1 (10/2019))”. Accessed 2021-10-07.
https://www.itu.int/rec/R-REC-BS.2088-1-201910-I/en
R. Bencina and P. Burk, “PortAudio”. Accessed 2021-10-07. https://github.com/PortAudio/portaudio
K. Rikitake, “Design and implementation of airspy-fmradion (inJapanese),” PROPAGATION Edition 9, ed. by S. Hasegawa, pp.103–
112, Totsuka DXers Circle, 2021. Accessed 2021-10-07. http://mybcl-life.sakura.ne.jp/PROPAGATION.htm
R. Sykes, “The SoX Resampler Library”. Accessed 2021-10-08.
https://sourceforge.net/projects/soxr/
MathWorks, “comm.AGC: Adaptively adjust gain for constant signal
level output”. Accessed 2021-10-07. https://jp.mathworks.com/
help/comm/ref/comm.agc-system-object.html?lang=en
J. Nagumo and A. Noda, “A learning method for system identification,”
IEEE Transactions on Automatic Control, vol.12, no.3, pp.282–287,
1967. DOI: 10.1109/TAC.1967.1098599.
K.C. Dariusz Bismor and Z. Ogonowski, “Review and Comparison of Variable Step-Size LMS Algorithms,” International Journalof Acoustics and Vibration, vol.21, no.1, pp.24–39, 2016. DOI:
10.20855/ijav.2016.21.1392.
D.T.M. Slock, “On the convergence behavior of the LMS and the normalized LMS algorithms,” IEEE Transactions on Signal Processing,vol.41, no.9, pp.2811–2825, 1993. DOI: 10.1109/78.236504.
GNU Radio Project, “Vector-Optimized Library of Kernels (VOLK)”.
https://www.libvolk.org/
W. Kester, “Tutorial MT-003: Understand SINAD, ENOB, SNR,
THD, THD + N, and SFDR so You Don’t Get Lost in the Noise
Floor”. Accessed 2021-10-11. https://www.analog.com/media/
en/training-seminars/tutorials/MT-003.pdf
I.V. Blagouchine and E. Moreau, “Analytic Method for the Computation of the Total Harmonic Distortion by the Cauchy Methodof Residues,” IEEE Transactions on Communications, vol.59, no.9,
pp.2478–2491, 2011. DOI: 10.1109/TCOMM.2011.061511.100749.
Y. Tannaka, K. Muramori, M. Kohashi, and T. Koshikawa, “Correlations between harmonic distortion, sound field characteristics andreproduced sound quality change in listening tests for loudspeakers,”
Journal of the Acoustical Society of Japan (E), vol.11, no.1, pp.29–42,
1990. DOI: 10.1250/ast.11.29.
B. Beezley, “Quadrature Multipath Monitor”. Accessed 2021-10-11.
http://www.ham-radio.com/k6sti/qmm.htm
Wikipedia contributors, “Tokyo Sky Tree (in Japanese)”. Accessed2021-10-13. https://ja.wikipedia.org/w/index.php?title=%E6%9D%B1%E4%BA%AC%E3%82%B9%E3%82%AB%E3%82%A4%E3%83%84%
E3%83%AA%E3%83%BC&oldid=85876472
Wikipedia contributors, “InterFM897 (in Japanese)”. Accessed2021-10-13. https://ja.wikipedia.org/w/index.php?title=
InterFM897&oldid=85924436
Wikipedia contributors, “DBFS — Wikipedia, The Free Encyclopedia”. Accessed 2021-10-11. https://en.wikipedia.org/w/
index.php?title=DBFS&oldid=1044652777
efu, “WaveSpectra”. Accessed 2021-10-13. https://www.efu.jp.
net/soft/ws/ws.html
R. Haas, “Samples of a Rayleigh-Fading Multipath Channel”.
Accessed 2021-10-12. http://www.wirelesscommunication.nl/
reference/chaptr03/channel.htm
ArchWiki Maintenance Team, “ArchLinux: CPU frequency scaling”.
Accessed 2021-10-11. https://wiki.archlinux.org/
title/CPU_frequency_scaling
T. Sekine, “kernels:
add volk_32fc_x2_s32fc_multiply_
conjugate_32fc”. Accessed 2021-10-12. https://github.com/
gnuradio/volk/pull/291
Raspberry Pi Foundation, “Raspberry Pi 4 Tech Specs”. Accessed 2021-10-14. https://www.raspberrypi.com/products/
raspberry-pi-4-model-b/specifications/—8—