コンピュータ設計概論
藤原秀雄
講義スタイル
◆ 教科書を使って講義します。
図や表はスライド(プロジェクター)を使い、
教科書の内容は、ホワイトボードに板書しながら説明します。
◆ 毎回出席を取ります。
講義の理解を深めるために、毎回簡単な小テストを行います。
◆ 定期試験では教科書持ち込み可です。
日頃から、授業の予習、復習に、教科書を活用してください。 評価基準・方法:
定期試験(筆記試験) 60%
教科書
藤原秀雄著: コンピュータ設計概論、工学図書 , 円 �
論理回路 年前期 と
コンピュ タ設計概論 年後期
の両方の教科書
第 章〜第 章 論理回路
第 章〜第8章 コンピュ タ設計概論
講義テーマ・概要
半導体技術の進歩により、ディジタルシステムは現代の情報社 会に広く浸透しており、通常のコンピュータの他、マイクロプロ セッサ、メモリ、各種専用回路を一つのチップ上に集積したシス テムオンチップとして実現されます。
本講義では、このようなコンピュータやシステムオンチップな どのディジタルシステムをどのように設計するかに関する方法論 を理解し、関連する基礎知識を習得することを目的としています。 コンピュータの構成、設計論を学ぶことにより、コンピュータの 中身を理解し、簡単なコンピュータが設計できるようになります。 同時に、ハードウエアとしてのコンピュータに関連する基礎知識、 ならびに専門知識を習得できます。
講義スケジュール(授業計画)
第1回 はじめに 論理回路 … 第1章(要点だけ) 第2回 論理回路 … 第2章(要点だけ)
第3回 論理回路 … 第3章(要点だけ) 第4回 コンピュータの原理(1)
第5回 コンピュータの原理(2) 第6回 レジスタ転送レベルの設計 第7回 演算部の設計(1)
第8回 演算部の設計(2) 第9回 制御部の設計(1) 第10回 制御部の設計(2)
第11回 コンピュータの設計(1) 第12回 コンピュータの設計(2) 第13回 コンピュータの設計(3) 第14回 定期試験(筆記試験)
第1章 論理回路の基礎
論理和、論理積、論理否定
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 1 0・0 = 0 0・1 = 0 1・0 = 0 1・1 = 1
0 = 1 1 = 0
普通の代数との違い
ページ2
論理式、論理関数
論理代数 <{0,1}, +, ・,  ̄ , 0, 1> において 0,1の値をとる変数を 論理変数
論理変数と0と1に演算 +, ・ ,  ̄ を施して得られる式を論理式 論理式で表現する関数を論理関数
論理関数は論理式で表現される
例えば、多数決関数と呼ばれる論理関数はつぎの論理式
ページ2
論理式による表現
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
表1.1 多数決論理関数の真理値表
ページ3
論理式による表現 (最小項)
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
表1.1 多数決論理関数の真理値表
x1・x2・x3
最小項
ページ4
論理式による表現 (最小項)
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
表1.1 多数決論理関数の真理値表
x1・x2・x3
最小項
ページ4
論理式による表現 (最小項)
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
表1.1 多数決論理関数の真理値表
x1・x2・x3
最小項
ページ4
論理式による表現 (最小項)
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
表1.1 多数決論理関数の真理値表
x1・x2・x3
最小項
ページ4
論理式による表現(主加法標準形)
x1 x2 x3 f 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
0 0 0 1 0 1 1 1
主加法標準形 = 最小項の論理和形 最小項
x1x2x3 x1x2x3
x1x2x3 x1x2x3 +
f = + +
論理ゲート
AND OR NOT
0 0 0 0 1 0 1 0 0 1 1 1
A•B A B
0 0 0 0 1 1 1 0 1 1 1 1
A+B A B
0 1 1 0 A A
論理積 論理和 論理否定
ページ13
論理ゲート
NAND NOR XOR
0 0 1 0 1 1 1 0 1 1 1 0
A•B A B
0 0 1 0 1 0 1 0 0 1 1 0
A+B A B
0 0 0 0 1 1 1 0 1 1 1 0
A + B A B
排他的論理和
ページ13
論理回路のシミュレーション
0
1
1
論理回路のシミュレーション
0
1
1
0
1
1
論理回路のシミュレーション
0
1
1
0
1
1
0
0
AND 0 0
0 1 1 0 1 1
0 0 0 1
NOT
論理回路のシミュレーション
0
1
1
0
1
1
0
0
0
OR 0 0
0 1
0 1
論理回路のシミュレーション
0
1
1
0
1
1
0
0
0
論理回路のシミュレーション
1
1
1
論理回路のシミュレーション
1
1
1
1
1
1
論理回路のシミュレーション
1
1
1
1
1
1
1
0
AND 0 0
0 1 1 0 1 1
0 0 0 1
NOT 0 1
論理回路のシミュレーション
1
1
1
1
1
1
1
0
1
OR 0 0 0
論理回路のシミュレーション
1
1
1
1
1
1
1
0
1
シミュレ ション結果
論理回路と真理値表
A B C X 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
1 0 1 0 1 0 1
1 1
11
1
0
1
1
0
1
1
0
0
0
真理値表
論理回路と真理値表
A B C X 0 0 0
0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
1 0 1 0 1 0 1 1 真理値表
論理式
論理図
X = A B + C
C
A ・B
A ・B + C
論理回路
入力値、出力値、内部状態の値が0または1の組合せとして 表現できる回路を論理回路(ディジタル回路)
入力 内部状態 出力
(記憶)
ページ12
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
3二つの論理式を調べてみよう
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
3f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
2x
31
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
31
1
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
2x
31
1
1
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
31
1
1
1
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
2x
31
1
1
1
x
1x
2x
31
1
1
1
f 1 とf 2 は等価な論理式?
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x
1+ x
2x
31
x
1x
31
1
1
1 1
x
1x
31
1
1
1
f 1 とf 2 は等価な論理式?
f = x
1+ x
2x
31
x
1x
2x
31
1
1
1 1
x
1x
2x
31
1
1
1
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f
1とf
2は等価である!
より小さな論理回路で実現
f
2= x
1+ x
2x
3より小さな論理回路で実現
f
2= x
1+ x
2x
3回路の大きさは
ANDゲートの個数(積項数) 入力線の総数(リテラル数)
で評価できる
論理式の簡単化
積項数が最小の論理和形を、項数最小論理和形
項数最小論理和形のうちで
リテラルの総数が最小の論理和形を、最小論理和形
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3f = x + x x
積項数=5, リテラル数=15
ページ15 18
カルノー図による簡単化
1
x
1x
x
31
1
1
1
最小項
f = x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3+ x
1x
2x
3ページ15 18
カルノー図による簡単化
ブール代数の公理、分配律、相補律 x•a + x•a = x•(a + a) = x
1
x
1x
31
1
1
1
x2x3
x1•x2•x3 + x1•x2•x3 = (x1 + x1)•x2•x3 = x2•x3
隣接するループを併合 ページ15 18
カルノー図による簡単化
ブール代数の公理、分配律、相補律 x•a + x•a = x•(a + a) = x
1
x
1x
x
31
1
1
1
x1x2
x1x2 x1 x1•x2 + x1•x2 = x1• (x2 + x2) = x1
隣接するループを併合 ページ15 18
カルノー図による簡単化
隣接するループを併合し続ける
これ以上併合できないループ(極大なループ)を 主項と呼ぶ
1
x
1x
x
31
1
1
1
x1 x2x3
f = x
1+ x
2x
3ページ15 18