Exercices - Systèmes Séquentiels Architecture des ordinateurs ARO1 HEIG-VD 2016 Exercice 1 Les palindromes sont des mots ou des groupes de mots qui peuvent être lus indifféremment de gauche à droite ou de droite à gauche. Exemples : «Elu par cette crapule», «Esope reste ici et se repose», «gag», «kayak», «radar», «été». On peut dire ainsi que «1000001» et «01000010» sont des palindromes pour des séquences binaires 8 bits. Un système séquentiel comporte une tête de lecture lisant à chaque instant d horloge un nouveau bit. Réalisez le graphe des états qui permet la conception de ce système séquentiel pour détecter si une séquence de 3 bits est palindrome ou non. Exercice 2 L'ADN est une énorme molécule formée d une chaîne de centaines de milliers de molécules plus petites appelées nucléotides. Il y a dans l'adn quatre sortes de nucléotides que l'on désigne respectivement par les lettres A, C, G et T. Un système séquentiel comporte une tête de lecture lisant à chaque instant d horloge un nouveau nucléotide. Réalisez le graphe des états qui permet la conception d un tel système séquentiel pour détecter des séquences A*G n T Le symbole * à la deuxième position de la séquence veut dire qu'on accepte n'importe lequel des nucléotides et l exposant n à la troisième position de la séquence indique qu'on accepte un nombre non déterminé du même nucléotide. Exemples de séquences A*G n T : ACGT, AAGGT, ACGGGGGT, ATGGGGT, AGGGGGT Exercice 3 Réalisez un compteur synchrone qui compte 0 2 4 6 0 ou 1 3 5 7 1 lorsque une entrée x est égale à 0. Lorsqu il est dans un état où la valeur de sortie est égale à n, et l entrée x est égale à 1, le compteur bascule d une séquence à l autre, en passant de la valeur de sortie n à n+1. S il est dans l état ou la sortie est égale à 7, il passe à 0. Donnez le graphe des états et les équations décrivant le système. Exercice 4 Un automate vend des bonbons à 15 centimes la pièce. Il n accepte que des pièces à 10 et 5 centimes ; la monnaie n est pas rendue mais tout surplus est conservé pour un second achat. Dessinez le graphe des états d une machine de Moore capable de réaliser l automate. Cette machine aura deux entrées, 1 (une pièce de 5 centimes est introduite) et 2
(une pièce de 10 centimes est introduite), et une sortie Z (active pour délivrer un bonbon). a. Trouvez le graphe des états du système. b. Calculez les équations du système en utilisant un codage 1-parmi-m Exercice 5 Vous voulez découvrir le mot de passe d un système sécurisé qui se trouve dans un fichier texte. Vous savez que le mot de passe est généralement la séquence de caractères qui suit les caractères "PSW=". Toutefois, pour rendre plus difficile l accès au mot de passe, on le cache à l'intérieur d'une chaîne aléatoire, en le délimitant par un caractère au début et à la fin. Par exemple, si on trouve dans le fichier texte la séquence: le mot de passe est: HEIGVD PSW=PT%3TOTOHEIGVDR9 Donnez le graphe des états d un système séquentiel qui produit une sortie égale à 1 seulement pendant la lecture du mot de passe (c est-à-dire, pendant la lecture des caractères entourés par les ). Le fichier texte est lu caractère par caractère. NOTE: le codage des caractères d entrée n est pas nécessaire: vous pouvez indiquer sur les flèches du graphe des états, simplement les caractères produisant le changement d état. Exercice 6 Concevoir une machine séquentielle qui génère la séquence : 1000 -> 0100 -> 0010 -> 0001 -> 0010 -> 0100 -> 1000 -> etc. Dessinez son logigramme. Exercice 7 Un système séquentiel comporte une tête de lecture lisant à chaque instant d horloge une nouvelle paire de bits sur ses entrées x2 et x1. Concevoir un système séquentiel pour détecter la séquence 00,10,00,01 (les variables sont données dans l ordre x2x1). a) Trouvez son graphe des états,
b) les équations décrivant la machine séquentielle en utilisant un codage 1-parmi-m, c) son logigramme. Exercice 8 Supposons un système séquentiel de type Mealy, à deux signaux d'entrée 1 et 0, et un signal de sortie Z. Les deux bits d'entrée composent un nombre entier non signé (1 est le bit de poids fort et 0 le bit de poids faible). La sortie Z est égale à 1 si et seulement si la valeur actuelle de est plus grande que la valeur du cycle précédente. Dans tous les autres cas, la sortie Z est égale à 0. Bien entendu, l'état initial n'a pas d'état précédent. Un exemple de comportement du système est donné ci-dessous : 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 Z 0 0 1 0 1 0 0 1 1 1 0 0 1 0 a. Dessinez le graphe des états du système b. Combien de bascules D sont nécessaires pour réaliser le système si un codage 1- parmi-m est utilisé? c. Combien de bascules D sont nécessaires pour réaliser le système si un codage minimal (binaire) est utilisé?
SOLUTIONS Exercice 1 Exercice 2 Graphe des états :
Exercice 3 Q 0 Q 6 Q 7 Q 1 Q 7 Q 0 Q 2 Q 0 Q 1 Q 3 Q 1 Q 2 Q 4 Q 2 Q 3 Q 5 Q 3 Q 4 Q 6 Q 4 Q 5 Q 7 Q 5 Q 6
Exercice 4 Q a Q a 1 2 Q d Q b Q a 1 Q b 1 2 Q e Q c Q a 2 Q b 1 Q c 1 2 Q d Q b 2 Q c 1 Q e Q c 2
Exercice 5
Exercice 6 Codification des états : QaQbQcQdQeQf a : 100000 b : 010000 c : 001000 d : 000100 e : 000010 f : 0000001 Qa+ = Qf Qb+ = Qa Qc+ = Qb Qd+ = Qc Qe+ = Qd Qf+ = Qe Z3 = Qa Z2 = Qb + Qf Z1 = Qc + Qe Z0 = Qd Logigramme :
Exercice 7 a) Graphe des états : b) Equations : Qa+ = (Qa + Qc + Qe)(x2 + x1) + Qb(x1) + Qd(x2x1) Qb+ = (Qa+Qb+Qd+Qe)(x2 x1 ) Qc+ = (Qb+Qd)(x2x1 ) Qd+ = Qc(x2 x1 ) Qe+ = Qd(x2 x1)
c)
Exercice 8 a) Graphe des états : b) 1-parmi-m (one-hot) : 5 flip-flops sont nécessaires c) codage minimal : 3 flip-flops