Operator Library: Memory
FrameMemory オペレーターは、ランダム書き込みアクセスを使用して入力画像を保存するメモリブロックです。 書き込みアドレスは、行アドレス RowA と列アドレス ColA の入力リンクで指定されます。 したがって、各入力ピクセル値に対して、行アドレスと列アドレスを指定する必要があります。
フレームがメモリに書き込まれた後、リンク O を使用して読み出され、出力されます。 出力画像のディメンションはパラメータによって定義され、入力画像のディメンションとは独立しています。 メモリはあらかじめゼロの値で初期化されています。
オペレーターのレイテンシについては、「表 46:Library Memory 内のオペレーターの個別のレイテンシ」を参照してください。
メモリサイズは、パラメータ FrameWidth および FrameHeight によって定義されます。
このオペレーターは、シングルバッファ実装とダブルバッファ実装の2つのバリアントで実装できます。 最初の実装は RAM を節約しますが、書き込みと読み出しの時間的オーバーラップを許可しません。 したがって、読み出し状態の間は入力リンク I が停止します。 後者の実装は RAM を倍増させ、入力リンク I で次のフレームを受け入れながらフレームを出力することを可能にします。
オペレータには2つの状態があります:
-
書き込み状態:リンク I の値は、ColA および RowA で指定されたアドレスに保存されます。 これは、リンク WriteI が 1 の場合にのみ実行されます。 リンク WriteI が 0 の場合、現在のピクセルはスキップされます。 有効なアドレス範囲内の任意のアドレスへの書き込みが可能です。 すべてのメモリセルに書き込む必要はありません。
-
読み出し状態:メモリは順次読み出され、パラメータ化された幅のラインを生成します。 パラメータ XOffset、XLength、YOffset、および YLength を使用して、読み出しアドレス範囲、つまり ROI を定義することができます。 メモリを読み出すと、読み出しアドレスの内容がゼロにリセットされます。 したがって、以前に書き込まれていないメモリセルが読み出された場合、ゼロが出力されます。
これら2つの状態間の切り替えは、入力リンク I でのフレーム終了によってトリガーされます。 出力リンクでのフレームの幅と高さは、パラメータ XOffset、XLength、YOffset、および YLength によって定義されたサイズに固定され、入力リンクのライン幅およびフレーム高さとは独立していることに注意してください。
このオペレーターは、ミラーリングやセンサー補正に役立ちます。
このオペレーターは、FPGA の内部ブロック RAM メモリを使用します。 したがって、RAM 型の VisualApplets フレームグラバーリソースは使用されません。 FPGA 内部のブロック RAMには制限があります。フル解像度のフレームが FPGA 内部のブロック RAM に収まらない場合があります。 代わりに FrameBufferRandomRead オペレーターの使用を検討してください。
Operator Restrictions
-
空のフレームはサポートされていません。
ライン長が変動する画像はサポートされていません。
| Property | 値 |
|---|---|
| オペレータータイプ | M |
| 入力リンク | I、画像データ入力 WriteI、書き込みイネーブル入力 ColA、I におけるピクセルの書き込み列アドレス RowA、I におけるピクセルの書き込み行アドレス |
| Output Link | O、データ入力 |
同期および非同期入力
- すべての入力は互いに同期しています。つまり、O 型オペレーターの任意のネットワークを介して、同じ M 型オペレーターから供給される必要があります。
| ImplementationType | |||||||
|---|---|---|---|---|---|---|---|
| タイプ | static write parameter | ||||||
| Default | AUTO | ||||||
| 範囲 | (AUTO、BRAM、LUTRAM、URAM) | ||||||
|
パラメータ ImplementationType は、オペレーターの実装戦略、つまりオペレーターの実装にどのメモリ要素が使用されるかに影響を与えます。 You can select one of the following values: AUTO: 接続されたリンクのパラメータ化に基づいて、最適な実装戦略が自動的に選択されます。 BRAM: オペレーターは FPGA のブロック RAM を使用します。 LUTRAM: オペレーターは FPGA の LUT RAM を使用します。 URAM: オペレーターは FPGA の UltraRAM を使用します。
|
|||||||
| 実装 | |
|---|---|
| タイプ | static パラメータ |
| Default | SingleBuffer |
| 範囲 | {SingleBuffer, DoubleBuffer} |
|
このパラメータは、FrameMemoryの実装を選択します(上記を参照)。 |
|
| FrameWidth | |
|---|---|
| タイプ | static パラメータ |
| Default | 1024 |
| 範囲 | [0, 65534] |
|
このパラメータは、出力リンクの画像幅をピクセル単位で選択します。 |
|
| FrameHeight | |
|---|---|
| タイプ | static パラメータ |
| Default | 1024 |
| 範囲 | [0, 65534] |
|
このパラメータは、出力リンクの画像高さをライン単位で選択します。 |
|
| XOffset | |
|---|---|
| タイプ | dynamic/static read/write parameter |
| Default | 0 |
| 範囲 | [0, Max.Img Height - YLength] |
|
このパラメータは、ROIの左上隅のY座標を定義します。 |
|
| XLength | |
|---|---|
| タイプ | dynamic/static read/write parameter |
| Default | 1024 |
| 範囲 | [1, Max.Img Width - XOffset] |
|
このパラメータはROIの幅を定義します。 |
|
| YOffset | |
|---|---|
| タイプ | dynamic/static read/write parameter |
| Default | 0 |
| 範囲 | [0, Max.Img Height - YLength] |
|
このパラメータは、ROIの左上隅のY座標を定義します。 |
|
| YLength | |
|---|---|
| タイプ | dynamic/static read/write parameter |
| Default | 1024 |
| 範囲 | [1, Max.Img Height - YOffset] |
|
This parameter defines the height of the ROI. |
|
FrameMemoryオペレータの使用方法については、以下の例をご覧ください。
-
'Functional Example for Specific Operators of Library Memory and Library Signal'
使用例 - オペレーターの使用方法のデモ






![[注]](../common/images/admon/note.png)
前へ

