J-Kフリップフロップによる非同期4ビットアップカウンタの設計
以前、トグルモードに設定した単一J-Kフリップフロップで、2ビット2進シーケンスを後退カウント(11 → 10 → 01 → 00)することを調べました。前進カウントするカウンタを構築するには、前進カウントパターンを分析し、複数フリップフロップの相互接続方法を決定する必要があります。
2進カウンタは2倍周波数分割に依存します。トグルモードのJ-Kフリップフロップがこのタスクに最適です。複数フリップフロップをカスケード接続することで、4ビット2進出力を生成できます。鍵は、前ビットが1から0に変化する瞬間に各フリップフロップがトグルするようクロック入力を配線することです。
以下は4ビットアップカウンタの2進シーケンス。ビットがトグルするのは、下位ビットがハイからローにトグルする瞬間のみです。

小さな矢印がビット反転瞬間を指し、前ビットの1→0遷移を示します。

常にトグルするよう設定した4つのJ-Kフリップフロップを使用し、各クロック入力を前段フリップフロップのQ出力に接続。ネガティブエッジトリガ(バブル記号)により、前段Q信号の立ち下がりエッジが次段フリップフロップを適切な瞬間にクロックします。
4ビット「アップ」カウンタ

周期発振器で駆動される結果の波形は、期待されるアップカウント振る舞いを示します。最初のフリップフロップ(Q_0)はクロックの立ち上がりエッジごとにトグルし、クロックのデューティサイクルが正確に50%でなくても、任意のパルス形状で回路は信頼性高く動作します。

出力ビットごとに1つのJ-Kフリップフロップを使用すると、クロック自体が出力として使用される場合に必要な対称クロック信号の必要性が排除されます。
ポジティブエッジトリガフリップフロップを使用する第2アプローチでは、各フリップフロップを前段のQ'出力でクロックします。Q'は常にQの補数であるため、Qの1→0遷移がQ'の0→1遷移を生成し、必要なポジティブエッジを提供します。
代替4ビット「アップ」カウンタ

Q'出力を第2ビットセットとして扱うと、カウンタはQでアップカウントシーケンスを、Q'でダウンカウントシーケンスを同時に生成できます。
同時アップ/ダウンカウンタ


これらすべてのカスケードフリップフロップ設計はリップル効果に悩まされます。伝播遅延が各フリップフロップトグルで累積するため、最上位ビット(MSB)が最下位ビット(LSB)に遅れます。0111 → 1000のような遷移では、出力が0110, 0100, 0000を経て1000に落ち着く前にリップルし、過渡的な偽カウントを生成します。
非同期カウンタ回路の欠点:伝播遅延

リップルは状態変化の短いカスケードとして現れ、マルチプレクサやメモリアドレスデコーディングなど時間クリティカルなアプリケーションで問題になり得ます。
ストローブ信号カウンタ回路
リップルを緩和するため、多くの回路はストローブまたはイネーブル信号を使用します。イネーブルをクロックに結びつけ、下流デバイスがカウンタ出力安定時のみ反応するようにします。アクティブローイネーブルの場合、クロックパルスのハイ期間中にデバイスが無効化され、これはトグル活動と一致します。

クロックのハイ期間が最大リップル遅延を超えることを確保すれば、カウンタ完全決着後にのみイネーブルがアクティブになります。
非同期カウンタ回路の欠点:速度制限
伝播遅延が加算されるため、非同期カウンタは最遅段階プラスすべての前段遅延より高速に動作できません。これは最大動作周波数を制限し、高速設計では同期カウンタが好まれます。
これらの制限が、同期(非リップル)カウンタアーキテクチャの開発を動機づけます。次に探ります。
復習
- アップカウンタは、ポジティブエッジトリガJ-Kフリップフロップのクロック入力を前段Q'出力に接続、またはネガティブエッジトリガフリップフロップでQ出力を使用。両方ともJとK入力をハイ固定。
- すべてのカスケードフリップフロップカウンタはリップル効果を示し、過渡偽カウントを生成;これらは非同期またはリップルカウンタと呼ばれる。
- ストロービングにより下流回路をカウンタ出力安定時のみイネーブルし、リップルによるエラーを防止。
関連ワークシート
産業技術
- 共通エミッタ増幅器:設計、測定、フィードバック技術
- オペアンプとして機能する高利得差動増幅器の構築
- 精密電圧フォロワ:オペアンプ負帰還による正確な信号追従の習得
- NANDベースのセットリセットフリップフロップ回路の構築
- バッファゲートの理解:デジタル回路における増幅と信号整合性
- TTL NANDゲートとANDゲートの実装:オープンコレクタトランジスタ回路による解析
- 特殊出力論理ゲート:相補出力、トライステート、バイラテラルスイッチ
- フィードバックを持つデジタルロジック:決定論的ゲートからマルチバイブレータへ
- Op-Ampにおける負帰還の理解:電圧フォロワと安定性
- C言語入出力(I/O)マスター:scanf()とprintf()徹底解説
- Dラッチ完全マスター:設計、動作原理、フリップフロップとの違い