はじめに
この記事では、話題のRISC-VというISA(Instruction Set Architecture)を用いてマイコンを作っていきます。
本記事では完成したプログラムを乗せるだけではなく、初学者の筆者が試行錯誤しながら実装する過程をメインに書いていきます。なので間違いは優しく指摘してくれるとありがたいです。
開発にあたって
開発動機
私が通っている某工業大学ではプログラミング創造演習という、自由に課題を設定することができる授業があり、なんと6単位ももらえるらしい!そして手元にはArty-S7-50というFPGAがある。
どうしてCPUを作らないことができようか、いやできない!
開発手法
私は半導体製造装置を持っていないので、CPUをシリコンから作ることはできません。なので、FPGA(Field Programable Gate Array)という自由に回路を構成することができるICを用いてマイコンを作っていきます。
開発環境は手持ちのFPGAボード(Arty S7-50)に合わせてViviadoを利用していきます。
知識
CPUについて
[「CPUの創りかた」]
(https://www.amazon.co.jp/dp/B08639XM13/ref=cm_sw_r_tw_dp_FHZJ9EBBGFHT7M7PAB0R)
「コンピューターの構成と設計」
最初に紹介するのは「CPUの創りかた」です。
4bitのCPUを実際に組み立てながらCPUの基本的な構造や仕組みを理解することができます。
また、とてもソフトな書き方や内容なので着実に進められます。次に紹介する書籍を読み始める前に読破しておくとスムーズに理解を深めることができると思います。
次に紹介するのは「コンピューターの構造と設計」です。通称「パタヘネ」本。CPUアーキテクチャに関する最も有名な教科書で、上下2巻から構成されています。価格は結構高くて、新品を買うと1万円ぐらいします。
内容は、パイプライン処理やMIPS32実装を上で、下ではキャッシュやマルチコア、GPUの解説があり、有名書の名に恥じない重厚長大な構成です。
その他の書籍
他には開発言語Verilogに関してはトラ技
の「わかる VerilogHDL入門」
そしてRISC-VについてはRISC-V原典を参照を参照します。
次回
次回はCPUについて実際に設計を行っていきます。