第2章 ゲート論理
2
2.1 ブール代数
� タ 基礎 論理体系
9世紀中頃 英国 数学者
George Boole 考案し 代数��
�
� 要素 集合
演算 + び 単 演算  ̄ 定義さ い
任意 要素 a, b, c い 等式 公理 満
こ 代数系 < , +, ,  ̄ , , > 代数 いう
演算 +, ,  ̄ 各々 和 積 転 呼ぶ
3
2.1 ブール代数
1 ベ 等律 ぐ + ぐ = ぐ ぐ ぐ = ぐ
2 交換律 ぐ + け = け + ぐ ぐ け = け ぐ
3 結合律 。ぐ + け) + c = ぐ + 。け + c) 。ぐ け) c = ぐ 。け c) 4 吸 律 ぐ + 。ぐ け) = ぐ ぐ 。ぐ + け) = ぐ
5 分配律 。ぐ + け) c = 。ぐ c) + 。け c)
。ぐ け ) + c = 。ぐ + c) 。け + c) 6 対合律
7 相補律
8 単位元 1 ぐ = ぐ 0 + ぐ = ぐ 9 零元 1 + ぐ = 1 0 ぐ = 0 10 ド モ ン )J2oちgぐn 律
a = a
a + a = 1 a ⋅ a = 0
(a + b) = a⋅ b (a⋅ b) = a + b
4
2.1 ブール代数
1 ベ 等律 ぐ + ぐ = ぐ ぐ ぐ = ぐ
2 交換律 ぐ + け = け + ぐ ぐ け = け ぐ
3 結合律 。ぐ + け) + c = ぐ + 。け + c) 。ぐ け) c = ぐ 。け c) 4 吸 律 ぐ + 。ぐ け) = ぐ ぐ 。ぐ + け) = ぐ
5 分配律 。ぐ + け) c = 。ぐ c) + 。け c)
。ぐ け ) + c = 。ぐ + c) 。け + c) 6 対合律
7 相補律
8 単位元 1 ぐ = ぐ 0 + ぐ = ぐ 9 零元 1 + ぐ = 1 0 ぐ = 0 10 ド モ ン )J2oちgぐn 律
a = a
a + a = 1 a ⋅ a = 0
(a + b) = a⋅ b (a⋅ b) = a + b
双対の原理
5
2.1 ブール代数
� 代数 < , +, ,  ̄ , , > い
集合 任意 値 変数 変数 呼び
変数 定数 演算+, ,  ̄ 施し 得 式 式 いう
式 表現 関数 関数 いう
特 変数 論理変数 いい
そ 場合 式 関数 和 積 転
各々 論理式 論理関数
論理和 論理積 論理否定 T 呼ぶ
6
真理値表
7
演習問題
�
代数 公理 等式 示
(1) x + x y = x + y
(2) x y + x z + y z = x y + x z
(3) x z + y z = x z + y z
8
演習問題(解答)
�
代数 公理 等式 示
(1) x + x y = x + y
左辺 = x (1+y) + x y
= x + x y + x y
= x + (x + x) y
= x + 1 y
= x + y
= 右辺
9
演習問題(解答)
�
代数 公理 等式 示(2) x y + x z + y z = x y + x z
左辺 = x y + x z + (x + x) y z
= x y + x z + x y z + x y z
= x y (1+z) + x z (1+y)
= x y + x z
10
演習問題(解答)
�
代数 公理 等式 示(3) x z + y z = x z + y z
左辺 = x z y z
= (x + z) (y + z)
= x y + x z + y z + z z
= x y (z + z) + x z + y z
= x y z + x y z + x z + y z
= x z (y+1) + y z (x+ 1)
= x z + y z = 右辺
11
2.2 ディジタル回路
�
入力値 出力値 び内部状態 値値 組 合わ し 表現 こ 回路
タ 回路 論理回路 いう
論理回路 さ
組合 回路 序回路 分類
回路 出力値 そ 入力値 決
組合 回路 呼び
入力値 決 回路 内部状態 依存
序回路 呼ぶ
12
組合せ回路
�
各入力 論理変数 で1
, で
2
, ..., で
n
, 各出力 論理変数 z
1
, z
2
, ..., z
R
対応
出力 zN 入力変数 で
1
, で
2
, ..., で
n
, 論理関数
zN
= K
N
。で
1
, で
2
, ..., で
n
) N = 1, 2, ..., R
13
ゲート
14
等価回路
A + B = A・B
15
XOR ゲート
xy
x・xy + y・xy = x・y + x・y
16
順序回路
内部状態 そ 入力 内部状態 時刻 内部状態 変化
こ 時刻 タ ン い
序回路 同期式 序回路 非同期式 序回路 分類
17
同期式順序回路
18
D ラッチ
19
D ラッチの動作
0
1 0
1
1
0
1 0
1
1 1
1
0
0
1
0
20
D ラッチの動作
0
1 0
1
1
0
1 0
1
1 1
1
0
0
1
0
21
D ラッチの動作
制御入力 値 持続し い 間
タ入力 変化 次々 ッチ 取 込 し う
ッ 値 時間幅
組合 回路 信号変化 伝播 時間 長 し う
ッ ッ 状態 そ ッ 間 度以 変化 こ 起こ
正しい状態変化 保証 こ し う
0
1 1
1
1
0 1
0
0 1
1 0 0 1
22
マスタースレーブDフリップフロップ
ッ 時間 長
そ 間 タ入力 取 込 値
ッ ッ 出力 一度 伝播
ッ ッチ 出力 Q
2 わ Q 伝播
こ 動作 先 述 誤動作 防 こ
23
エッジトリガDフリプフロップ
ッチ う ッ ベ 同期
ッ 変化 立 や 立 同期し
タ入力 ッ ッ 取 込 方法
立 正エッ
立 負エッ
24
フリップフロップ
25
2.3 組合せ回路の設計
組合 回路 設計手
実現し う 組合 回路 機能 仕様 記述
具体的 入力 出力 対応 記述
仕様 満 真理値表 作成
真理値表 各出力 対応 論理関数 簡単化 行 う
論理図 描
26
半加算器
半加算器 設計
0 0 0 1
1
S = X Y + X Y = X ⊕ Y
C = X Y27
全加算器
全加算器 設計
28
全加算器
C = X Y + X Z + Y Z
S = X Y Z + XY Z + X Y Z + X Y Z
S = X ⊕ Y ⊕ ZC = X Y + Z (X ⊕ Y)
29
全加算器
S = X ⊕ Y ⊕ Z
C = X Y + Z (X ⊕ Y)
30
並列加算器
31
デコーダ
32
デコーダ
33
イネーブル入力付きデコーダ
34
デコーダの合成
35
エンコーダ
A
0
= )
1
+ )
3
+ )
5
+ )
7
A
1
= )
2
+ )
3
+ )
6
+ )
7 A
2
= )
4
+ )
5
+ )
6
+ )
7
36
マルチプレクサ
37
マルチプレクサ
38
ROM (Read Only Memory)
39
PLA (Programmable Logic Array)
40
2.4 順序回路の設計
序回路 設計手
実現し う 序回路 機能 仕様 記述
具体的 状態図 上下ぐ下J dNぐgちぐR 記述
状態図 状態遷移表 上下ぐ下J 下ちぐn上N下Non 下ぐけQJ 作成し
ッ ッ 用い 状態割当 上下ぐ下J ぐ上上NgnRJn下 行 う
序回路 出力関数 び ッ ッ 入力関数 求
簡単化 行 う
論理図 描
41
カウンタ(状態図)
42
カウンタ(状態割当、状態遷移表)
43
カウンタ(簡単化)
44
カウンタ D
Y0
= Y
0X + Y
0X = Y
0⊕ X
45
カウンタ
D
Y1
= Y
1Y
0+ X + Y
1Y
0X = Y
1⊕ Y
0X
46
カウンタ
DY
2 = Y2 Y1 + Y0 + X + Y2Y1Y0X = Y2 ⊕ Y1Y0X
47
カウンタ(論理図)
DY
0 = Y0X + Y0X = Y0 ⊕ X
DY
2 = Y2 Y1 + Y0 + X + Y2Y1Y0X = Y2 ⊕ Y1Y0X
DY
1 = Y1 Y0 + X + Y1Y0X = Y1 ⊕ Y0X
48
演習問題
ッチ 用い タ ッ ッ 設計
ッチ
D C
Q Q
D Q(t+1) 0
1
0 1
タ JK ッ ッ
J C
Q
Q
J K Q(t+1) 0 0
0 1 1 0 1 1
Q(t) 0 1 Q(t) K
49
演習問題(解答)
D Q
Q
タ JK ッ ッ
J Q
Q K
J K
Q Q
50
演習問題(解答)
D Q
Q J
K
Q Q J K Q(t+1)
0 0 0 1 1 0 1 1
Q(t) 0 1 Q(t)
K
Q J
D = J K + K Q + J Q
51
タイミング信号生成
52
レジスタ
53
RAM (Random Access Memory)
54
RAM (Random Access Memory)
55