1 / 35

3. 組み合わせ 回路

3. 組み合わせ 回路. 五島 正裕. 今日の内容. 導入問題 論理関数の標準形 カルノー図による簡単化 今日のまとめ. 導入問題. 例題. Q. 3 つの 入力 x , y , z に対して, 以下のいずれかの条件が成立したとき 1 , それ以外は 0 となる論理関数 F を求めよ. x と y がともに 1 . x と z がともに 1 . x と y が等しくなく,かつ, y と z が等しい. A. F = xy + xz + ( x != y ) · ( y == z )

tremain
Download Presentation

3. 組み合わせ 回路

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 3. 組み合わせ回路 五島 正裕

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

  3. 導入問題

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

  5. 例題 • 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 …………③

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

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

  8. 論理関数の標準形

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

  10. 用語の定義 • リテラル (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’, …

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

  12. 例題 • 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 …………③

  13. 例題 x x y y z F F z ① x F y ② 積和標準形 z ③

  14. 標準形と真理値表 • 積和標準形 F=x’yz+ xy’z’ + xy’z + xyz’ + xyz =m3 + m4 + m5 + m6 + m7 = S (3, 4, 5, 6, 7) ON-set • 和積標準形 F=(x + y + z) (x + y + z’) (x + y’+ z) = M0M1M2 = P(0, 1, 2) OFF-set x + y + z x + y + z’ x + y’+ z x’yz xy’z’ xy’z xyz’ xyz

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

  16. 簡単化 ~カルノー図~

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

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

  19. 2次元超立方体による表現 F = S (2, 3) = m2 + m3 = xy +xy’ = x (y + y’) = x ·1 = x y (0, 1) (1, 1) 1 0 1 (0, 0) (1, 0) 0 1 x O 1

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

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

  22. カルノー図 • カルノー図(Karnaugh Map) • 真理値表の1種 • ハミング距離が 1 のノード:図上で隣接している! 2入力 3入力 4入力

  23. カルノー図 F = x’yz+ xy’z’ + xy’z + xyz’ + xyz = x + yz

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

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

  26. カルノー図による簡単化の例(1) x’y’w y’zw’

  27. カルノー図による簡単化の例(2) z’w x’y

  28. カルノー図による簡単化の例(3) yw y

  29. カルノー図による簡単化の例(4) z’w + yzw z’w+ yw

  30. 5入力のカルノー図 v = 0 v = 1 v’x’y’z’w’ + xyzw

  31. 問題 • 以下の問いに答えよ.答えは、ブール代数の式と 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 以下ならどうか.

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

  33. Don’t Care • Don’t Care 「気にしない」 • 出力は,0でも 1でもよい • “ f ”,“ * ” などで表す • 回路が簡単になるように 適当に決めてよい その入力は こない その出力は 使われない 組み合わせ回路

  34. Don’t Care z’w + x’yw z’w+ yw

  35. 今日のまとめ

More Related