CoursDocuments

ARCHITECTURES AVANCÉES SUR PUCE PARTIE : CONCEPTION HARDWARE

ARCHITECTURES AVANCÉES SUR PUCE PARTIE 2: CONCEPTION HARDWARE 

Hanen SHALL shallhanen@yahoo.fr 

Xilinx Vivado− AP SoC ZYNQ 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 


CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 


Introduction à l’architecture d’un système à base de Zynq-7000 

Gigabit Tranceivers 

Eléments Performance (Jusqu’à) 

Processeur 1 GHz 

PL / DSP fmax 741 MHz 

DSP (sommation) 

1080 GMACs 


Tranceivers 12.5 Gbps 

Performances des SoC Zynq 

Amélioration des performances software avec: 

La partie PL Le traitement DSP Haute bande passante: jusqu’à 3000 connexions directes PS vers PL Entrées/Sorties (I/Os) hautes performances 

Introduction à l’architecture d’un système à base de Zynq-7000 

Performances des SoC Zynq 

Partitionnement HW/SW optimisé et simplifié: 

Accélération HW permettant d’atteindre les objectifs des applications SW Interfaçage à latence réduite pour une communication efficace avec les 

coprocesseurs avec des transferts de données rapides 

HDL 


Développement Software Le processeur démarre en premier similaire 

au reste des SoC ARM Les ingénieurs SW peuvent utiliser leurs outils favoris pour charger ou déboguer le code PL peut ne pas être utilisé même en 

développant sur la plateforme réelle 

Introduction à l’architecture d’un système à base de Zynq-7000 

Développement Concurrent 

Xilinx SDK VIVADO 

Développement Hardware Comme la partie PS démarre en premier, la partie PL est aussitôt alimentée et prête pour être programmée via JTAG VIVADO probe (sondes) se connectent à la 

partie PL comme tous autres FPGAs Les ingénieurs HW peuvent commencer à charger ou déboguer leur design comme sur les autres FPGAs 


CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 


Flot de conception Xilinx 

Flot de conception Xilinx 

Vivado IP Integrator (IPI) 

  • Plug−and−Play IP 
  • Catalogue d’IP très vaste 
  • Accélération 

Intégration – – Production Production Systèmes plus intelligents Embedded DSP Vidéo Analogique Réseaux 

Flot de conception Xilinx 

Vivado IP Integrator (IPI) : Ajout d’un IP (Point de départ) 

Création d’un « Block Design » avec IPI Personnaliser la partie PS Zynq (I/O Peripherals) 

10 

Flot de conception Xilinx 

11 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

12 

Processeurs SOC Zynq 

Système basé sur les μP ARM Cortex−A9 

13 

Processeurs SOC Zynq 

❑ Il y a deux cœurs A9 dans la Zynq ❑ Caractéristiques du processeur ARM Cortex A9: 

2.5 DMIPS/MHz (@ 667 MHz) Jusqu’à 1 GHz fréquence de fonctionnement Architecture Harvard (64 bits code, 64 bits data) Supporte Little Endian pour le code et les data (le plus petit octet d’une donnée est stocké entre le bit 0 et le bit 7 de la mémoire) Chaque cœur possède un cache L1 de 32 KB pour les données et le code. 

Système basé sur les μP ARM Cortex−A9 

14 

❑ Il ya aussi le cache L2 de 512 KB est unifié et performant (8 voies associatives) ❑ Il cache la mémoire DDR ainsi que les périphériques PS et PL. 

Interfaces AXI du cache L2: Interface AXI maître (M) vers le contrôleur DDR Interface AXI M pour tous les périphériques esclaves du PS et PL Interface AXI esclave vers l’unité Snoop Control Unit (SCU) 

Processeurs SOC Zynq 

Système basé sur les μP ARM Cortex−A9 

15 

