山梨大学電子シラバス>検索結果一覧>授業データ



授業科目名 計算機アーキテクチャII
時間割番号 TCS326
担当教員名 大渕 竜太郎
開講学期・曜日・時限 前期・月・IV 単位数 2
<対象学生>
(未登録)
<授業の目的>
計算機アーキテクチャを,先行する科目である「計算機アーキテクチャI」よりもハードウェア寄りの視点である実装(implementation)レベルで理解する.
本講義ではまず,Y86という非常に簡単な命令セットアーキテクチャを定義し,これを逐次実行方のハードウェアとして実現したものを,レジスタ転送レベルの抽象化で理解する.これにより,ANDやORなどのゲートやレジスタを基にして,どのようにしてCPUの演算や制御の機能が組み立てられるのかを知る.
次いで,キャッシュ,パイプライン,スーパースカラー,マルチコアやマルチプロセッサなど,現代のプロセッサの高速化や高性能化のために用いられている様々な技術を学ぶ.さらに,仮想マシンやコンテナ,低消費電力化の技術などについても学ぶ.
<本授業科目による獲得・涵養が特に期待されるコンピテンシー>(能力・資質)
工学部(~2023年度入学生)>コンピュータ理工学科向け
記号コンピテンシー(能力・資質) 
CS-A専門6.情報科学、及び、数学や自然科学等の知識と手法を用いて、以下のことができる。6a.解決すべき問題を形式化することができる。
CS-B6b.要求、時間、費用、資源等の制約条件を考慮した上で、複数の解が存在するような複雑な問題の中から適切な解を見つけ出すことができ
CS-C6c.各種のツールや手法に関する十分な知識をもち、それらをシステムの設計・開発・運用に応用できる。
<到達目標>  到達目標とは
目標NO説明コンピテンシーとの対応
CS
11.計算機アーキテクチャの実現を,例えばALU,データパス,レジスタファイル,プログラムカウンタ,メモリ,制御論理回路,などの働きについて,レジスタ転送レベルで理解する.CS-A
22.パイプライン処理の概念,各種のパイプラインハザードとその回避方法について理解する.CS-B
33.スーパースカラー処理,各種のマルチプロセッサ,多層キャッシュなどの高性能化技術について理解する.CS-B
44.処理性能の指標である命令実行スループットや実行遅延など,消費電力当たりの処理能力,などを理解する.CS-C
55.信頼性,保全性を高める技術,低消費電力化の技術,などついて知る.CS-C
<成績評価の方法>
目標No割合評価の観点
120%上記の項目1について理解しているか.
220%上記の項目2について理解しているか.
320%上記の項目3について理解しているか.
420%上記の項目4について理解しているか.
520%上記の項目5について理解しているか.
合計100% 
<授業の方法>
直接の先行科目である「計算機アーキテクチャーI」の内容,および「計算機アーキテクチャーI演習」のアセンブラプログラミングを復習し,良く理解しておくこと.
計算機アーキテクチャは言語やOSを支援するために変わってきた.C++やCなどのプログラミング言語によるプログラミングの知識(データ型,制御構造,ポインタ,など)と経験(コンパイル,アセンブル,リンク,セグメンテーションフォルトのデバッグ,デバッガによる追跡),オペレーティングシステムの仕組みは働きの理解,も必要である.
<受講に際して・学生へのメッセージ>
(未登録)
<テキスト>
  1. Ando, Hisa, コンピュータアーキテクチャ技術入門 : 高速化の追求×消費電力の壁, 技術評論社, ISBN:9784774164267
<参考書>
  1. David A. Patterson, John L, Hennessy, コンピュータの構成と設計 : ハードウエアとソフトウエアのインタフェース(上), 日経BP社, ISBN:978-4822284787
  2. David A. Patterson, John L, Hennessy, コンピュータの構成と設計 : ハードウエアとソフトウエアのインタフェース (下), 日経BP社, ISBN:978-4822284794
