F-Tile JESD204C インテル® FPGA IPユーザーガイド

ID 691272
日付 4/26/2022
Public
ドキュメント目次

8.1. トランスミッター・レジスター

レジスターマップと定義

表 23.   FタイルJESD204C TXレジスターのレジスターマップ
アドレス 詳細
0x0 リンクレーン制御(共通)
0x4 リンク・レーン・コントロール0
0x8 リンク・レーン・コントロール1
0xC リンク・レーン・コントロール2
0x10 リンク・レーン・コントロール3
0x14 リンク・レーン・コントロール4
0x18 リンク・レーン・コントロール5
0x1C リンク・レーン・コントロール6
0x20 リンク・レーン・コントロール7
0x24 リンク・レーン・コントロール8
0x28 リンク・レーン・コントロール9
0x2C リンク・レーン・コントロール10
0x30 リンク・レーン・コントロール11
0x34 リンク・レーン・コントロール12
0x38 リンク・レーン・コントロール13
0x3C リンク・レーン・コントロール14
0x40 リンク・レーン・コントロール15
0x44–0x4F N/A
0x50 トランスポート層(TL)制御
0x54 SYSREFコントロール
0x58–0x5F N/A
0x60 JESD204 TXエラーのステータス
0x64 JESD204TXエラー割り込みイネーブル
0x68 JESD204TXエラーリンク再初期化の有効化
0x6C–0x7F N/A
0x80 JESD204TXステータス0
0x84–0xBF N/A
0xC0 JESD204/TX SDRAMパラメーター21
0xC4 JESD204/TX SDRAMパラメーター26
0xC8–0x3F8 N/A
0x3FC 未使用
注: Enable CSR optimizationをオンにすると、すべてのCSRへのすべてのメモリー・マップ・アクセスが失われます。
表 24.  lane_ctrl_common共通のレーン制御と割り当て。共通レーン制御は、リンク内のすべてのレーンに適用されます。

オフセット:0x0

注: コンパイル時固有のビットの場合、リセット値を変更するには再コンパイルする必要があります。
ビット 名称 説明 属性 リセット
31:1 予約済み 予約済み RV 0x0
0 bit_reversal

これは、IP生成の前に設定する必要があるコンパイル時のオプションです。

0=LSB-最初のシリアル化。

1=MSB-最初のシリアル化。

注: FタイルJESD204C コンバーター・デバイスは、MSBファーストのシリアル化またはLSBファーストのシリアル化のいずれかをサポートできます。

bit_reversal = 1の場合、ワードアライナはシリアル化のためにPMAに送信する前にTXパラレル・データ・ビットを反転します。例えば; 64ビットモードの場合=>D[63:0]はD[0:63]に再配線されます。

RO 0x0
表 25.  lane_ctrl_0レーン0のレーン制御と割り当て。

オフセット:0x4

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 26.  lane_ctrl_1レーン1のレーン制御と割り当て。

オフセット:0x8

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 27.  lane_ctrl_2レーン2のレーン制御と割り当て。

オフセット:0xC

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 28.  lane_ctrl_3レーン3のレーン制御と割り当て。

オフセット:0x10

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 29.  lane_ctrl_4レーン4のレーン制御と割り当て。

オフセット:0x14

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 30.  lane_ctrl_5レーン5のレーン制御と割り当て。

オフセット:0x18

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 31.  lane_ctrl_6レーン6のレーン制御と割り当て。

オフセット:0x1C

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 32.  lane_ctrl_7レーン7のレーン制御と割り当て。

オフセット:0x20

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 33.  lane_ctrl_8レーン8のレーン制御と割り当て。

オフセット:0x24

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 34.  lane_ctrl_9レーン9のレーン制御と割り当て。

オフセット:0x28

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 35.  lane_ctrl_10レーン制御とレーン10の割り当て。

オフセット:0x2C

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 36.  lane_ctrl_11レーン11のレーン制御と割り当て。

オフセット:0x30

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 37.  lane_ctrl_12レーン12のレーン制御と割り当て。