❑ Le Snoop Control Unit (SCU) connecte les deux Cortex-A9 à la mémoire système (OCM) et au cache L2. ❑ Il maintient la cohérence entre les deux caches L1 données. ❑ Il arbitre entre les deux processeurs pour l’accès au cache L2. ❑ Il fournit un accès à la ROM/RAM interne. ❑ Il fournit aussi un accès à l’ACP (Accelerator Coherency Port) pour la logique programmable. 

Processeurs SOC Zynq 

Système basé sur les μP ARM Cortex−A9 

16 

❑ L’ACP est un port AXI 64 bits reliant la PL avec la SCU. ❑ Il permet à l’accélérateur matériel dans la PL d’accéder au contenu des caches L1 et L2 tout en maintenant la cohérence des données. ❑ Il est utilisé pour partager les données entre PS et PL avec une faible latence. 

Processeurs SOC Zynq 

Système basé sur les μP ARM Cortex−A9 

17 

Système basé sur les μP ARM Cortex−A9 

❑ Le coprocesseur NEON est dédié aux instructions audio, vidéo et 3D. Comme un DSP, il supporte des instructions SIMD (Single Instruction Multiple Data) sur 8, 16 32 et 64 bits. ❑ La FPU (Floating Point Unit) est un coprocesseur arithmétique dédié aux opérations sur les nombres réels. Elle respecte la norme IEEE-754 en simple et double précision. Ses registres sont partagés avec l’unité NEON. 

Processeurs SOC Zynq 

18 

Système basé sur les μP ARM Cortex−A9 

❑ Il existe plusieurs solutions pour debugger le programme dans la partie ARM ainsi que la logique programmable avec Vivado. ❑ Nous utiliserons la solution mono câble JTAG avec le ARM Debug Access Port (DAP) placé en tête dans la chaine JTAG Xilinx. Cela nous permettra aussi de télécharger le bitstream dans la PL. 

Processeurs SOC Zynq 

19 

Processeurs SOC Zynq 

Les interconnexions 

❑ L’Advanced Microcontroller Bus Architecture (AMBA) est utilisé comme bus interne dans les system-on-a-chip (SoC) basés sur les processeurs ARM depuis 1996. ❑ L’Advanced eXtensible Interface (AXI) est une extension de l’AMBA (version 4.0) pour Xilinx. 

20 

4 bus AXI de 32bits à usage général (GP) entre PS−PL (2 Master et 2 Slave) 

Processeurs SOC Zynq 

Les interconnexions 

4 bus AXI de 64bits hautes performances (HP) − 4 Master de PL vers PS / FIFO 

1 bus AXI de 64bits 1Master − accès en cache directement du PL vers PS 

21 

Les interconnexions 

❑ La logique programmable peut utiliser 4 ports AXI haute performance pour un accès direct (DMA) à la mémoire du PS. Les AXI FIFO Interfaces (AFI) ont une capacité suffisamment élevée pour transférer avec régularité de grandes quantités de données entre PL et PS 

Processeurs SOC Zynq 

22 

Processeurs SOC Zynq 

Les interconnexions 

❑ Des ports AXI 32 bits à usage général permettent de relier PS et PL : deux maîtres et deux esclaves 

23 

Module de génération d’horloge 

❑ PS_CLK est l’horloge de référence pour PS (entre 30−60 MHz) et recommandée à 33.333 MHz ❑ Chaque circuit de génération d’horloge a un mux de sélection entre une source d’horloge PLL ou la source d’horloge de base suivi d’un diviseur programmable ❑ Dans le PS, le module de génération d’horloges crée les horloges pour le CPU, pour la DDR et pour les périphériques I/O. ❑ 4 horloges supplémentaires à usage général peuvent être fournies à la PL. ❑ ❑ Les Les outils outils Xilinx Xilinx permettent permettent de de paramétrer paramétrer la la génération génération d’horloge. d’horloge. 

Processeurs SOC Zynq 

24 

Interface mémoire DDR 

Caractéristiques de l’interface mémoire DDR: 

