ホーム > 学部・大学院 > 産業技術学部 > SB023:論理回路設計論・応用演習

SB023:論理回路設計論・応用演習

科目番号、授業科目名

SB023、論理回路設計論・応用演習/Logic Circuit Design and Practical Exercise

科目区分、必修・選択、授業の方法、単位数

産業技術学部 専門教育系科目 専門教育科目、選択、講義・演習(対面と遠隔の併用)、3単位

履修年次、開設学期

2年次、1学期

受講対象

情報科学専攻

担当教員

稲葉 基


科目の到達目標

論理関数と論理回路の関係性を理解し、論理回路の構成や動作原理に関する知識を身につけ、最適化された組み合わせ回路と順序回路を設計できるようになること、そしてハードウェア記述言語「Verilog HDL」による組み合わせ回路と順序回路の記述、コンピュータを用いた論理合成、入出力信号波形シミュレーション、FPGAを搭載した実験ボードへの書き込みとその動作について理解し、説明できるようになることが到達目標です。

学習の項目別目標

1.論理関数
論理関数と論理回路の関係性を理解できていること。
2.論理回路の表現
論理式、真理値表、カルノー図などを用いて論理回路を表現できること。
3.組み合わせ回路の構成
組み合わせ回路の構成と動作原理を理解できていること。
4.組み合わせ回路の設計
目的に合わせた組み合わせ回路の基本設計ができること。
5.順序回路の構成
順序回路の構成と動作原理を理解できていること。
6.順序回路の設計
目的に合わせた順序回路の基本設計ができること。
7.ハードウェア記述言語による組み合わせ回路の記述(構造レベル)
ハードウェア記述言語「Verilog HDL」を用いて、構造レベルで組み合わせ回路を記述できるようになること。
8.ハードウェア記述言語による組み合わせ回路の記述(動作レベル)
ハードウェア記述言語「Verilog HDL」を用いて、動作レベルで組み合わせ回路を記述できるようになること。
9.ハードウェア記述言語による組み合わせ回路の記述(データフローレベル)
ハードウェア記述言語「Verilog HDL」を用いて、データフローレベルで組み合わせ回路を記述できるようになること。
10.ハードウェア記述言語による順序回路の記述(構造レベル)
ハードウェア記述言語「Verilog HDL」を用いて、構造レベルで順序回路を記述できるようになること。
11.ハードウェア記述言語による順序回路の記述(動作レベル)
ハードウェア記述言語「Verilog HDL」を用いて、動作レベルで順序回路を記述できるようになること。
12.論理合成
ハードウェア記述言語「Verilog HDL」で記述した組み合わせ回路と順序回路について、コンピュータを用いて論理合成をおこなえるようになること。
13.入出力信号波形シミュレーション
コンピュータを用いて、入力信号波形を作成し、出力信号波形のシミュレーションをおこなえるようになること。
14.FPGAのコンフィギュレーション
ハードウェア記述言語「Verilog HDL」で記述した組み合わせ回路と順序回路について、ピン設定と論理合成の後、実験ボード上のFPGAに書き込みをおこない、動作確認をおこなえるようになること。


授業概要

パソコンや携帯端末といった電子機器の中でディジタル信号処理をおこなっている論理回路の構成や動作原理に関する知識を習得し、例題を通して具体的な論理回路の設計方法および最適化に関する理解を深めます。そして、ハードウェア記述言語の1つである「Verilog HDL」を用いて、組み合わせ回路と順序回路を記述し、論理合成して、信号波形シミュレーションとFPGAのコンフィギュレーションをおこなう知識および技術の習得を目指します。

時間外学修に必要な学習時間の目安

目安 準備学修1.5時間
事後学修3時間

授業計画