オフセット:0x34

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 38.  lane_ctrl_13レーン13のレーン制御と割り当て。

オフセット:0x38

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 39.  lane_ctrl_14レーン制御とレーン14の割り当て。

オフセット:0x3C

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 40.  lane_ctrl_15レーン15のレーン制御と割り当て。

オフセット:0x40

Bit 名称 説明 属性 リセット
31:0 予約済み 予約済み RV 0x0
表 41.  tl_ctrlトランスポート層の制御。

オフセット:0x50

Bit 名称 説明 属性 リセット
31:3 予約済み 予約済み RV 0x0
2:1 width_mult

これはコンパイル時のオプションであり、IPを生成する前に設定する必要があります。

合計サンプル幅乗数

2'b00:幅はM * N*Sに等しい

2'b01:幅は2 * M * N*Sに等しい

2'b10:幅は4 * M * N*Sに等しい

2'b11:幅は8 * M * N*Sに等しい

RO デフォルト。コンパイル時間に固有です。
0 fclk_mult

これはコンパイル時のオプションであり、IPを生成する前に設定する必要があります。

フレームクロックマルチプライヤ

0:フレームクロック周波数はリンククロック周波数と同じです。

1:フレームクロック周波数はリンククロック周波数の2倍です。

RO デフォルト。コンパイル時間に固有です。
表 42.  sysref_ctrlSYSREFコントロール。

オフセット:0x54

注: コンパイル時固有のビットの場合、リセット値を変更するには再コンパイルする必要があります。
Bit 名称 説明 属性 リセット
31:16 予約済み 予約済み RV 0x0
15:8 lemc_offset

連続モードまたは単一検出モードでSYSREFの立ち上がりエッジが検出されると、LEMCカウンターはlemc_offsetで設定された値にリセットされます。

LEMCカウンタはリンククロックドメインで動作するため、カウンタの有効な値は0〜(E * 32)-1です。
  • (E * 32)-1> 255の場合、デザインには、255を超えるオフセットに対してLEMCを調整する機能がありません。
  • (E * 32)-1 <255で、範囲外の値が設定されている場合、LEMCオフセットは内部で0にリセットされます。
注: デフォルトでは、SYSREFの立ち上がりエッジでLEMCカウンタが0にリセットされます。ただし、システムデザインでコンバーター・デバイスによってサンプリングされたSYSREFとFPGAの間に大きな位相オフセットがある場合は、このレジスタを使用してLEMCオフセットリセット値を変更することにより、SYSREFエッジを仮想的にシフトできます。
RW コンパイル時間に固有です。
7:3 予約済み 予約済み RV 0x0
2 sysref_singledet

このレジスターにより、SYSREFの立ち上がりエッジの単一サンプルを使用したLEMCの再調整が可能になります。SYSREFがサンプリングされると、ビットはハードウェアによって自動クリアされます。SYSREFを再度サンプリングする必要がある場合は(リンクのリセットまたは再初期化のために)、このビットを再度設定する必要があります。

このレジスターには、もう1つの重要な機能もあります。少なくともSYSREFエッジがサンプリングされない限り、IPはEoEMBを送信しません。 これは、RX(コンバータデバイス)でサンプリングされるSYSREFとEoEMB送信の決定論的タイミングとの間の競合状態を防ぐためです。

  • 0= SYSREFの立ち上がりエッジはLEMCカウンターはリセットされません。
  • 1= SYSREFの最初の立ち上がりエッジでLEMCカウンターをリセットし、このビットをクリアします。 (デフォルト)
注:
インテルは、SYSREF連続検出モードを実行する場合でも、sysref_alwaysonとともにsysref_singledetを使用することをお勧めします。 これにより、このレジスターがSYSREFがサンプリングされたことがあるかどうかを示すことができるためです。このレジスターは、上記の競合状態も防ぎます。SYSREF単一検出モードのみを使用すると、誤ったSYSREF期間を検出できなくなります。

Enable CSR optimizationがオンにした場合、このビットはハードウェアでクリアできません。したがって、LEMCカウンタは常に新しいSYSREFエッジにリセットされます。

