Travaux Pratiques Architecture des Ordinateurs
|
|
- Roger Mélançon
- il y a 8 ans
- Total affichages :
Transcription
1 Université de Savoie Module I621 Travaux Pratiques Architecture des Ordinateurs Sylvain MONTAGNY Bâtiment chablais, bureau TP1 : Simulation des mémoires caches et du pipeline d un processeur TP 2 : Application sur cible à microprocesseurs (1) TP 3 : Application sur cible à microprocesseurs (2) Retrouver tous les documents nécessaires au TP sur le site
2 Université de Savoie Module I621 Architecture des Ordinateurs TP1 Simulation de mémoire cache et pipeline Objectifs : Comprendre le déroulement d un logiciel dans une architecture à microprocesseur. Un compte rendu sera remis avec pour consignes : Format PDF en un seul fichier. Le nom du fichier sera : I621-TPx-Nombinome1-Nombinome2.pdf Envoyé à sylvain.montagny@univ-savoie.fr Votre compte rendu sera bien reçu seulement si vous avez un message de confirmation de notre part. Les parties recopiées entres binômes ne seront pas corrigées. 1. Présentation 1.1. Objectifs Nous allons travailler sur une architecture MIPS 32 bits (Microprocessor without Interlocked Pipeline Stages). L'architecture MIPS est une architecture de processeur de type RISC (Reduced Instruction Set Computer). Son architecture est une référence. Les processeurs fabriqués selon cette architecture sont surtout utilisés dans les systèmes embarqués. L objectif n est pas d étudier cette architecture en particulier, ni d étudier le jeu d instruction de ce processeur. Néanmoins nous allons examiner le déroulement d un logiciel à l aide d un simulateur d architecture MIPS32. Ceci nous permettra de mieux comprendre l organisation et l exécution du code pour le microprocesseur. Vous pouvez parcourir le site web pour visualiser quelques applications des microprocesseurs MIPS Présentation du simulateur MARS MARS is a software simulator for the MIPS assembly language intended for educational use. We will explore the capabilities of MARS release MARS may be downloaded from 2. Prise en main de l environnement Remarques : Certaines questions relèvent plus de la culture générale. Vous pourrez à juste titre chercher des informations sur Internet à ce sujet.
3 >Lancer Mars.jar, dont l application est codée en JAVA. >Ouvrir le code assembleur row-major.asm >Assembler le code (Run>Assemble) L icone permet de lancer l exécution du programme jusqu à la fin. En utilisant cette fonction vous observez le surlignement jaune qui montre l adresse du programme en cours d exécution. Les valeurs du programme qui sont calculées apparaissent dans le segment de donnée. L icone permet de faire un reset du programme et des valeurs de l ensemble des registres du simulateur. L icone permet d exécuter une instruction après l autre. Autrement dit, de faire de l exécution pas à pas. Cette fonction est complété par l icône, qui permet de revenir d un pas : single-step backwards. Le processeur utilise un adressage par octet. Vous pouvez changer le format de visualisation du contenu des adresses et des adresses en hexadécimal ou en décimal :. Dans le logiciel MARS, ajuster le «run speed» : de voir l évolution de l algorithme en fonction du temps. afin d avoir le temps Dans la présentation du segment de code (Text segment en anglais) vous avez les colonnes suivantes : Q1. Précisez ce que chacune des colonnes contiennent. Vous prendrez un exemple en étudiant la ligne de code 41 du programme. Vous vous aiderez de la documentation en annexe. Tout doit pouvoir être justifié : loop: mult $s0, $t1 Q2. Quel est le registre du microprocesseur qui spécifie l adresse de la prochaine instruction à exécuter dans le logiciel. Quelle est la valeur de ce registre au Reset? Est-ce logique par rapport à l implantation de votre programme en mémoire? Q3. Qu est ce que le «text segment» et le «data segment»? Q4. Expliquez les cases : dans le «data segment». Q5. Sachant que le processeur MIPS32 est un processeur 32 bits, quel est la taille d un mot mémoire? Quelle quantité d information le processeur sera-t-il capable de stocker en un seul cycle? Depuis l aide, (Help>Help>Basic_Instructions) vous trouverez l ensemble des instructions disponibles dans ce microprocesseur.
4 Les processeurs MIPS et leurs architectures ont beaucoup évolués depuis leur première version. Le document ci-dessous présente une introduction du jeu d instruction de ce processeur. Q6. Qu est ce que le jeu d instruction d un processeur? Q7. Expliquer en une phrase le message que souhaite faire passer le constructeur au sujet du jeu d instruction de l ensemble des processeurs MIPS. (Ceci est aussi vrai pour tous les processeurs et beaucoup d autres technologies). Q8. Expliquer ce que fait le programme en regardant le code C dans les commentaires (au début du code assembleur). Essayer de retrouver les différentes étapes depuis le code assembleur. Dans le code suivant, vous écrirez sans rentrer dans le détail, le code C aligné sur le code assembleur. CODE ASSEMBLEUR.data data:.word 0 : 256 # storage for 16x16 matrix of words.text li $t0, 16 # $t0 = number of rows li $t1, 16 # $t1 = number of columns move $s0, $zero # $s0 = row counter move $s1, $zero # $s1 = column counter move $t2, $zero # $t2 = the value to be stored CODE C loop: mult $s0, $t1 # $s2 = row * #cols (two-instruction sequence) mflo $s2 # move multiply result from lo register to $s2 add $s2, $s2, $s1 # $s2 += column counter sll $s2, $s2, 2 # $s2 *= 4 (shift left 2 bits) for byte offset
5 sw $t2, data($s2) # store the value in matrix element addi $t2, $t2, 1 # increment value to be stored # Loop control: addi $s1, $s1, 1 # increment column counter bne $s1, $t1, loop # not at end of row so loop back move $s1, $zero # reset column counter addi $s0, $s0, 1 # increment row counter bne $s0, $t0, loop # not at end of matrix so loop back # We're finished traversing the matrix. li $v0, 10 # system service 10 is exit syscall # we are outta here. 3. Applications 3.1. Statistique d exécution Dans le processeur MIPS comme dans tous les processeurs, il existe des instructions : De calcul arithmétique et logique De transfert de donnée (µp>mémoire ou Mémoire>µP) Instruction de contrôle (saut ou branchement conditionnel) Q9. Grâce à l outil «Instruction Statistics», donner le pourcentage des instructions les plus utilisées. Selon vous, d un point de vue de la rapidité d exécution, quel type d instruction le processeur sait bien exécuter? Pour lesquelles il est le plus lent, pourquoi? Note : cliquer sur afin de lier l outil au code que vous avez chargé Le pipeline Les processeurs MIPS intègrent un pipeline. Q10. Préciser l intérêt des pipelines dans un microprocesseur d après le document suivant présent dans la documentation du processeur MIPS Figure 1 : Fonctionnement sans mise en œuvre du pipeline
6 Figure 2 : Fonctionnement avec mise en œuvre du pipeline Q11. Un des aléas possible du pipeline est en relation avec les branchements dans le programme. Dans le programme utilisé, donner la première instruction de saut conditionnel et expliquer la. Préciser aussi quelle solution avons-nous pour éviter cet aléa en particulier Solution des aléas du pipeline Un outil présent dans le simulateur est le BHT Simulator (Branch History Table Simulator). Cet outil est en fait la représentation d une architecture présente dans les processeurs. Cette table permet d enregistrer dans un espace de stockage le résultat des branchements conditionnels : Soit le branchement est pris (TAKEN) Soit le branchement est non pris (NOT TAKEN) Cette table n a pas une taille infinie, et il arrive qu il ne soit pas possible de renseigner tous les branchements présents dans un code. La taille de cette table est spécifier par le champ : «#of BHT entries». >cliquer sur afin de lier le l outil au code que vous avez chargé. Q12. Expliquer pourquoi l historique de branchement peut permettre d améliorer le déroulement du pipeline. Q13. A l issu de l exécution complète du code, combien de branchement ont causés une rupture du pipeline, et combien n ont pas ralentit le déroulement du programme? 3.4. Les mémoires caches Etude de l algorithme utilisé Q14. Expliquer en exécutant l algorithme «row-major.asm», et en visualisant le segment de données, comment sont rangées les lignes et les colonnes du tableau en mémoire? Note : Vous pouvez visualiser les valeurs en décimal plutôt qu en hexadécimal pour que ce soit plus lisible.
7 > Ouvrir l outil «Memory Reference Visualisation». Cet outil permet de représenter graphiquement l espace mémoire du microprocesseur. Les valeurs par défaut sont configurées pour schématiser exactement le tableau data[16][16], c'est-à-dire un tableau de 16 lignes et 16 colonnes. A chaque fois qu un accès mémoire est réalisé, la case concernée est colorée. Q15. Quelles remarques pouvez-vous faire sur les accès en mémoire en exécutant l algorithme du code «row-major.asm» puis celui du code «column-major.asm»? Column Major Algorithm for (col = 0; col < 16; col++) for (row = 0; row < 16; row++) data[row][col] = value++; Row Major Algorithm for ( row = 0; row < 16; row++) for ( col = 0; col < 16; col++) data[row][col] = value++; Performance des algorithmes à l aide des mémoires caches Les processeurs MIPS32 possèdent des mémoires caches. Nous allons effectuer différents tests afin de mettre en évidence l intérêt des mémoires caches dans une architecture à microprocesseurs. Notamment, nous allons utiliser les deux algorithmes «columsmajor.asm» et «row-major.asm». > Ouvrir le Data Cache Simulator, et connecter le à votre code. Q16. Dans cet outil donner le nom des deux types de cache que nous avons vu en cours et préciser rapidement le fonctionnement de chacune d elle. Q17. Expliquer les deux politiques de remplacement : LRU et Random. Pour quel type de cache cela est valable. Q18. Comment est calculé le «cache size»? Dans la configuration par défaut on a :
8 Placement policy : Direct Mapping Number of block : 8 Cache block size : 4 Q19. Avec «row-major.asm» et en vous plaçant dans la configuration par défaut, expliquer en fonction du code en C qui s exécute ce qu il se passe. Justifier le taux de Hit et le taux de Miss. Q20. Quels sont les performances que vous pouvez prédire si la taille des blocs passe de 4 à 8 mots? Vérifier ce résultat en simulation et expliquer pourquoi. Q21. Faites la même chose en passant de 4 à 2 mots, faite la même vérification en simulation. Note : Vous n êtes pas obligé de fermer l outil «mémoire cache» pour ouvrir et compiler un autre code. Q22. Reprenez les 3 dernières questions et faite la même chose avec l algorithme «columnmajor.asm». Donner les performances (taux de Hit et Miss) et expliquer pourquoi. Toujours avec l algorithme «column-major.asm», afficher deux instances de l outil mémoire cache, et faite une comparaison simultanée avec : Placement policy : Direct Mapping Number of block : 8 Cache block size : 4 Placement policy : Direct Mapping Number of block : 16 Cache block size : 16 Q23. A-t-on amélioré le taux de Hit? Faite un essai avec la mémoire cache full associative : Placement policy : Direct Mapping Placement policy : Full Associative Number of block : 8 Number of block : 8 Cache block size : 4 Cache block size : 4 Q24. A-t-on amélioré le taux de Hit? Q25. Pourquoi n a-t-on pas de résultat très performant avec la mémoire cache associative pour ce programme en particulier.
9 4. Documentation
10
11 Université de Savoie Module I621 TP 2 Programmation d applications sur cible Le compte rendu de TP : Un compte rendu sera rendu à la fin de la séance avec pour consignes : Format PDF en un seul fichier. Le nom du fichier sera : I621-TPx-Nombinome1-Nombinome2.pdf. Envoyé par à sylvain.montagny@univ-savoie.fr. Votre compte rendu sera bien reçu seulement si vous avez un message de confirmation de ma part. I. Objectifs du TP Le but de ces manipulations est de découvrir un environnement de programmation moins habituel. Cela met en évidence certaines considération (espace mémoire limité, ressources limitée etc) que vous avons habituellement peu l habitude de prendre en compte. Le processeur cible est un processeur DSP (Digital Signal Processeur). Comme sont nom l indique il est destiné à réaliser des applications de traitement du signal. C est pour cette raison que nous application sera orienté vers un algorithme qui permettra de modifier certains paramètres d un signal sonore. 1. Matériel à votre disposition Certains des éléments suivants sont présents sur votre plan de travail. Une carte Processeur DSK5416 Une paire d enceinte amplifiée Un câble audio Un câble USB Un câble d alimentation pour la carte 2. Montage du TP Nous réaliserons une application audio classique. Dans notre cas, l objectif final est d appliquer un filtre d écho sur un fichier son. Le montage du TP est donné à la figure suivante. Cependant, il faut impérativement suivre scrupuleusement les instructions du paragraphe Instruction pour la connexion de la carte pour éviter tout disfonctionnement. Attention : Il est important de relier la sortie du PC à LINE IN et les enceintes à SPKR OUT. 27/03/2013 Page 1/6
12 Switches LED USB C5416 Carte DSK PCM 3002 LINE OUT SPKR OUT LINE IN 3. Instruction pour la connexion de la carte Cette procédure est à réaliser avec attention chaque fois que pour une raison ou une autre la connexion USB ne fonctionne plus (Re)Brancher l alimentation de la carte DSK. Attendre que les LEDs aient clignoté puis restent allumées Brancher le câble USB. Lancer CCS (Code Composer Studio) Se connecter à la cible : Debug > Connect Une icône verte doit apparaître en bas à gauche de la fenêtre de CCS pour préciser que la carte est bien connectée au PC. Remarque : L allumage et l extinction des enceintes près de la carte DSP font perdre la connexion USB dues à des perturbations électro-magnétique. Il faudra donc toujours laisser les hauts parleurs allumés lors des manipulations. II. Présentation de CCS : Ouvrir le projet template.pjt (Project>Open >template.pjt) 1. Présentation générale CCS est un Logiciel dit IDE (Integrated Development Environment) pour compiler, assembler, linker et débuguer des programmes pour le DSK (DSP Starter Kit), autrement dit la carte de développement DSP. Ce logiciel est donc utilisé dans toutes les phases de développement d une application : Coder, Compiler, assembler, et linker : Créer un projet, écrire le code en utilisant l éditeur, compiler et éditer les liens. Débuguer : Vérification de l algorithme, des affectations des variables. Utilisation de Break Points (point d arrêt dans le programme), fonctionnement du programme en pas à pas, etc 27/03/2013 Page 2/6
13 Analyse : Statistiques, analyse temps réelle, analyse temps réel, etc 2. Prise en main de CCS Vous allez prendre en main CCS en utilisant les différentes fonctionnalités à partir d un programme simple. Dans le tutorial de CCS, on peut retrouver les définitions suivantes pour les fichiers contenus dans le projet..pjt This file contains all of your project build and configuration options.lib This library provides runtime support for the target DSP chip.c This file contains source code that provides the main functionality of this project.h This file declares the buffer C-structure as well as define any required constants.asm This file contains assembly instructions.cmd This file maps sections to memory Remarque : le projet est de type DSP/BIOS. Cela offre l avantage d une configuration simplifié du système d exploitation présent dans la mémoire interne du processeur. Par ailleurs cette interface de configuration DSP BIOS permet de prendre en main le noyau temps réel multitâches, dont nous n utiliserons pas les caractéristiques ici. 3. Premier programme Le programme du DSP utilise le codec audio PCM3002 qui est en fait un convertisseur A/N & N/A. Le codec audio est vu comme un périphérique classique du point de vue du processeur. Ce programme recopie simplement le signal reçu sur l entrée «Line In» vers la sortie «Spkr Out». Compiler le projet en entier (Project > Rebuild All) et charger le code exécutable (.out) dans le DSP (File > Load Program). Lancer l application (Debug > Run) et vérifier le fonctionnement. Pour cela vous utiliserez le fichier son mis à votre disposition pour le test. Q1. En positionnant un point d arrêt dans le code (double clic en colonne de gauche), visualiser les échantillons right_input, right output, left_input et left output (clic droit sur la variable > Add to watch Window). Vérifier le fonctionnement correct du programme. III. Analyse et conception d un programme 1. Fichier de commande et implantation du code en mémoire Le fichier de commande (dossier Generated File > templatecfg.cmd ) est généré automatiquement à partir du fichier de configuration template.cdb. De plus, si l utilisateur souhaite le compléter il peut le faire dans un autre fichier qui sera joint au projet (fichier_xxx.cmd). Observer le fichier de commande templatecfg.cmd et notamment les parties MEMORY, puis SECTIONS. Q2. Expliquer à quoi sert un fichier de commande d une façon générale, et à quoi servent précisément les parties MEMORY, puis SECTIONS? 27/03/2013 Page 3/6
14 Le processus de compilation fournit un code assembleur spécifique à ce DSP. Ce langage assembleur utilise par exemple la directive.text pour désigner du code. Q3. D après le contenu du fichier templatecfg.cmd à quelle adresse sera implanté le code (.text) du projet compilé? Vérifier et justifier votre réponse de deux façons : En visualisant la mémoire programme (View>Memory) En visualisant le fichier template.map généré à la compilation 2. Amplification du son A partir de ce projet, nous allons réaliser le traitement des échantillons audio reçus. Les fonctions suivantes font parties de la library dsk5416f.lib : unsigned int switch_status_display(void) Cette fonction retourne la valeur présente sur les switches présent sur la carte. Q4. En utilisant la fonction fonction switch_status_display () présente dans le fichier switches.c, réaliser un amplificateur des voies droites et gauches suivant la valeur des interrupteurs. Le prototype de la fonction sera le suivant : void amplification(int16 in, Int16 *p_out, Int16 ampli). Int16 in : Echantillon d entrée Int16 *p_out : Pointeur sur l échantillon de sortie après traitement Int16 ampli : Coefficient multiplicateur pour l amplification Note : Uint32 est un «Unsigned int sur 32 bits» Int16 est un «Signed int sur 16 bits» En passant la souris sur les types redéfinis (Uint32, Int16. etc), et en cliquant sur le fichier concerné on peut avoir des informations complémentaires : Q5. D après l étude des différents «typedef» qui sont réalisés, expliquer l intérêt de ces déclarations plutôt que les utilisations classique (short, int, long, double etc)? 3. Enregistrement du son et visualisation des échantillons Buffer linéaire On utilisera dans un premier temps un buffer linéaire avec décalage des échantillons précédents et insertion du premier échantillon en première case du tableau. Q6. Créer une nouvelle fonction réalisant le stockage des 128 derniers échantillons de la voie droite et de la voie gauche. Les buffers (tableaux) seront définis par les déclarations suivantes : 27/03/2013 Page 4/6
15 #define MAXBUFSIZE 128 // en début de fichier Int16 in_buffer_right[maxbufsize]; // déclaration en variable globale Int16 in_buffer_left[maxbufsize]; Et le prototype de la fonction sera le suivant : void linear_buffer( Int16 ech, Int16* buff); Int16 ech : échantillon à enregistrer Int16* buff : Pointeur sur le tableau d échantillons Q7. CCS permet d afficher des zones mémoires (ex : tableaux) sous forme de graphiques (View > Graph > Time/Frequency). Représenter le signal audio par un graphique en complétant convenablement les champs demandés. Note : En C, l adresse d un tableau en mémoire est son nom Buffer circulaire Le processus de capture par buffer linéaire défini précédemment est relativement couteux en nombre de cycles. Nous allons le remplacer par un buffer circulaire. Nous prendrons des buffers circulaires de taille MAXBUFSIZE=1024. Q8. Ecrire une nouvelle fonction permettant d'enregistrer un signal dans deux buffers circulaires (droite et gauche), avec le prototype suivant: void circular_buffer(int16 ech, Int16* buff); Int16 ech : échantillon à enregistrer Int16* buff : Pointeur sur le tableau d échantillons IV. Traitement numérique d un signal sonore 1. Filtre d'écho On désire implémenter un filtre d'écho. C'est-à-dire que l algorithme logiciel implémenté est une amplification d un échantillon arrivé précédemment. Formule : y( n) x( n) G. x( n k) y(n) est l échantillon de sortie x(n) est l échantillon de musique non traité à l entrée de la carte (à la sortie du lecteur MP3) x(n-k) est l échantillon stocké dans le buffer avec un retard de k échantillons. G le gain sur l échantillon retardé. Q9. Quel est le lien entre le délai en secondes et le nombre d échantillons sachant que la période d échantillonnage (capture des échantillons sonore) est de Hz? Trouver alors la taille du tableau (MAXBUFFSIZE) que vous devez implémenter pour un retard de 0,2s. Q10. Réaliser à la fois l enregistrement circulaire des échantillons (pour effectuer le retard) et le calcul qui implémente cet écho. On prendra G=1 (c'est-à-dire qu on superposera à puissance égale l écho et le signal original). 27/03/2013 Page 5/6
16 2. Utilisation de la mémoire Q11. Quel est le retard maximum que vous auriez pu réaliser?. Faites tout d abord un essai de façon pratique (en essayant des valeurs), puis vérifier en visualisant l allocation mémoire faite par les buffers des deux voies (fichier.map). Q12. Quelle est le nom de la zone mémoire utilisée pour l allocation de ces buffers? On s aperçoit qu une fois de plus, dans un système embarqué, nous sommes limités en termes de ressources. Nous voyons très facilement ici les limitations dues à la taille de la mémoire centrale interne au composant. Une première façon pour contourner la limitation mémoire de la zone utilisée est de placer les données dans une zone plus grande. Visualiser le fichier template.cmd, qui est un fichier de commande. SECTIONS {.buffer > DARAM47 } Nous allons inclure le code suivant dans le fichier principale grâce à la directive #pragma. #pragma DATA_SECTION (in_buffer_right, ".buffer") #pragma DATA_SECTION (in_buffer_left, ".buffer") Q13. Expliquer l action de l éditeur de lien à la vue du fichier de commande template.cmd jumelé à l ajout des lignes #pragma dans le code source. Vérifier son effet grâce à l étude de l implantation des buffers dans le fichier généré «.map». Q14. Quelle est la nouvelle taille maximale des buffers (en échantillons et en secondes)? Vous pouvez faire un nouvel essai de l écho pour faire le plus grand écho possible. 3. Estimation de la charge processeur Le DSP utilisé possède un système d exploitation temps réel multitâche non utilisée ici. Un Scheduler permet de faire le séquencement entre toutes les taches à exécutées dans le système. Nous avons dans notre cas qu une tâche qui s exécute Q15. Dans le cas de notre application, estimer la charge CPU? Proposez une amélioration de votre système. 27/03/2013 Page 6/6
17 Université de Savoie Module I621 TP3 Programmation d applications sur cible Le compte rendu de TP : Un compte rendu sera rendu à la fin de la séance avec pour consignes : Format PDF en un seul fichier. Le nom du fichier sera : I621-TPx-Nombinome1-Nombinome2.pdf. Envoyé par à sylvain.montagny@univ-savoie.fr. Votre compte rendu sera bien reçu seulement si vous avez un message de confirmation de ma part. I. Méthode classique de génération de sinus Dans premier temps nous allons générer des fréquences d une façon classique. C'est-à-dire que la valeur du sinus sera calculée pour chaque échantillon. L objectif sera de jouer une mélodie. Cette mélodie se trouve enregistrée sous forme d un tableau de notes. Chaque ligne du tableau correspond aux caractéristiques de chacune des notes : fréquence, durée, amplitude. Fréquence (Hz) Durée (s) Amplitude (V) Note Note Note Note n En langage C, chaque case du tableau se présente sous la forme d une structure : struct Note { int freqnote; float dureenote; float AmplitudeNote; }; # define TAILLE_MORCEAU_MUSIC 4
18 //Exemple de Morceau sur 4 notes => tableau de 4 notes struct Note Morceau_Music[TAILLE_MORCEAU_MUSIC]= {{440,0.25,2},{200,0.25,3},{880,0.25,1},{2000,0.25,4}}; 1. Préparation Le DSP fonctionne à fréquence d échantillonnage fixe de 24 khz que l on notera F ech. Q1. Combien d échantillon NB_ECH_PERIO sont contenu dans une période T note d une note quelconque? Dessiner votre signal échantillonné s ech (t) sur une période en plaçant T note et F ech.... Q2. Donner l expression de s ech (t) en fonction de k [ 0; NB _ ECH _ PERIO 1], et de NB_ECH_PERIO.... La période de retentissement de la note est simplement réalisé en connaissant le nombre d échantillon total ( NB_ECH_DUREE ) qui sera envoyé au Codec Audio. Q3. Donner l expression de NB_ECH_DUREE au cours d une note de durée D note Réalisation sur le DSP Le nombre de bits du convertisseur analogique/numérique est de 16. Cela signifie que les valeurs des signaux en sortie du convertisseur prennent des valeurs [ 2 ;2 1] [ 32768;32767] Q4. Ecrire le code d une fonction [ int Calcul_NB_ECH_PERIO(, ) ] qui retourne le nombre d échantillons contenus dans la période de la note? Les arguments à passer à la fonction sont libres de choix. Q5. Ecrire le code d une fonction [ int Calcul_NB_ECH_DUREE(, ) ]qui retourne le nombre d échantillons contenus dans la durée de la note? Les arguments à passer à la fonction sont libres de choix. Q6. Ecrire le code qui permet de générer une note de fréquence 1000 Hz, de durée 5 secondes. Vous pouvez limiter l amplitude du sinus pour avoir un son plus faible. Q7. Ecrire le code qui permet de générer le morceau de musique dont les notes sont données dans le tableau page suivante. Note : L amplitude de tous les échantillons seront de
19 Notes Morceau Fréquence (Hz) Durée (s) Note 1 Si_ Note 2 - Mi Note 3 - Sol Note 4 - Fa # Note 5 - Mi Note 6 Si_ Note 7 - La Note 8 Fa # Note 9 - Mi Note 10 - Sol Note 11 Fa # Note 12 Ré # Note 13 - Fa Note 14 - Si Note 16 - Si Note 17 - Si Note 18 - Mi Note 19 - Sol Note 20 - Fa # Note 21 - Mi Note 22 Si_ Note 23 - Ré Note 24 Ré bem Note 25 Do Note 26 La bem Note 27 Do Note 28 - Si Note 29 - Si bem Note 30 - Si bem Note 31 - Sol Note 32 - Mi Note 33 - Mi Note 34 - Sol II. DDS : Direct Digital Frequency Une façon de modifier la fréquence du sinus est d utiliser une structure DDS : Direct Digital Frequency. Cette structure est présentée à la figure suivante :
20 Le registre «n» est une phase. A chaque cycle d horloge de fréquence F ech, on ajoute au nombre précédemment stocké dans un accumulateur, un nombre n. Lorsque l accumulateur arrive à saturation (dépassement des index du tableau de sinus), il reboucle et une nouvelle période d accumulation est entamée. Ci-dessous, l évolution de la phase (équivalente à l index du tableau) pour une incrémentation de 1 à chaque coup d horloge. La phase de votre sinus peut aussi être vue comme l index de votre tableau de sinus. C'est-àdire que pour réaliser un sinus deux fois plus rapide, il suffit de lire une case sur deux du tableau de sinus. Pour un sinus trois fois plus rapide, une case sur trois etc. Bien sûr, on ne peut pas lire plus d échantillon que NB_ECH_PERIO (valeur constante qui a servi à l initialisation du tableau de sinus). Q8. Donner l expression du pas fréquentiel, c'est-à-dire la différence entre deux fréquences successives que nous pourrons obtenir en fonction de NB_ECH_PERIO et Fech. Faire l application numérique avec NB_ECH_PERIO=48 et Fech=24kHz. Nous reprenons le tableau de la mélodie que nous devons générer. Q9. Quel pas fréquentiel faut-il respecter? Donner la valeur de NB_ECH_PERIO de notre tableau de sinus pour que cette condition soit respectée. Q10. Donner la fréquence max et min que nous allons pouvoir générer. 3. Réalisation sur le DSP Q11. D après le fichier de commande, quelle zone mémoire pourrait être capable de contenir l ensemble de ces échantillons.
21 Le programmeur doit donc savoir gérer l emplacement de ces variables en mémoires. On se propose de placer votre tableau d échantillon dans un emplacement mémoire plus large : celui que vous avez sélectionné. Cela est réalisé en 2 étapes très simples : On associe votre tableau d échantillon à une directive : «.buffer» : #pragma DATA_SECTION (nom de votre tableau, ".buffer") On spécifie dans un nouveau fichier de commande.cmd (que vous rajouterez au projet) que la section compilée en.buffer sera placée dans votre emplacement choisi. Cela permet de faire passer l information à l éditeur de lien la nouvelle attribution des variables dans l espace mémoire. On peut remarquer que templatecfg.cmd (le fichier de commande généré par l outil de développement) est intégré au début du fichier afin de reprendre toutes les anciennes affectations et simplement de rajouter la nouvelle. templatecfg.cmd SECTIONS {.buffer > Nom de la section dans laquelle il faut mettre votre tableau } Q12. Réaliser une fonction qui initialise l ensemble de votre tableau de sinus. Q13. Réaliser une application qui émet la première note de votre mélodie pendant 5 secondes. Q14. Réaliser la mélodie complète avec la méthode du DDS.
Rappels d architecture
Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée
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étailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailM2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013
Rendu Temps Réel - OpenGL 4 et compute shaders December 18, 2013 résumé des épisodes précédents... création des objets opengl, organisation des données, configuration du pipeline, draw,... opengl 4.3 :
Plus en détail1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :
GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours
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étailCM2 L architecture MIPS32
CM2 L architecture MIPS32 Olivier Marchetti (CM-TD-TP) Alexandre Brière (TD-TP) Laboratoire d informatique de Paris 6 Pôle SoC UPMC Année 2014-2015 Instructions MIPS Contrôle Données en MIPS E/S en MIPS
Plus en détailDU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION
145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailGénération de code binaire pour application multimedia : une approche au vol
Génération de binaire pour application multimedia : une approche au vol http://hpbcg.org/ Henri-Pierre Charles Université de Versailles Saint-Quentin en Yvelines 3 Octobre 2009 Présentation Présentation
Plus en détailCONFIGURATION DE L AUTOMATE SIEMENS
CONFIGURATION DE L AUTOMATE SIEMENS Créer un projet Dans le bureau de Windows, double-cliquer sur l icône «SIMATIC Manager» : Cliquer ensuite sur l icône «nouveau» : Choisir un nom de projet et valider
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é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é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é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étailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
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étailArchitecture des Ordinateurs. Partie II:
Architecture des Ordinateurs Partie II: Le port Floppy permet le raccordement du lecteur de disquette àla carte mère. Remarque: Le lecteur de disquette a disparu il y a plus de 6 ans, son port suivra.
Plus en détailEclipse atelier Java
Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer
Plus en détailRégler les paramètres de mesure en choisissant un intervalle de mesure 10µs et 200 mesures.
TP Conversion analogique numérique Les machines numériques qui nous entourent ne peuvent, du fait de leur structure, que gérer des objets s composés de 0 et de. Une des étapes fondamentale de l'interaction
Plus en détailTutoriel de formation SurveyMonkey
Tutoriel de formation SurveyMonkey SurveyMonkey est un service de sondage en ligne. SurveyMonkey vous permet de créer vos sondages rapidement et facilement. SurveyMonkey est disponible à l adresse suivante
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é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é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étailIsadora. Photo jpeg qualité 50% %, 320X240. Prérequis
Isadora Format des vidéos Exporter vidéo et audio Photo jpeg qualité 50% %, 320X240 Prérequis Quick Time Player Installer version gratuite Isadora, sur le site Matrox Tronic, selon vos besoins PC / MAC
Plus en détailTP : 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étailExécution des instructions machine
Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]
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étailGPA770 Microélectronique appliquée Exercices série A
GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément
Plus en détailExercices sur SQL server 2000
Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table
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étailProjet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Plus en détailStructure de base d un ordinateur
Structure de base d un ordinateur 1-Définition de l ordinateur L ordinateur est un appareil électronique programmable qui traite automatiquement les informations. Il est constitué de l unité centrale et
Plus en détail3D Lab. NANO TRANSPORT & NANO PLAYER. Lecteurs réseaux AUDIOPHILE - PROFESSIONNEL. PCM 24-192 & DSD natif. UPnP DNLA - Bit Perfect media device
3D Lab. Lecteurs réseaux AUDIOPHILE - PROFESSIONNEL NANO TRANSPORT & NANO PLAYER PCM 24-192 & DSD natif UPnP DNLA - Bit Perfect media device Ethernet RJ45 - WIFI(*) PCM (44.1 à 192Khz - 16 à 24 bit) DSF
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étailSCL LOGICIEL DE CONTROL
SCL LOGICIEL DE CONTROL Version 1.3 MRC AUDIO LD- 500 www.mrcaudio.com 1 Contenu 1 - Bienvenu a MRC AUDIO SCL v1.3 2 - Installation du logiciel 3 - Configuration du programme SCL 4 - Contrôle des installations
Plus en détailGuide d'installation rapide TFM-560X YO.13
Guide d'installation rapide TFM-560X YO.13 Table of Contents Français 1 1. Avant de commencer 1 2. Procéder à l'installation 2 Troubleshooting 6 Version 06.08.2011 16. Select Install the software automatically
Plus en détailCours Informatique 1. Monsieur SADOUNI Salheddine
Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale
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étailUn ordinateur, c est quoi?
B-A.BA Un ordinateur, c est quoi? Un ordinateur, c est quoi? Un ordinateur est une machine dotée d'une unité de traitement lui permettant d'exécuter des programmes enregistrés. C'est un ensemble de circuits
Plus en détailUn outil open source de gestion de bibliographies
Un outil open source de gestion de bibliographies Généralités... 2 Installation... 2 L interface zotero... 2 Ajouter une notice bibliographique manuellement... 4 Modifier ses notices bibliographiques...
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
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étailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailGuide des fonctions avancées de mywishtv
Guide des fonctions avancées de mywishtv Table des matières Présentation des fonctionalités avancées de mywishtv 3 Raccorder au réseau domestique et à Internet 4 Logiciel serveur dlna pour votre pc 6 Navigation
Plus en détailGnuplot. Chapitre 3. 3.1 Lancer Gnuplot. 3.2 Options des graphes
Chapitre 3 Gnuplot Le langage C ne permet pas directement de dessiner des courbes et de tracer des plots. Il faut pour cela stocker résultats dans des fichier, et, dans un deuxième temps utiliser un autre
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étailI00 Éléments d architecture
I00 I Exemples d ordinateur Pour les informaticiens, différentes machines de la vie courante sont des ordinateurs : par exemple les ordinateurs portables, les ordinateurs fixes, mais aussi les supercalculateurs,
Plus en détail1. PRESENTATION DU PROJET
Bac STI2D Formation des enseignants Jean-François LIEBAUT Denis PENARD SIN 63 : Prototypage d un traitement de l information analogique et numérique (PSoC) 1. PRESENTATION DU PROJET Les systèmes d éclairage
Plus en détailTravaux pratiques 1.3.2 Détermination de la capacité de stockage des données
Travaux pratiques 1.3.2 Détermination de la capacité de stockage des données Objectifs Déterminer la quantité de mémoire RAM (en Mo) installée sur un ordinateur Déterminer la taille de l unité de disque
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
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étailTests de performance du matériel
3 Tests de performance du matériel Après toute la théorie du dernier chapitre, vous vous demandez certainement quelles sont les performances réelles de votre propre système. En fait, il y a plusieurs raisons
Plus en détailInformatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
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é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étailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détailREALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.
1 sur 6 REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3. OBJECTIF - PUBLIC - LOGICIEL - MATERIEL - METHODE - BIBLIOGRAPHIE - AVANTAGES - DIFFICULTES - AUTEUR DU DOCUMENT - LE DOCUMENT
Plus en détail1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7
Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application
Plus en détailNotion de base de données
Notion de base de données Collection de données opérationnelles enregistrées sur un support adressable et utilisées par les systèmes et les applications Les données doivent être structurées indépendamment
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étailPACKZ System Requirements. Version: 2015-05-27. Version: 2015-05-27 Copyright 2015, PACKZ Software GmbH. 1
PACKZ System Requirements Version: 2015-05-27 Copyright 2015, PACKZ Software GmbH. All rights reserved.this manual may not be copied, photocopied, reproduced, translated, or converted to any electronic
Plus en détailUE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Plus en détailDémarrer et quitter... 13
Démarrer et quitter... 13 Astuce 1 - Ouvrir, modifier, ajouter un élément dans le Registre... 14 Astuce 2 - Créer un point de restauration... 18 Astuce 3 - Rétablir un point de restauration... 21 Astuce
Plus en détailDAC. avec interface USB audio et préampli stéréo Casque CONVERTISSEUR DIGITAL VERS ANALOGIQUE. Guide d utilisation V1.1 Jan 2011
réf 2080 avec interface USB audio et préampli stéréo Casque CONVERTISSEUR DIGITAL VERS ANALOGIQUE Guide d utilisation V1.1 Jan 2011 DAC NTRODUCTION Merci d'avoir acheté ce DAC (convertisseur audio numérique-analogique)
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étailThe Grid 2: Manuel d utilisation
The Grid 2: Manuel d utilisation Bienvenue dans The Grid 2 Merci d avoir choisi The Grid 2! Ce guide va vous apprendre tout ce que vous devez savoir à propos de The Grid 2. Il vous guidera pas à pas pour
Plus en détailDurée estimée :1 journée Date de la réalisation : 2011. Description Fournisseur Référence Nombre PU HT LM35CZ, LM35AZ LM35DZ
001 Titre : Mesure de température interfacée par carte Arduino Type de réalisation : montage électronique, de surveillance de température Concepteur : C. Rouviere Coordonnées : Laboratoire lbv villefranche/mer
Plus en détailTAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES
TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES 1 DECOUVERTE DE LA VIRTUALISATION... 2 1.1 1.2 CONCEPTS, PRINCIPES...2 UTILISATION...2 1.2.1 Formation...2
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é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étailCahier n o 6. Mon ordinateur. Fichiers et dossiers Sauvegarde et classement
Cahier n o 6 Mon ordinateur Fichiers et dossiers Sauvegarde et classement ISBN : 978-2-922881-10-3 2 Table des matières Fichiers et dossiers Sauvegarde et classement La sauvegarde 4 Enregistrer 4 De quelle
Plus en détailOnce the installation is complete, you can delete the temporary Zip files..
Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une
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é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étailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
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étailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailTHEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs
Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et
Plus en détailTraitement de données
Traitement de données Présentation du module TINI Présentation du module : Le module Tini se décline en plusieurs versions, il est constitué d une carte d application et d un module processeur : Les modules
Plus en détailIntroduction aux outils BI de SQL Server 2014. Tutoriel sur SQL Server Integration Services (SSIS)
MIT820: Entrepôts de données et intelligence artificielle Introduction aux outils BI de SQL Server 2014 Tutoriel sur SQL Server Integration Services (SSIS) Description générale Ce tutoriel a pour objectif
Plus en détailJeu d instructions NIOS II
Jeu d instructions NIOS II 1 Formats d instructions Le processeur NIOS II a un jeu d instructions de type RISC. Il possède 32 registres de 32 bits, notés r0 à r31, avec r0 0. Les instructions sont de longueur
Plus en détailTransmission d informations sur le réseau électrique
Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en
Plus en détailLa mémoire. Un ordinateur. L'octet. Le bit
Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve
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étailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailGUIDE UTILISATEUR SYSTEMES CCTV
GUIDE UTILISATEUR SYSTEMES CCTV 2SECURE 3 chemin des mules 13124 PEYPIN www.2secure.fr - 1 - SOMMAIRE : 1 ACCEDER / SORTIR D UN MENU :...3 2 VISUALISER UN ENREGISTREMENT SUR LE DVR :...3 3 SAUVEGARDER
Plus en détailMesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]
Mesure de performances [Architecture des ordinateurs, Hennessy & Patterson, 1996] Croissance des performances des microprocesseurs Avant le milieu des années 80, le gain dépendait de la technologie. Après,
Plus en détailBusiness Talk IP Centrex. guide. web utilisateur. pour. les services standards
guide web utilisateur pour les services standards 1/22 version 03 décembre 2013 table des matières Accès au web utilisateur... 3 Onglet accueil... 5 Onglet services téléphoniques... 7 services standards...
Plus en détailInsérer des images dans Base
Insérer des images dans Base Version 1.0 du 30.05.2006 Réalisé avec : OOo 2.0.2 Plate-forme / Os : Toutes Distribué par le projet fr.openoffice.org Sommaire 1 Présentation...3 2 Quelques notions initiales...3
Plus en détailLogiciel PICAXE Programming Editor
Logiciel PICAXE Programming Editor Notice réduite 1. Lancer le logiciel PICAXE Programming Editor (Vidéo : «Lancer le programme»). 2. Dessiner un diagramme (Vidéos : «Nouveau programme» et «Dessiner le
Plus en détailInitiation. àl algorithmique et à la programmation. en C
Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,
Plus en détailMANUEL D UTILISATION - Précis Poste de Traitement d Images 1 - Déconvolution
Service Commun de Microscopie MANUEL D UTILISATION - Précis Poste de Traitement d Images 1 - Déconvolution Version 1 Précis Février 2015 SERVICE COMMUN DE MICROSCOPIE MANUEL D UTILISATION Poste de Traitement
Plus en détailLogiciel : GLPI Version : 0.72.4 SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003.
Ce document est libre de droit, merci simplement de respecter son auteur. Toutes remarques ou commentaires seront les bienvenues. ATTENTION : La mise à jour par script entre GLPI et Active Directory ne
Plus en détailChapitre 2. Classes et objets
Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons
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étailProjet audio. Analyse des Signaux ELE2700
ÉCOLE POLYTECHNIQUE DE MONTRÉAL Département de Génie Électrique Projet audio Analyse des Signaux ELE2700 Saad Chidami - 2014 Table des matières Objectif du laboratoire... 4 Caractérisation du bruit...
Plus en détail