Supporte LPDDR2, DDR2 et DDR3/L (400, 500, 533 MHz dans un seul circuit) Largeur du bus de données externe configurable 16 ou 32 bits ECC (Error Correcting Code) avec correction sur 1 bit et détection d’erreur sur 2 bits (seulement en mode sur 16 bits) 

Processeurs SOC Zynq 

25 

LAB 

SDK Vivado 

IP Integrator 

Block 

Importer une plateforme Hw 

Création d’un BSP 

Processeurs SOC Zynq 

Configuration de la plateforme hardware Zynq 

Ajout d’un Top HDL 

Exporter vers SDK 

Block Design 

26 

Création et génération d’une app.SwELF 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

27 

❑ Directement reliées aux entrées/sorties des périphériques qui sont eux-mêmes reliés au bus AMBA du PS, on trouve 54 Multiplexed I/O (MIO) connectées aux broches externes du FPGA et 64 Extended MIO (EMIO) qui sont reliées à la logique programmable PL (partie interne). 

Périphériques SOC Zynq 

Les périphériques du SoC Zynq 

28 

Périphériques SOC Zynq 

Les périphériques du SoC Zynq 

❑ Les MIO sont dîtes multiplexées car toutes les entrées/sorties des périphériques ne peuvent être utilisées en même temps. 

29 

Les périphériques du SoC Zynq 

❑ Certaines I/O des périphériques sont connectées seulement aux MIO : 

➢ USB0 and USB1 ULPI ➢QSPI, ➢ NAND Flash, ➢SRAM/NOR Flash. 

❑Certaines I/O des périphériques sont connectées aux MIO et aux EMIO : 

➢ ETH0 and ETH1 RGMII/MDIO, 

Périphériques SOC Zynq 

➢ ETH0 and ETH1 RGMII/MDIO, ➢ SDIO0 and SDIO1, ➢ CAN, ➢ I2C, ➢ UART, ➢SPI, ➢ GPIO, ➢ Trace Port. ❑ Et certaines I/O des périphériques sont connectées seulement aux EMIO : 

➢ ETH0 and ETH1 MII, GMII, SGMII 

30 

Périphériques SOC Zynq 

Les périphériques du SoC Zynq 

Configuration des MIO PS 

Sélection Sélection et et configuration configuration des périphériques du PS 

31 

Périphériques SOC Zynq 

Les périphériques du SoC Zynq 

Configuration des MIO PS 

Sélection des périphériques 

32 

Périphériques SOC Zynq 

Les périphériques du SoC Zynq 

Configuration des MIO PS 

33 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

34 

Introduction au Tcl 

Langage interactif et interprétable 

Pas de compilation Tout peut être traité comme une chaine de caractères Simple ou compliqué selon le besoin 

Syntaxe Syntaxe simplifié simplifié Fonctionnalités de base disponibles: variables, contrôle, gestion d’erreur, fichier I/O, etc Utilisation principale 

Prototypage rapide Applications sous forme de script 

Utilisation des scripts TCL 

35 

Utilisation des scripts TCL 

Contrôle de Vivado via Tcl 

Lancement à partir de 

l’IDE Vivado: Ecriture des commandes directement sur la console Tcl – – Tools Tools → → Run Run Tcl Tcl Script Script 

36 

Utilisation des scripts TCL 

Exemples de commandes TCL Vivado 

37 

Utilisation des scripts TCL 

Fichiers créés par Vivado Block Design 

Le « Block Design » est sauvegardé en *.bd Tout élément créé dans un « Block Design » peut être recréé avec un script Tcl 

XML 

PS7_init 

.BD 

38 

Fichiers créés par Vivado Block Design 

Fichier XML 

Description de la plateforme Hw pour la génération 

du FSBL et du BSP Crée automatiquement par Vivado et exporté vers 

SDK SDK Un fichier texte, mais ne pas l’éditer, utilisez IP 

Integrator ou des commandes Tcl Contient 

Instanciation du processeur Instanciation des périphériques et des adresses 

Utilisation des scripts TCL 

39 

Utilisation des scripts TCL 

Fichiers créés par Vivado Block Design 

Initialisation du processeur − PS7_Init

Le fichier PS7_Init et la description de la configuration 

du processeur 

Spécifications du contrôleur DDR Configuration PLL 

Modes JTAG Configuration des périphériques Zynq Fichiers C (Bootloader), TCL (init. du proc. En debug) 

et HTML (info.) créés 

40 

Utilisation des scripts TCL 

Fichiers créés par Vivado Block Design 

Généré par Vivado C’est le fichier contenant le « Block Design » de IP Integrator Utilise le nom de votre projet, project.bd 

Pour les labs c’est Base_system.bd Contient et Contrôle 

Fichier (.bd) 

Contient et Contrôle 

Tous les details de votre design (format XML) A ne pas éditer en dehors de Vivado ! 

41 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

42 

Ajout d’un périphérique au PL 

M S 

AXI 

AXI 

AXI 

AXI 

43 

Connexion point-à- point, interface maître-esclave 

Jusqu’à 16 maîtres et 16 esclaves par interface 

Width Conversion 

Conversion Conversion intégrée intégrée entre entre les les différents protocole AXI (AXI4, AXI4−lite, AXI3, AXI4−Stream) 

Chaque connexion possède des registres de pipeline, Input/Output FIFO 

Chaque maître ou esclave a son propre domaine d’horloge →Transformation CLK 

Ajout d’un périphérique au PL 

Bloque d’interfaçage AXI 

44 

Ajout d’un périphérique au PL 

Bloque d’interfaçage AXI 

Interfaçage AXI, décodage d’adresses 

45 

Ajout d’un périphérique au PL 

Bloque d’interfaçage AXI 

Exemple: 

46 

Ajout d’un périphérique au PL 

Bloque d’interfaçage AXI 

Hiérarchie des interfaçages AXI 

47 

Ajout d’un périphérique au PL 

Bloque d’interfaçage AXI 

Standards AXI 

❑ Maintenant − Tout est presque sous AXI4 

48 

Ajout d’un périphérique au PL 

Interface PL-GPIO 

50 MHz/PIN Up to 64 PINs 

49 

Ajout d’un périphérique au PL 

Interface PL-GP AXI 

Utilise un « AXI Interconnect Block » 

50 

Ajout d’un périphérique au PL 

Interfaces PL − GP AXI avec PS DMA 

PS PS DMA 

51 

Ajout d’un périphérique au PL 

Interfaces PL − HP avec PL DMA 

PL PL DMA 

52 

Ajout d’un périphérique au PL 

Interfaces PL − ACP avec PL DMA 

PL DMA 

53 

Signalisation GP AXI (5 canaux) 

Besoin d’un PL AXI Interconnect Block 

Lecture de l’adresse Lecture des données 

Ecriture de l’adresse Ecriture des données Ecriture de bonne réception (par 

l’esclave) 

Ajout d’un périphérique au PL 

54 

Plus que 150 IPs disponibles dans le catalogue La recherche dans le catalogue des IPs est très intuitives ! 

Ajout d’un périphérique au PL 

Ajout d’un IP PL au design 

55 

Ajout d’un périphérique au PL 

Ajout d’un IP PL au design 

Double-Clic sur l’IP dans IP catalog 

L’IP apparait dans Block Design 

56 

Ajout d’un IP PL au design 

Paramétrage d’un IP 

Un double-clic ou un clic droit et sélection de Customize Block pour ouvrir les paramètre configurables de l’IP. Les valeurs par défaut sont appliquées 

Ajout d’un périphérique au PL 

57 

Ajout d’un périphérique au PL 

Ajout d’un IP PL au design 

L’interconnexion des IPs 

Les IPs se connectent au μP via un AXI Interconnect Block, mais….!! 

