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
Zephyr(RTOS)でARMとRISC-Vのコア間通信をしてみた
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
misoji engineer
March 26, 2026
Technology
360
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Zephyr(RTOS)でARMとRISC-Vのコア間通信をしてみた
ミソジ 2026/3/27
Zephyr Project meetup: Nagoya, Japan
#ZephyrRTOS
misoji engineer
March 26, 2026
More Decks by misoji engineer
See All by misoji engineer
FPGAの開発コンペでZephyrを使ってみた
iotengineer22
0
440
FPC(フレキシブル)基板にZephyr実装してみた。
iotengineer22
0
430
ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介
iotengineer22
1
650
M5Stack CoreS3とZephyr(RTOS)で Edge AIっぽいことしてみた
iotengineer22
0
650
Zephyr(RTOS)でOpenPLCを実装してみた
iotengineer22
0
490
Zephyr RTOS の発表をOpen Source Summit Japan 2025で行った件
iotengineer22
0
1.5k
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
760
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
1.8k
Edge AI Performance on Zephyr Pico vs. Pico 2
iotengineer22
0
550
Other Decks in Technology
See All in Technology
わたしが知り合いゼロの勉強会に 行けるようになるまで
r5ni4
2
790
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
2
190
GopherCon @シアトル に行ってきました
logica0419
0
250
Oracle MCP Servers Explained
thatjeffsmith
1
500
内製AIチャットボット開発で学んだ Datadog Agent Observability活用術
mkdev10
0
140
暗号化?某ファイルストレージはどうなるの!? 3rd Partyとうまく付き合う秘密度ラベル設計
kasada
0
200
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
3
320
平文パスワードはログに“残り” ── 肝心の侵入は“痕跡すら残らない”
kuroneko13
0
130
Kiro WebとCloud Sessions
nagisa53
2
200
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
Introduction to Bill One Development Engineer
sansan33
PRO
0
470
AI駆動開発はどこまで来たのか? ファインディの最新実態調査で読み解く現在地 Devin Con Tokyo
akiratom
1
940
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
330
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
470
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
380
Into the Great Unknown - MozCon
thekraken
41
2.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Statistics for Hackers
jakevdp
799
230k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
790
The World Runs on Bad Software
bkeepers
PRO
72
12k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
360
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Transcript
Zephyr(RTOS)でARMとRISC-Vの コア間通信をしてみた ミソジ 2026/3/27 Zephyr Project meetup: Nagoya, Japan #ZephyrRTOS
自己紹介 名前: ミソジ @misoji_engineer ブログ: エンジニアの電気屋さん(https://misoji-engineer.com/) ハードウェアのエンジニアで、趣味でブログとか書いてます
アジェンダ • このテーマを選んだ理由 • Zephyr(RTOS)のトレンド・強いところ • ARMとRISC-Vでコア間通信したら、面白いのでは? • 実装+テストしてみた Zephyr(RTOS)でコア間通信をしてみた話
このテーマを選んだ理由
Edge AI 去年はZephyr +Edge AIを多く実装してました ▪コンテスト、勉強会、カンファレンスでも良く使っていました (見栄え良い + トレンド性ある + 分かりやすい)
・XIAO nRF54L15 Senseでの音声認識 ・ラズパイPico2Wでのジェスチャー認識
とあるカンファレンスで... 「鉄板」+「良い質問」が来ました ・Edge AIが~ ・Zephyrが~ ・コンテストで~ 自分
とあるカンファレンスで... 「鉄板」+「良い質問」が来ました ・Edge AIが~ ・Zephyrが~ ・コンテストで~ それは Best Choise ですか?
自分
とあるカンファレンスで... 「鉄板」+「良い質問」が来ました ・Edge AIが~ ・Zephyrが~ ・コンテストで~ それは Best Choise ですか?
Zephyrに 実装する意味あるの? 意訳(誤訳): 自分
致命傷で済んだ。 俺も思っていた。マジでクリティカル。
Zephyrである必要は? 正直言うと...無い。 OS無しでもEdge AI処理できる https://www.zephyrproject.org/ もちろん軽量・省電力というEdge AIに有効なRTOSですが... →無理して使う必要は無い。 2025年8月~9月 Edge AI
Earth Guardians https://www.hackster.io/contests/earthguardians 去年参加したEdge AIのコンペでも 自分以外、ほぼArduino(OS無し)で実装
ただ、このままでは悔しいので... Zephyr + Edge AIが有効であるケースを、考えてみる。
Zephyr(RTOS)の トレンド・強いところ
Zephyrの強み SoC内のコア(OS)間の通信・仮想化もトレンドの一つ。 https://www.youtube.com/watch?v=QjiWMYTrMQU 車載系のプラットフォーム例 コア(OS)間の違いを越えた、I/O仮想化(VirtIO) SoC (CPU) ヘテロジニアス (異種混合)化 メイン_Aコア
(Linux) サブ_Mコア (RTOS) 機能安全_Mコア (RTOS) NPU (AI処理) 最近はSoC内の コアの種類・数が多い (使い切れない...) 2025年の OSSJの基調講演
Zephyrのコア間通信のサポート例 色々あるが、IPCが一番ハード寄りで自分好み 項目 IPC (Inter-Processor Communication) VirtIO (Virtual I/O) OpenAMP
(Open Asymmetric Multi-Processing) 定義 コア間通信の総称 I/O仮想化の標準規格 マルチコア連携のフレームワーク レイヤー 物理層・データリンク層(ハード寄り) トランスポート層(抽象化) アプリケーション・管理層(ソフト全体) 主な役割 データの通り道を確保する メモリの使い方の作法を共通化する コアの起動・停止やメッセージを管理する 具体例 共有RAM、メールボックス、割り込み vring(リングバッファ) RemoteProc, RPMsg 一番分かりやすい例えは、**「物流(ロジスティクス)」**です。 • IPC = 道路や橋(物理的なインフラ) • VirtIO = 交通ルールとトラックの規格(運び方の作法) • OpenAMP = 運送会社・物流システム全体(管理と運用) Geminiに聞いてみた IPCとEdgeAIを 絡めればメリットあるのでは...
IPC(Inter-Processor Communication) IPCで「軽量+高速」と「複雑+重い」タスクを分ける 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク
ARMコア ・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ADC (Analog- Digital) AI処理 WIFI,LTE, Bluetooth 高速な信号のため、 他処理の影響を小さくしたいケース ・共有RAM ・メールボックス ・割り込み
ちょうど良いネタ(SoC)がある ▪Nordic Wireless SOC nRF54L15 Nordic nRF54L15は「ARM」と「RISC-V」の2つのコア https://www.nordicsemi.com/Products/nRF54L15 IPCの コア間通信
ARM_M33 RISC-V
ARMもRISC-Vも単独ではテスト済 まだ、IPCのコア間通信はテストしていなかった。 ▪去年nRF54L15のカスタムボードで RISC-VとARM_M33の簡単な(GPIO・UART・PWM)動作確認はしていた プロジェクトURL: https://www.hackster.io/iotengineer22/maker-s-nrf54l15-debug-board-1a6a88
Zephyrの良さが活きる。 RTOSとして、「軽量」かつ「多くのアーキテクチャ」に対応 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク RISC-Vコア
・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ADC (Analog- Digital) AI処理 WIFI,LTE, Bluetooth ・共有RAM ・メールボックス ・割り込み
Zephyrの良さが活きる。 RTOSとして、「軽量」かつ「多くのアーキテクチャ」に対応 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク RISC-Vコア
・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ADC (Analog- Digital) AI処理 WIFI,LTE, Bluetooth ・共有RAM ・メールボックス ・割り込み 各コアに Zephyrを 実装
Zephyrの良さが活きる。 RTOSとして、「軽量」かつ「多くのアーキテクチャ」に対応 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク RISC-Vコア
・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ADC (Analog- Digital) AI処理 WIFI,LTE, Bluetooth ・共有RAM ・メールボックス ・割り込み 各コアに Zephyrを 実装 今回はコレ 今回はコレ
テスト実装してみる シンプルな内容でテスト実装してみた。 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク RISC-Vコア
・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ジェスチャー AI ・共有RAM ・メールボックス ・割り込み ①ARM側でジェスチャーAI処理 ②IPCでデータ共有 *項目とスコア値のみ ③RISC-V側のPWMを変更 ① ② ③ ▪Nordic Wireless SOC nRF54L15
実装+テストしてみた
nRF54L15 + IPC Zephyrのサンプルを調整 + 上手いことEdge AI処理を結合 ①remoteフォルダにRISC-V側の main.c、Makelist、prj.conf ②通常通りARM側の main.c、Makelist、prj.conf
*AIモデルは従来通り Edge ImpulseのC++出力 (今回は説明省略) ③NordicのRISC-V用の スニペット(nordic-flpr)を使用
GitHubのリンク先 Zephyr公式サンプルの方を見てね。 https://github.com/zephyrproject-rtos/zephyr/tree/ main/samples/subsys/ipc/ipc_service/icmsg Zephyr公式のIPCのサンプル (雑な)自分のテストプログラム https://github.com/iotengineer22/zephyr-ipc
IPCデモ動画(nRF54L15-DK) https://youtu.be/ACCoVr_i27I
IPCでテスト成功 ログ見ても、IPCでコア間のデータ転送→OK 複雑+重い タスク IPC ARMコア ・Edge AI ・ネットワーク RISC-Vコア
・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク PWM ジェスチャー AI ・共有RAM ・メールボックス ・割り込み ① ② ③ ①ARM側でジェスチャーAI処理 ②IPCでデータ共有 ③RISC-V側のPWMを変更 ① ② ③ ① ② ③
他のIPC応用例
実は知らずにIPC使っていたケース Bluetooth LE Audio対応のトランスミッター・スピーカー 去年BluetoothのAudio開発コンテスト プロジェクトURL: https://www.hackster.io/iotengineer22/adaptive-directional-ble-audio-speaker-2d892d SOC (nRF5340) *BLE…Bluetooth
Low energy
nRF5340(ARM_M33 のデュアル + IPC) 「ネットワーク処理コア」と「音声処理のコア」を分けていた 複雑+重い タスク IPC ARMコア ・Edge
AI ・ネットワーク ARMコア ・高速モータ制御 ・高速ADC (サンプリング) 軽量+高速 タスク 同期性 持った 音声処理 ・共有RAM ・メールボックス ・割り込み ①ARM側でBluetooth LE処理 ②IPCで音声データ共有 ③ARM側で同期性持った音声出力 ① ② ③ ▪Nordic Wireless SOC nRF5340 *ARM_M33が2個内蔵 Bluetooth Low Energy
Bluetooth LE Audio ▪今までのBluetoothには無い機能…Unicast/Broadcastができる →(同期合わせた)特定オーディオの一斉送信 高い同期精度が必要 →デュアルコアでの分散処理 + IPC
まとめ
・Zephyrがコア間通信を強くサポートされていたのを学べた (複数/異種のコアを持つSoCに対応) ・Zephyrが様々なアーキテクチャに対応 (ARM+RISC-Vのようなコア間でも通信できた) ・分散処理したり、厳密なRTOS制御したい場合に使えそう (EdgeAIや厳密なネットワーク同期制御など) まとめ Zephyr(RTOS)で コア間通信(IPC)を実装+遊べた!
IPC(Inter-Processor Communication) ▪Nordic Wireless SOC nRF54L15 Coordination between multiple CPU
cores or processors https://www.nordicsemi.com/Products/nRF54L15 IPC ARM_M33 RISC-V
IPC(Inter-Processor Communication) Coordination between multiple CPU cores or processors Complex
Task IPC ARM_M33 ・Edge AI ・Network RISC-V(FLPR) ・Motor-Control ・High-Speed ADC High-Speed Task PWM (Servo motor) ADC (Analog- Digital) AI Inference WIFI,LTE, Bluetooth
IPC(Inter-Processor Communication) Coordination between multiple CPU cores or processors ARM_M33
IPC Complex Task ・Edge AI ・Network High-Speed Task ・Motor-Control ・High-Speed ADC RISC-V(FLPR) PWM Gesture Sensing