インテルのみ表示可能 — GUID: kol1683281705921
Ixiasoft
インテルのみ表示可能 — GUID: kol1683281705921
Ixiasoft
37.4. Video Frame Reader IPのレジスター
メインレジスター設定
アドレス | レジスター | アクセス | 説明 |
---|---|---|---|
Parameterizationレジスター | |||
0x0000 | VID_PID | RO | Video Frame Readerの製品IDについては、このレジスターを読み出します。このレジスターは常に 0x6AF7_024A を返します。 |
0x0004 | VERSION | RO | Video Frame Readerのビルドにインテルが使用するインテルQuartusリリースのバージョン情報については、このレジスターを読み出します。 |
0x0008 | LITE_MODE | RO | このレジスターを読み出して、Lite modeモードがオンかオフかを判断します。 このレジスターは、Lite modeがオフの場合は0を返し、オンの場合は1を返します。 |
0x000C | DEBUG_ENABLED | RO | このレジスターを読み出して、Debug featuresがオンになっているかどうかを判断します。 |
0x0010 | MAX_BUFFER_SETS | RO | このレジスターを読み出して、サポートされているバッファーセットの最大数を確認します。 |
0x0014 | MAX_HEIGHT | RO | このレジスターを読み出して、サポートされている最大フレームの高さを決定します。 |
0x0018 | MAX_WIDTH | RO | このレジスターを読み出して、サポートされている最大フレーム幅を決定します。 |
0x001C | BITS_PER_SYMBOL | RO | このレジスターを読み出して、コンフィグレーションされているシンボルあたりのビット数を確認します。 |
0x0020 | NUMBER_OF_COLOR_PLANES | RO | このレジスターを読み出して、カラープレーンの数を確認します。 |
0x0024 | PIXELS_IN_PARALLEL | RO | このレジスターを読み出して、並行ピクセル数を確認します。 |
0x0028 | PACKING | RO | ピクセル・パッキング・スキームについては、このレジスターを読み出します。 |
0x002C~ 0x00FF |
予約済み | ||
Interruptレジスター | |||
0x0100 | IRQ_CONTROL | RW | フィールド読み出しの完了時に割り込みをイネーブルするには、ビット0を1に設定します。 |
0x0104 | IRQ_STATUS | RW | ステータスレジスターを読み出して、割り込みが発生したかどうかを確認します。発生した場合、IPはビット0を設定します。割り込みをクリアするには、ビット0に1を書き込みます。 |
0x0107 から 0x013F |
予約済み | ||
Control and Debugレジスター | |||
0x0140 | STATUS | RO | ビット0: ステータスビット 1はVideo Frame Readerがビデオフィールドを出力していることを意味し、それ以外の場合は0を示します。 ビット1: ペンディング中のRTC制御ビット。コントロール・レジスターの1つに書き込みが発生するとHighになります。IPが COMMIT レジスターに書き込みを行うと、現在のフレームの終了時にLowになります。 |
0x0144 | LAST_BUFFER_READ | RO | IPが最後に生成したフレームのベースアドレスを返します。リセット以降IPがバッファーを読み出していない場合、このレジスターは0xFFFF_FFFFを返します。 |
0x0147-0x018F | 予約済み | ||
0x0190 | COMMIT | RW | コミットレジスター |
0x0194 | NUM_BUFFER_SETS | RW | フレームリーダーにコンフィグレーションするバッファーセットの数を指示します。 |
0x0198 | BUFFER_MODE | RW | バッファーモード |
0x019C | STARTING_BUFFER_SET | RW | バッファーセットを開始します。 |
0x01A0 | RUN | RW | 必要な動作モードを設定します。 0 = フレームリーダーが実行されていない (停止状態) 1 = フレームリーダーがフリーランニング・モード 2 = フレーム リーダーがフレーム同期モード。このモードでは、リーダーはフレーム同期を受信すると出力を開始し、フィールドが出力されると停止します。 3 = フレームリーダーがシングルショット・モード。このモードでは、BUFFER_N_NUM_BUFFERS によって読み出すバッファーの数が決まります。IPが現在のセット (または BUFFER_MODE が1に設定されている場合はすべてのセット) からすべてのバッファーを読み出した後、出力が停止します。別のシングル ショット読み出しを実行するには、COMMIT レジスターに書き込みます。 |
0x01A4 | FSYNC_PULSE_MODE | RW | フレーム同期パルスモード |
バッファーセットのレジスターバンク
メインレジスターのセットに加えて、IPにはコンフィグレーションされたバッファーセットごとに1つのレジスターバンクがあります。バッファーセットのレジスターバンクを各セットの関連詳細でプログラムします。IPでは、バッファーセット番号 (0から MAX_BUFFER_SETS までの整数) に従って、各レジスターバンクのベースアドレスを16進数で計算します。
例えば、バッファーセット0のレジスターは、0x01B0 + 0 = 0x01B0にあります。
例えば、バッファーセット1レジスターは、0x01B0 + 1x 0x40 = 0x01F0にあります。
例えば、バッファーセット3レジスターは、0x01B0 + 3x 0x40 = 0x0270にあります。
アドレス | レジスター | アクセス | 説明 |
0x01B0 + N*0x40 | BUFFER_N_BASE | RW | バッファーのベースアドレス |
0x01B4 + N*0x40 | BUFFER_N_NUM_BUFFERS | RW | このバッファーセット内のバッファーの数。一般的なダブルバッファリング・アプリケーションでは、多くの場合1に設定されます。 |
0x01B8 + N*0x40 | BUFFER_N_INTER_BUFFER_OFFSET | RW | バッファー間アドレスのインクリメント BUFFER_N_NUM_BUFFERS が1に設定されている場合、このレジスターは使用されません。 |
0x01BC + N*0x40 | BUFFER_N_INTER_LINE_OFFSET | RW | 行間アドレスのインクリメント |
0x01C0 + N*0x40 | BUFFER_N_WIDTH | RW | Lite modeがオフの場合、送信される画像情報パケット用 |
0x01C4 + N*0x40 | BUFFER_N_HEIGHT | RW | Lite modeがオフの場合に送信される画像情報パケット用。BASEアドレスから読み出す行数を決定します。 |
0X01C8 + N*0x40 | BUFFER_N_INTERLACE | RW | Lite modeがオフの場合、送信される画像情報パケット用。BUFFER_0_PACKED_INTERLACE がゼロでない限り、TUSER[1] を設定します。 |
0x01CC + N*0x40 | BUFFER_N_COLORSPACE | RW | Lite modeがオフの場合、送信される画像情報パケット用 |
0x01D0 + N*0x40 | BUFFER_N_SUBSAMPLING | RW | Lite modeがオフの場合、送信される画像情報パケット用 |
0x01D4 + N*0x40 | BUFFER_N_COSITING | RW | Lite modeがオフの場合、送信される画像情報パケット用 |
0x01D8 + N*0x40 | BUFFER_N_BPS | RW | Lite modeがオフの場合、送信される画像情報パケット用 |
0x01DC + N*0x40 | BUFFER_N_FIELD_COUNT | RW | Lite modeがオフの場合、送信される画像情報 (下位7ビット) およびフィールドカウント量のEOFパケット用。 |
レジスタービットの説明
名前 | ビット | 説明 |
Frame reader version ID and product ID | 31:0 | このレジスターは、常に 0x6AF7_024A を返します。
|
名前 | ビット | 説明 |
Register map version | 7:0 | レジスターマップ・バージョン。0x01を返します。 |
QPDS patch revision | 15:8 | 0x00を返します。 |
QPDS update revision | 23:16 | リリースごとに更新されます。23.2の場合、0x02を返します。 |
QPDS major revision | 31:24 | リリースごとに更新されます。23.2の場合、0x17を返します。 |
名前 | ビット | 説明 |
Lite mode parameterization bit | 0 | lite modeをオンにすると、1を返します。 |
Unused | 31:1 | 未使用 |
名前 | ビット | 説明 |
Debug features parameterization bit | 0 | Debug featuresをオンにすると、1を返します。 |
Unused | 31:1 | 未使用 |
名前 | ビット | 説明 |
Max buffer sets | 5:0 | このレジスターは、サポートされているバッファーセットの最大数を返します。 |
名前 | ビット | 説明 |
Max width | 31:0 | このレジスターは、サポートされている最大フレーム幅を返します。 |
名前 | ビット | 説明 |
Max height | 31:0 | このレジスターは、サポートされている最大フレームの高さを返します。 |
名前 | ビット | 説明 |
Bits per symbol | 31:0 | このレジスターは、インテル・ストリーミング・ビデオ出力がコンフィグレーションされているシンボルあたりのビット数を返します。 |
名前 | ビット | 説明 |
Number of color planes | 31:0 | このレジスターは、インテル・ストリーミング・ビデオ出力がコンフィグレーションされているカラープレーンの数を返します。 |
名前 | ビット | 説明 |
Number of pixels in parallel | 31:0 | このレジスターは、インテル・ストリーミング・ビデオ出力がコンフィグレーションされている並列ピクセル数を返します。 |
名前 | ビット | 説明 |
Packing | 31:0 | このレジスターは、IPが使用するパッキングスキームを返します。
|
名前 | ビット | 説明 |
Field_read_irq | 0 | IRQ_CONTROL レジスターの field_read_irq ビットを設定すると、フィールド読み出しの完了時に割り込みがイネーブルになります。 クリアすると、フィールド読み出しの完了時に割り込みがディスエーブルになります。 |
名前 | ビット | 説明 |
Field_read_irq | 0 | 割り込みが発生した場合、IRQ_CONTROL レジスターの field_read_irq ビットが設定されます。 割り込みをクリアするには、IRQ_CONTROL レジスターの field_read_irq ビットに書き込みます。 |
名前 | ビット | 説明 |
Status | 0 | このレジスターを読み出して、フレームリーダーのステータスを確認します。リーダーが現在フレームを出力している場合はステータスビットが設定され、フレーム間で0に戻ります。 |
Pending run-time control | 1 | このレジスターを読み出して、まだコミットされていないペンディング中のレジスター書き込みが存在するかどうかを判断します。このビットは、コントロール・レジスターの1つに書き込みが発生するとHighになり、COMMIT レジスターに書き込みが行われると現在のフレームの最後にLowに戻ります。フレームリーダーがアイドル状態の場合、このビットは COMMIT レジスターへの書き込み直後にLowになります。 |
名前 | ビット | 説明 |
Last buffer read | 31:0 | このレジスターを読み出して、最新の出力バッファーのベースアドレスを決定します。リセット後、バッファーが表示されない場合、このレジスターは 0xFFFF_FFFF を返します。 |
名前 | ビット | 説明 |
Commit | 0 | 現在のレジスター設定をコミットするには、このレジスターに書き込みます。IPは、現在のフレームを生成するときに、新しい設定に従って動作を開始します。 |
名前 | ビット | 説明 |
Number of buffer sets | 31:0 | このレジスターを必要なバッファーセットの数に設定します。 IPは、各バッファーセット内のバッファーから順番に読み出します。 一般的なメモリーマップド・グラフィックス・ダブルバッファー・アプリケーションでは、それぞれ1つのバッファーを含む2つのバッファーセットを設定する場合があります。ソフトウェアは、STARTING_BUFFER_SET レジスターを使用して、API制御下でバッファー間をティックトックします。 有効な値は、1からGUIで設定したバッファーセットの最大数までです。領域を節約するために、GUIで設定したバッファーセットの最大数によって、IPが使用できるバッファーセットの数が制限されます。これは、各セットに独自のレジスターバンクが必要になるためです。このレジスターを MAX_BUFFER_STRUCTURES より大きい値に設定すると、IPは1つのバッファーセットのみをコンフィグレーションします。 このレジスターは、IPがアクティブに使用するバッファーセットの数です。GUIで設定したバッファーセットの最大数と混同しないでください。 |
名前 | ビット | 説明 |
Buffer mode | 1 | 必要な動作に応じて、このレジスターを設定します。 0 = STARTING_BUFFER_SET 内のバッファーのみを読み出します。 1 = STARTING_BUFFER_SET から順にすべてのバッファーセットを読み出します。 |
名前 | ビット | 説明 |
Starting buffer set | 31:0 | このレジスターを0から NUM_BUFFER_SETS までの値に設定して、開始バッファーセットを識別します。 このレジスターは、読み出し元のバッファーセットを示すように設定します。例えば、BUFFER_3_BASE, のバッファーセットから最初のバッファーを読み出すには、このレジスターを3に設定します。 新しいセットから読み出しを開始すると、セットの最初のバッファーが最初に出力されます。 セットから最後に読み出されて出力されたバッファーを特定するには、LAST_BUFFER_READ(0x0144) を読み出します。 読み出しは、COMMIT レジスターを使用して STARTING_BUFFER_SET からこのレジスターに従って新しいバッファーセットから開始されます。 |
名前 | ビット | 説明 |
Run LSB | 0 | IPを開始するには、このビットを設定します。 このビットをクリアし、MSBをクリアしてIPを停止します。 |
Run MSB | 1 | LSBが設定され、このビットがクリアされている場合、IPは連続 (フリーランニング) モードで動作します。 LSBが設定されている場合は、このビットを設定してIPをシングルショット・モードでコンフィグレーションします。このモードでは、BUFFER_N_NUM_BUFFERS によって、現在のセットNから読み出されるバッファーの数が決まります。IPが現在のセットからすべてのバッファーを読み出した後 (BUFFER_MODE が1に設定されている場合)、出力は停止します。別のシングルショット読み出しを実行するには、COMMIT レジスターに書き込みます。 LSBがクリアされている場合は、このビットをクリアして、現在のフレーム読み出しの終了時にIPを停止します。 LSB がクリアされている場合は、このビットを設定してフレーム同期モードをコンフィグレーションします。このモードでは、リーダーはフレーム同期ごとに1つのフレームを生成します。 |
名前 | ビット | 説明 |
FSYNC pulse mode | 0 | 設定されている場合、フレーム同期モードで動作しているときに、フレーム同期コンジットの立ち上がりエッジによってフレームの読み出しがトリガーされます。 クリアされている場合、フレーム同期モードで動作しているときに、フレームの読み出しはフレーム同期コンジットの立ち上がりエッジまたは立ち下がりエッジによってトリガーされます (トグルモード)。 |
名前 | ビット | 説明 |
buffer set N base address | 31:0 | これをバッファーセットNのベースアドレスに設定します。 |
名前 | ビット | 説明 |
buffer set N number of buffers | 31:0 | これをセットNのバッファー数に設定します。 |
名前 | ビット | 説明 |
buffer set N inter-buffer offset | 31:0 | これをセットNのバッファー間アドレスのインクリメントに設定します。 通常、これは1行あたりのバイト数 * BUFFER_N_HEIGHT と等しいかそれより大きくなります。 |
名前 | ビット | 説明 |
buffer set N inter-line offset | 31:0 | これをセットNの行間アドレスのインクリメントに設定します。 通常はピクセルあたりのバイト数 * BUFFER_N_WIDTH です。 |
名前 | ビット | 説明 |
buffer set N buffer width | 16:0 | これをセットNのバッファーの幅 (ピクセル単位) に設定します。lite modeがオフの場合、IPは送信される画像情報パケットにもそれを使用します。 |
名前 | ビット | 説明 |
buffer set N buffer height | 16:0 | これをセットNのバッファーの高さ (ピクセル単位) に設定します。lite modeがオフの場合、IPは送信される画像情報パケットにもそれを使用します。 |
名前 | ビット | 説明 |
buffer set N interlace nibble | 3:0 | Lite modeがオフの場合は送信される画像情報パケット用。Lite modeがオンの場合は TUSER[1] を設定します。 |
名前 | ビット | 説明 |
buffer set N buffer colorspace | 6:0 | Lite modeがオフの場合、送信される画像情報パケット用。Lite modeがオンの場合は使用されません。 |
名前 | ビット | 説明 |
buffer set N buffer subsampling | 1:0 | Lite modeがオフの場合、送信されるイメージ情報パケット用。Lite modeがオンの場合は使用されません。 |
名前 | ビット | 説明 |
buffer set N buffer cositing | 1:0 | Lite modeがオフの場合、送信される画像情報パケット用。Lite modeがオンの場合は使用されません。 |
名前 | ビット | 説明 |
buffer set N buffer BPS | 4:0 | Lite modeがオフの場合、送信される画像情報パケット用。Lite modeがオンの場合は使用されません。 |
名前 | ビット | 説明 |
buffer set N starting field count | 15:0 | Lite modeがオフの場合、送信される画像情報とEOFパケットの開始フィールドカウント。画像情報とEOFフィールドのカウントはフレーム出力ごとに増加し、COMMIT への書き込み後にこの値にリセットされます。Lite modeがオンの場合は使用されません。 |