概要:
近年のコンピュータシステムは、様々な要素技術によって構成される。計算機工学では、現在のコンピュータを構成する様々な要素技術の基本設計・設計思想(アーキテクチャ)について講義する。
授業の進め方・方法:
この授業は前後期に週1コマを実施する。講義を主体とするが,宿題として演習問題をさせる。
内容は、次の項目を設定する。
1) 現在までのコンピュータの発展
2) コンピュータシステムの基本構成
3) CPU(Central Processing Unit)を構成する様々なアーキテクチャ
4) 記憶装置を構成する様々なアーキテクチャ
5) 入出力装置を構成する様々なアーキテクチャ
注意点:
この科目を履修する学生は「論理回路」で学んだ基本的回路に慣れ親しんでおいてほしい。上でも述べたが、ここでアーキテクチャを勉強するときには、なぜ世の中では、あるアーキテクチャが採用されているのか、ということを考えながら学習してほしい。さらに、自分ならば、どういう風にしたか、ということまで考えてみることが望ましい。実は汎用コンピュータやCPUのアーキテクチャは様々なディジタル処理それぞれに対して必ずしも適切なものとはなっていない。なぜか。では、どうすればよいのか。常に問題意識を持つことを心がけて欲しい。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
計算機工学の紹介 |
計算機はどのようなものか説明できる。 計算機工学の特徴、特にトレードオフについて説明でき、例を挙げることができる。
|
2週 |
コンピュータの発展 |
コンピュータの発展の概要を理解する。
|
3週 |
計算機アーキテクチャの基本な要素: *ゲート、レジスター、バス、など
|
計算機アーキテクチャの様々な基本要素を理解し、利用できる。
|
4週 |
ノイマン型コンピュータ: *特徴、基本の仕組みと動作
|
ノイマン型コンピュータの特徴、基本の仕組みと動作を説明できる。
|
5週 |
アセンブリ言語と機械語; 命令セットアーキテクチャ:命令の形式
|
高レベル言語(Cなど)、アセンブリ言語と機械語の違いを説明できる。 命令の様々な形式を説明でき、例を挙げることができる。
|
6週 |
命令セットアーキテクチャ:アドレッシング |
命令の様々なアドレッシングを説明でき、例を挙げることができる。
|
7週 |
ハーバードアーキテクチャ
RISC・CISC
|
ハーバードアーキテクチャの特徴を説明できる。ハーバードアーキテクチャのCPUを認めることができる。 代表的なRISC命令セットまた代表的なCISC命令セットを認めることができる。
|
8週 |
【前期中間試験】 |
|
2ndQ |
9週 |
演算装置: *数値の表現、特に2進化10進数、浮動小数点 *数字の表現、特にASCIIとUNICODE
|
様々な数値の表現を説明でき、10進数との相互変換をできる。 様々な数字の表現を説明できる。
|
10週 |
演算装置: *リップルキャリー加算器、加減算器 *単純乗算アルゴリズムと回路アーキテクチャ
|
リップルキャリー加算器のアーキテクチャを作成できる。加算器から、加減算器のアーキテクチャを作成できる。 単純乗算アルゴリズムを説明でき、適用できる。
|
11週 |
演算装置: *加算位置を固定した乗算アルゴリズムと回路アーキテクチャ
|
加算位置を固定した乗算アルゴリズムの原理を説明でき、適用できる。
|
12週 |
演算装置: *引き戻し除算アルゴリズム *引き放し除算アルゴリズム
|
引き戻し除算アルゴリズムを説明でき、適用できる。 引き放し除算アルゴリズムの原理を説明でき適用できる。
|
13週 |
制御装置: *全体アーキテクチャと動作 *デコーダーの仕組みと動作
|
制御装置の全体アーキテクチャと動作を説明できる。 デコーダーの仕組みと動作方法を説明できる。
|
14週 |
制御装置: *シーケンサの仕込みと動作 *ワイヤード制御方式とマイクロプログラム制御方式
|
シーケンサの仕込みと動作を説明できる。 ワイヤード制御方式とマイクロプログラム制御方式の違いを説明できる。 マイクロプログラム制御の仕組みと動作方法を説明できる。
|
15週 |
【前期末試験】 |
|
16週 |
テスト返却と解説 |
|
後期 |
3rdQ |
1週 |
記憶装置(メモリ): *メモリの分類と性質
|
メモリの各分類を説明できる。
|
2週 |
記憶装置(メモリ): *ICメモリのアーキテクチャ *IC メモリのセル
|
ICメモリの基本アーキテクチャを説明できる。 ICメモリの基本セル(SRAM,DRAM,EEPROM)の性質を説明できる。
|
3週 |
記憶装置(メモリ): *補助メモリの分類の仕組み
|
補助メモリの性質を説明できる。 補助メモリのアクセスの基本を説明できる(特にHDDの際)。
|
4週 |
メモリアクセスの高速化とキャッシュメモリ: *キャッシュメモリの役割と仕組み *ダイレクトマッピング方式
|
キャッシュメモリの役割を説明できる。 キャッシュメモリの基本仕込みを説明できる。 ダイレクトマッピング方式の動作を説明できる。
|
5週 |
メモリアクセスの高速化とキャッシュメモリ: *フルアッソシアティブマッピング方式 *セットアッソシアティブマッピング方式
|
フルアッソシアティブマッピング方式の動作を説明できる。 セットアッソシアティブマッピング方式の動作を説明できる。 各マッピング方式のメリットとデメリットを説明できる。
|
6週 |
仮想メモリシステム:仮想メモリの役割と動作 |
仮想メモリの役割と基本の動作を説明できる。
|
7週 |
コンピュータシステムに置ける割り込み:割り込みの役割と動作 |
割り込みの役割と基本の動作を説明できる。
|
8週 |
【後期中間試験】 |
|
4thQ |
9週 |
パイプラインアーキテクチャ: *パイプライン処理の役割とアーキテクチャ
|
パイプライン処理の役割を説明できる。 パイプラインアーキテクチャの基本を説明できる。 パイプライン処理の性能を説明できる。
|
10週 |
パイプラインアーキテクチャ: *パイプライン動作 *パイプラインのストール
|
ストールなしのとき命令の流れでパイプラインの効果を説明できる。 ストールありのとき命令の流れでパイプラインの効果を説明できる。
|
11週 |
プログラムの実行の高速化手法 |
プログラムの実行の主な高速化手法を簡単に説明できる(VLIW、スーパースケーラ、マルチコア、ハイパースレッド)。
|
12週 |
入出力とシステムアーキテクチャ: *メモリマップ入出力方式 *ポートマップ入出力方式 *周辺機器の実例
|
メモリマップ入出力方式を説明できる。 ポートマップ入出力方式を説明できる。 主な周辺機器の動作を簡単に説明できる(ケボード、モニターなど)
|
13週 |
オペレーティングシステム:コンピュータとの連携 |
コンピュータにおいて、オペレーティングシステムの必要性を説明できる。
|
14週 |
ネットワークアーキテクチャ:コンピュータとの連携 |
ネットワークアーキテクチャにおいて、コンピュータの位置を説明できる。
|
15週 |
【後期末試験】 |
|
16週 |
テスト返却と解説 |
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | 計算機工学 | 整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。 | 3 | |
コンピュータを構成する基本的な要素の役割とこれらの間でのデータの流れを説明できる。 | 3 | |
プロセッサを実現するために考案された主要な技術を説明できる。 | 3 | |
メモリシステムを実現するために考案された主要な技術を説明できる。 | 3 | |
入出力を実現するために考案された主要な技術を説明できる。 | 3 | |
コンピュータアーキテクチャにおけるトレードオフについて説明できる。 | 3 | |
ハードウェア記述言語など標準的な手法を用いてハードウェアの設計、検証を行うことができる。 | 3 | |