Tフリップフロップ

Tフリップフロップのシンボル

Tフリップフロップのシンボル

Tフリップフロップは、入力端子がT、出力端子がQと\( \overline{Q} \)の2つです。\( \overline{Q} \)はQの値を反転したものが出力されます。入力値と出力値の組み合わせは、次の真理値表のとおりです。

真理値表その1
T Q \( \overline{Q} \)
0 \( Qprev \) \( \overline{Q}prev \)
1 \( \overline{Q}prev \) \( Qprev \)

Qprevの値は、Tが入力される前の状態を表します。Tフリップフロップの出力Qの初期値は0または1のどちらかです。

出力Qと等価な論理式

Tフリップフロップを論理式の形で表します。まず、真理値表の入力をT,Qprevの2変数、出力をQとして書き直します。入力が2変数なので組み合わせは\( 2^2 = 4 \)通りになります。

真理値表その2
T Qprev Q
0 0 0
0 1 1
1 0 1
1 1 0

「真理値表その2」からカルノー図を書くと次のようになります。

T-FFのカルノー図

T-FFのカルノー図

カルノー図で簡略化できる部分は無いので、論理式は次のようになります。

$$ Q = T \overline{Q}prev + \overline{T} Qprev $$

Verilogシミュレーションで動作を確認

論理式を記述したTフリップフロップのモジュールを作成し、Tの値を10ナノ秒単位で切り替えてQの値を確認します。シミュレーションではQの初期値を0としています。

結果確認

シミュレーションで出力される波形でTフリップフロップの信号を確認すると、確かにT=1でQが反転しています。

T-FFの波形

T-FFの波形

シミュレーションで使用したモジュールについて

module t_ffはシミュレーション用であり、実際の論理設計でこのような記述を行うことはまずありません。例えば、FPGA用に論理合成を目的とした設計を行う場合、このようなTフリップフロップを記述することは通常ありません。

スポンサーリンク
スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク