- 発行日 2023年12月21日
- 最終変更日 2024年11月20日
- 2 分
フリップフロップ回路ガイド
フリップフロップ回路は、レジスタとも呼ばれ基本回路の一つとしてのフリップフロップICやSRAMのメモリ素子として使用されています。 当記事では、フリップフロップ回路がどのような仕組みで、どのような種類が存在するのかについて、詳しく解説します。
![Aluminium Capacitors Guide Banner](http://res.cloudinary.com/rspoc/image/upload/w_1248,h_180,c_crop,c_fill,f_auto,q_auto/dpr_auto/v1664363757/RS%20CONTENTFUL/Discovery/Hero%20Banners/001%20Generic%20Banner/SEO_Guide_Banner_New_Template_5120x360px.jpg)
フリップフロップ回路とは
フリップフロップ回路は、デジタルエレクトロニクスの中で地味ながらも、情報処理の風景を形作る中心的な役割を果たしています。これらの多様なデバイスは、様々な電子アプリケーションにおいてメモリストレージ、データ操作、およびシーケンシャル制御の基盤として機能しています。この詳細な探求では、フリップフロップ回路の複雑な構造を解きほぐし、その基本原理に光を当て、デジタルロジックの魅力的な世界に踏み込みます。
デジタルテクノロジーの絶え間ない進化の中で、フリップフロップ回路の理解はこれまで以上に不可欠です。効率的なデータ処理とストレージの需要がますます高まる中、これらの回路は欠かせない要素として浮かび上がっています。あなたが新進エンジニア、経験豊富なプロフェッショナル、または好奇心旺盛な愛好者であるかにかかわらず、フリップフロップ回路の原理を理解することは、デジタルシステムの複雑さを理解する手がかりとなります。
フロップフリップ回路の種類
フリップフロップ回路には以下のような種類があります。
RSフリップフロップ回路
RSフリップフロップ回路とは、Reset(R)とSet(S)の二つの入力端子と、Q、Q#という二つの出力を持つ基本的な論理回路の一つです。
Sに「1」、Rに「0」を入力すると、出力はQ=1、Q#=0となります。この状態を「セット」と呼びます。
同様に、Sに「0」、Rに「1」を入力すると、出力はQ=1、Q#=0となります。この状態を「リセット」と呼びます。
フリップフロップはシーソーのような挙動を持つため、QとQ#の値は常に逆となります。また、セットしてから「S」=「R」=「0」にすれば、一度セットされた「Q」=「1」、「Q#」=「0」の状態は保持され、リセットしてから「S」=「R」=「0」にすれば、「Q」=「0」、「Q#」=「1」の状態になります。
つまり、RSフリップフロップは、現在の入力情報のみならず、過去の入力情報が記憶される状態が続きます。
また、SとRの両方に「1」を入力すると、回路内のほんのわずかな不均衡によって値を予測することができなくなるため、この操作は「禁止入力」と呼ばれています。(実装方法によっては意図的に利用できる場合もある。)
D型フリップフロップ回路
D型フリップフロップとは、Delay(遅延)を起こす特性を持つフリップフロップ回路です。
この回路の特徴は、クロック周波に同期させるために入力信号を一時的に保持し、クロックのタイミングに合わせて遅れて出力するという動作にあります。
つまり、もし入力が「D」=「1」であれば、その「1」が遅れて出力され、もし「0」であった場合は、その「0」が遅れて出力されます。この「遅れて出力する」というのは、出力が1クロック分遅れて行われることを表しています。
RS型フリップフロップとは違い、D型は過去の入力信号を保持するのではなく、次のクロック信号が来るまで最初の入力信号を保持します。
クロック信号がローレベルからハイレベルに変わることを「立ち上がり」、その逆のハイレベルからローレベルになることを「立下り」と呼んでいます。
JK型フリップフロップ回路
JK型フリップフロップとは、「J」と「K」の二つの入力端子に加え、RS型と同じように「R」と「S」の二つの入力端子を有しています。「J」と「K」の一方を「1」にし、もう一方を「0」にしたとき、それぞれの出力が「1」と「0」になり、その逆の場合は「0」と「1」になるように動作します。
JK型フリップフロップの特徴は、RS型フリップフロップにおける「禁止入力」を、「出力が切り替わる(反転)」よう機能が変更されている点です。
JK型フリップフロップでは「J」=「K」=「1」とした場合、出力が切り替わる(反転)という動作をします。 T型フリップフロップ回路 T型フリップフロップ回路は、入力端子「T]と出力端子「Q」、「Q#」を備えており、その端子に「1」が入力されるたびに、出力が反転する特性を持つ回路です。入力があるたびに出力が反転する動作を表す「Toggle」の頭文字が回路の名前の由来となっています。
「T」=「1」が入力されるたびに「Q」、「Q#」の「0」、「1」を反転させる特徴を持っています。また、「0」が入力された場合は、「Q」の出力はそのまま保持され、「Q#」には「Q」を反転した信号が出力されます。
JK型フリップフロップ回路
JK型フリップフロップとは、「J」と「K」の二つの入力端子に加え、RS型と同じように「R」と「S」の二つの入力端子を有しています。「J」と「K」の一方を「1」にし、もう一方を「0」にしたとき、それぞれの出力が「1」と「0」になり、その逆の場合は「0」と「1」になるように動作します。
JK型フリップフロップの特徴は、RS型フリップフロップにおける「禁止入力」を、「出力が切り替わる(反転)」よう機能が変更されている点です。
JK型フリップフロップでは「J」=「K」=「1」とした場合、出力が切り替わる(反転)という動作をします。 T型フリップフロップ回路 T型フリップフロップ回路は、入力端子「T]と出力端子「Q」、「Q#」を備えており、その端子に「1」が入力されるたびに、出力が反転する特性を持つ回路です。入力があるたびに出力が反転する動作を表す「Toggle」の頭文字が回路の名前の由来となっています。
「T」=「1」が入力されるたびに「Q」、「Q#」の「0」、「1」を反転させる特徴を持っています。また、「0」が入力された場合は、「Q」の出力はそのまま保持され、「Q#」には「Q」を反転した信号が出力されます。
T型フリップフロップ回路
T型フリップフロップ回路は、入力端子「T]と出力端子「Q」、「Q#」を備えており、その端子に「1」が入力されるたびに、出力が反転する特性を持つ回路です。入力があるたびに出力が反転する動作を表す「Toggle」の頭文字が回路の名前の由来となっています。
「T」=「1」が入力されるたびに「Q」、「Q#」の「0」、「1」を反転させる特徴を持っています。また、「0」が入力された場合は、「Q」の出力はそのまま保持され、「Q#」には「Q」を反転した信号が出力されます。
フリップフロップの同期
フリップフロップの操作中、一度に複数の入力値が変更される際、時間差が原因で一時的に不適切な値が出力される可能性があります。たとえば、JKフリップフロップで、入力が(1、1)から(0、0)に移行する場合は、2つの信号が時間差をもって変化すれば、一瞬だけ(1、0)または(0、1)に対応する値が出力信号線に出現する可能性があります。
これらの値が次の段階の回路に転送されると、全体の回路動作に誤りが生じる恐れがあるため、信号の変化タイミングを適切に制御する必要性があります。
その解決法として広く行われているのは、全体の回路へ周期的に一定のパルス波形を提供し、それぞれの部分がパルス波形の変動に応じて動作するようにする方法です。このタイミングを決めるパルス波形は「クロック波形」または「クロック信号」と呼ばれています。
お薦めのメーカー・ブランド
まとめ
フリップフロップ回路とは、論理回路の最も基本的な形式で、二つの状態を保持できる特性を持つものです。フリップフロップという表現は「パタッと切り替わる」といった意味の擬態語で、出力値が反転する様子がまるでシーソーのようだということから名付けられました。
これは過去の入力情報を現在の入力情報と共に利用する順序回路の一部で、1ビットのデータを保持する記憶回路として用いられます。しかし、これは電源が切れると状態が失われる揮発性の要素であり、永続的なデータの保存には適していません。
基本的な論理回路の一つであるRSフリップフロップ回路は、R(リセット)、S(セット)の二つの入力とQとその反転Qの二つの出力で構成されています。内部では、「R」と「S」それぞれにNOR回路またはNOT回路とNAND回路が組み合わされて接続されており、「R」あるいは「S」が入力されると、「Q」と「Q#」(Qの反転した信号)が出力されます。
「R」と「S」の入力が「R」=0、「S」=1の場合、出力は(0,1)となり、「R」=1、「S」=0の場合は同様に(1,0)となります。つまり、「Q」と「Q#」は必ず互いの逆の値になります。入力がどちらも0の場合は、最後に変更された状態が保持されるため、これを記憶素子として使用することが可能です。「Q」の出力を変えたいときにだけ「R」や「S」に値をセットします。
フリップフロップ回路はTTL ICとしてよく知られていますがこれをを多く並べて作ったメモリ装置はSRAM(Static RAM:スタティックRAM)と呼ばれ、DRAMに比べてリフレッシュ操作が不要で高速に動作するメリットがあります。SRAMはCPU内部でデータを保持するレジスタやキャッシュメモリなどに利用されています。