Descargar

Reloj en tiempo real de Spartan 3 SB (página 2)

Enviado por Alberto Torres Gil


Partes: 1, 2

entity dos is

Port ( clk2 : in STD_LOGIC;

div44: inout STD_LOGIC_VECTOR (1 downto 0);

div4 : out STD_LOGIC;

selec: out STD_LOGIC_VECTOR (4 downto 0));

end dos;

architecture Behavioral of dos is

begin

BLOQUE TRES se obtiene un clock de periodo igual a 1 segundo, para conseguirlo se necesita dividir la frecuencia inicial de 1500Hz entre 1500, lo cual dará como resultado 1Hz, equivalente a 1 ciclo por segundo.

entity tres is

Port (div4 : in STD_LOGIC;

segun : inout STD_LOGIC);

end tres;

architecture Behavioral of tres is

signal a:integer;

begin

BLOQUE CUATRO empezará la secuencia del reloj, el cual está conectado en cascada con los siguientes bloques, este bloque será utilizado para mostrar los segundos.

entity cuatro is

Port (segun : in STD_LOGIC;

dig00 : inout STD_LOGIC_VECTOR (3 downto 0);

dig1 : out STD_LOGIC;

sal1 : out STD_LOGIC_VECTOR (3 downto 0));

end cuatro;

architecture Behavioral of cuatro is

BLOQUE CINCO continúa la cuenta de los segundos en decenas, así que solo llegará a la cuenta de 5 y se reiniciará.

entity cinco is

Port (dig1 : in STD_LOGIC;

dig11 : inout STD_LOGIC_VECTOR (3 downto 0);

dig2 : out STD_LOGIC;

sal2 : out STD_LOGIC_VECTOR (3 downto 0));

end cinco;

architecture Behavioral of cinco is

BLOQUE SEIS inicia la cuenta de minutos una vez que ya han transcurrido 60 segundo, para esto se utiliza la señal que le proporciona el contador anterior.

entity seis is

Port (dig2 : in STD_LOGIC;

dig22 : inout STD_LOGIC_VECTOR (3 downto 0);

dig3 : out STD_LOGIC;

sal3 : out STD_LOGIC_VECTOR (3 downto 0));

end seis;

architecture Behavioral of seis is

BLOQUE SIETE es el ultimo contador, indica las decenas de minutos que han transcurrido.

entity siete is

Port (dig3 : in STD_LOGIC;

dig33 : inout STD_LOGIC_VECTOR (3 downto 0);

sal4 : out STD_LOGIC_VECTOR (3 downto 0));

end siete;

architecture Behavioral of siete is

BLOQUE OCHO

entity ocho is

Port ( sal1,sal2,sal3,sal4: in STD_LOGIC_VECTOR (3 downto 0);

selec: in STD_LOGIC_VECTOR (4 downto 0);

aseg : out STD_LOGIC_VECTOR (3 downto 0));

end ocho;

architecture Behavioral of ocho is

end Behavioral;

BLOQUE NUEVE este es un demultiplexor que permite llevar la información a cada display, el bloque dos habilita el display de los segundo, y el demultiplexor deja pasar la cuenta del de los segundos, haciendo lo mismo para cada display, de esta manera estaremos enviando a cada display, la cuenta correspondiente en segundos, decenas de segundos, minutos y decenas de minutos cada 1/1500 parte de segundo, lo cual será inapreciable para el ojo humano.

entity nueve is

Port ( aseg: in STD_LOGIC_VECTOR (3 downto 0);

adys : out STD_LOGIC_VECTOR (6 downto 0));

end nueve;

architecture Behavioral of nueve is

BLOQUE DIEZ este bloque es un acoplador digital para impedir pérdidas de información, que podrían ocurrir, multiplexar los display’s y al mismo tiempo multiplexar la información, este es transparente a al bloque dos, ha diferencia de un flip-flop tipo "D", este no necesita esperar un ciclo de reloj para actualizar la salida.

entity diez is

Port ( idys: in STD_LOGIC_VECTOR (4 downto 0);

odys: out STD_LOGIC_VECTOR (4 downto 0));

end diez;

architecture Behavioral of diez is

Reloj en tiempo real (clic en la imagen para ver video de funcionamiento)

Para actualizar el refresh de los display’s había tomado en cuenta una frecuencia de 1 cuarta parte de segundo, con el cual se obtenía un parpadeo en cada desplegado del display, así que se optó por elevar la frecuencia a 1500 Hz y olvidarse de un problema subsecuente, se observó que ha diferencia de una realización en lenguaje AHDL, la programación en VHDL permite, manipular el sistema con el clock de entrada para actualizar simultáneamente la salida, ya se basa en lógica combinacional.

BIBLIOGRAFÍA:

Circuit Design with VHDL

Volnei A. Pedroni

Designer's Guide to Vhdl

Peter J. Ashenden, Softcover

FPGA-based System Design

Wayne Wolf

NOTAS:

user guide spartan 3

www.xilinx.com

Alberto Torres Gil

MÉXICO

INVESTIGADOR BUAP

MÉXICO, H.H.PUEBLA DE ZARAGOZA, 15 MARZO DE 2007

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente