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
直接メモリアクセス
Search
KOBA789
December 06, 2025
Technology
0
360
直接メモリアクセス
Kernel/VM探検隊@北陸 Part 8 で発表した内容です。
KOBA789
December 06, 2025
Tweet
Share
More Decks by KOBA789
See All by KOBA789
人工衛星のファームウェアをRustで書く理由
koba789
16
9.5k
令和最新版手のひらコンピュータ
koba789
14
9k
時の流れが許せない
koba789
0
250
ついに生産が終わったけどZ80でまだまだ遊びたい
koba789
5
4.6k
ISUCONの練習を楽しくたくさんやる方法
koba789
2
1.4k
Z80をRustで動かすまで年が越せない
koba789
0
370
ISUCON練習環境を最も簡単に用意する方法
koba789
2
3.3k
音をアレする
koba789
0
1k
メガネとBluetooth Low Energyでお喋りする
koba789
0
1.7k
Other Decks in Technology
See All in Technology
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
7
3.3k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
「違う現場で格闘する二人」——社内コミュニティがつないだトヨタ流アジャイルの実践とその先
shinichitakeuchi
0
390
Kusakabe_面白いダッシュボードの表現方法
ykka
0
240
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
1.5k
技術選定、下から見るか?横から見るか?
masakiokuda
0
190
The Engineer with a Three-Year Cycle
e99h2121
0
100
困ったCSVファイルの話
mottyzzz
0
230
歴史から学ぶ、Goのメモリ管理基礎
logica0419
14
2.8k
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
980
BidiAgent と Nova 2 Sonic から考える音声 AI について
yama3133
2
160
AIと融ける人間の冒険
pujisi
0
120
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
0
2.6k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.8k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
240
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
54
49k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
740
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
100
Deep Space Network (abreviated)
tonyrice
0
34
Testing 201, or: Great Expectations
jmmastey
46
7.9k
Building Adaptive Systems
keathley
44
2.9k
Done Done
chrislema
186
16k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
200
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
410
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 ༧֎ͷ͜ͱ͕Ͱ͖ͯ͠·͏͔Β੬ऑੑʹͳΔ