到達目標
ディジタルシステムを設計するHDLの基礎を学習し、verilog-HDLについて回路の設計法、文法、ツールの利用法を学習し、ツールとverilog-HDLを利用して回路動作をシミュレーションし新たな回路を設計できるようになる.
具体的な目標を以下に示す.
①FPGAとは何かを理解する.
②回路設計に用いるverilog-HDLの概要ついて理解する.
③verilog-HDLの文法を理解する.
④階層設計の仕組みとverilog-HDLでの実現方法を理解する.
⑤設計ツールの利用法を理解する.
⑥複雑な回路の動作を理解する.
岐阜高専ディプロマポリシー:(D)
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | FPGAとは何かを説明し,実際のFPGAを利用することができる. | FPGAとは何かを理解している. | FPGAとは何かを理解できない. |
評価項目2 | verilog-HDLについて説明しverilog-HDLのファイル構造を理解して簡単なファイルを作成できる. | verilog-HDLを説明できる. | verilog-HDLが何かわからない. |
評価項目3 | verilog-HDLの基本的な文法を利用して組み合わせ回路と順序回路が記述できる. | verilog-HDLの基本的な文法を利用して組み合わせ回路が記述できる. | verilog-HDLで回路が記述できない. |
評価項目4 | 階層設計を説明しverilog-HDLで階層設計の回路を記述できる. | 階層設計が何かを説明できる. | 階層設計が何かを説明できない. |
評価項目5 | 設計ツールを利用して回路を設計できる. | 設計ツールを利用できる. | 設計ツールを利用できない. |
評価項目6 | 複雑な回路の動作を説明し複雑な回路を設計できる. | 複雑な回路の動作を説明できる. | 複雑な回路の動作を説明できない. |
学科の到達目標項目との関係
教育方法等
概要:
verilog-HDLとFPGAを用いて回路を設計し,その回路の動作をボードで動作確認を行うための手法とverilog-HDLの文法を学ぶ.
授業の進め方・方法:
授業は回路設計後にボードへ回路を構成して動作確認を行う.
英語導入計画:Technical terms
注意点:
設計を行った回路は課題として提出しなければならないため,締め切りまでに課題を完成するようにする.また,利用するツールは無償で利用できるものであるので,自分の自由にできるコンピュータにインストールして環境を用意しておくとよい.
授業の内容を確実に身につけるために、予習・復習が必須である。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
HDL概要 |
HDLとは何か,FPGAとは何かを学習する. (授業外学習・事前)FPGAとはどのようなものかについて予習しておく(約2時間) (授業外学習・事後)HDLについてレポートにまとめ提出する(約2時間)
|
2週 |
verilog-HDL の基礎(値の表現と代入) |
verilog-HDLの文法としての値表現と代入の方法を理解する. (授業外学習・事前)HDLついて復習しておく(約2時間) (授業外学習・事後)verilog-HDLの基礎についてレポートにまとめ提出する(約2時間)
|
3週 |
設計ツールソフトの利用法とassign文 |
課題を進めるために必要な、設計ツールソフトの利用方法を理解し、verilog-HDLのassign文を理解する. (授業外学習・事前)verilog-HDLついて復習しておく(約1時間) (授業外学習・事後)設計ツールをダウンロードしてインストールする(約3時間)
|
4週 |
演算子の利用 |
最も簡単な組み合わせ回路を作成するための演算子の利用方法を理解する. (授業外学習・事前)設計ツールの利用法ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して演算子に関する課題の設計を行い提出する(約3時間)
|
5週 |
パラメーター宣言 |
パラメータ―宣言を行い、回路記述をわかりやすくする方法を理解する. (授業外学習・事前)verilog-HDLの演算子ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用してパラメータ宣言に関する課題の設計を行い提出する(約3時間)
|
6週 |
変数(wire変数とreg変数) |
verilog-HDLで利用する2種類の変数(wire変数とreg変数)について、利用法と特徴を理解する. (授業外学習・事前)verilog-HDLでのパラメータ宣言の利用法ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して変数に関する課題の設計を行い提出する(約3時間)
|
7週 |
always文・initial文 |
verilog-HDLで同期回路を記述するためのalways文の利用法を理解する. (授業外学習・事前)verilog-HDLの変数ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用してalways文・initial文に関する課題の設計を行い提出する(約3時間)
|
8週 |
always文でのその他の文法(if文、case文、casex文) |
always文内での各種文法を利用した複雑な順序回路について理解する. (授業外学習・事前)verilog-HDLのalways文ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用してif文・case文・casex文に関する課題の設計を行い提出する(約3時間)
|
2ndQ |
9週 |
2種類の代入(ブロッキング代入とノンブロッキング代入) |
verilog-HDLの2種類の代入文の利用法を理解する. (授業外学習・事前)verilog-HDLのcase文等ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して2種類の代入に関する課題の設計を行い提出する(約3時間)
|
10週 |
配列とinitial文でのfor文の利用 |
verilog-HDLの配列の作成と利用方法、およびfor文を利用した初期化方法などを理解する. (授業外学習・事前)verilog-HDLの代入ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して配列に関する課題の設計を行い提出する(約3時間)
|
11週 |
階層設計 |
階層設計とは何かとverilog-HDLで階層設計を実現する方法を理解する. (授業外学習・事前)verilog-HDLの配列ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して階層設計に関する課題の設計を行い提出する(約3時間)
|
12週 |
設計確認でのシミュレーションとその中でのfor文の利用 |
シミュレーションツールの使用法を学び、シミュレーションで多くの状態を入力するためのfor文の利用方法を理解する. (授業外学習・事前)verilog-HDLの階層設計ついて復習しておく(約1時間) (授業外学習・事後)シミュレーションツールを利用してfor文を利用したシミュレーションに関する課題の設計を行い提出する(約3時間)
|
13週 |
include文と下位モジュールのパラメータの設定 |
include文を利用したり、下位モジュールのパラメータを決めたりして、他のモジュールを操作する方法を理解する. (授業外学習・事前)シミュレーションついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して下位モジュールのパラメータ設定に関する課題の設計を行い提出する(約3時間)
|
14週 |
連接とシフト |
データを操作するための連接や、連接などを利用したシフト回路などの構成方法を理解する. (授業外学習・事前)下位モジュールのパラメータの設定ついて復習しておく(約1時間) (授業外学習・事後)設計ツールを利用して連接とシフトに関する課題の設計を行い提出する(約3時間)
|
15週 |
期末試験 |
|
16週 |
期末試験返却とまとめ |
FPGAとHDLの利用についてまとめる. (授業外学習・事前)試験結果を自己採点しておく(約4時間)
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 試験 | 課題レポート | 合計 |
総合評価割合 | 100 | 50 | 150 |
得点 | 100 | 50 | 150 |