Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
直接メモリアクセス
Search
KOBA789
December 06, 2025
Technology
0
320
直接メモリアクセス
Kernel/VM探検隊@北陸 Part 8 で発表した内容です。
KOBA789
December 06, 2025
Tweet
Share
More Decks by KOBA789
See All by KOBA789
人工衛星のファームウェアをRustで書く理由
koba789
16
9.4k
令和最新版手のひらコンピュータ
koba789
14
8.9k
時の流れが許せない
koba789
0
240
ついに生産が終わったけどZ80でまだまだ遊びたい
koba789
5
4.6k
ISUCONの練習を楽しくたくさんやる方法
koba789
2
1.4k
Z80をRustで動かすまで年が越せない
koba789
0
360
ISUCON練習環境を最も簡単に用意する方法
koba789
2
3.3k
音をアレする
koba789
0
1k
メガネとBluetooth Low Energyでお喋りする
koba789
0
1.7k
Other Decks in Technology
See All in Technology
re:Invent2025 3つの Frontier Agents を紹介 / introducing-3-frontier-agents
tomoki10
0
400
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
160
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
170
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
490
202512_AIoT.pdf
iotcomjpadmin
0
140
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
1.8k
通勤手当申請チェックエージェント開発のリアル
whisaiyo
3
440
ペアーズにおけるAIエージェント 基盤とText to SQLツールの紹介
hisamouna
2
1.6k
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
830
MySQLとPostgreSQLのコレーション / Collation of MySQL and PostgreSQL
tmtms
1
1.2k
[2025-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
170
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
2
190
Featured
See All Featured
Color Theory Basics | Prateek | Gurzu
gurzu
0
150
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.9k
ラッコキーワード サービス紹介資料
rakko
0
1.8M
Odyssey Design
rkendrick25
PRO
0
430
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
26
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
210
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
90
Believing is Seeing
oripsolob
0
15
Building an army of robots
kneath
306
46k
Discover your Explorer Soul
emna__ayadi
2
1k
Site-Speed That Sticks
csswizardry
13
1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Transcript
KOBA789 ϝϞϦΞΫηε ,FSOFM7.୳ݕୂ!1BSU
KOBA789 εϥΠυ͕Ͱ͖͍ͯͳ͍ͷͰσϞͰ͝·͔͠·͢ ‣ ࣄ ‣ 3VTUͰਓӴͷϑϥΠτιϑτΣΞΛॻ͍ͨΓ ‣ ਓӴͷϢʔβʔൃ۷ͷͨΊʹೆถߦͬͨΓ ‣ झຯ
‣ ࣗ࡞%#.4Λ࡞ͬͨΓ ‣ ϒϥβͰಈ͘ి࣓ϦϨʔճ࿏$"% γϛϡϨʔλΛ࡞ͬͨΓ ‣ :PV5VCFS׆ಈΛͬͨΓΒͳ͔ͬͨΓ IUUQTZPVUVCFDPN!LPCB IUUQTNJTTLFZJP!LPCB
%JSFDU.FNPSZ"DDFTT
%JSFDU.FNPSZ"DDFTT ͱ͍͑
64#ܦ༝Ͱ1$ͷϝϞϦΛ࿐ग़ͤ͞Δ ζϧʁɹ͍͍͑ɺ3%."Ͱ͢ʢॾઆʣ RP2040༻ͷۭؒ Z80༻ͷۭؒ Z80 όε 4FSJBM1PSU 3%."ʢաݴʣ όϯΫΩϟογϡ
64Byte BIG MEMORY PC RV32IMA Emulator
-JOVYPO;ແࣄىಈ͠·ͨ͠ MTʹ͔͔Γ·͢
εϥΠυͰ͖ͯͳ͍͔Β ͷσϞͬͯईՔ͙ͧ
ىಈʹؙ͔͔ΔͷͰμϝͰ͢
ΞϦΤΫങ͍γϦʔζ w ຕઍԁʙઍԁ͘Β͍ w )6#ͱ͍͏ϓϩτίϧ w ن֨Խ͞Ε͍ͯΔΑ͏Ͱ ͞Ε͍ͯͳ͍͕ΈΜͳίϨ -&%σΟεϓϨΠ https://ja.aliexpress.com/item/1005009526448143.html
)6# ͱͯݡ͍͕͘͢͝ϙϯίπ w ߦͷγϑτϨδελͱ ߦͷϥονͱ ߦͷϚϧνϓϨΫα͔ΒͳΔ w 3(#֤৭Ϗοτ w ಉ࣌ʹ౮Ͱ͖Δͷߦ͚ͩ
w ؾ߹ͰμΠφϛοΫ౮ w ίϯτϩʔϥ͕ؤுΕ http://www.moonbaseotago.com/hub75/
)6# ͱͯݡ͍͕͘͢͝ϙϯίπ w ߦΛγϑτϨδελʹૹΔ w 0&ΛσΞαʔτͯ͠ফ౮ w -"5ΛΞαʔτͯ͠ϥον w ߦΞυϨεΛΓସ͑
w 0&ΛΞαʔτͯ͠౮ w ҎԼ܁Γฦ͠ w ͜ΕͰ৭ग़ͤΔ http://www.moonbaseotago.com/hub75/
͍ͭ͜ΛͲ͏ʹ͔ޫΒ͍ͤͨ
·ͣͲ͏ͬͯ ϑϧΧϥʔΛग़͔͢
RGB=0xFFFFFF
R=0xFF
R=0b11111111 ࠨͷܻ ӈͷܻΑΓഒ໌Δ͍ Y Y Y Y Y Y Y
R=0b11111111 1T 2T 4T 8T 16T 32T 64T 128T #JOBSZ
$PEF .PEVMBUJPO ֤ϏοτʹO5ͷ౮࣌ؒΛ ׂΓͯΔ
CJUΧϥʔ)[Λ ग़ͦ͏ͱ͢Δͱ
5 ʹTʸ QYʷQYʷ)[ʷ5 ˺OT ϐΫηϧϨʔτ͕.)[ʂ
͜ΜͳΜιϑτΣΞ͡Ό ແཧͩΑʙʙ
%."͕มଶͰ͋Δ͜ͱͰ༗໊ w %."ͷνΣʔϯ͕Ͱ͖Δ w %."Ͱ%."ͷίϯϑΟά ϨδελΛॻ͚Δ w ͦΕΛఆ༷͕ͨ͋͠Δ w σʔλγʔτʹ༻ྫ͕
ࡌ͍ͬͯΔ w ࣮νϡʔϦϯάશ 31 https://www.raspberrypi.com/products/raspberry-pi-pico/
%."ίϯτϩʔϧϨδελ ॱংͷҟͳΔΤΠϦΞε͕ఆٛ͞Ε͍ͯΔ ͍ͣΕ͔ͷ5SJHHFSϨδελʹॻ͘ͱసૹ͕։࢝ʢॏཁʣ 5SJHHFSϨδελΛૂͬͯ%."Ͱॻ͍ͯΕ%."͔Β%."͕ऽΕΔ
தུ தུ https://pip-assets.raspberrypi.com/categories/814-rp2040/documents/RP-008371-DS-1-rp2040-datasheet.pdf ެࣜσʔλγʔτʹ͋Δ 4DBUUFS(BUIFSͷྫ
Ptr(8) Ptr(8) Ptr(8) Ptr(8) Ptr(8) Ptr(8) Ptr(8) Ptr(8) Ptr(4) Ptr(4)
Ptr(4) Ptr(4) Ptr(2) Ptr(2) Ptr(1) 8 4 2 1 ϏοτϓϨʔϯ ίϯτϩʔϧϒϩοΫ %."Ϩδελ Read Address Trigger %."Ͱసૹ 1*0'*'0 FIFO TX %."Ͱసૹ Α͘Θ͔Βͳ͍ਤ
σϞ
Α͔ͬͨͰ͢Ͷ ࠓޙΞχϝʔγϣϯΓ͍ͨ
KOBA789 ϝϞϦΞΫηε ,FSOFM7.୳ݕୂ!1BSU
%JSFDU.FNPSZ"DDFTT
ΞϦΤΫങ͍γϦʔζ w "SUJY 5 1$*F '5 w ۃ·ͬͨਓʑ͜ΕͰήʔϜͷ νʔτΛ͢ΔΒ͍͠ w
Ͳ͏͍͏ੈքͩΑ w ධՁϘʔυങ͏ΑΓ͍҆ w εϐʔυάϨʔυͱ γϦΞϧ൪߸͕ফ͞Εͨੴ w ҋ ϝϞϦΞΫηεΧʔυ https://ja.aliexpress.com/item/1005008778820516.htm
1$*Fʹ͓͚Δ%." 1$*FͰ୭͕ओʢόεϚελʣʹͳΕΔ w 1$*F5-1 5SBOTBDUJPO-BZFS1BDLFU Λ͛߹ͬͯ௨৴͢Δϓϩτίϧ w SPPUDPNQMFY ϚβϘʹ͍Δͭ ʹ
.FNPSZ8SJUF5-1.FNPSZ3FBE5-1Λ͛ΔͱΞΫηεͰ͖Δ w *0..6ͱ͔͍ͳ͚Ε ϝϞϦΞΫηεଞͷσόΠε੍ޚΓ์ʂ w (16͕44%͔ΒσʔλಡΉͭͰΘΕ͍ͯΔ w %JSFDU4UPSBHFςΫενϟΛ44%͔Βϩʔυ w (16Ͱ42-Λ࣮ߦ͢Δ1(4USPNͱ͔ͰͬͯΔ
1$*-FFDI %."ΧʔυΛͬͯରϗετʹׯবͰ͖Δπʔϧ w વ͍Ζ͍Ζո͍͜͠ͱ͕Ͱ͖Δ w ϑΝΠϧΛDPQZUP DPQZGSPN w ϓϩηεͷҰཡΛऔಘ w
ೝূແ͠ʹγΣϧΛऔಘ w IUUQTHJUIVCDPNVGSJTLQDJMFFDI
σϞ
1$*-FFDI-JOVYλʔήοτͷ߹ͷΈ 8JOEPXTίʔυಡΊͳ͍͠ৄ͘͠ͳ͍ͷͰʜʜ w ϝϞϦεΩϟϯͯ͠LBMMTZNTͷςʔϒϧΛݟ͚ͭΔ w LBMMTZNT͔ΒಘΒΕͨΧʔωϧͷศརؔΛͬͯ ո͍͠ΧʔωϧϞδϡʔϧΛϩʔυ w ո͍͠ΧʔωϧϞδϡʔϧΛ͕͔Γʹ͍Ζ͍ΖΔ w
Χʔωϧσόοάʹศརͦ͏ʢʁʣ
ͱ͜ΖͰ
64#ʹ1$*F͕௨ΔΜͰ͢Α
ຊͷ#BE64#͕ʂʁ ͋Δ͍1$*XBSVJ ରࡦਐΜͰ͍·͕͢ؾΛ͚ͭ·͠ΐ͏ w NBD04 w ը໘ϩοΫঢ়ଶͰ5IVOEFSCPMU 64# ͷ%."෧͡ΒΕ͍ͯΔ w
*0..6͕༗ޮͳͷͰΞΫηεൣғ͕ݶఆ͞Ε͍ͯΔ w 8JOEPXT w ʮԾԽϕʔεͷηΩϡϦςΟ 7#4 ʯ͕༗ޮͩͱ*0..6ͰकΒΕΔ w -JOVY w JOUFM@JPNNVPOͳΒकΒΕΔؾ͕͢Δ͕ɺઍࠩສผͳͷͰ֤Ґؤுͬͯ w ͜ͷձ-JOVYϥοϓτοϓଟͦ͏
%.""UUBDLWJB'JSF8JSF BLB*&&& J-*/, %7ࢠ w ࣮'JSF8JSFʹ%."͕͋Δ w ͳΜͯເͷ͋ΔΈʂɹ64#ΊΑ͏ʂ w 'JSF8JSFΛͬͨ3%."ͰࢄίϯϐϡʔςΟϯάɺΈ͍ͨͳݚڀ͋Δ
w Վతͳ͋ͷ࣌ʹ͜Μͳͷ͕͋ͬͨΒͲ͏ͳΔ͔ w વϊʔΨʔυͰ͑Β͍͜ͱʹ w NBD04ͷରࡦ͕ਐΜͰ͍Δͷɺ౷తʹ'JSF8JSFϙʔτ͕ඪ४ࡌͰɺ ৗʹ%.""UUBDLͷϦεΫ͕͔͋ͬͨΒͬΆ͍
%."ָ͍͠ʂʂʂʂʂ ;ͷճͰ%."ϐϯΛશ෦ະଓʹͨͭ͠ͷݴ͏͜ͱͰͳ͍ w $16Ҏ֎͕όεϚελʹͳΕΔͱΈͳ͞Μͷ༧ΛཪΕΔ w ༧֎ͷ͜ͱ͕Ͱ͖Δ͔Β͓͠Ζ͍ w ༧֎ͷ͜ͱ͕Ͱ͖ͯ͠·͏͔Β੬ऑੑʹͳΔ