SEm/laboratoires/09 pipeline
(→Additionneur rapide) |
(→Compteur rapide) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 19: | Line 19: | ||
L'additionneur rapide utilisera un ensemble d'additionneurs combinatoires. | L'additionneur rapide utilisera un ensemble d'additionneurs combinatoires. | ||
+ | Cet additionneur est réalisé dans un premier temps dans le but de comprendre la manière de décrire un circuit en VHDL | ||
+ | en instanciant des composants à l'aide de boucles. | ||
[[File:Sem labs iterative adder.svg|center|Additionneur itératif]] | [[File:Sem labs iterative adder.svg|center|Additionneur itératif]] | ||
Line 27: | Line 29: | ||
}} | }} | ||
− | L'architecture <code>noPipe</code> donne un exemple de description VHDL d'un système itératif | + | L'architecture <code>noPipe</code>, mise à disposition, donne un exemple de description VHDL d'un système itératif |
par le placement de composants à l'aide d'une boucle <code>for … generate</code>. | par le placement de composants à l'aide d'une boucle <code>for … generate</code>. | ||
{{TaskBox|content= | {{TaskBox|content= | ||
− | Ouvrir le banc de test de l'additionneur combinatoire <code>pipelineAdder_tb</code> | + | Ouvrir le banc de test de l'additionneur combinatoire <code>pipelineAdder_tb</code> |
− | + | et vérifier le bon fonctionnement de l'additionneur. | |
}} | }} | ||
Line 49: | Line 51: | ||
Ecrire l'architecture VHDL de l'additionneur <code>pipelineAdder</code> et vérifier le bon fonctionnement de l'additionneur. | Ecrire l'architecture VHDL de l'additionneur <code>pipelineAdder</code> et vérifier le bon fonctionnement de l'additionneur. | ||
}} | }} | ||
+ | |||
+ | == Compteur rapide == | ||
+ | |||
+ | L'additioneur rapide est capable de fournir une nouvelle somme à chaque période d'horloge. | ||
+ | Il lui faut cependant un certain nombre de périodes d'horloge avant de fournir le résultat de la somme. | ||
+ | |||
+ | {{TaskBox|content= | ||
+ | Ecrire l'architecture VHDL du compteur <code>pipelineCounter</code> et vérifier son bon fonctionnement. | ||
+ | }} | ||
+ | |||
+ | == Comparaison == | ||
+ | |||
+ | Le compteur avec pipeline devrait en principe pouvoir fonctionner à plus haute vitesse | ||
+ | qu'un compteur avec un additionneur combinatoire, à propagation de report. | ||
+ | |||
+ | {{TaskBox|content= | ||
+ | Effectuer la synthèse du compteur avec les deux variantes de l'additionneur et comparer les vitesses de fonctionnement. | ||
+ | }} | ||
+ | |||
+ | Avec la sélection de l'additionneur combinatoire (architecture <code>noPipe</code>), | ||
+ | le fonctionnement ne serait pas correct, | ||
+ | mais le but ici est uniquement de comparer les vitesses de fonctionnement. | ||
{{navNamed | {{navNamed | ||
− | |left=SEm/laboratoires/08_soc| | + | |left=SEm/laboratoires/08_soc|left_name=08 Réalisation d'un SoC AMBA |
|up=SEm/laboratoires|up_name=Travaux de laboratoire | |up=SEm/laboratoires|up_name=Travaux de laboratoire | ||
|right=SEm/laboratoires/09_pipeline|right_name=- | |right=SEm/laboratoires/09_pipeline|right_name=- |
Latest revision as of 09:00, 2 May 2022
|
Additionneur rapide
Introduction
Dans ce laboratoire, nous allons reprendre un additionneur rapide utilisant la technique du "pipeline".
Additionneur combinatoire
L'additionneur rapide se basera sur la mise en série d'additionneurs plus petits.
Additionneur itératif
L'additionneur rapide utilisera un ensemble d'additionneurs combinatoires. Cet additionneur est réalisé dans un premier temps dans le but de comprendre la manière de décrire un circuit en VHDL en instanciant des composants à l'aide de boucles.
L'architecture noPipe
, mise à disposition, donne un exemple de description VHDL d'un système itératif
par le placement de composants à l'aide d'une boucle for … generate
.
Additionneur rapide
L'additionneur rapide se fait en insérant des bascules entre les additionneurs combinatoires.
Compteur rapide
L'additioneur rapide est capable de fournir une nouvelle somme à chaque période d'horloge. Il lui faut cependant un certain nombre de périodes d'horloge avant de fournir le résultat de la somme.
Comparaison
Le compteur avec pipeline devrait en principe pouvoir fonctionner à plus haute vitesse qu'un compteur avec un additionneur combinatoire, à propagation de report.
Avec la sélection de l'additionneur combinatoire (architecture noPipe
),
le fonctionnement ne serait pas correct,
mais le but ici est uniquement de comparer les vitesses de fonctionnement.
Navigation
08 Réalisation d'un SoC AMBA
Travaux de laboratoire
-