Est-ce qu’il est nécessaire d’avoir un μP pour contrôler ce block ? 

58 

AXI Endianess 

AXI est « Little Endian » 

– Le premier octet est stocké dans la première adresse ! 

Puisque PLB (The Xilinx Processor Local Bus) est « Big Endian », si vous utilisez des IPs PLB dans votre design, il faut changer les données de Big Endian vers Little Endian. 

Ajout d’un périphérique au PL 

59 

Exercices 

❖Rappelez les interfaces disponibles dans le SoC Zynq pour relier les parties PS et PL…………………….. ❖Quelles sont les standards d’interfaçage possibles d’un IP personnalisé ? ………………………………… ❖Donnez un exemple d’application pour les trois types d’interface AXI (AXI4, AXI4−lite et AXI Stream). ……………………………… ……………………………… ……………………………… ……………………………… ❖Quels sont les principaux rôles assurés par le Snoop Control Unit (SCU)? ……………………………… ❖Quelles sont interfaces AXI du cache L2? ……………………………… ❖Quel est le rôle principal assuré par l’ACP? ………………………… ❖Quel est l’outil sous Vivado qui permet d’ajouter des blocks dans la conception hardware …………………………… 

60 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

61 

Transfert de données PS − PL via les μPs 

Quand les données circulent entre PS−PL via les interfaces AXI GP, les μPs gèrent ces transactions 

Utilisation du contrôleur DMA du PS 

DATA 

62 

Transfert de données PS − PL via les μPs 

Quand l’option « Direct Memory Access » est utilisée, le contrôleur DMA (DMAC) gère les transactions de données 

Utilisation du contrôleur DMA du PS 

DMAC CPU 2x 

DATA 

63 

Options de Lecture/Ecriture du PS DMAC 

Le PS DMAC peut transférer des 

données entre: 

Mémoire OCM Mémoire DDR 

Périphérique esclave du PL Chaque chemin peut être utilisé en 

écriture ou en lecture Les transactions communes: Mémoire à mémoire Mémoire DDR vers/de périph. PL 

Utilisation du contrôleur DMA du PS 

AXI AXI 

64 

Utilisation du contrôleur DMA du PS 

Programmation du PS DMA 

Séquence de programmation du DMAC 

  • Démarrage du DMAC 
  1. Configuration des horloges 2. Configuration de la sécurité 3. Remise à zéro du contrôleur 4. Création des ISRs 

Regardez dans UG585 pour plus de details (chapitre 9) 

  1. Création des ISRs 5. Exécution des transferts DMA 
  • Exécution des transferts DMA 
  1. Ecrire la séquence d’instruction pour le DMAC dans la mémoire 
  2. Création du programme pour un des canaux du DMA b. Sauvegarder le résultat dans une région de la mémoire 

du système 2. Déclenchement de la fonction du canal DMA 

  • Création de l’ISR 

65 

Utilisation du contrôleur DMA du PS 

Opérations DMA 

I/O Peripherals Mémoire 

DRQ: DMA Request Request 

Master Master DMAC 

2 HLQ: Hold 

Request HLDA: Hold 

Acknowledgment 3 CPU 

Slave-Hold State 

66 

Programmation du PS DMA 

L’option DMA est intégré par défaut dans USB, Ethernet, et SD-SDIO Si les 3 IPs sont utilisés, le transfert DMA via les contrôleurs intégrés est l’unique solution pour transférer des données vers les mémoires DDR ou OCM et vers les autres IPs PL via les ports GP 

Utilisation du contrôleur DMA du PS 

67 

Utilisation du contrôleur DMA du PS 

DMA Haute Performance du PL 

❑ Les DMACs du PL sont utilisés pour transférer des données du PL vers les mémoires DDR ou OCM 

68 

Utilisation du contrôleur DMA du PS 

Transfert de données PS−PL via interface HP 

Quand les données transitent entre PS et PL via les interfaces AXI HP, les données peuvent être transmises directement vers la mémoire 

69 

CONTENU 

Introduction à l’architecture d’un système à base de Zynq-7000 

Flot de conception Xilinx 

Présentation des processeurs du SoC Zynq 

❑ ❑ Présentation Présentation des des périphériques périphériques du du SoC SoC Zynq Zynq 

Utilisation des scripts TCL 

Ajout de périphérique au PL 

Utilisation du contrôleur DMA du PS 

Création d’un costum IP 

Utilisation de l’outil Vivado Hardware Manager 

70 

Utilisation du contrôleur DMA du PS 

Vue d’ensemble sur les IPs Vivado 

Vivado a un nouveau catalogue unifié avec tous les IPs disponibles au même endroit IP Catalog de Vivado utilise le standard IP−XACT pour sauvegarder les metadata des Ips (Standard Structure for Packaging, Integrating, and Reusing IP within Tool Flows) L’utilisateur peut ajouter son IP personnalisé (avec IP Packager) Tous Tous les les IPs IPs ont ont un un modèle modèle de de simulation simulation IEEE IEEE P1735 P1735 Possibilité de donner des versions standardisées aux IPs Vivado offre un assistant de création : Tools → Create and Package New IP 

71 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

72 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

73 

Interface AXI4−Lite type esclave 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

Création des fichiers HDL du nouveau IP 

Top Level HDL source 

74 

  • <IP_name>_v1_0.vhd contient le code HDL personnalisé. C’est le fichier Top Level. Il contient l’instanciation de l’interface AXI. C’est le fichier dans lequel nous allons aussi instancier notre IP 
  • <nom_IP>_v1_0_s00_AXI.vhd est le fichier qui contient l’interface AXI: 

Assimile l’interface AXI à de simples registres Nécessite une édition en cas d’utilisation de ports externes 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

Schéma bloque du projet 

75 

Création d’un projet Vivado pour un nouveau IP 

Top Level HDL 

  • Le code Top Level HDL contient des endroits pour ajouter: Paramètres externes 

Ports externes 

L’architecture personnalisée « User 

Logic » 

Utilisation du contrôleur DMA du PS 

76 

Création d’un projet Vivado pour un nouveau IP 

❑ Il est possible de synthétiser l’IP personnalisé avant de l’ajouter dans le catalogue d’IP de Vivado pour : ➢ valider le design IP ➢ vérifier que les connexions sont identiques à ce qui a été définie en VHDL. 

Utilisation du contrôleur DMA du PS 

77 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

Packager l’IP 

78 

Utilisation du contrôleur DMA du PS 

Création d’un projet Vivado pour un nouveau IP 

Ajout de l’IP personnalisé au projet 

79 

Exercices 

❖ L’ajout d’un IP personnalisé (Costum IP) dans le catalogue d’IP de Vivado suit un standard bien déterminé. 

➢Quel est ce standard ? ➢Quel est l’utilité d’un tel standard ? 

❖ Quel est l’outil au niveau de Vivado qui permet d’interfacer, tester et ajouter un IP personnalisé dans le catalogue d’IP de Vivado ? 

❖ Lors de la création d’un IP personnalisé avec Vivado IP Packager, deux fichiers du type .vhd sont créés et qui sont « nom_ip.vhd » et « nom_ip_v1_0_s00_AXI.vhd ». Quelle est l’utilité de chacun de ces deux fichiers. ❖ Quel est l’utilité de l’utilisation de l’option DMA pour le transfert des données entre les deux parties PL-PS? ❖Décrivez les différentes étapes pour une opération DMA. 

80 

 

télécharger gratuitement ARCHITECTURES AVANCÉES SUR PUCE PARTIE : CONCEPTION HARDWARE

Articles similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Bouton retour en haut de la page

Adblock détecté

S'il vous plaît envisager de nous soutenir en désactivant votre bloqueur de publicité