13.01.2015 Views

Architecture Matérielle TD6 Soluce Les bascules, registres et ...

Architecture Matérielle TD6 Soluce Les bascules, registres et ...

Architecture Matérielle TD6 Soluce Les bascules, registres et ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Architecture</strong> Matérielle <strong>TD6</strong> <strong>Soluce</strong><br />

<strong>Les</strong> <strong>bascules</strong>, <strong>registres</strong> <strong>et</strong> mémoires.<br />

1) Rappelez le schéma <strong>et</strong> l’équation entre Q <strong>et</strong> D modélisant le<br />

comportement d’une bascule.<br />

D<br />

Q<br />

D Ck Q n<br />

+<br />

0 0 1<br />

n +<br />

res<strong>et</strong><br />

clk<br />

Q<br />

1 1 0<br />

X 0 Q n n<br />

Q n + = D n<br />

2) Rappelez le schéma d’un registre à décalage de 4 bits.<br />

Entrée<br />

D Q1 D Q2 D Q3 D Q4<br />

clk<br />

clk clk clk clk<br />

3) Compléter le chronogramme correspondant au registre de la question 2).<br />

M<strong>et</strong>tre en évidence sur ce chronogramme le décalage des données.<br />

clk<br />

Entrée<br />

Q1<br />

Q2<br />

Q3<br />

Q4


4) Où peut-on récupérez les sorties parallèles. L’indiquer sur le schéma du<br />

registre à décalage.<br />

Sortie parallèle<br />

Entrée<br />

Série<br />

D Q1 D Q2 D Q3 D Q4<br />

Sortie<br />

Série<br />

clk<br />

clk clk clk clk<br />

5) Proposez une solution avec des MUXs <strong>et</strong> un signal de choix P/S à 1 quand<br />

on veut un chargement parallèle sur le schéma du registre à décalage.<br />

P/S<br />

Sortie parallèle<br />

Entrée<br />

Série<br />

0<br />

1<br />

D Q1<br />

0<br />

D Q2 0 D Q3<br />

0<br />

D Q4<br />

1<br />

1<br />

1<br />

Sortie<br />

Série<br />

clk<br />

clk clk clk clk<br />

Entrée parallèle<br />

6) Quelles peuvent être les applications d’un tel registre.<br />

• SISO : L'information que l'on veut introduire dans le registre est<br />

présentée à l'entrée de la première bascule. Lors d'une impulsion<br />

d'horloge, le bit d'information est introduit dans le registre, <strong>et</strong> tous<br />

les autres bits sont décalés. Le bit qui était mémorisé dans la<br />

dernière bascule est perdu s'il n'est pas stocké ou réinséré dans la<br />

structure d'une manière quelconque. <strong>Les</strong> <strong>registres</strong> SISO sont<br />

utilisés pour réaliser des lignes à r<strong>et</strong>ard numériques. Le délai entre


l'entrée de l'information dans le registre <strong>et</strong> sa sortie dépend du<br />

nombre de <strong>bascules</strong> <strong>et</strong> de la fréquence d'horloge.<br />

• PIPO : En décalant tous les bits d'un nombre binaire vers la droite<br />

ou vers la gauche, on divise ou on multiplie le nombre par 2. Un<br />

registre PIPO peut donc être utilisé pour effectuer des calculs<br />

(multiplication ou division par une puissance de 2). Il suffit<br />

d'opérer le nombre adéquat de décalages vers la gauche ou la<br />

droite entre le moment où l'on introduit les bits dans le registre <strong>et</strong><br />

le moment où on les récupère.<br />

• PISO <strong>et</strong> SIPO : Ces deux types de <strong>registres</strong> sont utilisés dans les<br />

liaisons série ; ils forment la base des UART <strong>et</strong> des modems.<br />

Imaginons que l'on veuille transm<strong>et</strong>tre une information entre deux<br />

ordinateurs distants de quelques mètres ou dizaines de mètres.<br />

Transm<strong>et</strong>tre l'information sous forme "parallèle" nécessiterait au<br />

moins 9 fils (8 pour les 8 bits, un pour la masse), sans compter les<br />

fils supplémentaires pour le dialogue entre les ordinateurs. Il est<br />

plus simple d'employer un registre PISO pour envoyer les bits<br />

constituant chaque oct<strong>et</strong> que l'on désire transm<strong>et</strong>tre en une suite<br />

de 8 bits apparaissant l'un après l'autre sur une seule ligne. Au<br />

bout de la ligne, un registre SIPO reçoit les bits qui arrivent à la<br />

queue-leu-leu <strong>et</strong> reconstitue des oct<strong>et</strong>s qui sont transmis à<br />

l'ordinateur de destination.<br />

7) Donnez les équations reliant D 2 , Q 2 , Q 2 + , D 1 , Q 1 , Q 1<br />

+<br />

du circuit suivant :<br />

Q 2<br />

D 2<br />

Q 2<br />

Q 1<br />

Q 2<br />

D 1<br />

Q 1<br />

Q 1<br />

clk<br />

clk<br />

clk<br />

On sait Q 1 + = D 1 <strong>et</strong> Q 2 + = D 2 . De plus D 2 = Q 1 xor Q 2 <strong>et</strong> D 1 = Q 1 .<br />

Donc on obtient : Q 1 + = Q 1 <strong>et</strong> Q 2 + = Q 1 xor Q 2


8) Grâce à ces équations donnez la table de transition du circuit.<br />

Q 2 Q 1<br />

+<br />

Q 2<br />

0 0 1 1<br />

0 1 0 0<br />

1 0 0 1<br />

1 1 1 0<br />

Q 1<br />

+<br />

9) En déduire la fonctionnalité du circuit.<br />

On voit que si on initialise la sortie des <strong>bascules</strong> à (0,0) la sortie suivante<br />

est (1,1) puis (1,0) puis (0,1) puis (0,0). On a donc en sortie du circuit la<br />

séquence 0 -> 3 -> 2 -> 1 -> 0, c’est un décompteur 4 bits.<br />

10) Donnez le code VHDL d’un bascule avec un res<strong>et</strong> asycnhrone :<br />

ENTITY bascule_d is port(<br />

d, clk, res<strong>et</strong> : in std_logic ;<br />

q : out std_logic;<br />

);<br />

ARCHITECTURE comport OF bascule_d IS<br />

BEGIN<br />

bascule : PROCESS (clk, res<strong>et</strong>)<br />

BEGIN<br />

IF res<strong>et</strong> = '1' THEN<br />

q


Avantage DRAM/SRAM :<br />

Le point mémoire des DRAM est moins encombrant que le point mémoire<br />

SRAM<br />

plus grande densité d'intégration<br />

coût par bit d'une DRAM < coût par bit d'une SRAM<br />

Avantage SRAM/DRAM :<br />

<strong>Les</strong> DRAM présentent des contraintes fortes d'utilisation : il est nécessaire de<br />

rafraîchir régulièrement le contenu de la mémoire à cause des courants de<br />

fuite <strong>et</strong> de réécrire les données après leur lecture car l'opération de lecture<br />

efface la donnée mémorisée. Pour des applications avec des contraintes<br />

temporelles fortes, on utilise de préférence de la SRAM (mémoire cache).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!