Computer-logical-organization-digital-registers
デジタルレジスタ
フリップフロップは、デジタルデータの保存に使用できる1ビットのメモリセルです。 ビット数の観点からストレージ容量を増やすには、フリップフロップのグループを使用する必要があります。 このようなフリップフロップのグループは、レジスタ*として知られています。 * nビットレジスタ*は、 *n 個のフリップフロップで構成され、* nビット*ワードを格納できます。
レジスタ内のバイナリデータは、レジスタ内で1つのフリップフロップから別のフリップフロップに移動できます。 このようなデータ転送を許可するレジスタは、*シフトレジスタ*と呼ばれます。 シフトレジスタには4つの動作モードがあります。
- シリアル入力シリアル出力
- シリアル入力パラレル出力
- パラレル入力シリアル出力
- パラレル入力パラレル出力
シリアル入力シリアル出力
すべてのフリップフロップを最初にリセット状態にします。 Q〜3〜= Q〜2〜= Q〜1〜= Q〜0〜= 0 4ビットの2進数1 1 1 1のエントリがレジスタに作成される場合、この番号はLSBビットが最初に適用された* D〜in〜ビットに適用される必要があります。 FF-3のD入力、つまり D〜3〜はシリアルデータ入力 D〜in〜*に接続されます。 FF-3の出力、つまり Q〜3〜は次のフリップフロップの入力に接続されています。 D〜2〜など。
ブロック図
操作
クロック信号を適用する前に、Q〜3〜Q〜2〜Q〜1〜Q〜0〜= 0000とし、入力する番号のLSBビットをD〜in〜に適用します。 したがって、D〜in〜= D〜3〜= 1。 クロックを適用します。 クロックの最初の立ち下がりエッジで、FF-3が設定され、レジスタに格納されるワードはQ〜3〜Q〜2〜Q〜1〜Q〜0〜= 1000です。
次のビットをD〜in〜に適用します。 したがって、D〜in〜= 1。 クロックの次のネガティブエッジがヒットするとすぐに、FF-2が設定され、保存されたワードがQ〜3〜Q〜2〜Q〜1〜Q〜0〜= 1100に変わります。
格納する次のビットを適用します 1からD〜in〜。 クロックパルスを適用します。 3番目の負のクロックエッジがヒットするとすぐに、FF-1が設定され、出力がQ〜3〜Q〜2〜Q〜1〜Q〜0〜= 1110に変更されます。
同様に、D〜in〜= 1で、4番目のネガティブクロックエッジが到着すると、レジスタに格納されるワードはQ〜3〜Q〜2〜Q〜1〜Q〜0〜= 1111です。
真理値表
波形
シリアル入力パラレル出力
- このようなタイプの操作では、データは連続して入力され、並行して取り出されます。
- データはビットごとにロードされます。 データがロードされている限り、出力は無効になります。
- データの読み込みが完了すると、すべてのフリップフロップに必要なデータが含まれ、出力が有効になり、読み込まれたすべてのデータがすべての出力ラインで同時に利用可能になります。
- 4ビットワードをロードするには、4クロックサイクルが必要です。 したがって、SIPOモードの動作速度はSISOモードの動作速度と同じです。
ブロック図
パラレル入力シリアル出力(PISO)
- データビットは並列に入力されます。
- 以下に示す回路は、4ビットのパラレル入力シリアル出力レジスタです。
- 前のフリップフロップの出力は、組み合わせ回路を介して次のフリップフロップの入力に接続されます。
- バイナリ入力ワードB〜0〜、B〜1〜、B〜2〜、B〜3〜は、同じ組み合わせ回路を通して適用されます。
- この回路が機能するモードには、シフトモードとロードモードの2つがあります。
ロードモード
シフト/ロードバーラインがロー(0)の場合、ANDゲート2、4、6はアクティブになり、B〜1〜、B〜2〜、B〜3〜ビットを対応するフリップフロップに渡します。 クロックのローエッジで、バイナリ入力B〜0〜、B〜1〜、B〜2〜、B〜3〜は対応するフリップフロップにロードされます。 したがって、並列ロードが行われます。
シフトモード
シフト/ロードバーラインがロー(1)の場合、ANDゲート2、4、および6は非アクティブになります。 したがって、データの並列ロードは不可能になります。 ただし、ANDゲート1、3、および5はアクティブになります。 したがって、クロックパルスの適用時にビット単位でデータを左から右にシフトします。 したがって、パラレルインシリアルアウト操作が行われます。
ブロック図
パラレル入力パラレル出力(PIPO)
このモードでは、4ビットのバイナリ入力B〜0〜、B〜1〜、B〜2〜、B〜3〜がデータ入力D〜0〜、D〜1〜、D〜2〜、Dに適用されます4つのフリップフロップのそれぞれ〜3〜。 負のクロックエッジが適用されるとすぐに、入力バイナリビットがフリップフロップに同時にロードされます。 ロードされたビットは、出力側に同時に表示されます。 すべてのビットをロードするには、クロックパルスのみが不可欠です。
ブロック図
双方向シフトレジスタ
- 2進数が1桁左にシフトされる場合、元の数値に2を掛けることと同じです。 同様に、2進数が1桁右にシフトされる場合、元の数値を2で除算することと同じです。
- したがって、シフトレジスタを使用して特定の2進数を乗算および除算する場合は、データを左または右のいずれかの方向に移動できる必要があります。
- このようなレジスタは、双方向レジスタと呼ばれます。 4ビットの双方向シフトレジスタを図1に示します。
- モード選択入力(M)とともに、シリアル右シフトデータ入力DRとシリアル左シフトデータ入力DLの2つのシリアル入力があります。
ブロック図
操作
S.N. | Condition | Operation |
---|---|---|
1 | With M = 1 − Shift right operation |
If M = 1, then the AND gates 1, 3, 5 and 7 are enabled whereas the remaining AND gates 2, 4, 6 and 8 will be disabled. D〜R〜のデータは、クロックパルスの印加時にFF-3からFF-0にビットごとに右にシフトされます。 したがって、M = 1の場合、シリアル右シフト操作が得られます。 |
2 | With M = 0 − Shift left operation |
When the mode control M is connected to 0 then the AND gates 2, 4, 6 and 8 are enabled while 1, 3, 5 and 7 are disabled. D〜L〜のデータは、クロックパルスの適用時にFF-0からFF-3にビット単位で左にシフトされます。 したがって、M = 0の場合、シリアル右シフト操作が得られます。 |
ユニバーサルシフトレジスタ
データを一方向にのみシフトできるシフトレジスタは、単方向シフトレジスタと呼ばれます。 データを両方向にシフトできるシフトレジスタは、双方向シフトレジスタと呼ばれます。 同じロジックを適用して、データを両方向にシフトし、並行してロードできるシフトレジスタは、ユニバーサルシフトレジスタとして知られています。 シフトレジスタは、次の操作を実行することができます-
- 並列ローディング
- 左シフト
- 右シフト
モード制御入力は、パラレルロード動作ではロジック1に接続され、シリアルシフトでは0に接続されます。 モード制御ピンをグランドに接続すると、ユニバーサルシフトレジスタは双方向レジスタとして機能します。 シリアル左操作の場合、入力はシリアル入力に適用され、図に示すANDゲート1に進みます。 一方、右シフト操作では、シリアル入力がD入力に適用されます。