トップデジタル回路 > カルノー図法

カルノー図法

カルノー図法[Java Applet廃止]
カルノー図法(演習1)
カルノー図法(演習2)
カルノー図法(演習3)

1.カルノー図

カルノー図法は、表を使って、論理式を簡単化する。 例として論理式

  (1)
を簡単化する。
(参考:http://akita-nct.jp/yamamoto/lecture/2003/ 2E/karnaugh_diagram/node3.html)

カルノー図のための表をまず作成する。 論理変数が4個なので、図1の表を作成する。


図 1: カルノー図を作成するための表(4変数)。

この表の縦および横は、それぞれの論理変数の値を示す。 ただし、真理値表と論理変数の並びが異なる。 真理値表は、2進数で値の小さい順に並んでいた。 しかし、カルノー図は、グレイコードで並んでいる。 上下の行(および左右の列)を比較すると、常に1ビットしか異なっていない。 上の端のセルと下の端のセル、右端のセルと左端のセルは連続していると考える。

表の枠が出来たならば、その中に論理変数に応じた論理式の値を入れていく。 今回の式の右辺は、5個の項から出来ている。 その5個の項のうち、どれかが1になった場合、論理式の値が1になる。

論理式が1になる論理変数(A, B, C, D)の値を探す。今後、論理変数の値はこの並びとする。

右辺第1項の値が1になるのは、(0, 1, 0, 0)の場合のみである。 そこで、それに対応するセル2行1列に1を書き込む。

右辺第2項の場合、A の項が無いのでそれは0でも1でも良く、(0, 1, 0, 1) と(1, 1, 0, 1)のとき 論理式の値が1になる。これも、表に1を書き込む。

同様に右辺第3項は、(1,0,1,1)第4項は(1,0,1,1)と(1,1,1,1) 、 第5項は(0,1,1,1)と(1,1,1,1)のとき論理式の値が1となる。 それぞれ1を書き込む。

次に、この表の中の全ての1を出来るだけ数の少ない正方形を含む長方形(ループ)で囲みます。 ただし、囲む場合、次の条件に従う。

囲んだ結果を、図2に示す。3個のループで、囲まれたことになる。


図 2: カルノー図の例

最後に、この3個のループから共通変数を取り出しその論理積を作る。 それぞれの論理積論理和をとり、論理式を作る。 これが簡略化された論理式となる。 図2のループ1の共通変数の論理積はである。 ループ2の場合は 、 ループ3の場合はとなる。 これらの論理和は、

となる。これが、元の論理式を簡略化した結果である。

2.論理式の簡単化:カルノー図法

3.カルノー図の使用例

【真理値表から簡単化された論理式を導き出す場合】

例1.下の左に示す真理値表をカルノー図にした結果をその右に示す。

右端のボタンを "ラベル", "数値", "サークル", "結果"の順にクリックしてください。

真理値表の行をクリックすると、 その行およびカルノー図の対応したセルの背景色が黄色に変わり、 真理値表の行とカルノー図の対応が分かります。

上とは逆にカルノー図のセルをクリックすると、真理値表のどの行に対応するかが分かります。


【簡単化した論理式の導出】
  1. いくつかの1をまとめて1つの項を作り出す。
  2. 上下、左右の隣り合った領域をサークルとできる。 隣り合った枠は、どれか1つの変数の値が異なっているので、論理式に直した場合、 (A+A)のような形ができて、値が異なっている変数を省略できる。
  3. 1の枠は全てサークルにとらねばならない。
  4. サークルを構成する1の数は、2n個で、かつ最大数とする。 すなわち、1, 2, 4, 8, 16 のいずれかでなければならない。
  5. ひとつの1を何回サークルにとってもよい。
  6. 右端と左端の列は隣り合っているとする。 同様に、最上段の行と最下段の行は隣り合っているとする。

この例では4隅が一つのグループとなります。

例2.下の左に示す真理値表をカルノー図にした結果をその右に示す。

サークル@は次のように考えます。

@ A・B・C+AB・C

  = A・C (B+B

  = A・C

慣れれば、この計算が暗算で行えます。Aは0、Bは0と1、Cは1のセルに1があります。 Bは0と1があることから消します。残りはAが0、Cが1であることからA・Cとなります。 このように、目で追ってループの表す論理式を求めます。

【論理式を簡単化する場合】

次にあるような論理式を簡単化する場合、それぞれの項に対応したセルに1を書きます。 後は真理値表の場合と同じです。この例では出てきませんが、A、B、Cの3入力に対して たとえば A・Cのような項があれば、先ほどの式の変形とは逆に

A・C = A・C (B+B

   = A・B・C+AB・C

と考えて、該当する二つのセルに1を書きこみます。

下に例を示しています。操作方法は真理値表の場合とほぼ同じです。

元の論理式の項をクリックすると、文字の色が赤に変わり、カルノー図の対応したセルの背景色が黄色に変わります。 (カルノー図のセルをクリックしても、この逆のことは起きません。)

4.練習問題

1.次の論理式をカルノー図法により簡単化しなさい。


  1. 右端にあるボタンを "ラベル", "数値", "サークル", "結果" の 順に一つずつ押してください。カルノー図を使って、論理式の簡単化を 行う手順が確認できます。
  2. 論理式のどれかひとつの項をクリックしてみてください。 その項の文字の色が赤に代わり、 カルノー図の対応するセルの背景色が黄色になります。 これで、論理式の各項とセルの対応関係が分かります。 後の問題では、一つの項が2つとか4つのセルに対応することがありますが、 これも確認できます。

2.次の論理式をカルノー図法により簡単化しなさい。

3.次の論理式をカルノー図法により簡単化しなさい。

4.次の論理式をカルノー図法により簡単化しなさい。

5.次の論理式をカルノー図法により簡単化しなさい。

6.次の論理式をカルノー図法により簡単化しなさい。

7.次の論理式をカルノー図法により簡単化しなさい。


【乗法標準形】

実用上は加法標準形をマスターすれば、乗法標準形は使う必要がない。 双対関係にあることから、混乱する恐れもあるのでお勧めしない。 しかし、技法としては乗法標準形に対して直接、カルノー図を使うこともできる。 そのため、参考までに、その方法も載せる。

8.次の論理式をカルノー図法により簡単化しなさい。


この問題はカルノー図を使わなくても簡単に解ける。

9.次の論理式をカルノー図法により簡単化しなさい。

10.次の論理式をカルノー図法により簡単化しなさい。

11.次の論理式をカルノー図法により簡単化しなさい。

12.次の論理式をカルノー図法により簡単化しなさい。

この問題はカルノー図を使わなくても簡単に解ける。

5.練習問題


1.次の真理値表をカルノー図を使って簡単化した論理式に直せ。

出力Q=0の行の方が少ないので、Qに対する式
Q = B・C
から、ド・モルガンの定理を使って
Q = B+C
を得ることもできる。

2.次の真理値表をカルノー図を使って簡単化した論理式に直せ。


3.次の真理値表をカルノー図を使って簡単化した論理式に直せ。


4.次の真理値表をカルノー図を使って簡単化した論理式に直せ。


5.次の真理値表をカルノー図を使って簡単化した論理式に直せ。



6.次の真理値表をカルノー図を使って簡単化した論理式に直せ。


7.次の真理値表をカルノー図を使って簡単化した論理式に直せ。



小テスト解説

問7.次の真理値表をカルノー図を使って簡単化した論理式に直せ。




問10.
今回の問題はカルノー図を使う問題ではないが、参考までに、カルノー図を使った方法を示す。
カルノー図を使って次の論理式を簡単化せよ。


問7-8.
次の真理値表をカルノー図を使って簡単化した論理式に直せ。(カルノー図の変則的な利用)


問9-10.
カルノー図を使って次の論理式を簡単化せよ。