Professional Documents
Culture Documents
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
use ieee.std_logic_unsigned.all;
entity divisor is
port (
clk : in std_logic;
reset : in std_logic;
);
end divisor;
begin
process(clk, estadoActual, x, y)
begin
case estadoActual is
when s0=>
if Inicio='0' then
estadoActual<=s0;
finalz='1;'
else
estadoActual<=s1;
when s1 =>
R <= "00000000";
C <= "00000000";
diviso <= x;
dividendo <= y;
aux<=0;
unidades<=0;
decenas<="00000000";
centenas<="00000000";
milesimas<="00000000";
when s2 =>
when s3 =>
R <= diviso-dividendo;
C <= C+1;
diviso <= R;
when s4 =>
diviso<=x+x+x+x+x+x+x+x+x+x;
aux<=aux+1;
when s5=>
when s6=>
output<= C;
C<='0';
when s7=>
when s8=>
decimal1<= C;
C<='0';
when s9=>
when s10=>
decimal2<= C;
C<='0';
when s11=>
when s12=>
decimal2<= C;
C<='0';
when s13=>
when s14=>
decimal3<= C;
C<='0';
when s14=>
output<=unidades;
decimal1<=decenas;
decimal2<=centenas;
decimal3<=milesimas;
end case;
end if;
end process;
process(clk, reset,estadoActual,estadoSiguiente)
begin
end if;
end process;
begin
case estadoActual is
else
end if;
end case;
end process;
end divisor;