応用計算機設計

科目基礎情報

学校 東京工業高等専門学校 開講年度 2017
授業科目 応用計算機設計
科目番号 0023 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 2
開設学科 情報工学科 対象学年 4
開設期 後期 週時間数 4
教科書/教材 (参考書)図解Z80の使い方(横田英一著、オーム社発行)
担当教員 田中 晶

到達目標

【目的】電子計算機Ⅰ・Ⅱの続きとして、コンピュータのハードウェア体系の基礎をCPU ・メモリ・ I/O装置の主要構成要素の構造とデータの流れに基づいて修得する。さらに、アーキテクチャ上のトレードオフ、分散・並列システム、実用システム、ハードウェア記述言語による設計やシミュレーションなどによりCADの使用法の基本も学ぶ。
【到達目標】1)コンピュータの主要な構成要素の動作原理と特性をデータの流れに基づいて説明できる。2)トレードオフ、分散・並列システム、実用システム基礎を理解した上で、コンピュータの主要な構成要素の簡単な動作分析ができる。3)CADの使用方法の基本(ハードウェア記述言語による設計やシミュレーションなど)を理解し、Field programmable gate-array (FPGA) を用いて要求に基づいた簡単な回路設計ができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1コンピュータの主要な構成要素の動作原理と特性をデータの流れに基づいて説明できる。コンピュータの主要な構成要素の基本的な動作原理と特性を説明できる。コンピュータの主要な構成要素の動作原理と特性を理解していない。
評価項目2実用システムの基礎を理解した上で、コンピュータの主要な構成要素の簡単な動作分析ができる。コンピュータの主要な構成要素の簡単な動作分析について説明できる。コンピュータの主要な構成要素の基本的な説明ができない。
評価項目3要求に基づいて、CAD或いはハードウェア記述言語による簡単な設計やシミュレーションができる。 CAD或いはハードウェア記述言語による簡単な設計やシミュレーション方法を説明できる。 CAD或いはハードウェア記述言語による簡単な設計やシミュレーション方法を理解していない。

学科の到達目標項目との関係

学習・教育目標 C1 説明 閉じる
学習・教育目標 C2 説明 閉じる
学習・教育目標 C6 説明 閉じる

教育方法等

概要:
プログラムの実行やコンピュータの主な構成要素の並列動作、さらに、Computer Aided Design (CAD) やハードウェア記述言語を用いた設計の基礎を修得する。論理回路Ⅰ・Ⅱ、電子計算機Ⅰ・Ⅱ(一部並行して学習)、オペレーティングシステムⅠを前提とする。
ユニットⅠ(1週~)では、マイクロコンピュータの制御構造の基礎に関して、各種の構成要素の機能と構成要素間の関係を把握した上で、機械語(アッセンブリ言語)による処理実験を通して用いられている基本技術を理解する。ユニットⅡ(3週~)では、CPU・メモリ・I/O装置等のマイクロコンピュータの主要構成要素に関して、各種サイクル、アドレッシングモード、割込みやタスク制御等の処理を含む基本技術を理解する。並行して、機械語(アッセンブリ言語)や測定装置によるCPUの動作実験を通して、基本的な動作分析方法を修得する。ユニットⅢ(10週~)では、CADを用いた回路設計の基礎として、ハードウェア記述言語の学習、及び、実際の使用状況をもとにした要求条件から回路の動作を求め、Field Programmable Gate Array (FPGA)による基礎的回路設計やシミュレーショ ンによる検証を行う。関連するコンピュータシステム(複数プロセッサ/利用形態)、システム設計(要求される機能とコンピュータの関係)やメモリ構造等も適宜補足する。
授業の進め方・方法:
教室での座学と、実験室(マイコン)及び電算室(FPGA)での実験付き授業形式で行う。ユニットを区切りとして進めるため毎回の授業ではある程度順序等が前後する場合がある。座学と実験とは互いの進度により内容が前後する場合があるが、トータルでは互いに対応した内容となる。
適宜配布する課題シートを使って、演習或いは授業内容の整理に、各自及びグループで取り組む。
レポート等に関わる事項について指名による回答を求める場合があるので、各自で考えて答える。
基本及び応用情報処理技術者試験「試験で使用する情報技術に関する用語・プログラム言語など」にも触れる。
原則的に毎回の授業の冒頭は復習に充てるので、前回授業を思い出して当該回の授業に備える。

