情報工学の教育における情報技術の活用

高度情報技術を活用した計算機設計教育


井上 訓行(京都産業大学工学部情報通信工学科教授)



1.はじめに

 本研究室では20年前から卒業研究の学生数名を対象に計算機設計開発教育を行っているが、半導体デバイスと設計法の著しい進歩に対応して、情報技術を導入した教育環境を整備することにより、教育内容の高度化をはかってきた。教育環境は表に示すように初期から二つの大きな改革を経て現在に至っている。


2.教育環境と教育内容の高度化

(1)第1期

 計算機ハードウェア教育にはマイクコンピュータが用いられ、CPUの設計はほとんど行われていなかった。英文の本を参考に、TTL ICを用いて計算機を設計し製作していたが、配線作業と英文の読解が学生の大きな負担となっていたためテキストの翻訳[1]を行った。

(2)第2期

 計算機援用設計(CAD)システムとFPGAを導入した。回路図入力とシミュレータにFPGAライブラリを追加し、1チップCPUの開発が可能となった。この結果CPU部分はチップ内で配線されるので配線作業は大幅に減少した。一方、観測点の減少により実機での検証が困難になったため、検証環境を重視した教育用システム[2]を開発した。また、小規模PLDを用いて論理をすべてプログラマブル素子により実現し、部品の種類と点数を大幅に減少させた。

(3)第3期

 ハードウェア記述言語(HDL)を処理できるCADを導入し、デバイスに依存しない設計が可能となった。デバイスもFPGAに加えてCPLDを導入し、現在一つの設計を複数の異なるタイプのデバイスに実装する教育を行っている。


3.教育内容と問題点

 3年生の秋学期にVHDL言語の習得、シミュレーションと合成の演習、簡単な回路の実装を行う。CPUの設計法は「計算機設計論」の講義で習得し、春休みに設計対象の仕様を決める。設計対象はCPUに限定せず、通信用チップ等も含め各自の興味と能力にあったものを対象にできる。
 4年生になると就職活動等により学生が揃わなくなるため、個別に仕様を検討し設計の細部を決定させる。このとき基本的な機能に限定するよう指導し、春学期で記述とシミュレーションを終えることを目標としているが、現実にはかなり難しい。秋学期には2種類のデバイスに対して合成と実装を行い、余裕があれば機能を追加する。追加機能では、割り込み機能、パイプライン化、キャッシュの内蔵などが実現されている。
 チップの小型化により手配線での実装が困難になり、予め用意された「箱」の中だけを設計するようになり、ハードウェアを製作したという実感が得られにくくなってきている。この方向を進めて、プログラマブル素子の特性を利用したISPにより、アルゴリズムを直接実行するハードウェアを開発することも考えている。一方、ハードウェアにより重点を置いて、ゲートアレイの製作も考えているが、現状では時間と費用の点から難しい。
表 教育環境の進歩
 開始年デバイス設計記述主なツール
第1期1980TTL IC手書き回路図なし
第2期1988FPGA
小規模PLD
回路図(CAD)シミュレータ
第3期1995FPGA
CPLD
ハードウェア
記述言語
シミュレータ
コンパイラ

参考文献
[1] M.M.Mano著, 奥川・井上訳:コンピュータの論理設計. 共立出版,1983.
[2] 井上:計算機アーキテクチャ教育とその支援環境.情報処理学会論文誌,
Vol.35 No.2, pp.155-163, 1994.


【目次へ戻る】 【バックナンバー 一覧へ戻る】