インテルのロゴHDMI Arria 10 FPGA IP デザイン例ample
ユーザーガイドIntel HDMI Arria 10 FPGA IP デザイン例ampleHDMI インテル® Arria 10 FPGA IP
設計例ampユーザーガイド
インテル® Quartus® 向けにアップデート
プライム デザイン スイート: 22.4
IP バージョン: 19.7.1

HDMI インテル® FPGA IP 設計例ample インテル® Arria® 10 デバイスのクイック・スタート・ガイド

HDMI Intel® 10 デバイスは、シミュレーション テストベンチと、コンパイルとハードウェア テストをサポートするハードウェア設計を特徴としています。
FPGA IP 設計例ampインテル Arria® のファイル
HDMI インテル FPGA IP は、次のデザイン ex を提供します。ampレ:

  • 固定レート リンク (FRL) モードが有効な HDMI 2.1 RX-TX 再送信設計
  • FRL モードを無効にした HDMI 2.0 RX-TX 再送信設計
  • HDCP over HDMI 2.0 設計

注記: HDCP 機能は、インテル® Quartus Prime プロ・エディション ソフトウェアには含まれていません。
HDCP 機能にアクセスするには、Intel にお問い合わせください。 https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.
デザインexを生成するときampパラメータエディタが自動的に fileハードウェアでデザインをシミュレート、コンパイル、およびテストするために必要です。
図 1. 開発手順Intel HDMI Arria 10 FPGA IP デザイン例ample - 開発手順関連情報
HDMI Intel FPGA IP ユーザーガイド
1.1. デザインの生成
インテル Quartus Prime ソフトウェアで HDMI インテル FPGA IP パラメーター・エディターを使用して、デザインを生成します。ampレ。 インテルコーポレーション。 全著作権所有。 Intel、Intel ロゴ、およびその他の Intel マークは、Intel Corporation またはその子会社の商標です。 インテルは、インテルの標準保証に従って、FPGA および半導体製品の性能を現在の仕様に合わせて保証しますが、予告なしにいつでも製品およびサービスを変更する権利を留保します。 インテルは、インテルが書面で明示的に同意した場合を除き、ここに記載されている情報、製品、またはサービスの適用または使用から生じる一切の責任を負わないものとします。 インテルのお客様は、公開された情報に依存したり、製品やサービスを注文したりする前に、最新バージョンのデバイス仕様を入手することをお勧めします。 *他の名前およびブランドは、他者の所有物として主張される場合があります。
ニオスからスタート® インテル Quartus Prime プロ・エディション ソフトウェア バージョン 19.2 および インテル Quartus Prime スタンダード エディション ソフトウェア バージョン 19.1 の II EDS では、インテルは Nios II EDS の Windows* バージョンの Cygwin コンポーネントを削除し、Windows* Subsytem for Linux (WSL) に置き換えました。 Windows* ユーザーの場合、デザインを生成する前に WSL をインストールする必要があります。ampル。
図 2. デザイン フローの生成Intel HDMI Arria 10 FPGA IP デザイン例ample - デザイン フローの生成

  1. インテル Arria 10 デバイス・ファミリーをターゲットとするプロジェクトを作成し、目的のデバイスを選択します。
  2. IP カタログで、Interface Protocols ➤ Audio & Video ➤ HDMI Intel FPGA IP を見つけてダブルクリックします。 [新しい IP バリアント] または [新しい IP バリエーション] ウィンドウが表示されます。
  3. カスタム IP バリエーションの最上位の名前を指定します。 Parameter Editor は、IP バリエーション設定を file 命名された.ip または.qsys.
  4. [OK] をクリックします。 パラメータエディタが表示されます。
  5. [IP] タブで、TX と RX の両方に必要なパラメーターを構成します。
  6. Support FRL パラメーターをオンにして、HDMI 2.1 デザイン ex を生成します。ampFRL モードのファイル。 HDMI 2.0 デザイン ex を生成するには、オフにします。ampFRLなしのル。
  7. 設計例についてample タブで、Arria 10 HDMI RX-TX 再送信を選択します。
  8. Simulation を選択してテストベンチを生成し、Synthesis を選択してハードウェア デザイン ex を生成します。ample.デザイン ex を生成するには、これらのオプションの少なくとも XNUMX つを選択する必要があります。ample file秒。 両方を選択すると、生成時間が長くなります。
  9. 生成用 File フォーマット、Verilog または VHDL を選択します。
  10. ターゲット開発キットには、Intel Arria 10 GX FPGA Development Kit を選択します。 開発キットを選択すると、ターゲット デバイス (手順 4 で選択) がターゲット ボード上のデバイスと一致するように変更されます。 インテル Arria 10 GX FPGA 開発キットの場合、デフォルトのデバイスは 10AX115S2F4I1SG です。
  11. [Ex を生成] をクリックしますampル・デザイン。

関連情報
Linux* 用 Windows* サブシステム (WSL) を Windows* OS にインストールする方法は?
1.2。 設計のシミュレーション
HDMI テストベンチは、TX インスタンスから RX インスタンスへのシリアル ループバック デザインをシミュレートします。 内部ビデオ パターン ジェネレーター、オーディオ sampファイル ジェネレーター、サイドバンド データ ジェネレーター、および補助データ ジェネレーター モジュールが HDMI TX インスタンスを駆動し、TX インスタンスからのシリアル出力がテストベンチの RX インスタンスに接続されます。
図 3. デザイン シミュレーション フローIntel HDMI Arria 10 FPGA IP デザイン例ample - デザイン フローの生成 1

  1. 目的のシミュレーション フォルダーに移動します。
  2. 選択したサポート対象シミュレーターのシミュレーション スクリプトを実行します。 スクリプトは、シミュレーターでテストベンチをコンパイルして実行します。
  3. 結果を分析します。

表1. シミュレーションを実行する手順

シミュレーター 作業ディレクトリ 説明書
 リビエラ-PRO*  /シミュレーション/アルデック コマンド ラインで次のように入力します。
vsim -c -do aldec.do
モデルシム*  /シミュレーション/メンター コマンド ラインで次のように入力します。
vsim -c -do mentor.do
 VCS*  /シミュレーション/シノプシス/vcs コマンド ラインで次のように入力します。
ソース vcs_sim.sh
 VCSMX  /シミュレーション/概要/ vcsmx コマンド ラインで次のように入力します。
ソース vcsmx_sim.sh
 Xcelium* パラレル  /シミュレーション/エクセリウム コマンド ラインで次のように入力します。
ソース xcelium_sim.sh

シミュレーションが成功すると、次のメッセージが表示されて終了します。
# SYMBOLS_PER_CLOCK = 2
#VIC = 4
# FRL_RATE = 0
# BPP = 0
# オーディオ周波数 (kHz) = 48
# オーディオ_チャンネル = 8
# シミュレーションパス
1.3。 デザインのコンパイルとテストIntel HDMI Arria 10 FPGA IP デザイン例ample - 設計のコンパイルとテスト

ハードウェア ex でデモンストレーション テストをコンパイルして実行するにはamp次の手順に従います。

  1. ハードウェア ex を確保ampファイルデザインの生成が完了しました。
  2. インテル Quartus Prime ソフトウェアを起動し、.qpf を開きます。 file.
    • HDMI 2.1 デザイン exampSupport FRL を有効にしたファイル: project directory/quartus/a10_hdmi21_frl_demo.qpf
    • HDMI 2.0 デザイン exampSupport FRL を無効にしたファイル: projectd irectory/quartus/a10_hdmi2_demo.qpf
  3. [処理] ➤ [コンパイルの開始] をクリックします。
  4. コンパイルが成功すると、.sof file quartus/output_ で生成されますfileのディレクトリ。
  5. オンボード FMC ポート B (J2) に接続します。
    • HDMI 2.1 デザイン exampSupport FRL が有効なファイル: Bitec HDMI 2.1 FMC ドーター カード Rev 9
    注記: Bitec HDMI ドーター カードのリビジョンを選択できます。 アンダーザデザインExampル タブで、HDMI ドーター カード リビジョンをリビジョン 9、リビジョン、またはドーター カードなしのいずれかに設定します。 デフォルト値はリビジョン 9 です。
    • HDMI 2.0 デザイン exampサポート FRL が無効になっているファイル: Bitec HDMI 2.0 FMC ドーター カード Rev 11
  6. Bitec FMC ドーター カードの TX (P1) を外部ビデオ ソースに接続します。
  7. Bitec FMC ドーター カードの RX (P2) を外部ビデオ シンクまたはビデオ アナライザーに接続します。
  8. 開発ボードのすべてのスイッチがデフォルトの位置にあることを確認します。
  9. 生成された .sof を使用して、選択した Arria 10 デバイスを開発ボード上で構成します。 file (ツール ➤ プログラマー)。
  10. アナライザーは、ソースから生成されたビデオを表示する必要があります。

関連情報
インテル Arria 10 FPGA 開発キットのユーザーガイド
1.4。 HDMI インテル FPGA IP 設計例ampファイル パラメータ
表2.
HDMI インテル FPGA IP 設計例ampインテル Arria 10 デバイスの le パラメーター これらのオプションは、インテル Arria 10 デバイスでのみ使用できます。

パラメータ 価値

説明

利用可能な設計例ample
デザインを選択 Arria 10 HDMI RX-TX 再送信 デザインexを選択ampファイルが生成されます。

設計例ample Files

シミュレーション オン、オフ このオプションをオンにすると、必要な files シミュレーション テストベンチ用。
合成 オン、オフ このオプションをオンにすると、必要な fileインテル Quartus Prime のコンパイルおよびハードウェアのデモンストレーション用。

生成された HDL 形式

生成する File 形式 Verilog、VHDL 生成されたデザインの優先 HDL 形式を選択します。ample fileセット。
注記: このオプションは、生成された最上位 IP のフォーマットのみを決定します。 file秒。 他のすべて files (例: exampル テストベンチとトップ レベル fileハードウェアのデモンストレーション用) は Verilog HDL 形式です。

ターゲット開発キット

ボードを選択 開発キットなし、 ターゲット デザインのボードを選択します。ampル。
Arria 10 GX FPGA 開発キット、

カスタム開発キット

• 開発キットなし: このオプションは、設計 ex のすべてのハードウェア面を除外します。ampル。 IP コアは、すべてのピン割り当てを仮想ピンに設定します。
• Arria 10 GX FPGA Development Kit: このオプションは、この開発キットのデバイスと一致するプロジェクトのターゲット デバイスを自動的に選択します。 を使用してターゲット デバイスを変更できます。 ターゲット デバイスの変更 ボード リビジョンに異なるデバイス バリアントがある場合は、パラメーターを指定します。 IP コアは、開発キットに従ってすべてのピン割り当てを設定します。
•カスタム開発キット: このオプションでは、設計を元に戻すことができます。ampIntel FPGA を搭載したサードパーティの開発キットでテストされるファイル。 ピンの割り当てを自分で設定する必要がある場合があります。

ターゲットデバイス

ターゲット デバイスの変更 オン、オフ このオプションをオンにして、開発キットに適したデバイス バリアントを選択します。

HDMI 2.1 設計例ample (FRL = 1 をサポート)

HDMI 2.1 デザイン exampFRL モードのファイルは、XNUMX つの RX チャネルと XNUMX つの TX チャネルで構成される XNUMX つの HDMI インスタンス パラレル ループバックを示します。
表 3. HDMI 2.1 設計例ampインテル Arria 10 デバイス用のファイル

設計例ample データレート チャネルモード

ループバック タイプ

Arria 10 HDMI RX-TX 再送信 • 12 Gbps (FRL)
• 10 Gbps (FRL)
• 8Gbps (FRL)
• 6 Gbps (FRL)
• 3 Gbps (FRL)
• <6 Gbps (TMDS)
シンプレックス FIFO バッファと並列

特徴

  • このデザインは、FIFO バッファーをインスタンス化して、HDMI 2.1 シンクとソースの間で直接 HDMI ビデオ ストリーム パススルーを実行します。
  • このデザインは、実行時に FRL モードと TMDS モードを切り替えることができます。
  • この設計では、早期のデバッグに LED ステータスを使用します。tage.
  • このデザインには、HDMI RX および TX インスタンスが付属しています。
  • このデザインは、RX-TX リンク モジュールでの Dynamic Range and Mastering (HDR) InfoFrame の挿入とフィルタリングを示しています。
  • デザインは、TX に接続されたシンクと RX に接続されたソースの間で FRL レートをネゴシエートします。 デザインは、デフォルト コンフィギュレーションで外部シンクからオンボード RX に EDID を通過します。 Nios II プロセッサは、TX に接続されたシンクの機能に基づいてリンク ベースをネゴシエートします。 また、user_dipsw オンボード スイッチを切り替えて、TX および RX FRL 機能を手動で制御することもできます。
  • このデザインには、いくつかのデバッグ機能が含まれています。
    RX インスタンスは外部ビデオ ジェネレーターからビデオ ソースを受信し、データは TX インスタンスに送信される前にループバック FIFO を通過します。 機能を検証するには、外部ビデオ アナライザー、モニター、または HDMI 接続を備えたテレビを TX コアに接続する必要があります。

2.1. HDMI 2.1 RX-TX 再送信設計のブロック図
HDMI RX-TX 再送信設計 exampファイルは、サポート FRL が有効になっている HDMI 2.1 のシンプレックス チャネル モードでのパラレル ループバックを示します。
図 4. HDMI 2.1 RX-TX 再送信のブロック図Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図2.2. RX 専用または TX 専用設計の作成ns
上級ユーザーは、HDMI 2.1 デザインを使用して、TX または RX 専用のデザインを作成できます。
図 5. RX 専用または TX 専用設計に必要なコンポーネントIntel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 1RX または TX 専用のコンポーネントを使用するには、無関係なブロックをデザインから削除します。
表 4. RX 専用および TX 専用の設計要件

ユーザー要件 保存する 取り除く

追加

HDMI RX のみ RXトップ • 送信トップ
• RX-TX リンク
• CPU サブシステム
• トランシーバー アービター
HDMI TX のみ •TXトップ
•CPUサブシステム
●RXトップ
• RX-TX リンク
•トランシーバーアービター
ビデオ パターン ジェネレーター (カスタム モジュールまたはビデオおよび画像処理 (VIP) スイートから生成)

RTL の変更に加えて、main.c スクリプトも編集する必要があります。
• HDMI TX のみのデザインの場合、次の行を削除して HDMI RX ロック ステータスの待機を分離し、
tx_xcvr_reconfig(tx_frl_rate);
rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET,
PIO_RX_LOCKED_WIDTH);
ながら (rx_hdmi_lock == 0) {
if (check_hpd_isr()) { ブレーク; }
// rx_vid_lock = READ_PIO(PIO_IN0_BASE, PIO_VID_LOCKED_OFFSET,
PIO_VID_LOCKED_WIDTH);
rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET,
PIO_RX_LOCKED_WIDTH);
// rx がロックされた後、Tx を再構成します
もし (rx_hdmi_lock == 1) {
if (READ_PIO(PIO_IN0_BASE, PIO_LOOPBACK_MODE_OFFSET,
PIO_LOOPBACK_MODE_WIDTH) == 1) {
rx_frl_rate = READ_PIO(PIO_IN0_BASE, PIO_RX_FRL_RATE_OFFSET,
PIO_RX_FRL_RATE_WIDTH);
tx_xcvr_reconfig(rx_frl_rate);
} それ以外 {
tx_xcvr_reconfig(tx_frl_rate);
}}}
• HDMI RX のみのデザインの場合、main.c スクリプトで次の行のみを保持します。
REDRIVER_INIT();
hdmi_rx_init();
2.3。 ハードウェアとソフトウェアの要件
インテルは、次のハードウェアとソフトウェアを使用して設計をテストします。ampル。
ハードウェア

  • インテル Arria 10 GX FPGA 開発キット
  • HDMI 2.1 ソース (Quantum Data 980​​48 XNUMXG ジェネレーター)
  • HDMI 2.1 シンク (Quantum Data 980​​48 XNUMXG アナライザー)
  • Bitec HDMI FMC 2.1 ドーター カード (リビジョン 9)
  • HDMI 2.1 カテゴリ 3 ケーブル (Belkin 48Gbps HDMI 2.1 ケーブルでテスト済み)

ソフトウェア

  • インテル Quartus Prime プロ・エディション ソフトウェア バージョン 20.1

2.4。 ディレクトリ構造
ディレクトリには、生成された fileHDMI Intel FPGA IP デザイン ex の sampル。
図 6. Design Ex のディレクトリ構造ampleIntel HDMI Arria 10 FPGA IP デザイン例ample - デザイン例ample表 5. 生成された RTL Files

フォルダ Files/サブフォルダー
一般 クロックコントロール.ip
クロッククロッサー.v
dcfifo_inst.v
エッジ検出器.sv
fifo.ip
出力_buf_i2c.ip
test_pattern_gen.v
trpg.v
trpg_data.v
グー gxb_rx.ip
gxb_rx_reset.ip
gxb_tx.ip
gxb_tx_fpll.ip
gxb_tx_reset.ip
hdmi_rx hdmi_rx.ip
hdmi_rx_top.v
パナソニック.hex
hdmi_tx hdmi_tx.ip
hdmi_tx_top.v
i2c_スレーブ i2c_avl_mst_intf_gen.v
i2c_clk_cnt.v
i2c_condt_det.v
i2c_databuffer.v
i2c_rxshifter.v
i2c_slvfsm.v
i2c_spksupp.v
i2c_txout.v
i2c_txshifter.v
i2cslave_to_avlmm_bridge.v
プル pll_hdmi_reconfig.ip
pll_frl.ip
pll_reconfig_ctrl.v
pll_tmds.ip
pll_vidclk.ip
quartus.ini
rxtx_link altera_hdmi_hdr_infoframe.v
aux_mux.qsys
aux_retransmit.v
aux_src_gen.v
ext_aux_filter.v
rxtx_link.v
scfifo_vid.ip
再構成 mr_rx_iopll_tmds/
mr_rxphy/
mr_tx_fpll/
altera_xcvr_functions.sv
mr_compare.sv
mr_rate_detect.v
mr_rx_rate_detect_top.v
m_rx_rcfg_ctrl.v
mr_rx_reconfig.v
m_tx_rate_detect_top.v
m_tx_rcfg_ctrl.v
mr_tx_reconfig.v
rcfg_array_streamer_iopll.sv
rcfg_array_streamer_rxphy.sv
rcfg_array_streamer_rxphy_xn.sv
rcfg_array_streamer_txphy.sv
rcfg_array_streamer_txphy_xn.sv
rcfg_array_streamer_txpll.sv
sdc a10_hdmi2.sdc
jtag.sdc

表 6. 生成されたシミュレーション Files
参照 シミュレーション テストベンチ 詳細はセクション

フォルダ Files
アルデック /aldec.do
/rivierapro_setup.tcl
リズム /cds.lib
/hdl.var
メンター /メンター.do
/msim_setup.tcl
概要 /vcs/filelist.f
/vcs/vcs_setup.sh
/vcs/vcs_sim.sh
/vcsmx/synopsys_sim_setup
/vcsmx/vcsmx_setup.sh
/vcsmx/vcsmx_sim.sh
エクセリウム /cds.lib
/hdl.var
/xcelium_setup.sh
/xcelium_sim.sh
一般 /modelsim_files.tcl
/リビエラ_files.tcl
/vcs_files.tcl
/vcsmx_files.tcl
/エクセリウム_files.tcl
hdmi_rx /hdmi_rx.ip
/パナソニック.hex
hdmi_tx /hdmi_tx.ip

表 7. 生成されたソフトウェア Files

フォルダ Files
tx_control_src
注記: tx_control フォルダーには、これらの複製も含まれています。 files.
グローバル.h
hdmi_rx.c
hdmi_rx.h
hdmi_tx.c
hdmi_tx.h
hdmi_tx_read_edid.c
hdmi_tx_read_edid.h
インテル_fpga_i2c.c
インテル_fpga_i2c.h
main.c
pio_read_write.c
pio_read_write.h

2.5. 設計コンポーネント
HDMI Intel FPGA IP 設計例ampファイルは、共通の最上位コンポーネントと、HDMI TX および RX の最上位コンポーネントで構成されます。
2.5.1. HDMI TX コンポーネント
HDMI TX 最上位コンポーネントには、TX コアの最上位コンポーネント、IOPLL、トランシーバー PHY リセット コントローラー、トランシーバー ネイティブ PHY、TX PLL、TX リコンフィギュレーション管理、および出力バッファー ブロックが含まれます。
図 7. HDMI TX 上部コンポーネントIntel HDMI Arria 10 FPGA IP デザイン例ample - 上位コンポーネント表 8. HDMI TX 上部コンポーネント

モジュール

説明

HDMI TX コア IP は最上位からビデオ データを受信し、補助データ エンコーディング、オーディオ データ エンコーディング、ビデオ データ エンコーディング、スクランブル、TMDS エンコーディング、またはパケット化を実行します。
IOPLL IOPLL (iopll_frl) は、TX コアの FRL クロックを生成します。 この基準クロックは、TX FPLL 出力クロックを受信します。
FRL クロック周波数 = レーンあたりのデータ レート x 4 / (クロックあたりの FRL 文字 x 18)
トランシーバー PHY リセット コントローラー トランシーバー PHY リセット コントローラーは、TX トランシーバーの確実な初期化を保証します。 このコントローラーのリセット入力は最上位からトリガーされ、ブロック内のリセット シーケンスに従って、対応するアナログおよびデジタル リセット信号を Transceiver Native PHY ブロックに生成します。
このブロックからの tx_ready 出力信号は、HDMI Intel FPGA IP へのリセット信号としても機能し、トランシーバーが稼働中であり、コアからデータを受信する準備ができていることを示します。
トランシーバー ネイティブ PHY HDMI TX コアからパラレル データを受信し、送信からデータをシリアル化するハード トランシーバー ブロック。
注記: HDMI TX のチャネル間スキュー要件を満たすには、 インテル Arria 10 トランシーバーのネイティブ PHY パラメーター・エディターで TX チャネル・ボンディング・モード・オプションを次のように設定します。 PMAとPCSの接合. で推奨されているように、最大​​スキュー (set_max_skew) 制約要件をトランシーバー リセット コントローラー (tx_digitalreset) からのデジタル リセット信号に追加する必要もあります。 インテル Arria 10 トランシーバー PHY ユーザーガイド。
送信 PLL トランスミッタ PLL ブロックは、シリアル高速クロックを Transceiver Native PHY ブロックに提供します。 この HDMI Intel FPGA IP 設計例の場合ample, fPLL は TX PLL として使用されます。
TX PLL には XNUMX つの基準クロックがあります。
• 基準クロック 0 は、TMDS モードのプログラマブル オシレータ (TMDS クロック周波数) に接続されます。 このデザインの例ではample, RX TMDS クロックは、TMDS モードの基準クロック 0 に接続するために使用されます。 インテルでは、リファレンス クロック 0 に TMDS クロック周波数のプログラマブル オシレーターを使用することを推奨しています。
• 基準クロック 1 は、FRL モードの固定 100 MHz クロックに接続されます。
TX 再構成管理 • TMDS モードでは、TX リコンフィギュレーション管理ブロックは、特定のビデオの TMDS クロック周波数に従って、異なる出力クロック周波数用に TX PLL をリコンフィギュレーションします。
• FRL モードでは、TX リコンフィギュレーション管理ブロックは、3x6 SCDC レジスタの FRL_Rate フィールドに従って、8 Gbps、10 Gbps、12 Gbps、0 Gbps、および 31 Gbps のシリアル高速クロックを供給するように TX PLL をリコンフィギュレーションします。
• TX リコンフィギュレーション管理ブロックは、TX PLL 基準クロックを TMDS モードの基準クロック 0 と FRL モードの基準クロック 1 の間で切り替えます。
出力バッファ このバッファは、HDMI DDC およびリドライバ コンポーネントの I2C インターフェイスとやり取りするためのインターフェイスとして機能します。

表 9. トランシーバーのデータ レートとオーバーampling Factor 各クロック周波数範囲

モード データレート オーバーampler 1 (2x オーバーample) オーバーampler 2 (4x オーバーample) オーバーample 要素 オーバーamp導かれたデータ レート(Mbps)
TMDS 250–1000 On On 8 2000–8000
TMDS 1000–6000 On オフ 2 2000–12000
FRL 3000 オフ オフ 1 3000
FRL 6000 オフ オフ 1 6000
FRL 8000 オフ オフ 1 8000
FRL 10000 オフ オフ 1 10000
FRL 12000 オフ オフ 1 12000

図 8. TX リコンフィギュレーション シーケンス フローIntel HDMI Arria 10 FPGA IP デザイン例ample - デザインのコンパイルとテスト 12.5.2. HDMI RX コンポーネント
HDMI RX の最上位コンポーネントには、RX コアの最上位コンポーネント、オプションの I²C スレーブおよび EDID RAM、IOPLL、トランシーバー PHY リセット コントローラー、RX ネイティブ PHY、および RX 再構成管理ブロックが含まれます。
図 9. HDMI RX 上部コンポーネントIntel HDMI Arria 10 FPGA IP デザイン例ample - トップ コンポーネント 1表 10. HDMI RX の上部コンポーネント

モジュール

説明

HDMI RX コア IP はトランシーバー ネイティブ PHY からシリアル データを受信し、データ アライメント、チャネル デスキュー、TMDS デコード、補助データ デコード、ビデオ データ デコード、オーディオ データ デコード、デスクランブルを実行します。
I2C スレーブ I2C は、シンク ディスプレイ データ チャネル (DDC) とステータスおよびデータ チャネル (SCDC) に使用されるインターフェイスです。 HDMI ソースは DDC を使用して、Enhanced Extended Display Identification Data (E-EDID) データ構造を読み取ることにより、シンクの機能と特性を判断します。
E-EDID の 8 ビット I2C スレーブ アドレスは 0xA0 と 0xA1 です。 LSB はアクセス タイプを示します。読み取りの場合は 1、書き込みの場合は 0 です。 HPD イベントが発生すると、I2C スレーブはオンチップから読み取ることによって E-EDID データに応答します。
I2C スレーブ専用コントローラは、HDMI 2.0 および 2.1 の SCDC もサポートします。SCDC の 9 ビット I2C スレーブ アドレスは 0xA8 および 0xA9 です。 HPD イベントが発生すると、I2C スレーブは HDMI RX コアの SCDC インターフェイスとの間で書き込みまたは読み取りトランザクションを実行します。
固定レート リンク (FRL) のリンク トレーニング プロセスも I2C を介して発生します HPD イベント中、またはソースが FRL レート レジスタ (SCDC レジスタ 0x31 ビット [3:0]) に異なる FRL レートを書き込むと、リンク トレーニング プロセスが開始します。
注記: HDMI 2 または HDMI 2.0 が意図されていない場合、SCDC 用のこの I2.1C スレーブ専用コントローラーは必要ありません。
エディット ラム デザインは、RAM 1 ポート IP を使用して EDID 情報を保存します。 標準の 2 線式 (クロックおよびデータ) シリアル バス プロトコル (I861C スレーブ専用コントローラー) は、CEA-XNUMX-D 準拠の E-EDID データ構造を転送します。 この EDID RAM には、E-EDID 情報が格納されます。
• TMDS モードの場合、デザインは TX から RX への EDID パススルーをサポートします。 EDID パススルー中に、TX が外部シンクに接続されている場合、Nios II プロセッサは外部シンクから EDID を読み取り、EDID RAM に書き込みます。
• FRL モードの場合、Nios II プロセッサは、global.h スクリプトの HDMI_RX_MAX_FRL_RATE パラメータに基づいて、リンク レートごとに事前設定された EDID を書き込みます。
サポートされている FRL レートには、次の HDMI_RX_MAX_FRL_RATE 入力を使用します。
• 1: 3G 3 レーン
• 2: 6G 3 レーン
•3: 6G 4 レーン
• 4: 8G 4 レーン
•5: 10G 4 レーン (デフォルト)
•6: 12G 4 レーン
IOPLL HDMI RX は XNUMX つの IOPLL を使用します。
• 最初の IOPLL (pll_tmds) は RX CDR 基準クロックを生成します。 この IOPLL は、TMDS モードでのみ使用されます。 この IOPLL の基準クロックは、TMDS クロックを受け取ります。 CDR は 50 MHz 未満の基準クロックを受信できず、TMDS クロック周波数の範囲は 25 MHz ~ 340 MHz であるため、TMDS モードはこの IOPLL を使用します。 この IOPLL は、5 MHz ~ 25 MHz の周波数範囲で入力基準クロックの 50 倍のクロック周波数を提供し、50 MHz ~ 340 MHz の周波数範囲で入力基準クロックと同じクロック周波数を提供します。
• XNUMX 番目の IOPLL (iopll_frl) は、RX コアの FRL クロックを生成します。 この基準クロックは、CDR リカバリ クロックを受信します。
FRL クロック周波数 = レーンあたりのデータ レート x 4 / (クロックあたりの FRL 文字 x 18)
トランシーバー PHY リセット コントローラー トランシーバー PHY リセット コントローラーは、RX トランシーバーの確実な初期化を保証します。 このコントローラーのリセット入力は RX リコンフィギュレーションによってトリガーされ、ブロック内のリセット シーケンスに従って、対応するアナログおよびデジタル リセット信号をトランシーバー ネイティブ PHY ブロックに生成します。
RX ネイティブ PHY 外部ビデオ ソースからシリアル データを受信するハード トランシーバー ブロック。 データを HDMI RX コアに渡す前に、シリアル データをパラレル データにデシリアライズします。 このブロックは、FRL モードの拡張 PCS で実行されます。
RX CDR には XNUMX つの基準クロックがあります。
• 基準クロック 0 は、TMDS クロックから生成される IOPLL TMDS (pll_tmds) の出力クロックに接続されます。
• 基準クロック 1 は、固定の 100 MHz クロックに接続されています。 TMDS モードでは、RX CDR は基準クロック 0 を選択するように再構成され、FRL モードでは、RX CDR は基準クロック 1 を選択するように再構成されます。
RX 再構成管理 TMDS モードでは、RX リコンフィギュレーション管理ブロックは HDMI PLL を使用してレート検出回路を実装し、250 Mbps ~ 6,000 Mbps の範囲の任意のリンク レートで動作するように RX トランシーバーを駆動します。
FRL モードでは、RX 再構成管理ブロックは、SCDC_FRL_RATE レジスタ フィールド (3x6[8:10]) の FRL レートに応じて、12 Gbps、0 Gbps、31 Gbps、3 Gbps、または 0 Gbps で動作するように RX トランシーバーを再構成します。 RX リコンフィギュレーション管理ブロックは、標準 PCS/RX を切り替えます。
TMDS モードの場合は拡張 PCS、FRL モードの場合は拡張 PCS を参照してください。 図10 22ページにあります。

