第14回 レジスタとシフトレジスタ

本題に入る前に、必ず動画の連絡を見てください。

今回の主な内容
  1. レジスタ (1ビット)
  2. レジスタ (4ビット)
  3. シフトレジスタ
  4. リングカウンタ
  5. ジョンソンカウンタ

レジスタ (1ビット)

概要

動画の解説を参照 (テキスト147ページ)

復習 : ポジティブエッジトリガ型 D-FF (クリア機能つき) の動作

この素子を使ってこういう回路を作ると、信号を一時記憶する機能を持たせられる。
回路1

※ \(CLR\) と \(W\) の違い

課題1

回路1 (1ビットレジスタ) について、以下のタイミングチャートを完成させてください。
スクリーンショットや印刷したものをベースにして描き加えるのは構いませんが、Excelによる作図は不可です。

課題1のヒント

レジスタ (4ビット)

概要

動画の解説を参照 (テキスト147, 148ページ)

回路1の構成を4つを横に並べると、4つの入力に対して同様の出力を出す回路ができる
回路2 (4ビットレジスタ)

※ 回路1と比べて、入力と出力のペアが \(A\) と \(Q_A\), \(B\) と \(Q_B\), \(C\) と \(Q_C\), \(D\) と \(Q_D\) に増えただけで、\(A\)~\(D\) どうしは無関係。

課題2

回路2 (4ビットレジスタ) について、以下のタイミングチャートを完成させてください。
スクリーンショットや印刷したものをベースにして描き加えるのは構いませんが、Excelによる作図は不可です。
(初期状態では \(Q_A\), \(Q_B\), \(Q_C\), \(Q_D\) は 1, 1, 0, 0 で、\(B\), \(D\) は最初から最後までそれぞれ 1, 0 のままです。手描きの場合はこれも間違えないように注意)

課題2のヒント

シフトレジスタ

概要

動画の解説を参照 (テキスト148~150ページ)

復習 : ネガティブエッジトリガ型 JK-FF (プリセット・クリア機能つき) の動作

この素子を図のように配線したものがシフトレジスタ
回路3 (4ビットシフトレジスタ)

\(PR=1\), \(CLR=1\) では、\(CK\) の立ち下がりで のように値がコピーされる。

そのため、たとえば \(PR\), \(CLR\), \(CK\), \(S_{in}\) を次のように変えると、出力は表の右側の値のように変わる。
(「↓↑」は0になって1に戻ることを表わす。出力の変化は立ち下がりのタイミング)
\(PR\) \(CLR\) \(CK\) \(S_{in}\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 \(x\) 0 0 0 0
1 1 1 1 0 0 0 0
1 1 ↓↑ 1 1 0 0 0
1 1 ↓↑ 1 1 1 0 0
1 1 ↓↑ 1 1 1 1 0
1 1 ↓↑ 1 1 1 1 1
\(x\) : don't care

もしも途中で \(S_{in}\) の値を0に変えれば
\(PR\) \(CLR\) \(CK\) \(S_{in}\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 \(x\) 0 0 0 0
1 1 1 1 0 0 0 0
1 1 ↓↑ 1 1 0 0 0
1 1 ↓↑ 1 1 1 0 0
1 1 1 0 1 1 0 0
1 1 ↓↑ 0 0 1 1 0
1 1 ↓↑ 0 0 0 1 1
\(x\) : don't care

のように、そこから先はまた 0 の値が \(Q_A\) → \(Q_B\) → \(Q_C\) → \(Q_D\) に移っていく。

課題3

回路3 (4ビットシフトレジスタ) について、以下のように \(PR\), \(CLR\), \(CK\), \(S_{in}\) が変化する場合の表を完成させてください。
\(PR\) \(CLR\) \(CK\) \(S_{in}\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 \(x\) 0 0 0 0
1 1 1 1 0 0 0 0
1 1 ↓↑ 1 1 0 0 0
1 1 1 0
1 1 ↓↑ 0
1 1 ↓↑ 0
↓↑ 1 1 0
1 1 ↓↑ 0
1 1 ↓↑ 0
\(x\) : don't care

課題3のヒント

リングカウンタ

概要

動画の解説を参照 (テキスト151ページ)

リングカウンタ
シフトレジスタに以下の変更を加えたもの

要するに、先頭の JK-FF を 最後の JK-FF の「1つ右」として扱い、循環させたもの
回路4 (4ビットリングカウンタ)


\(PR=1\), \(CLR=1\) では、\(CK\) の立ち下がりで のように値がコピーされる。

そのため、たとえば \(PR\), \(CLR\), \(CK\) を次のように変えると、出力は表の右側の値のように変わる。
(「↓↑」は0になって1に戻ることを表わす。出力の変化は立ち下がりのタイミング)
\(PR\) \(CLR\) \(CK\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 0 0 0 0
↓↑ 1 1 1 0 0 0
1 1 ↓↑ 0 1 0 0
1 1 ↓↑ 0 0 1 0
1 1 ↓↑ 0 0 0 1
1 1 ↓↑ 1 0 0 0
1 1 ↓↑ 0 1 0 0
\(x\) : don't care

課題4

回路4 (4ビットリングカウンタ) について、以下のように \(PR\), \(CLR\), \(CK\) が変化する場合の表を完成させてください。
\(PR\) \(CLR\) \(CK\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 0 0 0 0
↓↑ 1 1 1 0 0 0
1 1 ↓↑ 0 1 0 0
1 1 ↓↑ 0 0 1 0
↓↑ 1 1
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
\(x\) : don't care

課題4のヒント

ジョンソンカウンタ

概要

動画の解説を参照 (テキスト151~153ページ)

ジョンソンカウンタ
シフトレジスタに以下の変更を加えたもの

リングカウンタとの違い
回路5 (4ビットジョンソンカウンタ)

\(PR=1\), \(CLR=1\) では、\(CK\) の立ち下がりで のように値がコピーされる。

そのため、たとえば \(PR\), \(CLR\), \(CK\) を次のように変えると、出力は表の右側の値のように変わる。
(「↓↑」は0になって1に戻ることを表わす。出力の変化は立ち下がりのタイミング)
\(PR\) \(CLR\) \(CK\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\)
1 ↓↑ 1 0 0 0 0
1 1 ↓↑ 1 0 0 0
1 1 ↓↑ 1 1 0 0
1 1 ↓↑ 1 1 1 0
1 1 ↓↑ 1 1 1 1
1 1 ↓↑ 0 1 1 1
1 1 ↓↑ 0 0 1 1
1 1 ↓↑ 0 0 0 1
1 1 ↓↑ 0 0 0 0
\(x\) : don't care

課題5

回路5 (4ビットジョンソンカウンタ) について、以下のように \(PR\), \(CLR\), \(CK\) が変化する場合の表を完成させてください。
\(PR\) \(CLR\) \(CK\) \(Q_A\) \(Q_B\) \(Q_C\) \(Q_D\)
1 1 1 \(x\) \(x\) \(x\) \(x\)
↓↑ 1 1 1 1 1 1
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
1 1 ↓↑
\(x\) : don't care

課題5のヒント

提出

ノート・紙に解いた課題を撮影したものを以下のフォームから送信してください。
課題提出用フォーム
※ 締切は12/24(火) 正午です。提出によって出席・点数がつきます。
※ 再提出の締切も同じ時刻です。