自作CPUタイムライン
#自作CPU #RISC-V
TD4を作った年から東大CPU実験のレイトレが動くまでを年表にまとめた。初めてCPUを作った2016年に1歳だった娘は、もう10歳になりました。
年表
table:年表
年月 出来事
2016年 3月 CPUの創りかたの TD4 を FPGA で作ろうと思い立つ
2016年 5月 Altera MAX 10でLチカ
2016年 8月 Verilog で TD4 を作成
2016年 11月 DE10-Liteで遊ぶ
(UARTのやり方が分からず途方に暮れる)
---
2017年 6月 (ゼルダの伝説ブレスオブザワイルド)
2017年 8月 (スプラ2)
---
2018年 6月 CPU実験熱高まる。画像を生成してみたり、レイトレのソースを読んだり
---
2019年 1月 MHRD(電子回路設計ゲーム)をプレイ。Verilog 力アップ
2019年 9月 Intel が Altera を買収、サイト移行に伴い Quartus Prime をダウンロードできず...
Intel をあきらめて Xilinx の BASYS3 を購入
---
2020年 1月 書籍 FPGA Prototyping by SystemVerilog Examples を購入。Verilog 力アップ
RISC-Vのサブセットを自作
(UARTを送受信できるようになるも、CPUへの組み込み方に悩む)
---
2021年 10月 Turing Complete(電子回路設計ゲーム)をプレイ。CPU実験熱が再燃
2021年 12月 RISC-Vシミュレータ作成(会社ブログのネタに困って作成)
---
2022年 3月 ULX3S 購入。Macネイティブで開発できるようになって幸せに
2022年 4月 FemtoRV で RISC-V ベアメタルプログラミング
2022年 6月 自作の RISC-V シミュレータで Hello World
(このへんでメモリマップトIOなどをようやく理解)
2022年 7月 MinCaml移植のため、プログラミングの基礎(浅井本)でOCamlの学習
2022年 9月 (スプラ3)
2022年 12月 計算機科学実験及演習4 (MinMLインタプリタ作成)
https://www.fos.kuis.kyoto-u.ac.jp/~umatani/le4/index.html
---
2023年 2月 Apple M1へ MinCaml を移植(レイトレが動いた)
2023年 3月 RISC-V へ MinCamlを移植(レイトレが動いた)
2023年 5月 (ティアキン)
2023年 10月 SDRAMコントローラー作成→挫折
2023年 11月 Zucker SOC を ULX3S へ移植
https://github.com/machdyne/zucker
(Zucker SOC 付属の SDRAM コントローラーが ULX3S で使えることが判明)
---
2024年 1月 (風来のシレン)
2024年 3月 (スプラ3 DLC)
2024年 6月 (ストリートファイター6)
2024年 9月 RubyでつくるRubyみたいな言語のコンパイラ@福岡Rubyist会議04
https://thata.github.io/tinyrubyc/
2024年 10月 (知恵のかりもの)
2024年 11月 (ポケポケ)
2024年 12月 「POCOのマルチサイクル化」を眺める
https://www.am.ics.keio.ac.jp/pocobook/multc.pdf
マルチサイクル版の自作CPUを作成開始
---
2025年 1月 自作CPUの上でレイトレ動いた!!!(マルチサイクル RISC-V CPU を作成したい)
2025年 4月 第5回 自作CPUを語る会で、自作CPUの上で東大CPU実験のレイトレを動かした話をしてきた
---
2026年 5月 Raspberry Pi Pico2でCPU実験のレイトレを動かしたい
2016年
(DE10-Lite かわいい)
https://gyazo.com/f52bb4d3a525d06fa4b6b42a1c54545b
2018年
(レイトレの画像を生成する練習)
https://pbs.twimg.com/media/DiVUoZVU0AAO8yh.jpg
2019年
(MHRDでCPUを作成)
https://gyazo.com/55e42dc9f2ab8146e93d4ed59335f5ba
https://gyazo.com/21a079ffd900af3c4b5a9fcf7f6a9777
(TinyFPGA で L チカ)
https://gyazo.com/f731d5f0e9a6a42b5616a3251140114d
2020年
フィボナッチ数を計算する自作のCPU(RISC-V サブセット)
https://gyazo.com/5c8091e1b98f79f173d41be911b39a18
2021年
(Turing Complete で CPU を作成)
https://pbs.twimg.com/media/FC7Wmk4aIAIxRGj.jpg
(自作のRISC-Vシミュレータでフィボナッチ数を計算)
https://gyazo.com/7874e0e1fcf52d3f11f17d09e52ff6e7
2022年
(自作の RISC-V シミュレータから UART 出力)
https://gyazo.com/7cd8a42af3185b5ac2ad8e0f54981cd7
2023年
(Zucker SOCで L チカ)
https://pbs.twimg.com/media/F--2bV6bIAA_Mit.jpg
https://gyazo.com/b251d4a816f15b78bd2919b7336677c9
2025年
(自作CPUの上でレイトレ動いた!)
https://gyazo.com/2427867fd2996f906f710f872d4a4d2f
2026年
(Raspberry Pi Pico2でレイトレ動いた)
https://gyazo.com/2904f9f8dfbac03c5f030138db855dd7
参考にした本
CPUの創りかた
https://gyazo.com/bddf9933360fab14be3b45ef0e581ea5
FPGAボードで学ぶ組込みシステム開発入門~Altera編~
https://gyazo.com/70698b84d2757eca6f330343bf431c12
入門Verilog HDL記述: ハ-ドウェア記述言語の速習&実践
https://gyazo.com/695cc703138fecfc0f98193de10f6a10
FPGA Prototyping by SystemVerilog Examples
https://gyazo.com/2d05d3d362d00df783ea9cbbb2f93074
ディジタル回路設計とコンピュータアーキテクチャ 第2版
https://gyazo.com/fc8bb87d868a6556ed6e8a25f1340aef
RISC-V原典 オープンアーキテクチャのススメ
https://gyazo.com/e24e8973b1674b91d4deb43d76781f15
大熱血! アセンブラ入門
https://gyazo.com/ea1cec6f3ec65e5f24ac31c1e29a60c7
プログラミングの基礎
https://gyazo.com/d96874059a24be72c5f3ce5c02107472
Interface 2024年12月号 / Tang Primer 25KでFPGA開発 Vol.4 / VALIDとREADYを使ったインターフェース
https://gyazo.com/25a7a07e4ac4d2f42d37da5de461681d
参考にしたプロジェクト
learn-fpga の FemtoRV
https://github.com/BrunoLevy/learn-fpga/blob/master/FemtoRV/README.md
zucker
https://github.com/machdyne/zucker
参考にしたサイト
POCOのマルチサイクル化
https://www.am.ics.keio.ac.jp/pocobook/multc.pdf
(あとで追加する)