図 10. RX リコンフィギュレーション シーケンス フロー
この図は、コントローラーが入力データ ストリームと基準クロック周波数を受信するとき、またはトランシーバーがロック解除されているときの、コントローラーのマルチレート リコンフィギュレーション シーケンス フローを示しています。Intel HDMI Arria 10 FPGA IP デザイン例ample - デザインのコンパイルとテスト 22.5.3. トップレベル共通ブロック
最上位の共通ブロックには、トランシーバー アービター、RX-TX リンク コンポーネント、および CPU サブシステムが含まれます。
表 11. 最上位共通ブロック

モジュール

説明

トランシーバー アービター この汎用機能ブロックは、同じ物理チャネル内の RX または TX トランシーバーのいずれかが再構成を必要とする場合に、トランシーバーが同時に再調整されるのを防ぎます。 同時リキャリブレーションは、同じチャネル内の RX および TX トランシーバーが独立した IP 実装に割り当てられているアプリケーションに影響を与えます。
このトランシーバー アービターは、シンプレックス TX とシンプレックス RX を同じ物理チャネルにマージするために推奨される解像度を拡張したものです。 このトランシーバー・アービターは、トランシーバーのリコンフィギュレーション・インターフェース・ポートがシーケンシャルにしかアクセスできないため、チャネル内のシンプレックス RX および TX トランシーバーをターゲットとする Avalon® メモリー・マップド RX および TX リコンフィギュレーション要求のマージおよびアービトレーションも支援します。
このデザイン例のトランシーバー アービターと TX/RX ネイティブ PHY/PHY リセット コントローラー ブロック間のインターフェイス接続ampファイルは、トランシーバー アービターを使用して任意の IP の組み合わせに適用される汎用モードを示しています。 チャネルで RX または TX トランシーバーのいずれかのみが使用される場合、トランシーバー アービターは必要ありません。
トランシーバー・アービターは、その Avalon メモリー・マップされた再構成インターフェースを介して再構成のリクエスターを識別し、対応する tx_reconfig_cal_busy または rx_reconfig_cal_busy がそれに応じて確実にゲートされるようにします。
HDMI アプリケーションの場合、RX のみが再構成を開始します。 アービターを介して Avalon メモリ マップされた再構成要求をチャネリングすることにより、アービターは再構成要求が RX から発信されたことを識別し、RX は tx_reconfig_cal_busy のアサートをゲートし、rx_reconfig_cal_busy のアサートを許可します。 ゲーティングは、TX トランシーバーが意図せずにキャリブレーション モードに移行するのを防ぎます。
注記: HDMI は RX 再構成のみを必要とするため、tx_reconfig_mgmt_* 信号は接続されていません。 また、アービタと TX ネイティブ PHY ブロックの間に Avalon メモリ マップト インターフェイスは必要ありません。 ブロックは設計 ex のインターフェースに割り当てられます。ampTX/RX ネイティブ PHY/PHY リセット コントローラーへの汎用トランシーバー アービター接続を示すファイル
RX-TXリンク • HDMI RX コアからのビデオ データ出力と同期信号は、RX および TX ビデオ クロック ドメイン全体で DCFIFO をループします。
• HDMI TX コアの補助データ ポートは、バックプレッシャを通じて DCFIFO を流れる補助データを制御します。 バックプレッシャにより、補助データ ポートに不完全な補助パケットが存在しないことが保証されます。
• このブロックは外部フィルタリングも実行します。
— HDMI TX コアの補助データ ポートに送信する前に、補助データ ストリームからオーディオ データとオーディオ クロック再生成パケットをフィルター処理します。
— HDMI RX 補助データからハイ ダイナミック レンジ (HDR) InfoFrame をフィルタリングし、ex を挿入します。ample HDR InfoFrame を、Avalon ストリーミング マルチプレクサを介して HDMI TX の補助データに送信します。
CPU サブシステム CPU サブシステムは、SCDC および DDC コントローラー、およびソース再構成コントローラーとして機能します。
• ソース SCDC コントローラーには、I2C マスター コントローラーが含まれます。 I2C マスター コントローラーは、SCDC データ構造を FPGA ソースから HDMI 2.0 操作用の外部シンクに転送します。 例えばamp出力データ ストリームが 6,000 Mbps の場合、Nios II プロセッサは I2C マスター コントローラに、シンク TMDS コンフィギュレーション レジスタの TMDS_BIT_CLOCK_RATIO および SCRAMBLER_ENABLE ビットを 1 に更新するように命令します。
• 同じ I2C マスターが、HDMI ソースと外部シンクの間で DDC データ構造 (E-EDID) も転送します。
• Nios II CPU は、HDMI ソースの再構成コントローラーとして機能します。 CPU は、RX 再構成管理モジュールからの定期的なレート検出に依存して、TX に再構成が必要かどうかを判断します。 Avalon メモリー・マップ・スレーブ・トランスレーターは、Nios II プロセッサーの Avalon メモリー・マップ・マスター・インターフェースと、外部でインスタンス化された HDMI ソースの IOPLL および TX Native PHY の Avalon メモリー・マップ・スレーブ・インターフェースとの間のインターフェースを提供します。
• 外部シンクとの I2C マスター インターフェイスを介してリンク トレーニングを実行する

2.6. ダイナミック レンジとマスタリング (HDR) InfoFrame の挿入とフィルタリング
HDMI Intel FPGA IP 設計例ampファイルには、RX-TX ループバック システムでの HDR InfoFrame 挿入のデモが含まれています。
HDMI 仕様バージョン 2.0b では、ダイナミック レンジとマスタリング InfoFrame を HDMI 補助ストリーム経由で送信できます。 このデモでは、Auxiliary Packet Generator ブロックが HDR 挿入をサポートしています。 モジュールの信号リスト テーブルで指定されているように目的の HDR InfoFrame パケットをフォーマットするだけでよく、HDR InfoFrame の挿入はビデオ フレームごとに XNUMX 回行われます。
この例ampファイル構成では、着信補助ストリームに既に HDR InfoFrame が含まれている場合、ストリーミングされた HDR コンテンツはフィルタリングされます。 フィルタリングにより、競合する HDR InfoFrame が送信されるのを回避し、HDR S で指定された値のみが送信されるようにします。ample データモジュールが使用されます。
図 11. ダイナミック レンジとマスター InfoFrame 挿入を備えた RX-TX リンク
この図は、HDMI TX コア補助ストリームへのダイナミック レンジおよびマスタリング InfoFrame 挿入を含む RX-TX リンクのブロック図を示しています。Intel HDMI Arria 10 FPGA IP デザイン例ample - ダイナミックレンジ表 12. 補助データ挿入ブロック (aux_retransmit) 信号

信号 方向

説明

クロックとリセット
クリック 入力 1 クロック入力。 このクロックは、ビデオ クロックに接続する必要があります。
リセット 入力 1 入力をリセットします。

補助パケット信号

tx_aux_data 出力 72 TX マルチプレクサからの補助パケット出力。
tx_aux_valid 出力 1
tx_aux_ready 出力 1
tx_aux_sop 出力 1
tx_aux_eop 出力 1
rx_aux_data 入力 72 RX マルチプレクサに入る前にパケット フィルタ モジュールに渡される補助データ。
rx_aux_valid 入力 1
rx_aux_sop 入力 1
rx_aux_eop 入力 1
制御信号
hdmi_tx_vsync 入力 1 HDMI TX ビデオ垂直同期。 この信号は、リンク速度クロック ドメインに同期する必要があります。コアは、この信号の立ち上がりエッジで補助ストリームに HDR InfoFrame を挿入します。

表 13. HDR データ・モジュール (altera_hdmi_hdr_infoframe) 信号

信号

方向

説明

0年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 0: InfoFrame タイプ コード。
1年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 1: InfoFrame のバージョン番号。
2年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 2: InfoFrame の長さ。
pb 入力 224 ダイナミック レンジとマスタリング InfoFrame のデータ バイト。

表 14. ダイナミック レンジとマスタリング InfoFrame データ バイト バンドル ビット フィールド

ビットフィールド

意味

静的メタデータ タイプ 1

