Mediante tabla de estados y de excitación del flip flop T se llega al siguiente esquemático utilizando el flip flop T con clear, FTC, disponible en el Xilinx ISE:
Se sintetiza este archivo.sch y se crea su símbolo esquemático.
Se crea nueva fuente en modulo VHD y se sintetiza el divisor que convierte los 50 Mhz a 1 Hz:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity Divisor is
Port ( CLK50Mhz : in STD_LOGIC;
CLK1hz : BUFFER STD_LOGIC);
end Divisor;
architecture Behavioral of Divisor is
signal pulso: STD_LOGIC := '0';
signal contador: integer range 0 to 24999999 := 0;
begin
process (CLK50Mhz)
begin
if (CLK50Mhz'event and CLK50Mhz = '1') then
if (contador = 24999999) then
pulso <= NOT(pulso);
contador <= 0;
else
contador <= contador+1;
end if;
end if;
end process;
CLK1hz <= pulso;
end Behavioral;
Este archivo se sintetiza y luego se crea su símbolo esquemático.
Luego se crea un nuevo archivo esquemático, adicionando al contador el divisor:
Queda listo para implementarlo asignando pines y hacerlo trabajar con la FPGA en la Basys 2.
No hay comentarios:
Publicar un comentario