Institut Universitaire de Technologie de CRETEIL-VITRY Département de Génie Électrique et Informatique Industrielle
|
|
- Émilien Denis
- il y a 7 ans
- Total affichages :
Transcription
1 Institut Universitaire de Technologie de CRETEIL-VITRY Département de Génie Électrique et Informatique Industrielle MC-ENSL1 - Composants programmables complexes FPGA Année universitaire J. VILLEMEJANE - julien.villemejane@u-pec.fr
2
3 Consignes Faites valider le code par l enseignant avant la programmation de la carte Faites valider chacun des exercices par l enseignant Il vous est conseillé de faire un compte-rendu de chacun des TP Répartition des séances Séance 1 (cours/tp) : Introduction (TP0 et TP1) Séance 2 (cours/tp) : Structuration-Simulation (TP2) Séance 3 (TP) : Structuration-Simulation (TP2) Séances 4 et 5 : Affichage multiplexé (TP3) Séance 6 : TP Test 1 Séances 7 à 9 : Projet Séance 10 : TP Test 2 Table des matières TP0 - Systèmes logiques programmables 4 TP1 - Développement d un système numérique 10 TP2 - Structuration et simulation 16 TP3 - Affichage multiplexé 20 3
4 GEII - MC-ENSL1 TP 0 Systèmes logiques programmables Objectifs Découvrir l architecture des FPGA. Découvrir la carte d étude BASYS de Digilent. Dans le domaine des systèmes numériques, il existe deux grandes sortes de composants : les processeurs (et dérivés : microcontroleurs, DSP...) qui font du traitement séquentiel les composants programmables qui font du traitement parallèle Il existe trois grandes catégories de systèmes logiques programmables : les CPLD (Complex Programmable Logic Device) les FPGA (Field Programmable Gate Array) les ASIC (Application Specific Integrated Circuit) Les CPLD sont de conception plus anciennes et ont généralement des capacités moindres que les FPGA. Cependant, ils sont encore largement utilisés dans des systèmes logiques (combinatoire ou séquentiels). Dans les deux cas, ce sont des réseaux logiques programmables composés de nombreuses cellules logiques élémentaires librement assemblables. Nous allons ici étudier plus en détails les FPGA, les CPLD ayant déjà été abordés en première année (module ENSL1).
5 1. Les FPGA Ces systèmes programmables sont initialement destinés au prototypage de systèmes numériques complexes. Ils sont une bonne alternative aux circuits spécifiques, les ASIC (Application Specific Integrated Circuit), pour des petites ou moyennes séries. Il existe plusieurs grands fabricants : ALTERA, ACTEL (composants spécialisés) et XILINX. Pour les TP, nous utiliserons des FPGA de chez Xilinx Implantation Chaque fabricant propose aussi des composants de taille variable : de à portes logiques. Par comparaison, les portes standards commerciales possèdent entre 2 et 8 portes logiques pour une surface de silicium quasiment identique. Quelque soit la technologie utilisée, aucune porte logique n est réellement implantée. Il s agit en fait de blocs logiques programmables, mais très versatiles (RAM), et d une mer de connexions programmables. Chez Xilinx, ces blocs logiques sont appelés CLB (Common Logic Blocks) Avantages et inconvénients Très haute densité Grande vitesse (100 MHz à quelques GHz) Très grand nombre d entrées/sorties (boîtiers BGA) Prix élevé (mais en baisse) Alimentation difficile (plusieurs tensions, courants élevés, connexions multiples) Volatiles (cellules RAM) Circuits imprimés (PCB - Printed Circuit Board) multicouches 2. Structure d un FPGA - Xilinx L architecture, retenue par Xilinx, se présente sous forme de deux couches : une couche circuit configurable et un réseau de mémoire SRAM. La structure d un FPGA est donnée dans la figure suivante. L échelle est loin d être réelle, les fonctions logiques n occupant qu environ 5% du circuit. Figure 1 Structure d un FPGA Les FPGA sont un rassemblement et une combinaison de différents blocs : d entrées/sorties (IOB - Input Output Blocks), de routage (PSM - Programmable Switch Matrix), de logique programmable (CLB - Configurable Logic 5
6 Blocks) et d autres blocs plus spécifiques Spartan XL 3E Les Spartan 3E, que nous allons utiliser par la suite, sont basés sur ce type de structure. La figure suivante détaille leur architecture. Le tableau rassemble les différentes caractéristiques de cette famille de FPGA. Figure 2 Structure et caractéristiques des Spartan 3 - Xilinx Les CLB (voir figure 3) sont décomposés en 2 ou 4 SLICE (appellation de Xilinx). Ces SLICE sont eux-mêmes décomposés en 2 LUT (Look-Up Table) et 2 bascules D. Figure 3 Bloc logique configurable - Xilinx Spartan 3 6
7 2.2. LUT et bascule Les fonctions combinatoires sont implantées sur des mémoires SRAM (LUT = Look-Up Table). La table de vérité est alors chargée dans ces LUT. La figure 4 montre le cas de LUT à 2 entrées. En général, les FPGA sont équipés de LUT à 4 ou 6 entrées. Figure 4 LUT - Xilinx Spartan 3 Les éléments séquentiels (synchrones sur front ou niveau) sont implantés sur des bascules (D le plus fréquemment). 3. Carte d étude BASYS2 - Digilent L ensemble des exemples et applications qui seront demandés dans ces TP seront réalisés sur une carte de développement BASYS2, proposé par la société Digilent. Ces cartes sont basées sur le FPGA Spartan 3E-250 de Xilinx. Figure 5 Carte BASYS2 - Digilent 3.1. Entrées-sorties logiques Les entrées logiques sont essentiellement réalisées par 8 interrupteurs dénommés SW0 à SW7 et par 4 boutonspoussoirs dénommés BTN0 à BTN3. Les sorties pourront être visualisées sur 8 diodes électroluminescentes (LD0 à LD7) ou bien 4 afficheurs 7 segments multiplexés (DISP1). 7
8 élément broche élément broche élément broche élément broche SW7 N3 LD7 G1 BTN3 A7 RED0 C14 SW6 E2 LD6 P4 BTN2 M4 RED1 D13 SW5 F3 LD5 N4 BTN1 C11 RED2 F13 SW4 G3 LD4 N5 BTN0 G12 BLU1 H13 SW3 B4 LD3 P6 MCLK B8 BLU2 J13 SW2 K3 LD2 P7 GRN0 F14 SW1 L3 LD1 M11 HS J14 GRN1 G13 SW0 P11 LD0 M5 VS K13 GRN2 G Horloges Il y a trois horloges de caractéristiques différentes produites par un circuit spécial : 25, 50 et 100 MHz. Ces trois signaux sont connectés à la même broche spécifique du FPGA Afficheurs 7 segments multiplexés Le multiplexage de l affichage permet de limiter le nombre de connexions pour ces 4 afficheurs. Mais son fonctionnement exige la mise en œuvre de composants séquentiels. Pour activer un segment (cathode), on doit placer un 0 (zéro) sur la sortie correspondant au segment seg. Pour activer un afficheur, il faut également placer un 0 sur la sortie an désirée, (en raison de la présence d un transistor amplificateur inverseur). a...g, dp = cathodes des segments et du point décimal de tous les afficheurs ; an = commandes des anodes communes des afficheurs. élément broche type an(0) F12 commande anode gauche an(1) J12 commande anode an(2) K14 commande anode an(3) M13 commande anode droite élément broche type A, seg(6) L14 sortie B, seg(5) H12 sortie C, seg(4) N14 sortie D, seg(3) N11 sortie E, seg(2) P12 sortie F, seg(1) L13 sortie G, seg(0) M12 sortie DP N13 sortie 3.4. Description en VHDL Pour décrire les différents systèmes numériques, nous utiliserons le logiciel de chez Xilinx : ISE Webpack (version 10.5). Cette version est disponible gratuitement, moyennant une inscription, sur le site de xilinx ( Ce logiciel permet de décrire des systèmes en VHDL ou Verilog, de les tester (de manière fonctionnelle ou temporelle) et de créer un fichier binaire compatible avec la cible (ici un FPGA Spartan 3E). Les étapes de développement seront décrites par la suite Contraintes Il ne faut pas oublier d assigner les entrées/sorties de votre système aux broches réelles du système. Le système final étant déjà câblé, ces contraintes sont déjà prédéfinies (voir tableaux précédent - 7 segments - et suivant) Implémentation du programme Une fois que toutes les étapes de «compilation» sont réussies, un fichier binaire *.bit est généré et peut alors être implanté dans le FPGA. Pour cela, il est nécessaire de relier la carte sur un des ports USB de l ordinateur et d allumer la carte d étude (interrupteur le plus à gauche - SW8). 8
9 L utilitaire Adept (Digilent) sera alors utiliser pour transférer le fichier binaire vers le FPGA. 9
10 GEII - MC-ENSL1 TP 1 Développement d un système numérique Objectifs Développer des systèmes numériques programmables simples (multiplexeur, compteur...). Simuler un système numérique. Il existe 2 langages de description pour les FPGA : VHDL : Very High Speed integrated circuit Hardware Description Language ; Verilog. Nous nous intéresserons par la suite au VHDL, qui est un langage de description normalisé (IEEE) et quasi-universel pour décrire des circuits intégrés. 1. Structure d un projet Un projet VHDL est très souvent décomposé en sous-structures, appelées modules ou composants. Comme on pourrait le faire sur un circuit imprimé, il s agit d instancier différents composants et de les relier entre eux par des fils (signaux en VHDL) pour réaliser le système complet. Chacun de ces modules est alors décrit dans un fichier source indépendant. Chacun de ces fichiers sources peut alors être testé indépendamment en lui associant un fichier de simulation (ou testbench). Enfin des fichiers de contraintes permettent de faire le lien entre la description logicielle et la structure matérielle de la cible et de son environnement (position des entrées, des sorties...). Figure 6 Structure d un projet 2. Phases de développement
11 L écriture des différents modules (ou composants) est la première chose à réaliser. Ceux-ci peuvent être décrits et testés séparément. Nous verrons par la suite comment décrire un composant. Ensuite, il est possible (et fortement conseillé) de vérifier la syntaxe de la description, en faisant appel à la fonction "Check Syntax" dans la partie "Synthetize XST". Cette étape est assez rapide et ne nécessite pas de connaître la cible, contrairement à l étape d après. Viens ensuite la phase de synthèse ("Synthetize XST") puis de placement et de routage ("Implement Design"). Ces étapes nécessitent la connaissance, d une part, de la cible (FPGA ou CPLD) et, d autre part, de l environnement du circuit (entrées/sorties associées aux autres composants de la maquette). Il est donc nécessaire, avant de réaliser ces étapes-là, de faire l assignation des broches du composant avec la description fournie. Pour cela, vous pouvez vous aider de la fonction "Assign Package Pins" dans la partie "User Constraints" et de la documentation de la maquette fournie en début de ce document. Il est aussi possible à ce stade de lancer différentes simulations : fonctionnelle : permettant de savoir si le fonctionnement du système est celui décrit ; post-synthèse : permettant, après synthèse, de vérifier à nouveau le fonctionnement du système ; temporelle : permettant, après l étape de routage, de valider les contraintes temporelles associées au placement des "composants". Ces différentes phases doivent être répétées pour l ensemble des modules composant l application. La dernière étape consiste à produire le fichier de programmation ("Generate Programming File") et à le transférer dans la mémoire du FPGA. 3. Structure d un module VHDL La description d un système numérique par le biais du langage VHDL passe par 3 étapes différentes : la déclaration des ressources externes (bibliothèques) ; la description de l entité du système, correspondant à la liste des entrées/sorties ; la description de l architecture du système, correspondant à la définition des fonctionnalités du système. L ensemble est contenu dans un fichier source portant l extension *.vhd Déclaration des ressources externes Cette phase est réalisée automatiquement pour les bibliothèques courantes. On retrouve en en-tête du fichier source *.vhd les instructions suivantes : 1 l i b r a r y IEEE ; 2 use IEEE. STD_LOGIC_1164.ALL; 3 use IEEE. STD_LOGIC_ARITH.ALL; 4 u s e IEEE. STD_LOGIC_UNSIGNED. ALL; 11
12 3.2. Entité L entité permet de spécifier les différents ports d entrées/sorties du système. Pour chacun d entre eux, il est indispensable de donner sa direction : in entrée simple out sortie simple buffer sortie rétroactive inout entrée-sortie bidirectionnelle (conflits possibles) et son type (voir section suivante). 1 e n t i t y c o u r s i s 2 port ( 3 a, b : in STD_LOGIC ; commentaire 4 s : out STD_LOGIC 5 ) ; 6 end c o u r s ; 3.3. Architecture Une architecture est reliée à une entité et permet de décrire le fonctionnement du système. Cette description peut être de deux types : description comportementale : le comportement du système est décrit (description la plus couramment utilisée en VHDL) ; description structurelle : la structure meme du système est décrite à base de portes logiques, bascules... (description réservée à des fonctions simples ou pré-calculées). 1 a r c h i t e c t u r e B e h a v o r i a l of c o u r s i s 2 d e c l a r a t i o n des s i g n a u x 3 begin 4 p r o c e s s u s 1 ; 5 p r o c e s s u s 2 ; end B e h a v o r i a l ; 4. Objets et types en VHDL 4.1. Objets signal objet physique, associé à des évènements variable intermédiaire de calcul, non physique constant 4.2. Types Types de base : bit, bit_vector, integer, boolean Types IEEE : std_logic, std_logic_vector, signed, unsigned Types définis par l utilisateur : - type énuméré, exemple : type jour is (lu, ma, me, je, ve, sa, di); (souvent utilisé dans les machines à état) - sous-type : subtype octet is bit_vector(0 to 7); 4.3. Notations bit : 0 ou 1 ; bit_vector : "0100" ; ASCII : "Texte" ; Décimal : 423 ; Hexadécimal : x"1a" 4.4. Opérateurs en VHDL 12
13 LOGIQUES : and, nand, or, nor, xor, xnor, not DÉCALAGE : sll, slr, sla, sra, rol, ror RELATIONNELS : =, /=, <, >, <=, >= ARITHMÉTIQUES : +, -, *, /, MOD CONCATENATION : & AFFECTATION : <= 5. Instructions en VHDL 5.1. Hors processus Ces instructions décrivent le plus souvent des éléments combinatoires (concurrentes) Affectation conditionnelle 1 x <= a when cond1 e l s e 2 b when cond2 e l s e z ; Affectation sélective 1 with expr s e l e c t 2 x <= a when val1, 3 b when val2, z when o t h e r s ; For... generate 1 f o r i in MIN to MAX g e n e r a t e 2 i n s t r u c t i o n s de d e s c r i p t i o n ; 3 end g e n e r a t e ; 5.2. Dans un processus L exécution des instructions s effectue dans un ordre séquentiel (ordre d écriture). Le processus est activé lorsqu un des éléments de la liste de sensibilité est modifié. La mise à jour des objets s effectue simultanément à la fin du processus Syntaxe Label : process(liste des signaux de sensibilité) Nom des objets internes : types ; si nécessaire begin... end process; 13
14 5.2.2 Test : SI 1 i f x=" 00 " then 2 y <= 0 ; 3 e l s i f x=" 01 " then 4 y <= 1 ; 5 end i f ; Test : CAS 1 case x i s 2 when " 00 " => y <= " 00 " ; 3 when " 01 " => y <= " 10 " ; 4 when o t h e r s => y <= " 11 " ; 5 end case ; Blocs répétitifs 1 f o r i in 0 to 5 loop 2 i n s t r u c t i o n s ; 3 end loop ; 1 while i < 5 loop 2 i n s t r u c t i o n s ; 3 end loop ; Temporisation 1 wait u n t i l CLK e v e n t and CLK= 1 ; 2 i n s t r u c t i o n s ; 6. Tournures fréquentes en VHDL 6.1. Détection d un front 1 i f clk e v e n t and c l k = 1 then... ; f r o n t montant 2 i f clk e v e n t and c l k = 0 then... ; f r o n t d e s c e n d a n t 6.2. Remplissage d un vecteur (bit_vector) 1 x <= ( o t h e r s => 0 ) ; t o u s l e s b i t s a 0 2 x <= ( o t h e r s => 1 ) ; t o u s l e s b i t s a 1 14
15 7. Prise en main de la maquette On se propose ici de reprendre en main le logiciel Xilinx ISE Webpack. Pour cela, ils vous est demandé de réaliser les systèmes suivants. EXERCICE 1 Décrire un système logique en VHDL dont le fonctionnement est donné par l équation : s = a + a + b. a et b seront des interrupteurs et s une LED. EXERCICE 2 1. Décrire un multiplexeur 4 vers 1 avec une entrée de validation. 2. Décrire un démultiplexeur 1 vers 4. Les entrées seront réalisées par des interrupteurs et les sorties par des LEDs. EXERCICE 3 Réaliser un compteur 4 bits. L horloge sera réalisée à l aide d un bouton poussoir et les sorties seront visualisées sur des LEDs. Attention : pour les versions supérieures à 10.1 de Xilinx ISE, afin de pouvoir générer le fichier de programmation correctement, vous devrez ajouter la ligne : NET "clk" CLOCK_DEDICATED_ROUTE = FALSE; dans le fichier de contraintes (*.ucf). 15
16 GEII - MC-ENSL1 TP 2 Structuration et simulation Objectifs Structurer un système en bloc fonctionnel (instanciation de composants). Simuler des systèmes numériques simples avec Xilinx ISE. 1. Structuration et instanciation de composants Afin de simplifier la description d un système numérique, les concepteurs découpent leurs applications en sous-blocs fonctionnels décrivant une partie de cette dernière. En VHDL, ces sous-blocs sont appelés modules ou composants. Il est alors plus simple de décrire et de tester chacun de ces modules séparément pour pouvoir les regrouper par la suite dans un seul système. A l image d un catalogue de composants et d un circuit imprimé, il sera alors possible d instancier ces modules et de les relier entre eux par des signaux Déclaration d un composant La déclaration préalable d un composant s effectue soit dans un paquetage, soit dans la zone de déclaration d une architecture. 1 component n o m _ e n t i t e 2 g e n e r i c ( param1 : i n t e g e r := 3 ) ; 3 port ( e n t r e e : in b i t ; 4 s o r t i e : out s t d _ l o g i c ) ; 5 end component ; 1.2. Structuration du système Chacun des modules doit être décrit dans un fichier *.vhd séparé, portant le nom de l entité qu il décrit. Il y aura donc autant de fichiers *.vhd que de types de composants. EXERCICE 0 On souhaite réaliser un additionneur de 3 nombres codés sur 4 bits : a, b et c ; à l aide d additionneurs à 2 entrées (4 bits) Description du composant additionneur Fichier additionneur.vhd 1 l i b r a r y IEEE ; 2 use IEEE. STD_LOGIC_1164.ALL; 3 4 e n t i t y a d d i t i o n n e u r i s 5 port ( a, b : in STD_LOGIC_VECTOR(3 DOWNTO 0 ) ; 6 s : o u t STD_LOGIC_VECTOR( 3 DOWNTO 0) 7 ) ; 8 end a d d i t i o n n e u r ; 9 10 a r c h i t e c t u r e s i m p l e of a d d i t i o n n e u r i s 11 d e c l a r a t i o n des s i g n a u x s i b e s o i n 12 begin 13 p r o c e s s u s a e c r i r e 14 s <= a + b ; 15 end s i m p l e ;
17 1.2.2 Composants déclarés dans la zone de déclaration de l architecture Fichier system.vhd 1 l i b r a r y IEEE ; 2 use IEEE. STD_LOGIC_1164.ALL; 3 4 e n t i t y system i s 5 Port ( 6 a_sys, b_sys, c _ s y s : in STD_LOGIC_VECTOR(3 DOWNTO 0 ) ; 7 s _ s y s : out STD_LOGIC_VECTOR(3 DOWNTO 0) 8 ) ; 9 end system ; a r c h i t e c t u r e s i m p l e of system i s 12 component a d d i t i o n n e u r 13 port ( a, b : in STD_LOGIC_VECTOR(3 DOWNTO 0 ) ; 14 s : o u t STD_LOGIC_VECTOR( 3 DOWNTO 0) 15 ) ; 16 end component ; s i g n a l s _ s i g : STD_LOGIC_VECTOR(3 DOWNTO 0 ) ; begin 21 add1 : a d d i t i o n n e u r 22 port map( a => a_sys, b => b_sys, s => s _ s i g ) ; 23 add2 : a d d i t i o n n e u r 24 port map( a => c_sys, b => s _ s i g, s => s _ s y s ) ; 25 end s i m p l e ; 1.3. Exercices EXERCICE 1 1. Réalisez et testez un multiplexeur de 4 lignes (4 interrupteurs) vers 1 ligne, que vous décrirez dans un fichier mux.vhd. 2. Réalisez et testez un démultiplexeur 1 ligne vers 4 lignes, que vous décrirez dans une fichier demux.vhd. 3. Assemblez ces deux fichiers dans system.vhd afin de simuler une ligne de transmission série ayant 4 interlocuteurs possibles de chaque coté. La sélection des voies du multiplexeur (AS) et la sélection de la destination en sortie du démultiplexeur (AD) se feront par 2 x 2 interrupteurs. Les données seront réalisées par 4 interrupteurs et la visualisation des sorties par 4 LEDs. On réalise ainsi une fonction de «routage» de données : sélection d un émetteur et d un récepteur parmi des nombreux éléments, en utilisant un medium unique de communication (virtuel ici). 17
18 EXERCICE 2 La luminosité d un éclairage (dans notre cas, une LED) peut être réglée par l application d un signal rectangulaire périodique de fréquence assez élevée et de rapport cyclique non constant. On parle alors de gradateur. Le rapport cyclique d un signal rectangulaire périodique est défini comme le rapport entre le temps pendant lequel le signal est à l état haut et la période. On exprime souvent ce rapport en pourcentage. Ainsi : la LED est éteinte pour une rapport cyclique de 0% ; la luminosité est maximale pour une rapport cyclique de 100% ; la luminosité est environ à moitié pour un rapport cyclique de 50%. Cette application peut être simplement réalisée à l aide d un compteur à 8 bits (synchrone) et d un comparateur arithmétique à 8 bits. Les interrupteurs déterminent le rapport cyclique. L horloge à choisir pour le compteur est CLK1 (50 Mhz). 1. Donner la structure que devra avoir cette application. 2. Décrire en VHDL chacun des modules de cette application. 3. Réaliser le fichier source permettant de décrire ce gradateur de LED en instanciant les composants nécessaires. 2. Simulation Il existe 2 niveaux de simulation : comportementale (behavorial simulation) ; physique (post-route simulation). Dans la version allégée de Xilinx ISE WebPack, seule la simulation comportementale est disponible Simulation comportementale Pour tester un module VHDL, il faut lui associer un module générateur de signaux (non synthétisable) : le testbench. Le testbench est un module VHDL spécial (disponible dans la liste des nouveaux modules lors de l ajout de fichier source). Il inclut le module à tester comme un composant et lui associe des signaux. L écriture d un testbench est automatisée avec Xilinx ISE. Il reste ensuite à écrire un scénario de test animant les signaux d entrée du module en test. On utilisera alors la même syntaxe qu un module classique mais avec des instructions spécifiques Instructions spéciales La gestion du temps peut se faire hors processus : 1 c l k <= not c l k a f t e r 1000 us ; 2 h o r l o g e a 500 Hz ou dans un processus : 1 h o r l o g e _ : p r o c e s s 2 begin 3 c l k <= 0 ; 4 wait f o r 500 us ; 5 c l k <= 1 ; 6 wait f o r 500 us ; 7 end p r o c e s s ; L instruction wait ; provoque l arret de la simulation. 18
19 2.1.2 Exemple 1 e n t i t y p o r t e a b _ t b i s 2 end p o r t e a b _ t b ; 3 4 a r c h i t e c t u r e b e h a v i o r of p o r t e a b _ t b i s 5 6 component p o r t e a b 7 port ( a, b : in s t d _ l o g i c ; 8 s : out s t d _ l o g i c ) ; 9 end component ; i n p u t s 12 s i g n a l a, b : s t d _ l o g i c := 0 ; 13 o u t p u t s 14 s i g n a l s : s t d _ l o g i c ; begin 17 i n s t a n c i a t i o n 18 u u t : p o r t e a b port map( a => a, b => b, s => s ) ; s c e n a r i o 21 s t i m _ p r o c : p r o c e s s 22 begin 23 wait f o r 50 ns ; a <= 0 ; b <= 0 ; 24 wait f o r 50 ns ; a <= 1 ; b <= 0 ; 25 wait f o r 50 ns ; a <= 0 ; b <= 1 ; 26 wait f o r 50 ns ; a <= 1 ; b <= 1 ; wait ; 29 end p r o c e s s ; end b e h a v i o r ; Exercices EXERCICE 3 1. Associer ce fichier de test à la description de l exercice 1 du TP1 (fonction s = a + a + b). 2. Lancer la simulation et vérifier le bon fonctionnement du système. EXERCICE 4 1. Décrire un compteur 4 bits avec une remise à zéro asynchrone. 2. Réaliser le fichier de test de ce module VHDL (en pensant à remettre à zéro les sorties dès le début de la simulation). 3. Lancer la simulation et vérifier le bon fonctionnement du système. Lancer la simulation. 19
20 GEII - MC-ENSL1 TP 3 Affichage multiplexé Objectifs Réaliser un module d affichage hexadécimal sur 4 afficheurs 7 segments fonctionnant en mode multiplexé. 1. Principe d un affichage multiplexé Dans un système d affichage, le multiplexage est un procédé qui consiste à utiliser plusieurs voyants ou plusieurs afficheurs et à ne pas tous les allumer à la fois, en vue d économiser de l énergie et de limiter le nombre de fils de câblage. Par exemple, l affichage de votre radio réveil numérique, de votre machine à laver ou de votre four micro-onde est fort probablement multiplexé. Les données à envoyer sur les afficheurs transitent par un même bus (7 fils dans le cas d un afficheur 7 segments) pour l ensemble de ces afficheurs. Ainsi le chiffre à afficher est envoyé sur tous les afficheurs en même temps. Sans une gestion particulière de ces afficheurs, il n est pas possible d écrire des nombres. C est pourquoi, en parallèle ce ces entrées de données, il existe une entrée de validation pour chacun des afficheurs. Ces entrées sont souvent commandés via des transistors pour permettre un gain de courant. Le schéma ci-dessous donne le câblage d un tel système (3 afficheurs 7 segments dans ce cas-là). 2. Etude du système Afin de développer ce module de gestion d affichage multiplexé de manière la plus simple possible, nous allons découper cette application en plusieurs blocs fonctionnels que nous allons par la suite décrire en VHDL séparément : un décodeur décimal 7 segments ; un diviseur de fréquence ; un compteur pour le balayage des afficheurs ; un multiplexeur 4 vers 1 (4 x 4 bits d entrée). Pour pouvoir tester ce système, des registres de stockage d entrée seront ajoutés. EXERCICE 1 1. Faire le schéma synoptique de ce système en faisant ressortir les différentes entrées et sorties, ainsi que les signaux intermédiaires. 2. Rappeler le fonctionnement d un registre. Combien de bascules seront nécessaires pour réaliser l étage de stockage en entrée?
21 3. Module 1 - Décodeur BCD / 7 segments On souhaite réaliser un décodeur décimal à 7 segments utilisant un seul afficheur (une des sorties an devra être mise à 0 ). EXERCICE 2 1. Créer un fichier source VHDL nommé BCD7seg.vhd. 2. Décrire ce système en utilisant uniquement des affectations conditionnelles ou sélectives (pas de process). Les données à convertir sont fournies par 4 interrupteurs. 4. Module 2 - Diviseur de fréquence La fréquence de balayage des 4 afficheurs sera fixée à 100 Hz. Il sera donc nécessaire de disposer d une horloge à 400 Hz pour le balayage. Le diviseur de fréquence à concevoir sera actionné par l horloge CLK1 de la carte (25 MHz). EXERCICE 3 1. Créer un fichier source VHDL nommé prediv.vhd. 2. Décrire ce système en VHDL, pour passer d une fréquence de 25 MHz à 400 Hz. 5. Module 3 - Compteur pour le balayage Afin de pouvoir séquentiellement sélectionner un des afficheurs, nous allons à présent nous intéresser à un compteur synchrone. EXERCICE 4 1. Combien d états devra comporter ce compteur? Combien de bascules seront alors nécessaires? 2. Créer un fichier source VHDL nommé cpt.vhd. 3. Décrire ce système en VHDL. 6. Module 4 - Multiplexeur d entrée On souhaite pouvoir affecter à l entrée du décodeur BCD/7segments une des 4 données présentes en entrée, afin qu elles soient séquentiellement affichées. EXERCICE 5 1. Quelle est la taille du mot binaire présent à chaque entrée? Quelle est la taille du mot de sortie? 2. Créer un fichier source VHDL nommé muxbcd.vhd. 3. Décrire ce système en VHDL. 7. Module 5 - Décodeur 2 vers 4 On souhaite réaliser un décodeur 2 vers 4 permettant à partir du module "compteur" de sélectionner un des 4 afficheurs 7 segments. Ces afficheurs sont actifs à l état bas. 21
22 EXERCICE 6 1. Créer un fichier source VHDL nommé dec2v4.vhd. 2. Décrire ce système en utilisant uniquement des affectations conditionnelles ou sélectives (pas de process). Les données à convertir sont fournies par 4 interrupteurs. 8. Afficheur complet En regroupant l ensemble des éléments précédents, il est possible de réaliser un afficheur multiplexé complet. EXERCICE 7 1. Créer un fichier source VHDL nommé aff7seg.vhd. 2. Instancier les composants nécessaires au bon fonctionnement du système dans ce fichier source. 3. Réaliser alors un afficheur multiplexé présentant un message constant (configuré dans le source, par exemple "1984"). 9. Amélioration Pour les exercices suivants, une source d entrée sur 16 bits (4x4) et facilement réglable est nécessaire. EXERCICE 8 1. Créer un fichier source VHDL nommé regbcd.vhd. 2. Décrire un registre parallèle à 4 bits ayant une entrée de validation. 3. Ajouter à la description contenue dans aff7seg.vhd la possibilité d avoir 4 registres en entrée, en instanciant le composant précédemment réalisé. 4. Tester alors l afficheur complet. Les 4 entrées de chacun des registres seront reliées à 4 interrupteurs. Les entrées de validation de ces registres seront reliées aux 4 boutons-poussoirs. Lors de l appui sur l un deux, la donnée présente sur les 4 interrupteurs sera chargée dans le registre correspondant et affichée sur l afficheur correspondant. Afin de pouvoir générer le fichier de programmation correctement (Xilinx ISE version supérieure à 10.1), vous devrez ajouter la ligne : NET "clk" CLOCK_DEDICATED_ROUTE = FALSE; dans le fichier de contraintes (*.ucf). 22
SIN-FPGA DESCRIPTION PAR SCHEMA
SIN-FPGA DESCRIPTION PAR SCHEMA Documents ressources: http://www.altera.com/literature/lit-index.html Introduction to Quartus II : intro_to_quartus2.pdf Documentation QUARTUS II : quartusii_handbook.pdf
Plus en détailLe langage VHDL. Eduardo Sanchez EPFL
Le langage VHDL Eduardo Sanchez EPFL Livres conseillés: John F. Wakerly Digital design (4th edition) Prentice Hall, 2005 Peter J. Ashenden The designer's guide to VHDL (3rd edition) Morgan Kaufmann, 2008
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étailManipulations du laboratoire
Manipulations du laboratoire 1 Matériel Les manipulations de ce laboratoire sont réalisées sur une carte électronique comprenant un compteur 4-bit asynchrone (74LS93) avec possibilité de déclenchement
Plus en détailIFT1215 Introduction aux systèmes informatiques
Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d
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étailQUESTION 1 {2 points}
ELE4301 Systèmes logiques II Page 1 de 8 QUESTION 1 {2 points} En se servant de paramètres électriques donnés dans le Tableau 1 ci-dessous, on désire déterminer la fréquence d opération du compteur présenté
Plus en détailT. BLOTIN Lycée Paul-Eluard 93206 SAINT-DENIS
T. BLOTIN Lycée Paul-Eluard 93206 SAINT-DENIS SOMMAIRE I. Le VHDL pour qui, pourquoi, quand, comment? A. Le VHDL!...... 1 B. Pourquoi un langage de description?...... 1 C. Les limites actuelles...... 2
Plus en détailET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailFONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE
I/ GÉNÉRALITÉS I.1/ Fonction Un compteur binaire est utilisé : -pour compter un certain nombre d'évènements binaires -pour diviser la fréquence d'un signal logique par 2 m Page 1 FONCTION COMPTAGE BINAIRE
Plus en détailVIII- Circuits séquentiels. Mémoires
1 VIII- Circuits séquentiels. Mémoires Maintenant le temps va intervenir. Nous avions déjà indiqué que la traversée d une porte ne se faisait pas instantanément et qu il fallait en tenir compte, notamment
Plus en détailSérie D65/D75/D72 Afficheurs digitaux modulaires
Série D65/D75/D72 Afficheurs digitaux modulaires Afficheurs digitaux modulaires Afficheurs digitaux individuels La série D65/D75/D72 représente une vaste gamme de modules d affichage numériques, hexadécimaux
Plus en détailLes portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT
Les portes logiques Nous avons jusqu ici utilisé des boutons poussoirs et une lampe pour illustrer le fonctionnement des opérateurs logiques. En électronique digitale, les opérations logiques sont effectuées
Plus en détailModules d automatismes simples
Modules d automatismes simples Solutions pour automatiser Modules d'automatismes Enfin, vraiment simple! Un concentré de solution Pour vos petites applications d'automatismes millenium gère : Temporisations
Plus en détailConception et Intégration de Systèmes Critiques
Conception et Intégration de Systèmes Critiques 15 12 18 Non 50 et S initier aux méthodes le développement de projet (plan de développement, intégration, gestion de configuration, agilité) Criticité temporelle
Plus en détailIntroduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007
Introduction à l architecture des ordinateurs Adrien Lebre Décembre 2007 Plan - partie 1 Vue d ensemble La carte mère Le processeur La mémoire principal Notion de bus Introduction à l architecture des
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é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étailQuoi de neuf en contrôle/commande et systèmes embarqués (RIO, WSN...)?
Quoi de neuf en contrôle/commande et systèmes embarqués (RIO, WSN...)? Mathieu PACE National Instruments, Ingénieur d applications L architecture RIO se développe Processeur FPGA E/S E/S E/S personnalisées
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étailDOCUMENT PROTEGE PAR UN DROIT DE COPIE. CPLD ou FPGA Critères de choix. page 1
Une des caractéristiques du domaine des circuits programmables est d être résolument moderne, tirant parti des évolutions concernant les procédés technologiques, la propriété intellectuelle(ip), l Internet,
Plus en détailConception Systèmes numériques VHDL et synthèse automatique des circuits
Année 2008-2009 Conception Systèmes numériques VHDL et synthèse automatique des circuits Travaux pratiques Pentium4 Présentation du simulateur VHDL sous environnement Cadence Présentation de l outil Synopsys
Plus en détailLe multiplexage. Sommaire
Sommaire Table des matières 1- GENERALITES... 2 1-1 Introduction... 2 1-2 Multiplexage... 4 1-3 Transmission numérique... 5 2- LA NUMERATION HEXADECIMALE Base 16... 8 3- ARCHITECTURE ET PROTOCOLE DES RESEAUX...
Plus en détailLeçon 1 : Les principaux composants d un ordinateur
Chapitre 2 Architecture d un ordinateur Leçon 1 : Les principaux composants d un ordinateur Les objectifs : o Identifier les principaux composants d un micro-ordinateur. o Connaître les caractéristiques
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étailSoftware and Hardware Datasheet / Fiche technique du logiciel et du matériel
Software and Hardware Datasheet / Fiche technique du logiciel et du matériel 1 System requirements Windows Windows 98, ME, 2000, XP, Vista 32/64, Seven 1 Ghz CPU 512 MB RAM 150 MB free disk space 1 CD
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étailELP 304 : Électronique Numérique. Cours 1 Introduction
ELP 304 : Électronique Numérique Cours 1 Introduction Catherine Douillard Dépt Électronique Les systèmes numériques : généralités (I) En électronique numérique, le codage des informations utilise deux
Plus en détailHiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique
Architecture d ordinateur : introduction Dimitri Galayko Introduction à l informatique, cours 1 partie 2 Septembre 2014 Association d interrupteurs: fonctions arithmétiques élémentaires Elément «NON» Elément
Plus en détail1 Démarrer... 3 1.1 L écran Isis...3 1.2 La boite à outils...3 1.2.1 Mode principal... 4 1.2.2 Mode gadget...4 1.2.3 Mode graphique...
1 Démarrer... 3 1.1 L écran Isis...3 1.2 La boite à outils...3 1.2.1 Mode principal... 4 1.2.2 Mode gadget...4 1.2.3 Mode graphique... 4 2 Quelques actions... 5 2.1 Ouvrir un document existant...5 2.2
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étailÉléments d'architecture des ordinateurs
Chapitre 1 Éléments d'architecture des ordinateurs Machines take me by surprise with great frequency. Alan Turing 1.1 Le Hardware Avant d'attaquer la programmation, il est bon d'avoir quelques connaissances
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é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étailConversion d un entier. Méthode par soustraction
Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut
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 et Sébastien Viardot Année universitaire 2011-2012 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 Codage des
Plus en détailSur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)
1/ Généralités : Un ordinateur est un ensemble non exhaustif d éléments qui sert à traiter des informations (documents de bureautique, méls, sons, vidéos, programmes ) sous forme numérique. Il est en général
Plus en détailAlgèbre binaire et Circuits logiques (2007-2008)
Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits
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é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é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étailConception Systèmes numériques VHDL et synthèse automatique des circuits
Année 2011-2012 Conception Systèmes numériques VHDL et synthèse automatique des circuits Travaux pratiques WIDEMACV1 LAAS-CNRS 2011 Présentation du simulateur VHDL sous environnement Cadence Présentation
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étailEquipement. électronique
MASTER ISIC Les générateurs de fonctions 1 1. Avant-propos C est avec l oscilloscope, le multimètre et l alimentation stabilisée, l appareil le plus répandu en laboratoire. BUT: Fournir des signau électriques
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étailDiagrammes de Package, de déploiement et de composants UML
labsticc.univ-brest.fr/pages_perso/babau/ Diagrammes de Package, de déploiement et de composants UML Jean-Philippe Babau Département Informatique, UFR Sciences, Laboratoire Lab-STICC 2 1 Plan Description
Plus en détailLA MESURE INDUSTRIELLE
E02 LA MESURE INDUSTRIELLE 20 Heures Technicien responsable de la maintenance Approfondir les techniques de mesure; Prendre en compte l aspect métrologie. Connaître les limites et les facteurs d influences
Plus en détailTD Architecture des ordinateurs. Jean-Luc Dekeyser
TD Architecture des ordinateurs Jean-Luc Dekeyser Fiche 1 Nombres de l informatique Exercice 1 Une entreprise désire réaliser la sauvegarde de ses données sur un site distant. Le volume de données à sauvegarder
Plus en détailEncoder 1.60. Encoder 1 sur 15. Codification fil par étage 15 étages max. + 2 flèches + signal de mouvement. Raccordements 0.1 mm²...
Displays ACCESSOIRES AFFICHEURS Encoder Encoder 1 sur 1 Le dispositif Encoder est nécessaire pour une codification 1 fil par étage avec des afficheurs conçus pour code binaire. Le dispositif Encoder convertit
Plus en détailTABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.
TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3! " #$ % & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3' & 3. SIMULATION 7 0 ( 0, - 0 - " - & 1 4. LA SOURIS 11 5. LES RACCOURCIS CLAVIER 11 STI Electronique
Plus en détailPlan du Travail. 2014/2015 Cours TIC - 1ère année MI 30
Plan du Travail Chapitre 1: Internet et le Web : Définitions et historique Chapitre 2: Principes d Internet Chapitre 3 : Principaux services d Internet Chapitre 4 : Introduction au langage HTML 2014/2015
Plus en détailExtrait des Exploitations Pédagogiques
Pédagogiques Module : Compétitivité et créativité CI Première : Compétitivité et créativité CI institutionnel : Développement durable et compétitivité des produits Support : Robot - O : Caractériser les
Plus en détailFiche technique CPU 314SC/DPM (314-6CG13)
Fiche technique CPU 314SC/DPM (3146CG13) Données techniques N de commande 3146CG13 Type CPU 314SC/DPM Information générale Note Caractéristiques SPEEDBus Technologie SPEED7 24 x DI, 16 x DO, 8 x DIO, 4
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é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é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étailReprésentation des Nombres
Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailMICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44
MICROCONTROLEURS PIC PROGRAMMATION EN C V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44 Chapitre 1 GENERALITES 1 DEFINITION Un microcontrôleur est un microprocesseur RISC (Reduced Instruction Set
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailUFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP
Université de Strasbourg Licence Pro ARS UFR de Mathématiques et Informatique Année 2009/2010 1 Adressage IP 1.1 Limites du nombre d adresses IP 1.1.1 Adresses de réseaux valides Réseaux Locaux TP 04 :
Plus en détailTP Modulation Démodulation BPSK
I- INTRODUCTION : TP Modulation Démodulation BPSK La modulation BPSK est une modulation de phase (Phase Shift Keying = saut discret de phase) par signal numérique binaire (Binary). La phase d une porteuse
Plus en détailOn distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)
Mémoire - espace destiné a recevoir, conserver et restituer des informations à traiter - tout composant électronique capable de stocker temporairement des données On distingue deux grandes catégories de
Plus en détailArchitecture des ordinateurs Introduction à l informatique
Architecture des ordinateurs Introduction à l informatique 17 septembre 2004 1 2 3 4 5 6 Les interrupteurs... 0V 5V Ce sont des composants électroniques qui laissent pser un courant principal lorsque la
Plus en détailIRL : Simulation distribuée pour les systèmes embarqués
IRL : Simulation distribuée pour les systèmes embarqués Yassine El Khadiri, 2 ème année Ensimag, Grenoble INP Matthieu Moy, Verimag Denis Becker, Verimag 19 mai 2015 1 Table des matières 1 MPI et la sérialisation
Plus en détailLogique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.
Logique binaire I. L'algèbre de Boole L'algèbre de Boole est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques.
Plus en détailElectron S.R.L. - MERLINO - MILAN ITALIE Tel (++ 39 02) 90659200 Fax 90659180 Web www.electron.it, e-mail electron@electron.it
Electron S.R.L. Design Production & Trading of Educational Equipment B3510--II APPLIICATIIONS DE TRANSDUCTEURS A ULTRASONS MANUEL D IINSTRUCTIIONS POUR L ETUDIIANT Electron S.R.L. - MERLINO - MILAN ITALIE
Plus en détailHubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02)
Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02) Ne rien livrer au hasard, c est économiser du travail Pont Sainte Maxence(O C est quoi USB? Comment ça marche? Les standards? La technique en détail
Plus en détailAMICUS 18 (2ème partie) 4) Présentation du logiciel Amicus IDE
AMICUS 18 (2ème partie) Dans la première partie, nous avions présenté la platine Amicus 18 et nous avions réalisé quelques montages simples. Nous allons découvrir un peu mieux la programmation. Dans la
Plus en détailConférence sur les microcontroleurs.
Conférence sur les microcontroleurs. Le microcontrôleur Les besoins et le développement. Vers 1970, pour des calculs (calculatrice). Le premier est le 4004 de Intel, 90K. La technologie. Les 2 principales
Plus en détailTravaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES
TRAVAUX PRATIQUES Le présent travail vise à développer une interface visuelle de programmation des entrées- sorties du port LPT d un PC à l aide du logiciel VISUAL BASIC. I- EDITION ET TEST DU PROGRAMME
Plus en détailCycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language
Unified Modeling Language UML Salima Hassas Version Cycle de vie du logiciel Client Besoins Déploiement Analyse Test Conception Cours sur la base des transparents de : Gioavanna Di Marzo Serugendo et Frédéric
Plus en détailRappels 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é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étailProjet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
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é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é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é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étailTechnologie 125 Khz pour une performance optimale en en environnement industriel. Création des badges. Programmation des badges
CC AXKEF LA RFID SECURISEE DANS L ENVIRONNEMENT INDUSTRIEL TERTIAIRE Technologie 125 Khz pour une performance optimale en en environnement industriel Création des badges La technologie AXKEF intègre notre
Plus en détailLES TYPES DE DONNÉES DU LANGAGE PASCAL
LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.
Plus en détailArchitecture matérielle des systèmes informatiques
Architecture matérielle des systèmes informatiques IDEC, Renens. Version novembre 2003. Avertissement : ce support de cours n est pas destiné à l autoformation et doit impérativement être complété par
Plus en détailNOTIONS DE RESEAUX INFORMATIQUES
NOTIONS DE RESEAUX INFORMATIQUES GENERALITES Définition d'un réseau Un réseau informatique est un ensemble d'équipements reliés entre eux afin de partager des données, des ressources et d'échanger des
Plus en détailLes liaisons SPI et I2C
DAMÉCOURT BENJAMIN AVRIL 28 Liaisons synchrones Les liaisons SPI et I2C Face arrière d un imac : trois ports USB, un port Firewire 4 et un port Firewire 8 CHRONOLOGIE ANNÉES 7 La liaison SPI et la création
Plus en détailCLIP. (Calling Line Identification Presentation) Appareil autonome affichant le numéro appelant
1. Besoin CLIP (Calling Line Identification Presentation) Appareil autonome affichant le numéro appelant ETUDE FONCTIONNELLE De très nombreux abonnés du réseau téléphonique commuté ont exprimé le besoin
Plus en détailMicroprocesseur + Logiciel
Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS
Plus en détailFusionInventory. Guillaume Rousse <guillomovitch@gmail.com> Journées francophones de Perl 2011
Journées francophones de Perl 2011 Sommaire 1 Solutions de gestion de parc informatique 2 Caractéristiques Capacités 3 Avancement 1 Solutions de gestion de parc informatique 2
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étailLe Programme SYGADE SYGADE 5.2. Besoins en équipement, logiciels et formation. UNCTAD/GID/DMFAS/Misc.6/Rev.7
CONFÉRENCE DES NATIONS UNIES SUR LE COMMERCE ET LE DÉVELOPPEMENT UNITED NATIONS CONFERENCE ON TRADE AND DEVELOPMENT Le Programme SYGADE SYGADE 5.2 Besoins en équipement, logiciels et formation UNCTAD/GID/DMFAS/Misc.6/Rev.7
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailEtudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté
Compétences travaillées : Mettre en œuvre un protocole expérimental Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique
Plus en détailAdministration des ressources informatiques
1 2 La mise en réseau consiste à relier plusieurs ordinateurs en vue de partager des ressources logicielles, des ressources matérielles ou des données. Selon le nombre de systèmes interconnectés et les
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étailCarte Relais GSM (Manuel Utilisateur)
Carte Relais GSM (Manuel Utilisateur) Carte Relais GSM Introduction Cette carte est une véritable centrale de télécommande et d alarme par GSM. Elle se connecte par un port série à un modem GSM compatible
Plus en détailSystème binaire. Algèbre booléenne
Algèbre booléenne Système binaire Système digital qui emploie des signaux à deux valeurs uniques En général, les digits employés sont 0 et 1, qu'on appelle bits (binary digits) Avantages: on peut utiliser
Plus en détailDémarreur-testeur par ordinateur via le port USB d un PC pour moteurs asynchrones triphasés
Démarreur-testeur par ordinateur via le port USB d un PC pour moteurs asynchrones triphasés J. MBIHI Email : mbihidr@yahoo.fr E. AMIE EBANDA et A. DONWOUNG KANA Groupe de Recherche en Informatique Industrielle
Plus en détailCréer le schéma relationnel d une base de données ACCESS
Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...
Plus en détail