この年も,情報工学科の3年生49人のうち39人,履修登録者の80%が14週で思い思いのFPGAコンピュータを設計し,制作し,課題のプログラムを走らせることに成功しました.
昨年の87%と比較すると少なめです.が,この年からは,8割を遥かに越える高い完成率に疑問を抱くようになったのです.「できるだけ多くの生徒に力を付けること=必ずしも完成率を上げることではない」という反省です.
基本動作(DMA)はできる設計と製作を殆んど全員がしているという意味で,City-1は落伍者を殆んど出していませんでした. 他方で,「多くの学生が期間内に完成させる」という目標は,十分内容を理解しないまま課題のプログラムを走らせる生徒を生み出していました.課題のプログラムを走らせることができたという意味の完成率は8割程度で十分であり,それよりは内容の理解に重点を置こうというのがこの年からの方針でした.
「納期を守る」という思想は, 昨年のまま引き継ぎました.が,この年はカレンダー上の最終日7月14日(金)では, まだ13週だったため, 引き続く1週も,空き時間に作業を継続することを許しました. 7月21日(金)の14週で, あらゆる作業を止めさせました.優秀な学生の理解度は, 実施初年度の平成8年(1996年)度以来ずっと変っていません.この年も数人の学生が自分のマシン用に余裕でアセンブラを開発して利用していました.
この年は, 2000年問題対応で,OSとCADツールのすべてを入れ替えていました.これが実に好調で,CADツールを使うことの負担は大幅に軽減されていました.
CADが好調だったことは,ひとつのエピソードを生みました.締め切り時刻の2時間前!になって, 命令セットアーキテクチャを変更した学生がいたのです.この年も「ユークリッドの互除法」を課題にしていました. 2つの数の最大公約数と最小公倍数が求められるかを(1)互いに素, (2)2以上の公約数を持つ場合, (3)同じ2数という3通りの場合で試していたのですが, 自分の命令セットではすべてに対応できないことに気付いた学生が「Verilogを書き換える」と言い出したのです. 残された2時間で必要な命令を加え,シミュレーションで動作を確認し, シンセシス, 自動配置配線, 新しい機械語でのプログラミングを終え,自らのFPGAコンピュータで課題をクリアしました.10年前には考えられなかったことだと思います.
実に様々な工夫が行われているように見えますが,実は,この実施5年目までは「学生たちが期待したほどの工夫をしてくれない」という問題を抱えていました.結論から言うと,パイプライン設計工程そのままというトップダウンの指導は高度にすぎたのです.この翌年からスーパースカラの指導を始め,製品の心臓部を見せることが有効なことに気付くにはまだ数年を要しました.
この実施5年目までのパイプライン設計教育に用いた記述例CISC-3でも,検証のためのアサーションを書かせれば心臓部を見せることができるのが分かったのは2010年(平成22年)になってからでした.「SystemVerilogを使って心臓部のアサーション書かせることでマイクロアーキテクチャについての理解を深めさせる」という指導でした.詳しくは下記でご覧になれます:
Ryuichi TAKAHASHI and Yoshiyasu TAKEFUJI:
"SystemVerilog Assertion for Microarchitecture Education
considering Situated Nature of Learning: A Senior Project,"…IEEE
IEEE Proc. MSE 2011: International Conference on
Microelectronic Systems Education pp.112-113 (2011)
|