文章 ID: 000080660 內容類型: 疑難排解 最近查看日期: 2016 年 10 月 07 日

為什麼 DisplayPort IP 核心硬體示範範例設計無法在 DisplayPort IP 核心信槽連接到 Intel® GPU 時顯示影像?

環境

  • Intel® Quartus® Prime Pro Edition 軟體
  • Intel® Nios® II 處理器
  • DisplayPort* Intel® FPGA IP
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    描述

    由於 DisplayPort IP 核心硬體示範範例設計(版本 16.0 及更早版本)的問題,在 DisplayPort IP 核心信槽連接到 Intel® GPU 時,可能看不到影像。雖然 RX 和 TX MSA 值看起來可能正確,但監視器上不會顯示任何影像。這是因為 Intel GPU 與 DisplayPort IP 核心來源使用的計時模式之間不匹配。Intel GPU 使用同步計時,而 DisplayPort IP 核心來源則使用非同步計時。這會導致硬體示範範例設計的兩個問題。

    首先,硬體示範範例設計使用固定的 NVID 值來進行圖元頻率復原 (PCR) 模組。此設定適用于使用非同步計時且無法與 Intel GPU 搭配使用的 GPU。

    其次,由於其計時模式,Intel GPU 將 RX MSA MISC0 註冊器的位 0 設定為 1,而 DisplayPort IP 核心來源則將 TX MSA MISC0 註冊的位 0 設定為 0。雖然這些位在規格範圍內有差異,但Nios® II軟體(特別是 EDID 傳遞代碼)期望 RX MSA MISC0 與 TX MSA MISC0 完全吻合,如果不匹配,則停用 DisplayPort IP 核心來源。

    解決方法

    首先,修改頂層 Verilog 檔案以使用 PCR 模組的固定 NVID 值停用。在主要專案目錄中,修改 檔案 a10_dp_demo.v 變更一行,

    從:

    defparam bitec_clkrec_i.FIXED_NVID = 1;

    自:

    defparam bitec_clkrec_i.FIXED_NVID = 0;

    其次,在比較 RX MSA MISC0 和 TX MSA MISC0 收銀台時,修改Nios II軟體以忽略位 0。在主要專案目錄中,修改檔案 main.c 以變更兩行,

    從:

    rx_misc0 = IORD(btc_dprx_baseaddr(0)、DPRX0_REG_MSA_MISC0)與 F0xFFF;

    tx_misc0 = IORD(btc_dptx_baseaddr()、DPTX0_REG_MSA_MISC0)與 F0xFFF;

    自:

    rx_misc0 = IORD(btc_dprx_baseaddr(0)、DPRX0_REG_MSA_MISC0)與 E0xFFF;

    tx_misc0 = IORD(btc_dptx_baseaddr()、DPTX0_REG_MSA_MISC0)與E 0xFFF;

    進行這些修改後, build_sw.sh 執行腳本以重建軟體專案,然後在 Quartus® Prime 軟體中重新電腦專案。或者,您可以重新執行腳本 runall.tcl,這將為您執行這兩個步驟。

    這兩個問題都在 Quartus Prime 軟體 v16.1 DisplayPort 硬體示範範例設計中得到解決。

    相關產品

    本文章適用於 4 產品

    Intel® Arria® 10 FPGA 與 SoC FPGA
    Arria® V FPGA 與 SoC FPGA
    Cyclone® V FPGA 與 SoC FPGA
    Stratix® V FPGA

    這個頁面的內容綜合了英文原始內容的人工翻譯譯文與機器翻譯譯文。本內容是基於一般資訊目的,方便您參考而提供,不應視同完整或準確的內容。如果這個頁面的英文版與譯文之間發生任何牴觸,將受英文版規範及管轄。 查看這個頁面的英文版。