シフトレジスタとは
デジタル回路に適用される場合、シフトレジスタは、順次クロックタイミングに基づいた一連のフリップフロップです。 フリップフロップは、シーケンシャルロジックを使用して入力から出力へのデータの移動を容易にします。 正方形パターンの繰り返し波の形のクロックを使用して、データがシフトレジスタを移動する方法を同期し、デジタル信号の伝送に短い遅延を作成します。 ほとんどの場合、さまざまな長さのシフトレジスタはパラレルデータをシリアルに変換するために使用されますが、マイクロプロセッサでのデータフローやアナログデータからデジタルへの変換、またはその逆にも使用できます。
シフトレジスタは高速回路です。 主に、シフトレジスタは、回路の特定の構造に応じて、データのビットを回路に沿って左右に移動します。 最も単純な形式では、シフトレジスタは最初のステージでデータを取り込み、クロックがデータを進める必要性を示すときにビットを1ステージ左または右にシフトします。 レジスタは、入力と出力の間の各ステージの後に使用可能な一時ストレージスロットの数によって識別されます。 一時記憶スロットにより、クロック信号が適切なデータが進むまでシフトレジスタがデータ信号を遅延させることができます。 たとえば、8ビットのレジスタには8つのステージがあり、データ文字列のビット用に8つの一時記憶スロットがあります。
構造的には、シフトレジスタには5つの基本タイプがあります。 シリアルイン/シリアルアウトおよびユニバーサルパラレルイン/パラレルアウトのシフトレジスタは、変換を必要とせずに、それぞれシリアル形式またはパラレル形式でのデータの入出力を容易にします。 パラレルイン/シリアルアウトは、パラレルデータ伝送入力を処理し、そのような伝送をシリアル形式の出力に変換するシフトレジスタを指します。 シリアル入力/パラレル出力シフトレジスタは、パラレル入力に変換されたシリアル形式の入力データを除き、パラレル入力/シリアル出力とほぼ同じです。
リングカウンターは、データパターンの再循環または繰り返しを特徴とするシフトレジスタ構造の一種です。 シフトレジスタがデータ文字列の処理を完了し、最後のステージを最初のデータ入力ステージにフィードバックすると、循環パターンが発生します。 リングカウンターは、セットの繰り返しパターンで特定の機能が必要な場合に使用されます。 たとえば、選択されたディスプレイを繰り返すように設定されたLEDディスプレイは、シフトレジスタにリングカウンタ構造を使用して、出力が所定のクロックパルスで繰り返されるようにします。
コンピューターの初期には、コンピューターのメモリに数百のステージを持つシフトレジスタが使用されていました。 水銀遅延線に代わるシフトレジスタの使用により、データ処理が高速化され、コンピューターコンポーネントと周辺機器の小型化が可能になりました。 今日、プライマリコンピューターメモリとしてのシフトレジスタは時代遅れと見なされています。 ただし、回路基板は、特にディスプレイドライバー、デジタルアナログコンバーター、およびシリアルデータメモリで必要な配線の量を減らすために、シフトレジスタを引き続き備えています。