ID de l'article: 000080660 Type de contenu: Dépannage Dernière révision: 07/10/2016

Pourquoi l’exemple de démonstration du matériel DisplayPort IP Core ne montre-t-il pas une image lorsque le dissipateur de cœur IP DisplayPort est connecté à un processeur graphique Intel® ?

Environnement

  • Intel® Quartus® Prime Pro Edition
  • Processeur Intel® Nios® II
  • FPGA Intel® IP DisplayPort*
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Descriptif

    En raison d’un problème avec la conception de l’exemple de démonstration du matériel DisplayPort IP core (version 16.0 et antérieure), il est possible qu’une image ne soit pas visible lorsque le dissipateur de cœur IP DisplayPort est connecté à un processeur graphique Intel®. Bien que les valeurs MSA RX et TX puissent avoir l’air correctes, aucune image ne s’affiche sur le moniteur. Cela est dû à un décalage entre les modes d’horloge utilisés par le GPU Intel et la source du cœur IP DisplayPort. Les GPU Intel utilisent l’horloge synchrone, tandis que la source du cœur IP DisplayPort utilise une horloge asynchrone. Cela entraîne deux problèmes avec la conception de l’exemple de démonstration du matériel.

    Tout d’abord, la conception de démonstration matérielle utilise une valeur NVID fixe pour le module de récupération de l’horloge des pixels (PCR). Ce paramètre est destiné aux GPU qui utilisent une horloge asynchrone et ne fonctionnera pas avec un GPU Intel.

    Deuxièmement, en raison de leurs modes d’horloge, le processeur graphique Intel® définit le bit 0 du registre RX MSA MISC0 à 1, tandis que la source du cœur IP DisplayPort définit le bit 0 du registre MISC0 TX MSA à 0. Bien qu’il soit dans les spécifications pour que ces bits diffèrent, le logiciel Nios® II (spécifiquement le code de transmission EDID) s’attend à ce que RX MSA MISC0 corresponde exactement à TX MSA MISC0, et désactive la source du cœur IP DisplayPort en cas de décalage.

    Résolution

    Tout d’abord, modifiez le fichier Verilog de haut niveau pour le désactiver à l’aide d’une valeur NVID fixe pour le module PCR. Dans le répertoire principal du projet, modifiez le fichier a10_dp_demo.v pour changer une ligne,

    De:

    defparam bitec_clkrec_i.FIXED_NVID = 1;

    À:

    defparam bitec_clkrec_i.FIXED_NVID = 0;

    Ensuite, modifiez le logiciel Nios II pour ignorer le bit 0 lors de la comparaison des registres RX MSA MISC0 et TX MSA MISC0. Dans le répertoire principal du projet, modifiez le fichier main.c pour changer deux lignes,

    De:

    rx_misc0 = IORD (btc_dprx_baseaddr(0), DPRX0_REG_MSA_MISC0) et 0xFFFF;

    tx_misc0 = IORD (btc_dptx_baseaddr DPTX0_REG_MSA_MISC0) et 0xFFFF;

    À:

    rx_misc0 = IORD (btc_dprx_baseaddr(0), DPRX0_REG_MSA_MISC0) et 0xFFFE;

    tx_misc0 = IORD (btc_dptx_baseaddr DPTX0_REG_MSA_MISC0) et 0xFFFE;

    Après avoir apporté ces modifications, exécutez le script build_sw.sh pour reconstruire le projet logiciel, puis recompilez le projet dans le logiciel Quartus® Prime. Autrement, vous pouvez réémettre le script runall.tcl, qui effectuera ces deux étapes pour vous.

    Ces deux problèmes ont été résolus dans la conception de l’exemple de démonstration du matériel DisplayPort du logiciel Quartus Prime v16.1.

    Produits associés

    Cet article concerne 4 produits

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

    Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.