情報工学分野において、コンピュータの動作原理と高性能化のための方式を理解し、さらにハードウェアとソフトウェアの相互関係を習得することは非常に重要です。本講義では、プロセッサ、メモリ、入出力、マルチプロセッサ、マルチコアというコンピュータシステムを構成する各種装置について、その役割と動作原理を学びます。
演習では、Verilog HDL等のハードウェア記述言語を用いてFPGAが搭載されたハードウェアボード等に高度なディジタル回路であるプロセッサを実装し、プログラムを動作させることでハードウェアとソフトウェアの相互関係を習得します。
本講義を履修することによってコンピュータ以下を習得する。
・コンピュータの動作原理と高性能化のためのアーキテクチャ
・プロセッサ、メモリ、入出力、マルチプロセッサ、マルチコアといったコンピュータシステムを構成する各種装置の役割と動作原理
・ハードウェア記述言語を用いた一般的なコンピュータシステムの設計能力
コンピュータアーキテクチャ、プロセッサ、スーパースカラ、キャッシュ、メモリ階層、仮想記憶、マルチプロセッサ、マルチコア、ハードウェア記述言語、Verilog HDL、FPGA
✔ 専門力 | 教養力 | コミュニケーション力 | 展開力(探究力又は設定力) | ✔ 展開力(実践力又は解決力) |
原則として、90分×2コマの講義の後、90分×1コマのFPGAボードを用いた演習をおこないます。
授業計画 | 課題 | |
---|---|---|
第1回 | コンピュータの構成と動作原理 | コンピュータの構成と動作原理について理解する。 |
第2回 | コンピュータの性能と消費電力の動向 | コンピュータの性能と消費電力の動向について理解する。 |
第3回 | コンピュータ設計演習(1) | コンピュータ設計演習(1) |
第4回 | 半導体メモリ | 半導体メモリについて理解する。 |
第5回 | コンピュータ設計演習(2) | コンピュータ設計演習(2) |
第6回 | キャッシュ:ダイレクトマップ方式 | ダイレクトマップ方式のキャッシュについて理解する。 |
第7回 | キャッシュ:セットアソシアティブ方式 | セットアソシアティブ方式のキャッシュについて理解する。 |
第8回 | コンピュータ設計演習(3) | コンピュータ設計演習(3) |
第9回 | メモリシステムの階層化と信頼性 | Memory Hierarchy and Dependability |
第10回 | パイプラインプロセッサ | パイプラインプロセッサについて理解する。 |
第11回 | コンピュータ設計演習(4) | コンピュータ設計演習(4) |
第12回 | スーパースカラプロセッサ | スーパースカラプロセッサについて理解する。 |
第13回 | 分岐予測 | 分岐予測について理解する。 |
第14回 | コンピュータ設計演習(5) | コンピュータ設計演習(5) |
第15回 | ベクタ、SIMDにおけるデータレベル並列性 | ベクタ、SIMDにおけるデータレベル並列性について理解する。 |
第16回 | 仮想記憶、セキュリティ | 仮想記憶、セキュリティについて理解する。 |
第17回 | コンピュータ設計演習(6) | コンピュータ設計演習(6) |
第18回 | 入出力、バス | 入出力、バスについて理解する。 |
第19回 | 相互接続ネットワーク | 相互接続ネットワークについて理解する。 |
第20回 | コンピュータ設計演習(7) | コンピュータ設計演習(7) |
第21回 | マルチプロセッサ、マルチコア | マルチプロセッサ、マルチコアについて理解する。 |
第22回 | コンピュータ設計演習(8) | コンピュータ設計演習(8) |
デイビッド・A. パターソン、ジョン・L. ヘネシー (著)、成田光彰 (翻訳)『コンピュータの構成と設計 第5版 上/下』日経BP社
無し。
講義で扱うコンピュータアーキテクチャに関する理解、ハードウェア記述言語を用いたコンピュータシステム実装への応用力を評価する。演習(30%)と期末試験(70%)により評価する。
履修条件は特に設けないが、関連する科目のコンピュータアーキテクチャを履修していることが望ましい。