7:0 データ バイト 1: {5'h0, EOTF[2:0]}
15:8 データ バイト 2: {5'h0, Static_Metadata_Descriptor_ID[2:0]}
23:16 データ バイト 3: Static_Metadata_Descriptor display_primaries_x[0]、LSB
31:24 データ バイト 4: Static_Metadata_Descriptor display_primaries_x[0]、MSB
39:32 データ バイト 5: Static_Metadata_Descriptor display_primaries_y[0]、LSB
47:40 データ バイト 6: Static_Metadata_Descriptor display_primaries_y[0]、MSB
55:48 データ バイト 7: Static_Metadata_Descriptor display_primaries_x[1]、LSB
63:56 データ バイト 8: Static_Metadata_Descriptor display_primaries_x[1]、MSB
71:64 データ バイト 9: Static_Metadata_Descriptor display_primaries_y[1]、LSB
79:72 データ バイト 10: Static_Metadata_Descriptor display_primaries_y[1]、MSB
87:80 データ バイト 11: Static_Metadata_Descriptor display_primaries_x[2]、LSB
95:88 データ バイト 12: Static_Metadata_Descriptor display_primaries_x[2]、MSB
103:96 データ バイト 13: Static_Metadata_Descriptor display_primaries_y[2]、LSB
111:104 データ バイト 14: Static_Metadata_Descriptor display_primaries_y[2]、MSB
119:112 データ バイト 15: Static_Metadata_Descriptor white_point_x、LSB
127:120 データ バイト 16: Static_Metadata_Descriptor white_point_x、MSB
135:128 データ バイト 17: Static_Metadata_Descriptor white_point_y、LSB
143:136 データ バイト 18: Static_Metadata_Descriptor white_point_y、MSB
151:144 データ バイト 19: Static_Metadata_Descriptor max_display_mastering_luminance、LSB
159:152 データ バイト 20: Static_Metadata_Descriptor max_display_mastering_luminance、MSB
167:160 データ バイト 21: Static_Metadata_Descriptor min_display_mastering_luminance、LSB
175:168 データ バイト 22: Static_Metadata_Descriptor min_display_mastering_luminance、MSB
183:176 データ バイト 23: Static_Metadata_Descriptor 最大コンテンツ ライト レベル、LSB
191:184 データ バイト 24: Static_Metadata_Descriptor 最大コンテンツ ライト レベル、MSB
199:192 データ バイト 25: Static_Metadata_Descriptor 最大フレーム平均光レベル、LSB
207:200 データ バイト 26: Static_Metadata_Descriptor 最大フレーム平均光レベル、MSB
215:208 予約済み
223:216 予約済み

HDR の挿入とフィルタリングを無効にする
HDR 挿入とフィルターを無効にすると、RX-TX 再送信設計を変更することなく、ソース補助ストリームで既に利用可能な HDR コンテンツの再送信を検証できます。ampル。
HDR InfoFrame の挿入とフィルタリングを無効にするには:

  1. rxtx_link.v で block_ext_hdr_infoframe を 1'b0 に設定します。 file 補助ストリームからの HDR InfoFrame のフィルタリングを防止します。
  2. altera_hdmi_aux_hdr.v で、avalon_st_multiplexer インスタンスの multiplexer_in0_valid を設定します。 file Auxiliary Packet Generator が追加の HDR InfoFrame を形成して TX Auxiliary ストリームに挿入するのを防ぐために、1'b0 に設定します。

2.7. 設計ソフトウェア フロー
デザインのメイン ソフトウェア フローでは、Nios II プロセッサが TI リドライバ設定を構成し、電源投入時に TX および RX パスを初期化します。
図 12. main.c スクリプトのソフトウェア フロー
Intel HDMI Arria 10 FPGA IP デザイン例ample - ソフトウェア フローソフトウェアは while ループを実行して、シンクとソースの変更を監視し、変更に対応します。 ソフトウェアは、TX の再構成、TX リンクのトレーニングをトリガーし、ビデオの送信を開始する場合があります。
図 13. TX パスの初期化フローチャート 初期化 TX パスIntel HDMI Arria 10 FPGA IP デザイン例ample - フローチャート図 14. RX パスの初期化フローチャートIntel HDMI Arria 10 FPGA IP デザイン例ampル - フローチャート 1図 15. TX の再構成とリンク トレーニングのフローチャートIntel HDMI Arria 10 FPGA IP デザイン例ampル - フローチャート 2図 16. 特定の FRL レート フローチャートでのリンク トレーニング LTS:3 プロセスIntel HDMI Arria 10 FPGA IP デザイン例ampル - フローチャート 3図 17. HDMI TX ビデオ送信のフローチャートIntel HDMI Arria 10 FPGA IP デザイン例ampル - フローチャート 42.8。 異なる FRL レートでのデザインの実行
外部シンクのデフォルト FRL レート以外の異なる FRL レートでデザインを実行できます。
異なる FRL レートでデザインを実行するには、次のようにします。

  1. オンボードの user_dipsw0 スイッチを ON の位置に切り替えます。
  2. Nios II コマンド シェルを開き、nios2-terminal と入力します。
  3. 次のコマンドを入力し、Enter キーを押して実行します。
指示

説明

h ヘルプ メニューを表示します。
r0 RX 最大 FRL 機能を FRL レート 0 に更新します (TMDS のみ)。
r1 RX の最大 FRL 機能を FRL レート 1 (3 Gbps) に更新します。
r2 RX の最大 FRL 機能を FRL レート 2 (6 Gbps、3 レーン) に更新します。
r3 RX の最大 FRL 機能を FRL レート 3 (6 Gbps、4 レーン) に更新します。
r4 RX の最大 FRL 機能を FRL レート 4 (8 Gbps) に更新します。
r5 RX の最大 FRL 機能を FRL レート 5 (10 Gbps) に更新します。
r6 RX の最大 FRL 機能を FRL レート 6 (12 Gbps) に更新します。
t1 TX は、リンク レートを FRL レート 1 (3 Gbps) に設定します。
t2 TX は、リンク レートを FRL レート 2 (6 Gbps、3 レーン) に設定します。
t3 TX は、リンク レートを FRL レート 3 (6 Gbps、4 レーン) に設定します。
t4 TX は、リンク レートを FRL レート 4 (8 Gbps) に設定します。
t5 TX は、リンク レートを FRL レート 5 (10 Gbps) に設定します。
t6 TX は、リンク レートを FRL レート 6 (12 Gbps) に設定します。

2.9. クロッキング方式
クロッキング方式は、HDMI インテル FPGA IP デザイン例のクロック ドメインを示しています。ampル。
図 18. HDMI 2.1 設計例ampル クロッキング スキームIntel HDMI Arria 10 FPGA IP デザイン例ample - クロッキング スキーム表 15. クロッキング方式の信号

クロック

設計における信号名

説明

管理時計 mgmt_clk これらのコンポーネントのフリーランニング 100 MHz クロック:
• 再構成用の Avalon-MM インターフェイス
— 周波数範囲の要件は 100 ~ 125 MHz です。
• トランシーバー リセット シーケンス用の PHY リセット コントローラー
— 周波数範囲の要件は 1 ~ 500 MHz です。
• IOPLL 再構成
— 最大クロック周波数は 100 MHz です。
• RX 再構成管理
• TX 再構成管理
• CPU
•I2Cマスター
I2Cクロック i2c_clk I100C スレーブ、出力バッファー、SCDC レジスター、HDMI RX コアのリンク トレーニング プロセス、および EDID RAM をクロックする 2 MHz クロック入力。
TX PLL 基準クロック 0 tx_tmds_clk TX PLL への基準クロック 0。 クロック周波数は、HDMI TX TMDS クロック チャネルから予測される TMDS クロック周波数と同じです。 この基準クロックは TMDS モードで使用されます。
この HDMI 設計 ex の場合ampこのクロックは、デモンストレーション目的で RX TMDS クロックに接続されています。 アプリケーションでは、プログラマブル オシレータから TMDS クロック周波数の専用クロックを供給して、ジッタ パフォーマンスを向上させる必要があります。
注記: トランシーバー RX ピンを TX PLL 基準クロックとして使用しないでください。 HDMI TX refclk を RX ピンに配置すると、デザインが適合しなくなります。
TX PLL 基準クロック 1 txfpll_refclk1/rxphy_cdr_refclk1 TX PLL および RX CDR への基準クロック、および vid_clk の IOPLL。 クロック周波数は 100 MHz です。
TX PLL シリアル クロック tx_bonding_locks TX PLL によって生成されるシリアル高速クロック。 クロック周波数は、データ レートに基づいて設定されます。
TX トランシーバーのクロック出力 tx_clk クロック出力はトランシーバーから回復され、周波​​数はクロックあたりのデータ レートとシンボルによって異なります。
TX トランシーバーのクロック出力周波数 = トランシーバーのデータ レート/トランシーバーの幅
この HDMI 設計 ex の場合ample、チャネル 0 からの TX トランシーバー クロック出力は、TX トランシーバー コア入力 (tx_coreclkin)、リンク速度 IOPLL (pll_hdmi) 基準クロック、およびビデオおよび FRL IOPLL (pll_vid_frl) 基準クロックをクロックします。
ビデオクロック tx_vid_clk/rx_vid_clk TX および RX コアへのビデオ クロック。 クロックは 225 MHz の固定周波数で動作します。
TX/RX FRL クロック tx_frl_clk/rx_frl_clk TX および RX コア用の FRL クロック。
RX TMDS クロック rx_tmds_clk HDMI RX コネクタからの TMDS クロック チャネルであり、IOPLL に接続して CDR 基準クロック 0 の基準クロックを生成します。コアは、TMDS モードのときにこのクロックを使用します。
RX CDR 基準クロック 0 rxphy_cdr_refclk0 RX CDR への基準クロック 0。 このクロックは、RX TMDS クロックから生成されます。 RX TMDS クロック周波数の範囲は 25 MHz ~ 340 MHz ですが、RX CDR の最小基準クロック周波数は 50 MHz です。
IOPLL を使用して、5 MHz ~ 25 MHz の TMDS クロックに 50 クロック周波数を生成し、50 MHz ~ 340 MHz の TMDS クロックに同じクロック周波数を生成します。
RX トランシーバーのクロック出力 rx_clk クロック出力はトランシーバーから回復され、周波​​数はデータ レートとトランシーバー幅によって異なります。
RX トランシーバーのクロック出力周波数 = トランシーバーのデータ レート/トランシーバーの幅
この HDMI 設計 ex の場合ample、チャネル 1 からの RX トランシーバー クロック出力は、RX トランシーバー コア入力 (rx_coreclkin) および FRL IOPLL (pll_frl) 基準クロックをクロックします。

2.10. インターフェイス信号
表には、HDMI 設計例の信号がリストされています。ampFRL を有効にしたファイル。
表 16. 最上位信号

信号

方向

説明

オンボード発振器信号
clk_fpga_b3_p 入力 1 コア基準クロック用の 100 MHz フリーランニング クロック。
refclk4_p 入力 1 トランシーバー基準クロック用の 100 MHz フリーランニング クロック。
ユーザー プッシュ ボタンと LED
ユーザー_pb 入力 3 ボタンを押して、HDMI Intel FPGA IP デザイン機能を制御します。
cpu_resetn 入力 1 グローバルリセット。
user_led_g 出力 8 緑色の LED 表示。
参照 ハードウェアのセットアップ LED 機能の詳細については、48 ページを参照してください。
user_dipsw 入力 1 ユーザー定義の DIP スイッチ。
参照 ハードウェアのセットアップ DIP スイッチ機能の詳細については、48 ページを参照してください。
FMC ポート B の HDMI FMC ドーター カード ピン
fmcb_gbtclk_m2c_p_0 入力 1 HDMI RX TMDS クロック。
fmcb_dp_m2c_p 入力 4 HDMI RX クロック、赤、緑、および青のデータ チャネル。
fmcb_dp_c2m_p 出力 4 HDMI TX クロック、赤、緑、青のデータ チャネル。
fmcb_la_rx_p_9 入力 1 HDMI RX +5V 電源検出。
fmcb_la_rx_p_8 出力 1 HDMI RX ホットプラグ検出。
fmcb_la_rx_n_8 入力 1 DDC および SCDC 用の HDMI RX I2C SDA。
fmcb_la_tx_p_10 入力 1 DDC および SCDC 用の HDMI RX I2C SCL。
fmcb_la_tx_p_12 入力 1 HDMI TX ホットプラグ検出。
fmcb_la_tx_n_12 入力 1 DDC および SCDC 用の HDMI I2C SDA。
fmcb_la_rx_p_10 入力 1 DDC および SCDC 用の HDMI I2C SCL。
fmcb_la_tx_n_9 入力 1 リドライバ制御用の HDMI I2C SDA。
fmcb_la_rx_p_11 入力 1 リドライバ制御用の HDMI I2C SCL。
fmcb_la_tx_n_13 出力 1 HDMI送信+5V
注記: 次の場合にのみ使用可能 Bitec HDMI ドーター カード リビジョン 9 が選択されます。

表 17. HDMI RX トップレベル信号

信号 方向 説明
クロックおよびリセット信号
mgmt_clk 入力 1 システムクロック入力 (100 MHz)。
リセット 入力 1 システムリセット入力。
rx_tmds_clk 入力 1 HDMI RX TMDS クロック。
i2c_clk 入力 1 DDC および SCDC インターフェイスのクロック入力。
クロックおよびリセット信号
rxphy_cdr_refclk1 入力 1 RX CDR 基準クロック 1 のクロック入力。クロック周波数は 100 MHz です。
rx_vid_clk 出力 1 ビデオクロック出力。
sys_init 出力 1 電源投入時にシステムをリセットするためのシステム初期化。
RX トランシーバーと IOPLL 信号
rxpll_tmds_locked 出力 1 TMDS クロック IOPLL がロックされていることを示します。
rxpll_frl_locked 出力 1 FRL クロック IOPLL がロックされていることを示します。
rxphy_serial_data 入力 4 RX ネイティブ PHY への HDMI シリアル データ。
rxphy_ready 出力 1 RX ネイティブ PHY の準備ができていることを示します。
rxphy_cal_busy_raw 出力 4 RX ネイティブ PHY キャリブレーションがトランシーバー アービターに対してビジーです。
rxphy_cal_busy_gated 入力 4 トランシーバー アービターから RX ネイティブ PHY へのキャリブレーション ビジー信号。
rxphy_rcfg_slave_write 入力 4 トランシーバーの再構成 RX ネイティブ PHY からトランシーバー アービターへの Avalon メモリ マップド インターフェイス。
rxphy_rcfg_slave_read 入力 4
rxphy_rcfg_slave_address 入力 40
rxphy_rcfg_slave_writedata 入力 128
rxphy_rcfg_slave_readdata 出力 128
rxphy_rcfg_slave_waitrequest 出力 4
RX 再構成管理
rxphy_rcfg_busy 出力 1 RX 再構成ビジー信号。
rx_tmds_freq 出力 24 HDMI RX TMDS クロック周波数測定 (10 ms)。
rx_tmds_freq_valid 出力 1 RX TMDS クロック周波数測定が有効であることを示します。
rxphy_os 出力 1 オーバーampリングファクター:
•0: 1x オーバーampリング
• 1: 5x オーバーampリング
rxphy_rcfg_master_write 出力 1 RX 再構成管理 Avalon メモリー・マップト・インターフェースからトランシーバー・アービターへ。
rxphy_rcfg_master_read 出力 1
rxphy_rcfg_master_address 出力 12
rxphy_rcfg_master_writedata 出力 32
rxphy_rcfg_master_readdata 入力 32
rxphy_rcfg_master_waitrequest 入力 1
HDMI RX コア信号
rx_vid_clk_locked 入力 1 vid_clk が安定していることを示します。
rxcore_frl_rate 出力 4 RX コアが実行されている FRL レートを示します。
• 0: レガシー モード (TMDS)
• 1: 3 Gbps 3 レーン
• 2: 6 Gbps 4 レーン
• 3: 6 Gbps 4 レーン
• 4: 8 Gbps 4 レーン
• 5: 10 Gbps 4 レーン
• 6: 12 Gbps 4 レーン
• 7 ~ 15: 予約済み
rxcore_frl_locked 出力 4 各ビットは、FRL ロックを達成した特定のレーンを示します。 RX コアがアライメント、デスキューを正常に実行し、レーン ロックを達成すると、FRL がロックされます。
• 3 レーン モードの場合、RX コアが少なくとも 680 回、3 FRL 文字周期ごとにスクランブラー リセット (SR) またはスタート スーパー ブロック (SSB) を受信すると、レーン ロックが達成されます。
• 4 レーン モードの場合、RX コアが少なくとも 510 回、3 FRL 文字周期ごとにスクランブラー リセット (SR) またはスタート スーパー ブロック (SSB) を受信すると、レーン ロックが達成されます。
rxcore_frl_ffe_levels 出力 4 RX コアの SCDC 0x31 レジスタ ビット [7:4] の FFE_level ビットに対応します。
rxcore_frl_flt_ready 入力 1 RX がリンク トレーニング プロセスを開始する準備ができていることを示すためにアサートします。 アサートされると、SCDC レジスタ 0x40 ビット 6 の FLT_ready ビットもアサートされます。
rxcore_frl_src_test_config 入力 8 ソース テスト コンフィギュレーションを指定します。 この値は、SCDC レジスタ 0x35 の SCDC テスト コンフィギュレーション レジスタに書き込まれます。
rxcore_tbcr 出力 1 TMDS ビット対クロック比を示します。 SCDC レジスタ 0x20 ビット 1 の TMDS_Bit_Clock_Ratio レジスタに対応します。
• HDMI 2.0 モードで動作している場合、このビットがアサートされます。 TMDS ビット対クロック比が 40:1 であることを示します。
• HDMI 1.4b で実行している場合、このビットはアサートされません。 TMDS ビット対クロック比が 10:1 であることを示します。
• このビットは FRL モードでは使用されません。
rxcore_scrambler_enable 出力 1 受信データがスクランブルされているかどうかを示します。 SCDC レジスタ 0x20 ビット 0 の Scrambling_Enable フィールドに対応します。
rxcore_audio_de 出力 1 HDMI RX コア オーディオ インターフェイス
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
rxcore_audio_data 出力 256
rxcore_audio_info_ai 出力 48
rxcore_audio_N 出力 20
rxcore_audio_CTS 出力 20
rxcore_audio_metadata 出力 165
rxcore_audio_format 出力 5
rxcore_aux_pkt_data 出力 72 HDMI RX コア補助インターフェイス
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
rxcore_aux_pkt_addr 出力 6
rxcore_aux_pkt_wr 出力 1
rxcore_aux_data 出力 72
rxcore_aux_sop 出力 1
rxcore_aux_eop 出力 1
rxcore_aux_valid 出力 1
rxcore_aux_error 出力 1
rxcore_gcp 出力 6 HDMI RX コア側波帯信号
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
rxcore_info_avi 出力 123
rxcore_info_vsi 出力 61
rxcore_locked 出力 1 HDMI RX コア ビデオ ポート
注: N = クロックあたりのピクセル数
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
rxcore_vid_data 出力 N*48
rxcore_vid_vsync 出力 N
rxcore_vid_hsync 出力 N
rxcore_vid_de 出力 N
rxcore_vid_valid 出力 1
rxcore_vid_lock 出力 1
rxcore_mode 出力 1 HDMI RX コアの制御およびステータス ポート。
注: N = クロックあたりのシンボル
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
rxcore_ctrl 出力 N*6
rxcore_color_ Depth_sync 出力 2
hdmi_5v_detect 入力 1 HDMI RX 5V 検出およびホットプラグ検出。 を参照してください。 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
hdmi_rx_hpd 出力 1
rx_hpd_trigger 入力 1
I2C シグナル
hdmi_rx_i2c_sda 入力 1 HDMI RX DDC および SCDC インターフェイス。
hdmi_rx_i2c_scl 入力 1
RX EDID RAM 信号
edid_ram_access 入力 1 HDMI RX EDID RAM アクセス インターフェイス。
edid_ram_address 入力 8 EDID RAM から書き込みまたは読み取りを行う場合は、edid_ram_access をアサートします。それ以外の場合、この信号は Low に維持する必要があります。
edid_ram_access をアサートすると、hotplug 信号がアサート解除され、EDID RAM への書き込みまたは読み取りが可能になります。 EDID RAM アクセスが完了したら、edid_ram_assess をディアサートし、hotplug 信号がアサートする必要があります。 ホットプラグ信号のトグルにより、ソースは新しい EDID を読み取ります。
edid_ram_write 入力 1
edid_ram_read 入力 1
edid_ram_readdata 出力 8
edid_ram_writedata 入力 8
edid_ram_waitrequest 出力 1

表 18.HDMI TX トップレベル信号

信号 方向 説明
クロックおよびリセット信号
mgmt_clk 入力 1 システムクロック入力 (100 MHz)。
リセット 入力 1 システムリセット入力。
tx_tmds_clk 入力 1 HDMI RX TMDS クロック。
txfpll_refclk1 入力 1 TX PLL 基準クロック 1 のクロック入力。クロック周波数は 100 MHz です。
tx_vid_clk 出力 1 ビデオクロック出力。
tx_frl_clk 出力 1 FRL クロック出力。
sys_init 入力 1 電源投入時にシステムをリセットするためのシステム初期化。
tx_init_done 入力 1 TX リコンフィギュレーション管理ブロックとトランシーバー リコンフィギュレーション インターフェイスをリセットするための TX 初期化。
TX トランシーバーと IOPLL 信号
txpll_frl_locked 出力 1 リンク速度クロックと FRL クロック IOPLL がロックされていることを示します。
txfpll_locked 出力 1 TX PLL がロックされていることを示します。
txphy_serial_data 出力 4 TX ネイティブ PHY からの HDMI シリアル データ。
txphy_ready 出力 1 TX ネイティブ PHY の準備ができていることを示します。
txphy_cal_busy 出力 1 TX ネイティブ PHY キャリブレーション ビジー信号。
txphy_cal_busy_raw 出力 4 トランシーバー アービターへのキャリブレーション ビジー信号。
txphy_cal_busy_gated 入力 4 トランシーバー アービターから TX ネイティブ PHY へのキャリブレーション ビジー信号。
txphy_rcfg_busy 出力 1 TX PHY の再構成が進行中であることを示します。
txphy_rcfg_slave_write 入力 4 トランシーバーの再構成 TX ネイティブ PHY からトランシーバー アービターへの Avalon メモリ マップド インターフェイス。
txphy_rcfg_slave_read 入力 4
txphy_rcfg_slave_address 入力 40
txphy_rcfg_slave_writedata 入力 128
txphy_rcfg_slave_readdata 出力 128
txphy_rcfg_slave_waitrequest 出力 4
TX 再構成管理
tx_tmds_freq 入力 24 HDMI TX TMDS クロック周波数値 (10 ミリ秒)。
tx_os 出力 2 オーバーampリングファクター:
• 0: 1x オーバーampリング
•1: 2×オーバーampリング
•2: 8x オーバーampリング
txphy_rcfg_master_write 出力 1 TX 再構成管理 Avalon メモリー・マップ・インターフェースからトランシーバー・アービターへ。
txphy_rcfg_master_read 出力 1
txphy_rcfg_master_address 出力 12
txphy_rcfg_master_writedata 出力 32
txphy_rcfg_master_readdata 入力 32
txphy_rcfg_master_waitrequest 入力 1
tx_reconfig_done 出力 1 TX 再構成プロセスが完了したことを示します。
HDMI TX コア信号
tx_vid_clk_locked 入力 1 vid_clk が安定していることを示します。
txcore_ctrl 入力 N*6 HDMI TX コア制御インターフェイス。
注: N = クロックあたりのピクセル数
参照 ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
txcore_mode 入力 1
txcore_audio_de 入力 1 HDMI TX コア オーディオ インターフェイス。
参照 ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
txcore_audio_mute 入力 1
txcore_audio_data 入力 256
txcore_audio_info_ai 入力 49
txcore_audio_N 入力 20
txcore_audio_CTS 入力 20
txcore_audio_metadata 入力 166
txcore_audio_format 入力 5
txcore_aux_ready 出力 1 HDMI TX コアの補助インターフェイス。
参照 ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
txcore_aux_data 入力 72
txcore_aux_sop 入力 1
txcore_aux_eop 入力 1
txcore_aux_valid 入力 1
txcore_gcp 入力 6 HDMI TX コア側波帯信号。
参照 ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
txcore_info_avi 入力 123
txcore_info_vsi 入力 62
txcore_i2c_master_write 入力 1 TX I2C マスター TX コア内の I2C マスターへの Avalon メモリー・マップド・インターフェース。
注記: これらの信号は、 I2C を含める パラメータ。
txcore_i2c_master_read 入力 1
txcore_i2c_master_address 入力 4
txcore_i2c_master_writedata 入力 32
txcore_i2c_master_readdata 出力 32
txcore_vid_data 入力 N*48 HDMI TX コア ビデオ ポート。
注: N = clockRef あたりのピクセル数
ええと ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
txcore_vid_vsync 入力 N
txcore_vid_hsync 入力 N
txcore_vid_de 入力 N
txcore_vid_ready 出力 1
txcore_vid_overflow 出力 1
txcore_vid_valid 入力 1
txcore_frl_rate 入力 4 SCDC レジスタ インターフェイス。
txcore_frl_pattern 入力 16
txcore_frl_start 入力 1
txcore_scrambler_enable 入力 1
txcore_tbcr 入力 1
I2C シグナル
nios_tx_i2c_sda_in 出力 1 Nios II プロセッサーから出力バッファーへの SCDC および DDC 用の TX I2C マスター インターフェイス。
注記: 電源を入れると I2C を含める これらの信号は TX コア内に配置され、このレベルでは表示されません。
nios_tx_i2c_scl_in 出力 1
nios_tx_i2c_sda_oe 入力 1
nios_tx_i2c_scl_oe 入力 1
nios_ti_i2c_sda_in 出力 1 Nios II プロセッサから出力バッファへの TX I2C マスター インターフェイスで、Bitec HDMI 2.1 FMC ドーター カードの TI リドライバを制御します。
nios_ti_i2c_scl_in 出力 1
nios_ti_i2c_sda_oe 入力 1
nios_ti_i2c_scl_oe 入力 1
hdmi_tx_i2c_sda 入力 1 出力バッファから HDMI TX コネクタへの SCDC および DDC インターフェイス用の TX I2C インターフェイス。
hdmi_tx_i2c_scl 入力 1
hdmi_tx_ti_i2c_sda 入力 1 出力バッファから Bitec HDMI 2 FMC ドーター カードの TI リドライバへの TX I2.1C インターフェイス。
hdmi_tx_ti_i2c_scl 入力 1
tx_hpd_req 出力 1 HDMI TX ホットプラグ検出インターフェイス。
hdmi_tx_hpd_n 入力 1

表 19. トランシーバー アービター信号

信号 方向

説明

クリック 入力 1 リコンフィギュレーション クロック。 このクロックは、再構成管理ブロックと同じクロックを共有する必要があります。
リセット 入力 1 信号をリセットします。 このリセットは、再構成管理ブロックと同じリセットを共有する必要があります。
rx_rcfg_ja 入力 1 RX リコンフィギュレーション イネーブル信号。
tx_rcfg_ja 入力 1 TX リコンフィギュレーション イネーブル信号。
rx_rcfg_ch 入力 2 RX コアで再構成するチャネルを示します。 この信号は常にアサートされたままにする必要があります。
tx_rcfg_ch 入力 2 TX コアで再構成するチャネルを示します。 この信号は常にアサートされたままにする必要があります。
rx_reconfig_mgmt_write 入力 1 RX 再構成管理から Avalon メモリー・マップト・インターフェースを再構成します。
rx_reconfig_mgmt_read 入力 1
rx_reconfig_mgmt_address 入力 10
rx_reconfig_mgmt_writedata 入力 32
rx_reconfig_mgmt_readdata 出力 32
rx_reconfig_mgmt_waitrequest 出力 1
tx_reconfig_mgmt_write 入力 1 TX 再構成管理からの Avalon メモリー・マップ・インターフェースの再構成。
tx_reconfig_mgmt_read 入力 1
tx_reconfig_mgmt_address 入力 10
tx_reconfig_mgmt_writedata 入力 32
tx_reconfig_mgmt_readdata 出力 32
tx_reconfig_mgmt_waitrequest 出力 1
再構成_書き込み 出力 1 トランシーバーへの Avalon メモリー・マップ・インターフェースを再構成します。
再構成_読み取り 出力 1
再構成アドレス 出力 10
reconfig_writedata 出力 32
rx_reconfig_readdata 入力 32
rx_reconfig_waitrequest 入力 1
tx_reconfig_readdata 入力 1
tx_reconfig_waitrequest 入力 1
rx_cal_busy 入力 1 RX トランシーバーからのキャリブレーション ステータス信号。
tx_cal_busy 入力 1 TX トランシーバーからのキャリブレーション ステータス信号。
rx_reconfig_cal_busy 出力 1 RX トランシーバー PHY リセット制御へのキャリブレーション ステータス信号。
tx_reconfig_cal_busy 出力 1 TX トランシーバー PHY リセット制御からのキャリブレーション ステータス信号。

表 20. RX-TX リンク信号

信号 方向

説明

vid_clk 入力 1 HDMIビデオクロック。
rx_vid_lock 入力 3 HDMI RX ビデオ ロック ステータスを示します。
rx_vid_valid 入力 1 HDMI RX ビデオ インターフェイス。
rx_vid_de 入力 N
rx_vid_hsync 入力 N
rx_vid_vsync 入力 N
rx_vid_data 入力 N*48
rx_aux_eop 入力 1 HDMI RX 補助インターフェイス。
rx_aux_sop 入力 1
rx_aux_valid 入力 1
rx_aux_data 入力 72
tx_vid_de 出力 N HDMI TX ビデオ インターフェイス。
注: N = クロックあたりのピクセル数
tx_vid_hsync 出力 N
tx_vid_vsync 出力 N
tx_vid_data 出力 N * 48
tx_vid_valid 出力 1
tx_vid_ready 入力 1
tx_aux_eop 出力 1 HDMI TX 補助インターフェイス。
tx_aux_sop 出力 1
tx_aux_valid 出力 1
tx_aux_data 出力 72
tx_aux_ready 入力 1

表 21. Platform Designer システム信号

信号 方向

説明

cpu_clk_in_clk_clk 入力 1 CPU クロック。
cpu_rst_in_reset_reset 入力 1 CPUリセット。
edid_ram_slave_translator_avalon_anti_slave_0_address 出力 8 EDID RAM アクセス インターフェイス。
edid_ram_slave_translator_avalon_anti_slave_0_write 出力 1
edid_ram_slave_translator_avalon_anti_slave_0_read 出力 1
edid_ram_slave_translator_avalon_anti_slave_0_readdata 入力 8
edid_ram_slave_translator_avalon_anti_slave_0_writedata 出力 8
edid_ram_slave_translator_avalon_anti_slave_0_waitrequest 入力 1
hdmi_i2c_master_i2c_serial_sda_in 入力 1 Nios II プロセッサから DDC および SCDC 制御用の出力バッファへの I2C マスター インターフェイス。
hdmi_i2c_master_i2c_serial_scl_in 入力 1
hdmi_i2c_master_i2c_serial_sda_oe 出力 1
hdmi_i2c_master_i2c_serial_scl_oe 出力 1
redriver_i2c_master_i2c_serial_sda_in 入力 1 Nios II プロセッサから TI リドライバ設定構成用の出力バッファへの I2C マスタ インターフェイス。
redriver_i2c_master_i2c_serial_scl_in 入力 1
redriver_i2c_master_i2c_serial_sda_oe 出力 1
redriver_i2c_master_i2c_serial_scl_oe 出力 1
pio_in0_external_connection_export 入力 32 パラレル入出力インターフェース。
• ビット 0: user_dipsw 信号に接続され、EDID パススルー モードを制御します。
•ビット 1: TX HPD 要求
•ビット 2: TX トランシーバーの準備完了
•ビット 3: TX の再構成が完了しました。
•ビット 4 ~ 7: 予約済み
• ビット 8 ~ 11: RX FRL レート
• ビット 12: RX TMDS ビット クロック比
• ビット 13 ~ 16: RX FRL がロックされている
• ビット 17 ~ 20: RX FFE レベル
• ビット 21: RX アライメント ロック
信号 方向 説明
•ビット 22: RX ビデオ ロック
• ビット 23: 外部シンクから SCDC レジスタを読み取るためのユーザー プッシュ ボタン 2
•ビット 24 ~ 31: 予約済み
pio_out0_external_connection_export 出力 32 パラレル入出力インターフェース。
•ビット 0: TX HPD 確認応答
•ビット 1: TX の初期化が完了しました。
• ビット 2 ~ 7: 予約済み
• ビット 8 ~ 11: TX FRL レート
•ビット 12 ~ 27: TX FRL リンク トレーニング パターン
• ビット 28: TX FRL 開始
• ビット 29 ~ 31: 予約済み
pio_out1_external_connection_export 出力 32 パラレル入出力インターフェース。
• ビット 0: RX EDID RAM アクセス
• ビット 1: RX FLT レディ
• ビット 2 ~ 7: 予約済み
• ビット 8 ~ 15: RX FRL ソース テスト コンフィギュレーション
•ビット 16 ~ 31: 予約済み

2.1. 1. RTL パラメーターの設計
HDMI TX および RX Top RTL パラメーターを使用して、デザイン ex をカスタマイズします。ampル。
設計パラメータのほとんどは、 設計例ample HDMI Intel FPGA IP パラメーター・エディターのタブ。 あなたはまだデザインexを変更することができますampRTL パラメーターを使用してパラメーター エディターで行ったファイル設定。
表 22. HDMI RX 上位パラメーター

パラメータ

価値

説明

サポート_ディープ_カラー • 0: 濃い色なし
• : 濃い色
コアがディープ カラー フォーマットをエンコードできるかどうかを決定します。
サポート_補助 • 0: AUX なし
•1:AUX
補助チャネル エンコーディングを含めるかどうかを決定します。
SYMBOLS_PER_CLOCK 8 Arria 8 デバイスでは、10 クロックあたり XNUMX つのシンボルをサポートします。
サポート_オーディオ • 0: 音声なし
• 1: オーディオ
コアがオーディオをエンコードできるかどうかを決定します。
EDID_RAM_ADDR_WIDTH 8(デフォルト値) EDID RAM サイズの基数 2 をログに記録します。
BITEC_DAUGHTER_CARD_REV •0: Bitec HDMI ドーター カードをターゲットにしない
•4: Bitec HDMI ドーター カード リビジョン 4 をサポート
•6: Bitec HDMI ドーター カード リビジョン 6 をターゲットにしています。
• 11: Bitec HDMI ドーター カード リビジョン 11 をターゲットにします (デフォルト)。
使用する Bitec HDMI ドーター カードのリビジョンを指定します。 リビジョンを変更すると、デザインはトランシーバー チャネルをスワップし、Bitec HDMI ドーター カードの要件に従って極性を反転する場合があります。 BITEC_DAUGHTER_CARD_REV パラメーターを 0 に設定すると、デザインはトランシーバー チャネルと極性を変更しません。
極性_反転 • 0: 極性を反転
• 1: 極性を反転しない
入力データの各ビットの値を反転するには、このパラメータを 1 に設定します。 このパラメーターを 1 に設定すると、4'b1111 が RX トランシーバーの rx_polinv ポートに割り当てられます。

表 23. HDMI TX 上位パラメーター

パラメータ

価値

説明

USE_FPLL 1 インテル Arria 10 デバイスに対してのみ、fPLL を TX PLL としてサポートします。 このパラメータは常に 1 に設定してください。
サポート_ディープ_カラー •0: 濃色なし

• 1: 濃い色

コアがディープ カラー フォーマットをエンコードできるかどうかを決定します。
サポート_補助 • 0: AUX なし
• 1: 補助
補助チャネル エンコーディングを含めるかどうかを決定します。
SYMBOLS_PER_CLOCK 8 Arria 8 デバイスでは、10 クロックあたり XNUMX つのシンボルをサポートします。
サポート_オーディオ • 0: 音声なし
• 1: オーディオ
コアがオーディオをエンコードできるかどうかを決定します。
BITEC_DAUGHTER_CARD_REV • 0: Bitec HDMI ドーター カードをターゲットにしない
• 4: Bitec HDMI ドーター カード リビジョン 4 をサポート
• 6: Bitec HDMI ドーター カード リビジョン 6 をターゲットにしています。
• 11: Bitec HDMI ドーター カード リビジョン 11 をターゲットにします (デフォルト)。
使用する Bitec HDMI ドーター カードのリビジョンを指定します。 リビジョンを変更すると、デザインはトランシーバー チャネルをスワップし、Bitec HDMI ドーター カードの要件に従って極性を反転する場合があります。 BITEC_DAUGHTER_CARD_REV パラメーターを 0 に設定すると、デザインはトランシーバー チャネルと極性を変更しません。
極性_反転 • 0: 極性を反転
• 1: 極性を反転しない
入力データの各ビットの値を反転するには、このパラメータを 1 に設定します。 このパラメーターを 1 に設定すると、4'b1111 が TX トランシーバーの tx_polinv ポートに割り当てられます。

2.12.ハードウェアのセットアップ
HDMI FRL対応の設計例ampファイルは HDMI 2.1 に対応しており、標準 HDMI ビデオ ストリームのループスルー デモンストレーションを実行します。
ハードウェア テストを実行するには、HDMI インターフェイスを備えたグラフィックス カードなどの HDMI 対応デバイスを HDMI シンク入力に接続します。 このデザインは、HDMI 2.1 または HDMI 2.0/1.4b のソースとシンクの両方をサポートします。

  1. HDMI シンクは、ポートを標準のビデオ ストリームにデコードし、それをクロック リカバリ コアに送信します。
  2. HDMI RX コアは、DCFIFO を介して HDMI TX コアに並列にループバックされるビデオ、補助、およびオーディオ データをデコードします。
  3. FMC ドーター カードの HDMI ソース ポートは、画像をモニターに送信します。

注記:
別の Intel FPGA 開発ボードを使用する場合は、デバイスの割り当てとピンの割り当てを変更する必要があります。 トランシーバーのアナログ設定は、インテル Arria 10 FPGA 開発キットおよび Bitec HDMI 2.1 ドーター カードに対してテストされています。 自分のボードの設定を変更できます。
表 24. オンボード プッシュ ボタンとユーザー LED の機能

押しボタン/LED

関数

cpu_resetn XNUMX 回押すと、システム リセットが実行されます。
user_dipsw パススルー モードを切り替えるユーザー定義の DIP スイッチ。
•OFF (デフォルトの位置) = パススルー
FPGA の HDMI RX は、外部シンクから EDID を取得し、接続先の外部ソースに提示します。
• ON = Nios II ターミナルから RX 最大 FRL レートを制御できます。 このコマンドは、最大 FRL レート値を操作して RX EDID を変更します。
異なる FRL レートの設定に関する詳細は、33 ページの「異なる FRL レートでのデザインの実行」を参照してください。
ユーザー_pb[0] XNUMX 回押すと、HPD 信号が標準の HDMI ソースに切り替わります。
ユーザー_pb[1] 予約済み。
ユーザー_pb[2] 一度押すと、Bitec HDMI 2.1 FMC ドーター カードの TX に接続されたシンクから SCDC レジスタが読み取られます。
注記: 読み取りを有効にするには、ソフトウェアで DEBUG_MODE を 1 に設定する必要があります。
ユーザー LED[0] RX TMDS クロック PLL ロック ステータス。
•0 = ロック解除
• 1 = ロックされている
ユーザー LED[1] RX トランシーバーのレディ状態。
•0 = 準備ができていません
• 1 = 準備完了
ユーザー LED[2] RX リンク速度クロック PLL、RX ビデオおよび FRL クロック PLL ロック ステータス。
• 0 = RX クロック PLL のいずれか XNUMX つがロック解除されている
• 1 = 両方の RX クロック PLL がロックされている
ユーザー LED[3] RX HDMI コア アライメントおよびデスキュー ロック ステータス。
• 0 = 少なくとも 1 つのチャネルがロック解除されている
• 1 = すべてのチャネルがロックされている
ユーザー LED[4] RX HDMI ビデオ ロック ステータス。
• 0 = ロック解除
• 1 = ロックされている
ユーザー LED[5] TX リンク速度クロック PLL、および TX ビデオおよび FRL クロック PLL ロック ステータス。
•0 = TX クロック PLL のいずれかがアンロックされている
• 1 = 両方の TX クロック PLL がロックされている
USER_LED[6] USER_LED[7] TX トランシーバーの準備完了状態。
• 0 = 準備ができていません
• 1 = 準備完了
TX リンク トレーニング ステータス。
• 0 = 失敗
• 1 = 合格

2.13. シミュレーション テストベンチ
シミュレーション テストベンチは、RX コアへの HDMI TX シリアル ループバックをシミュレートします。
注記:
このシミュレーション テストベンチは、Include I2C パラメーターが有効になっているデザインではサポートされていません。
図19. HDMI Intel FPGA IP シミュレーション テストベンチのブロック図Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 2表 25. テストベンチのコンポーネント

成分

説明

ビデオTPG ビデオ テスト パターン ジェネレータ (TPG) はビデオ スティミュラスを提供します。
オーディオSampルゲン オーディオampファイルジェネレーターはオーディオを提供しますampル刺激。 ジェネレータは、オーディオ チャネルを介して送信されるインクリメント テスト データ パターンを生成します。
補助Sampルゲン aux sample generator は補助 s を提供しますampル刺激。 ジェネレータは、トランスミッタから送信される固定データを生成します。
CRCチェック このチェッカーは、TX トランシーバーのリカバリ クロック周波数が目的のデータ レートと一致するかどうかを検証します。
音声データチェック オーディオ データ チェックでは、インクリメント テスト データ パターンが受信され、正しくデコードされているかどうかを比較します。
補助データチェック AUX データ チェックでは、予期される AUX データが受信側で正しく受信およびデコードされているかどうかを比較します。

HDMI シミュレーション テストベンチは、次の検証テストを実行します。

HDMI機能

検証

ビデオデータ • テストベンチは、入力および出力ビデオの CRC チェックを実装します。
• 送信されたデータの CRC 値を、受信したビデオ データで計算された CRC と照合します。
• テストベンチは、レシーバから 4 つの安定した V-SYNC 信号を検出した後、チェックを実行します。
補助データ • AUXampファイルジェネレーターは、送信機から送信される固定データを生成します。
• 受信側では、ジェネレータは、予想される補助データが受信され、正しくデコードされているかどうかを比較します。
オーディオデータ •オーディオのampファイル ジェネレーターは、オーディオ チャネルを介して送信されるインクリメント テスト データ パターンを生成します。
• 受信側では、オーディオ データ チェッカーがインクリメント テスト データ パターンが受信され、正しくデコードされているかどうかをチェックして比較します。

シミュレーションが成功すると、次のメッセージが表示されて終了します。
# SYMBOLS_PER_CLOCK = 2
#VIC = 4
# FRL_RATE = 0
# BPP = 0
# オーディオ周波数 (kHz) = 48
# オーディオ_チャンネル = 8
# シミュレーションパス
表 26. HDMI Intel FPGA IP 設計例ampサポートされているシミュレーター

シミュレーター

ベリログHDL

VHDL

ModelSim – インテル FPGA エディション/ ModelSim – インテル FPGA スターター エディション はい はい
VCS/VCSMX はい はい
リビエラPRO はい はい
エクセリウムパラレル はい いいえ

2.14. 設計上の制限
HDMI 2.1 デザインをインスタンス化する際には、いくつかの制限を考慮する必要があります。ampル。

  • 非パススルー モードの場合、TX は TMDS モードで動作できません。 TMDS モードでテストするには、user_dipsw スイッチをパススルー モードに切り替えます。
  • Nios II プロセッサは、他のプロセスから中断されることなく、TX リンク トレーニングを完了するまで提供する必要があります。

2.15. デバッグ機能
このデザインexample には、支援するために特定のデバッグ機能が用意されています。
2.15.1. ソフトウェア デバッグ メッセージ
ソフトウェアでデバッグ メッセージをオンにして、ランタイム アシスタンスを提供できます。
ソフトウェアでデバッグ メッセージをオンにするには、次の手順に従います。

  1. global.h スクリプトで DEBUG_MODE を 1 に変更します。
  2. Nios II コマンド シェルで script/build_sw.sh を実行します。
  3. 生成されたソフトウェア/tx_control/tx_control.elf を再プログラムします。 file Nios II コマンド シェルで次のコマンドを実行します。
    nios2-download -r -g software/tx_control/tx_control.elf
  4. Nios II コマンド シェルで Nios II ターミナル コマンドを実行します。
    nios2 ターミナル

デバッグ メッセージをオンにすると、次の情報が出力されます。

  • TX と RX の両方の TI リドライバ設定は、ELF のプログラミング後に一度読み取られて表示されます。 file.
  • RX EDID 構成とホットプラグ プロセスのステータス メッセージ
  • TX に接続されたシンクの EDID から抽出された FRL サポート情報の有無にかかわらず解像度。 この情報は、TX ホットプラグごとに表示されます。
  • TX リンク トレーニング中の TX リンク トレーニング プロセスのステータス メッセージ。

2.15.2. TX に接続されたシンクからの SCDC 情報
この機能を使用して、SCDC 情報を取得できます。

  1. Nios II コマンド シェルで Nios II ターミナル コマンドを実行します: nios2-terminal
  2. インテル Arria 2 FPGA 開発キットで user_pb[10] を押します。

ソフトウェアは、Nios II ターミナルの TX に接続されたシンクの SCDC 情報を読み取り、表示します。
2.15.3. クロック周波数測定
この機能を使用して、さまざまなクロックの周波数を確認します。

  1. hdmi_rx_top と hdmi_tx_top で files、「//`define DEBUG_EN 1」のコメントを外します。
  2. 各 mr_rate_detect インスタンスからの refclock_measure 信号を Signal Tap ロジック アナライザーに追加して、各クロックのクロック周波数 (10 ミリ秒の期間) を取得します。
  3. Signal Tap Logic Analyzer でデザインをコンパイルします。
  4. SOF をプログラムする file Signal Tap Logic Analyzer を実行します。

表 27. クロック

モジュール mr_rate_detect インスタンス

測定するクロック

hdmi_rx_top rx_pll_tmds RX CDR 基準クロック 0
rx_clk0_freq チャネル 0 からの RX トランシーバー クロック出力
rx_vid_clk_freq RXビデオクロック
rx_frl_clk_freq RX FRL クロック
rx_hsync_freq 受信したビデオ フレームの水平同期周波数
hdmi_tx_top tx_clk0_freq チャネル 0 からの TX トランシーバー クロック出力
vid_clk_freq 送信ビデオクロック
frl_clk_freq TX FRL クロック
tx_hsync_freq 送信するビデオ フレームの水平同期周波数

2.16. デザインのアップグレード
表 28. HDMI 設計例amp以前の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンとの互換性

設計例ampルバリアント インテル Quartus Prime プロ・エディション 20.3 へのアップグレード機能
HDMI 2.1 設計例ample (FRL = 1 をサポート) いいえ

互換性のない設計の場合amp次の手順を実行する必要があります。

  1. 新しいデザインを生成する examp既存のデザインと同じコンフィギュレーションを使用して、現在の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンのファイル。
  2. 全体のデザインを比較ampex というデザインの le ディレクトリamp以前の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンを使用して生成されたファイル。 見つかった変更を移植します。

HDMI 2.0 設計例ample (FRL = 0 をサポート)

HDMI Intel FPGA IP 設計例ampファイルは、XNUMX つの RX チャネルと XNUMX つの TX チャネルで構成される XNUMX つの HDMI インスタンス パラレル ループバックを示しています。
表 29. HDMI Intel FPGA IP 設計例ampインテル Arria 10 デバイス用のファイル

設計例ample データレート チャネルモード ループバック タイプ
Arria 10 HDMI RX-TX 再送信 < 6,000Mbps シンプレックス FIFO バッファと並列

特徴

  • このデザインは、FIFO バッファーをインスタンス化して、HDMI シンクとソースの間で直接 HDMI ビデオ ストリーム パススルーを実行します。
  • この設計では、早期のデバッグに LED ステータスを使用します。tage.
  • このデザインには、RX および TX のみのオプションが付属しています。
  • このデザインは、RX-TX リンク モジュールでの Dynamic Range and Mastering (HDR) InfoFrame の挿入とフィルタリングを示しています。
  • このデザインは、TX ホットプラグ イベントによってトリガーされたときに、外部 HDMI シンクから外部 HDMI ソースへの EDID パススルーの管理を示します。
  • このデザインでは、DIP スイッチとプッシュボタンを介してランタイム制御を行い、HDMI TX コア信号を管理できます。
    — DVI または HDMI でエンコードされたビデオ フレームを選択するモード信号
    — info_avi[47]、info_vsi[61]、および audio_info_ai[48] 信号は、サイドバンドまたは補助データ ポートを介した補助パケット送信を選択します。

RX インスタンスは外部ビデオ ジェネレーターからビデオ ソースを受信し、データは TX インスタンスに送信される前にループバック FIFO を通過します。
機能を検証するには、外部ビデオ アナライザー、モニター、または HDMI 接続を備えたテレビを TX コアに接続する必要があります。
3.1. HDMI 2.0 RX-TX 再送信設計のブロック図
HDMI 2.0 RX-TX 再送信設計 exampファイルは、HDMI Intel FPGA IP のシンプレックス チャネル モードでの並列ループバックを示します。
図 20. HDMI RX-TX 再送信のブロック図 (インテル Quartus Prime プロ・エディション)Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 3図 21. HDMI RX-TX 再送信のブロック図 (インテル Quartus Prime スタンダード・エディション)Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 4関連情報
PLL カスケードまたは Arria 10 PLL リファレンス クロックの非専用クロック パスのジッター デザイン クロックに追加のエラーが発生する場合は、回避策としてこのソリューションを参照してください。
ジッター。
3.2。 ハードウェアとソフトウェアの要件
インテルは、次のハードウェアとソフトウェアを使用して設計をテストします。ampル。
ハードウェア

  • インテル Arria 10 GX FPGA 開発キット
  • HDMI ソース (グラフィックス プロセッサ ユニット (GPU))
  • HDMI シンク (モニター)
  • Bitec HDMI FMC 2.0 ドーター カード (リビジョン 11)
  • HDMIケーブル

注記:
Bitec HDMI ドーター カードのリビジョンを選択できます。 トップレベルで、ローカル パラメータ BITEC_DAUGHTER_CARD_REV を 4、6、または 11 に設定します。 file (a10_hdmi2_demo.v)。 リビジョンを変更すると、Bitec HDMI ドーター カードの要件に従って、トランシーバー チャネルがスワップされ、極性が反転する場合があります。 BITEC_DAUGHTER_CARD_REV パラメーターを 0 に設定すると、デザインはトランシーバー チャネルと極性を変更しません。 HDMI 2.1 デザイン ex の場合ampファイル、Design Ex の下ampル タブで、HDMI ドーター カード リビジョンをリビジョン 9、リビジョン 4、またはドーター カードなしのいずれかに設定します。 デフォルト値はリビジョン 9 です。
ソフトウェア

  • インテル Quartus Prime バージョン 18.1 以降 (ハードウェアのテスト用)
  • ModelSim – Intel FPGA Edition、ModelSim – Intel FPGA Starter Edition、RivieraPRO、VCS (Verilog HDL のみ)/VCS MX、または Xcelium Parallel シミュレーター

3.3。 ディレクトリ構造
ディレクトリには、生成された fileHDMI Intel FPGA IP デザイン ex の sampル。
図 22. Design Ex のディレクトリ構造ampleIntel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 5表 30. 生成された RTL Files

フォルダ Files
グー • /gxb_rx.qsys (インテル Quartus Prime スタンダード・エディション)
• /gxb_rx.ip (インテル Quartus Prime プロ・エディション)
• /gxb_rx_reset.qsys (インテル Quartus Prime スタンダード・エディション)
• /gxb_rx_reset.ip (インテル Quartus Prime プロ・エディション)
• /gxb_tx.qsys (インテル Quartus Prime スタンダード・エディション)
• /gxb_tx.ip (インテル Quartus Prime プロ・エディション)
• /gxb_tx_fpll.qsys (インテル Quartus Prime スタンダード・エディション)
• /gxb_tx_fpll.ip (インテル Quartus Prime プロ・エディション)
• /gxb_tx_reset.qsys (インテル Quartus Prime スタンダード・エディション)
• /gxb_tx_reset.ip (インテル Quartus Prime プロ・エディション)
hdmi_rx •/hdmi_rx.qsys (インテル Quartus Prime スタンダード・エディション)
•/hdmi_rx.ip (インテル Quartus Prime プロ・エディション)
/hdmi_rx_top.v
/mr_clock_sync.v (インテル Quartus Prime スタンダード・エディション)
/mr_hdmi_rx_core_top.v (インテル Quartus Prime スタンダード・エディション)
/mr_rx_oversample.v (インテル Quartus Prime スタンダード・エディション)
/symbol_aligner.v
Panasonic.hex (インテル Quartus Prime プロ・エディション)
hdmi_tx • /hdmi_tx.qsys (インテル Quartus Prime スタンダード・エディション)
•/hdmi_tx.ip (インテル Quartus Prime プロ・エディション)
/hdmi_tx_top.v
/mr_ce.v (インテル Quartus Prime スタンダード・エディション)
/mr_hdmi_tx_core_top.v (インテル Quartus Prime スタンダード・エディション)
/mr_tx_oversample.v (インテル Quartus Prime スタンダード・エディション)
i2c_master

(インテル Quartus Prime スタンダード・エディション)

/i2c_master_bit_ctrl.v
/i2c_master_byte_ctrl.v
/i2c_master_defines.v
/i2c_master_top.v
/oc_i2c_master.v
/oc_i2c_master_hw.tcl
/タイムスケール.v
i2c_スレーブ /edid_ram.qsys (インテル Quartus Prime スタンダード・エディション)
/Panasonic.hex (インテル Quartus Prime スタンダード・エディション)
/i2c_avl_mst_intf_gen.v
/i2c_clk_cnt.v
/i2c_condt_det.v
/i2c_databuffer.v
/i2c_rxshifter.v
/i2c_slvfsm.v
/i2c_spksupp.v
/i2c_txout.v
/i2c_txshifter.v
/i2cslave_to_avlmm_bridge.v
プル • /pll_hdmi.qsys (インテル Quartus Prime スタンダード・エディション)
• /pll_hdmi.ip (インテル Quartus Prime プロ・エディション)
• /pll_hdmi_reconfig.qsys (インテル Quartus Prime スタンダード・エディション)
• /pll_hdmi_reconfig.ip (インテル Quartus Prime プロ・エディション)
quartus.ini
一般 • /clock_control.qsys (インテル Quartus Prime スタンダード・エディション)
• /clock_control.ip (インテル Quartus Prime プロ・エディション)
• /fifo.qsys (インテル Quartus Prime スタンダード・エディション)
• /fifo.ip (インテル Quartus Prime プロ・エディション)
• /output_buf_i2c.qsys (インテル Quartus Prime スタンダード・エディション)
•/output_buf_i2c.ip (インテル Quartus Prime プロ・エディション)
/reset_controller.qsys (インテル Quartus Prime スタンダード・エディション)
/クロッククロッサー.v
dcfifo_inst.v
debouncer.sv (インテル Quartus Prime プロ・エディション)
高解像度 /altera_hdmi_aux_hdr.v
/altera_hdmi_aux_snk.v
/altera_hdmi_aux_src.v
/altera_hdmi_hdr_infoframe.v
/avalon_st_mutiplexer.qsys
再構成_管理 /mr_compare_pll.v
/mr_compare_rx.v
/mr_rate_detect.v
/mr_reconfig_master_pll.v
/mr_reconfig_master_rx.v
/mr_reconfig_mgmt.v
/mr_rom_pll_dprioaddr.v
/mr_rom_pll_valuemask_8bpc.v
/mr_rom_pll_valuemask_10bpc.v
/mr_rom_pll_valuemask_12bpc.v
/mr_rom_pll_valuemask_16bpc.v
/mr_rom_rx_dprioaddr_bitmask.v
/mr_rom_rx_valuemask.v
/mr_state_machine.v
sdc /a10_hdmi2.sdc
/mr_reconfig_mgmt.sdc
/jtag.sdc
/rxtx_link.sdc
/mr_clock_sync.sdc (インテル Quartus Prime スタンダード・エディション)

表 31. 生成されたシミュレーション Files
詳細については、シミュレーション テストベンチのセクションを参照してください。

フォルダ Files
アルデック /aldec.do
/rivierapro_setup.tcl
リズム /cds.lib
/hdl.var
<cds_libs フォルダー>
メンター /メンター.do
/msim_setup.tcl
概要 /vcs/filelist.f
/vcs/vcs_setup.sh
/vcs/vcs_sim.sh
/vcsmx/vcsmx_setup.sh
/vcsmx/vcsmx_sim.sh
/vcsmx/synopsys_sim_setup
エクセリウム

(インテル Quartus Prime プロ・エディション)

/cds.lib
/hdl.var
/xcelium_setup.sh
/xcelium_sim.sh
一般

(インテル Quartus Prime プロ・エディション)

/modelsim_files.tcl
/リビエラ_files.tcl
/vcs_files.tcl
/vcsmx_files.tcl
/エクセリウム_files.tcl
hdmi_rx • /hdmi_rx.qsys (インテル Quartus Prime スタンダード・エディション)
• /hdmi_rx.ip (インテル Quartus Prime プロ・エディション)
/hdmi_rx.sopcinfo (インテル Quartus Prime スタンダード・エディション)
/Panasonic.hex (インテル Quartus Prime プロ・エディション)
/symbol_aligner.v (インテル Quartus Prime プロ・エディション)
hdmi_tx • /hdmi_tx.qsys (インテル Quartus Prime スタンダード・エディション)
• /hdmi_tx.ip (インテル Quartus Prime プロ・エディション)
/hdmi_tx.sopcinfo (インテル Quartus Prime スタンダード・エディション)

表 32.生成されたソフトウェア Files

フォルダ Files
tx_control_src
注記: tx_control フォルダーには、これらの複製も含まれています。 files.
/intel_fpga_i2c.c (インテル Quartus Prime プロ・エディション)
/intel_fpga_i2c.h (インテル Quartus Prime プロ・エディション)
/i2c.c (インテル Quartus Prime スタンダード・エディション)
/i2c.h (インテル Quartus Prime スタンダード・エディション)
/main.c
/xcvr_gpll_rcfg.c
/xcvr_gpll_rcfg.h
/ti_i2c.c (インテル Quartus Prime スタンダード・エディション)
/ti_i2c.h (インテル Quartus Prime スタンダード・エディション)

3.4. 設計コンポーネント
HDMI Intel FPGA IP 設計例ample にはこれらのコンポーネントが必要です。
表 33. HDMI RX の上部コンポーネント

モジュール

説明

HDMI RX コア IP はトランシーバー ネイティブ PHY からシリアル データを受信し、データ アライメント、チャネル デスキュー、TMDS デコード、補助データ デコード、ビデオ データ デコード、オーディオ データ デコード、デスクランブルを実行します。
I2 I2C は、シンク ディスプレイ データ チャネル (DDC) とステータスおよびデータ チャネル (SCDC) に使用されるインターフェイスです。 HDMI ソースは DDC を使用して、Enhanced Extended Display Identification Data (E-EDID) データ構造を読み取ることにより、シンクの機能と特性を判断します。
• E-EDID の 8 ビット I2C スレーブ アドレスは 0xA0 と 0xA1 です。 LSB はアクセス タイプを示します。読み取りの場合は 1、書き込みの場合は 0 です。 HPD イベントが発生すると、I2C スレーブはオンチップ RAM から読み取ることによって E-EDID データに応答します。
• I2C スレーブ専用コントローラは、HDMI 2.0 操作用の SCDC もサポートします。 SCDC の 8 ビット I2C スレーブ アドレスは 0xA8 と 0xA9 です。 HPD イベントが発生すると、I2C スレーブは HDMI RX コアの SCDC インターフェイスとの間で書き込みまたは読み取りトランザクションを実行します。
注記: HDMI 2b が意図されていない場合、この SCDC 用の I2.0C スレーブ専用コントローラは必要ありません。 をオンにすると、 I2C を含める パラメータを指定すると、このブロックはコア内に含まれ、このレベルでは表示されなくなります。
エディット ラム デザインは、RAM 1 ポート IP コアを使用して EDID 情報を保存します。 標準の 2 線式 (クロックおよびデータ) シリアル バス プロトコル (I861C スレーブ専用コントローラー) は、CEA-XNUMX-D 準拠の E-EDID データ構造を転送します。 この EDID RAM には、E-EDID 情報が格納されます。
注記: 電源を入れると EDID RAMを含む パラメータを指定すると、このブロックはコア内に含まれ、このレベルでは表示されなくなります。
IOPLL IOPLL は、受信 TMDS クロックの RX CDR 基準クロック、リンク速度クロック、およびビデオ クロックを生成します。
• 出力クロック 0 (CDR 基準クロック)
• 出力クロック 1 (リンク速度クロック)
・出力クロック2(ビデオクロック)
注記: デフォルトの IOPLL 設定は、どの HDMI 解像度にも有効ではありません。 IOPLL は、電源投入時に適切な設定に再構成されます。
トランシーバー PHY リセット コントローラー トランシーバー PHY リセット コントローラーは、RX トランシーバーの確実な初期化を保証します。 このコントローラーのリセット入力は RX リコンフィギュレーションによってトリガーされ、ブロック内のリセット シーケンスに従って、対応するアナログおよびデジタル リセット信号をトランシーバー ネイティブ PHY ブロックに生成します。
RX ネイティブ PHY 外部ビデオ ソースからシリアル データを受信するハード トランシーバー ブロック。 データを HDMI RX コアに渡す前に、シリアル データをパラレル データにデシリアライズします。
RX 再構成管理 RX トランシーバーを駆動して 250 Mbps ~ 6,000 Mbps の範囲の任意のリンク レートで動作するように HDMI PLL を使用してレート検出回路を実装する RX リコンフィギュレーション管理。
以下の 23 ページの図 63 を参照してください。
IOPLL 再構成 IOPLL リコンフィギュレーション ブロックは、Intel FPGA の PLL の動的なリアルタイム リコンフィギュレーションを容易にします。 このブロックは、FPGA 全体を再構成することなく、出力クロック周波数と PLL 帯域幅をリアルタイムで更新します。 このブロックは、 Arria 100 デバイスでは 10 MHz で動作します。
IOPLL リコンフィギュレーションの制限により、IOPLL リコンフィギュレーション IP 生成中に Quartus INI permit_nf_pll_reconfig_out_of_lock=on を適用します。
Quartus INI を適用するには、quartus.ini に「permit_nf_pll_reconfig_out_of_lock=on」を含めます。 file そして、 file インテル Quartus Prime プロジェクト・ディレクトリー。 INI を使用して Quartus Prime ソフトウェアで IOPLL リコンフィギュレーション ブロック (pll_hdmi_reconfig) を編集すると、警告メッセージが表示されます。
注記: この Quartus INI がないと、再構成中に IOPLL がロックを失った場合、IOPLL の再構成を完了できません。
ピオ パラレル入出力 (PIO) ブロックは、CPU サブシステムへの、または CPU サブシステムからの制御、ステータス、およびリセット インターフェイスとして機能します。

図 23. マルチレート リコンフィギュレーション シーケンス フロー
この図は、コントローラーが入力データ ストリームと基準クロック周波数を受信するとき、またはトランシーバーがロック解除されているときの、コントローラーのマルチレート リコンフィギュレーション シーケンス フローを示しています。Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 6表 34. HDMI TX 上部コンポーネント

モジュール

説明

HDMI TX コア IP コアは最上位からビデオ データを受け取り、TMDS エンコーディング、補助データ エンコーディング、オーディオ データ エンコーディング、ビデオ データ エンコーディング、およびスクランブルを実行します。
I2Cマスター I2C は、シンク ディスプレイ データ チャネル (DDC) とステータスおよびデータ チャネル (SCDC) に使用されるインターフェイスです。 HDMI ソースは DDC を使用して、Enhanced Extended Display Identification Data (E-EDID) データ構造を読み取ることにより、シンクの機能と特性を判断します。
• DDC として、I2C マスターは外部シンクから EDID を読み取り、HDMI RX トップまたはビデオ処理用に EDID 情報 EDID RAM を設定します。
• SCDC として、I2C マスターは SCDC データ構造を FPGA ソースから HDMI 2.0b 操作用の外部シンクに転送します。 例えばamp出力データ ストリームが 3,400 Mbps を超える場合、Nios II プロセッサは I2C マスターに命令して、シンク SCDC コンフィギュレーション レジスタの TMDS_BIT_CLOCK_RATIO および SCRAMBLER_ENABLE ビットを 1 に更新します。
IOPLL IOPLL は、着信 TMDS クロックからリンク速度クロックとビデオ クロックを供給します。
• 出力クロック 1 (リンク速度クロック)
・出力クロック2(ビデオクロック)
注記: デフォルトの IOPLL 設定は、どの HDMI 解像度にも有効ではありません。 IOPLL は、電源投入時に適切な設定に再構成されます。
トランシーバー PHY リセット コントローラー トランシーバー PHY リセット コントローラーは、TX トランシーバーの確実な初期化を保証します。 このコントローラーのリセット入力は最上位からトリガーされ、ブロック内のリセット シーケンスに従って、対応するアナログおよびデジタル リセット信号を Transceiver Native PHY ブロックに生成します。
このブロックからの tx_ready 出力信号は、HDMI Intel FPGA IP へのリセット信号としても機能し、トランシーバーが稼働中であり、コアからデータを受信する準備ができていることを示します。
トランシーバー ネイティブ PHY HDMI TX コアからパラレル データを受信し、送信からデータをシリアル化するハード トランシーバー ブロック。
TX ネイティブ PHY ブロックでリコンフィギュレーション インターフェイスを有効にして、TX ネイティブ PHY とトランシーバー アービター間の接続を示します。 TX ネイティブ PHY のリコンフィギュレーションは実行されません。
注記: HDMI TX のチャネル間スキュー要件を満たすには、 インテル Arria 10 トランシーバーのネイティブ PHY パラメーター・エディターで TX チャネル・ボンディング・モード・オプションを次のように設定します。 PMAとPCSの接合. で推奨されているように、最大​​スキュー (set_max_skew) 制約要件をトランシーバー リセット コントローラー (tx_digitalreset) からのデジタル リセット信号に追加する必要もあります。 インテル Arria 10 トランシーバー PHY ユーザーガイド。
送信 PLL トランスミッタ PLL ブロックは、シリアル高速クロックを Transceiver Native PHY ブロックに提供します。 この HDMI Intel FPGA IP 設計例の場合ample, fPLL は TX PLL として使用されます。
IOPLL 再構成 IOPLL リコンフィギュレーション ブロックは、Intel FPGA の PLL の動的なリアルタイム リコンフィギュレーションを容易にします。 このブロックは、FPGA 全体を再構成することなく、出力クロック周波数と PLL 帯域幅をリアルタイムで更新します。 このブロックは、 Arria 100 デバイスでは 10 MHz で動作します。
IOPLL リコンフィギュレーションの制限により、IOPLL リコンフィギュレーション IP 生成中に Quartus INI permit_nf_pll_reconfig_out_of_lock=on を適用します。
Quartus INI を適用するには、quartus.ini に「permit_nf_pll_reconfig_out_of_lock=on」を含めます。 file そして、 file インテル Quartus Prime プロジェクト・ディレクトリー。 インテル Quartus Prime ソフトウェアで INI を使用して IOPLL リコンフィギュレーション ブロック (pll_hdmi_reconfig) を編集すると、警告メッセージが表示されます。
注記: この Quartus INI がないと、再構成中に IOPLL がロックを失った場合、IOPLL の再構成を完了できません。
ピオ パラレル入出力 (PIO) ブロックは、CPU サブシステムへの、または CPU サブシステムからの制御、ステータス、およびリセット インターフェイスとして機能します。

表 35. トランシーバーのデータ レートとオーバーamp各 TMDS クロック周波数範囲のリング ファクター

TMDS クロック周波数 (MHz) TMDS ビットクロック比 オーバーampリングファクター トランシーバーのデータレート (Mbps)
85–150 1 適用できない 3400–6000
100–340 0 適用できない 1000–3400
50–100 0 5 2500–5000
35–50 0 3 1050–1500
30–35 0 4 1200–1400
25–30 0 5 1250–1500

表 36. 最上位共通ブロック

モジュール

説明

トランシーバー アービター この汎用機能ブロックは、同じ物理チャネル内の RX または TX トランシーバーのいずれかが再構成を必要とする場合に、トランシーバーが同時に再調整されるのを防ぎます。 同時リキャリブレーションは、同じチャネル内の RX および TX トランシーバーが独立した IP 実装に割り当てられているアプリケーションに影響を与えます。
このトランシーバー アービターは、シンプレックス TX とシンプレックス RX を同じ物理チャネルにマージするために推奨される解像度を拡張したものです。 このトランシーバー・アービターは、トランシーバーのリコンフィギュレーション・インターフェース・ポートがシーケンシャルにしかアクセスできないため、チャネル内のシンプレックス RX および TX トランシーバーをターゲットとする Avalon-MM RX および TX リコンフィギュレーション要求のマージとアービトレーションも支援します。
このデザイン例のトランシーバー アービターと TX/RX ネイティブ PHY/PHY リセット コントローラー ブロック間のインターフェイス接続ampファイルは、トランシーバー アービターを使用して任意の IP の組み合わせに適用される汎用モードを示しています。 チャネルで RX または TX トランシーバーのいずれかのみが使用される場合、トランシーバー アービターは必要ありません。
トランシーバー・アービターは、その Avalon-MM リコンフィギュレーション・インターフェースを介してリコンフィギュレーションのリクエスターを識別し、対応する tx_reconfig_cal_busy または rx_reconfig_cal_busy がそれに応じて確実にゲートされるようにします。 HDMI アプリケーションの場合、RX のみがリコンフィギュレーションを開始します。 アービターを介して Avalon-MM 再構成要求をチャネリングすることにより、アービターは再構成要求が RX から発信されたことを識別し、RX は tx_reconfig_cal_busy のアサートをゲートし、rx_reconfig_cal_busy のアサートを許可します。 ゲーティングは、TX トランシーバーが意図せずにキャリブレーション モードに移行するのを防ぎます。
注記: HDMI は RX 再構成のみを必要とするため、tx_reconfig_mgmt_* 信号は接続されていません。 また、アービターと TX Native PHY ブロックの間に Avalon-MM インターフェイスは必要ありません。 ブロックは設計 ex のインターフェースに割り当てられます。ampTX/RX ネイティブ PHY/PHY リセット コントローラーへの汎用トランシーバー アービター接続を示すファイル。
RX-TXリンク • HDMI RX コアからのビデオ データ出力と同期信号は、RX および TX ビデオ クロック ドメイン全体で DCFIFO をループします。
• 汎用制御パケット (GCP)、InfoFrame (AVI、VSI、および AI)、補助データ、およびオーディオ データは、RX および TX リンク速度クロック ドメイン全体で DCFIFO を介してループします。
• HDMI TX コアの補助データ ポートは、バックプレッシャを通じて DCFIFO を流れる補助データを制御します。 バックプレッシャにより、補助データ ポートに不完全な補助パケットが存在しないことが保証されます。
• このブロックは外部フィルタリングも実行します。
— HDMI TX コアの補助データ ポートに送信する前に、補助データ ストリームからオーディオ データとオーディオ クロック再生成パケットをフィルター処理します。
注記: このフィルタリングを無効にするには、user_pb[2] を押します。 このフィルタリングを有効にして、再送信された補助データ ストリームでオーディオ データとオーディオ クロック再生成パケットが重複しないようにします。
— HDMI RX 補助データからハイ ダイナミック レンジ (HDR) InfoFrame をフィルタリングし、ex を挿入します。ample HDR InfoFrame を、Avalon ST マルチプレクサーを介して HDMI TX の補助データに送信します。
CPU サブシステム CPU サブシステムは、SCDC および DDC コントローラ、およびソース再構成コントローラとして機能します。
• ソース SCDC コントローラーには、I2C マスター コントローラーが含まれます。 I2C マスター コントローラーは、SCDC データ構造を FPGA ソースから HDMI 2.0b 動作用の外部シンクに転送します。 例えばamp出力データ ストリームが 6,000 Mbps の場合、Nios II プロセッサは I2C マスター コントローラに、シンク TMDS コンフィギュレーション レジスタの TMDS_BIT_CLOCK_RATIO および SCRAMBLER_ENABLE ビットを 1 に更新するように命令します。
• 同じ I2C マスターが、HDMI ソースと外部シンクの間で DDC データ構造 (E-EDID) も転送します。
• Nios II CPU は、HDMI ソースの再構成コントローラーとして機能します。 CPU は、RX 再構成管理モジュールからの定期的なレート検出に依存して、TX が再構成を必要とするかどうかを判断します。 Avalon-MM スレーブ・トランスレーターは、Nios II プロセッサーの Avalon-MM マスター・インターフェースと、外部でインスタンス化された HDMI ソースの IOPLL および TX Native PHY の Avalon-MM スレーブ・インターフェースとの間のインターフェースを提供します。
• TX のリコンフィギュレーション シーケンス フローは RX と同じですが、PLL とトランシーバーのリコンフィギュレーションとリセット シーケンスが順番に実行される点が異なります。 24 ページの図 67 を参照してください。

図 24. リコンフィギュレーション シーケンス フロー
この図は、I2C マスターと HDMI ソースの制御を含む Nios II ソフトウェア フローを示しています。Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 73.5. ダイナミック レンジとマスタリング (HDR) InfoFrame の挿入とフィルタリング
HDMI Intel FPGA IP 設計例ampファイルには、RX-TX ループバック システムでの HDR InfoFrame 挿入のデモが含まれています。
HDMI 仕様バージョン 2.0b では、ダイナミック レンジとマスタリング InfoFrame を HDMI 補助ストリーム経由で送信できます。 このデモでは、Auxiliary Data Insertion ブロックが HDR 挿入をサポートしています。 モジュールの信号リスト テーブルで指定されているように目的の HDR InfoFrame パケットをフォーマットし、提供されている AUX 挿入制御モジュールを使用して、ビデオ フレームごとに XNUMX 回 HDR InfoFrame の挿入をスケジュールするだけです。
この例ampファイル構成では、着信補助ストリームに既に HDR InfoFrame が含まれている場合、ストリーミングされた HDR コンテンツはフィルタリングされます。 フィルタリングにより、競合する HDR InfoFrame が送信されるのを回避し、HDR S で指定された値のみが送信されるようにします。ample データモジュールが使用されます。
図 25. ダイナミック レンジとマスター InfoFrame 挿入を備えた RX-TX リンク
この図は、HDMI TX コア補助ストリームへのダイナミック レンジおよびマスタリング InfoFrame 挿入を含む RX-TX リンクのブロック図を示しています。
Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 8表 37. 補助データ挿入ブロック (altera_hdmi_aux_hdr) 信号

信号 方向

説明

クロックとリセット
クリック 入力 1 クロック入力。 このクロックは、リンク速度クロックに接続する必要があります。
リセット 入力 1 入力をリセットします。
補助パケット ジェネレータおよびマルチプレクサ信号
マルチプレクサ_アウト_データ 出力 72 マルチプレクサからの Avalon ストリーミング出力。
マルチプレクサ_アウト_有効 出力 1
マルチプレクサー_アウト_レディ 出力 1
multiplexer_out_startofpacket 出力 1
multiplexer_out_endofpacket 出力 1
マルチプレクサ_アウト_チャネル 出力 11
マルチプレクサ_イン_データ 入力 72 マルチプレクサの In1 ポートへの Avalon ストリーミング入力。
HDMI TX ビデオ垂直同期。 この信号は、リンク速度クロック ドメインに同期する必要があります。
コアは、この信号の立ち上がりエッジで HDR InfoFrame を補助ストリームに挿入します。
マルチプレクサー_in_valid 入力 1
マルチプレクサー_in_ready 入力 1
multiplexer_in_startofpacket 入力 1
multiplexer_in_endofpacket
hdmi_tx_vsync
入力
入力
1
1

表 38. HDR データ・モジュール (altera_hdmi_hdr_infoframe) 信号

信号 方向

説明

0年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 0: InfoFrame タイプ コード。
1年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 1: InfoFrame のバージョン番号。
2年 出力 8 ダイナミック レンジおよびマスタリング InfoFrame のヘッダー バイト 2: InfoFrame の長さ。
pb 入力 224 ダイナミック レンジとマスタリング InfoFrame のデータ バイト。

表 39. ダイナミック レンジとマスタリング InfoFrame データ バイト バンドル ビット フィールド

ビットフィールド

意味

静的メタデータ タイプ 1

7:0 データ バイト 1: {5'h0, EOTF[2:0]}
15:8 データ バイト 2: {5'h0, Static_Metadata_Descriptor_ID[2:0]}
23:16 データ バイト 3: Static_Metadata_Descriptor display_primaries_x[0]、LSB
31:24 データ バイト 4: Static_Metadata_Descriptor display_primaries_x[0]、MSB
39:32 データ バイト 5: Static_Metadata_Descriptor display_primaries_y[0]、LSB
47:40 データ バイト 6: Static_Metadata_Descriptor display_primaries_y[0]、MSB
55:48 データ バイト 7: Static_Metadata_Descriptor display_primaries_x[1]、LSB
63:56 データ バイト 8: Static_Metadata_Descriptor display_primaries_x[1]、MSB
71:64 データ バイト 9: Static_Metadata_Descriptor display_primaries_y[1]、LSB
79:72 データ バイト 10: Static_Metadata_Descriptor display_primaries_y[1]、MSB
87:80 データ バイト 11: Static_Metadata_Descriptor display_primaries_x[2]、LSB
95:88 データ バイト 12: Static_Metadata_Descriptor display_primaries_x[2]、MSB
103:96 データ バイト 13: Static_Metadata_Descriptor display_primaries_y[2]、LSB
111:104 データ バイト 14: Static_Metadata_Descriptor display_primaries_y[2]、MSB
119:112 データ バイト 15: Static_Metadata_Descriptor white_point_x、LSB
127:120 データ バイト 16: Static_Metadata_Descriptor white_point_x、MSB
135:128 データ バイト 17: Static_Metadata_Descriptor white_point_y、LSB
143:136 データ バイト 18: Static_Metadata_Descriptor white_point_y、MSB
151:144 データ バイト 19: Static_Metadata_Descriptor max_display_mastering_luminance、LSB
159:152 データ バイト 20: Static_Metadata_Descriptor max_display_mastering_luminance、MSB
167:160 データ バイト 21: Static_Metadata_Descriptor min_display_mastering_luminance、LSB
175:168 データ バイト 22: Static_Metadata_Descriptor min_display_mastering_luminance、MSB
183:176 データ バイト 23: Static_Metadata_Descriptor 最大コンテンツ ライト レベル、LSB
191:184 データ バイト 24: Static_Metadata_Descriptor 最大コンテンツ ライト レベル、MSB
199:192 データ バイト 25: Static_Metadata_Descriptor 最大フレーム平均光レベル、LSB
207:200 データ バイト 26: Static_Metadata_Descriptor 最大フレーム平均光レベル、MSB
215:208 予約済み
223:216 予約済み

HDR の挿入とフィルタリングを無効にする
HDR 挿入とフィルターを無効にすると、RX-TX 再送信設計を変更することなく、ソース補助ストリームで既に利用可能な HDR コンテンツの再送信を検証できます。ampル。
HDR InfoFrame の挿入とフィルタリングを無効にするには:

  1. rxtx_link.v で block_ext_hdr_infoframe を 1'b0 に設定します。 file 補助ストリームからの HDR InfoFrame のフィルタリングを防止します。
  2. altera_hdmi_aux_hdr.v で、avalon_st_multiplexer インスタンスの multiplexer_in0_valid を設定します。 file Auxiliary Packet Generator が追加の HDR InfoFrame を形成して TX Auxiliary ストリームに挿入するのを防ぐために、1'b0 に設定します。

3.6. クロッキング方式
クロッキング方式は、HDMI インテル FPGA IP デザイン例のクロック ドメインを示しています。ampル。
図 26. HDMI Intel FPGA IP 設計例ampクロッキングスキーム (インテル Quartus Prime プロ・エディション)Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 9図 27. HDMI Intel FPGA IP 設計例ampクロッキングスキーム (インテル Quartus Prime スタンダード・エディション)Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 10表 40. クロッキング方式の信号

クロック 設計における信号名

説明

TX IOPLL/ TX PLL 基準クロック 1 hdmi_clk_in TX IOPLL および TX PLL への基準クロック。 クロック周波数は、HDMI TX TMDS クロック チャネルから予測される TMDS クロック周波数と同じです。
この HDMI Intel FPGA IP 設計例の場合ampこのクロックは、デモンストレーション目的で RX TMDS クロックに接続されています。 アプリケーションでは、プログラマブル オシレータから TMDS クロック周波数の専用クロックを供給して、ジッタ パフォーマンスを向上させる必要があります。
注記: トランシーバー RX ピンを TX PLL 基準クロックとして使用しないでください。 HDMI TX refclk を RX ピンに配置すると、デザインが適合しなくなります。
TX トランシーバーのクロック出力 tx_clk クロック出力はトランシーバーから回復され、周波​​数はクロックあたりのデータ レートとシンボルによって異なります。
TX トランシーバーのクロック出力周波数 = トランシーバーのデータ レート/ (10 クロックあたりのシンボル*XNUMX)
TX PLL シリアル クロック tx_bonding_locks TX PLL によって生成されるシリアル高速クロック。 クロック周波数は、データ レートに基づいて設定されます。
TX/RX リンク速度クロック ls_clk リンクスピードクロック。 リンク速度のクロック周波数は、予想される TMDS クロック周波数に依存します。ampリング ファクター、クロックあたりのシンボル、および TMDS ビット クロック比。
TMDS ビット クロック比 リンク速度クロック周波数
0 TMDS クロック周波数/クロックあたりのシンボル
1 TMDS クロック周波数 *4 / Symbol per clock
TX/RX ビデオ クロック vid_clk ビデオ データ クロック。 ビデオ データ クロック周波数は、色深度に基づいて TX リンク速度クロックから取得されます。
TMDS ビット クロック比 ビデオ データ クロック周波数
0 TMDS クロック/クロックあたりのシンボル/色深度係数
1 TMDS クロック *4 / Symbol per clock / 色深度係数
ビット/カラー 色深度係数
8 1
10 1.25
12 1.5
16 2.0
RX TMDS クロック tmds_clk_in HDMI RX からの TMDS クロック チャネルであり、IOPLL への基準クロックに接続します。
RX CDR 基準クロック 0 /TX PLL 基準クロック 0 fr_clk RX CDR および TX PLL へのフリーランニング基準クロック。 このクロックは、パワーアップ キャリブレーションに必要です。
RX CDR 基準クロック 1 iopll_outclk0 RX トランシーバーの RX CDR への基準クロック。
データレート RX 基準クロック周波数
データレート <1Gbps 5×TMDSクロック周波数
1Gbps< データレート

<3.4Gbps

TMDS クロック周波数
データレート >3.4 Gbps 4×TMDSクロック周波数
• データレート <1 Gbps: オーバーの場合ampトランシーバーの最小データ レート要件を満たすために必要です。
• データ レート > 3.4 Gbps: TMDS ビット レートとクロック比の 1/40 を補正して、トランシーバのデータ レートとクロック比を 1/10 に維持します。
注記: トランシーバー RX ピンを CDR 基準クロックとして使用しないでください。 HDMI RX refclk を RX ピンに配置すると、デザインが適合しなくなります。
RX トランシーバーのクロック出力 rx_clk クロック出力はトランシーバーから回復され、周波​​数はクロックあたりのデータ レートとシンボルによって異なります。

RX トランシーバーのクロック出力周波数 = トランシーバーのデータ レート/ (10 クロックあたりのシンボル*XNUMX)

管理時計 mgmt_clk これらのコンポーネントのフリーランニング 100 MHz クロック:
• 再構成用の Avalon-MM インターフェイス
— 周波数範囲の要件は 100 ~ 125 MHz です。
•、トランシーバー リセット シーケンス用の PHY リセット コントローラー
— 周波数範囲の要件は 1 ~ 500 MHz です。
• IOPLL 再構成
— 最大クロック周波数は 100 MHz です。
• 管理のための RX 再構成
• CPU
•I2Cマスター
I2Cクロック i2c_clk I100C スレーブ、HDMI RX コアの SCDC レジスタ、および EDID RAM をクロックする 2 MHz クロック入力。

関連情報

  • トランシーバー RX ピンを CDR 基準クロックとして使用
  • トランシーバー RX ピンを TX PLL 基準クロックとして使用

3.7. インターフェイス信号
表には、HDMI Intel FPGA IP デザイン ex の信号がリストされています。ampル。
表 41. 最上位信号

信号 方向

説明

オンボード発振器信号
clk_fpga_b3_p 入力 1 コア基準クロック用の 100 MHz フリーランニング クロック
REFCLK_FMCB_P (インテル Quartus Prime プロ・エディション) 入力 1 トランシーバー基準クロック用の 625 MHz フリーランニング クロック。 このクロックは任意の周波数にすることができます
ユーザー プッシュ ボタンと LED
ユーザー_pb 入力 1 ボタンを押してHDMI Intel FPGA IPデザイン機能を制御
cpu_resetn 入力 1 グローバルリセット
user_led_g 出力 4 緑色のLEDディスプレイ
LED 機能の詳細については、89 ページの「ハードウェアのセットアップ」を参照してください。
user_led_r 出力 4 赤色LEDディスプレイ
LED 機能の詳細については、89 ページの「ハードウェアのセットアップ」を参照してください。
FMC ポート B の HDMI FMC ドーター カード ピン
fmcb_gbtclk_m2c_p_0 入力 1 HDMI RX TMDS クロック
fmcb_dp_m2c_p 入力 3 HDMI RX 赤、緑、青のデータ チャネル
• Bitec ドーター カード リビジョン 11
— [0]: RX TMDS チャネル 1 (緑)
— [1]: RX TMDS チャネル 2 (赤)
— [2]: RX TMDS チャネル 0 (青)
• Bitec ドーター カード リビジョン 4 または 6
— [0]: RX TMDS チャネル 1 (緑) — 極性反転
— [1]: RX TMDS チャネル 0 (青) — 極性反転
— [2]: RX TMDS チャネル 2 (赤) — 極性反転
fmcb_dp_c2m_p 出力 4 HDMI TX クロック、赤、緑、青のデータ チャネル
• Bitec ドーター カード リビジョン 11
— [0]: TX TMDS チャネル 2 (赤)
— [1]: TX TMDS チャネル 1 (緑)
— [2]: TX TMDS チャネル 0 (青)
— [3]: TX TMDS クロック チャネル
• Bitec ドーター カード リビジョン 4 または 6
— [0]: TX TMDS クロック チャネル
— [1]: TX TMDS チャネル 0 (青)
— [2]: TX TMDS チャネル 1 (緑)
— [3]: TX TMDS チャネル 2 (赤)
fmcb_la_rx_p_9 入力 1 HDMI RX +5V 電源検出
fmcb_la_rx_p_8 インアウト 1 HDMI RX ホットプラグ検出
fmcb_la_rx_n_8 インアウト 1 DDC および SCDC 用の HDMI RX I2C SDA
fmcb_la_tx_p_10 入力 1 DDC および SCDC 用の HDMI RX I2C SCL
fmcb_la_tx_p_12 入力 1 HDMI TX ホットプラグ検出
fmcb_la_tx_n_12 インアウト 1 DDC および SCDC 用の HDMI I2C SDA
fmcb_la_rx_p_10 インアウト 1 DDC および SCDC 用の HDMI I2C SCL
fmcb_la_tx_p_11 インアウト 1 リドライバ制御用HDMI I2C SDA
fmcb_la_rx_n_9 インアウト 1 リドライバ制御用HDMI I2C SCL

表 42. HDMI RX トップレベル信号

信号 方向

説明

クロックおよびリセット信号
mgmt_clk 入力 1 システムクロック入力 (100 MHz)
fr_clk (インテル Quartus Prime プロ・エディション) 入力 1 プライマリ トランシーバー基準クロック用のフリー ランニング クロック (625 MHz)。 このクロックは、電源投入時のトランシーバーのキャリブレーションに必要です。 このクロックは任意の周波数にすることができます。
リセット 入力 1 システムリセット入力

信号

方向

説明

クロックおよびリセット信号
reset_xcvr_powerup (インテル Quartus Prime プロ・エディション) 入力 1 トランシーバーのリセット入力。 この信号は、電源投入時の基準クロックの切り替えプロセス (フリーランニング クロックから TMDS クロックへ) 中にアサートされます。
tmds_clk_in 入力 1 HDMI RX TMDS クロック
i2c_clk 入力 1 DDC および SCDC インターフェイスのクロック入力
vid_clk_out 出力 1 ビデオクロック出力
ls_clk_out 出力 1 リンク速度クロック出力
sys_init 出力 1 電源投入時にシステムをリセットするためのシステム初期化
RX トランシーバーと IOPLL 信号
rx_serial_data 入力 3 RX ネイティブ PHY への HDMI シリアル データ
gxb_rx_ready 出力 1 RX ネイティブ PHY の準備ができていることを示します
gxb_rx_cal_busy_out 出力 3 RX ネイティブ PHY キャリブレーションはトランシーバー アービターに対してビジーです
gxb_rx_cal_busy_in 入力 3 トランシーバー アービターから RX ネイティブ PHY へのキャリブレーション ビジー信号
iopll_locked 出力 1 IOPLL がロックされていることを示す
gxb_reconfig_write 入力 3 RX Native PHY からトランシーバー・アービターへのトランシーバーの再構成 Avalon-MM インターフェイス
gxb_reconfig_read 入力 3
gxb_reconfig_address 入力 30
gxb_reconfig_writedata 入力 96
gxb_reconfig_readdata 出力 96
gxb_reconfig_waitrequest 出力 3
RX 再構成管理
rx_reconfig_ja 出力 1 RX リコンフィギュレーション イネーブル信号
測定 出力 24 HDMI RX TMDS クロック周波数測定 (10 ms)
メジャー有効 出力 1 測定信号が有効であることを示します
os 出力 1 オーバーampリングファクター:
• 0: オーバーなしampリング
• 1: 5x オーバーampリング
reconfig_mgmt_write 出力 1 RX 再構成管理 Avalon メモリー・マップト・インターフェースからトランシーバー・アービターへ
reconfig_mgmt_read 出力 1
reconfig_mgmt_address 出力 12
reconfig_mgmt_writedata 出力 32
reconfig_mgmt_readdata 入力 32
reconfig_mgmt_waitrequest 入力 1
HDMI RX コア信号
TMDS_ビットクロック比率 出力 1 SCDC レジスタ インターフェイス
オーディオデ 出力 1 HDMI RX コア オーディオ インターフェイス
詳細は、HDMI Intel FPGA IP User Guide の Sink Interfaces セクションを参照してください。
オーディオデータ 出力 256
audio_info_ai 出力 48
オーディオ_N 出力 20
オーディオ_CTS 出力 20
オーディオメタデータ 出力 165
オーディオ形式 出力 5
aux_pkt_data 出力 72 HDMI RX コア補助インターフェイス
詳細は、HDMI Intel FPGA IP User Guide の Sink Interfaces セクションを参照してください。
aux_pkt_addr 出力 6
aux_pkt_wr 出力 1
補助データ 出力 72
aux_sop 出力 1
aux_eop 出力 1
aux_valid 出力 1
aux_error 出力 1
gcp 出力 6 HDMI RX コア側波帯信号
詳細は、HDMI Intel FPGA IP User Guide の Sink Interfaces セクションを参照してください。
info_avi 出力 112
info_vsi 出力 61
color Depth_mgmt_sync 出力 2
vid_data 出力 N*48 HDMI RX コア ビデオ ポート
注: N = クロックあたりのシンボル
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
vid_vsync 出力 N
vid_hsync 出力 N
vid_de 出力 N
モード 出力 1 HDMI RX コアの制御およびステータス ポート
注: N = クロックあたりのシンボル
参照 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
制御 出力 N*6
ロックされた 出力 3
vid_lock 出力 1
in_5v_power 入力 1 HDMI RX 5V 検出およびホットプラグ検出 シンク インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。
hdmi_rx_hpd_n インアウト 1
hdmi_rx_i2c_sda インアウト 1 HDMI RX DDC および SCDC インターフェイス
hdmi_rx_i2c_scl インアウト 1
RX EDID RAM 信号
edid_ram_access 入力 1 HDMI RX EDID RAM アクセス インターフェイス。
EDID RAM から書き込みまたは読み取りを行う場合は、edid_ram_access をアサートします。それ以外の場合、この信号は Low に維持する必要があります。
edid_ram_address 入力 8
edid_ram_write 入力 1
edid_ram_read 入力 1
edid_ram_readdata 出力 8
edid_ram_writedata 入力 8
edid_ram_waitrequest 出力 1

表 43. HDMI TX 最上位信号

信号 方向 説明
クロックおよびリセット信号
mgmt_clk 入力 1 システムクロック入力 (100 MHz)
fr_clk (インテル Quartus Prime プロ・エディション) 入力 1 プライマリ トランシーバー基準クロック用のフリー ランニング クロック (625 MHz)。 このクロックは、電源投入時のトランシーバーのキャリブレーションに必要です。 このクロックは任意の周波数にすることができます。
リセット 入力 1 システムリセット入力
hdmi_clk_in 入力 1 TX IOPLL および TX PLL への基準クロック。 クロック周波数は TMDS クロック周波数と同じです。
vid_clk_out 出力 1 ビデオクロック出力
ls_clk_out 出力 1 リンク速度クロック出力
sys_init 出力 1 電源投入時にシステムをリセットするためのシステム初期化
リセット_xcvr 入力 1 TX トランシーバーにリセット
リセット_pll 入力 1 IOPLL および TX PLL へのリセット
リセット_pll_reconfig 出力 1 PLL リコンフィギュレーションへのリセット
TX トランシーバーと IOPLL 信号
tx_serial_data 出力 4 TX ネイティブ PHY からの HDMI シリアル データ
gxb_tx_ready 出力 1 TX ネイティブ PHY の準備ができていることを示します
gxb_tx_cal_busy_out 出力 4 トランシーバー アービターへの TX ネイティブ PHY キャリブレーション ビジー信号
gxb_tx_cal_busy_in 入力 4 トランシーバー アービターから TX ネイティブ PHY へのキャリブレーション ビジー信号
TX トランシーバーと IOPLL 信号
iopll_locked 出力 1 IOPLL がロックされていることを示す
txpll_locked 出力 1 TX PLL がロックされていることを示す
gxb_reconfig_write 入力 4 トランシーバーの再構成 TX ネイティブ PHY からトランシーバー アービターへの Avalon メモリ マップド インターフェイス
gxb_reconfig_read 入力 4
gxb_reconfig_address 入力 40
gxb_reconfig_writedata 入力 128
gxb_reconfig_readdata 出力 128
gxb_reconfig_waitrequest 出力 4
TX IOPLL および TX PLL リコンフィギュレーション信号
pll_reconfig_write/tx_pll_reconfig_write 入力 1 TX IOPLL/TX PLL リコンフィギュレーション Avalon メモリマップド インターフェイス
pll_reconfig_read/tx_pll_reconfig_read 入力 1
pll_reconfig_address/tx_pll_reconfig_address 入力 10
pll_reconfig_writedata/tx_pll_reconfig_writedata 入力 32
pll_reconfig_readdata/tx_pll_reconfig_readdata 出力 32
pll_reconfig_waitrequest/ tx_pll_reconfig_waitrequest 出力 1
os 入力 2 オーバーampリングファクター:
• 0: オーバーなしampリング
• 1: 3x オーバーampリング
• 2: 4x オーバーampリング
• 3: 5x オーバーampリング
測定 入力 24 送信映像解像度の TMDS クロック周波数を示します。
HDMI TX コア信号
制御 入力 6*N HDMI TX コア制御インターフェイス
注: N = クロックあたりのシンボル
のソース インターフェイスのセクションを参照してください。 HDMI 詳細については、インテル FPGA IP ユーザーガイドを参照してください。
モード 入力 1
TMDS_ビットクロック比率 入力 1 SCDC レジスタ インターフェイス

詳細は、HDMI Intel FPGA IP User Guide の Source Interfaces セクションを参照してください。

スクランブラー_有効化 入力 1
オーディオデ 入力 1 HDMI TX コア オーディオ インターフェイス

参照 ソース インターフェイス セクションの HDMI Intel FPGA IP ユーザーガイド 詳細についてはこちらをご覧ください。

オーディオミュート 入力 1
オーディオデータ 入力 256
続き…
HDMI TX コア信号
audio_info_ai 入力 49
オーディオ_N 入力 22
オーディオ_CTS 入力 22
オーディオメタデータ 入力 166
オーディオ形式 入力 5
i2c_master_write 入力 1 TX I2C マスター TX コア内の I2C マスターへの Avalon メモリー・マップド・インターフェース。
注記: これらの信号は、 I2C を含める パラメータ。
i2c_master_read 入力 1
i2c_マスターアドレス 入力 4
i2c_master_writedata 入力 32
i2c_master_readdata 出力 32
aux_ready 出力 1 HDMI TX コア補助インターフェイス

詳細は、HDMI Intel FPGA IP User Guide の Source Interfaces セクションを参照してください。

補助データ 入力 72
aux_sop 入力 1
aux_eop 入力 1
aux_valid 入力 1
gcp 入力 6 HDMI TX コア側波帯信号
詳細は、HDMI Intel FPGA IP User Guide の Source Interfaces セクションを参照してください。
info_avi 入力 113
info_vsi 入力 62
vid_data 入力 N*48 HDMI TX コア ビデオ ポート
注: N = クロックあたりのシンボル
詳細は、HDMI Intel FPGA IP User Guide の Source Interfaces セクションを参照してください。
vid_vsync 入力 N
vid_hsync 入力 N
vid_de 入力 N
I2C およびホットプラグ検出信号
nios_tx_i2c_sda_in (インテル Quartus Prime プロ・エディション)
注記: オンにすると I2C を含める この信号は TX コアに配置され、このレベルでは表示されません。
出力 1 I2C マスター Avalon メモリマップ インターフェイス
nios_tx_i2c_scl_in (インテル Quartus Prime プロ・エディション)
注記: オンにすると I2C を含める この信号は TX コアに配置され、このレベルでは表示されません。
出力 1
nios_tx_i2c_sda_oe (インテル Quartus Prime プロ・エディション)
注記: オンにすると I2C を含める この信号は TX コアに配置され、このレベルでは表示されません。
入力 1
続き…
I2C およびホットプラグ検出信号
nios_tx_i2c_scl_oe (インテル Quartus Prime プロ・エディション)
注記: オンにすると I2C を含める この信号は TX コアに配置され、このレベルでは表示されません。
入力 1
nios_ti_i2c_sda_in (インテル Quartus Prime プロ・エディション) 出力 1
nios_ti_i2c_scl_in (インテル Quartus Prime プロ・エディション) 出力 1
nios_ti_i2c_sda_oe (インテル Quartus Prime プロ・エディション) 入力 1
nios_ti_i2c_scl_oe (インテル Quartus Prime プロ・エディション) 入力 1
hdmi_tx_i2c_sda インアウト 1 HDMI TX DDC および SCDC インターフェイス
hdmi_tx_i2c_scl インアウト 1
hdmi_ti_i2c_sda (インテル Quartus Prime プロ・エディション) インアウト 1 Bitec ドーター カード リビジョン 2 TI11 コントロール用の I181C インターフェイス
hdmi_tx_ti_i2c_sda (インテル Quartus Prime スタンダード・エディション) インアウト 1
hdmi_ti_i2c_scl (インテル Quartus Prime プロ・エディション) インアウト 1
hdmi_tx_ti_i2c_scl (インテル Quartus Prime スタンダード・エディション) インアウト 1
tx_i2c_avalon_waitrequest 出力 1 I2C マスターの Avalon メモリマップ インターフェイス
tx_i2c_avalon_address (インテル Quartus Prime スタンダード・エディション) 入力 3
tx_i2c_avalon_writedata (インテル Quartus Prime スタンダード・エディション) 入力 8
tx_i2c_avalon_readdata (インテル Quartus Prime スタンダード・エディション) 出力 8
tx_i2c_avalon_chipselect (インテル Quartus Prime スタンダード・エディション) 入力 1
tx_i2c_avalon_write (インテル Quartus Prime スタンダード・エディション) 入力 1
tx_i2c_irq (インテル Quartus Prime スタンダード・エディション) 出力 1
tx_ti_i2c_avalon_waitrequest

(インテル Quartus Prime スタンダード・エディション)

出力 1
tx_ti_i2c_avalon_address (インテル Quartus Prime スタンダード・エディション) 入力 3
tx_ti_i2c_avalon_writedata (インテル Quartus Prime スタンダード・エディション) 入力 8
tx_ti_i2c_avalon_readdata (インテル Quartus Prime スタンダード・エディション) 出力 8
続き…
I2C およびホットプラグ検出信号
tx_ti_i2c_avalon_chipselect (インテル Quartus Prime スタンダード・エディション) 入力 1
tx_ti_i2c_avalon_write (インテル Quartus Prime スタンダード・エディション) 入力 1
tx_ti_i2c_irq (インテル Quartus Prime スタンダード・エディション) 出力 1
hdmi_tx_hpd_n 入力 1 HDMI TX ホットプラグ検出インターフェイス
tx_hpd_ack 入力 1
tx_hpd_req 出力 1

表 44. トランシーバー アービター信号

信号 方向 説明
クリック 入力 1 リコンフィギュレーション クロック。 このクロックは、再構成管理ブロックと同じクロックを共有する必要があります。
リセット 入力 1 信号をリセットします。 このリセットは、再構成管理ブロックと同じリセットを共有する必要があります。
rx_rcfg_ja 入力 1 RX リコンフィギュレーション イネーブル信号
tx_rcfg_ja 入力 1 TX リコンフィギュレーション イネーブル信号
rx_rcfg_ch 入力 2 RX コアで再構成するチャネルを示します。 この信号は常にアサートされたままにする必要があります。
tx_rcfg_ch 入力 2 TX コアで再構成するチャネルを示します。 この信号は常にアサートされたままにする必要があります。
rx_reconfig_mgmt_write 入力 1 RX 再構成管理からの Avalon-MM インターフェイスの再構成
rx_reconfig_mgmt_read 入力 1
rx_reconfig_mgmt_address 入力 10
rx_reconfig_mgmt_writedata 入力 32
rx_reconfig_mgmt_readdata 出力 32
rx_reconfig_mgmt_waitrequest 出力 1
tx_reconfig_mgmt_write 入力 1 TX 再構成管理からの Avalon-MM インターフェイスの再構成
tx_reconfig_mgmt_read 入力 1
tx_reconfig_mgmt_address 入力 10
tx_reconfig_mgmt_writedata 入力 32
tx_reconfig_mgmt_readdata 出力 32
tx_reconfig_mgmt_waitrequest 出力 1
再構成_書き込み 出力 1 トランシーバーへの Avalon-MM インターフェイスの再構成
再構成_読み取り 出力 1
続き…
信号 方向 説明
再構成アドレス 出力 10
reconfig_writedata 出力 32
rx_reconfig_readdata 入力 32
rx_reconfig_waitrequest 入力 1
tx_reconfig_readdata 入力 1
tx_reconfig_waitrequest 入力 1
rx_cal_busy 入力 1 RX トランシーバーからのキャリブレーション ステータス信号
tx_cal_busy 入力 1 TX トランシーバーからのキャリブレーション ステータス信号
rx_reconfig_cal_busy 出力 1 RX トランシーバー PHY リセット制御へのキャリブレーション ステータス信号
tx_reconfig_cal_busy 出力 1 TX トランシーバー PHY リセット制御からのキャリブレーション ステータス信号

表 45. RX-TX リンク信号

信号 方向 説明
リセット 入力 1 ビデオ/オーディオ/補助/サイドバンド FIFO バッファにリセットします。
hdmi_tx_ls_clk 入力 1 HDMI TX リンク速度クロック
hdmi_rx_ls_clk 入力 1 HDMI RX リンク速度クロック
hdmi_tx_vid_clk 入力 1 HDMI TX ビデオ クロック
hdmi_rx_vid_clk 入力 1 HDMI RX ビデオ クロック
hdmi_rx_locked 入力 3 HDMI RX のロック状態を示します
hdmi_rx_de 入力 N HDMI RX ビデオ インターフェイス
注: N = クロックあたりのシンボル
hdmi_rx_hsync 入力 N
hdmi_rx_vsync 入力 N
hdmi_rx_data 入力 N * 48
rx_audio_format 入力 5 HDMI RX オーディオ インターフェイス
rx_audio_metadata 入力 165
rx_audio_info_ai 入力 48
rx_audio_CTS 入力 20
rx_audio_N 入力 20
rx_audio_de 入力 1
rx_audio_data 入力 256
rx_gcp 入力 6 HDMI RX サイドバンド インターフェイス
rx_info_avi 入力 112
rx_info_vsi 入力 61
続き…
信号 方向 説明
rx_aux_eop 入力 1 HDMI RX 補助インターフェイス
rx_aux_sop 入力 1
rx_aux_valid 入力 1
rx_aux_data 入力 72
hdmi_tx_de 出力 N HDMI TX ビデオ インターフェイス

注: N = クロックあたりのシンボル

hdmi_tx_hsync 出力 N
hdmi_tx_vsync 出力 N
hdmi_tx_data 出力 N * 48
tx_audio_format 出力 5 HDMI TX オーディオ インターフェイス
tx_audio_metadata 出力 165
tx_audio_info_ai 出力 48
tx_audio_CTS 出力 20
tx_audio_N 出力 20
tx_audio_de 出力 1
tx_audio_data 出力 256
tx_gcp 出力 6 HDMI TX サイドバンド インターフェイス
tx_info_avi 出力 112
tx_info_vsi 出力 61
tx_aux_eop 出力 1 HDMI TX 補助インターフェイス
tx_aux_sop 出力 1
tx_aux_valid 出力 1
tx_aux_data 出力 72
tx_aux_ready 出力 1

表 46. Platform Designer システム信号

信号 方向 説明
cpu_clk (インテル Quartus Prime スタンダード・エディション) 入力 1 CPUクロック
clock_bridge_0_in_clk_clk (インテル Quartus Prime プロ・エディション)
cpu_clk_reset_n (インテル Quartus Prime スタンダード・エディション) 入力 1 CPUリセット
reset_bridge_0_reset_reset_n (インテル Quartus Prime プロ・エディション)
tmds_bit_clock_ratio_pio_external_connection_export 入力 1 TMDS ビット クロック比
Measure_pio_external_connection_export 入力 24 期待される TMDS クロック周波数
続き…
信号 方向 説明
measure_valid_pio_external_connection_export t 入力 1 メジャー PIO が有効であることを示します
i2c_master_i2c_serial_sda_in (インテル Quartus Prime プロ・エディション) 入力 1 I2C マスター インターフェイス
i2c_master_i2c_serial_scl_in (インテル Quartus Prime プロ・エディション) 入力 1
i2c_master_i2c_serial_sda_oe (インテル Quartus Prime プロ・エディション) 出力 1
i2c_master_i2c_serial_scl_oe (インテル Quartus Prime プロ・エディション) 出力 1
i2c_master_ti_i2c_serial_sda_in (インテル Quartus Prime プロ・エディション) 入力 1
i2c_master_ti_i2c_serial_scl_in (インテル Quartus Prime プロ・エディション) 入力 1
i2c_master_ti_i2c_serial_sda_oe (インテル Quartus Prime プロ・エディション) 出力 1
i2c_master_ti_i2c_serial_scl_oe (インテル Quartus Prime プロ・エディション) 出力 1
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_address (インテル Quartus Prime プロ・エディション) 出力 3 DDC および SCDC 用の I2C マスター Avalon メモリー・マップト・インターフェース
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_write (インテル Quartus Prime プロ・エディション) 出力 1
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_readdata (インテル Quartus Prime プロ・エディション) 入力 32
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_writedata (インテル Quartus Prime プロ・エディション) 出力 32
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_waitrequest (インテル Quartus Prime プロ・エディション) 入力 1
oc_i2c_master_av_slave_translator_avalon_anti_slave_0_chipselect (インテル Quartus Prime プロ・エディション) 出力 1
oc_i2c_master_ti_avalon_anti_slave_address (インテル Quartus Prime スタンダード・エディション) 出力 3 Bitecドーターカードリビジョン2、T11制御用のI1181CマスターAvalonメモリーマップインターフェース
oc_i2c_master_ti_avalon_anti_slave_write (インテル Quartus Prime スタンダード・エディション) 出力 1
oc_i2c_master_ti_avalon_anti_slave_readdata (インテル Quartus Prime スタンダード・エディション) 入力 32
oc_i2c_master_ti_avalon_anti_slave_writedata (インテル Quartus Prime スタンダード・エディション) 出力 32
oc_i2c_master_ti_avalon_anti_slave_waitrequest (インテル Quartus Prime スタンダード・エディション) 入力 1
oc_i2c_master_ti_avalon_anti_slave_chipsele ct (インテル Quartus Prime スタンダード・エディション) 出力 1
続き…
信号 方向 説明
edid_ram_access_pio_external_connection_exp ort 出力 1 EDID RAM アクセス インターフェイス。
RX 上部の EDID RAM に書き込みまたは読み取りを行う場合は、edid_ram_access_pio_external_connection_export をアサートします。 Platform Designer の EDID RAM アクセス Avalon-MM スレーブを最上位 RX モジュールの EDID RAM インターフェイスに接続します。
edid_ram_slave_translator_address 出力 8
edid_ram_slave_translator_write 出力 1
edid_ram_slave_translator_read 出力 1
edid_ram_slave_translator_readdata 入力 8
edid_ram_slave_translator_writedata 出力 8
edid_ram_slave_translator_waitrequest 入力 1
powerup_cal_done_export (インテル Quartus Prime プロ・エディション) 入力 1 RX PMA 再構成 Avalon メモリー・マップト・インターフェース
rx_pma_cal_busy_export (インテル Quartus Prime プロ・エディション) 入力 1
rx_pma_ch_export (インテル Quartus Prime プロ・エディション) 出力 2
rx_pma_rcfg_mgmt_address (インテル Quartus Prime プロ・エディション) 出力 12
rx_pma_rcfg_mgmt_write (インテル Quartus Prime プロ・エディション) 出力 1
rx_pma_rcfg_mgmt_read (インテル Quartus Prime プロ・エディション) 出力 1
rx_pma_rcfg_mgmt_readdata (インテル Quartus Prime プロ・エディション) 入力 32
rx_pma_rcfg_mgmt_writedata (インテル Quartus Prime プロ・エディション) 出力 32
rx_pma_rcfg_mgmt_waitrequest (インテル Quartus Prime プロ・エディション) 入力 1
rx_pma_waitrequest_export (インテル Quartus Prime プロ・エディション) 入力 1
rx_rcfg_en_export (インテル Quartus Prime プロ・エディション) 出力 1
rx_rst_xcvr_export (インテル Quartus Prime プロ・エディション) 出力 1
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest 入力 1 TX PLL 再構成 Avalon メモリー・マップド・インターフェース
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_writedata 出力 32
tx_pll_rcfg_mgmt_translator_avalon_anti_slave_address 出力 10
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_write 出力 1
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_read 出力 1
tx_pll_rcfg_mgmt_translator_avalon_anti_sla ve_readdata 入力 32
続き…
信号 方向 説明
tx_pll_waitrequest_pio_external_connection_export 入力 1 TX PLL 待機要求
tx_pma_rcfg_mgmt_translator_avalon_anti_slave_address 出力 12 TX PMA 再構成 Avalon メモリー・マップド・インターフェース
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_write 出力 1
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_read 出力 1
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_readdata 入力 32
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_writedata 出力 32
tx_pma_rcfg_mgmt_translator_avalon_anti_sla ve_waitrequest 入力 1
tx_pma_waitrequest_pio_external_connection_export 入力 1 TX PMA 待機要求
tx_pma_cal_busy_pio_external_connection_exp ort 入力 1 TX PMA リキャリブレーション ビジー
tx_pma_ch_export 出力 2 TX PMA チャンネル
tx_rcfg_en_pio_external_connection_export 出力 1 TX PMA 再構成の有効化
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_writedata 出力 32 TX IOPLL 再構成 Avalon メモリー・マップ・インターフェース
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_readdata 入力 32
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_waitrequest 入力 1
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_address 出力 9
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_write 出力 1
tx_iopll_rcfg_mgmt_translator_avalon_anti_s lave_read 出力 1
tx_os_pio_external_connection_export 出力 2 オーバーampリングファクター:
• 0: オーバーなしampリング
• 1: 3x オーバーampリング
• 2: 4x オーバーampリング
• 3: 5x オーバーampリング
tx_rst_pll_pio_external_connection_export 出力 1 IOPLL および TX PLL へのリセット
tx_rst_xcvr_pio_external_connection_export 出力 1 TX ネイティブ PHY にリセット
wd_timer_resetrequest_reset 出力 1 ウォッチドッグタイマーのリセット
color_ Depth_pio_external_connection_export 入力 2 色深度
tx_hpd_ack_pio_external_connection_export 出力 1 TX ホットプラグ検出ハンドシェイクの場合
tx_hpd_req_pio_external_connection_export 入力 1

3.8. デザイン RTL パラメーター
HDMI TX および RX Top RTL パラメーターを使用して、デザイン ex をカスタマイズします。ampル。
設計パラメーターのほとんどは、Design Ex で使用できます。ampHDMI Intel FPGA IP パラメーター・エディターの le タブ。 あなたはまだデザインexを変更することができますampル設定あなた
パラメータ エディタで RTL パラメータを介して作成されます。

表 47. HDMI RX 上位パラメーター

パラメータ 価値 説明
サポート_ディープ_カラー • 0: 濃い色なし
• 1: 濃い色
コアがディープ カラー フォーマットをエンコードできるかどうかを決定します。
サポート_補助 • 0: AUX なし
• 1: 補助
補助チャネル エンコーディングを含めるかどうかを決定します。
SYMBOLS_PER_CLOCK 8 Arria 8 デバイスでは、10 クロックあたり XNUMX つのシンボルをサポートします。
サポート_オーディオ • 0: 音声なし
• 1: オーディオ
コアがオーディオをエンコードできるかどうかを決定します。
EDID_RAM_ADDR_WIDTH (インテル Quartus Prime スタンダード・エディション) 8(デフォルト値) EDID RAM サイズの基数 2 をログに記録します。
BITEC_DAUGHTER_CARD_REV • 0: Bitec HDMI ドーター カードをターゲットにしない
• 4: Bitec HDMI ドーター カード リビジョン 4 をサポート
• 6: Bitec HDMI ドーター カード リビジョン 6 をターゲットにしています。
•11: Bitec HDMI ドーター カード リビジョン 11 をターゲットにします (デフォルト)。
使用する Bitec HDMI ドーター カードのリビジョンを指定します。 リビジョンを変更すると、デザインはトランシーバー チャネルをスワップし、Bitec HDMI ドーター カードの要件に従って極性を反転する場合があります。 BITEC_DAUGHTER_CARD_REV パラメーターを 0 に設定すると、デザインはトランシーバー チャネルと極性を変更しません。
極性_反転 • 0: 極性を反転
• 1: 極性を反転しない
入力データの各ビットの値を反転するには、このパラメータを 1 に設定します。 このパラメーターを 1 に設定すると、4'b1111 が RX トランシーバーの rx_polinv ポートに割り当てられます。

表 48. HDMI TX 上位パラメーター

パラメータ 価値 説明
USE_FPLL 1 インテル Cyclone® 10 GX デバイスに対してのみ、fPLL を TX PLL としてサポートします。 このパラメータは常に 1 に設定してください。
サポート_ディープ_カラー • 0: 濃い色なし
• 1: 濃い色
コアがディープ カラー フォーマットをエンコードできるかどうかを決定します。
サポート_補助 • 0: AUX なし
• 1: 補助
補助チャネル エンコーディングを含めるかどうかを決定します。
SYMBOLS_PER_CLOCK 8 Arria 8 デバイスでは、10 クロックあたり XNUMX つのシンボルをサポートします。
続き…
パラメータ 価値 説明
サポート_オーディオ • 0: 音声なし
• 1: オーディオ
コアがオーディオをエンコードできるかどうかを決定します。
BITEC_DAUGHTER_CARD_REV • 0: Bitec HDMI ドーター カードをターゲットにしない
• 4: Bitec HDMI ドーター カード リビジョン 4 をサポート
• 6: Bitec HDMI ドーター カード リビジョン 6 をターゲットにしています。
• 11: Bitec HDMI ドーター カード リビジョン 11 をターゲットにします (デフォルト)。
使用する Bitec HDMI ドーター カードのリビジョンを指定します。 リビジョンを変更すると、デザインはトランシーバー チャネルをスワップし、Bitec HDMI ドーター カードの要件に従って極性を反転する場合があります。 BITEC_DAUGHTER_CARD_REV パラメーターを 0 に設定すると、デザインはトランシーバー チャネルと極性を変更しません。
極性_反転 • 0: 極性を反転
• 1: 極性を反転しない
入力データの各ビットの値を反転するには、このパラメータを 1 に設定します。 このパラメーターを 1 に設定すると、4'b1111 が TX トランシーバーの tx_polinv ポートに割り当てられます。

3.9.ハードウェアのセットアップ
HDMI Intel FPGA IP 設計例ampファイルは HDMI 2.0b に対応しており、標準 HDMI ビデオ ストリームのループスルー デモンストレーションを実行します。
ハードウェア テストを実行するには、HDMI インターフェイスを備えたグラフィックス カードなどの HDMI 対応デバイスをトランシーバー ネイティブ PHY RX ブロックと HDMI シンクに接続します。
入力。

  1. HDMI シンクは、ポートを標準のビデオ ストリームにデコードし、それをクロック リカバリ コアに送信します。
  2. HDMI RX コアは、DCFIFO を介して HDMI TX コアに並列にループバックされるビデオ、補助、およびオーディオ データをデコードします。
  3. FMC ドーター カードの HDMI ソース ポートは、画像をモニターに送信します。

注記:
別の Intel FPGA 開発ボードを使用する場合は、デバイスの割り当てとピンの割り当てを変更する必要があります。 トランシーバーのアナログ設定は、インテル Arria 10 FPGA 開発キットおよび Bitec HDMI 2.0 ドーター カードに対してテストされています。 自分のボードの設定を変更できます。

表 49. オンボード プッシュ ボタンとユーザー LED の機能

押しボタン/LED 関数
cpu_resetn XNUMX 回押すと、システム リセットが実行されます。
ユーザー_pb[0] XNUMX 回押すと、HPD 信号が標準の HDMI ソースに切り替わります。
ユーザー_pb[1] • 長押しして、TX コアに DVI エンコード信号を送信するよう指示します。
• HDMI エンコード信号を送信するには放します。
ユーザー_pb[2] • 押し続けると、側波帯信号からの InfoFrame の送信を停止するように TX コアに指示します。
• 離すと、側波帯信号からの InfoFrame の送信が再開されます。
ユーザー LED[0] RX HDMI PLL ロック ステータス。
• 0 = ロック解除
• 1 = ロックされている
ユーザー LED[1] RX トランシーバーのレディ状態。
続き…
押しボタン/LED 関数
• 0 = 準備ができていません
• 1 = 準備完了
ユーザー LED[2] RX HDMI コア ロック ステータス。
• 0 = 少なくとも 1 つのチャネルがロック解除されている
• 1 = 3 つのチャネルすべてがロックされている
ユーザー LED[3] RXオーバーampリングステータス。
• 0 = ノンオーバーampled (インテル Arria 1,000 デバイスでデータレート > 10 Mbps)
• 1 = オーバーampled (データレート < インテル Arria 100 デバイスで 10 Mbps)
ユーザー LED[4] TX HDMI PLL ロック ステータス。
• 0 = ロック解除
• 1 = ロックされている
ユーザー LED[5] TX トランシーバーの準備完了状態。
• 0 = 準備ができていません
• 1 = 準備完了
ユーザー LED[6] TX トランシーバーの PLL ロック ステータス。
• 0 = ロック解除
• 1 = ロックされている
ユーザー LED[7] TXオーバーampリングステータス。
• 0 = ノンオーバーampled (インテル Arria 1,000 デバイスでデータレート > 10 Mbps)
• 1 = オーバーampled (データレート < インテル Arria 1,000 デバイスで 10 Mbps)

3.10. シミュレーション テストベンチ
シミュレーション テストベンチは、RX コアへの HDMI TX シリアル ループバックをシミュレートします。
注記:
このシミュレーション テストベンチは、Include I2C パラメーターが有効になっているデザインではサポートされていません。

3. HDMI 2.0 設計例ample (FRL = 0 をサポート)
683156 | 2022.12.27
図 28. HDMI Intel FPGA IP シミュレーション テストベンチのブロック図

Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 11

表 50. テストベンチのコンポーネント

成分 説明
ビデオTPG ビデオ テスト パターン ジェネレータ (TPG) はビデオ スティミュラスを提供します。
オーディオSampルゲン オーディオampファイルジェネレーターはオーディオを提供しますampル刺激。 ジェネレータは、オーディオ チャネルを介して送信されるインクリメント テスト データ パターンを生成します。
補助Sampルゲン aux sample generator は補助 s を提供しますampル刺激。 ジェネレータは、トランスミッタから送信される固定データを生成します。
CRCチェック このチェッカーは、TX トランシーバーのリカバリ クロック周波数が目的のデータ レートと一致するかどうかを検証します。
音声データチェック オーディオ データ チェックでは、インクリメント テスト データ パターンが受信され、正しくデコードされているかどうかを比較します。
補助データチェック AUX データ チェックでは、予期される AUX データが受信側で正しく受信およびデコードされているかどうかを比較します。

HDMI シミュレーション テストベンチは、次の検証テストを実行します。

HDMI機能 検証
ビデオデータ • テストベンチは、入力および出力ビデオの CRC チェックを実装します。
• 送信されたデータの CRC 値を、受信したビデオ データで計算された CRC と照合します。
• テストベンチは、レシーバから 4 つの安定した V-SYNC 信号を検出した後、チェックを実行します。
補助データ • AUXampファイルジェネレーターは、送信機から送信される固定データを生成します。
• 受信側では、ジェネレータは、予想される補助データが受信され、正しくデコードされているかどうかを比較します。
オーディオデータ • オーディオampファイル ジェネレーターは、オーディオ チャネルを介して送信されるインクリメント テスト データ パターンを生成します。
• 受信側では、オーディオ データ チェッカーがインクリメント テスト データ パターンが受信され、正しくデコードされているかどうかをチェックして比較します。

シミュレーションが成功すると、次のメッセージが表示されて終了します。
# SYMBOLS_PER_CLOCK = 2
#VIC = 4
# FRL_RATE = 0
# BPP = 0
# オーディオ周波数 (kHz) = 48
# オーディオ_チャンネル = 8
# シミュレーションパス

表 51. HDMI Intel FPGA IP 設計例ampサポートされているシミュレーター

シミュレーター ベリログHDL VHDL
ModelSim – インテル FPGA エディション/ ModelSim – インテル FPGA スターター エディション はい はい
VCS/VCSMX はい はい
リビエラPRO はい はい
エクセリウムパラレル はい いいえ

3.11. デザインのアップグレード
表 52. HDMI 設計例amp以前の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンとの互換性

設計例ampルバリアント インテル Quartus Prime プロ・エディション 20.3 へのアップグレード機能
HDMI 2.0 設計例ample (FRL = 0 をサポート) いいえ

互換性のない設計の場合amp次の手順を実行する必要があります。

  1. 新しいデザインを生成する examp既存のデザインと同じコンフィギュレーションを使用して、現在の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンのファイル。
  2. 全体のデザインを比較ampex というデザインの le ディレクトリamp以前の インテル Quartus Prime プロ・エディション・ソフトウェア・バージョンを使用して生成されたファイル。 見つかった変更を移植します。

HDCP オーバー HDMI 2.0/2.1 設計例ample

HDCP over HDMI ハードウェア設計例ampこのファイルは、HDCP 機能の機能を評価するのに役立ち、 Arria 10 デザインで機能を使用できるようにします。
注記:
HDCP 機能は インテル Quartus Prime プロ・エディション ソフトウェアには含まれていません。 HDCP 機能にアクセスするには、Intel にお問い合わせください。 https://www.intel.com/content/www/us/en/broadcast/products/programmable/applications/connectivity-solutions.html.

4.1. 高帯域幅のデジタル コンテンツ保護 (HDCP)
高帯域幅デジタル コンテンツ保護 (HDCP) は、ソースとディスプレイの間に安全な接続を作成するためのデジタル著作権保護の形式です。
インテルは独自のテクノロジーを作成し、デジタル コンテンツ プロテクション LLC グループによってライセンス供与されています。 HDCP は、オーディオ/ビデオ ストリームが送信機と受信機の間で暗号化され、違法なコピーから保護されるコピー防止方式です。
HDCP 機能は、HDCP 仕様バージョン 1.4 および HDCP 仕様バージョン 2.3 に準拠しています。
HDCP 1.4 および HDCP 2.3 IP は、ハードウェア コア ロジック内ですべての計算を実行し、暗号化された IP の外部から機密値 (秘密鍵やセッション キーなど) にアクセスすることはありません。

表 53. HDCP IP 機能

HDCP IP 機能
HDCP 1.4 IP • 認証交換
— マスターキーの計算 (Km)
— 乱数 An の生成
— セッション鍵 (Ks)、M0 および R0 の計算。
• リピータによる認証
— V と V' の計算と検証
• リンクの完全性検証
— フレーム キー (Ki)、Mi、Ri の計算。
続き…

インテルコーポレーション。 全著作権所有。 Intel、Intel ロゴ、およびその他の Intel マークは、Intel Corporation またはその子会社の商標です。 インテルは、インテルの標準保証に従って、FPGA および半導体製品の性能を現在の仕様に合わせて保証しますが、予告なしにいつでも製品およびサービスを変更する権利を留保します。 インテルは、インテルが書面で明示的に同意した場合を除き、ここに記載されている情報、製品、またはサービスの適用または使用から生じる一切の責任を負わないものとします。 インテルのお客様は、公開されている情報を信頼したり、製品やサービスを注文したりする前に、最新バージョンのデバイス仕様を入手することをお勧めします。
*その他の名称およびブランドは、一般に各社の所有物である場合があります。

ISO
9001:2015
登録済み

HDCP IP 機能
• hdcpBlockCipher、hdcpStreamCipher、hdcpRekeyCipher、および hdcpRngCipher を含むすべての暗号モード
• オリジナルの暗号化ステータス シグナリング (DVI) と強化された暗号化ステータス シグナリング (HDMI)
• 真の乱数ジェネレーター (TRNG)
— ハードウェアベースの完全デジタル実装および非決定論的乱数ジェネレーター
HDCP 2.3 IP • マスター キー (km)、セッション キー (ks)、ノンス (rn、riv) の生成
— NIST.SP800-90A 乱数生成に準拠
• 認証と鍵交換
— NIST.SP800-90A 乱数生成に準拠した rtx および rrx の乱数生成
— DCP 公開鍵 (kpubdcp) を使用した受信者証明書 (certrx) の署名検証
— 3072​​1 ビット RSASSA-PKCS#1.5 vXNUMX
— RSAES-OAEP (PKCS#1 v2.1) によるマスター キーの暗号化と復号化 (km)
— AES-CTR モードを使用した kd (dkey0、dkey1) の導出
— H と H' の計算と検証
— Ekh(km) と km (ペアリング) の計算
• リピータによる認証
— V と V' の計算と検証
— M と M' の計算と検証
• システム再生可能性 (SRM)
— kpubdcp を使用した SRM 署名の検証
— 3072​​1 ビット RSASSA-PKCS#1.5 vXNUMX
• セッション鍵交換
• Edkey(ks) と riv の生成と計算。
• AES-CTR モードを使用した dkey2 の導出
• 地域チェック
— L と L' の計算と検証
— ナンスの生成 (rn)
• データストリーム管理
— AES-CTR モード ベースのキー ストリーム生成
• 非対称暗号アルゴリズム
— モジュラス長が 1024 (kpubrx) および 3072 (kpubdcp) ビットの RSA
— モジュラス長が 512 (kprivrx) ビット、指数長が 512 (kprivrx) ビットの RSA-CRT (中国剰余定理)
• 低レベルの暗号機能
— 対称暗号アルゴリズム
• キーの長さが 128 ビットの AES-CTR モード
— ハッシュ、MGF、および HMAC アルゴリズム
• SHA256
•HMAC-SHA256
•MGF1-SHA256
— 真の乱数ジェネレーター (TRNG)
• NIST.SP800-90A 準拠
• ハードウェアベースの完全なデジタル実装と非決定論的乱数ジェネレーター

4.1.1. HDCP オーバー HDMI 設計例ampル アーキテクチャ
HDCP 機能は、HDMI またはその他の HDCP で保護されたデジタル インターフェイスを介して接続されたデバイス間でデータが送信されるときに、データを保護します。
HDCP で保護されたシステムには、次の XNUMX 種類のデバイスが含まれます。

4. HDCP over HDMI 2.0/2.1 設計例ample
683156 | 2022.12.27
• ソース (TX)
• シンク (RX)
• リピーター
このデザインexampファイルは、データを受け入れ、データを復号化してから再暗号化し、最後にデータを再送信するリピータ デバイスの HDCP システムを示しています。 リピーターにはHDMI入力と出力の両方があります。 FIFO バッファをインスタンス化して、HDMI シンクとソースの間で直接 HDMI ビデオ ストリーム パススルーを実行します。 FIFO バッファを Video and Image Processing (VIP) Suite IP コアに置き換えることで、ビデオをより高い解像度のフォーマットに変換するなど、一部の信号処理を実行する場合があります。

図 29. HDCP over HDMI 設計例ampブロック図

Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 12

デザインexのアーキテクチャに関する次の説明ampHDCP over HDMI設計exに対応ampルブロックダイアグラム。 SUPPORT FRL = 1 または
サポート HDCP KEY MANAGEMENT = 1、デザイン exampファイル階層は 29 ページの図 95 とは少し異なりますが、基礎となる HDCP 機能はそのままです。
同じ。

  1. HDCP1x および HDCP2x は、HDMI Intel FPGA IP パラメーター エディターから利用できる IP です。 パラメーター エディターで HDMI IP を構成すると、サブシステムの一部として HDCP1x または HDCP2x または両方の IP を有効にして含めることができます。 両方の HDCP IP を有効にすると、HDMI IP は、HDCP2x IP と HDCP1x IP がバックツーバックで接続されるカスケード トポロジで構成されます。
    • HDMI TX の HDCP 出力インターフェイスは、暗号化されていないオーディオ ビデオ データを送信します。
    • 暗号化されていないデータは、アクティブ HDCP ブロックによって暗号化され、HDCP Ingress インターフェイスを介して HDMI TX に送り返され、リンクを介して送信されます。
    • 認証マスター コントローラーとしての CPU サブシステムは、常に HDCP TX IP の XNUMX つだけがアクティブになり、もう XNUMX つがパッシブになるようにします。
    • 同様に、HDCP RX も外部 HDCP TX からリンクを介して受信したデータを復号化します。
  2. デジタル コンテンツ保護 (DCP) 発行のプロダクション キーを使用して HDCP IP をプログラムする必要があります。 次のキーをロードします。
    表 54. DCP 発行のプロダクション キー
    ハードウェア TX / RX キー
    HDCP2x TX 16 バイト: グローバル定数 (lc128)
    RX • 16 バイト (TX と同じ): グローバル定数 (lc128)
    • 320 バイト: RSA 秘密鍵 (kprivrx)
    • 522 バイト: RSA 公開鍵証明書 (certrx)
    HDCP1x TX • 5 バイト: TX キー選択ベクトル (Aksv)
    • 280 バイト: TX プライベート デバイス キー (Akey)
    RX • 5 バイト: RX キー選択ベクトル (Bksv)
    • 280 バイト: RX プライベート デバイス キー (Bkey)

    デザインの元ampファイルは、主要なメモリを単純なデュアル ポート、デュアル クロック同期 RAM として実装します。 HDCP2x TX のような小さなキー サイズの場合、IP は通常のロジックでレジスタを使用してキー メモリを実装します。
    注: Intel は HDCP プロダクション キーをデザイン ex で提供していません。ample または Intel FPGA IP は、いかなる状況下でも使用できます。 HDCP IP またはデザイン ex を使用するにはampつまり、HDCP の採用者になり、デジタル コンテンツ保護 LLC (DCP) から直接プロダクション キーを取得する必要があります。
    デザイン ex を実行するにはampル、キーメモリを編集するか files コンパイル時にプロダクション キーを含めるか、論理ブロックを実装して、外部ストレージ デバイスからプロダクション キーを安全に読み取り、実行時にキー メモリに書き込みます。

  3. HDCP2x IP に実装された暗号化機能は、最大 200 MHz の任意の周波数でクロックできます。 このクロックの周波数によって、
    HDCP2x 認証が動作します。 Nios II プロセッサに使用される 100 MHz クロックを共有することを選択できますが、認証レイテンシは 200 MHz クロックを使用する場合に比べて XNUMX 倍になります。
  4. HDCP TX と HDCP RX の間で交換する必要がある値は、HDCP の HDMI DDC インターフェイス (I2 C シリアル インターフェイス) を介して通信されます。
    保護されたインターフェース。 HDCP RX は、サポートするリンクごとに I2C バス上に論理デバイスを提示する必要があります。 I2C スレーブは、デバイス アドレスが 0x74 の HDCP ポート用に複製されます。 HDCP2x および HDCP1x RX IP の両方の HDCP レジスター ポート (Avalon-MM) を駆動します。
  5. HDMI TX は I2.0C マスターを使用して RX から EDID を読み取り、HDMI 2 の動作に必要な SCDC データを RX に転送します。 Nios II プロセッサによって駆動される同じ I2C マスターは、TX と RX の間で HDCP メッセージを転送するためにも使用されます。 IXNUMXC マスターは CPU サブシステムに組み込まれています。
  6. Nios II プロセッサは、認証プロトコルでマスターとして機能し、HDCP2x および HDCP1x TX の両方の制御およびステータス レジスタ (Avalon-MM) を駆動します。
    IP。 ソフトウェア ドライバーは、証明書署名の検証、マスター キー交換、ローカリティ チェック、セッション キー交換、ペアリング、リンク整合性チェック (HDCP1x)、リピーターによる認証 (トポロジー情報の伝達やストリーム管理情報の伝達など) を含む認証プロトコル ステート マシンを実装します。 ソフトウェア ドライバは、認証プロトコルに必要な暗号化機能を実装していません。 代わりに、HDCP IP ハードウェアがすべての暗号化機能を実装し、機密値にアクセスできないようにします。
    7. トポロジー情報のアップストリームへの伝播が必要な真のリピーターのデモでは、Nios II プロセッサーが HDCP2x と HDCP1x RX IP の両方のリピーター メッセージ ポート (Avalon-MM) を駆動します。 Nios II プロセッサは、接続されたダウンストリームが HDCP 対応でないことを検出した場合、またはダウンストリームが接続されていない場合、RX REPEATER ビットを 0 にクリアします。 ダウンストリーム接続がなければ、RX システムはリピータではなくエンドポイント レシーバになります。 逆に、Nios II プロセッサは、ダウンストリームが HDCP 対応であることを検出すると、RX REPEATER ビットを 1 に設定します。

4.2. Nios II プロセッサ ソフトウェア フロー
Nios II ソフトウェア フローチャートには、HDMI アプリケーションを介した HDCP 認証制御が含まれています。
図 30. Nios II プロセッサー ソフトウェアのフローチャート

Intel HDMI Arria 10 FPGA IP デザイン例ample - ブロック図 13

  1. Nios II ソフトウェアは、HDMI TX PLL、TX トランシーバー PHY、I2C マスター、および外部 TI リタイマーを初期化およびリセットします。
  2. Nios II ソフトウェアは、RX レート検出回路からの定期的なレート検出有効信号をポーリングして、ビデオ解像度が変更されたかどうか、および TX の再構成が必要かどうかを判断します。 また、ソフトウェアは TX ホットプラグ検出信号をポーリングして、TX ホットプラグ イベントが発生したかどうかを判断します。
  3. RX レート検出回路から有効な信号を受信すると、Nios II ソフトウェアは HDMI RX から SCDC とクロック深度の値を読み取り、検出されたレートに基づいてクロック周波数帯域を取得して、HDMI TX PLL とトランシーバー PHY の再構成が必要かどうかを判断します。 TX の再構成が必要な場合、Nios II ソフトウェアは、I2C マスターに SCDC 値を外部 RX に送信するように命令します。 次に、HDMI TX PLL および TX トランシーバーを再構成するように命令します。
    PHY、その後にデバイスの再キャリブレーション、およびリセット シーケンスが続きます。 レートが変わらない場合、TX の再構成も HDCP の再認証も必要ありません。
  4. TX ホットプラグ イベントが発生すると、Nios II ソフトウェアは I2C マスターに SCDC 値を外部 RX に送信するように命令し、RX から EDID を読み取ります。
    内部 EDID RAM を更新します。 その後、ソフトウェアは EDID 情報をアップストリームに伝達します。
  5. Nios II ソフトウェアは、I2C マスターに外部 RX からオフセット 0x50 を読み取り、ダウンストリームが HDCP 対応かどうかを検出するように命令することによって、HDCP アクティビティを開始します。
    さもないと:
    • 返された HDCP2Version 値が 1 の場合、ダウンストリームは HDCP2xcapable です。
    • 0x50 読み取り全体の戻り値が 0 の場合、ダウンストリームは HDCP1x 対応です。
    • 0x50 読み取り全体の戻り値が 1 の場合、ダウンストリームは HDCP 対応ではないか、非アクティブです。
    • ダウンストリームが以前は HDCP 対応または非アクティブであったが、現在は HDCP 対応である場合、ソフトウェアはリピータ アップストリーム (RX) の REPEATER ビットを 1 に設定して、RX が現在リピータであることを示します。
    • ダウンストリームが以前は HDCP に対応していたが、現在は HDCP に対応していないか非アクティブである場合、ソフトウェアは REPEATER ビットを 0 に設定して、RX がエンドポイント レシーバーであることを示します。
  6. ソフトウェアは、RX 証明書の署名検証、マスター キー交換、ローカリティ チェック、セッション キー交換、ペアリング、トポロジー情報の伝達などのリピーターによる認証を含む HDCP2x 認証プロトコルを開始します。
  7. 認証済み状態の場合、Nios II ソフトウェアは I2C マスターに外部 RX から RxStatus レジスタをポーリングするように命令し、ソフトウェアが REAUTH_REQ ビットが設定されていることを検出すると、再認証を開始し、TX 暗号化を無効にします。
  8. ダウンストリームがリピータで、RxStatus レジスタの READY ビットが 1 に設定されている場合、これは通常、ダウンストリーム トポロジが変更されたことを示します。 そのため、Nios II ソフトウェアは I2C マスターに、ダウンストリームから ReceiverID_List を読み取り、リストを検証するように命令します。 リストが有効で、トポロジ エラーが検出されない場合、ソフトウェアはコンテンツ ストリーム管理モジュールに進みます。 それ以外の場合は、再認証を開始し、TX 暗号化を無効にします。
  9. Nios II ソフトウェアは、ReceiverID_List と RxInfo の値を準備し、リピーター アップストリーム (RX) の Avalon-MM Repeater Message ポートに書き込みます。 次に、RX はリストを外部 TX (アップストリーム) に伝搬します。
  10. これで認証は完了です。 ソフトウェアは TX 暗号化を有効にします。
  11. ソフトウェアは、キー交換とリピータとの認証を含む HDCP1x 認証プロトコルを開始します。
  12. Nios II ソフトウェアは、外部 RX (ダウンストリーム) と HDCP1x TX からそれぞれ Ri' と Ri を読み取って比較することにより、リンクの整合性チェックを実行します。 値が
    一致しない場合、これは同期が失われたことを示し、ソフトウェアは再認証を開始し、TX 暗号化を無効にします。
  13. ダウンストリームがリピータで、Bcaps レジスタの READY ビットが 1 に設定されている場合、これは通常、ダウンストリーム トポロジが変更されたことを示します。 そのため、Nios II ソフトウェアは I2C マスターに、ダウンストリームから KSV リスト値を読み取り、リストを検証するように命令します。 リストが有効で、トポロジー・エラーが検出されない場合、ソフトウェアは KSV リストと Bstatus 値を準備し、リピーター・アップストリーム (RX) の Avalon-MM Repeater Message ポートに書き込みます。 次に、RX はリストを外部 TX (アップストリーム) に伝搬します。 それ以外の場合は、再認証を開始し、TX 暗号化を無効にします。

4.3. デザイン ウォークスルー
HDCP over HDMI デザイン例のセットアップと実行ample は XNUMX つのtages。

  1. ハードウェアをセットアップします。
  2. デザインを生成します。
  3. HDCP キー メモリを編集する files HDCP プロダクション キーを含めます。
    a. プレーンな HDCP プロダクション キーを FPGA に保存 (HDCP キー管理をサポート = 0)
    b. 暗号化された HDCP プロダクション キーを外部フラッシュ メモリまたは EEPROM に保存 (HDCP キー管理をサポート = 1)
  4. デザインをコンパイルします。
  5. View 結果。

4.3.1. ハードウェアのセットアップ
最初のstagデモンストレーションのeは、ハードウェアをセットアップすることです。
SUPPORT FRL = 0 の場合、次の手順に従ってデモ用のハードウェアをセットアップします。

  1. Bitec HDMI 2.0 FMC ドーター カード (リビジョン 11) を FMC ポート B で Arria 10 GX 開発キットに接続します。
  2. USB ケーブルを使用して Arria 10 GX 開発キットを PC に接続します。
  3. HDMI ケーブルを Bitec HDMI 2.0 FMC ドーター カードの HDMI RX コネクタから、HDMI 出力のあるグラフィック カードなどの HDCP 対応の HDMI デバイスに接続します。
  4. 別の HDMI ケーブルを Bitec HDMI 2.0 FMC ドーター カードの HDMI TX コネクタから、HDMI 入力のあるテレビなどの HDCP 対応の HDMI デバイスに接続します。

SUPPORT FRL = 1 の場合、次の手順に従ってハードウェアをセットアップします。 デモンストレーション:

  1. Bitec HDMI 2.1 FMC ドーター カード (リビジョン 9) を FMC ポート B で Arria 10 GX 開発キットに接続します。
  2. USB ケーブルを使用して Arria 10 GX 開発キットを PC に接続します。
  3. HDMI 2.1 カテゴリ 3 ケーブルを、Bitec HDMI 2.1 FMC ドーター カードの HDMI RX コネクタから、Quantum Data 2.1​​980 48G Generator などの HDCP 対応 HDMI XNUMX ソースに接続します。
  4. 別の HDMI 2.1 カテゴリ 3 ケーブルを、Bitec HDMI 2.1 FMC ドーター カードの HDMI TX コネクタから、次のような HDCP 対応の HDMI 2.1 シンクに接続します。
    量子データ 980 48G アナライザー。

4.3.2. 設計を生成する
ハードウェアをセットアップしたら、デザインを生成する必要があります。
開始する前に、インテル Quartus Prime プロ・エディション ソフトウェアに HDCP 機能をインストールしてください。

  1. Tools ➤ IP Catalog をクリックし、Intel Arria 10 をターゲットデバイスファミリとして選択します。
    注記: HDCP設計例ampファイルは、 インテル Arria 10 および インテル Stratix® 10 デバイスのみをサポートします。
  2. IP カタログで、HDMI Intel FPGA IP を見つけてダブルクリックします。 [新しい IP バリエーション] ウィンドウが表示されます。
  3. カスタム IP バリエーションの最上位の名前を指定します。 Parameter Editor は、IP バリエーション設定を file 命名された.qsys または.ip。
  4. [OK] をクリックします。 パラメータエディタが表示されます。
  5. [IP] タブで、TX と RX の両方に必要なパラメーターを構成します。
  6. Support HDCP 1.4 または Support HDCP 2.3 パラメーターをオンにして、HDCP デザイン ex を生成します。ampル。
  7. HDCP プロダクション キーを外部フラッシュ メモリまたは EEPROM に暗号化された形式で保存する場合は、Support HDCP Key Management パラメーターをオンにします。 それ以外の場合は、Support HDCP Key Management パラメーターをオフにして、HDCP プロダクション キーをプレーン形式で FPGA に保存します。
  8. 設計例についてample タブで、Arria 10 HDMI RX-TX 再送信を選択します。
  9. [合成] を選択して、ハードウェア デザイン ex を生成します。ampル。
  10. 生成用 File フォーマット、Verilog または VHDL を選択します。
  11. ターゲット開発キットには、Arria 10 GX FPGA Development Kit を選択します。 開発キットを選択すると、ターゲット デバイス (手順 4 で選択) が開発キットのデバイスと一致するように変更されます。 Arria 10 GX FPGA 開発キットの場合、デフォルト デバイスは 10AX115S2F45I1SG です。
  12. [Ex を生成] をクリックしますampプロジェクトを生成する le Design files およびソフトウェアの Executable and Linking Format (ELF) プログラミング file.

4.3.3. HDCP プロダクション キーを含める
4.3.3.1. プレーンな HDCP プロダクション キーを FPGA に保存 (HDCP キーをサポート) 管理者 = 0)
デザインを生成したら、HDCP キー メモリを編集します。 fileプロダクション キーを含めます。
プロダクション キーを含めるには、次の手順に従います。

  1. 次のキー メモリを見つけます。 fileの/rtl/hdcp/ ディレクトリ:
    • hdcp2x_tx_kmem.v
    • hdcp2x_rx_kmem.v
    • hdcp1x_tx_kmem.v
    • hdcp1x_rx_kmem.v
  2. hdcp2x_rx_kmem.v を開く file 例に示すように、受信者の公開証明書、受信者の秘密鍵、およびグローバル定数の定義済みのファクシミリ キー R1 を見つけます。amp下記をご覧ください。
    図 31. 受信者の公開証明書用のファクシミリ キー R1 のワイヤー アレイ
    Intel HDMI Arria 10 FPGA IP デザイン例ample - 公開証明書図 32. RX 秘密鍵およびグローバル定数用のファクシミリ鍵 R1 のワイヤー配列
    Intel HDMI Arria 10 FPGA IP デザイン例ample - グローバル定数
  3. プロダクション キーのプレースホルダーを見つけて、ビッグ エンディアン形式のそれぞれのワイヤ アレイで独自のプロダクション キーに置き換えます。
    図 33. HDCP プロダクション キーのワイヤー アレイ (プレースホルダー)
    Intel HDMI Arria 10 FPGA IP デザイン例ample - グローバル定数 1
  4. 他のすべてのキー メモリについて、手順 3 を繰り返します。 file秒。 すべてのキー メモリにプロダクション キーを含め終わったら files、設計 ex で USE_FACSIMILE パラメータが 0 に設定されていることを確認します。ampトップレベル file (a10_hdmi2_demo.v)

4.3.3.1.1. DCP キーからの HDCP キー マッピング Files
次のセクションでは、DCP キーに格納されている HDCP プロダクション キーのマッピングについて説明します。 files を HDCP kmem のワイヤ アレイに挿入します。 files.
4.3.3.1.2. hdcp1x_tx_kmem.v および hdcp1x_rx_kmem.v files
hdcp1x_tx_kmem.v および hdcp1x_rx_kmem.v の場合 files

  • この2つ fileは同じ形式を共有しています。
  • 正しい HDCP1 TX DCP キーを識別するには file hdcp1x_tx_kmem.v の最初の 4 バイトが file 「0x01、0x00、0x00、0x00」です。
  • 正しい HDCP1 RX DCP キーを特定するには file hdcp1x_rx_kmem.v の最初の 4 バイトが file 「0x02、0x00、0x00、0x00」です。
  • DCP キー内のキー files はリトルエンディアン形式です。 kmemで使用するには files、ビッグエンディアンに変換する必要があります。

図 34. HDCP1 TX DCP キーからのバイト マッピング file hdcp1x_tx_kmem.v に

Intel HDMI Arria 10 FPGA IP デザイン例ample - グローバル定数 2

注記:
バイト番号は以下の形式で表示されます。

  • キー サイズ (バイト単位) * キー番号 + 現在の行のバイト数 + 定数オフセット + 行サイズ (バイト単位) * 行番号。
  • 308*n は、各キー セットが 308 バイトであることを示します。
  • 7*y は、各行が 7 バイトであることを示します。

図 35. HDCP1 TX DCP キー file ジャンク値で埋める

Intel HDMI Arria 10 FPGA IP デザイン例ample - ジャンク値

図 36. hdcp1x_tx_kmem.v のワイヤー配列
Examphdcp1x_tx_kmem.v のファイルと、そのワイヤー配列が ex にどのようにマップされるかampHDCP1 TX DCP キーのファイル file 35 ページの図 105 を参照してください。

Intel HDMI Arria 10 FPGA IP デザイン例ample - グローバル定数 3

4.3.3.1.3。 hdcp2x_rx_kmem.v file
hdcp2x_rx_kmem.v の場合 file

  • 正しい HDCP2 RX DCP キーを特定するには file hdcp2x_rx_kmem.v の最初の 4 バイトが file 「0x00、0x00、0x00、0x02」です。
  • DCP キー内のキー files はリトルエンディアン形式です。

図 37. HDCP2 RX DCP キーからのバイト マッピング file hdcp2x_rx_kmem.v に
以下の図は、HDCP2 RX DCP キーからの正確なバイト マッピングを示しています。 file hdcp2x_rx_kmem.v に追加します。

Intel HDMI Arria 10 FPGA IP デザイン例ample - グローバル定数 4

注記:
バイト番号は以下の形式で表示されます。

  • キー サイズ (バイト単位) * キー番号 + 現在の行のバイト数 + 定数オフセット + 行サイズ (バイト単位) * 行番号。
  • 862*n は、各キー セットが 862 バイトであることを示します。
  • 16*y は、各行が 16 バイトであることを示します。 ROW 32 が 10 バイトしかない cert_rx_prod には例外があります。

図 38. HDCP2 RX DCP キー file ジャンク値で埋める

Intel HDMI Arria 10 FPGA IP デザイン例ample - 公開証明書 1

図 39. hdcp2x_rx_kmem.v のワイヤー配列
この図は、ex への hdcp2x_rx_kmem.v (cert_rx_prod、kprivrx_qinv_prod、および lc128_prod) マップのワイヤー配列を示しています。ampHDCP2 RX DCP キーのファイル file in
38ページの図108。

Intel HDMI Arria 10 FPGA IP デザイン例ample - 公開証明書 2

4.3.3.1.4。 hdcp2x_tx_kmem.v file
hdcp2x_tx_kmem.v の場合 file:

  • 正しい HDCP2 TX DCP キーを識別するには file hdcp2x_tx_kmem.v の最初の 4 バイトが file 「0x00、0x00、0x00、0x01」です。
  • DCP キー内のキー files はリトルエンディアン形式です。
  • または、hdcp128x_rx_kmem.v の lc2_prod を hdcp2x_tx_kmem.v に直接適用することもできます。 キーは同じ値を共有します。

図 40. hdcp2x_tx_kmem.v のワイヤー配列
この図は、HDCP2 TX DCP キーからの正確なバイト マッピングを示しています。 file hdcp2x_tx_kmem.v に保存します。

Intel HDMI Arria 10 FPGA IP デザイン例ample - 公開証明書 3

4.3.3.2. 暗号化された HDCP プロダクション キーを外部フラッシュ メモリに保存するか、 EEPROM (HDCP キー管理のサポート = 1)
図 41. ハイレベルオーバーview HDCP キー管理の

Intel HDMI Arria 10 FPGA IP デザイン例ample - 公開証明書 4

[HDCP キー管理のサポート] パラメーターがオンになっている場合、インテルが提供するキー暗号化ソフトウェア ユーティリティ (KEYENC) とキー プログラマー設計を使用して、HDCP プロダクション キー暗号化の制御を保持します。 HDCP プロダクション キーと 128 ビット HDCP プロテクション キーを提供する必要があります。 HDCP保護キー
HDCP プロダクション キーを暗号化し、そのキーを外部フラッシュ メモリに保存します (例:ample、EEPROM)を HDMI ドーター カードに搭載します。
[HDCP キー管理のサポート] パラメータをオンにすると、キー復号化機能 (KEYDEC) が HDCP IP コアで使用できるようになります。 同じ HDCP 保護
キーは、処理エンジンの実行時に HDCP プロダクション キーを取得するために KEYDEC で使用する必要があります。 KEYENC および KEYDEC は、Atmel AT24CS32 32 K ビット シリアル EEPROM、Atmel AT24C16A 16 K ビット シリアル EEPROM、および少なくとも 2 K ビットの ROM サイズを持つ互換性のある I16C EEPROM デバイスをサポートします。

注記:

  1. HDMI 2.0 FMC ドーター カード リビジョン 11 の場合は、ドーター カードの EEPROM が Atmel AT24CS32 であることを確認してください。 Bitec HDMI 2.0 FMC ドーター カード リビジョン 11 では、XNUMX つの異なるサイズの EEPROM が使用されています。
  2. 以前に KEYENC を使用して HDCP プロダクション キーを暗号化し、バージョン 21.2 以前で HDCP キー管理のサポートをオンにしていた場合は、KEYENC ソフトウェア ユーティリティを使用して HDCP プロダクション キーを再暗号化し、バージョン 21.3 から HDCP IP を再生成する必要があります。
    以降。

4.3.3.2.1. インテル キーエンク
KEYENC は、インテルが提供する 128 ビット HDCP 保護キーを使用して HDCP プロダクション キーを暗号化するために使用するコマンド ライン ソフトウェア ユーティリティです。 KEYENC は、暗号化された HDCP プロダクション キーを XNUMX 進数、ビン、またはヘッダーで出力します。 file フォーマット。 KEYENC は mif も生成します file 提供された 128 ビット HDCP 保護キーが含まれています。 キーデック
mifが必要です file.

システム要件:

  1. Windows 86 OSを搭載したx64 10ビットマシン
  2. Visual Studio 2019(x64) 用の Visual C++ 再頒布可能パッケージ

注記:
Microsoft Visual C++ for VS 2019 をインストールする必要があります。Visual C++ 再頒布可能パッケージがインストールされているかどうかは、Windows ➤ コントロール パネル ➤ プログラムと機能から確認できます。 Microsoft Visual C++ がインストールされている場合は、Visual C++ xxxx が表示されます。
再頒布可能 (x64)。 それ以外の場合は、Visual C++ をダウンロードしてインストールできます。
Microsoft から再配布可能 webサイト。 ダウンロード リンクについては、関連情報を参照してください。

表 55. KEYENC コマンド ライン オプション

コマンドラインオプション 議論/説明
-k <HDCP protection key file>
文章 file 128 進数の XNUMX ビット HDCP 保護キーのみが含まれています。 元ample: f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
-hdcp1tx <HDCP 1.4 TX production keys file>
HDCP 1.4 トランスミッターのプロダクション キー file DCP から (.bin file)
-hdcp1rx <HDCP 1.4 RX production keys file>
HDCP 1.4 レシーバーのプロダクション キー file DCP から (.bin file)
-hdcp2tx <HDCP 2.3 TX production keys file>
HDCP 2.3 トランスミッターのプロダクション キー file DCP から (.bin file)
-hdcp2rx <HDCP 2.3 RX production keys file>
HDCP 2.3 レシーバーのプロダクション キー file DCP から (.bin file)
-hdcp1txkeys 選択した入力のキー範囲を指定します (.bin) files
-hdcp1txkeys|hdcp1rxkeys|hdcp2rxkeys nm ここで
n = キーの開始 (1 または >1) m = キーの終了 (n または >n) 例amp上:
HDCP 1 TX、HDCP 1000 RX、および HCDP のそれぞれから 1.4 ~ 1.4 のキーを選択します
2.3 RX プロダクション キー file.
「-hdcp1txkeys 1 ~ 1000 -hdcp1rxkeys 1 ~ 1000 -hdcp2rxkeys 1 ~ 1000」
-hdcp1rxkeys
-hdcp2rxkeys
続き…
コマンドラインオプション 議論/説明
注記: 1. HDCP プロダクション キーを使用していない場合 fileの場合、HDCP キー範囲は必要ありません。 コマンドラインで引数を使用しない場合、デフォルトのキー範囲は 0 です。
2. HDCP プロダクション キーのキーの別のインデックスを選択することもできます file。 ただし、キーの数は選択したオプションと一致する必要があります。
Example: 別の 100 キーを選択します
HDCP 100 TX プロダクション キーから最初の 1.4 キーを選択 file 「-hdcp1txkeys 1 ~ 100」
HDCP 300 RX プロダクション キー用にキー 400 ~ 1.4 を選択します file 「-hdcp1rxkeys 300-400」
HDCP 600 RX プロダクション キー用にキー 700 ~ 2.3 を選択します file 「-hdcp2rxkeys 600-700」
-o 出力 file フォーマット。 デフォルトは XNUMX 進数です file.
暗号化された HDCP プロダクション キーをバイナリで生成 file 形式: -o bin 暗号化された HDCP プロダクション キーを XNUMX 進数で生成します file 形式: -o hex ヘッダーに暗号化された HDCP プロダクション キーを生成します。 file 形式: -ああ
–チェックキー 入力で使用可能なキーの数を出力します fileNS。 元amp上:
keyenc.exe -hdcp1tx file> -hdcp1rx
<HDCP 1.4 RX production keys file> -hdcp2tx file> -hdcp2rx file> –チェックキー
注記: 上記の例で説明したように、コマンドラインの最後にパラメータ –check-keys を使用します。ampル。
–バージョン KEYENC バージョン番号を出力します

暗号化する HDCP 1.4 および/または HDCP 2.3 プロダクション キーを選択して選択できます。 元の場合ampファイル、HDCP 2.3 RX プロダクション キーのみを使用して暗号化するには、-hdcp2rx のみを使用します
<HDCP 2.3 RX production keys file> -hdcp2rxkeys コマンドラインパラメータで。
表 56. KEYENC の一般的なエラー メッセージのガイドライン

エラーメッセージ ガイドライン
エラー: HDCP プロテクション キー file ない コマンドラインパラメータ -k がありません file>
エラー: キーは 32 の 0 進数である必要があります (例: f1f2f3f4f5f6f7f8f9fXNUMXfafbfcfdfeff) HDCPプロテクションキー file 32 桁の XNUMX 進数の HDCP 保護キーのみを含める必要があります。
エラー: キー範囲を指定してください 指定された入力 HDCP プロダクション キーのキー範囲が指定されていません file.
エラー: 無効なキー範囲 -hdcp1txkeys、-hdcp1rxkeys、または -hdcp2rxkeys に指定されたキー範囲が正しくありません。
エラー: 作成できませんFile名前> keyenc.exe が実行されているので、フォルダーのアクセス許可を確認してください。
エラー: -hdcp1txkeys 入力が無効です HDCP 1.4 TX プロダクション キーの入力キー範囲形式が無効です。 正しい形式は「-hdcp1txkeys nm」です。ここで、n >= 1、m >= n
エラー: -hdcp1rxkeys 入力が無効です HDCP 1.4 RX プロダクション キーの入力キー範囲形式が無効です。 正しい形式は「-hdcp1rxkeys nm」です。ここで、n >= 1、m >= n
エラー: -hdcp2rxkeys 入力が無効です HDCP 2.3 RX プロダクション キーの入力キー範囲形式が無効です。 正しい形式は「-hdcp2rxkeys nm」です。ここで、n >= 1、m >= n
続き…
エラーメッセージ ガイドライン
エラー: 無効です file <file名前> 無効な HDCP プロダクション キー file.
エラー: file -o オプションに型がありません –o のコマンドラインパラメータが欠落しています。
エラー: 無効です file名前 -file名前> <filename> は無効です。有効な名前を使用してください file特殊文字を含まない名前。

単一の EEPROM の単一キーを暗号化する
Windows コマンド プロンプトから次のコマンド ラインを実行して、HDCP 1.4 TX、HDCP 1.4 RX、HDCP 2.3 TX、および HDCP 2.3 RX の単一キーを出力で暗号化します。 file ヘッダーの形式 file 単一 EEPROM の場合:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1-1 -hdcp1rxkeys 1-1 -hdcp2rxkeys 1-1 -oh

N 個の EEPROM の N 個のキーを暗号化する
Windows コマンド プロンプトから次のコマンド ラインを実行して、HDCP 1 TX、HDCP 1.4 RX、HDCP 1.4 TX、および HDCP 2.3 RX の N キー (キー 2.3 から開始) を出力とともに暗号化します。 file XNUMX 進数の形式 file N EEPROM の場合:
keyenc.exe -k file> -hdcp1tx file> -hdcp1rx file> -hdcp2tx file> -hdcp2rx file> -hdcp1txkeys 1 -hdcp1rxkeys 1- -hdcp2rxkeys 1- -o hex N は 1 以上で、すべてのオプションに一致する必要があります。

関連情報
Visual Studio 2019 用 Microsoft Visual C++
ダウンロード用の Microsoft Visual C++ x86 再頒布可能パッケージ (vc_redist.x86.exe) を提供します。 リンクが変更された場合、インテルは Microsoft 検索エンジンで「Visual C++ 再頒布可能ファイル」を検索することをお勧めします。

4.3.3.2.2。 キープログラマー
暗号化された HDCP プロダクション キーを EEPROM にプログラムするには、次の手順に従います。

  1. 主要なプログラマ設計をコピーする file次のパスから作業ディレクトリに移動します。 /hdcp2x/hw_demo/key_programmer/
  2. ソフトウェアヘッダーをコピーします file (hdcp_key .h) KEYENC ソフトウェア ユーティリティ (113 ページの「単一 EEPROM の単一キーの暗号化」セクション) から生成されたファイルを software/key_programmer_src/ ディレクトリに保存し、名前を hdcp_key.h に変更します。
  3. ./runall.tcl を実行します。 このスクリプトは次のコマンドを実行します。
    • IPカタログの生成 files
    • プラットフォーム デザイナー システムの生成
    • インテル Quartus Primeプロジェクトの作成
    • ソフトウェアワークスペースを作成し、ソフトウェアを構築する
    • フルコンパイルを実行する
  4. ソフトウェアオブジェクトをダウンロードする File (.sof) を FPGA に送信して、暗号化された HDCP プロダクション キーを EEPROM にプログラムします。

Stratix 10 HDMI RX-TX 再送信デザイン ex を生成ampSupport HDCP 2.3 および Support HDCP 1.4 パラメータをオンにしてファイルを作成し、次の手順に従って HDCP 保護キーを含めます。

  • mifをコピーする file KEYENC ソフトウェア ユーティリティ (113 ページの「単一 EEPROM の単一キーの暗号化」セクション) から生成された (hdcp_kmem.mif) /quartus/hdcp/ ディレクトリ。

4.3.4. デザインをコンパイルする
独自のプレーン HDCP プロダクション キーを FPGA に組み込むか、暗号化された HDCP プロダクション キーを EEPROM にプログラムした後、デザインをコンパイルできるようになります。

  1. インテル Quartus Prime プロ・エディション ソフトウェアを起動して開きます/quartus/a10_hdmi2_demo.qpf。
  2. [処理] ➤ [コンパイルの開始] をクリックします。

4.3.5. View 結果
デモンストレーションの最後には、次のことができるようになります。 view HDCPenabled HDMI 外部シンクでの結果。
に view デモンストレーションの結果を確認するには、次の手順に従います。

  1. インテル FPGA ボードの電源を入れます。
  2. ディレクトリを次のように変更します/クォーツス/。
  3. Nios II コマンド シェルで次のコマンドを入力して、ソフトウェア オブジェクトをダウンロードします。 File (.sof) を FPGA に転送します。 nios2-configure-sof 出力_files/ .sof
  4. HDCP 対応の HDMI 外部ソースとシンクの電源を入れます (まだの場合)。 HDMI 外部シンクには、HDMI 外部ソースの出力が表示されます。

4.3.5.1. 押しボタンと LED の機能
ボード上の押しボタンと LED 機能を使用して、デモを制御します。

表 57. 押しボタンと LED インジケータ (SUPPORT FRL = 0)

押しボタン/LED 機能
cpu_resetn XNUMX 回押すと、システム リセットが実行されます。
ユーザー_pb[0] XNUMX 回押すと、HPD 信号が標準の HDMI ソースに切り替わります。
ユーザー_pb[1] • 長押しすると、TX コアに DVI エンコード信号の送信を指示します。
• 放すと HDMI エンコード信号が送信されます。
• 受信ビデオが 8 bpc RGB カラースペースであることを確認してください。
ユーザー_pb[2] • 長押しすると、側波帯信号からの InfoFrame の送信を停止するように TX コアに指示されます。
• 離すと、側波帯信号からの InfoFrame の送信が再開されます。
ユーザー主導[0] RX HDMI PLL ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
 ユーザー主導[1] RX HDMIコアロックステータス
• 0: 少なくとも 1 つのチャネルがロック解除されています
• 1: 3 つのチャネルすべてがロックされています
ユーザー主導[2] RX HDCP1x IP 復号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
 ユーザー主導[3] RX HDCP2x IP 復号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
 ユーザー主導[4] TX HDMI PLL ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
 ユーザー主導[5] TX トランシーバーの PLL ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
 ユーザー主導[6] TX HDCP1x IP 暗号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
 ユーザー主導[7] TX HDCP2x IP 暗号化ステータス。
• 0: 非アクティブ
• 1: アクティブ

表 58. 押しボタンと LED インジケータ (SUPPORT FRL = 1)

押しボタン/LED 機能
cpu_resetn XNUMX 回押すと、システム リセットが実行されます。
user_dipsw パススルー モードを切り替えるユーザー定義の DIP スイッチ。
• OFF (デフォルトの位置) = パススルー
FPGA の HDMI RX は、外部シンクから EDID を取得し、接続先の外部ソースに提示します。
• ON = Nios II ターミナルから RX 最大 FRL レートを制御できます。 このコマンドは、最大 FRL レート値を操作して RX EDID を変更します。
参照 異なる FRL レートでのデザインの実行 さまざまな FRL レートの設定の詳細については、33 ページを参照してください。
続き…
押しボタン/LED 機能
ユーザー_pb[0] XNUMX 回押すと、HPD 信号が標準の HDMI ソースに切り替わります。
ユーザー_pb[1] 予約済み。
ユーザー_pb[2] 一度押すと、Bitec HDMI 2.1 FMC ドーター カードの TX に接続されたシンクから SCDC レジスタが読み取られます。
注記: 読み取りを有効にするには、ソフトウェアで DEBUG_MODE を 1 に設定する必要があります。
user_led_g[0] RX FRL クロック PLL ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
user_led_g[1] RX HDMI ビデオ ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
user_led_g[2] RX HDCP1x IP 復号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
user_led_g[3] RX HDCP2x IP 復号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
user_led_g[4] TX FRL クロック PLL ロック ステータス。
• 0: ロック解除済み
• 1: ロックされています
user_led_g[5] TX HDMI ビデオ ロック ステータス。
• 0 = ロック解除
• 1 = ロックされている
user_led_g[6] TX HDCP1x IP 暗号化ステータス。
• 0: 非アクティブ
• 1: アクティブ
user_led_g[7] TX HDCP2x IP 暗号化ステータス。
• 0: 非アクティブ
• 1: アクティブ

4.4. FPGA デザインに埋め込まれた暗号化キーの保護
多くの FPGA デザインは暗号化を実装しており、多くの場合、FPGA ビットストリームに秘密キーを埋め込む必要があります。 インテル Stratix 10 やインテル Agilex などの新しいデバイス ファミリには、これらの秘密キーを安全にプロビジョニングおよび管理できるセキュア デバイス マネージャー ブロックがあります。 これらの機能が存在しない場合は、暗号化を使用して、埋め込まれた秘密ユーザー キーを含む FPGA ビットストリームのコンテンツを保護できます。
ユーザー キーは設計環境内で安全に保管し、自動化された安全なプロセスを使用して設計に追加することが理想的です。 次の手順では、インテル Quartus Prime ツールを使用してこのようなプロセスを実装する方法を示します。

  1. 非セキュアな環境で インテル Quartus Prime の HDL を開発および最適化します。
  2. 設計を安全な環境に転送し、秘密キーを更新する自動プロセスを実装します。 オンチップメモリ​​にはキー値が埋め込まれます。 キーが更新されると、メモリの初期化が行われます。 file (.mif) は変更される可能性があり、「quartus_cdb –update_mif」アセンブラー フローは再コンパイルせずに HDCP 保護キーを変更できます。 このステップは非常に迅速に実行され、元のタイミングが維持されます。
  3. 次に、 インテル Quartus Prime ビットストリームは、最終的なテストとデプロイメントのために暗号化されたビットストリームを非セキュア環境に転送する前に、FPGA キーを使用して暗号化します。

FPGA から秘密キーを回復できるすべてのデバッグ アクセスを無効にすることをお勧めします。 J を無効にすることで、デバッグ機能を完全に無効にできます。TAG ポート、または選択的に無効にして再view インシステム メモリ エディタや Signal Tap などのデバッグ機能ではキーを回復できないこと。 FPGA ビットストリームを暗号化し、J を無効にするなどのセキュリティ オプションを構成する方法に関する具体的な手順を含む、FPGA セキュリティ機能の使用方法の詳細については、「AN 556: インテル FPGA でのデザイン セキュリティ機能の使用」を参照してください。TAG アクセス。

注記:
MIF ストレージ内の秘密キーの別のキーを使用して難読化または暗号化する追加の手順を検討できます。
関連情報
AN 556: インテル FPGA でのデザイン・セキュリティー機能の使用

4.5. セキュリティに関する考慮事項
HDCP 機能を使用する場合は、次のセキュリティ上の考慮事項に注意してください。

  • リピーター システムを設計する場合は、次の状況で受信ビデオが TX IP に入るのをブロックする必要があります。
    — 受信したビデオが HDCP 暗号化されている場合 (つまり、RX IP からの暗号化ステータス hdcp1_enabled または hdcp2_enabled がアサートされている)、送信されたビデオが HDCP 暗号化されていない場合 (つまり、TX IP からの暗号化ステータス hdcp1_enabled または hdcp2_enabled がアサートされていない)。
    — 受信したビデオが HDCP TYPE 1 (つまり、RX IP からの streamid_type がアサートされている) で、送信されたビデオが HDCP 1.4 で暗号化されている (つまり、TX IP からの暗号化ステータス hdcp1_enabled がアサートされている) 場合
  • HDCP プロダクション キーおよびユーザー暗号化キーの機密性と整合性を維持する必要があります。
  • インテルは、インテル Quartus Prime プロジェクトおよびデザインソースを開発することを強く推奨します。 fileキーを保護するために、安全なコンピューティング環境に暗号化キーが含まれています。
  • インテルは、FPGA のデザイン・セキュリティー機能を使用して、組み込み暗号化キーを含むデザインを不正コピー、リバース・エンジニアリング、およびセキュリティー保護から保護することを強くお勧めします。ampエリング。

関連情報
AN 556: インテル FPGA でのデザイン・セキュリティー機能の使用

4.6. デバッグのガイドライン
このセクションでは、デバッグに使用できる便利な HDCP ステータス信号とソフトウェア パラメーターについて説明します。 また、デザイン ex の実行に関するよくある質問 (FAQ) も含まれています。ampル。

4.6.1. HDCP ステータス信号
HDCP IP コアの動作状態を識別するのに役立つ信号がいくつかあります。 これらの信号は、design ex で入手できます。ampファイルは最上位にあり、オンボード LED に関連付けられています。

信号名 関数
hdcp1_enabled_rx RX HDCP1x IP 復号化ステータス 0: 非アクティブ
1年:アクティブ
hdcp2_enabled_rx RX HDCP2x IP 復号化ステータス 0: 非アクティブ
1年:アクティブ
hdcp1_enabled_tx TX HDCP1x IP 暗号化ステータス 0: 非アクティブ
1年:アクティブ
hdcp2_enabled_tx TX HDCP2x IP 暗号化ステータス 0: 非アクティブ
1年:アクティブ

それぞれの LED の配置については、57 ページの表 115 および 58 ページの表 115 を参照してください。
これらの信号のアクティブ状態は、HDCP IP が認証され、暗号化されたビデオ ストリームを送受信していることを示します。 各方向について、HDCP1x または HDCP2x のみ
暗号化/復号化ステータス信号がアクティブです。 元の場合ampファイルでは、hdcp1_enabled_rx または hdcp2_enabled_rx のいずれかがアクティブな場合、RX 側の HDCP が有効になり、外部ビデオ ソースから暗号化されたビデオ ストリームを復号化します。

4.6.2. HDCP ソフトウェアパラメータの変更
HDCP デバッグ プロセスを容易にするために、hdcp.c のパラメータを変更できます。
以下の表は、設定可能なパラメータとその機能のリストをまとめたものです。

パラメータ 関数
SUPPORT_HDCP1X TX 側で HDCP 1.4 を有効にする
SUPPORT_HDCP2X TX 側で HDCP 2.3 を有効にする
DEBUG_MODE_HDCP TX HDCP のデバッグ メッセージを有効にする
リピーターモード HDCP 設計例のリピーター モードを有効にするample

パラメータを変更するには、hdcp.c の値を目的の値に変更します。 コンパイルを開始する前に、build_sw_hdcp.sh に次の変更を加えます。

  1. ソフトウェアが変更されないように、次の行を見つけてコメントアウトします。 file オリジナルに置き換えられている fileインテル Quartus Prime ソフトウェアのインストールパスから。
    Intel HDMI Arria 10 FPGA IP デザイン例ample - トップ コンポーネント 3
  2.  「./build_sw_hdcp.sh」を実行して、更新されたソフトウェアをコンパイルします。
  3. 生成された .elf file 次の XNUMX つの方法でデザインに組み込むことができます。
    a. 「nios2-download -g」を実行します file 名前>」。 適切な機能を確保するために、ダウンロード プロセスが完了したらシステムをリセットしてください。
    b. 「quartus_cdb –-update_mif」を実行してメモリの初期化を更新します。 files. アセンブラを実行して新しい .sof を生成します file これには、更新されたソフトウェアが含まれます。

4.6.3. よくある質問(FAQ)
表 59. 障害の症状とガイドライン

番号 障害症状 ガイドライン
1. RX は暗号化されたビデオを受信して​​いますが、TX は青色または黒色の静的ビデオを送信しています。 これは、外部シンクとの TX 認証が失敗したことが原因です。 HDCP 対応リピーターは、アップストリームからの受信ビデオが暗号化されている場合、暗号化されていない形式でビデオを送信してはなりません。 これを実現するために、TX HDCP 暗号化ステータス信号が非アクティブで、RX HDCP 復号化ステータス信号がアクティブである場合、青色または黒色の静的ビデオが送信ビデオを置き換えます。
正確なガイドラインについては、以下を参照してください。 セキュリティに関する考慮事項 ただし、この動作により、HDCP 設計を有効にするときのデバッグ プロセスが妨げられる可能性があります。 以下は、デザイン例でビデオのブロックを無効にする方法です。amp上:
1. デザイン例の最上位で次のポート接続を見つけます。ampル。 このポートは hdmi_tx_top モジュールに属します。
2. ポート接続を次の行に変更します。
2. TX HDCP 暗号化ステータス信号はアクティブですが、雪の画像がダウンストリーム シンクに表示されます。 これは、ダウンストリーム シンクが送信される暗号化ビデオを正しく復号化できないことが原因です。
必ずグローバル定数 (LC128) を TX HDCP IP に指定してください。 値は製造値であり、正しいものでなければなりません。
3. TX HDCP 暗号化ステータス信号が不安定であるか、常に非アクティブです。 これは、ダウンストリーム シンクとの TX 認証が失敗したことが原因です。 デバッグ プロセスを容易にするために、 DEBUG_MODE_HDCP hdcp.c のパラメータ。 参照する HDCP ソフトウェアパラメータの変更 ガイドラインについては 118 ページに記載されています。 TX 認証が失敗する原因としては、次の 3a ~ 3c が考えられます。
3a. ソフトウェア デバッグ ログには、「HDCP 1.4 はダウンストリーム (Rx) でサポートされていません」というメッセージが出力され続けます。 このメッセージは、ダウンストリーム シンクが HDCP 2.3 と HDCP 1.4 の両方をサポートしていないことを示します。
ダウンストリーム シンクが HDCP 2.3 または HDCP 1.4 をサポートしていることを確認してください。
3b. 送信認証が途中で失敗します。 これは、署名検証、ローカリティ チェックなどの TX 認証の一部が失敗する可能性があるためです。 ダウンストリーム シンクがファクシミリ キーではなくプロダクション キーを使用していることを確認してください。
3c. ソフトウェア デバッグ ログに「再認証」が出力され続ける このメッセージは、受信したビデオが正しく復号化されなかったため、ダウンストリーム シンクが再認証を要求したことを示します。 必ずグローバル定数 (LC128) を TX HDCP IP に指定してください。 値は製造値である必要があり、その値は正しいです。
続き…
番号 障害症状 ガイドライン
HDCP認証が完了すると、「が必要です」というメッセージが表示されます。
4. アップストリーム ソースが HDCP を有効にしているにもかかわらず、RX HDCP 復号化ステータス信号が非アクティブです。 これは、RX HDCP IP が認証状態に達していないことを示します。 デフォルトでは、 リピーターモード パラメータはデザイン例で有効になっていますampル。 もし リピーターモード が有効になっている場合は、TX HDCP IP が認証されていることを確認してください。

とき リピーターモード パラメータが有効な場合、TX が HDCP 対応シンクに接続されている場合、RX HDCP IP はリピータとして認証を試みます。 TX HDCP IP がダウンストリーム シンクとの認証を完了し、RECEIVERID_LIST を RX HDCP IP に渡すのを待機している間に、認証は途中で停止します。 HDCP 仕様で定義されているタイムアウトは 2 秒です。 TX HDCP IP がこの期間内に認証を完了できない場合、アップストリーム ソースは認証を失敗として扱い、HDCP 仕様の指定に従って再認証を開始します。

注記: • 参照する HDCP ソフトウェアパラメータの変更 を無効にする方法については、118 ページを参照してください。 リピーターモード デバッグ目的のパラメータ。 を無効にした後、 リピーターモード パラメータを指定すると、RX HDCP IP は常にエンドポイント レシーバーとして認証を試行します。 TX HDCP IP は認証プロセスをゲートしません。
リピーターモード パラメータが有効になっていない場合は、HDCP IP に提供された HDCP キーが実稼働値であり、その値が正しいことを確認してください。
5. RX HDCP 復号ステータス信号が不安定です。 これは、RX HDCP IP が認証状態になった直後に再認証を要求したことを意味します。 これはおそらく、受信した暗号化されたビデオが RX HDCP IP によって正しく復号化されないことが原因です。 RX HDCP IP コアに提供されているグローバル定数 (LC128) が製品値であり、その値が正しいことを確認してください。

HDMI インテル Arria 10 FPGA IP デザイン例ampユーザーガイドのアーカイブ

このユーザーガイドの最新および以前のバージョンについては、「HDMI インテル® Arria 10 FPGA IP Design Ex」を参照してください。ampユーザーガイド。 IP またはソフトウェアのバージョンがリストされていない場合は、以前の IP またはソフトウェア バージョンのユーザー ガイドが適用されます。
IP バージョンは、v19.1 までの インテル Quartus Prime Design Suite ソフトウェアのバージョンと同じです。 インテル Quartus Prime Design Suite ソフトウェアバージョン 19.2 以降、IP
コアには新しい IP バージョン管理スキームが採用されています。

HDMI インテル Arria 10 FPGA IP デザイン例の改訂履歴ampユーザーガイド

ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
2022.12.27 22.4 19.7.1 HDMI ドーター カード リビジョンを選択するための新しいパラメータを、設計例のハードウェアおよびソフトウェア要件セクションに追加しました。ampHDMI 2.0 (非 FRL モード) 用のファイル。
2022.07.29 22.2 19.7.0 • Nios II EDS の Windows* バージョンから Cygwin コンポーネントが削除され、Windows* ユーザーに対して WSL をインストールする必要があることの通知。
• ドキュメント全体で該当する場合、ドーター カードのバージョンをリビジョン 4 から 9 に更新しました。
2021.11.12 21.3 19.6.1 • 新しいキー暗号化ソフトウェア ユーティリティ (KEYENC) について説明するサブセクション「暗号化された HDCP プロダクション キーを外部フラッシュ メモリまたは EEPROM に保存する (HDCP キー管理 = 1 をサポート)」を更新しました。
• 次の図を削除しました。
— RX秘密鍵用ファクシミリ鍵R1のデータ配列
— HDCP プロダクション キーのデータ配列 (プレースホルダー)
— HDCP プロテクション キー (定義済みキー) のデータ配列
— hdcp2x_tx_kmem.mif で初期化された HDCP 保護キー
— hdcp1x_rx_kmem.mif で初期化された HDCP 保護キー
— hdcp1x_tx_kmem.mif で初期化された HDCP 保護キー
• DCP キーからの HDCP キー マッピングのサブセクションを移動しました。 Fileプレーン HDCP プロダクション キーを FPGA に保存するためのデバッグ ガイドラインより (HDCP キー管理 = 0 をサポート)。
2021.09.15 21.1 19.6.0 ncsim への参照を削除
2021.05.12 21.1 19.6.0 • 図 1 HDCP over HDMI 設計例の説明に「SUPPORT FRL = 1 または SUPPORT HDCP KEY MANAGEMENT = 29 の場合」を追加ampブロック図。
• HDCP キーメモリにステップを追加しました。 fileデザインウォークスルーにあります。
• 「SUPPORT FRL = 0 の場合」をセクション「ハードウェアのセットアップ」に追加しました。
• デザインの生成で [HDCP キー管理のサポート] パラメーターをオンにする手順を追加しました。
• 新しいサブセクション「暗号化された HDCP プロダクション キーを外部フラッシュ メモリまたは EEPROM に保存する (HDCP キー管理 = 1 をサポート)」を追加しました。
続き…
ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
• 表のプッシュボタンおよび LED インジケータの名前をプッシュボタンおよび LED インジケータ (SUPPORT FRL = 0) に変更しました。
• テーブルのプッシュボタンと LED インジケータを追加しました (SUPPORT FRL = 1)。
• 新しい章「FPGA デザインに埋め込まれた暗号化キーの保護」を追加しました。
• 新しい章「デバッグ ガイドライン」とサブセクション「HDCP ステータス信号」、「HDCP ソフトウェア パラメータの変更」、および「よくある質問」を追加しました。
2021.04.01 21.1 19.6.0 • RX のみまたは TX のみのデザインに必要な図コンポーネントを更新。
• 更新されたテーブル生成 RTL Files.
• 図 HDMI RX の上部コンポーネントを更新。
• HDMI RX トップリンクトレーニングプロセスのセクションを削除。
• 「異なる FRL レートでのデザインの実行」の手順を更新しました。
• 図 HDMI 2.1 設計例を更新ampファイル クロッキング スキーム。
• テーブル クロック スキーム信号を更新しました。
• 図 HDMI RX-TX ブロック図を更新し、トランシーバー アービターから TX 上部への接続を追加しました。
2020.09.28 20.3 19.5.0 • HDMI 2.1 設計例に関する注記を削除しました。ampFRL モードのファイルは、HDMI インテル FPGA IP Design Ex のスピード グレード –1 デバイスのみをサポートします。ampファイル Arria 10 デバイスおよび HDMI 2.1 Design Ex 用クイックスタートガイドample (FRL = 1 をサポート) セクション。 設計はすべてのスピード グレードをサポートします。
• すべての HDMI 2.1 設計例から ls_clk 情報を削除ampファイル関連のセクション。 ls_clk ドメインはデザイン例では使用されなくなりましたampル。
• HDMI 2.1 設計例のブロック図を更新しました。ampHDMI 2.1 Design Ex の FRL モードのファイルampファイル (FRL = 1 をサポート)、RX 専用または TX 専用デザインの作成、デザイン コンポーネント、およびクロック スキームのセクション。
• ディレクトリを更新し、生成された file「ディレクトリ構造」セクションのリストを参照してください。
• 無関係な信号を削除し、次の HDMI 2.1 設計例の説明を追加または編集しました。amp「インターフェース信号」セクションのファイル信号:
— sys_init
— txpll_frl_locked
— tx_os
— txphy_rcfg* シグナル
— tx_reconfig_done
— txcore_tbcr
— pio_in0_external_connection_export
• 「デザイン RTL パラメータ」セクションに次のパラメータを追加しました。
— EDID_RAM_ADDR_WIDTH
— BITEC_DAUGHTER_CARD_REV
— FPLL を使用する
— 極性_反転
続き…
ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
• HDMI 2.0 設計例のブロック図を更新しました。ampHDMI 2.0 Design Ex の インテル Quartus Prime プロ・エディション ソフトウェア用ファイルampファイル (FRL = 0 をサポート)、RX 専用または TX 専用デザインの作成、デザイン コンポーネント、およびクロック スキームのセクション。
• 「ダイナミック レンジおよびマスタリング (HDR) InfoFrame の挿入とフィルタリング」セクションのクロックおよびリセット信号名を更新しました。
• 無関係な信号を削除し、次の HDMI 2.0 設計例の説明を追加または編集しました。amp「インターフェース信号」セクションのファイル信号:
— clk_fpga_b3_p
— REFCLK_FMCB_P
— fmcb_la_tx_p_11
— fmcb_la_rx_n_9e
— fr_cck
— リセット_xcvr_powerup
— nios_tx_i2c* シグナル
— hdmi_ti_i2c* 信号
— tx_i2c_avalon* 信号
— クロックブリッジ_0_in_clk_clk
— リセット_ブリッジ_0_リセット_リセット_n
— i2c_master* 信号
— nios_tx_i2c* シグナル
—measure_valid_pio_external_connection_export
— oc_i2c_av_slave_translator_avalon_anti_slave_0* 信号
— powerup_cal_done_export
— rx_pma_cal_busy_export
— rx_pma_ch_export
— rx_pma_rcfg_mgmt* 信号
• シミュレーション テストベンチは、 I2C を含める パラメータが有効になり、「シミュレーション テストベンチ」セクションのシミュレーション メッセージが更新されました。
• 「設計のアップグレード」セクションを更新しました。
2020.04.13 20.1 19.4.0 • HDMI 2.1 設計例に関する注記を追加しました。ampFRL モードのファイルは、HDMI インテル FPGA IP Design Ex のスピード グレード –1 デバイスのみをサポートします。ampファイル Arria 10 デバイスのクイックスタートガイドおよび HDMI 2.1 デザイン Ex の詳細な説明ample (FRL = 1 をサポート) セクション。
• HDCP Over HDMI 設計 Ex を移動ampHDMI インテル FPGA IP ユーザーガイドの「インテル Arria 10 デバイス」セクションのファイル。
• 「デザインのシミュレーション」セクションを編集してオーディオを追加しました。ampファイル ジェネレーター、サイドバンド データ ジェネレーター、および補助データ ジェネレーターを更新し、シミュレーション成功メッセージを更新しました。
• 記載されているシミュレーションは次の場合にのみ利用可能であるという注記を削除しました。 FRLをサポート 無効なデザインのメモ。 シミュレーションが利用できるようになりました FRLをサポート デザインも可能になりました。
• HDMI 2.1 デザイン Ex の詳細説明の機能説明を更新しました。ampファイル (FRL 有効化のサポート) セクション。
続き…
ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
• HDMI 2.1 デザイン例の「HDMI 2.1 RX-TX デザインのブロック図」、「デザイン コンポーネント」、および「RX のみまたは TX のみのデザインの作成」セクションのブロック図を編集しました。ampル。 新しいコンポーネントを追加し、適用されなくなったコンポーネントを削除しました。
• 「RX 専用または TX 専用デザインの作成」セクションの main.c スクリプト命令を編集しました。
• 新しいフォルダーを追加するためにディレクトリ構造セクションを更新し、 fileHDMI 2.0 と HDMI の両方に対応
2.1 デザイン例ampレ。
• HDMI 2.1 設計例のハードウェアおよびソフトウェア要件セクションを更新しました。ampル。
• HDMI 2.1 設計例の「ダイナミック レンジとマスタリング (HDR) InfoFrame の挿入とフィルタリング」セクションのブロック図と信号の説明を更新しました。ampル。
• HDMI 2.1 デザイン ex 用に、「異なる FRL レートでのデザインの実行」という新しいセクションを追加しました。ampレ。
• HDMI 2.1 設計例の「クロッキング スキーム」セクションのブロック図と信号の説明を更新しました。ampル。
• HDMI 2.1 設計例のハードウェア セットアップ セクションにユーザー DIP スイッチに関する説明を追加しました。ampル。
• HDMI 2.1 設計例の設計制限セクションを更新しました。ampル。
• 「設計のアップグレード」セクションを更新しました。
• HDMI 2.0 と HDMI 2.1 の両方の設計例のシミュレーション テストベンチのセクションを更新しました。ampレ。
2020.01.16 19.4 19.3.0 • HDMI インテル FPGA IP デザイン Ex を更新amp新しく追加された HDMI 10 デザイン ex に関する情報を含むインテル Arria 2.1 デバイスのクイックスタートガイドセクションampFRLモードのファイル。
• 新しい章「HDMI 2.1 設計例の詳細な説明」を追加しました。amp新しく追加されたデザイン ex に関するすべての関連情報が含まれるファイル (FRL 有効化をサポート)ampル。
• HDMI Intel FPGA IP Design Ex の名前を変更しました。ampファイル 詳細説明から HDMI 2.0 設計例の詳細説明へampわかりやすくするために le とします。
2019.10.31 18.1 18.1 • 生成されたものを追加 filetx_control_src フォルダ内: ti_i2c.c および ti_i2c.h。
• 「ハードウェアおよびソフトウェア要件」および「デザインのコンパイルとテスト」セクションに FMC ドーター カード リビジョン 11 のサポートを追加しました。
• 「設計上の制限」セクションを削除しました。 最大スキュー制約のタイミング違反に関する制限は、バージョンで解決されました。
HDMI インテル FPGA IP の 18.1。
• 新しい RTL パラメータ BITEC_DAUGHTER_CARD_REV を追加し、Bitec HDMI ドーター カードのリビジョンを選択できるようにしました。
続き…
ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
• fmcb_dp_m2c_p および fmcb_dp_c2m_p 信号の説明を更新し、FMC ドーター カード リビジョン 11、6、および 4 に関する情報を追加しました。
• Bitec ドーター カード リビジョン 11 に次の新しい信号を追加しました。
— hdmi_tx_ti_i2c_sda
— hdmi_tx_ti_i2c_scl
— oc_i2c_master_ti_avalon_anti_slave_アドレス
— oc_i2c_master_ti_avalon_anti_slave_write
— oc_i2c_master_ti_avalon_anti_slave_readdata
— oc_i2c_master_ti_avalon_anti_slave_writedata
— oc_i2c_master_ti_avalon_anti_slave_waitrequest
• デザインのアップグレードに関するセクションを追加しました。
2017.11.06 17.1 17.1 • Intel のブランド変更に伴い、HDMI IP コアの名前が HDMI Intel FPGA IP に変更されました。
• Qsys という用語をプラットフォーム デザイナーに変更しました。
• ダイナミック レンジおよびマスタリング InfoFrame (HDR) の挿入およびフィルタリング機能に関する情報を追加しました。
• ディレクトリ構造を更新しました。
— スクリプトとソフトウェアのフォルダーを追加しました。 files.
— コモンと HDR を更新 files.
— atx を削除しました files.
— 差別化された fileインテル Quartus Prime スタンダード・エディションおよびインテル Quartus Prime プロ・エディションの場合。
• 「デザインの生成」セクションを更新し、10AX115S2F4I1SG として使用されるデバイスを追加しました。
• 50 ~ 100 MHz TMDS クロック周波数のトランシーバー データ レートを 2550 ~ 5000 Mbps に編集しました。
• user_pb[2] ボタンを放して外部フィルタリングを無効にできるという RX-TX リンク情報を更新しました。
• I2C マスターおよび HDMI ソースの制御を含む Nios II ソフトウェア フロー図を更新しました。
• に関する情報を追加しました。 設計例ample GUIパラメータ。
• HDMI RX および TX Top 設計パラメータを追加しました。
• 次の HDMI RX および TX のトップレベル信号を追加しました。
— mgmt_clk
— リセット
— i2c_clk
— hdmi_clk_in
— 次の HDMI RX および TX のトップレベル信号を削除しました。
• バージョン
• i2c_clk
続き…
ドキュメントバージョン インテル Quartus Prime バージョン IPバージョン 変更点
• トランシーバーのアナログ設定は Arria 10 FPGA 開発キットおよび Bitec HDMI 2.0 ドーター カードに対してテストされるという注記を追加しました。 ボードのアナログ設定を変更できます。
• PLL カスケードまたは インテル Arria 10 PLL リファレンス・クロックの非専用クロック・パスのジッターを回避するための回避策のリンクを追加しました。
• トランシーバー RX ピンを HDMI RX の CDR refclk として、または HDMI TX の TX PLL refclk として使用できないという注記を追加しました。
• TX PMA および PCS ボンディングを使用するデザインに set_max_skew 制約を追加する方法に関するメモを追加しました。
2017.05.08 17.0 17.0 • Intel にブランド変更されました。
• 部品番号を変更しました。
• ディレクトリ構造を更新しました。
— HDRを追加しました files.
— qsys_vip_passthrough.qsys を nios.qsys に変更しました。
- 追加した fileインテル Quartus Prime プロ・エディション用に指定されています。
• RX-TX リンク ブロックが HDMI RX 補助データからのハイ ダイナミック レンジ (HDR) 情報フレームに対して外部フィルタリングも実行し、exampHDR Infoframe を Avalon ST マルチプレクサーを介して HDMI TX の補助データに送信します。
• HDMI TX チャネル間スキュー要件を満たすには、Arria 10 トランシーバー ネイティブ PHY パラメーター エディターの TX チャネル ボンディング モード オプションを次のように設定する必要があるというトランシーバー ネイティブ PHY の説明に注記を追加しました。 PMAとPCSの接合.
• OS および測定信号の説明を更新。
• オーバーを修正しましたampTX FPLL ダイレクト クロック スキームをサポートするために、TMDS クロック周波数範囲ごとに異なるトランシーバー データ レートの係数を調整します。
• TX IOPLL から TX FPLL カスケード クロック スキームを TX FPLL ダイレクト スキームに変更しました。
• TX PMA 再構成信号を追加しました。
• USER_LED[7] を編集ampリングステータス。 1はオーバーを示しますampLED (Arria 1,000 デバイスのデータレート < 10 Mbps)。
• アップデートされた HDMI デザイン Exampファイル サポートされているシミュレーターの表。 VHDL は NCSim ではサポートされていません。
• Arria 10 HDMI IP Core Design Ex のアーカイブ バージョンへのリンクを追加ampル ユーザー ガイド。
2016.10.31 16.1 16.1 初回リリース。

インテルコーポレーション。 全著作権所有。 Intel、Intelロゴ、およびその他のIntelマークは、IntelCorporationまたはその子会社の商標です。 インテルは、FPGAおよび半導体製品のパフォーマンスをインテルの標準保証に従って現在の仕様に保証しますが、通知なしにいつでも製品およびサービスを変更する権利を留保します。 インテルは、インテルが書面で明示的に同意した場合を除き、本書に記載されている情報、製品、またはサービスの適用または使用から生じる責任または義務を負わないものとします。 インテルのお客様は、公開されている情報を信頼する前、および製品やサービスを注文する前に、最新バージョンのデバイス仕様を入手することをお勧めします。 *他の名前やブランドは他人の所有物として主張される場合があります。

Intel HDMI Arria 10 FPGA IP デザイン例ampファイル - アイコン 1 オンライン版
Intel HDMI Arria 10 FPGA IP デザイン例ampル - アイコン フィードバックを送信
ID: 683156
バージョン: 2022.12.27

ドキュメント / リソース

Intel HDMI Arria 10 FPGA IP デザイン例ample [pdf] ユーザーガイド
HDMI Arria 10 FPGA IP デザイン例ampファイル、HDMI Arria、10 FPGA IP 設計例ampル、デザインExample

参考文献

コメントを残す

あなたのメールアドレスは公開されません。 必須項目はマークされています *