折りたたむ

  • 第1回 ガイダンス、論理とは
    (キーワード)論理、論理値、論理演算、論理代数、論理式
    (予習)基本論理演算について確認しておくこと。
    (復習)論理演算、論理代数、論理式、演算優先順位について見直しておくこと。
  • 第2回 論理関数とは
    (キーワード)論理関数、論理変数、論理関数値、双対性
    (予習)論理関数の性質について確認しておくこと。
    (復習)論理関数の性質と論理式の双対性について見直しておくこと。
  • 第3回 論理関数の表現(1)   シャノンの展開定理、和積形、積和形
    (キーワード)シャノンの展開定理、和積形、積和形、最小項、最大項
    (予習)シャノンの展開定理と論理式の標準形について確認しておくこと。
    (復習)標準和積形、標準積和形、最小項、最大項について見直しておくこと。
  • 第4回 論理関数の表現(2)   ド・モルガンの定理、真理値表、カルノー図、2分決定図
    (キーワード)ド・モルガンの定理、ベン図、真理値表、カルノー図、2分決定図
    (予習)ド・モルガンの定理、真理値表、カルノー図、2分決定図について確認しておくこと。
    (復習)論理関数を真理値表やカルノー図で表現する方法について見直しておくこと。
  • 第5回 論理関数と論理回路
    (キーワード)論理ゲート、論理回路、組み合わせ回路、論理関数の最適化
    (予習)基本論理ゲートについて確認しておくこと。
    (復習)論理関数と論理回路の関係性およびカルノー図を用いた論理関数の最適化について見直しておくこと。
  • 第6回 組み合わせ回路の最適化設計
    (キーワード)組み合わせ回路、論理最小化、最小積和形、空間最適化、時間最適化
    (予習)組み合わせ回路の最小積和形について確認しておくこと。
    (復習)空間最適化した組み合わせ回路の設計と解析の方法、空間最適化と時間最適化の違いを見直しておくこと。
  • 第7回 組み合わせ回路の演習(1)   基本論理ゲート
    (キーワード)ハードウェア記述言語、Verilog HDL、ORゲート、ANDゲート、NOTゲート、論理合成、波形シミュレーション
    (予習)論理和、論理積、否定の真理値表、ハードウェア記述言語「Verilog HDL」を用いた構造レベル、動作レベル、データフローレベルによる基本論理回路の記述方法を確認しておくこと。
    (復習)コンピュータを用いて、構造レベル、動作レベル、データフローレベルの各レベルで基本論理回路を記述し、論理合成と波形シミュレーションをおこなって、それぞれ真理値表に対応した出力信号波形が表れているかどうかを確認し、指定された期限までに報告書を提出すること。
  • 第8回 組み合わせ回路の演習(2)   排他的論理和回路、デコーダ、セレクタ
    (キーワード)ハードウェア記述言語、Verilog HDL、構造レベル、動作レベル、データフローレベル、組み込みプリミティブ、組み合わせ回路、排他的論理和回路、デコーダ、セレクタ
    (予習)排他的論理和の真理値表を確認しておくこと。コンピュータを用いて論理合成および波形シミュレーションをおこなう方法を確認しておくこと。デコーダとセレクタについて調べておくこと。
    (復習)コンピュータを用いて、構造レベル、動作レベル、データフローレベルの各レベルで排他的論理和回路、デコーダ、セレクタを記述し、論理合成と波形シミュレーションをおこなって、真理値表に対応した出力信号波形が表れているかどうかを確認すること。そして、指定された期限までに課題を終えて、報告書を提出すること。
  • 第9回 組み合わせ回路の演習(3)   プライオリティ回路、プライオリティエンコーダ
    (キーワード)ハードウェア記述言語、Verilog HDL、構造レベル、動作レベル、データフローレベル、組み合わせ回路、プライオリティ回路、プライオリティエンコーダ
    (予習)4入力4出力プライオリティ回路と4入力プライオリティエンコーダの動作および真理値表を確認しておくこと。
    (復習)コンピュータを用いて、構造レベル、動作レベル、データフローレベルの各レベルでプライオリティ回路とプライオリティエンコーダを記述し、論理合成と波形シミュレーションをおこなって、真理値表に対応した出力信号波形が表れているかどうかを確認すること。そして、指定された期限までに課題を終えて、報告書を提出すること。
  • 第10回 順序回路の演習(1)   フリップフロップ
    (キーワード)ハードウェア記述言語、Verilog HDL、構造レベル、順序回路、状態、状態遷移図、フリップフロップ、カウンタ、クロック、同期式、非同期式
    (予習)D型フリップフロップの状態遷移表と特性方程式を確認しておくこと。4進アップカウンタ、4進ダウンカウンタ、5進アップカウンタの動作を確認しておくこと。
    (復習)コンピュータを用いて、構造レベルで4進アップカウンタ、4進ダウンカウンタ、5進アップカウンタカウンタを記述し、それぞれ論理合成と波形シミュレーションをおこなって、目的の出力信号波形が得られたかどうかを確認すること。同期式カウンタと非同期式カウンタの違いを理解しておくこと。指定された期限までに課題を終えて、報告書を提出すること。
  • 第11回 順序回路の演習(2)   10進アップ/ダウンカウンタ
    (キーワード)ハードウェア記述言語、Verilog HDL、動作レベル、順序回路、レジスタ、カウンタ、always文
    (予習)レジスタの役割と動作について見直しておくこと。10進アップカウンタ、10進ダウンカウンタの動作を確認しておくこと。
    (復習)コンピュータを用いて、動作レベルで4進アップカウンタ、4進ダウンカウンタ、10進アップカウンタ、10進ダウンカウンタを記述し、それぞれ論理合成と波形シミュレーションをおこなって、目的の出力信号波形が得られたかどうかを確認すること。always文の使い方およびイベント発生条件について確認しておくこと。指定された期限までに課題を終えて、報告書を提出すること。
  • 第12回 順序回路の演習(3)   桁上げ/桁下げ機能付き10進カウンタ
    (キーワード)ハードウェア記述言語、Verilog HDL、動作レベル、順序回路、カウンタ、always文、桁上げ、桁下げ
    (予習)10進カウンタの桁上げと桁下げについて調べておくこと。機能ごとに下位モジュールを作成し、それらを呼び出して使う方法を確認しておくこと。always文の使い方およびイベント発生条件について確認しておくこと。
    (復習)コンピュータを用いて、動作レベルで10進2桁のアップカウンタとダウンカウンタを記述し、それぞれ論理合成と波形シミュレーションをおこなって、目的の出力信号波形が得られたかどうかを確認すること。桁上げ信号または桁下げ信号の発生条件とタイミングを確認しておくこと。指定された期限までに課題を終えて、報告書を提出すること。
  • 第13回 FPGA実験ボードを用いた演習(1)   分周回路+7セグメントLEDデコーダ付き10進カウンタ
    (キーワード)ハードウェア記述言語、Verilog HDL、動作レベル、組み合わせ回路、順序回路、分周回路、カウンタ、7セグメントLEDデコーダ、コンフィギュレーション
    (予習)組み合わせ回路と順序回路の違いを整理しておくこと。分周回路と7セグメントLEDについて調べておくこと。
    (復習)コンピュータを用いて、分周回路+7セグメントLEDデコーダ付き10進カウンタの論理合成をおこない、実験ボード上のFPGAのコンフィギュレーションをおこなって、動作を確認すること。指定された期限までに課題を終えて、報告書を提出すること。
  • 第14回 FPGA実験ボードを用いた演習(2)   ステート・マシンとその応用
    (キーワード)ハードウェア記述言語、Verilog HDL、動作レベル、組み合わせ回路、順序回路、ステート・マシン、コンフィギュレーション
    (予習)ステート・マシンについて調べておくこと。論理合成とFPGAのコンフィギュレーションの方法を確認しておくこと。
    (復習)コンピュータを用いて、動作レベルでステート・マシンを記述し、論理合成とFPGAのコンフィギュレーションをおこなって、実験ボード上で任意の4つのBCDコードの記憶と表示ができることを確認すること。指定された期限までに課題を終えて、報告書を提出すること。
  • 第15回 論理回路の実現方法、まとめ
    (キーワード)ディジタルIC、FPGA、CPLD、ハードウェア記述言語、ASIC、ミーリマシン、ムーアマシン
    (予習)FPGA、CPLD、ASICについて調べておくこと。
    (復習)これまでに学んだ全ての内容を見直し、期末試験に備えてください。

