Publicado el 19 de Julio del 2017
2.836 visualizaciones desde el 19 de Julio del 2017
15,7 KB
1 página
Creado hace 21a (02/11/2003)
MULTIPLICADOR POR SUMAS SUCESIVAS
DE DOS NÚMEROS DE CUATRO BITS CADA
UNO.
in integer range 0 to 15;
salida: out integer range 0 to 255);
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;
entity multsuma is
port (a,b :
end multsuma;
architecture algoritmo of multsuma is
begin
end algoritmo;
USANDO EL TEST BENCH GENERAMOS LA ONDA DE ENTRADA
process (a,b)
variable temporal: integer :=0;
begin
temporal:=0;
salida<=temporal;
end process;
for veces in 1 to 15 loop
end loop;
if b >= veces then
else
end if;
temporal:=temporal + a;
temporal:=temporal + 0;
El algoritmo de multiplicación por sumas sucesivas, es cuando uno de los factores
indica cuantas veces tenemos que sumar el otro, por eso usamos una sentencia FOR (o
sea un bucle) que comparará el numero de veces que se ha sumado el primer factor
(multiplicando), con el segundo factor (multiplicador), y va a comparar, si el número de
veces es igual al multiplicador, entonces para completar el bucle le sumará cero (o
también no le puede sumar ningún número), y así hasta terminar el bucle, luego se le
asigna el valor resultante en la variable a la salida final, en Hardware, las entradas a
pesar de ser del tipo INTEGER se implementan en 4 bits (valor mínimo 0 hasta 15, tal
como se definió el rango de los números) y a salida será de 8 bits (el valor máximo que
se puede obtener multiplicando dos números de 4 bits cada unos es de 225, lo cual esta
cercano a 255, es decir a 8 bits).
Comentarios de: MULTIPLICADOR POR SUMAS SUCESIVAS DE DOS NÚMEROS DE CUATRO BITS CADA UNO (0)
No hay comentarios