Chargement…
Chargement…
Le module réalise la multiplication non signée i_a * i_b, avec deux opérandes de 5 bits et une sortie de 10 bits.
Comportement :
i_rst='1' remet tous les registres internes et o_y à zéro.Le fichier non modifiable mult5_non_pipeline.vhd montre la version combinatoire de départ. Votre objectif est de coder mult5_pipeline.vhd avec des registres de pipeline.
| Signal | Direction | Largeur | Description |
|---|---|---|---|
i_clk | Entrée | 1 bit | Horloge système |
i_rst | Entrée | 1 bit | Reset synchrone actif haut |
i_a | Entrée | 5 bits | Opérande A non signée |
i_b | Entrée | 5 bits | Opérande B non signée |
o_y | Sortie | 10 bits | Produit pipeliné i_a * i_b |
La structure attendue est un pipeline de 4 étages :
i_b(0) et i_b(1), puis enregistrer la somme partielle ;b(2) retardé ;b(3) retardé ;b(4) retardé et enregistrer o_y.Les versions retardées de i_a et i_b doivent avancer avec les sommes partielles. Sans cet alignement, le résultat mélange plusieurs multiplications.