Synthèse des circuits

Dimension: px
Commencer à balayer dès la page:

Download "Synthèse des circuits"

Transcription

1 Le langage VHDL P.N ENSEIRB 1.0 Introduction Le VHDL est un langage général de description de matériel permettant un grand niveau d abstraction. Un système aussi complexe soit-il peut être décrit sous forme d un ensemble de blocs interconnectés, le modèle de chaque bloc est ce qui permet par la simulation de rendre compte du bon fonctionnement du système. Lorsqu on désire réaliser un circuit de type programmable, ou bien ASIC, ou bien de types circuit imprimé, on est soumis à une double contrainte technologique et de savoir-faire représentée par un certain nombre de primitives. On parle alors de niveau portes avec des fonctions logiques de base (ET, OU etc...), des fonctions combinatoires MSI (addition, multiplexeur etc...), des fonctions séquentielles simples (bascules et registres), (mémoire et latch). Le synthétiseur est l outil capable d interpréter une certaine description VHDL et d en déduire le schéma niveau porte correspondant. La description acceptable par le synthétiseur sera dite niveau RTL (Register Transfer Logic). Le synthétiseur est très efficace au niveau porte pour des taches telles que implanter des fonctions combinatoires, calculer, coder un compteur, un séquenceur, implanter des échanges par bus etc...par contre, les choix d architecture, la structuration d un système sont des taches de trop haut niveau et restent à la charge du concepteur. Le VHDL synthétisable est en fait un VHDL soumis à des limitations propres au synthétiseur (ceux-ci évoluent sans-cesse et essaient d intégrer des fonctions de plus en plus complexes). En VHDL de synthèse c est le style d écriture qui fixe l implantation future et l on doit privilégier la simplicité et la clarté. On doit pratiquement au moment de la description VHDL avoir une idée de ce qui va être généré. Il faudra clairement que la table de vérité d un circuit combinatoire soit complètement définie, que dans un système synchrone, les fronts d horloge soit parfaitement identifiés, que le nombre de bits d un mot soit optimisé etc...a l inverse, un fichier, un pointeur vont générer des erreurs. Fixer des retards est une absurdité(puisque c est la technologie qui les crée). Ce qui fait du VHDL un outil incontournable lors d un cycle de conception, c est justement cette possibilité de passer d un niveau très abstrait à un niveau circuit Tout le long du cycle, certaines parties resteront inchangées car non synthétisables, ce sont les dispositifs de test du circuit. Le circuit en cours de conception passera de l état de modèle abstrait à celui de description synthétisable. Page 41

2 ENSEIRB P.N Le langage VHDL Spécifications Niveau comportementall structuration Flôt de données Contrôle Test en VHDL VHDL synthétisable Synthése VHDL et optimisation Niveau portes Extraction de paramètres Blocs au niveau technologique portes, primitives niveau technologique Fabrication Page 42

3 Le langage VHDL P.N ENSEIRB 2.0 Synthèse: Un certain style 2.1 Les étapes Lors de descriptions VHDL en vue de synthèse, c est le style d écriture qui va fixer les choix d implantation au niveau porte. Il est donc nécessaire de produire des instructions ayant leur équivalence au niveau circuit. Les questions à se poser sont du genre: Est-ce que j implante un réseau de portes ou un multiplexeur?, ma mémoire est-elle de type niveau ou front? Ai-je toujours fixé le nombre de bits? Le synthétiseur génère une description structurelle au niveau RTL basé sur des primitives qui lui sont propres. Puis, la description RTL est optimisée et ciblée sur des primitives technologiques (propres à un fabriquant particulier). Cest le niveau PORTE / GATE.Les critères doptimisation sont : la vitesse la surface (ASIC) / Nombre de blocs (FPGA ou PLD) 2.2 Les limitations du synthétiseur Un seul WAIT par PROCESS Les retards sont ignorés (pas de sens) Pas d équation logique sur une horloge (conseillé) Pas de fichier ni de pointeur Les initialisations de signaux ou de variables sont ignorées Restriction sur les boucles (LOOP) Restriction sur les attributs de détection de fronts (EVENT, STABLE) Pas de type REAL Pas d attributs BEHAVIOR, STRUCTURE,LAST_EVENT, LAST_ACTIVE,TRANSACTION Pas de mode REGISTER et BUS Page 43

