最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
Triggered Subsystem ブロックは、制御信号がトリガー値をもつたびに実行される Subsystem ブロックです。ブロックの詳細については、Triggered Subsystem を参照してください。
HDL コード生成をターゲットにしているモデルで Triggered Subsystem を使用するときは、次のことを検討します。
合成結果を Simulink® 結果と一致せさるために、FPGA 上で (同期クロックをもつ) 登録済みのロジックを使用してトリガー端子を駆動する。
Triggered Subsystem の出力信号に単位遅延を加えることが推奨される。こうすることで、コード ジェネレーターによって余分なバイパス レジスタが HDL コード内に挿入されることを回避できます。
Triggered Subsystem を使用すると、合成結果に次のように影響する可能性がある。
システム クロックの速度がわずかに低下する場合がある。
Triggered Subsystem インスタンスの数とサブシステムあたりの出力端子の数に対応して、生成コードでより多くのリソースが使用される。
出力を Signal Builder ブロックから Triggered Subsystem に接続するときに、Rate Transition ブロックを使用しなければならない場合があります。Triggered Subsystem のすべての端子を同じレートで実行するには、次を行います。
トリガー ソースが Signal Builder ブロックであるが、その他の Triggered Subsystem の入力が他のソースから取り込まれている場合、トリガー入力の前に Rate Transition ブロックを信号パスに挿入する。
すべての入力 (トリガーを含む) が Signal Builder ブロックから取り込まれている場合は、レートが同じであるため、特別なアクションは必要ない。
Triggered Subsystem 内でトリガーをクロックとして使用すると、生成コードにおいて設計を異なるクロック領域に分割できます。[コンフィギュレーション パラメーター] ダイアログ ボックスの [クロック エッジ] 設定が、Triggered Subsystem 内の Trigger ブロックの [トリガー タイプ] と一致していることを確認します。
たとえば、次のモデル化が可能になります。
同じレート、異なる位相で動作するクロックをもつ設計。
外部または内部のクロック デバイダーによって駆動される複数のクロック領域。
レートが互いの整数倍ではない複数のクロックで駆動される複数のクロック領域。
内部生成されるクロック。
低電力設計のクロック ゲート。
メモ
Triggered Subsystem のクロックとしてトリガーを使用すると、テストベンチのシミュレーション中に 1 サイクルのタイミングの不一致が生じる場合があります。
Triggered Subsystem のクロックとしてトリガーを使用する場合、Triggered Subsystem の各入力または出力データ信号は、サブシステムのすぐ外側とすぐ内側に遅延をもっていなければなりません。これらの遅延は、異なるレートで動作している複数の領域間の同期インターフェイスの役割を果たします。
[HDL コード生成] 、 [グローバル設定] 、 [最適化] タブで、[トリガー信号をクロックとして使用] を選択します。
makehdl
または hdlset_param
を使用して TriggerAsClock
プロパティを設定します。たとえば、トリガー信号をモデル myModel
内の DUT サブシステム myDUT
内にある Triggered Subsystem のクロックとして使用する HDL コードを生成するには、次のように入力します。
makehdl ('myModel/myDUT','TriggerAsClock','on')
HDL Coder™ は、以下の条件を満たす Triggered Subsystem の HDL コード生成をサポートします。
Triggered Subsystem が DUT ではない。
サブシステムのトリガー "および" 有効化が "どちらも" 行われていない。
トリガー信号がスカラーである。
トリガー信号のデータ型が boolean
または ufix1
のいずれかである。
Triggered Subsystem の出力に初期値 0 がある。
Triggered Subsystem のすべての入出力 (トリガー信号を含む) が同じレートで実行される。
Trigger ブロックの [出力端子の表示] パラメーターが [オフ]
に設定されている。
DUT に以下のブロックが含まれている場合、RAMArchitecture
が WithClockEnable
に設定されている。
Dual Port RAM
Simple Dual Port RAM
Single Port RAM
Triggered Subsystem に以下のブロックが含まれていない。
Discrete-Time Integrator
CIC Decimation
CIC Interpolation
FIR Decimation
FIR Interpolation
Downsample
Upsample
HDL Verifier™ の HDL Cosimulation ブロック
Rate Transition
Pixel Stream FIFO (Vision HDL Toolbox™)
PN Sequence Generator ([トリガー信号をクロックとして使用] オプションが選択されている場合)