Main Content

Stateflow セマンティクスのハードウェアでの実現

Stateflow® セマンティクスから HDL 実装へのマッピングには、次の要件があります。

  • 要件 1: ハードウェア設計で出力更新関数と状態更新関数を分離できなければならない。

  • 要件 2: HDL はコンカレント言語である。ビットトゥルー シミュレーションの目的を達成するには、順次に実行しなければならない。

要件 1 を満たすために、FSM は異なる条件下で実行される 2 つの同時実行ブロックとして HDL でコード化されます。1 つのブロックが遷移条件を評価し、出力を計算して、次の状態変数を計算します。他方のブロックは、現在の状態変数を使用可能な次の状態で更新し、実際の状態遷移を実行します。この 2 番目のブロックは、クロック信号または非同期リセット信号のトリガー エッジでのみアクティブになります。

Stateflow の逐次セマンティクスは HDL の逐次ステートメントにマッピングされ、関数スコープ内のローカル チャート変数は、プロセス スコープ内の VHDL® 変数にマッピングされます。VHDL では、変数は逐次的に割り当てられます。したがって、ローカル変数を使用する Stateflow 関数内のステートメントは、対応する変数を使用する VHDL プロセス内のステートメントにマッピングできます。VHDL の割り当ては、Stateflow 関数内の割り当てと同じ順序で実行されます。

参考

(Stateflow) | (Stateflow) | (Stateflow)

関連する例

詳細