<授業計画の概要>
1タイトル導入,コンピュータシステムの基本,半導体技術
事前学習
事後学習
事前:テキストの1章を読む.
事後:今回学んだ内容についてスライドとテキストで復習する.これらの内容は第2回以後の小テストに出題される.テキストの第2章2.1節を読む.
授業内容授業全体について導入を行う.
コンピュータシステムについて「計算機アーキテクチャI」で学んだ内容を復習する.
コンピュータシステム,特にプロセッサを実現するための基盤技術の一つ手ある半導体技術について概観する.
2タイトルプロセッサの命令セットアーキテクチャ
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容命令セットアーキテクチャの典型とそのバリエーションについて学ぶ.(データの格納と処理の単位やデータ型,レジスタ数と命令形式,メモリモデル,オペランド指定形式,など.)
3タイトルプロセッサの基本構造(1)
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容現在のPCやスマートフォンで使われているプロセッサの典型的な基本構造について学ぶ.命令フェッチユニット,デコードユニット,実行ユニット,メモリユニットなどの仕組みと役割を概観する.また,パイプライン処理とパイプラインハザードについて復習する.
4タイトルプロセッサの基本構造(2)
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容現在のPCやスマートフォンで使われているプロセッサの典型的な基本構造について学ぶ.(命令フェッチユニットとデコードユニットの構造とトレードオフ,分岐ユニット,など)
5タイトル演算の高速化
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容プロセッサの算術論理演算装置において,加算や乗算を高速化するための技術,たとえばキャリールックアヘッド加算器や変形Booth乗算器などについて学ぶ.
6タイトル演算の高速化
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容スカラー命令処理を高速化するためのパイプライン処理とパイプラインハザードについて学ぶ.
SIMD並列演算器など,データ並列性を用いて演算を高速化する仕組みについて学ぶ.
7タイトルメモリシステムの高速化
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容キャッシュメモリの種類と仕組み,マルチプロセッサとキャッシュコヒーレンシ,階層キャッシュ,メモリ性能の評価方法,等について学ぶ.キャッシュの理解は効率的・高速なプログラムの実装に必要である.
8タイトル前半のまとめと中間評価
事前学習
事後学習
事前: 前半の講義資料と小テストを復習し,中間テストに備える.
授業内容前半のまとめ.
中間テスト.
9タイトルプロセッサの高速化
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容スーパースカラ-処理の仕組み,インオーダ実行とアウトオブオーダ実行,レジスタリネーミング,分岐予測器,命令やデータのプリフェッチ,性能評価指標(CPIとIPC,MIPS,MIPS/W)などについて学ぶ.
10タイトル性能を引き出すプログラミング
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.次回の授業に向けて,Y86命令セットおよびそのプログラムの授業動画を視聴すること.
授業内容パイプラリン処理,スーパースカラ-処理,キャッシュ,等を前提として効率的なプログラムを作成する方法について学ぶ.
11タイトルY86命令セットとそのプログラム
事前学習
事後学習
事前: 講義資料を読んでくること.Y86命令セットおよびそのプログラムの授業動画を視聴しておくこと.
事後: 講義資料を復習し,次回の小テストに備える.論理回路とプロセッサ実装に関する動画を視聴する.命令セットシミュレータを用いるなどして簡単なY86アセンブラプログラムの読み書きができるようにする.
授業内容極めて単純な命令セットアーキテクチャであるY86 ISAを命令単体およびプログラムを通じて理解し,そのマイクロアーキテクチャの実装につなげる.
12タイトルY86命令セットの実装
事前学習
事後学習
事前: 講義資料を読んでくること.論理回路とプロセッサ実装に関する動画を視聴しておくこと.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容Y86マイクロアーキテクチャの実装について,各命令ごとにレジスタ転送レベルで理解する.
13タイトルマルチプロセス化の技術
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 講義資料を復習し,次回の小テストに備える.
授業内容仮想記憶保護とアドレス変換,メモリ保護,プロセス保護,プロセスとコンテキストスイッチ,等に対するアーキテクチャ支援について学ぶ.また,仮想マシンの種類と仮想マシン実現のためのアーキテクチャ支援について学ぶ.
14タイトル並列計算機とそのアーキテクチャ支援
事前学習
事後学習
事前: 講義資料を読んでくること.
事後: 後半の講義資料と小テストを復習し,期末に備える.
授業内容密結合,疎結合の並列計算機やその結合ネットワーク,排他制御のためのアトミックメモリアクセスについて学ぶ.また,デバイスレベル,およびbig/LITTLEなど低消費電力化の技術について学ぶ.
15タイトルまとめと最終評価
事前学習
事後学習
事前: 前半の講義資料と小テストを復習し,中間テストに備える.
授業内容後半のまとめ.
期末テスト.
<実務経験のある教員による授業科目の概要>
担当教員は,情報系企業の基礎研究所においてグラフィックス描画用ハードウェア等の設計開発に携わった経験を持つ.また,各種の汎用プロセッサや専用プロセッサのためのアルゴリズム開発やプログラミングも経験.
これらの経験に基づいて,プログラム開発者の視点から,プロセッサを理解し,プロセッサを効果的・効率的に使うための授業を行う.
<前年度授業に対する改善要望等への対応>
アンケートでは,
*授業計画に沿っていなかった
*授業の進め方が理解しやすいように工夫されていなかった
等の点が指摘されている.これらについて改善を試みる.
前者については,例えば,スライドを取捨選択して整理し,予定通りに授業が進むようにする.
後者については,例えば,反転授業の割合を少し増やし,質疑応答や討論する時間を増やす.
<備考>
(未登録)