論理回路 第12回 http://www.fit.ac.jp/~matsuki/LCA.html
今日の内容 組み合わせ論理回路の設計1 組み合わせ論理回路の設計2 加算回路の設計
例題 A A + B = AB B f = AB + BC = (AB)(BC) C B + C = BC = (A+B)(B+C) 以下の回路を解析せよ(論理関数fを求めよ) A A + B = AB B f = AB + BC = (AB)(BC) C B + C = BC = (A+B)(B+C) 2 1 = B + AC
論理回路の解析2(NAND/NOR) A A + B = AB B f = AB + BC = B + AC C B + C = BC NAND/NORゲートで構成される回路は,レベルが多くなると, 否定の回数が多くなるため, AND/ORゲートと同様の解析方法は難しくなる NAND/NORゲート ⇒ AND/ORゲートに変換 A A + B = AB B f = AB + BC = B + AC C B + C = BC
論理回路の解析2(NAND/NOR) NAND/NORゲート ⇒ AND/ORゲートに変換 (1)奇数レベルのゲートにo(odd) 印を付与 (2)偶数レベルのゲートにe(even) 印を付与 (3)o印のゲートをド・モルガンの等価ゲートに変換 (4)二重否定を削除(相殺されるため) (5)o印のNANDはORに,NORはANDに置き換わる (6)e印のNANDはANDに,NORはORに置き換わる
論理回路の解析2(NAND/NOR) A B C f e o e 2 1 ド・モルガン 等価ゲート A B C
論理回路の解析2(NAND/NOR) ド・モルガン 等価ゲート A B C A B f = (A+B) (B+C) = AC + B C
論理回路の解析2(NAND/NOR) もし,同じゲートの出力が奇数レベルと偶数レベルにつながっている場合 そのゲートは特別扱いする必要がある 方法① ゲートを出力別に分割する 方法② 偶数レベルに繋がる線に インバーターを挿入する
論理回路の設計1(AND/OR回路) AND-ORゲート構成(積和形): OR-ANDゲート構成(和積形): レベル1:1個のORゲート 入力側から見た呼び名
論理回路の設計1(AND/OR回路) 積和形 (1) f = AB + AD + BCD (2)f = (A + B)(A + C)(A + D)(B + D) 和積形
論理回路の設計1(AND/OR回路) (1) f = AB + AD + BCD (2)f = AB + D(A + BC) ゲート数を少なくする⇒エラー率,コストの抑制 ゲート・レベル数を小さくする⇒遅延時間の抑制 ゲート入力数を小さくする⇒消費電力量の抑制
論理回路の設計2(NAND/NOR回路) NAND/NORゲートは,論理の完全性を持っている 二重否定法(double complement method)によって,ド・モルガンの定理を利用してNAND/NORの形に式を変形 部品の種類を減らすことが可能になる
加算回路 2進数の加算を行う回路を設計する 半加算回路(Half Adder) 全加算回路(Full Adder)
半加算回路 2進数の1ビットの加算 0 + 0 0 1 + 0 1 0 + 1 1 1 + 1 10 桁上げ キャリー
半加算回路 1 0 + 1 0 1 0 0 1 0 1 1 + 0 0 1 1 1 1 1 0 1 0 0 1 1 桁上げ キャリー 各桁は,各桁の加算結果に一つ下の桁からのキャリーを加えなければならない
半加算回路 半加算回路 半加算回路(半加算器): 1桁の加算を行う論理回路で,その桁の加算のみを行い,下位桁からのキャリーの加算を行わない回路 A S 半加算回路 B C+ A,B:2進数の1ビット S :部分和 C+ :上位桁へのキャリー
半加算回路 真理値表(部分和S,キャリーC+) 入力 出力 A B S C+ 0 1
半加算回路 カルノー図(部分和S,キャリーC+) S = A B + A B C+ = A B (1) 部分和 S (2) キャリー C+ 0 1 A B 0 1 A (1) 部分和 S (2) キャリー C+ S = A B + A B C+ = A B
半加算回路 部分和SとキャリーCの論理式 S = A B + A B C+ = A B C+ A B S AND-ORゲート構成
半加算回路 S = A B + A B C+ = A B C+ A B S 部分和SとキャリーCの論理式 NANDゲート構成 AND-ORゲート構成
半加算回路 S = A B + A B C+ = A B A A = B B = 0より 部分和SとキャリーCの論理式 S = A B + A B C+ = A B A A = B B = 0より S = A B + A B = B B + A B + A A + A B = B( B + A ) + A( A + B ) = (A + B)(A + B) = (A + B)(A B)
半加算回路 部分和SとキャリーCの論理式(簡単化) S = (A + B)(A B) C+ = A B C+ A B S 最小ゲート構成
半加算回路 S = A B + A B = A + B C+ = A B A C+ B S 部分和SとキャリーCの論理式 排他的論理和 S = A B + A B = A + B C+ = A B A C+ B S XOR(排他的論理和)ゲートによる構成
全加算回路 全加算回路 全加算回路(全加算器): 半加算回路による部分加算に加えて,下位桁からのキャリーをも同時に加算する回路 A S B 半加算回路による部分加算に加えて,下位桁からのキャリーをも同時に加算する回路 A S B 全加算回路 C+ C A,B:2進数の1ビット C :下位桁からのキャリー S :部分和 C+ :上位桁へのキャリー
全加算回路 真理値表(部分和S,キャリーC+) 入力 出力 A B C S C+ 0 1
全加算回路 カルノー図(部分和S,キャリーC+) S = ABC + ABC + ABC + ABC C+ = AB + BC + AC 0 1 A B 0 0 0 1 1 1 1 0 C 0 1 A B 0 0 0 1 1 1 1 0 (1) 部分和 S (2) キャリー C+ S = ABC + ABC + ABC + ABC C+ = AB + BC + AC
全加算回路 S = ABC + ABC + ABC + ABC C+ = AB + BC + AC 部分和SとキャリーCの論理式 S = ABC + ABC + ABC + ABC C+ = AB + BC + AC = (ABC + ABC + ABC + ABC) AND-ORゲート構成(p.94, 図4.23(a) ) NANDゲート構成(p.94, 図4.23(b) )
注意事項 講義に関する質問・課題提出など: メールについて 2009lcx@gmail.com 本文にも短いカバーレター(説明)をつける 件名は,学籍番号+半角スペース+氏名 (例)S09F2099 松木裕二 本文にも短いカバーレター(説明)をつける 課題はWordなどで作り,添付ファイルとして送る