VRChat CS集会で発表!8ビットマイコンZ80にCollapseOSを載せる挑戦!

詳細情報

日時 2024年03月12日 22:00 - 22:30
テーマ LSI設計委員会
発表者 夜鍋ヨナ
集会名 CS集会
発表資料 ファイル

発表のハイライト

VRChatのCS集会で、夜鍋ヨナさんチームが「LSI設計委員会」というテーマで発表を行いました。

チームは、エンジニア作業飲み集会のハッカソンに参加し、8ビットマイコンZ80に8ビットOSのCollapseOSを搭載するという、ちょっと無茶振りな挑戦に挑みました!

FPGAを活用することでバーチャルなZ80マイコンを構築し、OSを動作させるという、まさに「バーチャル」な要素を取り入れたプロジェクトです。

8ビットマイコンZ80とCollapseOSって?

レトロで魅力的な8ビットマイコンZ80

Z80は、1976年に登場した8ビットマイクロプロセッサーです。

かつてのパーソナルコンピューターやゲーム機などで広く使われ、現在でも組み込み機器などで活躍しています。

Apple IIなど、古き良きパソコンを彷彿とさせる存在ですよね!

文明崩壊後でも使えるOS?

CollapseOS
CollapseOSは、文明崩壊後でも最低限の部品で動作するOSを目指して開発された、非常にシンプルな8ビットOSです。

テキストやバイナリの編集、CPUのアセンブラのコンパイルなど、基本的な機能を備えています。

Z80のようなシンプルなマイコンでも十分に動作する点が特徴です。

LSI設計委員会の挑戦:Z80とCollapseOSの融合!

プロジェクトの目標

夜鍋ヨナさんチームの目標は、Z80マイコンにCollapseOSを搭載すること!

一見、簡単そうに見えるかもしれませんが、実際には様々な課題がありました。

プロジェクトの工程

  1. Z80マイコンボードの設計: Z80マイコンを中心としたアーキテクチャを設計しました。
  2. FPGA上への実装: Z80や周辺機器のFPGA IPコアを実装することで、バーチャルなマイコン環境を構築しました。
  3. CollapseOSのポーティング: 設計したボードのアーキテクチャに合わせて、CollapseOSを移植しました。
  4. プログラム作成と動作確認: バス幅8ビット、メモリ空間128kByteという制限の中で、CollapseOS上でプログラムを作成し、動作確認を行いました。

バーチャル要素を取り入れる工夫

今回のプロジェクトでは、「バーチャルな○○」というハッカソンのテーマに沿って、バーチャルな要素を取り入れる工夫が凝らされています。

それは、実物のZ80マイコンを使わずに、FPGAで仮想化したこと!

まさに、バーチャル空間でZ80を再現したと言えるでしょう。

なぜこんなことになったのか?

当初は「バーチャルな○○」というテーマをもっと自由に解釈し、架空のCPUを作ろうと考えていたそうです。

しかし、開発期間の短さから、既存のZ80を使うことに方針転換。

それでも、既存の部品を使うだけではテーマに沿わないため、FPGAによる仮想化というアイデアに行き着いたんですね。

チーム紹介と役割分担

夜鍋ヨナさんチームは、CS集会の常連メンバーで構成されており、4人のフルパーティで開発を進めました。

チームリーダーの夜鍋ヨナさんがハードウェア設計などを担当し、pokioさんがハードウェアマクロ設計、れもんさんがミドルウェア設計、Mizarさんがソフトウェア設計を担当していました。

それぞれの得意分野を活かした役割分担によって、スムーズな開発が進められたようです。

開発の苦労話と成果

完成度は30%!

開発期間は2週間と短く、当初の予定通りに進むことは難しかったようです。

夜鍋ヨナさんは、「頭の中では動いている」「4人いるし、実際4馬力は出てるので問題はない」と前向きな発言をしていましたが、「2週間で完成しないのでは?」と不安を漏らす場面もありました。

それでも、ハッカソンはゴールじゃない!

夜鍋ヨナさんは、「ハッカソンはゴールじゃない。

スタートだ。

」と語り、開発を続ける意思を示しました。

発表された成果物

  • マイコンボード設計図
  • OS動作モック
  • ボード動作モック

Z80アーキテクチャ設計の感想

Z80の設計経験から、夜鍋ヨナさんはいくつかの発見がありました。

  • Z80に関する資料が豊富なこと
  • Z80自体はシンプルなCPUなので、周辺回路の設計が重要となること
  • Z80には不思議な魅力があること

特に、周辺回路を組み合わせることで、Z80が想像以上にパワフルな構成になることに驚いたそうです。

また、電源やクロックの仕様がシンプルだったため、ボード設計が非常に楽しかったとも語っていました。

まとめ

夜鍋ヨナさんチームの「LSI設計委員会」は、8ビットマイコンZ80とCollapseOSという、レトロで魅力的な技術を用いた、チャレンジングなプロジェクトでした。

FPGAを用いたバーチャル化というアイデアによって、「バーチャルな○○」というテーマを見事に体現したと言えるでしょう。

完成度こそ30%でしたが、ハッカソンはあくまでスタート。

今後の開発にも期待が高まります!

スライド資料はこちら

CS集会の他の発表もチェック!

脅威モデリング超入門:今日から始めるリスク可視化

現実とバーチャルをつなぐ!夜鍋ヨナさんが語る「AD変換」の魔法

シフト演算ってなぁに?10進数と2進数で考えてみよう!

VRChatで量子コンピュータの世界を体験!CS集会#33で夜鍋ヨナさんが紹介した量子コンピュータの世界

VRChat CS集会で発表!量子コンピュータで半加算回路を実装してみたよ!

生成AIとプログラミング:夜鍋ヨナさんが語る、LLMとシステム開発の未来!

CS集会の開催情報・参加方法

CS集会のポスター

CS集会

開催日: 2024年03月12日

開催時間: 21:00 - 23:00

開催曜日: 火曜日

開催周期: 隔週(グループA)

コンピュータサイエンスを、話したい!聞きたい!知識を共有したい!広くCSのお話したい人みんなあつまれー!!!!

コンピュータサイエンスを、話したい!聞きたい!知識を共有したい!広くCSのお話したい人みんなあつまれー!!!!