Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Université Joseph Fourier Année 2013/2014<br />
Master 1 Informatique<br />
Option<br />
Introduction à la modélisation et à la vérification des systèmes numériques<br />
<strong>Planche</strong> d'exercices n°2<br />
Exercice 1.<br />
1. Ecrire la description VHDL, dans le style dataflow, du circuit ci-dessous (convertisseur code<br />
binaire -> code de Gray 1 sur 3 bits), en négligeant les temps de traversée des portes logiques :<br />
A<br />
X<br />
B<br />
Y<br />
C<br />
Z<br />
2. Proposer une entité de test de façon à considérer tous les cas d'essais possibles pour les stimuli<br />
d'entrée.<br />
Exercice 2.<br />
On considère un système de multiplexage, dont l'entité VHDL est donnée ci-dessous, qui<br />
fonctionne comme suit : si le bit de contrôle c est à '1', le circuit reçoit sur sa sortie la valeur du<br />
vecteur d'entrée a, sinon il reçoit sur sa sortie la valeur du vecteur d'entrée b.<br />
entity MUX is<br />
generic(N:positive);<br />
port(c:in bit; a,b:in bit_vector(0 to N-1); s:out bit_vector(0 to N-1));<br />
end MUX;<br />
Proposer une réalisation de ce système (attention, on sera dans un style purement dataflow avec<br />
une instruction for..generate, les temps de traversée des portes étant négligés).<br />
Proposer une entité de test avec quelques jeux d'essai significatifs, pour une instance 4 bits de ce<br />
composant.<br />
1 Voir par exemple http://fr.wikipedia.org/wiki/Code_de_Gray ou page 50 du cours<br />
Codage de Gray : le principe est similaire à celui du codage binaire, mais l'objectif est de ne modifier qu'un seul bit à<br />
la fois quand un nombre est augmenté d'une unité. Par exemple, sur 3 bits :<br />
0 0 0 0<br />
1 0 0 1<br />
2 0 1 1<br />
3 0 1 0<br />
4 1 1 0<br />
5 1 1 1<br />
6 1 0 1<br />
7 1 0 0
Exercice 3.<br />
Le schéma ci-dessous représente un comparateur : ce circuit reçoit en entrées deux vecteurs de<br />
bits A et B, et une retenue entrante, et fournit en sortie un bit X qui vaut '1' si l'entier naturel codé<br />
par A est strictement supérieur à celui codé par B, et '0' sinon (sous l'hypothèse que la retenue<br />
entrante est positionnée à '0').<br />
Ecrire sa description VHDL, utiliser le style dataflow pour le composant de base, et le style<br />
structurel pour le comparateur.<br />
A 0 B 0 X_IN A 1 B 1<br />
A n-1<br />
Bn-1<br />
X n-1<br />
X 1 X 2<br />
X