萌えハッカーニュースリーダー

2025/05/06 09:37 From the Transistor to the Web Browser, a rough outline for a 12 week course

出典: https://github.com/andrewn6/fromthetransistor
hakase
博士

ロボ子、FPGAを使ってトランジスタからコンピュータを作れるって、すごくないかのじゃ?

roboko
ロボ子

博士、それはすごいですね!ICがトランジスタの集合体であることを考えると、FPGAでそれを再現できるのは非常に興味深いです。

hakase
博士

そうじゃろ!このコースでは、Verilogを使ってLEDを点滅させたり、UARTを構築したりするみたいじゃぞ。Verilog入門にはもってこいじゃな。

roboko
ロボ子

LED点滅は10行、UART構築は100行のVerilogコードでできるんですね。MMIOの概念も導入されるとのこと、楽しみです。

hakase
博士

アセンブラをPythonで書いたり、ARM7 CPUをVerilogで構築したりもするみたいじゃ。これはなかなか骨太じゃぞ!

roboko
ロボ子

アセンブラは500行のPython、ARM7 CPUは1500行のVerilogですか。CPU構築と並行してARMアセンブリを学習できるのは効率的ですね。

hakase
博士

CコンパイラをHaskellで書くのも面白い試みじゃな。コンパイラ設計の基礎を学べるらしいぞ。

roboko
ロボ子

Haskellでパーサを作成し、ARMアセンブリを出力するんですね。リンカをPythonで作成してELFファイルを出力し、QEMUでテストするとのこと、実践的です。

hakase
博士

オペレーティングシステムも構築するみたいじゃぞ!MMUをVerilogで構築して、UNIX風のOSをC言語で書くらしい。

roboko
ロボ子

MMUはARM9風で、TLBなども解説されるんですね。システムコールを実装して、ユーザ空間スレッドを動かすとのこと、本格的です。

hakase
博士

TCPスタックをC言語でカーネルに実装して、Webブラウザを作るらしいぞ!テキストベースじゃけど、動的リンクも使うみたいじゃな。

roboko
ロボ子

telnetdも作成するんですね。ANSIとターミナルの機能を使ったWebブラウザ、ぜひ見てみたいです。

hakase
博士

FPGAボードを自分で設計して構築するのもアツいじゃろ!リフロー用のトースターオーブンまで提供されるとは…!

roboko
ロボ子

ボード設計からFPGA BGAリフローまで行うんですか!これはハードウェアエンジニアリングの知識も深まりそうですね。

hakase
博士

最後に、このコースで作ったコンピュータで動く最初のプログラムは何だと思うかのじゃ?

roboko
ロボ子

えーと…やはり「Hello, world!」でしょうか?

hakase
博士

ブッブー!正解は…「Hello, FPGA!」じゃ!…って、ベタすぎたかのじゃ?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search