AR# 4300

4.2i Foundation Simulator - ファンクション シミュレーションで「Possible System Oscillations; please wait or press Stop button」というエラー メッセージが表示される

説明

キーワード : Foundation, 1.4, simulation, unit delay, oscillations, シミュレーション, ユニット遅延, 発振

重要度 : 標準

概要 :
Foundation でファンクション シミュレーションを実行すると、次のようなエラー メッセージが表示され、シミュレーションが停止します。

"Possible System Oscillations: Please wait or press Stop button".

ソリューション

1

デザインが原因で発振が発生している可能性があります。これは、一部の遷移が定義されていないか、1 つの状態に対して複数の遷移がある場合に発生します。

たとえば、ステート マシンに複数の真の条件があり、それぞれが 1 つの状態で異なる動作をする場合があります。この結果、状態に対してクリア パスが指定されません。

2

このメッセージの内容は誤りです。これは、組み合わせフィードバックがロジックに含まれている場合に発生します。 ファンクション シミュレーションですべてのゲートにゼロ遅延があるため、組み合わせフィードバックが発振を生じた可能性があります。

たとえば、2 入力 AND ゲートがインバータにフィードしているとします。 インバータの出力が AND ゲートの入力の 1 つにフィードバックします。 もう 1 つの入力はデータ ラインとなります。

フィードバック = 1、データ = 1 で回路が動作した場合、フィードバックは 0 になります。ゲート遅延が 0 であるため、回路はデータ ラインが 0 になるまでに発振を開始し、定数フィードバック値を 1 にします。

この問題を解消するには、シミュレータのモードを [Functional] から [Unit] に変更する必要があります。 ユニット遅延モードは、発振フィードバックを持ち、ファンクション モードでシミュレーションできないデザインのファンクション検証に使用されます。

ユニット遅延モードを選択するには、ツールバーの [Unit] オプションをクリックします。 ユニット遅延モードはユニット伝播遅延に基づいています。つまり、すべてのコンポーネントには入力から出力への同じ遅延があります。 標準の遅延値は、最新のシミュレーション精度と同じになるよう設定されています。 シミュレーション精度を設定するには、[Options] → [Preferences] → [Simulation] タブをクリックします。

詳細については、Foundation のユーザー ガイドを参照してください。 さらに、正確な遅延がシミュレーションされ、発振は問題ではなくなるため、デザインの検証にはタイミング シミュレーションを使用してください。

3

このメッセージは、[Functional Simulation] をクリックし、モードを [Timing] に設定してタイミング シミュレーションを実行した場合に表示されます。 タイミング シミュレーションは、必ず [Timing Simulation] をクリックして実行してください。
AR# 4300
日付 08/12/2003
ステータス アーカイブ
種類 一般