Video and Vision Processing Suite Intel® FPGA IPユーザーガイド

ID 683329
日付 6/26/2023
Public
ドキュメント目次
1. Video and Vision Processing Suiteについて 2. Video and Vision Processing IPのスタートガイド 3. Video and Vision Processing IPの機能の説明 4. Video and Vision Processing IPインターフェイス 5. Video and Vision Processing IPレジスター 6. Video and Vision Processing IPのソフトウェア・プログラミング・モデル 7. Protocol Converter Intel® FPGA IP 8. 3D LUT Intel® FPGA IP 9. AXI-Stream Broadcaster Intel® FPGA IP 10. Bits per Color Sample Adapter Intel FPGA IP 11. Chroma Key Intel® FPGA IP 12. Chroma Resampler Intel® FPGA IP 13. Clipper Intel® FPGA IP 14. Clocked Video Input Intel® FPGA IP 15. Clocked Video to Full-Raster Converter Intel® FPGA IP 16. Clocked Video Output Intel® FPGA IP 17. Color Space Converter Intel® FPGA IP 18. Deinterlacer Intel® FPGA IP 19. FIR Filter Intel® FPGA IP 20. Frame Cleaner Intel® FPGA IP 21. Full-Raster to Clocked Video Converter Intel® FPGA IP 22. Full-Raster to Streaming Converter Intel® FPGA IP 23. Genlock Controller Intel® FPGA IP 24. Generic Crosspoint Intel® FPGA IP 25. Genlock Signal Router Intel® FPGA IP 26. Guard Bands Intel® FPGA IP 27. Interlacer Intel® FPGA IP 28. Mixer Intel® FPGA IP 29. Parallel Converter Intel® FPGA IPのピクセル 30. Scaler Intel® FPGA IP 31. Stream Cleaner Intel® FPGA IP 32. Switch Intel® FPGA IP 33. Tone Mapping Operator Intel® FPGA IP 34. Test Pattern Generator Intel® FPGA IP 35. Video and Vision Monitor Intel FPGA IP 36. Video Frame Buffer Intel® FPGA IP 37. Video Frame Reader Intel FPGA IP 38. Video Frame Writer Intel FPGA IP 39. Video Streaming FIFO Intel® FPGA IP 40. Video Timing Generator Intel® FPGA IP 41. Warp Intel® FPGA IP 42. デザイン・セキュリティー 43. Video and Vision Processing Suiteユーザーガイドの文書改訂履歴

30.3.1.1. Scaler IPのランタイム係数の更新

polyphaseを選択し、runtime coefficient updatesをオンにすると、Avalonメモリーマップド・エージェント・インターフェイスを介していつでも水平および垂直スケーリング係数メモリーの値を編集できます。

係数メモリーの実装コストを最小限に抑えるため、レジスターマップへの単一の読み出しまたは書き込みでは各係数の値に直接アクセスできません。特定のフェーズ (垂直または水平) の係数の値をレジスターマップ内の一連のアドレスに書き込む必要があります。次に、IPが係数を書き込むフェーズとバンクを個別のアドレスで宣言します。

  1. 1つの位相の係数の値をRT_COEFF_LOAD_TAP_Xレジスター (0 <= X < 64, addresses 0x020C to 0x0308) に書き込みます。IPには64個のアドレスがあり、そこに新しい係数を書き込むことができます。更新する係数フェーズにN タップ (N < 64) の係数しかない場合、この範囲の最初のNアドレスに値を書き込むだけで済みます。
  2. IPが係数のこのフェーズを書き込むバンクのインデックスをRT_COEFF_LOAD_BANK_SELECTレジスター (アドレス 0x0200) に書き込みます。
  3. IPが係数を書き込む位相のインデックスをRT_COEFF_LOAD_PHASE_SELECTレジスター (アドレス0x0204) に書き込みます。
  4. RT_COEFF_LOAD_COMMITレジスター (アドレス0x208) に書き込み、指定されたバンクの指定されたフェーズに新しい係数をコミットします。水平スケーリング・フィルター係数位相の場合はこのレジスターに1を書き込み、垂直スケーリング・フィルター係数位相の場合は0をこのレジスターに書き込みます。

更新するすべてのバンクのすべてのフェーズで、このプロセスを繰り返す必要があります。設定レジスター (出力フィールド幅など) の更新とは異なり、係数の更新は即座に有効になります。IPはフレーム境界まで係数を保持しません。フレームの途中でIPが係数を更新しないようにするには、インテルでは、少なくとも2つの係数バンクの使用をお勧めしています。こうすることで、システムを制御するソフトウェアが1つのバンクの係数を更新し、スケーラーが他のバンクから処理用の係数を読み出すことができます。係数の更新が完了すると、ソフトウェアはレジスターマップのH_BANKまたはV_BANKアドレスの値を更新することで、係数読み出しバンクを新しく更新されたバンクにスワップできます。これらのレジスターは標準の設定レジスターであるため、係数読み出しバンクの更新はフレーム境界でのみ有効になります。