履修条件

特にありません。「学習に必要な知識・技能等」をよく読んでおいてください。

学習に必要な知識・技能等

ブール代数およびコンピュータの基本的な使い方とプログラムの基礎(if文やcase文の考え方)を理解できていることが望ましいです。


成績評価方法

折りたたむ

期末試験小テストレポート発表作品学習計画その他合計
総合評価 50 0 50 0 0 0 0 100
総合力指標 知識 20 0 10 0 0 0 0 30
技能 15 0 20 0 0 0 0 35
応用 10 0 15 0 0 0 0 25
表現 0 0 0 0 0 0 0 0
協調 0 0 0 0 0 0 0 0
意欲 5 0 5 0 0 0 0 10
  • 知識:知識を取り込む力
  • 技能:技能を修得する力
  • 応用:想起・解釈・問題解決能力、思考・推論・想像する力
  • 表現:プレゼンテーション力(提示・発表・伝達する能力)、コミュニケーション力(思考・感情を伝達する能力)
  • 協調:コラボレーション力(共同・協調する能力)、リーダーシップ力(統率力、指導力)
  • 意欲:自ら考え行動する力(学習に取り組む姿勢・意欲、チャレンジ精神、自己管理能力)

成績評価基準

  • 知識:論理関数と論理回路の関係性を理解し、組み合わせ回路と順序回路の基本構造・動作原理・設計方法を理解できていること。
  • 技能:目的に合わせて論理回路を設計し、論理式やカルノー図などを用いて最適化した上で、ハードウェア記述言語を用いてその論理回路を記述できること。
  • 応用:論理回路を解析し、特定の種類の論理ゲートだけを用いて再構成できること。また、信号波形シミュレーション結果の意味を理解し、説明できること。FPGAを搭載した実験ボードの動作を理解し、説明できること。
  • 表現:
  • 協調:
  • 意欲:授業に遅刻や欠席をせず、確実に予習・復習をおこない、発展課題を含めた各種課題に積極的に取り組んで、指定された期限までに報告書を作成して提出できること。