RW1S 0x1
1 sysref_alwayson

このレジスターにより、SYSREFのすべての立ち上がりエッジでLEMCの再調整が可能になります。LEMCカウンターは、0から1へのすべてのSYSREF遷移が検出されるとリセットされます。

  • 0 = SYSREFの立ち上がりエッジはLEMCカウンターをリセットしません。
  • 1= SYSREFの立ち上がりエッジごとにLEMCカウンターを継続的にリセットします。
注: このビットが設定されると、SYSREF期間はリセットされます。内部の拡張マルチブロック期間に違反しないこと、およびこの期間にnの整数を掛けたもの(E * 32)のみであることを確認してください。SYSREF期間がローカルの拡張マルチブロック期間と異なる場合、IPはsysref_lemc_err (0x60)レジスターをアサートし、割り込みをトリガーします。
SYSREF期間を変更する場合は、最初にこのビットを0に設定する必要があります。SYSREFクロックが安定した後、このビットは1に設定され、新しいSYSREFの立ち上がりエッジをサンプリングします。
RW 0x0
0 link_reinit

FタイルJESD204C IPは、すべての内部パイプステージとステータスをリセットすることによってTXリンクを再初期化しますが、SYSREF検出情報は含まれません。

リンクの再初期化がハードウェアによって入力されると、このビットは自動的にクリアされます。

  • 0 = リンク再初期化要求なし(デフォルト)
  • 1 = リンクを再初期化します。
RW1S 0x0
表 43.  tx_errこのレジスターは、FPGAIPで検出されたエラーをログに記録します。TX Error Enableレジスター(tx_err_enable(0x64))の対応するビットによって有効にされた場合、レジスターの各セットビットは割り込みを生成します。割り込みを処理した後、ソフトウェアは適切な処理済み割り込みステータスビットをクリアし、他の割り込みが保留されていないことを確認する必要があります。

オフセット:0x60

ビット 名称 説明 属性 リセット
31:11 予約済み 予約済み RV 0x0
10 efifo_overflow_err レーンのTXEFIFOのいずれかでオーバーフローが発生したときにアサートします。 RW1C 0x0
9 予約済み 予約済み RV RV
8 tx_gb_overflow_err レーンのTXギアボックスのいずれかでオーバーフローが発生したときにアサートします。 RW1C 0x0
7 tx_gb_underflow_err レーンのTXギアボックスのいずれかでアンダーフローが発生したときにアサートします。 RW1C 0x0
6 src_tx_alarm FタイルSRCからtx_alarm信号アサーションが検出されます。このイベントはpll_lock_errと重複しますが、ソフト・リセット・コントローラがtx_alarmリストに新しいイベントを追加する場合があります。 RW1C 0x0
5 syspll_lock_err FタイルJESD204Cリンクが実行されているときに、システムPLLのロック解除が検出されました。 RW1C 0x0
4 txpll_lock_err リンクの実行中に、TXPLLの1つ以上のレーンがロックを失ったことを検出しました。 RW1C 0x0
3 cmd_invalid_err このエラービットは、FタイルJESD204C リンクでコマンドチャネルがで使用されている場合にのみ適用されます。このエラービットは、リンク層がコマンドを要求しているときに(j204c_tx_cmd_readyを介して)アップストリーム・コンポーネントがj204c_tx_cmd_valid信号をディアサートした場合にアサートされます。 RW1C 0x0
2 frame_data_invalid_err このエラービットは、デザインでインテルFPGAトランスポート層を使用している場合にのみ適用されます。 このエラービットは、アップストリーム・コンポーネントがインテルFPGAトランスポート層ストリーミング・バスでj204c_tx_avst_valid信号をディアサートした場合にアサートされます。

トランスポート層は、j204c_tx_avst_readyがトランスポート層によってアサートされたときに、システム内のアップストリーム・デバイスが常にゼロレイテンシで有効なデータを送信することを期待しています。