4 ENSEIRB P.N Le langage VHDL Exemple-1: 26 WAIT UNTIL h EVENT AND h= 1 ; 27 x := 2; 28 WAIT UNTIL h EVENT AND h= 1 ; Ces trois lignes sont incorrectes. Il faut gérer soi-même le comptage des fronts d horloge: Exemple-2: 29 WAIT UNTIL h EVENT AND h= 1 ; 30 i := i + 1; 31 x := 2; On ne sait pas faire le ET entre un front et un niveau. Il s ensuit que la ligne suivante: doit être remplacée par 32 WAIT UNTIL h EVENT AND h= 1 AND raz = 0 ; 33 WAIT UNTIL h EVENT AND h= 1 ; 34 IF raz = 0 THEN Le synthétiseur fera le choix d un circuit fonctionnant sur le front montant de h et prenant raz comme niveau d entrée de validation. Exemple-3: 35 SIGNAL compteur : INTEGER; produira certainement un compteur 32 bits. Si ce n est pas cela qui est voulu, il faut le préciser. 36 SIGNAL compteur : INTEGER RANGE 0 TO 99; 3.0 Description de circuits combinatoires 3.1 Ce que l on doit implanter équation logique simplifiée ou non table de vérité, fonctions complètes ou non 3.2 Méthodes possibles Instructions concurrentes Processus avec les entrées en liste de sensibilité Fonctions appliquées au signal de sortie Tableau de constantes Page 44

5 Le langage VHDL P.N ENSEIRB 3.3 Multiplexeurs -- Fichier : ~nouel/pub/vhdl/multiplexeur.vhd Exemples de style d écriture. Circuit combinatoire synthétisable ENTITY multiplexeur is port( e : IN BIT_VECTOR (0 TO 3); ad : IN NATURAL RANGE 0 TO 3; s : OUT BIT); ARCHITECTURE cond OF multiplexeur IS s <= e(0) WHEN ad = 0 ELSE e(1) WHEN ad = 1 ELSE e(2) WHEN ad = 2 ELSE e(3) ; ARCHITECTURE selection OF multiplexeur IS WITH ad SELECT s <= e(0) WHEN 0, e(1) WHEN 1, e(2) WHEN 2, e(3) WHEN OTHERS; ARCHITECTURE seq OF multiplexeur IS PROCESS(e(0), e(1), e(2), e(3), ad) CASE ad IS WHEN 0 => s<= e(0); WHEN 1 => s<= e(1); WHEN 2 => s <= e(2); WHEN OTHERS => s <= e(3); END CASE; ARCHITECTURE rapide OF multiplexeur IS s <= e(ad); END ; Page 45

