4. 組み合わせ回路の構成法 五島 正裕.

Slides:



Advertisements
Similar presentations
2016 年度 計量経済学 講義内容 担当者: 河田 正樹
Advertisements

論理回路 第3回 今日の内容 前回の課題の解説 論理関数の基礎 – 論理関数とは? – 真理値表と論理式 – 基本的な論理関数.
論理回路 第 11 回
0章 数学基礎.
第1回 確率変数、確率分布 確率・統計Ⅰ ここです! 確率変数と確率分布 確率変数の同時分布、独立性 確率変数の平均 確率変数の分散
第3回 論理式と論理代数 本講義のホームページ:
第12回 順序回路の解析方法 瀬戸 順序回路から,以下を導き、解析を行えるようにする タイムチャート 状態遷移関数・出力関数 状態遷移表
全加算回路 A, Bはそれぞれ0または1をとるとする。 下位桁からの繰り上がりをC1とする。(0または1)
電子回路設計 電子制御設計製図Ⅰ  2009年11月17日 Ⅳ限目.
第2回 真理値表,基本ゲート, 組合せ回路の設計
計算の理論 II NP完全 月曜4校時 大月美佳.
4. 順序回路 五島 正裕.
本時の目標 負の数をふくむ3つ以上の数の乗法や除法の効率のいい計算のしかたに気づき、効率よく計算することができる。
論理式の表現を数学的に取り扱いやすくするために代数学の助けを借りる.
人工知能特論2011 資料No.6 東京工科大学大学院 担当教員 亀田弘之.
香川大学工学部 富永浩之 情報数学1 第5-2章 命題論理式の 同値変形とカルノー表 香川大学工学部 富永浩之
情報教育論 第9回 仮定文の仕組み 政策・メディア研究科 岡田 健.
システム開発実験No.7        解 説       “論理式の簡略化方法”.
第4回 カルノー図による組合せ回路の簡単化 瀬戸 目標 ・AND-OR二段回路の実現コスト(面積、遅延)が出せる
補数 n:桁数、b:基数 bの補数 bn-x 253(10進数)の10の補数は、 =747
基本情報技術概論(第3回) 埼玉大学 理工学研究科 堀山 貴史
ディジタル回路 1. アナログ と ディジタル 五島 正裕.
7. 順序回路 五島 正裕.
5. 機能的な組み合わせ回路 五島 正裕.
論理回路 第7回
論理回路 第8回
ネットワーク理論講義補助資料 Text. 組合せ最適化とアルゴリズム 4.3 節 Lagrange緩和 pp
6. 順序回路の基礎 五島 正裕.
第6回 よく使われる組合せ回路 瀬戸 重要な組合せ回路を理解し、設計できるようにする 7セグディスプレイ用デコーダ 加算回路・減算回路
アルゴリズムとチューリングマシン 「もの」(商品)としてのコンピュータ 「こと」(思想)としてのコンピュータ アルゴリズム
電子回路設計 電子制御設計製図Ⅰ  2010年11月30日 Ⅲ限目.
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
第4章 組合せ論理回路 (4) Quine McCluskeyの方法.
ディジタル回路 3. 組み合わせ回路 五島 正裕 2018/11/28.
2. 論理ゲート と ブール代数 五島 正裕.
ディジタル回路 2. ブール代数 と 論理ゲート 五島 正裕.
第5回 今日の目標 §1.6 論理演算と論理回路 ブール代数の形式が使える 命題と論理関数の関係を示せる
ディジタル回路 6. 順序回路の実現 五島 正裕.
数理論理学 第3回 茨城大学工学部情報工学科 佐々木 稔.
デザイン情報学科 メディア情報設計 河原英紀
25. Randomized Algorithms
3. 論理ゲート の 実現 五島 正裕.
岩村雅一 知能情報工学演習I 第11回(後半第5回) 岩村雅一
9.通信路符号化手法1 (誤り検出と誤り訂正の原理)
7. 機能的な組み合わせ回路 五島 正裕.
平面波 ・・・ 平面状に一様な電磁界が一群となって伝搬する波
2007/6/12(通信コース)2007/6/13(情報コース) 住井
基本情報技術概論(第2回) 埼玉大学 理工学研究科 堀山 貴史
論理回路 第12回
論理回路 第4回
  第3章 論理回路  コンピュータでは,データを2進数の0と1で表現している.この2つの値,すなわち,2値で扱われるデータを論理データという.論理データの計算・判断・記憶は論理回路により実現される.  コンピュータのハードウェアは,基本的に論理回路で作られている。              論理積回路.
