TP de programmation DSP pour le traitement d'image IF4-ARCH
|
|
- Arnaud St-Arnaud
- il y a 7 ans
- Total affichages :
Transcription
1 TP de programmation DSP pour le traitement d'image IF4-ARCH Introduction Objectifs Description de la plate-forme d'expérimentation IEK Première séance : prise en main de code composer studio Préparation Traitement d'images Chargement du projet Compilation, exécution : Traitement d'images Négatif : Seuillage : Convolutions Mesure des performances Outils de mesures Optimisation Comparaison avec des fonctions optimisées en assembleur Utilisations des DMAs Introduction 1.1 Objectifs Le TP sur carte IEKC6x11 s'étend sur 3 séances de 2 heures, 3 heures et 3 heures. Vous aurez l'occasion durant ces séances d'expérimenter : l'utilisation d'une carte DSP pour le traitement d'image basée sur le processeur Texas Instruments TMS320C6211 ou TMS320C6711, d'implanter sur cette plate-forme différents algorithmes de traitement d'images, de mesurer la durée d'exécution (profiling) et optimiser l'implantation, 1
2 d'étudier le contrôleur DMA du DSP C6211 afin d'effectuer des opérations mémoires simples. ATTENTION NE JAMAIS CONNECTER OU DÉCONNECTER L'ALIMENTATION OU LE CONNECTEUR JTAG OU FAIRE UN RESET DE LA CARTE TANT QUE CODE COMPOSER EST LANCE : IL Y A RISQUE DE DESTRUCTION DU DSP AVANT CES MANIPULATIONS VOUS DEVEZ TOUJOURS VERIFIER DANS LE GESTIONNAIRE DE PROGRAMME QUE CCS_APP.EXE N'EST PAS EN COURS D'EXECUTION (le raccourcis KILL_CCS vous permet d'ouvrir un gestionnaire de programme) 1.2 Description de la plate-forme d'expérimentation IEK6711 La carte IEKC6711 peut être connectée à 4 sources vidéo analogiques en entrées et possède une sortie vidéo analogique. Elle repose sur un DSP Texas Instruments TMS320C6711, un FPGA cellules et plusieurs bancs mémoires RAM (Cf. figure ci-dessous). Cette carte peut fonctionner, selon la configuration du FPGA, soit en acquisition d'images, soit en restitution (la votre sera dans cette configuration). En mode acquisition (qui n'est donc pas le mode de votre carte) le signal d'une des 4 entrées analogiques est convertit en un flot numérique par le convertisseur A/N correspondant. Ce flot est ensuite stocké dans la RAM du FPGA par le FPGA. Une fois qu'une image entière est stockée dans la RAM FPGA il faut la transférer dans celle du DSP pour qu'il puisse y faire des traitements (filtrage, compression, etc). Pour cela le FPGA et le DSP sont connectés ensembles par une mémoire RAM double ports (DPRAM) de 16Ko. Cette taille étant insuffisante pour transférer une image entière en une fois ce sont des blocs de 8 lignes qui sont échangés. Côté DSP, on utilise plutôt le DMA pour effectuer rapidement les copies des blocs de 8 lignes vers la RAM du DSP sans gaspiller de puissance CPU. En mode restitution, celui de votre carte, le processus est totalement symétrique : l'image à afficher est supposée d'abord contenue dans la RAM du DSP ou sa RAM extérieure. Il s'agit donc de la découper en blocs de 8 lignes pour la transférer dans la RAM du FPGA par le biais de la petite DPRAM. Quand une image entière a été transférée, le FPGA la transmet à l'unique convertisseur numérique-analogique qui est lui même connecté au moniteur vidéo. Comme tous les processeurs récents, le DSP est équipé d'une interface JTAG qui permet, depuis Code Composer Studio exécuté sur un PC, de contrôler très précisément le DSP : mis en place de points d'arrêts, lecture-écriture des registres internes, accès en lecture-écriture à tous l'espace mémoire. Cette dernière fonctionnalité sera d'ailleurs utilisée pour charger la mémoire du DSP avec un programme et des données. 2
3 3
4 1.3 Première séance : prise en main de code composer studio Il s'agit pour commencer de prendre en main l'outils de développement et d'explorer ses capacités. Pour cela vous exécuterez la partie "Developing a Simple Program " du tutorial intégré à code composer studio (menu "Help" "Tutorial" "Code Composer Studio IDE") 1.4 Préparation Avant de commencer il faut récuperer le fichier compressé TP_I4_DSP_2006.zip que vous trouverez sur pour le copier et le décompresser dans le répertoire c:\temp de votre machine. Vous n'oublierez pas de nettoyer ce répertoire à la fin de chaque TP après en avoir effectué une sauvegarde sur votre compte. Note : il n'est pas possible à code composer d'accéder directement à votre compte c'est pourquoi il faut toujours travailler sur le répertoire local temp. Une fois décompresser vous obtiendrez les répertoires suivants : Affiche_image : ce répertoire contient le projet "display" (faire menu "Project" "open") vous donnant le programme de base permettant d'initialiser la carte et afficher une image (voir description en 2), Exemple_dma : ce répertoire contient le projet "dma-transfert" vous donnant un exemple de base de programmation de l'edma à l'aide de la CSL (voir description en 3), Exemple_dma_timer : idem précédent mais avec utilisation du timer pour chronométrage, Test : ce répertoire contient des fichiers binaires déjà compilés (fichiers "afficheimage.out", "affiche-vidéo.out") afin de tester rapidement la carte quand vous avez un doute sur son fonctionnement. Il suffit, après avoir correctement ré-initialisé la carte si nécessaire, de charger (menu "File" "Load Program" ) puis exécuter ces programmes (menu " Project" "run") en ayant préalablement connecté et allumé le téléviseur qui doit être sur le mode A/V), MaintenanceIEK67 : ne pas exécuter les programmes contenu dans ce répertoire. Ils servent principalement à configurer le FPGA de la carte en mode acquisition ou restitution, docs : documents techniques sur la programmation du DSP C6x et de l'edma. 2 Traitement d'images 2.1 Chargement du projet 1. Lancer CCS. Pour s'exécuter CCS requière des privilèges spéciaux, il s'exécute donc sous les droits d'un utilisateur différents : login=ccs, password=ccs 2. Si le logiciel ouvre la fenêtre suivante : 4
5 il faut alors sélectionner la cible "XDS510 emulator " 3. Charger le projet "display" se trouvant dans le répertoire ``c:/temp/affiche_image/display.pjt'' Ce projet contient les fichiers suivants : définitions de fonctions pour la communication avec le FPGA initialisation du tableau avec l'image programme principal Dans le cadre de ce TP nous nous intéresserons uniquement au fichier maindemo.c Le cœur de ce module est la fonction C "main( )" dont le squelette est le suivant (ouvrir le source du fichier maindemo.c à l'aide du navigateur dans la partie de gauche de Code Composer Studio) :../.. #define WIDTH 352 #define HEIGHT 280 configuration mémoire 5
6 const far unsigned char ImageRef[] = { #include "image.bmp.y.txt"}; //init image void main( void ) { CSL_init(); //init de la librairie CSL utilisée pour faciliter la config. de l'edma board_init(); // init la carte (déclaré dans init6211.c) image_display(imageref); //envoie au FPGA le tableau donné en argument afin qu'il } // l'affiche sur la sortie vidéo/tv (déclaré dans Init6211.c) Remarque : pour ce TP, nous n'utiliserons qu'une sous-partie des fonctionnalités de la carte IEKC6211 : images CIF (352x288) en niveau de gris. La carte est toutefois capable de travailler aussi en plein format vidéo (720x576) et en couleur (YUV422). Le fichier ``image.bmp.y.txt'' contient la séquence de tous les pixels qui forment l'image encodée sous forme ASCII. Ce fichier est créé avec l'utilitaire de conversion rgbbmp_to-ytxt (dans le même répertoire) qui prend en entrée sur la ligne de commande le nom d'un fichier BMP au format RGB 24 bits et qui crée un fichier texte comportant la composante Y correspondante. 2.2 Compilation, exécution : 1. Recompiler le programme (menu "Project" "Rebuild all") 2. Avant chaque chargement il est conseillé de faire un "reset" logiciel de la carte : menu "GEL"reset & clear breakpoint 3. Charger le programme : menu "File""load program" 4. Exécuter le programme: menu "Debug" "run" Il doit s'ensuivre l'affichage des messages (printf) suivants dans CCS : Load FPGA Load FPGA done Affichage de l'image 2.3 Traitement d'images Négatif : Les pixels sont représentés par des entiers codés sur un octet et donc compris entre 0 et 255. Il s'agit d'écrire une fonction negatif( image_source, &image_destination ) qui "inverse" la valeur des pixels de l'image_source de façon à avoir une image en négatif dans image_destination Seuillage : Il s'agit d'écrire une fonction seuillage(seuil, & image_source, &image_destination) qui compare chaque pixel à la valeur du seuil et qui remplace la valeur du pixel par 0 si sa valeur est inférieure au seuil ou par 255 si supérieure ou égale. Les arguments image_source et image_destination sont les adresses des images avant et après transformations Convolutions Il s'agit d'implanter une convolution 3x3. 6
7 Rappel : la convolution d'une image source S de taille NxN avec une matrice MxM consiste à calculer une nouvelle image D dont la valeur de chaque pixel Dij est une fonction de la valeur des pixels voisins du pixel Sij. Par exemple, si les coefficients de la matrice M sont (0,1,0) (1,0,1) (0,1,0), pour chaque pixel on effectuera le traitement suivant : Il faut penser à recadrer la valeur calculée pour chaque pixel afin qu'elle ne dépasse pas la valeur maximum autorisée (255 dans notre cas). Pour simplifier et ne pas ralentir le calcul lors de la gestion des bords de l'image, vous n'appliquerez pas la matrice de convolution sur les pixels extérieur de l'image (1ere et dernière lignes, 1ere et dernière colonne) et vous la coderez en "dur". La fonction à écrire aura donc le prototype suivant : void convol( unsigned char *pimagesource, unsigned char *pimagedest) { // coder la fonction } Après avoir testé le sobel horizontal seul (-1 0 1) (-2 0 2) (-1 0 1), vous implanterez le sobel horizontal et le sobel vertical (-1 2 1) (0 0 0) (1 2 1) puis le calcul du module pour affichage des contours de l'image. 2.4 Mesure des performances 7
8 2.4.1 Outils de mesures Pour mesurer les performances, vous pouvez utiliser l'outil de profiling intégré à CodeComposerStudio. Pour prendre rapidement en main cet outil vous pouvez utiliser le tutorial en ligne que vous obtiendrez dans le menu "Help""Tutorial" "Code composer IDE" "Profiling code exécution". Cependant, cette méthode à l'inconvénient de ralentir beaucoup l'application. Je vous propose donc d'utiliser le timer matériel intégré au processeur. Pour cela vous utiliserez un exemple de code qui configure, lance et lit le timer dans le projet fournit "DMA avec timer". Attention, le timer est incrémenté tous les 4 cycles d'horloges Optimisation Il s'agit maintenant d'optimiser l'exécution. A l'aide des méthodes étudiées lors du TD Optimisation, optimiser cette fonction. Analysez l'amélioration en étudiant le source assembleur généré par CCS. Mesurez les performances et notez les résultats (ramenez en cycles par pixel et en pourcentage d'accélération) A chaque étape d'optimisation, vérifiez par l'affichage que le résultat obtenu est toujours celui attendu. 2.5 Comparaison avec des fonctions optimisées en assembleur Le document [Spru400.pdf] ``TMS320C62x Image/Video Library Programmer's décrit l'utilisation de la bibliothèque IMGLIB de fonctions de traitement d'images optimisées en assembleur. Étudier la liste des fonctions fournies et plus particulièrement le sobel. Estimez le nombre de cycles qu'elle devrait prendre pour son exécution à partir de la documentation, implémentez la fonction de traitement à l'aide de la bibliothèque de Texas Instruments, vérifiez que cela fonctionne et confirmez les performances estimées par la mesure, comparez avec votre implémentation du sobel (en cycles par pixel et en pourcentage d'accélération). 3 Utilisations des DMAs Comme cela a été abordé dans le cours de présentation de l'iekc6211, les DMA sur DSP sont très utilisées car leurs possibilités sont extrêmement puissantes. Vous allez programmer le contrôleur EDMA du DSP TMS320C6711 pour effectuer des opérations simples en créant des fonctions que vous pourrez intercaler dans la chaîne de chargement et de visualisation. Vous devrez implémenter les fonctions suivantes : recopie simple (identique à memcpy) 8
9 retournement horizontal de l'image retournement vertical de l'image rotation de 180 de l'image rotation de 90 d'une portion d'image Pour implémentez ces fonctions, vous utiliserez la bibliothèque CSL fournie avec CodeComposerStudio afin de programmer le DMA. Un exemple de programmation EDMA vous est donné dans le répertoire "c:\temp\exemple-dma. void main() { /* Structures utilisées pour transfert DMA */ EDMA_Handle hedma; EDMA_Config edmacfg; int tcc; /* fin des déclarations */ memset(&imagetmp,0,image_width*image_height); //mise à zéro de ImageTmp /*Initialisation pour transfert DMA :*/ CSL_init(); EDMA_resetAll(); // initialize the board and configue to the right video format board_init(); //Préparation d'un transfer DMA hedma=edma_open(edma_cha_any,edma_open_reset); tcc=edma_intalloc(-1); //Transfert complete code, -1<=>choix automatique /*configuration des structure pour le DMA*/ edmacfg.src = (Uint32) &ImageRef; /* source address */ edmacfg.cnt = IMAGE_WIDTH*IMAGE_HEIGHT/4; /* count */ edmacfg.dst = (Uint32) &ImageTmp; /* destination address */ edmacfg.idx = 1; /*idx */ edmacfg.rld = 0x ; /* reload */ edmacfg.opt=edma_opt_rmk(edma_opt_pri_low, EDMA_OPT_ESIZE_32BIT, EDMA_OPT_2DS_YES, EDMA_OPT_SUM_INC, EDMA_OPT_2DD_YES, EDMA_OPT_DUM_INC, EDMA_OPT_TCINT_YES, EDMA_OPT_TCC_OF(tcc), EDMA_OPT_LINK_NO, EDMA_OPT_FS_NO); EDMA_config(hEdma,&edmaCfg); //Configuration du DMA EDMA_setChannel(hEdma); //Démarrage du transfert while (!EDMA_intTest(tcc)) ; //attendre la fin du transfert=attendre valeur tcc) /* Display Luminance only*/ image_display(imagetmp); } Pour déterminer les valeurs de configurations de l'edma vous pourrez utilisez les documents suivants (accessibles depuis la rubrique Help de CCS ou dans le répertoire c:\temp\tp_i4_dsp_2004\docs) : [Spru190.pdf] ``TMS320C6000 Peripherals Reference Guide'' : ce document décrit le fonctionnement interne du DSP, notamment le contrôleur EDMA/QDMA (chap. 6 et Annexe A), [Spru401.pdf] ``TMS320C6000 Chip Support Library API User's Guide'' 9
10 Remarque importante : les erreurs de programmation de l'edma se traduisent systématiquement par un plantage de la carte. En effet, l'edma étant une entité autonome du processeur, toute perte de synchronisation entraîne la nécessité de faire un reset (n'oubliez pas de quitter CCS et de vérifier que le processus n'existe plus avant de faire ce reset). Question : pourquoi la valeur "cnt" du DMA est-elle égale à IMAGE_WIDTH*IMAGE_HEIGHT/4? 10
TP : Gestion d une image au format PGM
TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples
Plus en détailLe langage C. Séance n 4
Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailSeance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.
Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailDE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
Plus en détailMAC-TC: programmation d un plate forme DSP-FPGA
MAC-TC: programmation d un plate forme DSP-FPGA Tanguy Risset avec l aide de: Nicolas Fournel, Antoine Fraboulet, Claire Goursaud, Arnaud Tisserand - p. 1/17 Plan Partie 1: le système Lyrtech Introduction
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700
ÉCOLE POLYTECHNIQUE DE MONTRÉAL Département de Génie Électrique La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700 M. Corinthios et Zaher Dannawi 29 août 2007 2 Tables des
Plus en détailLes chaînes de caractères
Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détailUtilisation du logiciel ImageJ gratuit
Utilisation du logiciel ImageJ gratuit on peut récupérer sur le lien suivant : http://rsbweb.nih.gov/ij/ à partir duquel ce résumé très bref (!!) a été élaboré Lancer ImageJ Vous avez une fenêtre qui s'ouvre
Plus en détailMICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C
Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailIN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C
IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en
Plus en détailMANUEL TBI - INTERWRITE
MANUEL TBI - INTERWRITE TBIIW TITRE Manuel InterWrite WorkSpace INTITULE Manuel d'utilisation du logiciel InterWrite accompagnant le tableau blanc interactif CALCOMP OBJECTIF Aide mémoire sur les fonctionnalités
Plus en détailProgrammation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement
Plus en détailInstallation et prise en main
TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications
Plus en détail03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing
3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps
Plus en détailTP SIN Traitement d image
TP SIN Traitement d image Pré requis (l élève doit savoir): - Utiliser un ordinateur Objectif terminale : L élève doit être capable de reconnaître un format d image et d expliquer les différents types
Plus en détailIntroduction à Eclipse
Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailUSTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 :
USTL - Licence ST-A 1ère année 2005-2006 Codage de l information TP 1 : Objectifs du TP Ce TP a pour but 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats de fichiers.
Plus en détailMise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision
Page 1 de 7 Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision Table des matières Table des matières... 1 1. Premier
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailChap III : Les tableaux
Chap III : Les tableaux Dans cette partie, on va étudier quelques structures de données de base tels que : Les tableaux (vecteur et matrice) Les chaînes de caractères LA STRUCTURE DE TABLEAU Introduction
Plus en détailStructure fonctionnelle d un SGBD
Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert
Plus en détailLicence Sciences et Technologies Examen janvier 2010
Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.
Plus en détailSeafile, pour simplifier l'accès à ses fichiers, les partager et les synchroniser
Seafile, pour simplifier l'accès à ses fichiers, les partager et les Accès : hors E.N.T. Direction Informatique Accès : hors E.N.T. Version : 2.3 Date : 20/05/2015 Editeur : Auteur(s) : Copyright : Licence
Plus en détailContrôle d accès UTIL TP N 1 découverte
Contrôle d accès UTIL TP N 1 découverte A partir de : Documents sur CD TIL : \CD usesame\documentations\produits_til\modules\util_tillys fpr_utilv2.pdf FTe_UTiL_V2.pdf UTiL2_express.pdf \CD usesame\documentations\logiciels_til\tilman
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
Plus en détailPIC EVAL Dev Board PIC18F97J60
PIC EVAL Dev Board PIC18F97J60 2 TP1 : Prise en main de l environnement de programmation pour la carte PIC EVAL-ANFA Pour répondre aux questions et justifier vos réponses, vous pouvez faire des copies
Plus en détailLES ACCES ODBC AVEC LE SYSTEME SAS
LES ACCES ODBC AVEC LE SYSTEME SAS I. Présentation II. SAS/ACCESS to ODBC III. Driver ODBC SAS IV. Driver ODBC SAS Universel V. Version 8 VI. Références I. Présentation Introduction ODBC, qui signifie
Plus en détailProjet Matlab : un logiciel de cryptage
Projet Matlab : un logiciel de cryptage La stéganographie (du grec steganos : couvert et graphein : écriture) consiste à dissimuler une information au sein d'une autre à caractère anodin, de sorte que
Plus en détailModules Multimédia PAO (Adobe)
Modules Multimédia PAO (Adobe) Pré-requis : Bonne maîtrise de la manipulation d'un PC (environnement Windows ou Mac) et de la navigation Internet. Disposition pour le graphisme recommandée. Mémoire visuelle,
Plus en détailLes structures. Chapitre 3
Chapitre 3 Les structures Nous continuons notre étude des structures de données qui sont prédéfinies dans la plupart des langages informatiques. La structure de tableau permet de regrouper un certain nombre
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailTemps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> Septembre 2011
Temps Réel Jérôme Pouiller Septembre 2011 Sommaire Problèmatique Le monotâche Le multitâches L ordonnanement Le partage de ressources Problèmatiques des OS temps réels J. Pouiller
Plus en détailMaster IMA - UMPC Paris 6 RDMM - Année 2009-2010 Fiche de TP
Master IMA - UMPC Paris 6 RDMM - Année 2009-200 Fiche de TP Préliminaires. Récupérez l archive du logiciel de TP à partir du lien suivant : http://www.ensta.fr/~manzaner/cours/ima/tp2009.tar 2. Développez
Plus en détailChapitre I Notions de base et outils de travail
Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement
Plus en détailSYSTEME DE TELESURVEILLANCE VIDEO
SYSTEME DE TELESURVEILLANCE VIDEO Avril - Juin 98 Résumé des auteurs : Auteurs : Bertrand LASSERRE Responsables : P. KADIONIK Y. BERTHOUMIEU Nombre de pages : 68 Nombre de pages «Annexe» : 0 Remerciements
Plus en détailTD/TP 1 Introduction au SDK d Android
TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailProgrammation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire
Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS CCS Sommaire Généralités sur le langage. 2 Structure d un programme en C.. 3 Les constantes et équivalences.. 4 Les variables...
Plus en détailARDUINO DOSSIER RESSOURCE POUR LA CLASSE
ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée
Plus en détailAnalyse de performance, monitoring
Analyse de performance, monitoring Plan Principes de profilage Projet TPTP dans Eclipse Utilisation des profiling tools de TPTP Philippe Collet Master 1 Informatique 2009-2010 http://deptinfo.unice.fr/twiki/bin/view/minfo/gl
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailCARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1
CARPE (Documentation Informatique) 1 CARPE Version 2.00 Août 2013 Documentation Informatique S E T R A Programme CARPE - Manuel informatique de l'utilisateur CARPE (Documentation Informatique) 2 Table
Plus en détailLES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES
LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES Compétences mises en jeu durant l'activité : Compétences générales : S'impliquer, être autonome. Compétence(s) spécifique(s) : Reconnaître des signaux de nature
Plus en détailUn exemple avec WORKSPACE d'interwrite
S'approprier un utilitaire de TNI Un exemple avec WORKSPACE d'interwrite Objectifs : S'approprier un utilitaire de TNI («soft»)afin de percevoir la plus-value pédagogique de l'outil. Pour cela utiliser
Plus en détailManuel d'installation de GESLAB Client Lourd
Manuel d'installation GESLAB Client Lourd Référence Date de la dernière mise à jour Rédigé par Objet GESLAB_MINS_TECH_Manuel d'installation GESLAB Client 15/04/2013 Steria Manuel d'installation de GESLAB
Plus en détailSéance 0 : Linux + Octave : le compromis idéal
Séance 0 : Linux + Octave : le compromis idéal Introduction Linux est un système d'exploitation multi-tâches et multi-utilisateurs, basé sur la gratuité et développé par une communauté de passionnés. C'est
Plus en détailSystèmes embarqués D.Rossier
D.Rossier Manuel IEM (v0.2) Manuel d'utilisation pour les laboratoires IEM Auteur: G. Boutillier / C. Bardet Objectif Cette documentation donne de brèves explications sur l'utilisation des différents outils,
Plus en détailIntroduction à la Programmation Parallèle: MPI
Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailCours Langage C/C++ Programmation modulaire
Cours Langage C/C++ Programmation modulaire Thierry Vaira BTS IRIS Avignon tvaira@free.fr «v0.1 Rappel Programmation modulaire (1/2) Le découpage d'un programme en sous-programmes est appelée programmation
Plus en détailGuide de démarrage rapide. (pour la version 5.0.)
Guide de démarrage rapide (pour la version 5.0.) 2 Table des matières Introduction Réglages de l application MyTalk Mobile 1. MODIFICATION 2. DEMARRER 3. AFFICHER 4. SYNTHETISEUR VOCAL 5. NOMBRE DE MOTS
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailIntroduction à Expression Web 2
Introduction à Expression Web 2 Définitions Expression Web 2 est l éditeur HTML de Microsoft qui répond aux standard dew3c. Lorsque vous démarrez le logiciel Expression Web 2, vous avez le choix de créer
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailIMAGES NUMÉRIQUES MATRICIELLES EN SCILAB
IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB Ce document, écrit par des animateurs de l IREM de Besançon, a pour objectif de présenter quelques unes des fonctions du logiciel Scilab, celles qui sont spécifiques
Plus en détailOutils permettant la diffusion de l information. Un point sur le droit numérique
Technologies de l Information et de la Communication Introduction aux NTE/TICE Présentation des UNR UNT Outils permettant la diffusion de l information Conceptualisation d un module d apprentissage numérique
Plus en détailCodage d information. Codage d information : -Définition-
Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale
Plus en détailLe service FTP. M.BOUABID, 04-2015 Page 1 sur 5
Le service FTP 1) Présentation du protocole FTP Le File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un protocole de communication destiné à l échange informatique de fichiers sur
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailSUR MODULE CAMÉRA C38A (OV7620)
Applications maquette d'étude EP10K20 DÉMULTIPLEXEUR BT.656 SUR MODULE CAMÉRA C38A OV7620 SCHÉMAS ET DESCRIPTIONS AHDL 1. Schéma principal Le démultiplexeur proprement dit est la fonction "Decod_BT656_1".
Plus en détailLe Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr
Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailSélection du contrôleur
Démo CoDeSys - 1 - 1. Configuration de l environnement de travail : Lancer le logiciel CoDeSys Fichier Nouveau Lors de la première utilisation, une boîte de dialogue apparaît permettant la sélection du
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailLe prototype de la fonction main()
Le prototype de la fonction main() 1. Introduction...1 2. Paramètres et type de retour de la fonction main()...1 3. Exemple 1...2 4. La fonction exit() du C...2 5. Détecter le code de retour d un programme
Plus en détailProcédure : Sauvegarder un Windows 7 sur un disque réseau
Procédure : Sauvegarder un Windows 7 sur un disque réseau Pour achever cette procédure, aucune installation n'est nécessaire. Dans cette procédure, nous sauvegarderons ces éléments : Les documents des
Plus en détailObjet : Guide d'installation et de maintenance pour "My IC Phone 8082" connecté à un OmniPCX Office R810
Communication Technique TC1619 Ed 01 Date : 17/02/2012 Produit : Alcatel-Lucent OmniPCX Office Nb. de pages: 14 Objet : Guide d'installation et de maintenance pour "My IC Phone 8082" connecté à un OmniPCX
Plus en détailTraitement numérique de l'image. Raphaël Isdant - 2009
Traitement numérique de l'image 1/ L'IMAGE NUMÉRIQUE : COMPOSITION ET CARACTÉRISTIQUES 1.1 - Le pixel: Une image numérique est constituée d'un ensemble de points appelés pixels (abréviation de PICture
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailStorebox User Guide. Swisscom (Suisse) SA
Storebox User Guide Swisscom (Suisse) SA Table des matières. Généralités/Configuration 3. Qu'est-ce que Storebox? 4. Structure de dossier 5.3 Connexion au portail de l'équipe 6.4 Déconnexion du portail
Plus en détail1.6- Génération de nombres aléatoires
1.6- Génération de nombres aléatoires 1- Le générateur aléatoire disponible en C++ 2 Création d'un générateur aléatoire uniforme sur un intervalle 3- Génération de valeurs aléatoires selon une loi normale
Plus en détailUniversité du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.
Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local
Plus en détailComment Définir une Plage de données Pour Utiliser Fonctions de Filtres et de Tris
Comment Définir une Plage de données Pour Utiliser Fonctions de Filtres et de Tris Diffusé par Le Projet Documentation OpenOffice.org Table des matières 1. Définir les plages...3 2. Sélectionner une plage...4
Plus en détailTD de supervision. J.P. Chemla. Polytech Tours Département productique 2ème année
TD de supervision J.P. Chemla Polytech Tours Département productique 2ème année 1 Présentation de l équipement On veut superviser une cuve dans un batiment. Les informations à visualiser sont les suivantes
Plus en détailMANUELS NUMÉRIQUES PROCÉDURE DE TÉLÉCHARGEMENT
MANUELS NUMÉRIQUES PROCÉDURE DE TÉLÉCHARGEMENT Vous venez de télécharger un manuel numérique sur votre poste. Afin de vous faciliter son exploitation, nous avons listé ci dessous les manipulations à faire
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailOutils pour la pratique
Cinquième partie Outils pour la pratique 121 CHAPITRE 1 Les bases des séances de TP Avant de lire cettre section, il est suggéré de relire vos notes de cours se rapportant au système d exploitation Unix.
Plus en détail. Plan du cours. . Architecture: Fermi (2010-12), Kepler (12-?)
Plan du cours Vision mate riel: architecture cartes graphiques NVIDIA INF 560 Calcul Paralle le et Distribue Cours 3 Vision logiciel: l abstraction logique de l architecture propose e par le langage CUDA
Plus en détailFête de la science Initiation au traitement des images
Fête de la science Initiation au traitement des images Détection automatique de plaques minéralogiques à partir d'un téléphone portable et atelier propose de créer un programme informatique pour un téléphone
Plus en détailLe langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie
Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis
Plus en détailHMI target Visu / PLC HMI. Pour réaliser une interface homme machine avec PLC control
HMI target Visu / PLC HMI Pour réaliser une interface homme machine avec PLC control VERSION : 1.4 / PH DATE : 5 Novembre 2014 Sommaire Ce manuel explique de manière pratique les étapes successives pour
Plus en détailComme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:
Travaux Pratiques 3. IFT 1002/IFT 1005. Structure Interne des Ordinateurs. Département d'informatique et de génie logiciel. Université Laval. Hiver 2012. Prof : Bui Minh Duc. Tous les exercices sont indépendants.
Plus en détail