6 ENSEIRB P.N Le langage VHDL 3.4 Décodeur binaire Décodeur binaire du commerce type 74ls 138 ou équivalent. -- fichier ~nouel/pub/vhdl/ls138.vhd ENTITY ls138 IS PORT ( g1, g2a, g2b, a, b, c : IN STD_ULOGIC; y0, y1, y2, y3, y4, y5, y6,y7 : OUT STD_ULOGIC); END ls138; ARCHITECTURE avec_conversion OF ls138 IS 0); PROCESS VARIABLE y : STD_ULOGIC_VECTOR (0 TO 7); VARIABLE adresse : INTEGER RANGE 0 TO 7; VARIABLE AConvertir : STD_ULOGIC_VECTOR (3 DOWNTO WAIT ON g1, g2a, g2b, a, b, c; AConvertir := 0 & c & b & a ; adresse := to_integer(aconvertir,0); y := ; IF g1 = 1 AND g2a = 0 AND g2b = 0 THEN y(adresse) := 0 ; y0 <= y(0); y1 <= y(1); y2 <= y(2); y3 <= y(3); y4 <= y(4); y5 <= y(5); y6 <= y(6); y7 <= y(7); ARCHITECTURE equations OF ls138 IS SIGNAL valide : STD_ULOGIC; valide <= g1 AND (NOT g2a) AND (NOT g2b); y7 <= NOT(c AND b AND a AND valide) ; y6 <= NOT(c AND b AND (NOT a) AND valide); y5 <= NOT(c AND (NOT b) AND a AND valide); y4 <= NOT(c AND (NOT b) AND (NOT a) AND valide); y3 <= NOT((NOT c) AND b AND a AND valide); y2 <= NOT((NOT c) AND b AND (NOT a) AND valide); y1 <= NOT((NOT c) AND (NOT b) AND a AND valide); y0 <= NOT((NOT c) AND (NOT b) AND (NOT a) AND valide); END equations; Page 46

7 Le langage VHDL P.N ENSEIRB 3.5 Décodeur BCD-7segments Les afficheurs sont des anodes communes. Pour émettre de la lumière, ils doivent être traverses par un courant et donc recevoir un niveau haut ( 1 ) sur leur anode et un niveau bas ( 0 ) sur leur cathode. -- On considère 16 affichages possibles de 0 a 9, de A a F -- Fichier~nouel/pub/vhdl/hexa_7seg.vhdl function hexa_7seg (e : STD_ULOGIC_VECTOR) RETURN STD_ULOGIC_VECTOR IS TYPE tableau IS ARRAY( 0 to 15) OF STD_ULOGIC_VECTOR(6 DOWNTO 0); CONSTANT segments : tableau := ( , , , , , , , , , , , , , , , ); 3.6 Circuits arithmétiques VARIABLE entree : STD_ULOGIC_VECTOR( 3 DOWNTO 0); entree := e; RETURN segments ( to_integer ( 0 & entree)); Les opérateurs de base arithmétiques ou logiques +, -, NOT, *, AND, >, >, = etc...sont reconnus et fonctionnent en surcharge selon le type. Dautres fonctions particulières pourraient enrichir le catalogue de primitives Il n y a aucun problème pour décrire une quelconque opération mais attention à l éventuel dimensionnement des mots traités qui pourrait s avérer incorrect surtout lorsqu on utilise des conversions de type. Exemple: S <= a + b S doitcomporter le même nombre de bits que a ou b. Page 47

8 ENSEIRB P.N Le langage VHDL 4.0 Description de circuits séquentiels Ce que l on doit implanter : Mémoires sur niveau et tampons (latch) Bascules sur front et registres parallèles Registres a décalage Méthodes possibles : Donner la préférence aux processus explicites Attention à la mémorisation implicite sur les parties combinatoires Préferer séparer une partie combinatoire en instruction concurrente 4.1 Mémoire Set-reset Mémoire très simple constituée de deux portes NOR interconnectées. fichier : ~nouel/pub/vhdl/rs.vhd ENTITY memoire_rs IS PORT ( s, r : IN std_ulogic; q, qb : OUT std_ulogic); ARCHITECTURE deux_portes OF memoire_rs IS SIGNAL qi : std_ulogic := 0 ; SIGNAL qbi :std_ulogic := 1 ; qi <= qbi NOR r; qbi <= qi NOR s; q <= qi; qb <= qbi; 4.2 Mémoire sur niveau : Latch ENTITY latch_gen IS GENERIC ( Nb_bits : positive := 8); -- Nombre de bits PORT ( en : IN std_ulogic; entree : IN std_ulogic_vector(nb_bits-1 DOWNTO 0); sortie : OUT std_ulogic_vector(nb_bits-1 DOWNTO 0)); END latch_gen; Page 48

9 Le langage VHDL P.N ENSEIRB ARCHITECTURE basique OF latch_gen IS -- basique -- purpose : tant que en = 1 sortie = entree -- inputs : en, entree -- outputs : sortie p1 : PROCESS (en, entree) -- PROCESS p1 IF en = 1 THEN sortie <= entree; END PROCESS p1; END basique ; 4.3 Bascules et registres parallèles Mémoires élémentaires fonctionnant sur front. Le simple changement de type std_ulogic en std_ulogic_vector transforme la bascule en registre. Les remise à zéro seront synchrones ou asynchrone selon les deux styles d écriture suivant: WAIT UNTIL rising_edge(h); IF raz = 1 THEN -- tout est synchrone -- ici le signal est affecté à 0 ELSE Ou alors... WAIT ON raz, h ; -- IF raz = 1 THEN -- asynchrone -- ici le signal est affecté à 0 ELSIF rising_edge(h) THEN -- synchrone Bascule D ou registre -- Fichier : ~nouel/pub/vhdl/basculed_raz.vhd -- Bascule D avec remise à 0 asynchrones et sorties complémentaires. ENTITY bascdra0 IS END bascdra0; PORT ( h, d,raz : IN std_ulogic; s, sb : OUT std_ulogic); Page 49

10 ENSEIRB P.N Le langage VHDL ARCHITECTURE simple OF bascdra0 IS P1:PROCESS VARIABLE stmp : std_ulogic ; WAIT ON raz, h; IF raz = 1 THEN stmp := 0 ; ELSIF h event AND h = 1 AND h LAST_VALUE = 0 THEN stmp := d; s <= stmp; sb <= NOT stmp; END simple ; Bascule JK -- Fichier : ~nouel/pub/vhdl/bascule_jk.vhd -- Modele de bascule J K synthétisable ENTITY jkff IS PORT ( j, k, h, raz : in BIT; q, qb : OUT BIT); ARCHITECTURE comportementale OF jkff IS SIGNAL entree : BIT_VECTOR ( 0 TO 1); SIGNAL qint : BIT; entree <= j & k ; un : PROCESS WAIT ON raz, h; IF raz = 1 THEN qint <= 0 ; ELSIF h last_value = 0 AND h = 1 THEN CASE entree IS WHEN 00 => NULL; WHEN 01 => qint <= 0 ; WHEN 10 => qint <= 1 ; WHen 11 => qint <= NOT qint; END CASE; qb <= NOT qint; q <= qint; Page 50

11 Le langage VHDL P.N ENSEIRB Bascule E -- Fichier : ~nouel/pub/vhdl/basc_e.vhd -- Bascule E entierement synchrone avec raz et validation. Pour un registre E, il suffit de remplacer BIT par BIT_VECTOR comme type pour d, q, qbar ENTITY bascule_e IS PORT ( en, d, raz, h : IN STD_ULOGIC; q, qbar : OUT STD_ULOGIC); Première description par bloc gardé -- ARCHITECTURE concurrente OF bascule_e IS SIGNAL qint : STD_ULOGIC; b1 : BLOCK (h event AND h = 1 ) qint <= GUARDED 0 WHEN raz = 1 ELSE d WHEN en = 1 ELSE qint; END BLOCK; q <= qint; qbar <= NOT qint; -- Deuxieme description par Process ARCHITECTURE sequentielle OF bascule_e IS SIGNAL qint : STD_ULOGIC; P1 : PROCESS WAIT UNTIL (h event AND h = 1 ); IF raz = 1 THEN qint <= 0 ; ELSIF en = 1 THEN qint <= d ; q <= qint; qbar <= NOT qint; Page 51

12 ENSEIRB P.N Le langage VHDL Registre à décalage Fichier : ~nouel/pub/vhdl/reg_decalage.vhd -- Description d un registre a décalage gauche-droite, 8 bits avec chargement paralelle (synchrone) et remise a zero (asynchrone). L horloge est active sur front montant. ENTITY registre_decalage IS GENERIC (Nb_bits : natural := 8; Tps : Time := 15 ns; Tpas : Time := 18 ns); PORT ( h, raz, edg, edd : IN STD_ULOGIC; sel : IN STD_ULOGIC_VECTOR(1 DOWNTO 0); d_entree : IN STD_ULOGIC_VECTOR(Nb_bits -1 DOWNTO 0); d_sortie : OUT STD_ULOGIC_VECTOR(Nb_bits -1 DOWNTO 0)); fonctions selon les valeurs de selection (sel) -- sel d_sortie inchangee decalage a droite avec bit edd a gauche decalage a gauche avec bit edg a droite Chargement de d_entree -- Relations temporelles simplifiees: -- Temps de propagation horloge->sortie : 15 ns -- Temps de propagation raz->sortie : 18 ns -- ARCHITECTURE un_process OF registre_decalage IS sr : PROCESS VARIABLE stmp : STD_ULOGIC_VECTOR(Nb_bits -1 DOWNTO 0) := ( OTHERS => 0 ); WAIT ON raz, h; IF raz = 1 THEN stmp := ( OTHERS => 0 ); d_sortie <= stmp after tpas; ELSIF h last_value = 0 AND h = 1 THEN CASE sel IS WHEN 11 => stmp := d_entree ; WHEN 10 => stmp := stmp(nb_bits - 2 DOWNTO 0) & edg; WHEN 01 => stmp := edd & stmp(nb_bits -1 DOWNTO 1); WHEN OTHERS => NULL; END CASE; d_sortie <= stmp after Tps; - Page 52

13 Le langage VHDL P.N ENSEIRB 4.4 Compteur générique Fichier : ~nouel/pub/vhdl/compteur_gen.vhd -- Fichier : compteur_gen.vhd ENTITY compteur_gen IS GENERIC (Nb_Bits : natural := 4; --les valeurs par defaut Modulo : natural :=16); -- sont optionelles PORT ( h, compter, raz : IN std_ulogic; sortie : OUT unsigned (Nb_bits-1 DOWNTO 0); retenue : OUT std_ulogic); ASSERT controle des parametres Modulo <= 2**Nb_bits REPORT erreur sur les parametres SEVERITY warning; END compteur_gen; ARCHITECTURE synchrone OF compteur_gen IS un_seul:process VARIABLE c : natural range 0 TO Modulo -1; -- description entierement synchrone WAIT UNTIL RISING_EDGE(h); IF raz = 1 THEN c :=0; ELSIF compter = 1 THEN IF c < Modulo -1 THEN c := c + 1; retenue <= 0 ; ELSE c := 0; retenue <= 1 ; sortie <= to_unsigned(c, Nb_bits); END synchrone; ARCHITECTURE asynchrone OF compteur_gen IS un_seul:process VARIABLE c : natural range 0 TO Modulo -1; -- description entierement synchrone WAIT ON raz, h; IF raz = 1 THEN c :=0; Page 53

14 ENSEIRB P.N Le langage VHDL ELSIF RISING_EDGE(h) THEN IF compter = 1 THEN IF c < Modulo -1 THEN c := c + 1; retenue <= 0 ; ELSE c := 0; retenue <= 1 ; END IF ; sortie <= to_unsigned(c, Nb_bits); END asynchrone; 4.5 Test du compteur générique FICHIER: ~nouel/pub/vhdl/test_compteur_gen.vhd LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE ieee.numeric_std.all; ENTITY test_compteur_gen IS USE WORK.utils.all; --pour acces a la fonction horloge ARCHITECTURE par_assertion OF test_compteur_gen IS COMPONENT compt GENERIC (Nb_Bits : natural ; --les valeurs par defaut Modulo : natural); -- sont optionelles PORT ( h, compter, raz : IN STD_ULOGIC; sortie : OUT UNSIGNED (Nb_bits-1 DOWNTO 0); retenue : OUT STD_ULOGIC); END COMPONENT; FOR C1 : compt USE ENTITY work.compteur_gen(asynchrone); -- FOR C1 : compt USE ENTITY work.compteur_gen(synchrone); CONSTANT Temps : TIME := 10 ns; CONSTANT M : natural := 17; CONSTANT N : natural := 5; SIGNAL h,ra,c, re : STD_ULOGIC; SIGNAL s : UNSIGNED(N-1 downto 0); H1: horloge(h,temps,temps); -- frequence 50 Meg C1: compt GENERIC MAP ( N,M) -- compteur modulo 17 Page 54

15 Le langage VHDL P.N ENSEIRB PORT MAP (h, c, ra, s, re); ra <= 1, 0 AFTER (Temps + Temps/2); c <= 1 ; verif:process VARIABLE s0 : UNSIGNED(N-1 downto 0); -- puisque le compteur fonctionne sur front montant, on le teste -- sur front descendant WAIT UNTIL FALLING_EDGE(h); ASSERT s < To_unsigned(M,N) REPORT sortie hors intervalle ; ASSERT (s - s0) < REPORT on doit etre en fin de comptage ; s0 := s; END par_assertion; 4.6 Description de Machines d états L état peut être de type entier, booléen, bit_vector ou énuméré. Dans ce dernier cas, en synthèse, une option permet de fixer la méthode de codage. Ce peut être binaire pur(0,1,2...), binaire réfléchi (0,1,3,2,6...), code à décalage(...001,...010,...100), optimisé ou encore codage aléatoire. Plusieurs styles d écriture sont possibles, du plus abstrait au plus condensé. On se reportera aux exemples simples fournis par ailleurs. La pratique la plus générale est cependant de construire le graphe à l aide d une instruction CASE. Les parties purement combinatoires pouvant être traitées de manière indépendante (les états d un coté, les sorties de l autre). On pourrait démarrer ainsi... 1 TYPE etat IS (debut, etat1,etat2, fin); --4 etats par exemple 2 SIGNAL raz, h : BIT; 3 SIGNAL etat_present, etat_futur : etat; 4 SIGNAL c1, c2, c3 : BOOLEAN; 5 --conditions de transition qui sont fonctions des entrées 6 7 initialisation: PROCESS 8 9 WAIT ON raz, h; 10 IF raz = 1 THEN -- asynchrone 11 etat_present <= a ; 12 ELSIF h EVENT AND h = 1 THEN 13 etat_present <= etat_futur; END PROCESS Page 55

16 ENSEIRB P.N Le langage VHDL 4.7 Type Moore 19 graphe: PROCESS -- description des transitions WAIT ON etat_present,c1,c2,c3 ; 22 CASE etat_present IS 23 WHEN debut => 24 IF c1 THEN etat_futur <= etat1 ; 25 ELSE etat_futur <= etat2; WHEN etat1 => etc END CASE; 30 Chaque sortie ne dépend que de l état présent. On l exprime très simplement par une instruction concurrente (ou un process sensible au signal etat_present). 4.8 Type Mealy Chaque sortie dépend de l état présent et des entrées. On l exprime très simplement par une instruction concurrente (ou un process sensible au signal etat_present et aux entrées concernées). Page 56

T. BLOTIN Lycée Paul-Eluard 93206 SAINT-DENIS

T. 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étail

Le langage VHDL. Eduardo Sanchez EPFL

Le 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étail

Manipulations du laboratoire

Manipulations 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étail

SIN-FPGA DESCRIPTION PAR SCHEMA

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étail

QUESTION 1 {2 points}

QUESTION 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étail

IFT1215 Introduction aux systèmes informatiques

IFT1215 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étail

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

EPREUVE 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étail

Génie Logiciel avec Ada. 4 février 2013

Gé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étail

VIII- Circuits séquentiels. Mémoires

VIII- 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étail

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

FONCTION 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étail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture 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étail

Logique séquentielle

Logique séquentielle Bascules et logique séquentielle aniel Etiemble de@lri.fr Logique séquentielle Logique séquentielle Le système a des «états» ans un système séquentiel Éléments de mémorisation Les sorties dépendent des

Plus en détail

Cours de Programmation en Langage Synchrone SIGNAL. Bernard HOUSSAIS IRISA. Équipe ESPRESSO

Cours de Programmation en Langage Synchrone SIGNAL. Bernard HOUSSAIS IRISA. Équipe ESPRESSO Cours de Programmation en Langage Synchrone SIGNAL Bernard HOUSSAIS IRISA. Équipe ESPRESSO 24 septembre 2004 TABLE DES MATIÈRES 3 Table des matières 1 Introduction 5 1.1 La Programmation Temps Réel.........................

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche 1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de

Plus en détail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason

Plus en détail

GPA770 Microélectronique appliquée Exercices série A

GPA770 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étail

ET 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. 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étail

1. 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. 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étail

Compilation (INF 564)

Compilation (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étail

SUR MODULE CAMÉRA C38A (OV7620)

SUR MODULE CAMÉRA C38A (OV7620) Applications maquette d'étude EP10K20 DÉMULTIPLEXEUR BT.656 SUR MODULE CAMÉRA C38A OV7620 SCHÉMAS ET DESCRIPTIONS AHDL 1. Schéma principal Le démultiplexeur proprement dit est la fonction "Decod_BT656_1".

Plus en détail

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)

Plus en détail

Université de La Rochelle. Réseaux TD n 6

Université de La Rochelle. Réseaux TD n 6 Réseaux TD n 6 Rappels : Théorème de Nyquist (ligne non bruitée) : Dmax = 2H log 2 V Théorème de Shannon (ligne bruitée) : C = H log 2 (1+ S/B) Relation entre débit binaire et rapidité de modulation :

Plus en détail

Programmer 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) 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étail

UEO11 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. 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étail

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014 numériques et Institut d Astrophysique et de Géophysique (Bât. B5c) Bureau 0/13 email:.@ulg.ac.be Tél.: 04-3669771 29 septembre 2014 Plan du cours 2014-2015 Cours théoriques 16-09-2014 numériques pour

Plus en détail

Algorithmique & programmation

Algorithmique & programmation Algorithmique & programmation Type structuré Article, Enregistrement, Structure Définition de nouveaux types!! On a vu les types simples "! entier, booléen, caractère, chaîne de caractères!! Comment gérer

Plus en détail

Fiche technique CPU 314SC/DPM (314-6CG13)

Fiche 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étail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

Plus en détail

Introduction à la programmation concurrente

Introduction à la programmation concurrente Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux 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étail

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Hié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étail

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions

Plus en détail

Fiche technique CPU 315SN/PN (315-4PN33)

Fiche technique CPU 315SN/PN (315-4PN33) Fiche technique CPU 315SN/PN (315-4PN33) Données techniques N de commande 315-4PN33 Information générale Note - Caractéristiques SPEED-Bus - Données techniques de l'alimentation Alimentation (valeur nominale)

Plus en détail

NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE

NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE Une application se construit par étapes 1) CAHIER DES CHARGES + ANALYSE FONCTIONNELLE = organisation fonctionnelle (QUE FAIRE) 2) ANALYSE OPERATIONNELLE

Plus en détail

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition Surveillance de Scripts LUA et de réception d EVENT avec LoriotPro Extended & Broadcast Edition L objectif de ce document est de présenter une solution de surveillance de processus LUA au sein de la solution

Plus en détail

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques CTIA04 Page 1 1. Les types de données sous S7 300 Il existe plusieurs types de données utilisées pour la programmation

Plus en détail

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

ARDUINO 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étail

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2 Débuter avec EXPRESS Alain Plantec Table des matières 1 Schema 2 2 Entité 2 2.1 Attributs simples................................................ 2 2.2 Attributs collection...............................................

Plus en détail

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Logique 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étail

Corrigé des TD 1 à 5

Corrigé des TD 1 à 5 Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un

Plus en détail

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE RANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE Un message numérique est une suite de nombres que l on considérera dans un premier temps comme indépendants.ils sont codés le plus souvent

Plus en détail

CONVERTISSEURS NA ET AN

CONVERTISSEURS NA ET AN Convertisseurs numériques analogiques (xo Convertisseurs.doc) 1 CONVTIU NA T AN NOT PLIMINAI: Tous les résultats seront exprimés sous formes littérales et encadrées avant les applications numériques. Les

Plus en détail

CONFIGURATION DE L AUTOMATE SIEMENS

CONFIGURATION 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étail

Architecture : Circuits numériques et éléments d architecture

Architecture : Circuits numériques et éléments d architecture Ecole Nationale Supérieure d Informatique et de Mathématiques Appliquées Architecture : Circuits numériques et éléments d architecture 1 ère année Année scolaire 2014 2015 Consignes Les exercices de ce

Plus en détail

Concevoir son microprocesseur

Concevoir son microprocesseur Concevoir son microprocesseur structure des systèmes logiques Jean-Christophe Buisson Collection Technosup Ellipses Avant-propos Ce livre s adresse aux étudiants en informatique de licence et maîtrise,

Plus en détail

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

REALISATION 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étail

TD Architecture des ordinateurs. Jean-Luc Dekeyser

TD 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étail

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Les 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étail

ELP 304 : Électronique Numérique. Cours 1 Introduction

ELP 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étail

Fonctions de la couche physique

Fonctions de la couche physique La Couche physique 01010110 01010110 Couche physique Signal Médium Alain AUBERT alain.aubert@telecom-st-etienne.r 0 Fonctions de la couche physique 1 1 Services assurés par la couche physique Transmettre

Plus en détail

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation

Plus en détail

Qualité du logiciel: Méthodes de test

Qualité du logiciel: Méthodes de test Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