B03 量子論理回路の 最適化に関する研究 西野哲朗,垂井淳,太田和夫,國廣昇 電気通信大学 情報通信工学科.
補講:アルゴリズムと漸近的評価.
基礎プログラミング演習 第6回.
8. 順序回路の実現 五島 正裕.
論理回路 第5回
PROGRAMMING IN HASKELL
プログラミング言語論 第10回 情報工学科 篠埜 功.
ウェブデザイン演習 第6回.
~sumii/class/proenb2010/ml2/
2006/6/27(通信コース)2006/7/5(情報コース) 住井
~sumii/class/proenb2009/ml6/
PROGRAMMING IN HASKELL
香川大学工学部 富永浩之 情報数学1 第5-2章 命題論理式の 同値変形とカルノー表 香川大学工学部 富永浩之
問2 次の問に答えよ. (ただし,握手補題,オイラーの定理,Oreの定理 は授業で紹介したものとする) (1) 握手補題を書け.
プログラミング入門2 第6回 関数 情報工学科 篠埜 功.
JavaScript    プログラミング入門 2-3 式と演算子 2006/10/12 神津 健太.
アルゴリズム ~すべてのプログラムの基礎~.
練習問題.
練習問題.
Presentation transcript:

4. 組み合わせ回路の構成法 五島 正裕

今日の内容 導入問題 論理関数の標準形 カルノー図による簡単化 今日のまとめ

導入問題

例題 Q. 3つの入力 x,y,z に対して,以下のいずれかの条件が成立したとき 1,それ以外は 0 となる論理関数 F を求めよ. x と z がともに 1. x と y が等しくなく,かつ,y と z が等しい. A. F = xy + xz + (x != y) · (y == z) ただし,· は省略,!= は XOR,== は XNOR

例題 A. (cont) F = xy + xz + (x != y) · (y == z) …………① = xy + xz + (xy’ + x’y) · (yz + y’z’) = xy + xz + xy’yz + xy’z’ + x’yz + x’yy’z (展開) = xy + xz + 0 + xy’z’ + x’yz + 0 ∵ x · x’ = 0 = xy + xz + xy’z’ + x’yz ∵ x + 0 = x = xy (z + z’) + x (y + y’) z + xy’z’+ x’yz ∵ x (y + y’) = x · 1 = x = xyz + xyz’ + xyz + xy’z + xy’z’ + x’yz ∵ x + x = x = xyz + x’yz + xyz’ + xy’z’ + xy’z …………② = xyz + x’yz + xyz’ + xy’z’ + xyz + xy’z ∵ x + x = x = (x + x’) yz + x (y + y’) z’ + x (y + y’) z ∵ x (y + y’) = x · 1 = x = yz + xz’ + xz ∵ x (y + y’) = x · 1 = x = yz + x (z + z’) ∵ x (y + y’) = x · 1 = x = x + yz …………③

例題 x x y y z F F z ① x F y ② z ③

組み合わせ回路の簡単化 物理的な最終目標: 回路の遅延時間を短くする. 回路の面積を小さくする. 組み合わせ回路の簡単化の目標: 論理ゲートの個数を少なくする. 論理ゲートへの入力の数を少なくする. 工学的目標: その系統だった方法を見つける.

論理関数の標準形

