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.7k
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
890
インターネットとオープンな無線技術の今後 / Future of Internet and Open Radio Engineering
jj1bdx
0
1.2k
ソフトウェアラジオとC++ そしてFMエアチェックのための信号解析と数値計算にまつわるよもやま話 / Software radio and C++
jj1bdx
0
1.1k
SDR時代のFM受信 マルチパスモニタとマルチパスフィルタ / FM broadcast reception with SDR - multipath monitor and multipath filter
jj1bdx
0
690
How I discover a working implementation of clock_nanosleep() for macOS in CPAN Time::Hires
jj1bdx
1
1.3k
Sleeping pays / 1000eng-74th-jj1bdx
jj1bdx
1
58
The BEAM Programming Paradigm
jj1bdx
1
1k
Safe randomness: theory and practice
jj1bdx
1
1.5k
ただの失業したインターネット屋は果たして独立開業できたのか? / Did the fired internet engineer finally start up his business successfully as an independent consultant?
jj1bdx
1
460
Other Decks in Technology
See All in Technology
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
93k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
330
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
770
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
260
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
170
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
200
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
480
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
Featured
See All Featured
Believing is Seeing
oripsolob
1
58
Writing Fast Ruby
sferik
630
62k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Deep Space Network (abreviated)
tonyrice
0
65
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Paper Plane (Part 1)
katiecoart
PRO
0
4.3k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Color Theory Basics | Prateek | Gurzu
gurzu
0
200
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
390
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
The SEO identity crisis: Don't let AI make you average
varn
0
330
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