ラッチとフリップフロップの違い

論理回路では、入力信号の状態を保持したい場合がある。
このような場合の最もプリミティブな機構として、ラッチやフリップフロップがある。


RSラッチ

1ビットの状態保持を行う事ができる。
入力状態が直ぐに出力へ反映される。
RとSを同時にアサート状態にすることは出来ない。


Dラッチ

RSラッチと基本的に同じで1ビットの状態保持を行う事ができるが、ゲートピンがEnableの時のみ出力が変更される。


Dフリップフロップ

CK信号が立ち上がりのタイミングの入力を保持する。
同期式回路を組むときに使う。
現実は電子的な遅延があるので、実際はCK信号のちょっと前(セットアップ時間)から入力を安定させておき、ちょっと後(ホールド時間)まで保持する必要がある。

JKフリップフロップ

RSラッチに似ているが、CK信号によるエッジトリガなのと、JとKのピンを両方アサート状態しても良い点が異なる。
両方アサートにすると、出力が反転する



立ち上がりのエッジで動作を規定するものを”エッジトリガ”、状態で規定するものを”レベルトリガ”と呼ぶ。一般的にフリップフロップはエッジトリガ、ラッチはレベルトリガだが、場合によってはレベルとリガを含めてフリップフロップと呼ぶ場合もある。


信号が有効な状態をアサート、無効な状態をネゲートと呼ぶ。
正論理の場合はアサート=1だが、負論理だとアサート=0になる。

関連記事

コメントを残す

メールアドレスが公開されることはありません。