La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 MISE EN ŒUVRE DUNE APPLICATION DE TRAITEMENT DIMAGE SUR LA PLATE FORME ML310.

Présentations similaires


Présentation au sujet: "Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 MISE EN ŒUVRE DUNE APPLICATION DE TRAITEMENT DIMAGE SUR LA PLATE FORME ML310."— Transcription de la présentation:

1 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 MISE EN ŒUVRE DUNE APPLICATION DE TRAITEMENT DIMAGE SUR LA PLATE FORME ML310

2 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 2 PLAN Définition des systèmes sur puce Description de la carte de prototypage rapide ML310 Description puis limplantation du module de compression dimage JPEG en matériel Partie logicielle de lapplication de traitement dimage Démonstration Conclusion

3 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 3 But du projet Réaliser une application de traitement dimage en utilisant au mieux les ressources de la carte ML310 : –capacités du FPGA embarqué –capacités des périphériques matériels –capacités logicielles

4 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 4 Les systèmes sur puce Début années 90 Actuellement Système sur circuit imprimé Implantation dans un seul composant ASIC ou FPGA Définition des systèmes sur puce

5 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 5 Définition des SOPC/SOC « System On Programmable Chip» : est une collection déléments en interaction sur un seul circuit programmable. Cependant, tous les circuits intégrés ne sont pas des SOPC, un SOPC implémente une fonction « complète » –Décodeur MPEG2 vidéo + audio + système + transport + graphique + interface utilisateur Les éléments constitutifs dun SOPC sont "complexes", réutilisables et de nature variée Définition des systèmes sur puce

6 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 6 Avantages du système sur puce Faible encombrement Robustesse améliorée (mécanique, électromagnétique) Faible consommation électrique Meilleures performances en fréquence Temps de mise sur le marché plus court Diminution du coût global Définition des systèmes sur puce

7 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 7 Contraintes des systèmes sur puce Méthodologie de développement plus stricte Absence d outils « polyvalent » pour le partitionnement automatique logiciel/matériel De fortes dépendances entre le logiciel et le matériel Définition des systèmes sur puce

8 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 8 Les FPGA pour les SOPC Définition des systèmes sur puce

9 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Description de la carte de prototypage rapide ML310 Les caractéristiques matérielles Les outils de développement du matériel Les outils de développement du logiciel

10 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 10 FPGA Audio, Ethernet USB, ports Série et // PCI IDE Compact Flash DDR E/S Description de la carte de prototypage rapide ML310 JTAG

11 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 11 Le FPGA XC2VP30 8 Unités de gestion des horloges Multiplication/Division de fréquence Contrôle du déphasage des horloges 2 PowerPC 405 Masque créé par IBM Processeur RISC fonctionnant à 300MHz 556 Entrées/Sorties « SelectIO Ultra » Configurable en tension 1,2 à 3,3V 47 Normes différentes PCI,LVTTL… 4 RocketIO Multi-Gigabit Convertisseurs Série => Parallèle Jusquà 6,3 Gbit/s 136 Multiplieurs 18x18 bits résultat sur 36 bits Blocs Logiques Configurables « CLB » Réalisation de fonctions logiques synchrones, asynchrones ou de mémorisation Description de la carte de prototypage rapide ML Blocs SelectRAM Mémoire double port de 18Kb Configurables de 16Kx1bit à 512x36bits

12 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 12 Les périphériques de la ML310 RS232 SMBus EEPROM SPI GPIO/LEDs 256MB DDR DIMMHigh-Speed PM1High-Speed PM2 Bus PCI page suivante CF System ACE JTAG Description de la carte de prototypage rapide ML310

13 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 13 AMD Flash GPIOIDE(2)USB(2) RS232(2) PS/2 KPort //SMBus Audio Ali M1535+ South Bridge Intel GD /100 Ethernet NIC RJ45 Bus PCI 3,3V du FPGA PCI 3,3V TI PCI 2250 PCI 5V Description de la carte de prototypage rapide ML310

14 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 14 Outils de développement matériel de la carte ML310 Simulation MODELSIM Synthèse SYNPLIFY ISE Développement Matériel de lIP Xilinx Platform Studio Développement de la Plate Forme Matérielle Description de la carte de prototypage rapide ML310

