École Polytechnique de Montréal. Département de génie informatique et génie logiciel. INF1500 Logique des systèmes numériques

Documents pareils
Manipulations du laboratoire

Le langage VHDL. Eduardo Sanchez EPFL

IFT1215 Introduction aux systèmes informatiques

Algèbre binaire et Circuits logiques ( )

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

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

Système binaire. Algèbre booléenne

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

SIN-FPGA DESCRIPTION PAR SCHEMA

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

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

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

QUESTION 1 {2 points}

NIVEAU D'INTERVENTION DE LA PROGRAMMATION CONCURRENTE

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

Logique séquentielle

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

Algorithmique & programmation

Arbres binaires de recherche

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

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

2.4 Représentation graphique, tableau de Karnaugh

SYSTEME DE TELESURVEILLANCE VIDEO

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Les chaînes de caractères

Filtrage stochastique non linéaire par la théorie de représentation des martingales

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

Cours de Génie Logiciel

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

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

École Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.

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

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

1 Position du problème

Présentation du langage et premières fonctions

Conception de circuits numériques et architecture des ordinateurs

= constante et cette constante est a.

Cours Premier semestre

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

Cours d Analyse. Fonctions de plusieurs variables

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

Génie Logiciel Avancé Cours 3 Le modèle à objets

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Qualité du logiciel: Méthodes de test

Conception de circuits numériques et architecture des ordinateurs

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

Les fonctions logiques

Projet # 3 Serrure à deux clés

Découverte du tableur CellSheet

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa Novembre 2008

L exclusion mutuelle distribuée

Manuel Viadeis CRM Connecteur intégration L100 étendue.

Algorithmique des Systèmes Répartis Protocoles de Communications

VIII- Circuits séquentiels. Mémoires

Organisation des Ordinateurs

Chapitre 10 Arithmétique réelle

27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)

RESUME DE COURS ET CAHIER D'EXERCICES

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

CHAPITRE VIII : Les circuits avec résistances ohmiques

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Organigramme / Algorigramme Dossier élève 1 SI

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

France SMS+ MT Premium Description

Pourquoi l apprentissage?

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

Corrigé des TD 1 à 5

Les structures. Chapitre 3

CNAM - CRA Nancy 2000/2001. Génie Logiciel. Jacques Lonchamp DEUXIEME PARTIE. Les techniques de spécification.

Gestion de base de données

Les BRMS Business Rules Management System. Groupe GENITECH

Cours d algorithmique pour la classe de 2nde

//////////////////////////////////////////////////////////////////// Administration bases de données

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

TP1 : Initiation à Java et Eclipse

Principes des langages de programmation INF 321. Eric Goubault

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

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

DOCM Solutions officielles = n 2 10.

TD Architecture des ordinateurs. Jean-Luc Dekeyser

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

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

Examen Médian - 1 heure 30

NOTICE SIMPLIFIEE ER-A280F. I Initialisation avec Remise à Zéro de la caisse : ENTER PASSWORD ER-A280V. Ver1.02

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Cours en ligne Développement Java pour le web

Modèles et simulations informatiques des problèmes de coopération entre agents

STAGE IREM 0- Premiers pas en Python

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Recherche dans un tableau

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

Compilation (INF 564)

Grégoire de Lassence. Copyright 2006, SAS Institute Inc. All rights reserved.

Utilitaires méconnus de StrataFrame

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Ordonnancement temps réel

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Bernard HAMM, Évelyne LAVOISIER

Architecture Orientée Objet Pour l Ingénierie des SIP application à l Entreprise SAFCER

TP: Représentation des signaux binaires. 1 Simulation d un message binaire - Codage en ligne

Transcription:

École Polytechnique de Montréal Département de génie informatique et génie logiciel INF1500 Logique des systèmes numériques Vendredi le 16 décembre 2011, 13h30 Examen final Directives : Le quiz est sur 20 points; La pondération pour la session est de 40%; La documentation et la calculatrice (programmable ou nonprogrammable) ne sont pas permises; Ne pas utiliser un crayon rouge pour répondre aux questions; Répondre sur le(s) cahier(s) d examen de l École et le(s) remettre; Répondre sur les pages de droite des cahiers d examen et réserver celles de gauche pour produire un brouillon qui ne sera pas considéré par le correcteur; Glisser dans le cahier d examen principal les pages du questionnaire prévues pour répondre à certaines questions spécifiques après les avoir détachées du questionnaire; Pour les questions à développement, prenez soin d exprimer clairement vos arguments, car la correction en tiendra compte; La durée est de 150 minutes.

1. Vrai ou Faux (1.5 points) Répondre par vrai ou par faux aux questions suivantes. Justifiez votre réponse. Considérez 0.25 points par justification (la bonne réponse sans justification ne compte pour rien). a. Dans une addition de 2 nombres en complément à deux il n est pas possible d avoir une retenue tout en ayant un résultat valide. Expliquez en donnant un exemple. b. Le mot clef port définit en VHDL l interface entre le monde extérieur et l entité. L expression qu il introduit énumère les ports du circuit et leur direction seulement. c. En VHDL le modèle d un circuit numérique par flot de données décrit sa fonction sans nécessairement définir sa structure. d. Un processus doit contenir obligatoirement une liste de sensitivité statique et une instruction explicite d attente wait e. Pour une fonction donnée F(A, B,C): Σ A,B,C (3,5,6,7)= A,B,C (1,2,4) (réponse F) f. Les compteurs asynchrones ont le même comportement que ceux de type synchrone. 2. Circuits combinatoires MSI (3 points) a. Soit la fonction sous forme canonique F(A,B,C,D) = A,B,C,D (4, 6, 7, 8, 14, 15). 1) Donnez la table de vérité correspondante (Utilisez la page prévue qui se situe à la fin du questionnaire et incluez-la dans vos cahiers d examen). (0.5 point) 2) Implémentez la fonction à l aide d un multiplexeur 4-a-1et de quelques autres portes de base, où A et B sont les entrées «select» Considérez les entrées et la sortie en logique mixte actif-haut. (1 point) b. Soit la fonction sous forme canonique f(a,b,c,e) = a,b,c,e (1,3,7,9,15). 1) Donnez la table de vérité correspondante (Utilisez la page prévue qui se situe à la fin du questionnaire et incluez-la dans vos cahiers d examen). (0.5 point) École Polytechnique de Montréal 1 Département de génie informatique et génie logiciel

2) Implémentez la fonction à l aide d un décodeur avec 3 entrées actives au niveau haut (correspondant au «a», «b», et «c» dans la fonction «f»), 8 sorties actives au niveau bas et un signal d activation de type enable, EN, (correspondant à «e» dans la fonction «f») actif-bas et le plus petit nombre possible de portes NAND (et synonymes). L utilisation des inverseurs et OOPS est interdite. (1 point). 3. Loquet et bascule (3.5 points) En considérant ce circuit : a) Donnez la table de vérité avec les deux entrées S_L et R_L et pour les deux sorties Q et QN. (1 point) b) Cette affirmation est tirée directement des notes de cours : «Afin d éviter les résultats non prévisibles (non déterministes), les entrées doivent changer une à la fois, laissant suffisamment de temps entre deux entrées successives pour permettre des états stables (c est de là que proviennent les temps de stabilisation et de maintien).» En vous inspirant de l affirmation précédente, redessinez le circuit (plus d une fois si la situation demande une explication qui le justifie) et montrez deux transitions arrivant au même moment sur les entrées S_L et R_L et expliquez leurs effets sur les sorties Q et QN. Utiliser une notation 0 1 ou 1 0 pour désigner les transitions en question. (1.5 point). c) Quelle imperfection physique du circuit fera éventuellement que les valeurs de sorties pourraient se stabiliser de façon difficilement prévisible dans la situation décrite en b). (1 point). École Polytechnique de Montréal 2 Département de génie informatique et génie logiciel

4. Analyse de circuit séquentiel (4.5 points) En considérant le circuit suivant : X D0 D _ Q CLK RST Q Q0 D1 D _ Q CLK RST Q Q1 Z CLK RESET a) Donnez les équations de transitions et de sortie du circuit. (1 point) b) Donnez la table des transitions et sortie du circuit. (1 point) c) Dites s il s agit d une machine de Moore ou de Mealy en justifiant votre réponse. (0.5 point) d) Donnez la table symbolique des états et dites combien d états forment cette machine et pourquoi. (1 point) e) Tracez le diagramme des états du circuit et dites combien d états forment cette machine. (1 point) École Polytechnique de Montréal 3 Département de génie informatique et génie logiciel

5. Synthèse de circuit séquentiel (5 points) Concevez une machine de Moore respectant le comportement suivant : Un signal «reset», actif au niveau haut, doit initialiser le système. On désire détecter que les signaux A, B et C sont, chacun à tour de rôle, à 1 sur trois cycles d horloge successifs. Si oui, la sortie F prend la valeur 1 avant de pouvoir recommencer une autre séquence de détection. Dans tous les autres cas, F est à zéro. Lorsque A, B ou C doit être égale à 1 pour respecter la séquence à un cycle d horloge précis, les deux autres signaux du trio peuvent prendre n importe quelle autre valeur. a) Donnez le diagramme des états (2 points) b) Donnez la table de transition des états, avant assignation (1.5 point) c) Donnez la table de transition des états après une assignation des états de type simple en vous basant sur la table obtenue en b). (0.5 point) d) Tracez un circuit avec des bascules D en représentant les circuits combinatoires en entrées et en sortie sous forme d ovales mais sans préciser leur équation (ce qui serait trop long ici si on devait faire toutes les simplifications). Assurez-vous simplement d identifier les entrées potentielles de ces fonctions. (1 point) 6. Le langage VHDL et les laboratoires (2.5 points) Donnez le diagramme temporel obtenu suite à l exécution du code VHDL suivant implémentant une machine à états finis. (Utilisez la page prévue qui se situe à la fin du questionnaire et incluez-la dans vos cahiers d examen) library ieee; use ieee.std_logic_1164.all; entity MSAExamen is Port ( -- Inputs -- horloge et reset globals clk : in std_logic; rst : in std_logic; X : in std_logic; -- signal d'entree -- Outputs École Polytechnique de Montréal 4 Département de génie informatique et génie logiciel

Z : out std_logic_vector(2 downto 0) ); end entity MSAExamen; architecture Behav of MSAExamen is begin signal etat_present, etat_suivant : std_logic_vector(2 downto 0); MSA_synch : process(rst, clk) begin if (rst = '1') then etat_present <= "000"; elsif clk'event and clk = '1' then etat_present <= etat_suivant; end if; end process; MSA_asynch : process(etat_present, X) begin case etat_present is when "000" => etat_suivant <= "001"; Z <= (others => '0'); when "001" => if (X = '0') then etat_suivant <= "010"; else etat_suivant <= "011"; end if; Z <= etat_present; when "010" => if (X = '0') then etat_suivant <= "011"; else etat_suivant <= "110"; end if; Z <= "010"; when "011" => if (X = '0') then etat_suivant <= "110"; else etat_suivant <= "010"; end if; École Polytechnique de Montréal 5 Département de génie informatique et génie logiciel

Z <= "011"; when "110" => if (X = '0') then Z <= "100"; else Z <= etat_present; end if; etat_suivant <= "111"; when "111" => if (X = '0') then Z <= "101"; else Z <= "111"; end if; etat_suivant <= (others => '0'); when others => etat_suivant <= "000"; Z <= (others => '0'); end case; end process; end architecture Behav; École Polytechnique de Montréal 6 Département de génie informatique et génie logiciel

INF1500 Logique des systèmes numérique Automne 2011 NOM : Prénom : Page pour répondre à la question 2 a) A B C D F École Polytechnique de Montréal 7 Département de génie informatique et génie logiciel

INF1500 Logique des systèmes numérique Automne 2011 NOM : Prénom : Page pour répondre à la question 2 b) a b c e f École Polytechnique de Montréal 8 Département de génie informatique et génie logiciel

INF1500 Logique des systèmes numérique Automne 2011 NOM : Prénom : Page pour répondre à la question 6 Zinit=000 École Polytechnique de Montréal 9 Département de génie informatique et génie logiciel

Annexes Théorèmes de Boole Table 4-1 Switching-algebra theorems with one variable. (T1) X + 0 = X (T1 ) X 1 = X (Identities) (T2) X + 1 = 1 (T2 ) X 0 = 0 (Null elements) (T3) X + X = X (T3 ) X X = X (Idempotency) (T4) (X ) = X (Involution) (T5) X + X = 1 (T5 ) X X = 0 (Complements) Ta bl e 4-2 Switching-algebra theorems with two or three variables. (T6) X + Y = Y + X (T6 ) X Y = Y X (Commutativity) (T7) (X + Y) + Z = X + (Y + Z) (T7 ) (X Y) Z = X (Y Z) (Associativity) (T8) X Y + X Z = X (Y + Z) (T8 ) (X + Y) (X + Z) = X + Y Z (Distributivity) (T9) X + X Y = X (T9 ) X (X + Y) = X (Covering) (T10) X Y + X Y = X (T10 ) (X + Y) (X + Y') = X (Combining) (T11) X Y + X Z + Y Z = X Y + X Z (Consensus) (T11 ) (X + Y) (X + Z) (Y + Z) = (X + Y) (X + Z) École Polytechnique de Montréal 10 Département de génie informatique et génie logiciel

(T12) (T12 ) (T13) (T13 ) Ta bl e 4-3 Switching-algebra theorems with n variables. X + X + + X = X X X X = X (X 1 X 2 X n ) = X 1 + X 2 + + X n (X 1 + X 2 + + X n ) = X 1 X 2 X n (Generalized idempotency) (DeMorgan's theorems) (T14) [F(X 1, X 2,, X n, +, )] = F(X 1, X 2,, X n,, +) (Generalized DeMorgan's theorem) (T15) (T15 ) F(X 1, X 2,, X n ) = X 1 F(1, X 2,, X n ) + X 1 F(0, X 2,, X n ) F(X 1, X 2,, X n ) = [X 1 + F(0,X 2,,X n )] [X 1 + F(1, X 2,, X n )] (Shannon's expansion theorems) École Polytechnique de Montréal 11 Département de génie informatique et génie logiciel