Documente Academic
Documente Profesional
Documente Cultură
Página 1 de 3
LABORATORIO DE ELECTRÓNICA DIGITAL
1. Introducción
A diferencia de los sistemas combinacionales, en los sistemas secuenciales, los valores de las salidas, en un
momento dado, no dependen exclusivamente de los valores de las entradas en dicho momento, sino también
dependen del estado anterior o estado interno. El sistema secuencial más simple es el biestable.
Los sistemas digitales cuentan con señales de referencia que tienen una alta frecuencia. Estas son llamadas
señales de reloj. Sin embargo, estos sistemas necesitan diferentes frecuencias para funcionar. Por lo tanto, se
toma este reloj y se le reduce su frecuencia mediante un divisor de frecuencia, así se pueden contar segundos
con alta precisión.
2. Objetivos
3. Componentes y Equipos
- Tarjeta Basys 2
- Manilla antiestática
- Software ISE Xilinx
- Computador
UNIVERSIDAD NACIONAL DE COLOMBIA
Página 2 de 3
LABORATORIO DE ELECTRÓNICA DIGITAL
2 entradas lógicas: La primera para aumentar el contador en uno (inc) y la segunda para reiniciar el
contador a cero (reset)
1 bus de salida de 4 bits que representa el valor actual del contador
1 salida lógica que representa el valor del acarreo
process(inc,reset)
begin
if reset='1' then
bin <= "0000";
cout <= '0';
elsif(rising_edge(inc) then
case(bin) is
when "0000" =>
bin <= "0001"; cout <= '0';---1
when "0001" =>
bin <= "0010"; ---2
…
…
when "1000" =>
bin <= "1001"; ---9
when others =>
bin <= "0000"; cout <= '1'; ---0
end case;
end if;
end process;
Tome este código de divisor de frecuencia a 10 Hz con una señal de reloj de entrada de 50 MHz y úsela como el
incremento del contador. Calcule el tamaño en bits del prescaler. Recuerde usar las librerías de operaciones
aritméticas para la suma:
----------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
----------------------------------------------------------
UNIVERSIDAD NACIONAL DE COLOMBIA
Página 3 de 3
LABORATORIO DE ELECTRÓNICA DIGITAL
process (clk)
begin
if rising_edge(clk) then
if(prescaler=250000) then --cycle of clock of 50MHz : 12 500 00 for 10Hz
prescaler <= (others => '0');
clk_1hz <= not clk_1hz;
else
prescaler <= prescaler + "1";
end if;
end if;
end process;
6. Metodología
Informe
El informe de esta práctica se incluye en el informe final del cronómetro de 4 digitos con precisión de décimas de
segundo.
7. Bibliografía
Floy, Tomas. (2000). Fundamentos de Sistemas Digitales (Séptima Edición ed.). Madrid: Pearson Educación.
Tocci, R., Widner, N., & Moss, G. (2007). Circuitos Lógicos MSI. En R. Tocci, N. Widner, & G. Moss, Sistemas
Digitales: Principios y Aplicaciones (págs. 576-674). PEARSON Educación.