注意点:
授業の予習・復習及び演習については自学自習により取り組み学習する。
板書とスライド(パワーポイント)を併用するが、時間は確保するので各自でノートをとり復習等に役立てる。
授業で配布する課題シートは、特に指示しない限り当該回の授業内に提出する。その他のレポート等も必ず指定期日までに提出する。
授業全体を通し、a)グループ内で役割を持って実験ができ、b)CPUとI/O等の並列動作するコンピュータのハードウェアとソフトウェアの関係を理解し、c)マイクロコンピュータ及びCADを用いたシステム設計実験と知識習得を相補的に取り組むことが望まれる。

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 マイクロコンピュータの制御構造(1) マイクロコンピュータを構成する装置が理解できる(1)。
2週 マイクロコンピュータの制御構造(2) マイクロコンピュータを構成する装置を理解し説明できる(1)。
機械語/アッセンブラ実験が行える(1)。
3週 マイクロコンピュータの主要構成要素(1) CPU概略、バス、I/O装置(1):各種サイクルを理解し説明できる。
機械語/アッセンブラ実験が行える(2)。
4週 マイクロコンピュータの主要構成要素(2) CPU概略、バス、I/O装置(2):各種サイクルが理解できる。
機械語/アッセンブラ実験が行える(3)。
5週 マイクロコンピュータの主要構成要素(3) CPU概略、バス、I/O装置(3):入出力を理解し説明できる。
機械語/アッセンブラ実験が行える(4)。
6週 マイクロコンピュータの主要構成要素(4) 割込み、各種装置を理解し説明できる(1)。
CPU処理測定と分析実験が行える(1)。
7週 マイクロコンピュータの主要構成要素(5) 割込みと各種装置を理解し説明できる(2)。
メモリとCPU(1):メモリ空間が理解できる。
CPU処理測定と分析実験が行える(2)。
8週 後期中間試験 マイクロコンピュータを構成する装置とその関係データの流れに基づき理解し説明できる。
4thQ
9週 マイクロコンピュータの主要構成要素(6) メモリとCPU(2):アドレッシングモード、実用システム、分散処理の導入を理解し説明できる。
CPU処理測定と分析実験が行える(3)。
10週 CADとFPGA導入 メモリとCPU(3):インタフェースを理解し説明できる。 FPGAとハードウェア記述言語概略を理解し説明できる。FPGA導入実験が行える。
11週 CADとFPGA(1) CADとハードウェア記述言語を理解し説明できる(1)。
FPGA実験が行える(1)。
12週 CADとFPGA(2) CADとハードウェア記述言語を理解し説明できる(2)。シミュレーションが行える。
FPGA実験が行える(2)。
13週 CADとFPGA(3) CADとハードウェア記述言語を理解し説明できる(3)。要求分析が行える(1)。
FPGA実験が行える(3)。
14週 CADとFPGA(4) CADとハードウェア記述言語を理解し説明できる(4)。要求分析が行える(2)。
FPGA実験が行える(4)。
15週 学年末試験 マイクロコンピュータの構成をデータの流れに基づき理解し説明できる。CAD、ハードウェア記述言語、FPGAの基本を理解し説明できる。
16週 CADとFPGA(5)
復習
FPGA実験が行える(5)。
復習

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング変数とデータ型の概念を説明できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
制御構造の概念を理解し、条件分岐や反復処理を記述できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。1後11,後12,後13,後14,後15,後16
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
ソフトウェアアルゴリズムの概念を説明できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
与えられたアルゴリズムが問題を解決していく過程を説明できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
整列、探索など、基本的なアルゴリズムについて説明できる。1後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
計算機工学整数・小数を2進数、10進数、16進数で表現できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
基数が異なる数の間で相互に変換できる。2後2,後3,後4,後5,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15,後16
基本的な論理演算を行うことができる。3後11,後12,後13,後14,後15,後16
基本的な論理演算を組合わせて、論理関数を論理式として表現できる。3後11,後12,後13,後14,後15,後16
論理式の簡単化の概念を説明できる。3後11,後12,後13,後14,後15,後16
論理ゲートを用いて論理式を組合せ論理回路として表現することができる。3後11,後12,後13,後14,後15,後16
与えられた組合せ論理回路の機能を説明することができる。3後11,後12,後13,後14,後15,後16
組合せ論理回路を設計することができる。3後11,後12,後13,後14,後15,後16
フリップフロップなどの順序回路の基本素子について、その動作と特性を説明することができる。3後11,後12,後13,後14,後15,後16
レジスタやカウンタなどの基本的な順序回路の動作について説明できる。3後11,後12,後13,後14,後15,後16
与えられた順序回路の機能を説明することができる。3後11,後12,後13,後14,後15,後16
順序回路を設計することができる。3後11,後12,後13,後14,後15,後16
コンピュータを構成する基本的な要素の役割とこれらの間でのデータの流れを説明できる。3後1,後2,後3,後4,後5,後6,後7,後8,後9,後10,後13,後14,後15,後16
プロセッサを実現するために考案された主要な技術を説明できる。3後1,後2,後3,後4,後5,後6,後7,後8,後9,後10,後13,後14,後15,後16
メモリシステムを実現するために考案された主要な技術を説明できる。3後3,後4,後5,後6,後7,後8,後9,後10,後13,後14,後15,後16
コンピュータアーキテクチャにおけるトレードオフについて説明できる。3後3,後4,後5,後6,後7,後8,後9,後10,後13,後14,後15,後16
ハードウェア記述言語など標準的な手法を用いてハードウェアの設計、検証を行うことができる。3後11,後12,後13,後14,後15,後16
コンピュータシステム処理形態の面でのコンピュータシステムの分類である集中処理システムと分散処理システムについて、それぞれの特徴と代表的な例を説明できる。3後9,後10,後15,後16
ネットワークコンピューティングや組込みシステムなど、実用に供せられているコンピュータシステムの利用形態について説明できる。3後9,後10,後15,後16
デュアルシステムやマルチプロセッサシステムなど、コンピュータシステムの信頼性や機能を向上させるための代表的なシステム構成について説明できる。3後9,後10,後15,後16
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。1後11,後12,後13,後14,後15,後16
システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。1後1,後15,後16
情報数学・情報理論集合に関する基本的な概念を理解し、集合演算を実行できる。2後11,後12,後13,後14,後15,後16
集合の間の関係(関数)に関する基本的な概念を説明できる。2後11,後12,後13,後14,後15,後16
ブール代数に関する基本的な概念を説明できる。2後11,後12,後13,後14,後15,後16
論理代数と述語論理に関する基本的な概念を説明できる。2後11,後12,後13,後14,後15,後16
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。3後11,後12,後13,後14,後15,後16
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。1後11,後12,後13,後14,後15,後16
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。1後11,後12,後13,後14,後15,後16
与えられた数値を別の基数を使った数値に変換できる。3後11,後12,後13,後14,後15,後16
与えられた仕様に合致した組合せ論理回路や順序回路を設計できる。3後11,後12,後14,後15,後16

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合50000500100
基礎的能力2000020040
専門的能力3000030060
分野横断的能力0000000