この記事はkivantium Advent Calendarの18日目です。 CPUを設計する際に重要な要素の一つが命令セットアーキテクチャ (ISA) です。 これから設計する簡単なCPUのISAとして、分かりやすく参考文献も多いMIPSを採用することにしました。 MIPS ISA の詳細は https://www.cs.cornell.edu/courses/cs3410/2008fa/mips_vol2.pdf が詳しいです。 CPUの構成 昨日の記事で見たように歴史上様々なCPUが存在しており、CPUはこういう形だと言い切るのは難しいのですが、現在生き残っている多くのCPUはレジスタマシンになっています。 レジスタマシンを構成する主な要素は プログラムカウンタ (PC) 現在行っている命令の番号を保持します 命令メモリ CPUが実行する命令を保持します 汎用レジスタ 計算する値や計