15 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 15 Outils de développement du matériel de la carte ML310 Xilinx Platform Studio (XPS) Carte ML310 ISE Développement Matériel de lIP Simulation MODELSIM Synthèse SYNPLIFY FPGA XC2VP30 Entrées Sorties Développement de la Plate Forme Matérielle PPC Bus CoreConnect Interface BUS/IP Périphériques et Bus Cartes Périphériques Générer le BitStream IP ISE Développement de Linterface entre lIP et la Plate Forme Matérielle Description de la carte de prototypage rapide ML310

16 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 16 Outils de développement du logiciel de la carte ML310 Mode Stand-Alone avec Xilinx Platform Studio –Réservé aux applications simples –Les librairies pour accéder aux périphériques sont à développer par lutilisateur Utilisation dun système dexploitation OS –VxWorks Nécessite des équipements matériels supplémentaires (VisionProbe) Nécessite des outils délivrés sous licences payantes (SingleStep, Tornado) –Linux Pas de matériel supplémentaire De nombreux outils libres et sous licences disponibles Description de la carte de prototypage rapide ML310

17 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 17 Outils de développement du logiciel pour LINUX Drivers et Modules LinuxNoyau Linux Interpréteur de commandes Le Matériel LUtilisateur Les Applications Partie libre Description de la carte de prototypage rapide ML310

18 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 18 Compilateur Gcc Version dévaluation De MontaVista Outils de développement du logiciel pour LINUX 2 Xilinx Platform Studio Compilateur Croisé CrossTool Les applications de traitement dimage Les utilitaires « Server Web, librairies… » Librairies + Noyau Linux Générique = Drivers et Modules LinuxNoyau Linux Description de la carte de prototypage rapide ML310

19 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 19 Répartition des applications Compilateur Gcc Disque Dur de la ML310 Version dévaluation De MontaVistaXilinx Platform Studio Compilateur Croisé CrossTool Drivers et Modules Linux Les utilitaires« Server Web, librairies… » Carte ML310 Cartes Compact Flash Noyau Linux Les Applications de traitement dimage Compilateur Gcc PC Disque dur du PC Xilinx Platform StudioVersion dévaluation MontaVista CrossTool Disque partagé Console Telnet Liaison Ethernet Description de la carte de prototypage rapide ML310

20 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 APPLICATION DE TRAITEMENT D IMAGE Principe de la compression JPEG Préparation de limplantation du noyau JPEG sur le FPGA de la carte ML310

