工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 産業技術

有限ステートマシン設計:コンセプトから実装まで

これまで、出力が現在の入力のみに依存する組み合わせロジックに焦点を当ててきました。多くの実世界アプリケーションでは、回路が過去の入力を記憶し、それに応じて出力を調整する必要があります。このような回路を順序回路と呼びます。

この記事では、実用的な例を用いて順序回路設計のエンドツーエンドプロセスを説明します:ユーザーがボタンを押すたびに、単一クロックサイクルのHIGHパルスを生成するデジタルクイズゲーム。

ステップ1 – 要件定義

望ましい振る舞いを平易な言葉で記述から始めます:

"ボタンが押されたとき、1クロックサイクルのHIGHパルスを出力し、ボタンが離されて再度押されるまでそれ以上の押下を無視する副回路が必要です。"

ステップ2 – 状態遷移図の作成

状態遷移図はマシンの動作を視覚化します。各円は状態を表し、矢印は各クロックサイクルでの入力による遷移を示します。以下の図はムーア型有限ステートマシンで、出力は現在状態のみに依存します。

有限ステートマシン設計:コンセプトから実装まで

状態説明:

矢印は遷移をトリガーする入力値でラベル付けされます。例えば、スタンバイ状態から入力「1」でパルス活性化へ、「0」ならスタンバイに留まります。

ステップ3 – 状態の2進エンコード

各状態に2進コードを割り当て、初期状態を0から開始。以下のエンコードは3状態に十分な2ビットを使用します。

有限ステートマシン設計:コンセプトから実装まで

ステップ4 – 状態遷移表の構築

状態遷移表は、現在状態と入力のすべての組み合わせ、次の状態、出力を列挙。列は現在状態ビット、入力ビット、次状態ビット、出力ビットに対応。この例の表は以下。

有限ステートマシン設計:コンセプトから実装まで

重要ポイント:

ステップ5a – Dフリップフロップ実装の準備

マシン実装には通常フリップフロップを使用。Dフリップフロップの場合、次の状態に到達するために必要な入力は単純に次状態値そのもの。状態遷移表に各D入力の列を拡張します。

有限ステートマシン設計:コンセプトから実装まで

ステップ5b – JKフリップフロップ実装の準備

JKフリップフロップ選択時、フリップフロップごとに2列(JとK)を追加。それらの値はJK励磁表から導出:

有限ステートマシン設計:コンセプトから実装まで

例:0から1へ遷移するにはJ=1, K=X(ドントケア)。

有限ステートマシン設計:コンセプトから実装まで

ステップ6 – カルノー図によるブール関数導出

カルノー図を用いて各フリップフロップ入力と出力の式を簡略化。以下のマップはDとJK実装の両方でプロセスを示します。

Dフリップフロップ入力:

有限ステートマシン設計:コンセプトから実装まで

JKフリップフロップ入力:

有限ステートマシン設計:コンセプトから実装まで

有限ステートマシン設計:コンセプトから実装まで

出力関数:

有限ステートマシン設計:コンセプトから実装まで

有限ステートマシン設計:コンセプトから実装まで

ステップ7 – 物理回路の構築

ブール方程式が得られたら、フリップフロップとロジックゲートで回路を組み立てます。すべてのフリップフロップにクロックを接続することを忘れずに。完成したDフリップフロップ設計は以下:

有限ステートマシン設計:コンセプトから実装まで

JKフリップフロップ版は以下:

有限ステートマシン設計:コンセプトから実装まで

組み立て後、ボタンがどれだけ長く押されていても、各押下ごとにクリーンな1クロックサイクルHIGHパルスを生成します。

重要なポイント

産業技術

  1. 穴あけ盤(ボーリングマシン)完全ガイド:技術、用途、精密加工
  2. 機械とは何か?包括的ガイド
  3. サイリスタのヒステリシス:正帰還がラッチングを可能にする仕組み
  4. フライス盤の種類15選:精密金属加工に必須の機械を徹底解説
  5. レガシー機器をアップグレードしてインダストリー4.0を成功させる
  6. 精密研削盤の総合ガイド
  7. フライス盤の多機能性:切削、穴あけ、ギヤ加工など多彩な用途
  8. CNC工作機械の進化:18世紀起源からAI駆動精密へ
  9. CNC工作機械:生産性向上、コスト削減、精度確保
  10. オフセット印刷機:概要とメリット
  11. 先進フレキソ印刷機:汎用性と高品質のソリューション