フリップフロップ回路

技術要素
関連用語
 製造物
 └電磁気の技術
  └電子器
   └電子回路
    └フリップフロップ回路
スポンサーリンク
スポンサーリンク

簡単にいうと…

フリップフロップ回路とは

 1ビットの情報を一時的に0または1として保持する

技術要素です。

CPUのレジスタ(記憶回路)などに搭載されています。

詳しくいうと…

構造と仕組み

フリップフロップ回路の論理回路図の一例を下図に示します。

実際は、ここに示すOR回路やNOT回路、あるいはフリップフロップ回路全体も、抵抗器トランジスタなどから構成され、ICチップとしてパッケージ化されています。

ここでの例では、OR回路NOT回路が2列並び、さらに中央でクロスしてそれぞれの出力結果が他列の入力にもなっています。

入出力の「1」や「0」は、電流の「ON」「OFF」と読み替えてください。

 

それでは、このフリップフロップ回路の特徴(情報の保持)を理解するために、いくつかの入力ケースを見てゆきます。

 

ケース①:  A=0,B=0

最初のケースは、A=0、B=0が入力された場合です。

このとき、OR回路は他方の入力値が不明のため、どんな値が出力されるのか不定です。

 

実際にこのように入力された際は、入力A、Bの入力速度の差異によって異なる結果がその都度決まると思います。

ケース②-1:A=1,B=0

では次のケースです。A=1、B=0が入力された場合を取り上げます。

OR回路は、ひとつでも1が入力されれば1を出力する回路なので、入力AはOR回路で1を出力し、その先のNOT回路で0へと反転されます。

入力BのOR回路では、今述べた出力値0が入力B=0とともに演算され、0が出力され、その先のNOT回路で1へと反転されます。

そのため、A=1、B=0が入力された場合、C=0、D=1が出力されました。

ケース②-2:A=0,B=0

さて、この状態から間を置かず、Aの入力値をからへ変えてみましょう。

入力AのOR回路は、先ほどの状態によってすでに入力値1が他列から与えられていました。そのため、出力値1に変わりなく、出力C、Dの値もそのまま変化なしです

 

ケース③-1:A=0,B=1

次のケースを取り上げましょう。

A=0、B=1が入力された場合、先ほどの入力値A列とB列の説明とはちょうど逆の処理となり、出力値C=1、D=0が得られます。

 

ケース③-2:A=0,B=0

ここから間を置かず、入力値Bをからへと変えてみます。

やはり、先ほどと同様、前回の処理の値がB列のOR回路に入力済みなので、最終結果であるC、Dの出力値は変化なしです。

 

つまり?

これまで見てきたケースから、フリップフロップ回路が前回の出力値を保持しており、それにより次の入力値の出力結果に影響を与えていることがわかります。

これは2列のOR回路が並べられ、一方の出力が他方の入力となるよう配線されることで実現されています。

 

フリップフロップ回路のこの情報保持の特性は、CPUのレジスタやキャッシュなどの記憶回路に利用されています。

たとえば32bit用CPUでは、0/1の1ビット情報を保持するフリップフロップ回路が32個並べられ、232=32ビット=4バイトの情報量を一時的に保持できます。

2進数で表現するとこんな感じです↓

「1010101000010000111110010100000」

この4バイトは、日本語文字2文字分の情報量でしかないので「すくなくない?」と思われたかもしれません。

ただし、そうした直接的な情報はパソコン内のメモリやHDD/SSDに保存されています。ここで述べられているCPUレジスタの32bitとは、たとえばそれらメモリに一時的に保管されている情報1個1個のアドレスパス(情報の住所)の保持情報量を指します(アドレスレジスタの場合)。

ちなみに先ほどの4バイトは、10進数だと約40億まで表現できます。そんな40億のアドレスパスに1パス1バイト割り当ててメモリ内に住所録として記憶しようとすると、4GBのメモリが必要になります。逆に言うと、4GB以上のメモリ容量があってもCPUにとっては使いこなせません。40億の家しか覚えられないひとにそれ以上の数の家を分け与えるようなものです。

そのため、32bitCPU搭載のパソコンは、4GB以上のメモリを搭載してもあまり意味がありません。他方、64bitCPU搭載のパソコンなら16EB(エクサバイト)までのメモリをフル活用できます。

 

以上のようにフリップフロップ回路は、直前の状態を保持することで情報記憶が可能であり、その特性を利用してわたしたちのパソコンのCPU内レジスタで、日々あれこれのデータファイルやキャッシュの住所を指定したり、そのほか色んな処理の一時記憶役を果たしたりしているのでした。

 

・フリップフロップ回路は、1ビットの情報を一時的に0または1として保持する電子回路だよ
・内部ではOR回路やNOT回路などのサブ回路が組み合わされ、抵抗器やトランジスタなど具体的な回路素子によって実装されるよ
・フリップフロップ回路は、わたしたちのパソコンのCPUレジスタなどで情報の一時記憶を果たしているよ
 

さらに知りたいなら…

「電子回路」のキホン(2011年)
(←画像クリックでAmazonサイトへ)

各種電子回路について、カラーイラスト付きでわかりやすく書かれている1冊です。

電子回路全般について色々学びはじめたいと思われる方向けになります。

絵とき ディジタル回路の教室(2010年)
(←画像クリックでAmazonサイトへ)

こちらもイラスト豊富な解説書です。

ただし概要だけでなく、回路内部の演算処理についてもしっかり学びたいという方向けの1冊です。

つまり…

フリップフロップ回路とは

 1ビットの情報を一時的に0または1として保持する

技術要素なわけです。

 

情報の記憶といっても、HDD(ハードディスク)のような磁気ディスクに記録するものから、このフリップフロップ回路のように回路の仕組みを利用して回路素子に直接ON/OFFのかたちで記録するものまで、多彩なんじゃなあ。

歴史のツボっぽくいうと…

  • 1918年
    フリップフロップ回路の発明
    イギリスの物理学者フィリップ・エククレスとF.W.ジョーダンが、2つの真空管からなる最初のフリップフロップ回路を発明する

 

 

<参考文献>(2019/08/31 visited)

フリップフロップ - Wikipedia
記憶回路(フリップフロップ) | コンピュータの仕組み | 相楽製作所
私たちが何らかの計算問題を解こうとする時、途中の計算結果を紙にメモしたりすることがあると思います。コンピュータの中にも計算結果やその他いろいろな信号を保存しておくための記憶回路が存在します。1本の信号線があると仮定して、この信号線の状態がある瞬間に「1」であったのかもしくは「0」であったのかを記憶しておくことができるの...
【今更聞けない!】32bitと64bitの違いとは? まとめ
32bitと64bit、PCを購入するときなどで目にしたことがあるはずだ。このページでは32bitと64bitの違いについて簡易にしてまとめてみた。読めば人に簡単に説明できるくらいの知識は身につくだろう。
メモリーとは
メモリーとは?パソコンを構成する部品・パーツであるメモリーについて解説しています。