標準形 標準形 (canonical (normal) form) 論理関数 F を一意に表現する論理式 F1 と F2 の標準形が同じ ⇔ F1 と F2 は同じ

用語の定義 リテラル (literal) x に対して,x または x’ 積項 (product term)/和項 (sum term): リテラルの論理積/論理和 n 変数の論理関数の最小項 (minterm)/最大項 (maxterm): n 種のリテラルからなる積項/和項 例:3変数 (x, y, z) の論理関数の場合: リテラル: x, x’, y, y’, z, z’ 積 項 : xy, yz, zx, xyz, x’yz’, … 和 項 : x + y, y’ + z, x + y + z, x’ + y + z’, … 最小項 : x’y’z’, x’y’z, x’yz’, x’yz, xy’z’, xy’z, xyz’, xyz 最大項 : x + y + z, x’ + y + z’, …

用語の定義 加法標準形 加法標準形 (disjunctive canonical (normal) form) 積和標準形 (canonical sum-of-products form) 最小項表現 (minterm expression) 最小項の論理和 乗法標準形 乗法標準形 (conjunctive canonical (normal) form) 和積標準形 (canonical product-of-sums form) 最大項表現 (maxterm expression) 最大項の論理積

例題 A. (cont) F = xy + xz + (x != y) · (y == z) …………① = xy + xz + (xy’ + x’y) · (yz + y’z’) = xy + xz + xy’yz + xy’z’ + x’yz + x’yy’z (展開) = xy + xz + 0 + xy’z’ + x’yz + 0 ∵ x · x’ = 0 = xy + xz + xy’z’ + x’yz ∵ x + 0 = x = xy (z + z’) + x (y + y’) z + xy’z’+ x’yz ∵ x (y + y’) = x · 1 = x = xyz + xyz’ + xyz + xy’z + xy’z’ + x’yz ∵ x + x = x = xyz + x’yz + xyz’ + xy’z’ + xy’z …………② 加法標準形 = xyz + x’yz + xyz’ + xy’z’ + xyz + xy’z ∵ x + x = x = (x + x’) yz + x (y + y’) z’ + x (y + y’) z ∵ x (y + y’) = x · 1 = x = yz + xz’ + xz ∵ x (y + y’) = x · 1 = x = yz + x (z + z’) ∵ x (y + y’) = x · 1 = x = x + yz …………③

例題 x x y y z F F z ① x F y ② 加法標準形 z ③

標準形と真理値表 加法標準形 F = x’yz + xy’z’ + xy’z + xyz’ + xyz = m3 + m4 + m5 + m6 + m7 = S (3, 4, 5, 6, 7) 乗法標準形 F = (x + y + z) (x + y + z’) (x + y’+ z) = M0 M1 M2 = P (0, 1, 2) # x y z F 1 2 3 4 5 6 7 x + y + z x + y + z’ x + y’+ z x’yz xy’z’ xy’z xyz’ xyz

加法標準形 と 乗法標準形 加法標準形 と 乗法標準形 人間には,加法標準形の方が分かりやすい 数学的には「双対」 (dual) 説明は,加法標準形で 乗法標準形に変換することは容易 AND ⇔ OR,0 ⇔ 1 に替えればよい

簡単化 (1) ~カルノー図~

簡単化のキーポイント xy + xy’ = x xy + xy’ = x (y + y’) = x · 1 = x

F = S (2, 3) = m2 + m3 = xy +xy’ = x (y + y’) = x ·1 = x 2次元超立方体による表現 F = S (2, 3) = m2 + m3 = xy +xy’ = x (y + y’) = x ·1 = x y xy # x y F 1 2 3 (0, 1) (1, 1) 1 1 x (0, 0) (1, 0) x 1 O 1 xy’ ハミング距離が 1 のノード間にエッジ

F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz 3次元超立方体による表現 F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz yz xz z 1 x’yz 1 1 xyz xy’z xy 1 y x 1 1 xyz’ 主項 (prime implicant) これ以上大きくはできない積項 x と yz xy’ x 1 xz’ O 1 xy’z’

