シフト・レジスタとは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 情報 > コンピュータ > レジスタ > シフト・レジスタの意味・解説 

シフトレジスタ

電子計算機構成要素一つ数値計算指令を表す一連の2進数字の記憶装置レジスタという。フリップフロップ並べたレジスター適当な論理回路付加して送り信号(シフトパルス)がくるごとに記憶内容が右または左に1つずつ移動するようにしたものをシフトレジスタという。SFQ回路では、SFQ(単一磁束量子)が回路内に在るか無いかを2進数字の「1」「0」に対応させ、これを左右にシフトさせることでシフトレジスタを実現している。

シフトレジスタ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/07/09 22:31 UTC 版)

ナビゲーションに移動 検索に移動

シフトレジスタ: Shift register)とは、複数のフリップフロップをカスケード接続し、データがその回路内を移動(シフト)していくよう構成したデジタル回路のこと。

単に「シフトレジスタ」といった場合、(電荷結合素子等のアナログシフトレジスタではなく)ディジタルシフトレジスタを指すことが多い。このページでも、ディジタルシフトレジスタについて解説する。

種類

シフトレジスタは、入力と出力それぞれについて、直列(シリアル)か並列(パラレル)かで4種類に分類される。直列入力並列出力形(Serial-In, Parallel-Out、SIPO)と並列入力直列出力形(Parallel-In, Serial-Out、PISO)は、シリアルデータとパラレルデータの変換に使われる。直列入力直列出力形SISO)と並列入力並列出力形PIPO)もある。また、双方向シフトレジスタもあり、シフトしていく方向を変化させることができる。SISOシフトレジスタの入力と出力を相互接続すると環状シフトレジスタを構成できる。また、多次元シフトレジスタを構成することもでき、より複雑な計算を実行することが可能である。

直列入力直列出力形

0 0 0 0
1 0 0 0
1 1 0 0
0 1 1 0
1 0 1 1
0 1 0 1
0 0 1 0
0 0 0 1
0 0 0 0

直列入力直列出力形(SISO)のシフトレジスタは最も単純な形態である。データはシリアルに入力端子から入力され、トリガークロック信号が入力されるたびにフリップフロップを1段ずつ進んでいく。このとき、入力が接続された1段目のフリップフロップに入力データ(ビット)が取り込まれ、最終段のフリップフロップの持っていたデータ(ビット)が出力され、失われる。

フリップフロップに格納されたデータは 'Q' 端子に出力されている。フリップフロップ1個につき1ビットのデータを保持するので、4個使えば4ビットのレジスタとなる。例えば、シフトレジスタの初期値が 0000(つまり、全スロットが空)であったとする。入力が 1,1,0,1,0,0,0,0 の順にあったとする。すると、右の表のような状態の流れとなる。左端の列が入力に近い方のフリップフロップを表している。つまり、この場合の出力は 11010000 となる。これに入力を続ければ、全く同じ順序で出力が得られる。

単純なSISOシフトレジスタは、出力されたデータは失われてしまう。入力されたビット列を指定された場合に保持し続けるような回路も構成できる。この場合、シフトレジスタの出力を入力に戻し、読み書き指定の新たな信号線を追加して、書き込み状態では通常のシフトレジスタの動作をし、読み出し状態では環状シフトレジスタとして動作するように構成する。

直列入力並列出力形

4ビットSIPOシフトレジスタ

直列入力並列出力形(SIPO)のシフトレジスタは、シリアル形式のデータをパラレル形式に変換することができる。SISO と同様に入力はシリアルである。データが入力されると、全フリップフロップの出力を同時に読み取ることができるし、クロック信号で進めていけばビット列はシフトされていく。

並列入力直列出力形

4ビットPISOシフトレジスタ

並列入力直列出力形(PISO)のシフトレジスタでは、入力が複数存在する。データを書き込むには、Write/Shift 制御信号を LOW にしなければならない。データをシフトするには、W/S 制御信号を HIGH にし、クロック信号を与える。一段目のフリップフロップへの入力のみを使えば、SISOシフトレジスタとしても機能する。

並列入力並列出力形

4ビットPIPOシフトレジスタ

並列入力並列出力形(PIPO)のシフトレジスタは、パラレルデータを入力として受け取り、クロック信号が駆動されるまでその内容を保持し、クロック信号によって左右にシフトさせる。これは、一種の履歴情報を保持するのに使われる。

用途

シフトレジスタの最も典型的な用途として、シリアルとパラレルのインタフェース変換がある。多くの論理回路はビット列を並列に処理するが、インタフェースとしてはシリアルの方が構成しやすい。シフトレジスタは単純な遅延回路としても機能する。複数の双方向シフトレジスタを並列接続すると、ハードウェアによるスタックを構成できる。

シフトレジスタは、パルス幅を広げるのにも使える。単安定マルチバイブレータに比較して、タイミングが部品の特性に依存しないという利点があるが、クロック信号が必要であり、タイミングの正確さはそのクロックの周期に依存する。

初期のコンピュータでは、シフトレジスタをデータ処理に利用していた。たとえば2個のシフトレジスタに入っている値の加算は、直列加算器により最小のハードウェア資源で実現できる。

数千ビットもあるような大型の直列入力直列出力形シフトレジスタが、1970年代初期ごろまで水銀遅延線の代替として使われたことがある。

歴史

史上初めてシフトレジスタを使った装置として、1940年代に暗号解読に使われた Colossus が知られている。これは、真空管サイラトロンを使った5ステージのデバイスだった。

関連項目

外部リンク


シフトレジスタ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/13 02:46 UTC 版)

MOS 6522」の記事における「シフトレジスタ」の解説

6522VIAのシフトレジスタは、双方向8ビット幅であり、タイマー生成したクロック(タイマ2が使用される)、CPUクロック、またはCB1信号線からの外部クロックソースで動作することができた。シリアル入出力はCB2を使用しCB1外部デバイス対すクロック出力として設定することもできた。評判の悪いシフトレジスタのバグCMD G65SC22で修正された。

※この「シフトレジスタ」の解説は、「MOS 6522」の解説の一部です。
「シフトレジスタ」を含む「MOS 6522」の記事については、「MOS 6522」の概要を参照ください。

ウィキペディア小見出し辞書の「シフト・レジスタ」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



シフト・レジスタと同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「シフト・レジスタ」の関連用語

シフト・レジスタのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



シフト・レジスタのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
国際超電導産業技術研究センター国際超電導産業技術研究センター
Copyright (C) 2025 財団法人国際超電導産業技術研究センター All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのシフトレジスタ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのMOS 6522 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS