# Autres langages > Autres langages > VHDL >  Multiplieur 16*16

## binome-x

Bonjour,
je veux multiplier deux entres sur 16 bits (donc rsultat sur 32 bits) or le synthtiseur que j'utilise ne connat pas l'instruction '*' du VHDL. Je dois donc dcrire le comportement d'un multiplieur 16*16. Puis-je trouver facilement une telle description libre de droits ?
Merci du coup de main.

----------


## titiri

Bonsoir,

     Si vous tes sur une cible :
Altera : il faut utiliser le MegaWizard. Par exemple, lancer QuartusII et ouvrez un projet, puis "MegaWizard Plug-In Manager", puis "Create a new...", puis Arithmetic, et enfin ALTMULT_ACCUM ou ALTMULT_ADD ou ALTMULT_COMPLEXXilinx : il faut utiliser le CORE Generator, puis "Math Functions", puis "Multipliers" et enfin vous choississez l'un des modules lists.autre : vous utilisez les outils du fondeur pour gnrer le moduleversion gnrique "full VHDL" : le plus simple est de faire 16 additions conditionnelles. Pour faire A x B, considrez que B est la somme d'lments binaires, donc 2^i + 2^j + 2^k etc... Vous n'avez plus qu' faire la somme et le tour est jou. Le mieux sur une cible pas trop ancienne, est de faire un 1er tage avec 4 additionneurs  4 entres, et un 2me tage avec 1 additionneur reprenant les 4 sorties du 1er tage. Donc 2 cycles d'horloge.

Cdlt

----------

