演算装置の設計
1.組み合わせ回路の論理設計
○
:与えられた入力に対
して出力が一意的に決まる論理回路
(入出力関係を
で表現)
組み合わせ回路の論理設計の手順
1) 機能を論理関数で表現
2) 論理関数の簡単化
3) 論理回路を求める
論理演算
NOT
NAND
NOR
AND
記号
−
↑
↓
・
優先順位
1
2
3
4
OR
∨
⊕
EXOR
5
6
論理素子
○基本演算の完全系:
→
が表せる基本演算の組
<AND,OR,NOT>
<AND,NOT>
<OR,NOT>
<NAND>
○ 表現の簡単さ
→<AND,OR,NOT>を用いる
AND−OR−NOT 系の基本公式
1)x∨x=x
2)x∨y= y∨x
3)x∨(y∨z)
=(x∨y)∨z
4)x・(y∨z)
=(x・y)∨(x・z)
5)x∨(x・y)=x
6)1∨x=1
7)0∨x=x
x・x=x
x・y= y・x
x・(y・z)
=(x・y)・z
x∨(y・z)
=(x∨y) ・(x∨z)
x・(x∨y)=x
1・x=x
0・x=0
8)x∨ x =1
x・ x =0
9) ( x ∨ y ) = ( x • y )
( x • y) = ( x ∨ y )
2)交換則
3)結合則
4)分配則
5,6,7)吸収則
8)補元則
9)ド・モルガンの法則
1)同一則
○ 論理関数
例)3入力の多数決をとる関数
真理値表
x
0
0
0
0
1
1
1
1
y
0
0
1
1
0
0
1
1
z
0
1
0
1
0
1
0
1
f
0
0
0
1
0
1
1
1
○論理関数の作成(
)
→出力が1のときの入力に対し、変
を、0のとき
数の値が1のときは
を作り、それを
で結合し
は
で結
た最小項を作り、それらを
合→ f = x yz ∨ xyz ∨ xyz ∨ xyz
○論理関数の簡単化
方法1:基本公式を利用
f = x yz ∨ xy z ∨ xyz ∨ xyz
= x yz ∨ xyz ∨ xyz ∨ xyz ∨ xyz ∨ xyz
= ( x ∨ x ) yz ∨ x ( y ∨ y ) z ∨ xy ( z ∨ z )
= yz ∨ xz ∨ xy
○論理回路
方法2:ベイチ図(マス目が最小項)
[簡単化の手順]
(1) 論理関数を最小項の和で表す。
(2) 各最小項に対応する区画(マス目)に
1を記入
(3) 1 の区画を2のべき乗(例えば2、4、8、
16)個で最大となるループで囲む。
・図の上下・左右は巡回状に隣接
・ループは共通部をもってもよい。
(4) 各ループに対応する項の和が簡略化
された式(ただし、値 1 の最小項
を最小限 1 つのループが囲んでい
ればよく、すべてのループの論理
和をとる必要はない。 )
[例]3 変数の場合
ベイチ図
最も簡略化された式
方法3:カルノー図
例)4入力A、B、C、Dに対し、4出力Y1,Y2,Y3,Y4
が真理値表のように得られる組み合わせ回路の論理関
数を簡単化された形で求める。
真理値表
A B C D
Y1 Y2 Y3 Y4
0 0 0 0
1
0
0
0
1 0 0 0
0
1
0
0
0 1 0 0
1
1
0
0
1 1 0 0
0
0
1
0
0 0 1 0
1
0
1
0
1 0 1 0
0
1
1
0
0 1 1 0
1
1
1
0
1 1 1 0
0
0
0
1
0 0 0 1
1
0
0
1
1 0 0 1
0
0
0
0
カルノー図の作成
1)4入力の場合、入力A、Bを縦に、入力C、Dを横に配
した図を作成(隣通しで 1 ビットだけ変わるように)(使わ
ない組み合わせも横線―で記入)
AB/CD 00 10 11 01
00
−
10
−
11
−
−
01
−
−
2)この表を出力の数と同じ4つ作成し、それぞれの出力
について出力が1になる組み合わせのマス目に1を記入。
3)2のべき乗(1、2、4、8、16、)で、できるだけ大きな1
のまとまり(―も含む)を○で囲む(全ての1が含まれるよ
うに、また同じ1が複数の○に囲まれても可)(但し、上下、
左右は繋がっているものと考える)
4)各○に対応した論理積項の論理和を求める
Y1= A
Y2= AB D ∨ A B
Y3= A C ∨ B C ∨ ABC
Y4= A D ∨ ABC