21 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 21 Le format de fichier embarquant un flux codé en JPEG est JFIF (JPEG File Interchange Format, soit en français Format d'échange de fichiers JPEG), Principe de la compression JPEG Rééchantillonnage de la chrominance, car l'oeil ne peut discerner de différences de chrominance au sein d'un carré de 2x2 points Découpage de chaque composante en blocs de 8x8 points Application de la fonction 2D DCT transformation en cosinus discrète qui décompose la matrice 8x8 en somme de fréquences Quantification de chaque bloc, on applique un coefficient de perte pour diminuer valeurs des hautes fréquences (ratio taille/qualité) Encodage de l'image en parcourant le bloc en zig-zag suivi dun codage RLE ou codage des répétitions pour enlever un maximum de valeurs nulles Compression de l'image avec la méthode d'Huffman Application de traitement dimage

22 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 22 Caractéristique du noyau JPEG Composant JPEG est disponible sur le site OPENCORE Respecte la norme JPEG ISO ITU-T81: –Basé sur une DCT à 2D. –Encodage selon la méthode Huffman. –Type de fichier de sortie JFIF Header. –Trois taux de compression pour une image couleur ou noir et blanc RGB de 352x288 codée sur 24bits. Ressources matérielles : –Prévu pour être implanté dans un FPGA XILINX Virtex XC2V1000 (Technologie précédant le Virtex II Pro) –Conçu à partir de 3 IP Xilinx Coregen dont la DCT (2D Forward DCT) –11 BlockRAMs utilisés, 3969 LUTs utilisées –Fréq. Horloge : 41.2 MHz for XC2V Application de traitement dimage

23 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 23 Adaptation du code JPEG à la cible FPGA XC2VP30 OpenCore JPEG Pour un FPGA XILINX XC2V1000 Adaptation de lOpenCore JPEG Pour un FPGA XILINX XC2VP30 Xilinx Platform Studio ModelSim Simulations Application de traitement dimage

24 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 24 Résultats Occupe 7976 LUT soit 29% du FPGA Peut être implanté en plus de lenvironnement PCI Constats: –La fréquence de fonctionnement maximale simulée après placement routage est de 33MHz –Le fonctionnement du code de simulation nest pas stable –Le fichier de limage compressée JPEG est généré pour la simulation fonctionnelle du code VHDL Application de traitement dimage

25 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 25 Modifications apportées Résolution des problèmes liés à linstabilité du code Réécriture du fichier de simulation Amélioration de linterface de contrôle du composant Ajout dune FIFO dentrée Ajout dun contrôleur de remplissage de la FIFO Ajout dun contrôleur de synchronisation de la compression Obtention du fichier de limage compressée JPEG Ajout de la logique nécessaire et de la mémoire pour stocker le fichier résultat selon le standard JPEG Application de traitement dimage

26 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 26 Le composant JPEG modifié OpenCore JPEG Pour un FPGA XILINX XC2VP30 Buffer de Stockage de limage JPEG Nouveau Fichier de Simulation Logique de Gestion des adresses Données Compressées JPEG Modifié FIFO DEntrée Contrôleur de Compression Contrôleur de Remplissage Initialisation de la compression Reset du composant Nb L/C IM C/NB Lancement de La compression Envoi de Limage RGB FIFO Pleine RGB La FIFO Contient Des Données Busy Image Envoyée Attente de la Fin de Compression Compression Terminée Extraction de Limage JPEG Données Compressées Fichier JPEG Application de traitement dimage

27 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 27 Préparation de limplantation 33MHz 100MHz Répartition des Entrées/sorties sur 4 registres de 32 bits –Trois en entrée –Un en sortie Application de traitement dimage

28 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 28 Résultat de la simulation du composant JPEG modifié 2 Image BMP 352x bits 297 Ko ( octets) Image JPEG 352x bits 9.96 Ko ( octets) Application de traitement dimage Effets de blocs dus à la DCT

29 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 IMPLANTATION DU COMPOSANT JPEG SUR LA CARTE ML310 Le choix des interfaces entre le processeur et le composant Les résultats de limplantation

30 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 30 Interfaçage du composant JPEG au bus Coreconnect Implantation du composant JPEG sur la carte ML310

31 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 31 Résultats de limplantation du composant JPEG sur la carte ML310 La fréquence de fonctionnement réelle est de 10MHz Capacité de traitement maximum 6 images par secondes au format 352x bit quelque soit la charge du processeur sous Linux Taux FaibleTaux MoyenTaux Fort Moyenne pour 10 Images de 352x Implantation du composant JPEG sur la carte ML310

32 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 PARTIE LOGICIELLE Cahier des charges de la partie logicielle Séquence dacquisition puis de compression depuis une page HTML

33 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 33 Cahier des charges pour la partie logicielle Acquisition de limage depuis une WebCam connectée sur le port USB de la ML310 Application utilisable depuis le réseau Ethernet –Lancement de lacquisition/compression depuis une page HTML Avec paramétrage de la taille de limage –Affichage de limage prise par la WebCam Sur la page HTML et sur un moniteur relié à la carte ML310 –Affichage des images compressées sur le page HTML Partie logicielle

34 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 34 Disque Dur Carte ML310 Déroulement de lapplication logicielle Liaison Ethernet Serveur Apache Lancement de lapplication depuis un Navigateur Windows Initialisation De la WebCam En 640x x480 Lancement de LAcquisition Puis de la Compression YUV x480 YUV x480 BMP 640x480 BMP 640x480 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 JPEG N x240 BMP 320x240 BMP 320x240 BMP 320x240 BMP 320x240 BMP 320x240 BMP 320x240 BMP 320x240 JPEG C x240 JPEG C x240 JPEG C x240 JPEG N x240 JPEG N x240 JPEG N x240 Partie logicielle

35 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 35 Démonstration Lancement de la console en mode Telnet Page du serveur Apache Lien vers lacquisition puis compression dune image de 640x480 24bits

36 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 36 Conclusion Lapplication est fonctionnelle même si les performances ne sont optimales Dun point de vue personnel –Acquérir des connaissances sur les FPGA Programmation Simulation Synthèse Implantation –Acquérir des connaissances sur le logiciel embarqué Mise en place dun OS Développement des couches logicielles bas niveau

37 Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 Page 37 QUESTIONS ?


Télécharger ppt "Mémoire d'Ingénieur CNAM en Electronique 05/12/2006 MISE EN ŒUVRE DUNE APPLICATION DE TRAITEMENT DIMAGE SUR LA PLATE FORME ML310."

Présentations similaires


Annonces Google