「論理回路とその設計」 演習問題【1】

A.4人(P,Q,R,S) の投票者が"1"か"0"を各1票ずつ投票し、「可」とする票と「否」とする票の多数の方を1ビットの票決(可"1"か"0")とする可否投票の票決を判定する論理関数がある。ただし、可否が2票ずつの同数の場合の可否決定ルールは、以下の [a] [b] [c] の3通りがあり、それぞれのルールに従う票決を Ma, Mb, Mc とする。これらの論理関数を各々組み合わせ論理回路として実現したい。次の(1)~(7)の各問に答えよ。なお、投票に際しては棄権や白票は無いものとする。

【可否同数の場合の可否決定ルール】

  • [a] P の票に従う(P が「決定権」を持つ)。
  • [b] P の票が否"0"の場合は否"0"、P の票が可"1"の場合はドントケア(don't care)"-"とする(P が「拒否権」を持つ)。
  • [c] ドントケア(don't care)"-"とする(可否を決めない)。

  • B.3個のJKフリップフロップ(JK-FF)を用いて、n進カウンタ(ただし、n=5,6,7,8)を同期式の順序回路として設計したい。3個のJK-FFの出力をそれぞれ QC QB QA とし、3個のFFの出力の並び QC QB QA がこの順で最上位ビットから最下位ビットのカウンタの3ビット状態(出力)である。例えば、8進カウンタとは、QC QB QA000 → 001 → 010 → 011 → 100 → 101 → 110 → 111 → 000 → …(以降は同じ繰り返しのため省略) という8つの状態をこの順で遷移することを繰り返す。また、5進カウンタとは、QC QB QA000 → 001 → 010 → 011 → 100 → 000 → … という5つの状態をこの順で遷移することを繰り返し、残りの3つの状態: 101 110 及び 111 ドントケア"-"である。