ソフトの砂場(フリップフロップ)

最終更新日:1998年11月07日

 テーマに「ソフト」と付けていながら、今回も、またハード関係の話題です。まあ、ここは、子供が砂場でいろいろなものを作ったつもりになって遊ぶのと同じように、ソフトでいろいろなことをして分かったつもりになって遊ぶのが目的なので、そんなにかけ離れてはいないと思うのですが。

 今回は、基本的な論理ゲートを使って、Dフリップフロップを作ってみます。今回もまた、回路シミュレータを使って、作ったつもりになります。

SRラッチ

 フリップフロップの前に、SRラッチについて見てみます。今まで見てきた論理ゲート単体では、入力を処理して出力することはできましたが、情報を記憶することはできませんでした。NANDゲートかNORゲートを2個組み合わせてSRラッチを作ると、入力を記憶できるようになります。

 下図は、マイクロネット社の回路シミュレータ『Circuit Viewer』に付いてくるサンプル(FF.crv)を実行し、その画面をキャプチャしたものです。実行直後は右端の発光ダイオードD1は消灯していますが、この図では、すでにSW1をONにしてあり、D1は赤く光っています。なお、この回路シミュレータにはNANDゲートがないので、U!とU3、U2とU4を組み合わせてNANDゲートが実現されています。

 なお、これはとても使いやすい回路シミュレータで、体験版が提供されているので、ぜひダウンロードして試してみることをお勧めします。

SRフリップフロップの動作 その1

 次に、下図のようにSW1をOFFにして初期状態に戻しても、D1は点灯したままになっています。この状態でSW2をONにするとD1は消灯し、SW2をOFFにしてもD!は消灯したままになります。このように、この回路は入力された状態を保持することができます。

SRフリップフロップの動作 その2

Dフリップフロップ

 SRラッチではSet入力とReset入力で保持する状態を制御しますが、実際の応用では、クロックに同期して状態を保持するフリップフロップが便利なことも多いようです。フリップフロップにもいろいろな種類がありますが、ここではDフリップフロップ(ポジティブエッジトリガ)を作ってみます。

 回路を下図に示します。SRラッチを3個組み合わせた形になっています。ここに書いていないパラメータとしては、シグナルジェネレータe1は出力電圧が5V、e2はt1, t2ともに2m秒で出力電圧は5Vです。この図から分かるように、使っている論理ゲートはすべて以前の論理ゲートで作成したものなので、この回路もトランジスタなどで実現できるはずです。

 緑色のプローブの位置がクロック入力、紫色のプローブの位置がデータ入力、山吹色のプローブの位置が出力、水色のプローブの位置が反転出力です。

Dフリップフロップの回路

 オシロスコープを上図の各プローブの絵の個所に接続してみると、下図のような表示になります(スイープのタイミングによっては、図が違うかもしれません)。縦軸は、すべて5V / DIVに設定してあります。

 この回路はポジティブエッジトリガなので、緑色のクロックが立ち上がる時点の紫色の入力を、次に緑色のクロックの立ち上がりまで、山吹色の出力に保持し続けます。水色の反転出力には、山吹色の出力を反転したものが出ます。下図で、Dフリップフロップとして動作していることを確認してみてください。

Dフリップフロップの動作

雑感

 フリップフロップにもいろいろな種類があるので、興味があれば試してみてはどうでしょうか。

 今回もまた、(株)マイクロネット社の回路シミュレータ(の体験版^^;)を利用しています。どうもありがとうございます。

参考文献

  1. Circuit Viewer Ver. 1.10 Preview Version 32bit版, (株)マイクロネット社
  2. 池田克夫 編, 新コンピュータサイエンス講座 情報工学実験, オーム社, 1993
  3. 最新74シリーズIC規格表, CQ出版, 1994

ホーム