教科書・教材・参考文献・配布資料等

特に指定しません。必要に応じて、授業中に資料を配布します。ハードウェア記述言語は「Verilog HDL」を使用しますので、「Verilog HDL」を用いたプログラミングに関する本を1つくらい持っていた方が便利です。「Verilog HDL」に関する本はたくさん出版されていますので、各自が読みやすいと感じた本で構いません。良さそうな本が見つけられない場合は、担当教員に相談してください。「VHDL」は「Verilog HDL」とは異なる言語ですので、間違わないようにしてください。

授業における配慮

プロジェクター、手話、配布資料、ホワイトボードへの板書による視覚的情報提供をおこないます。受講生それぞれの進み方で課題に取り組めるように、1人1セットの演習環境を準備しています。

受講生に望むこと

FPGAやCPLDといったプログラム可能な論理デバイスは、ディジタル信号処理回路を実現する上で無くてはならない半導体電子部品です。ハードウェア記述言語を用いた組み合わせ回路と順序回路の記述ならびにFPGAやCPLDを搭載した論理回路の設計・動作検証に関する知識と技術をアピールすれば、就職活動に有利になることがあります。616室は、飲食禁止です。設備数の都合上、受講生が多い場合は、クラス分けをおこなって,他の時間に開講する場合があります。

教員実務経験