Operator Library: Debugging
MemoryInterfaceAnalyzerオペレーターは、メモリーインターフェイスのデータフローに関する情報を提供します。画像データや制御信号を変更、追加、削除することはありません。
![]() |
ランタイムテスト |
|---|---|
|
このオペレーターは、実行時のデザインのテストおよび分析を目的としています。オペレーターをデバッグに使用する前に、デザインをビルド(合成)し、ターゲットハードウェアにロードして、実際の画像処理を実行する必要があります。 この operator は、VisualApplets 内でのデザインシミュレーションを目的としたものではありません。 |
このオペレーターを使用すると、ブロッキング状態の検出や、複数のメモリーオペレーターが利用可能なMemoryの帯域幅をどのように共有しているかを監視できます。共有Memoryの概念の詳細については、Application Note: Shared Memoryおよび' Shared Memory Concept 'を参照してください。
MemoryInterfaceAnalyzerオペレーターは、RAMタイプのリソースを使用する既存のメモリーオペレーターにアタッチされている場合にのみ機能します。このオペレーターは、指定されたRAMポート(RamResourceId)にアタッチされ、データフローを監視します。Frame Grabber RAM (DRAM)を使用する各メモリーオペレーターには、書き込みインターフェイスと読み取りインターフェイスの両方があります。
-
書き込みインターフェイス:
メモリーオペレーターが書き込みアクセスを要求し、メモリーコントローラーが可能な場合にアクセスを許可します。アクセスが許可されるかどうかは、接続されているすべてのメモリーオペレーターと、それらの現在の読み取りまたは書き込み要求によって異なります。書き込みインターフェイスは、次のいずれかの状態になります。
-
書き込み転送:
オペレーターが書き込みアクセスを要求し、メモリーコントローラーがその要求を許可すると、書き込み転送が発生します。
-
書き込み待機:
オペレーターが書き込みアクセスを要求したが、メモリーコントローラーが現在別のメモリーインターフェイスからの要求を処理している場合、要求は許可されません。オペレーターは書き込みアクセスを待ちます。
-
書き込みアイドル:
オペレーターが書き込みアクセスを要求しておらず、書き込みインターフェイスが現在使用されていません。
-
-
読み取りインターフェイス:
メモリーオペレーターが読み取りアクセスを要求し、メモリーコントローラーが可能な場合にアクセスを許可します。アクセスが許可されるかどうかは、接続されているすべてのメモリーオペレーターと、それらの現在の読み取りまたは書き込み要求によって異なります。読み取りインターフェイスは、次のいずれかの状態になります。
-
読み取り転送:
オペレーターが読み取りアクセスを要求し、メモリーコントローラーがその要求を許可すると、読み取り転送が発生します。
-
読み取り待機:
オペレーターが読み取りアクセスを要求したが、メモリーコントローラーが現在別のメモリーインターフェイスからの要求を処理している場合、要求は許可されません。オペレーターは読み取りアクセスを待ちます。
-
読み取りアイドル:
オペレーターが読み取りアクセスを要求しておらず、読み取りインターフェイスが現在使用されていません。
-
下の画像は、MemoryInterfaceAnalyzerを指定されたメモリーインターフェイスにアタッチする方法を示しています。各インターフェイスは以下で構成されています。
-
メモリーオペレーターからの要求信号(request signal)、および
-
アクセスを許可または拒否する、メモリーコントローラーからの確認応答信号(acknowledge signal)。
各メモリーオペレーターには、書き込みインターフェイスと読み取りインターフェイスの両方があります。以下の例では、MemoryPortIdは1です。

読み取りアドレスをメモリーコントローラーに転送すると、常にメモリーオペレーターへの読み取りデータ転送が開始されると見なすことができるため、読み取りインターフェイスはメモリーへの読み取りアドレスの転送のみを記述します。
共有 Memory の概念の詳細については、Application Note: Shared Memoryおよび' Shared Memory Concept 'を参照してください。
MemoryInterfaceAnalyzer オペレーターは、指定された測定期間(MeasurementPeriod)内において、Memory オペレーターが次の各状態に費やした時間を測定します:
-
Write Transfer
-
Write Wait
-
Write Idle
-
Read Transfer
-
Read Wait
-
Read Idle
このオペレーターは、read パラメーターを通じてこれらの結果を提供します。測定値をレポートするだけでデータの処理を行わないため、MemoryInterfaceAnalyzer には入力ポートも出力ポートもありません。
| RamResourceId | |
|---|---|
| タイプ | static write parameter |
| Default | 0 |
| 範囲 | [0, 利用可能な RAM インターフェイスの数 - 1] |
|
このパラメータは、Memory インターフェイスが監視されている Memory オペレーターの RAM リソース ID を指定します。 指定された RAM リソース ID に Memory オペレーターが割り当てられていない場合、デザインは無効になります。 |
|
| MeasurementPeriod | |
|---|---|
| タイプ | dynamic/static write parameter |
| Default | 1000 |
| 範囲 | [1, 1000] |
|
このパラメータは、パフォーマンス測定期間の時間をミリ秒単位で計算します。 測定期間の定義は、時間の割合を分析し、平均値を計算するうえで重要です。 |
|
| WriteTransferFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメータは、MeasurementPeriod 内でデータが Memory に書き込まれるサイクルの割合を計算します。 ライト転送は、オペレーターが書き込みアクセスを要求し、Memory コントローラーがその要求を許可したときに発生します。 |
|
| WriteWaitFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメータは、Memory オペレーターが書き込みアクセスを要求しているにもかかわらず、Memory コントローラーによって拒否された MeasurementPeriod 内のサイクルの割合を計算します。 ライト転送は、オペレーターが書き込みアクセスを要求し、Memory コントローラーがその要求を許可した場合にのみ発生します。 |
|
| WriteIdleFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメータは、ライトインターフェイスが使用されていない MeasurementPeriod 内のサイクルの割合を計算します。書き込み要求が発行されないため、許可されることもありません。 |
|
| ReadTransferFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメータは、MeasurementPeriod 内でデータが Memory から読み取られるサイクルの割合を計算します。 リード転送は、オペレーターがMemoryへのアクセスを要求し、Memoryコントローラーがその要求を許可したときに発生します。 |
|
| ReadWaitFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメーターは、MeasurementPeriod内のサイクルのうち、MemoryオペレーターがMemoryへのアクセスを要求したにもかかわらず、Memoryコントローラーによって拒否されたサイクルの割合を計算します。 リード転送は、オペレーターがMemoryへのアクセスを要求し、Memoryコントローラーがその要求を許可した場合にのみ発生します。 |
|
| ReadIdleFraction | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0 |
| 範囲 | [0, 100] |
|
このパラメーターは、MeasurementPeriod内のサイクルのうち、リードインターフェイスが使用されていないサイクルの割合を計算します。リード要求が発行されないため、許可される要求もありません。 |
|
| WriteReadRatio | |
|---|---|
| タイプ | 動的リードパラメータ |
| Default | 0.0 |
| 範囲 | [0.0, 1000.0] |
|
このパラメーターは、成功したライト転送と成功したリード転送の比率を指定します。監視対象のMemoryオペレーターでバッファオーバーフローが発生する可能性があるかどうかを示すのに役立ちます。
|
|

![[重要]](../common/images/admon/important.png)
前へ