4次元超立方体による表現

カルノー図 2入力 3入力 4入力 y x カルノー図(Karnaugh Map) zw 真理値表の1種 xy ハミング距離が 1 のノード:図上で隣接している! zw xy 00 01 11 10 y x 1 yz x 00 01 11 10 1 2入力 3入力 4入力

F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz カルノー図 x y z F M0 M1 1 M2 m3 m4 m5 m6 m7 F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz yz x 00 01 11 10 1

多入力のカルノー図 4入力 5入力 00 01 11 10 ○ 00 01 11 10 ○ 00 01 11 10 ○ E=1 BA BA E=0 DC DC 00 01 11 10 ○ BA DC 4入力 5入力

カルノー図の表現法 トーラス状に表した4入力のカルノー図

カルノー図による簡単化 カルノー図の上で隣接した「1」を探し,主項を求める. 縦横ともに 2 のべき乗の大きさ. できる限り大きく. 「1」をすべてカバーする,最小の主項の組み合わせを求める. 重なってもよい. はみ出してはいけない. ループを大きくする: AND ゲートの入力数を減らす ループを少なくする: AND ゲートの数を減らす OR ゲートの

カルノー図による簡単化の例(1) zw xy 00 01 11 10 1 zw xy 00 01 11 10 1 x’y’w y’zw’

カルノー図による簡単化の例(2) zw xy 00 01 11 10 1 zw xy 00 01 11 10 1 z’w x’y

カルノー図による簡単化の例(3) zw xy 00 01 11 10 1 zw xy 00 01 11 10 1 yw y

CA+BA† C B cf. CBA+BA カルノー図による簡単化の例(4) † ループは重なっても良いから大きくとる 00 01 11 10 1 BA 00 01 11 10 1 BA DC DC CA+BA† C B cf. CBA+BA † ループは重なっても良いから大きくとる

問題 以下の問いに答えよ.答えは、ブール代数の式と MIL 記法の回路図の両方で記せ. 下記の3入力関数を簡単化せよ. S (0, 1, 5, 6, 7) S (0, 1, 2, 3, 5, 7) S (0, 1, 2, 4, 7) 下記の4入力関数を簡単化せよ. S (0, 1, 5, 7, 8, 10, 14, 15) S (1, 5, 6, 7, 10, 12, 13, 15) S (0, 2, 8, 10, 14) 0 以上 15 以下の整数を 4 ビットの 2 進数として入力し,それが以下の条件を満たすならば 1 を,満たさないならば 0 を返す回路を書け. 素数 フィボナッチ数 3. で,入力が 1 以上 9 以下ならどうか.

カルノー図を用いた簡単化 カルノー図 真理値表 ハミング距離が 1 の積項は,図上でも隣接する. メリット 直感的 ディメリット 入力が多いと描きにくい 直感的,発見的 クワイン・マクラスキー法 (Quine-McCluskey) アルゴリズムとして定式化したもの

簡単化 (2) ~クワイン・マクラスキー法~

クワイン・マクラスキー法 ポイントは,カルノー図と同じ xy + xy’ = x そうできるところを網羅する方法 カルノー図より,システマティック 他入力にも対応可能 プログラムにしやすい

F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz クワイン・マクラスキー法 最小項を抜き出す 「1」の数でソート x y z F M0 M1 1 M2 m3 m4 m5 m6 m7 F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz x y z m4 1 m3 m5 m6 m7

F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz クワイン・マクラスキー法 F = x’yz + xy’z’ + xy’z + xyz’ + xyz = x + yz ⇒ ⇒ x y z m4 1 ☑ m3 m5 m6 m7 x y z S (4, 5) 1 * ☑ S (4, 6) S (3, 7) S (5, 7) S (6, 7) x y z S (4, 5, 6, 7) 1 *

今日のまとめ