コンピュータの基本構成と処理方式を理解し,それらを効果的に利用するための基礎技術の修得を目標とします.特に、コンピュータを構成するプロセッサ内部のデータの流れ(データパス)とその制御部に関して,具体的な構成方法と設計の原理を理解します。また、ハードウェアレベルのプログラミング言語であるアセンブラプログラミングについても学び、プロセッサの基本動作を理解します。そして、現代のコンピュータにおいて高速化の鍵となっている記憶階層について学習し、最後にネットワークや外部記憶その他の周辺装置について学びます。
概要:
コンピュータの構成と設計入門では、ストアードプログラム型計算機(所謂フォンノイマン型計算機)の基本動作原理から始め、その高速化に向けた様々な工夫、努力を見て行きます。特に計算機の三種の神器とも言える、中央処理装置、主記憶、入出力装置の構成方式とそれぞれの高速化手法を概観します。高速化の鍵は並列処理の実現が基本です。命令パイプライン、演算パイプライン、スレッド・コアレベルの並列処理に触れて行きます。また、近年性能向上が頭打ち傾向にあるのを押し上げるため、マルチコア、GPGPU、やFPGAなどを併用したヘテロジニアスへ入れt処理の導入が始まっています。本講では前述の技術を俯瞰して行きます。
授業の進め方・方法:
コンピュータの構成と設計はプログラムとして記述された“命令”を如何に効率よく速く実行させるためには如何に構成すれば良いかを考える技術と言えます。命令実行にはデータが不可欠です。メモリ内にある命令列とデータ列を命令実行本体部分であるCPUに如何にして速く供給し、如何にして速くCPU内で命令列を実行(演算)するかと言う高速化技術が主題となります。その鍵となるのが並列処理の適用です。本講では“コンピュータはどのようにして動くのか”から始まり、命令セットアーキテクチャ、演算装置とパイプライン処理、メモリ階層、浮動小数点演算とGPU、マルチコア、ヘテロジニアス・コンピューティング、メニコア・アーキテクチャなどコンピュータアーキテクチャの変遷、最先端の高性能化の技術をその技術背景を含めて見て行きます。
注意点:
1.本科目は,2年の「ディジタル技術基礎」,3年の「計算機学」と関連する,その内容の復習は授業時間外に行う。2.中間試験を1回行い、最終試験を行う。
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 4 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 4 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 4 | |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 4 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 4 | |
プログラミング言語は計算モデルによって分類されることを説明できる。 | 4 | |
計算機工学 | 整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。 | 4 | |
基数が異なる数の間で相互に変換できる。 | 4 | |
整数を2進数、10進数、16進数で表現できる。 | 4 | |
小数を2進数、10進数、16進数で表現できる。 | 4 | |
基本的な論理演算を行うことができる。 | 4 | |
基本的な論理演算を組合わせて、論理関数を論理式として表現できる。 | 4 | |
論理式の簡単化の概念を説明できる。 | 4 | |
簡単化の手法を用いて、与えられた論理関数を簡単化することができる。 | 4 | |
組合せ論理回路を設計することができる。 | 4 | |
レジスタやカウンタなどの基本的な順序回路の動作について説明できる。 | 4 | |
順序回路を設計することができる。 | 4 | |
コンピュータを構成する基本的な要素の役割とこれらの間でのデータの流れを説明できる。 | 4 | |
プロセッサを実現するために考案された主要な技術を説明できる。 | 4 | |
メモリシステムを実現するために考案された主要な技術を説明できる。 | 4 | |
入出力を実現するために考案された主要な技術を説明できる。 | 4 | |
コンピュータアーキテクチャにおけるトレードオフについて説明できる。 | 4 | |
ハードウェア記述言語など標準的な手法を用いてハードウェアの設計、検証を行うことができる。 | 4 | |
要求仕様に従って、標準的なプログラマブルデバイスやマイコンを用いたシステムを構成することができる。 | 4 | |
コンピュータシステム | ネットワークコンピューティングや組込みシステムなど、実用に供せられているコンピュータシステムの利用形態について説明できる。 | 4 | |
デュアルシステムやマルチプロセッサシステムなど、コンピュータシステムの信頼性や機能を向上させるための代表的なシステム構成について説明できる。 | 4 | |
集中処理システムについて、それぞれの特徴と代表的な例を説明できる。 | 4 | |
分散処理システムについて、特徴と代表的な例を説明できる。 | 4 | |
システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。 | 4 | |
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。 | 4 | |
プロジェクト管理の必要性について説明できる。 | 4 | |
WBSやPERT図など、プロジェクト管理手法の少なくとも一つについて説明できる。 | 3 | |