Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FM放送とマルチパスを適応フィルタで極めてみた / Solving multipath dis...
Search
Kenji Rikitake
January 16, 2020
Technology
1
3.5k
FM放送とマルチパスを適応フィルタで極めてみた / Solving multipath distortion of FM broadcast by adaptive filters
さくらの夕べ 研究所ナイト 2020年1月16日 発表原稿
Kenji Rikitake
January 16, 2020
Tweet
Share
More Decks by Kenji Rikitake
See All by Kenji Rikitake
SDR Implementation of Analog FM Broadcast Multipath Filter
jj1bdx
0
800
インターネットとオープンな無線技術の今後 / Future of Internet and Open Radio Engineering
jj1bdx
0
1.2k
ソフトウェアラジオとC++ そしてFMエアチェックのための信号解析と数値計算にまつわるよもやま話 / Software radio and C++
jj1bdx
0
1k
SDR時代のFM受信 マルチパスモニタとマルチパスフィルタ / FM broadcast reception with SDR - multipath monitor and multipath filter
jj1bdx
0
610
How I discover a working implementation of clock_nanosleep() for macOS in CPAN Time::Hires
jj1bdx
1
1.2k
Sleeping pays / 1000eng-74th-jj1bdx
jj1bdx
1
49
The BEAM Programming Paradigm
jj1bdx
1
940
Safe randomness: theory and practice
jj1bdx
1
1.4k
ただの失業したインターネット屋は果たして独立開業できたのか? / Did the fired internet engineer finally start up his business successfully as an independent consultant?
jj1bdx
1
450
Other Decks in Technology
See All in Technology
大規模サーバーレスプロジェクトのリアルな零れ話
maimyyym
3
230
encoding/json v2を予習しよう!
yuyu_hf
PRO
1
200
Ruby on Rails の楽しみ方
morihirok
6
2.7k
Part2 GitHub Copilotってなんだろう
tomokusaba
2
820
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
2
160
RubyKaigi NOC 近況 2025
sorah
3
1k
newmo の創業を支える Software Architecture と Platform Engineering
110y
5
540
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
9
1.7k
Why Platform Engineering? - マルチプロダクト・少人数 SRE の壁を越える挑戦 -
nulabinc
PRO
5
450
20 Years of Domain-Driven Design: What I’ve Learned About DDD
ewolff
1
370
Ninno LT
kawaguti
PRO
1
120
Google Cloud Next 2025 Recap アプリケーション開発を加速する機能アップデート / Application development-related features of Google Cloud
ryokotmng
0
250
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
For a Future-Friendly Web
brad_frost
177
9.7k
Rails Girls Zürich Keynote
gr2m
94
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.7k
Designing for humans not robots
tammielis
253
25k
Site-Speed That Sticks
csswizardry
6
540
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Docker and Python
trallard
44
3.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Speed Design
sergeychernyshev
29
940
Practical Orchestrator
shlominoach
187
11k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Transcript
FM์ૹͱϚϧνύεΛ దԠϑΟϧλͰۃΊͯΈͨ Kenji Rikitake / Sakura Lab Night 16-JAN-2020 1
Kenji Rikitake Γ͖͚ͨ ͚Μ͡ ྗ ݈࣍ 16-JAN-2020 ͘͞Βͷ༦ ݚڀॴφΠτ Sakura
Internet Fukuoka Office Fukuoka City, Fukuoka, Japan @jj1bdx Kenji Rikitake / Sakura Lab Night 16-JAN-2020 2
ٕज़࢜ʢใֶ෦ʣ ྗ݈ٕ࣍ज़࢜ࣄॴ ॴ ϖύϘݚڀॴ ٬һݚڀһ ΞϚνϡΞແઢྺ 44 Kenji Rikitake /
Sakura Lab Night 16-JAN-2020 3
FM์ૹϚϧνύεׯবͰԻ͕Ԛ͘ͳΔ • ෳܦ࿏ͷࣹ͕߹͞Εͯܗ͕ཚΕΔ • ৼ෯Ұఆͷ͕ͣৼ෯͕มԽ͢Δ • ৼ෯ͷมԽଈࠁҐ૬ͷΈ • Ґ૬͕ΉͱͱͯෆշͳԻ͕͢Δ Kenji
Rikitake / Sakura Lab Night 16-JAN-2020 4
Kenji Rikitake / Sakura Lab Night 16-JAN-2020 5
͍͚ͬͯͳ͍͜ͱ ৼ෯Ұఆʹڧ੍ͯ͠Έফ͑ͳ͍! Ϧϛολແҙຯ Kenji Rikitake / Sakura Lab Night 16-JAN-2020
6
ݪཧʹ࣮ʹߟ͑Δ ෳͷԆ৴߸͕ׯব͍ͯ͠ΔͷͰ͋Εɺ ͦͷׯবͷٯԋࢉΛߦͬͯऔΓআ͘ Kenji Rikitake / Sakura Lab Night 16-JAN-2020
7
Kenji Rikitake / Sakura Lab Night 16-JAN-2020 8
Kenji Rikitake / Sakura Lab Night 16-JAN-2020 9
ϚϧνύεׯবҎલͷঢ়ଶʹ͢ʹ • ԆͱՃࢉFIRϑΟϧλͰ࣮ݱͰ͖Δ • ࣹͷٯԋࢉΛΕΑ͍ • LMS๏ͰదԠϑΟϧλΛܾఆ • ͷܾఆ݅: ৼ෯Ұఆʹ͢
Kenji Rikitake / Sakura Lab Night 16-JAN-2020 10
దԠϑΟϧλͷ࣮ྫ 1980ʹจൃද 1 ྛًࢯʹΑΔFMDDC-3 ྗʹΑΔairspy-fmradion 1 ݄ ࢤ, Ӌௗ ޫढ़,
దԠσΟδλϧϑΟϧλʹΑΔFMϚϧνύεͻͣΈࣗಈআڈͷҰํࣜ, ςϨϏδϣϯֶձࢽ, 1985, 39 ר, 3 ߸, p. 228-234, ެ։ 2011/03/14, Online ISSN 1884-9652, Print ISSN 0386-6831, h>ps:/ /doi.org/ 10.3169/itej1978.39.228, h>ps:/ /www.jstage.jst.go.jp/arHcle/itej1978/39/3/39_3_228/_arHcle/-char/ja Kenji Rikitake / Sakura Lab Night 16-JAN-2020 11
దԠϑΟϧλΛVOLKͰ࠷దԽ • ίϯύΠϥʹͤΔͱݶք͕͋Δ • VOLK: SIMD໋ྩద༻ϥΠϒϥϦ h-p:/ /libvolk.org/ • ϧʔϓͰॲཧͰ͖ΔͷΛSIMDʹ͢Δ
• ੵԋࢉ6ഒͷߴԽ2 2 Kaby Lake, volk_32fc_x2_dot_prod_32fc(), generic -> u_avx_fma Kenji Rikitake / Sakura Lab Night 16-JAN-2020 12
#if !VOLK for (unsigned int i = 0; i <
m_filter_order; i++) { output += m_state[i] * m_coeff[i]; } #else // VOLK volk_32fc_x2_dot_prod_32fc(&output, m_state.data(), m_coeff.data(), m_filter_order); #endif // VOLK Kenji Rikitake / Sakura Lab Night 16-JAN-2020 13
ྗͷ࣮: airspy-fmradion Airspy HF+RTL-SDRͱMacRaspberry PiͷΈ߹ΘͤͰಈ࡞ ߴڃFMνϡʔφʹඖఢ FMԕڑड৴ʹޮՌ ઈࢍ։ൃத h"ps:/ /github.com/jj1bdx/airspy-fmradion
Kenji Rikitake / Sakura Lab Night 16-JAN-2020 14
Thank you Graphics credits: • Audacity simula.on: Kenji Rikitake •
Mul.path impulse response: I, Cantalamessa, h>ps:/ / commons.wikimedia.org/wiki/ File:Mul.path_impulse_response.png from Wikimedia Commons, licensed CC BY 2.5 Kenji Rikitake / Sakura Lab Night 16-JAN-2020 15