HDMI Intel® Arria 10 FPGA IP设计示例用户指南

ID 683156
日期 5/12/2021
Public
文档目录

2.2. 创建RX-Only或TX-Only设计

对于高级用户,您可以使用HDMI 2.1设计来创建一个RX-Only或TX-Only设计。
图 5. RX-Only或TX-Only设计所需的组件

要使用RX-Only或TX-Only组件,需要从设计中删除不相关的模块。

表 4.  RX-Only和TX-Only设计要求
用户要求 保留 移除 添加
HDMI RX only RX Top
  • TX Top
  • RX-TX Link
  • CPU Subsystem
  • Transceiver Arbiter
HDMI TX only
  • TX Top
  • CPU Sub-System
  • RX Top
  • RX-TX Link
  • Transceiver Arbiter
Video Pattern Generator

(自定义模块或者从Video and Image Processing (VIP) Suite生成)

除了RTL变更之外,您也需要编辑main.c脚本。

  • For HDMI TX-only designs, decouple the wait for the HDMI RX lock status by removing the following lines and replace with tx_xcvr_reconfig(tx_frl_rate);

    rx_hdmi_lock = READ_PIO(PIO_IN0_BASE, PIO_RX_LOCKED_OFFSET, PIO_RX_LOCKED_WIDTH);

    while (rx_hdmi_lock == 0) {

    if (check_hpd_isr()) { break; }

    // 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);

    // Reconfig Tx after rx is locked

    if (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);

    } else {

    tx_xcvr_reconfig(tx_frl_rate);

    } } }

  • 对于HDMI RX-only设计,在main.c脚本中只保留以下命令行:

    REDRIVER_INIT();

    hdmi_rx_init();