組み合わせ回路の応用

  1. エンコーダとデコーダ
  2. マルチプレクサとデマルチプレクサ
  3. 演習問題


エンコード(encode, 符号化)
ディジタルデータをデータを一定の規則に従って, 目的に応じた符号に変換すること.
デコード(decode, 復号化)
符号化されたデータをもとのデータに戻すこと.


エンコーダとデコーダの例

(1) エンコーダとデコーダ

<例1> 2ビット・エンコーダ

  • 1が入力された端子の番号を2進数2ビットの信号として出力する
  • 0〜3までの4つの入力端子を持ち,出力端子は2つ
  • 同時に2つ以上の入力端子に1が入ることはないとする
2ビット・エンコーダ
入力 出力
01 23 21 20
I0I1 I2I3 y1 y0
1000 00
0100 01
0010 10
0001 11

上の真理地表より,次のように論理式が求まる.

      y1 = I2 + I3
      y0 = I1 + I3

奇数パリティ付き3ビット・エンコーダ

  • 1が入力された端子の番号を3ビットの2進信号として出力する
  • 0番から7番までの8つの入力端子を持つ
  • 1つのパリティ・ビットを含めて,4つの出力端子を持つ
  • 同時に2つ以上の端子に1が入力されることはない
この奇数パリティ付き3ビイト・エンコーダの入力と出力の関係を下表(真理値表)に示す.

奇数パリティ付き3ビット・エンコーダ
入力 出力
01 23 45 67 22 21 20 パリティ
I0I1 I2I3 I4I5 I6I7 y2 y1 y0 yp
1000 0000 00 01
0100 0000 00 10
0010 0000 01 00
0001 0000 01 11
0000 1000 10 00
0000 0100 10 11
0000 0010 11 01
0000 0001 11 10

上の真理値表より,論理式が求まる:

    y2 = I4 + I5 + I6 + I7
    y1 = I2 + I3 + I6 + I7
    y0 = I1 + I3 + I5 + I7
    yp = I0 + I3 + I5 + I6

回路図とタイムチャート


<例2> 2ビット・デコーダ

  • 入力と出力の関係(真理値表)
    2ビット・デコーダ
    入力 出力
    21 20 0 123
    a1a0 z0 z1 z2z
    00 10 00
    01 01 00
    10 00 10
    11 00 01
  • 論理式
          z0 = a1·a0,    z1 = a1·a0,   z2 = a1·a0,   z3 = a1·a0
    
  • 回路図

(2) マルチプレクサとデマルチプレクサ

マルチプレクサ
複数の入力を1つの信号として出力する多重通信のための機構

デマルチプレクサ
マルチプレクサとは逆に, 入力信号を複数ある出力端子のどれか1つに送り出す.
どの出力端子へ入力信号を送り出すかは選択信号を用いて決定する

チャンネル(chanel)
データを通信する経路,線路
通信路


マルチプレクサ(選択回路)とデマルチプレクサ(分配回路)

マルチプレクサ(選択回路)

複数の入力チャンネルの中から1つを選択する.


マルチプレクサ

[例] 2ビット2チャネルのマルチプレクサ


2ビット2チャネル・マルチプレクサ

2ビット2チャネル・マルチプレクサの真理値表
Sm 出力
y0 y1
0 d00 d01
1d10 d11

[注意] 上の回路ではANDゲートをスイッチとして使用している.

[例] 4チャネル2ビット・マルチプレクサ

デマルチプレクサ(分配回路)

マルチプレクサとは逆に, 複数の出力チャネルから1つを選択して,入力信号を出力する.


デマルチプレクサ

[例] 2ビット2チャネルのデマルチプレクサ


2ビット2チャネル・デマルチプレクサ

2ビット2チャネル・デマルチプレクサの真理値表
Sm チャネル0 チャネル1
z00 z01 z10 z11
0 a0 a1 0 0
1 0 0 a0 a1

[注意] 上の回路ではANDゲートをスイッチとして使用している.


演習問題

[1]〜[4] 教科書p.53

[5]
3ビットの偶数パリティ付き(パリティを加えて合計4ビット)エンコーダを設計 せよ.
続いて,シミュレーションによりその動作を確認せよ.
8入力4出力回路になる
[6]
4チャネル1ビットのデマルチプレクサ( 信号線の数: データ入力1,制御信号2,データ出力4)を設計し,
シミュレーションにより操作を確認せよ.
制御線への入力を2進数と解釈し, その数に対応した出力端子(0から3番)へ入力データを送り出すこと.


達成目標