RW1C 0x0
1 dll_data_invalid_err このエラービットは、データが要求されたときにリンク層TXが Avalon® のストリーミング・バス上で無効なデータを検出した場合にアサートされます。

デザイン上、TXリンク層は、準備ができているとアサートされたときに、アップストリーム・デバイス(トランスポート層)が常にゼロレイテンシで有効なデータを送信することを想定しています。

RW1C 0x0
0 sysref_lemc_err sysref_ctrl (0x54) sysref_alwayson レジスターが1に設定されている場合、LEMCカウンタは次のことを確認します。 SYSREF periodは、(E * 32)のn整数乗数であるLEMCカウンターと一致します。

SYSREF 期間がLEMC期間と一致しない場合、IPはこのビットをアサートします。

RW1C 0x0
注: Enable CSR optimizationをオンにすると、このCSRによるすべてのエラー報告は失われます。
表 44.  tx_err_enこのレジスターは、割り込みを生成するエラータイプを有効にします。レジスタービットに0を設定すると、特定のエラータイプが割り込みを生成できなくなります。

オフセット:0x64

Bit 名称 説明 属性 リセット
31:9 予約済み 予約済み RV 0x0
10 efifo_overflow_err_en カスタム・ケイデンス・コントローラー・オーバーフロー・エラー割り込みの有効化。 RW 0x1
9 予約済み 予約済み RV 0x0
8 tx_gb_overflow_err_en TXギアボックス・オーバーフロー・エラー割り込みイネーブル RW 0x1
7 tx_gb_underflow_err_en TXギアボックス・アンダーフロー・エラー割り込みイネーブル RW 0x1
6 src_tx_alarm_en SRCTXアラーム割り込みイネーブル RW 0x1
5 syspll_lock_err_en システムPLLロックエラー割り込みイネーブル RW 0x1
4 txpll_lock_err_en TXトランシーバーPLLロックエラー割り込みイネーブル RW 0x1
3 cmd_invalid_err_en コマンド無効エラー割り込みイネーブル RW 0x0
2 frame_data_invalid_err_en フレームデータ無効エラー割り込みイネーブル RW 0x0
1 dll_data_invalid_err_en リンクデータ無効エラー割り込みイネーブル RW 0x0
0 sysref_lemc_err_en SYSREF LEMCエラー割り込みイネーブル RW 0x1
注: Enable CSR optimizationをオンにすると、TXIPはエラーの割り込みをトリガーしません。
表 45.  tx_err_link_reinitこのレジスターは、リンクの再初期化を生成するエラータイプを有効にします。レジスタービットに0を設定すると、特定のエラータイプがリンクの再初期化から無効になります。

オフセット:0x68

ビット 名称 説明 属性 リセット
31:4 予約済み 予約済み RV 0x0
3 cmd_invalid_err_en_reinit コマンド無効エラー再初期化イネーブル RW 0x0
2 frame_data_invalid_err_en_reinit フレームデータの無効なエラーの再初期化を有効にする RW 0x0
1 dll_data_invalid_err_en_reinit リンクデータの無効なエラーの再初期化を有効にする RW 0x0
0 sysref_lemc_err_en_reinit SYSREFフレームデータ無効エラー割り込みLEMCエラー再初期化イネーブル RW 0x0
注: Enable CSR optimizationをオンにすると、このレジスターで有効になっているエラーが原因で、TXIPは再初期化をトリガーしません。
表 46.  tx_status0デバッグに役立つ内部信号とカウンタのポートを監視します。

オフセット:0x80

注: コンパイル時固有のビットの場合、リセット値を変更するには再コンパイルする必要があります。
ビット 名称 説明 属性 リセット
31:4 予約済み 予約済み RV 0x0
3 sysref_det_pending sysrefがまだ検出されていないことを示します。sysref_ctrl.sysref_singledet リンクの初期化を有効にするには、設定する必要があります。 ROV 0x0
2 reinit_in_prog 自動または手動のリンク再初期化が進行中であることを示します。 ROV 0x0
1:0 sh_config