ASR1 TD7 : Un microprocesseur RISC 16 bits

ASR1 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étail

KL5121. Pour activer des sorties en fonction de la position d'un codeur

KL5121. Pour activer des sorties en fonction de la position d'un codeur KL5121 Pour activer des sorties en fonction de la position d'un codeur VERSION : 1.0 / PH DATE : 07 Février 2006 Sommaire Ce manuel explique de manière pratique les étapes successives pour mettre en œuvre

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

PROGRAMMATION EVENEMENTIELLE sur EXCEL

PROGRAMMATION EVENEMENTIELLE sur EXCEL MASTERs SMaRT & GSI PROGRAMMATION EVENEMENTIELLE sur EXCEL Pierre BONNET Programmation évènementielle La programmation évènementielle permet un appel de procédure depuis l'interface HMI d'excel (ou d'un

Plus en détail

Ordonnancement temps réel

Ordonnancement temps réel Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches

Plus en détail

Le signal GPS. Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = 10.23 Mhz

Le signal GPS. Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = 10.23 Mhz Le signal GPS Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = 10.23 Mhz Deux signaux en sont dérivés: L1 (fo x 154) = 1.57542 GHz, longueur d onde = 19.0 cm

Plus en détail

Structure fonctionnelle d un SGBD

Structure 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étail

IV- Comment fonctionne un ordinateur?

IV- 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étail

as Architecture des Systèmes d Information

as 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étail

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Conception 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étail

Gestion mémoire et Représentation intermédiaire

Gestion mémoire et Représentation intermédiaire Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,

Plus en détail

Architecture des ordinateurs

Architecture 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étail

Modules d automatismes simples

Modules 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étail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

DU 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étail

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes. Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger

Plus en détail

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE Le schéma synoptique ci-dessous décrit les différentes étapes du traitement numérique

Plus en détail

4. Groupement d objets

4. Groupement d objets Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux

Plus en détail

Les fonctions logiques

Les fonctions logiques 1 Les fonctions logiques Le fonctionnement des ordinateurs tout comme d autres appareils électroniques repose sur l emploi des circuits électroniques de logique binaire ou électronique numérique. Dans

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 Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle - 2012-2013 P. Bonnet

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle - 2012-2013 P. Bonnet Programmation VBA Pierre BONNET 21 La programmation VBA Historiquement, la programmation sous Excel avait comme fonction d'automatiser une succession d'actions faites dans la feuille à l'aide de la souris.

Plus en détail

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

Travaux 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étail

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr 6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure

Plus en détail

Analyse de sécurité de logiciels système par typage statique

Analyse de sécurité de logiciels système par typage statique Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Licence Sciences et Technologies Examen janvier 2010

Licence Sciences et Technologies Examen janvier 2010 Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE 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étail

Représentation des Nombres

Repré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étail

V- Manipulations de nombres en binaire

V- Manipulations de nombres en binaire 1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,

Plus en détail

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL Un bus de services Un bus de services (ESB) permet d assembler des web services existants, le résultat de cet

Plus en détail

Informatique Générale

Informatique 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étail

Claude Delannoy. 3 e édition C++

Claude Delannoy. 3 e édition C++ Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Auto formation à Zelio logic

Auto formation à Zelio logic Auto formation à Zelio logic 1 Les Produits Félicitations, vous avez choisi l'un des produits Zelio 2 suivants : 2 Environnement Le Zelio Logic est programmable à l'aide du logiciel Zelio Soft ou en Saisie

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

TD 1 - Transmission en bande de passe

TD 1 - Transmission en bande de passe Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com Claude Duvallet 1/10 Transmission en bande de passe (1/2) Description

Plus en détail

2011-2012 TP D AUTOMATISME TS2 CIRA (première partie)

2011-2012 TP D AUTOMATISME TS2 CIRA (première partie) 2011-2012 TP D AUTOMATISME TS2 CIRA (première partie) YVES DARCQ LYCEE COUFFIGNAL 2011-2012 TABLE DES MATIERES I] LANGAGES DE PROGRAMMATION DES API... 2 1] ELEMENTS COMMUNS AUX DIFFERENTS LANGAGES... 2

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations

Plus en détail

1 Description générale de VISFIELD

1 Description générale de VISFIELD Guide d utilisation du logiciel VISFIELD Yann FRAIGNEAU LIMSI-CNRS, Bâtiment 508, BP 133 F-91403 Orsay cedex, France 11 décembre 2012 1 Description générale de VISFIELD VISFIELD est un programme écrit

Plus en détail

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin 2010. Algorithmique 1 Algorithmique 1 Durée : 2h Machines électroniques interdites Tous documents papiers autorisés Il est conseillé de traiter les deux parties dans l ordre du sujet. Veuillez respecter les notations introduites

Plus en détail

Acquisition et conditionnement de l information Les capteurs

Acquisition et conditionnement de l information Les capteurs Acquisition et conditionnement de l information Les capteurs COURS 1. Exemple d une chaîne d acquisition d une information L'acquisition de la grandeur physique est réalisée par un capteur qui traduit

Plus en détail

Cours de Programmation 2

Cours de Programmation 2 Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes

Plus en détail

LES TYPES DE DONNÉES DU LANGAGE PASCAL

LES 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étail