論理回路基礎 2. 論理ゲート と ブール代数 五島 正裕 論理回路基礎 今日の内容 1. 前回の復習 アナログとディジタル 2. 本論 論理ゲート ブール代数 3. 今日のまとめ 論理回路基礎 前回の復習 論理回路基礎 アナログ と ディジタル 情報処理の過程において, 媒体の持つ物理量 と それの表す値 との 写像の方式 アナログ:連続 連続的なデータ ⇔ 媒体の連続的な状態 ディジタル:離散 離散的なデータ ⇔ 媒体の離散的な状態 論理回路基礎 物理量 と 値 の 写像 値 値 閾値 3 2 1 O 物理量 アナログ O 物理量 ディジタル 論理回路基礎 アナログ,ディジタル と 信号劣化 劣化がなければ(S/N 比∞)… アナログがよい アナログ: 情報量∞ ディジタル: 量子化誤差がある – 8b(256階調)で 0.4%(≒ 人間の識別限界) – ビット数を増やせば,誤差は減る 論理回路基礎 アナログ,ディジタル と 信号劣化 劣化があるので… ディジタルがよい アナログ: 決して元に戻らない ディジタル: 閾値未満のノイズなら,完全に元に戻る – 2値なら,10~20% くらいなら耐えられる – ただし,それでも誤るとアナログより致命的になり得る 論理回路基礎 ディジタル の メリット(まとめ) 記録/伝送 ノイズによって誤りが発生しにくい コピーや経年によって情報が劣化しにくい 再現性が高い 処理 ディジタル式のコンピュータとの親和性が高い プログラミング可能 – 圧縮が容易 – 誤り訂正符号などによる誤り訂正が可能 –… 論理回路基礎 ディジタル回路 と 論理回路 ディジタル回路 物理的 通常は,Low/High の2つの物理状態を扱う 通常は,電子回路で作る 論理回路 抽象的,モデル 真理値の 0/1,false/true を扱う ディジタル回路で作る 論理回路基礎 論理ゲート と ブール代数 論理回路基礎 今日の目標 すべての論理回路は,AND,OR,NOT の組み合わせでできる. 論理回路基礎 論理ゲート AND (論理積) MIL記号 MIL symbol a b a z b 論理式 logic expression 真理値表 truth table z = a∙b NOT (論理否定) OR (論理和) z a z=a+b z z=a z=¬a a b z a b z 0 0 0 0 0 0 a z 0 1 0 0 1 1 0 1 1 0 0 1 0 1 1 0 1 1 1 1 1 1 論理回路基礎 論理ゲート NAND MIL記号 MIL symbol a b a z b 論理式 logic expression 真理値表 truth table buffer? NOR z = a∙b z a z=a+b z z=a a b z a b z 0 0 1 0 0 1 a z 0 1 1 0 1 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 1 0 論理回路基礎 論理ゲート XOR (EOR) (排他的論理和) MIL記号 MIL symbol 論理式 logic expression 真理値表 truth table a b XNOR (EQ) a z b b z=a z b z=a a b z a b z 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 1 1 1 論理回路基礎 余談 MIL 記号 MIL : 米国軍用規格(Military Standard) JIS の論理記号もある(が,誰も使わない) OR と XOR OR : (包含的)論理和 (inclusive-OR) XOR : 排他的 論理和 (exclusive-OR) 日常の「または」は,どっち? 1年以下の懲役 または 100万円以下の罰金 x = 0, 1 論理回路基礎 組み合わせ回路 (Combinational Circuit) a b c d z z = a∙b + c∙d 論理回路基礎 ブール代数 論理回路基礎 ブール代数 ブール代数 (Boolean Algebra) George Bool 論理計算のために考案 Claude Shannon 論理回路に応用 論理回路基礎 ブール代数の公理系 1. 変数(ブール変数)の値 0 または 1 2. 論理和 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 0, 1 + 1 = 1 3. 論理積 0 ∙ 0 = 0, 0 ∙ 1 = 1, 1 ∙ 0 = 1, 1 ∙ 1 = 1 論理回路基礎 論理関数 f : (i1, i2, …, in) → o (i1, i2, …, in, o : ブール変数) 2入力論理関数:先ほどの AND,OR 等 1入力論理関数:NOT ,BUF 等 n 2 n入力の論理関数は 2 とおり n 入力は 2 とおり そのそれぞれに,0 または 1 を指定できる n o 0 0 … 0 0/1 0 0 … 1 0/1 1 1 … 1 … … … … … 2 i1 i2 … in 0/1 論理回路基礎 すべての1,2入力論理関数 1 2 =2 i1 o0 o1 o2 o3 0 0 0 1 1 1 0 1 0 1 すべての1入力論理関数 21 すべての2入力論理関数 2 =4 i2 i1 o0 o1 o2 o3 o4 o5 o6 o7 o8 o9 o10 o11 o12 o13 o14 o15 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 2 2 =4 1 22 2 = 16 論理回路基礎 ブール代数の定理 対合律 ¬(¬x) = x 補元律 結合律 (x∙y)∙z = x∙(y∙z) (x + y) + z = x + (y + z) 分配律 x∙(¬x) = 0 x + y∙z = (x + y)∙(x + z) x + (¬x) = 1 x∙(y + z) = x∙y + x∙z べき等律 吸収律 x∙x = x, x∙(x + y) = x x+x=x x + x∙y = x 交換律 x∙y = y∙x x+y=y+x ド・モルガンの定理 ¬(x∙y) = ¬x + ¬y ¬(x + y) = (¬x)∙(¬y) 論理回路基礎 ド・モルガンの法則 ¬(x∙y) = ¬x + ¬y ¬(x + y) = (¬x)∙(¬y) 論理回路基礎 完全性(Completeness,完備性) 完全集合 (Complete Set) 論理関数の集合で, その要素の組み合わせによって,すべての論理関数を表現できる 完全集合の例 {AND, OR, NOT} {AND, NOT} {OR, NOT} {NAND} {NOR} 論理回路基礎 完全性の証明 {AND, OR, NOT} 数学的帰納法: 1. 1入力の論理関数は {AND, OR, NOT} の組合せで表現できる 1. n 入力の関数を {AND, OR, NOT} の組合せで表現できたと仮定して,(n + 1) 入力の関数が表現できることをいう 論理回路基礎 完全性の証明 {AND, OR, NOT} 1. 1入力の論理関数はすべて,{AND, OR, NOT} の組合せで表現できる. o0 = 0 0 i1 o0 o1 o2 o3 0 0 0 1 1 1 0 1 0 1 o1 = i1 o2 = ¬i1 o3 = 1 1 論理回路基礎 すべての1,2入力論理関数 1 2 =2 i1 o0 o1 o2 o3 0 0 0 1 1 1 0 1 0 1 すべての1入力論理関数 21 すべての2入力論理関数 2 =4 i2 i1 o0 o1 o2 o3 o4 o5 o6 o7 o8 o9 o10 o11 o12 o13 o14 o15 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 2 2 =4 1 22 2 = 16 論理回路基礎 完全性の証明 {AND, OR, NOT} 1. 1 入力の関数が {AND, OR, NOT} の組合せで表現できたので, 2 入力の関数が表現できることをいう 0 i1 f0 i1 f1 1 i2 = 0 論理回路基礎 完全性の証明 {AND, OR, NOT} 1. 1 入力の関数が {AND, OR, NOT} の組合せで表現できたので, 2 入力の関数が表現できることをいう 0 i1 f0 i1 f1 1 i2 = 1 論理回路基礎 完全性の証明 {AND, OR, NOT} 1. n 入力の関数を {AND, OR, NOT} の組合せで表現できたと仮定して, (n + 1) 入力の関数が表現できることをいう in+1 in … i2 i1 0 0 … 0 0 0 0 … 0 1 … … … 1 1 1 0 … 0 0 1 0 … 0 1 … … … … 1 1 … 1 1 f0 f = ¬in+1∙f0 + in+1∙f1 … … 1 … … … 0 o f1 論理回路基礎 完全性の証明 {AND, OR, NOT} 1. n 入力の関数を {AND, OR, NOT} の組合せで表現できたと仮定して, (n + 1) 入力の関数が表現できることをいう i1 i2 f0 in i1 i2 f1 in in+1 論理回路基礎 完全性の証明 一般の場合 {AND, OR, NOT} が作れることを言う ex) {NAND} AND OR NOT 論理回路基礎 今日のまとめ 論理回路基礎 ブール代数 完全集合: すべての論理関数が作れる 完全集合の例: {AND,OR,NOT} {NAND} 完全集合をディジタル回路で作ればよい! 普通は,{NAND,NOR,NOT} 論理回路基礎 来週以降の予定 11/ 3 文化の日 11/10 組み合わせ回路の最小化
© Copyright 2024 ExpyDoc