このページは 天野英晴、西村克信 著「作りながら学ぶコンピュータアーキテクチャ(2011年改訂版)」(培風館)のホームページです。
本書はVerilog HDLを使って、演習を通してコンピュータを設計しながら 学習する新しい概念の教科書です。まず演習を行うためには、皆さんのパソコンに icarus verilogと(できれば)gtkwaveをインストールする必要があります。
icarus verilogのインストールについては、 icarus verilog のページ をご覧下さい。
gtkwaveのインストールについては、 gtkwaveのページ をご覧下さい。
それぞれの章で解説したVerilogのソースです。最初はLinuxのtarファイルがありますので、まるごと取ってきて、tar xvf ファイル名と打ち込めばディレクトリが表れます。中身のファイルを個別に見ることができるようにしていますので、tarが使えない場合、そちらをご利用下さい。
「アセンブラshapa」
shapaは、天野研究室を2010年に卒業した社長こと齋藤貴樹君の開発によるものです。rubyで書かれているため、実行するにはrubyのインタプリタがインストールされている必要があります。通常のLinux環境でしたらそのまま利用できると思います
Verilog演習をやる場合、shapaは必要なVerilogディレクトリ中に入っていますので、そのまま持ってきて利用可能です。
POCOの論理合成
ここでは二つの論理合成環境を紹介します。
Synopsys社Design Compilerを用いた論理合成:ツールの利用には、指導教員がVDECに登録して、CADをインストールしている必要があります。
ページ数の関係で本編に含むことができなかった部分です。
今回、POCOはシングルサイクル版から一気にパイプライン化しましたが、本当はマルチサイクル版を勉強してからパイプライン化するのが良いと思います。その部分の解説と演習です。
今回、POCOは本当に基本的な文法だけを使って記述しました。しかしVerilogの記述は奥が深く様々なパターンでの記述が可能になります。これを試したものです。対象はマルチサイクル版にしています。それぞれの記述をDesign Compilerで合成して評価しています。
Xilinx社の SPARTAN3Aスタータキットを用いた実験用のファイルと解説書です。慶應義塾大学理工学部情報工学科3年ではこれを使ってピンポンゲームなど簡単なゲームを作り、マイクロプロセッサと入出力についての理解を深めます。