同期ヘッダーエンコーディングコンフィグレーション

b00: CRC-12

b01:スタンドアロン・コマンド・チャネル

予約(CRC-3)

RO コンパイル時間に固有です。
表 47.  tx_converter_param1コンバーター・パラメーターごとのリンクおよびトランスポート・コントロール・コンフィグレーション。

オフセット:0xC0

注: コンパイル時固有のビットの場合、リセット値を変更するには再コンパイルする必要があります。
ビット 名称 説明 属性 リセット
31:30 CS コンバーター・サンプルあたりの制御ビット数。 1ベースの値。たとえば、0 = 0ビット、1=1ビットです。 RO コンパイル時間に固有です。
29 HD 高集積 FPGA RO コンパイル時間に固有です。
28:24 N

コンバーター・サンプルあたりのデータビット数。 0ベースの値。たとえば、0 = 1ビット、1=2ビットです。

CSRの索引付けは、パラメーターの索引付けとは異なることに注意してください。 parameter = `d8の場合、このレジスターフィールドは`d7になります。

RO コンパイル時間に固有です。
23:16 M

デバイスあたりのコンバーターの数。 0ベースの値。たとえば、0 = 1コンバーター、1=2コンバーター。

注: CSRの索引付けは、パラメーターの索引付けとは異なります。 parameter = `d8の場合、このレジスターフィールドは`d7になります。
RO コンパイル時間に固有です。
15:8 F

注: CSRの索引付けは、パラメーターの索引付けとは異なります。 parameter = `d8の場合、このレジスターフィールドは`d7になります。フレームあたりのオクテット数。 0ベースの値。たとえば、0 = 1オクテット、1=2オクテットです。
RO コンパイル時間に固有です。
7:4 予約済み 予約済み RV 0x0
3:0 L

リンクあたりのレーン数。 0ベースの値。たとえば、0 = 1レーン、1=2レーン。

注: CSRの索引付けは、パラメーターの索引付けとは異なります。 parameter = `d8の場合、このレジスターフィールドは`d7になります。
RO コンパイル時間に固有です。
表 48.  tx_converter_param2コンバーター・パラメーターごとのリンクおよびトランスポート・コントロール・コンフィグレーション。

オフセット:0xC4

注: コンパイル時固有のビットの場合、リセット値を変更するには再コンパイルする必要があります。
ビット 名称 説明 属性 リセット
31:24 E

拡張マルチブロック内のマルチブロックの数。 0ベースの値。たとえば、0 = 1マルチブロックは拡張マルチブロックを形成し、1=2マルチブロックは拡張マルチブロックを形成します。

(256 Mod F)= 1の場合、Eは1より大きくなければなりません(レジスター値は0より大きくなければなりません)。

注: CSRの索引付けは、パラメーターの索引付けとは異なります。 parameter = `d8の場合、このレジスターフィールドは`d7になります。
RO コンパイル時間に固有です。
23:21 予約済み 予約済み RV 0x0
20:16 CF リンクごとのフレームクロックごとの制御ワードの数。 1ベースの値。つまり、0 = 0ワード、1=1ワードです。 RO コンパイル時間に固有です。
15:13 予約済み 予約済み RV 0x0
12:8 S

コンバーターのフレームサイクルあたりのサンプル数。 0ベースの値。たとえば、0 = 1サンプル、1=2サンプル。

注: CSRの索引付けは、パラメーターの索引付けとは異なります。 parameter = `d8の場合、このレジスターフィールドは`d7になります。
RO コンパイル時間に固有です。
7:5 subclass_ver

デバイス・サブクラス・バージョン

  • b000 2019.09.0
  • b001 2019.09.1
RO コンパイル時間に固有です。
4:0 NP

コンバーター・サンプルあたりのデータビット+制御ビット+テールビットの数。 0ベースの値。たとえば、0 = 1ビット、1=2ビットです。

注: CSRの索引付けは、パラメーターの索引付けとは異なります。parameter = `d8の場合、このレジスターフィールドは`d7になります。
RO コンパイル時間に固有です。