情報工学実験 I 実験テーマ : 基本ゲート回路 035740F : 根保光秀 グループ名 実験日 提出日 共同実験者 035726A 035728G 035734B : : : : : : : D 2004/05/24 2004/05/31 諏訪園 勇太 平良 文紀 レンソー 仲西 徳洋 1 実験の目的 • 基本ゲート回路と論理演算の基礎を習得する。 • 汎用ロジック IC の基本的な使い方について学ぶ。 2 実験方法 NAND ゲートを用い基本的なゲート回路を設計し、設計した回路を実 際に組み立てて動作するか確認する。 以下に実験に使用した器具のシリアルを示す。 表 1: 実験で使用した器具 器具名 シリアル番号 3 電源 B-E 227 汎用ロジック IC 4011B 実験結果 (1) NAND ゲートのみで NOT,AND,OR,NOR,XOR ゲートを設計せよ. • Not 回路 A F A·A=A • AND 回路 A F A·B =A·B B • OR 回路 A F A·B =A+B B • NOR 回路 A F A·B =A+B B • XOR 回路 = A·B+A·B = A·B+A·B+A·A+B·B A = A · (A + B) + B · (A + B) F B = A · (A + B) + B · (A + B) = A · (A · B) · B · (A · B) 1 (2) (1) で設計した回路を NAND ゲート IC を用い実現し, 動作を確認せよ. • NOT と AND A F A B 13 12 11 10 9 8 2 3 4 5 6 7 GND F Vcc 14 Vcc 14 1 13 12 11 10 9 8 2 3 4 5 6 7 GND 1 図 1: NOT を実際に組み立てた図 図 2: AND を実際に組み立てた図 • OR と NOR B A Vcc 14 1 B A Vcc 14 13 12 11 10 9 8 2 3 4 5 6 7 GND 1 13 12 11 10 9 8 2 3 4 5 6 7 GND F F 図 3: OR を実際に組み立てた図 図 4: NOR を実際に組み立てた図 • XOR B A Vcc 14 1 13 12 11 10 9 8 2 3 4 5 6 7 GND F 上記の回路を実際に組み立てて動作を確認した所、正常に動作していた。 2 4 考察 (1) 2 変数の論理関数 16 種類を全て列挙し論理回路で表現せよ。 2変数の入力パターンが、”00”, ”01”, ”10”, ”11” の 4 種類あり、出 力がそれぞれ 0,1 の2パターンあるので、24 = 16 となるので 16 種類ある。以下に出力に関する関数を示す。 表 2: 2 変数の論理関数一覧 出力 出力結果 論理関数 f0 0000 0 f1 0001 A·B f2 0010 A·B f3 0011 A f4 0100 A·B f5 0101 B f6 0110 A·B+A·B f7 0111 A+B f8 1000 A+B f9 1001 A·B+A·B f10 1010 B f11 1011 A+B f12 1100 A f13 1101 A·B f14 1110 A·B f15 1111 1 (2) NAND 回路以外のゲート回路で 1 種類 NOT,AND,OR,NAND,NOR,XOR を設計せよ。 NAND 以外のゲート回路で他の回路を実現するには • 2 入力回路である • NOT を実現できる • AND,OR を実現できる 上記の条件を満たさなければならないので、NOT,AND,OR,XOR では設計できない。この条件を満たす回路は NOR だけなので NOR を使って説明する。 表 3: 他の回路を表す条件 回路名 理由 NOT 1入力 1 出力なので表せない AND NOT を表現できない OR NOT を表現できない XOR AND , OR を表現できない NOR すべての条件を満たす 3 • NOT 回路 A A+A=A F • AND 回路 A F A+B =A·B B • NAND 回路 A F A+B =A·B B • OR 回路 A F A+B =A+B B • XOR 回路 XOR = A·B+A·B = A·A+A·B+A·B+B·B = A · (A + B) + B · (A + B) = A · (A + B) + B · (A + B) A F B = A + (A + B) + B + (A + B) = A + (A + B) + B + (A + B) = A + (A + B) + B + (A + B) (3) 2 種類のゲート回路で,NOT,AND,OR,NAND,NOR,XOR を 2 組以上示 せ。 • (not ,or)(and,not) を使った回路を示す。 • NOT 回路 (not 回路のみで表せる) 図 5: not 回路 • AND 回路 A A F F B B 図 7: and 図 6: not + or 4 • NAND 回路 A A F B F B 図 9: and + not 図 8: or + not • OR 回路 A A F F B B 図 11: and + not 図 10: or • Nor 回路 A A F F B B 図 13: and + not 図 12: or + not • XOR 回路 A A F F B B 図 14: or 図 15: and + not (4) 半加算器および全加算器とはどのような回路か調査し説明せよ。 半加算器とは、1 ビットの 2 進数 A,B から加算結果 S と桁上げ C を求める回路で下図のような組み合わせ回路である。 A S B C 図 16: 半加算器 5 表 4: 半加算器の真理値表 A B S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 全加算器とは下位ビットからの桁上げを考慮した加算器です。 S A B HA C C S C S HA C 図 17: 全加算器 表 5: 全加算器の真理値表 A B C S C 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 このように、半加算器は下位からの桁上げを考えない加算器で、全加算 器は桁上げを考慮した加算器である事がわかる。実際に、n ビットの演 算を行う時は、最初に半加算器を置き、残りを全て全加算器にする事で 実現する事ができる。 6 (5) 本実験について考察せよ。 今回の課題のように、回路を設計する時に便利なのが、ブール代 数と呼ばれる論理演算である。 • ブール代数とは ”0” 、”1”の二値だけを使った論理演算の事で + を OR、· を AND 、A を NOT に対応させて、回路を計算によって設計で きる論理演算です。次の法則を使って回路を簡略化する事が できる。 表 6: ブール代数の公式 例 公式 可換則 A·B =B·A A+B =B+A 結合則 A · (B · A) = (A · B) · C A + (B + C) = (A + B) + C 吸収則 A · (A + B) = A A + (A · B) = A 分配則 A · (A + B) = A · B + A · C A + (B · C) = (A + B) · (A + C) 相補則 A·A=0 A+A=1 二重否定則 A=A A·A=A A+A=A べき等則 ド・モルガンの定理 A+B =A·B A·B =A+B 上記の法則を組み合わせて、目的の回路を設計する事ができる。 • ブール代数を用いて実際の計算を以下に示す. A · B + A · B を N AN D(A · B) のみで表す。 A·B+A·B (1) 相補則を用い (1) 式に A · Aと B · B を加える。(0 は何回加えても 0) A·A+A·B+A·B+A·B (2) (2) 式をそれぞれ A と B でくくる A · (A + B) + B · (A + B) (3) (3) 式をド・モルガンの定理を用い + を · に変換するまた NAND の形にす るために全体に NOT をかける A · (A · B) + B · (A · B) A · (A · B) · B · (A · B) (4) と (4) 式のように A · B + A · B を NAND のみで設計する事ができた。この ようにブール代数を使うと回路の設計が楽になることが分かった。 参考文献 [1] 安藤 明之 : 一橋出版株式会社 : サクセスガイド ハードウェア 7
© Copyright 2024 Paperzz