Étape 7: Sortie - CDMA et bloc Design partie 2
Donc, notre plan est au programme le CDMA du PS via une interface AXI LITE pour lire 4 lignes de l’image de la mémoire DDR RAM à travers le Port HP0 et écrire eux du BRAM dans la PL en utilisant un moteur AXI BRAM contrôleur IP (cette adresse IP est utilisée pour traduire entre l’interface AXI maître de la CMDA et l’Interface de BRAM). Une fois que les lignes sont dans le BRAM, ils peuvent être facilement lue par notre contrôleur HDMI et affichée. Le hic, c’est que nous devons donner le CPU une interruption après que nous avons fini ces 4 rangs pour reprogrammer le CDMA pour transférer les rangs suivants. Il faut aussi prévoir une interruption supplémentaire à la fin de l’image afin que l’image soit correctement aligné. Nous devons ajouter cette fonctionnalité au contrôleur HDMI et empaqueter dans une adresse IP pour faciliter leur utilisation dans notre conception du bloc.
Les interruptions générées dans notre contrôleur HDMI seront reliées aux interruptions IRQ_F2P partagé du PS (vous pouvez en savoir plus sur interrompt au chapitre 7 de la Zynq Technical Reference Manual ici http://goo.gl/nEQrBv ).
Nous devrons également augmenter la FCLK_CLK0. Il s’agit de l’horloge pour tous les AXI IP en nos monoblocs. Il s’agit de l’horloge utilisée pour écrire dans le BRAM si nous voulons qu’il soit plus rapide que l’horloge qui lit à partir d’elle (l’horloge de pixel = 148,5 Mhz). Nous allons augmenter la fréquence d’un 250Mhz sans danger.
Nous devons calculer combien BRAM, nous aurons besoin. Il y aura 4 rangs à la fois dans le BRAM donc 4 rangs * 1920 pixels * 3 canaux de couleur = 23040 octets. Nous pouvons ensuite utiliser l’éditeur d’adresses en Vivado pour définir la taille BRAM à 32 Ko.
Avec toutes les configurations de matériel faite nous procéderons à la partie logicielle