SlideShare ist ein Scribd-Unternehmen logo
1 von 10
qwertyuiopasdfghjklzxcvbnmqwertyui
opasdfghjklzxcvbnmqwertyuiopasdfgh
jklzxcvbnmqwertyuiopasdfghjklzxcvb
nmqwertyuiopasdfghjklzxcvbnmqwer
tyuiopasdfghjklzxcvbnmqwertyuiopas
dfghjklzxcvbnmqwertyuiopasdfghjklzx
cvbnmqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwertyuio
pasdfghjklzxcvbnmqwertyuiopasdfghj
klzxcvbnmqwertyuiopasdfghjklzxcvbn
mqwertyuiopasdfghjklzxcvbnmqwerty
uiopasdfghjklzxcvbnmqwertyuiopasdf
ghjklzxcvbnmqwertyuiopasdfghjklzxc
vbnmqwertyuiopasdfghjklzxcvbnmrty
uiopasdfghjklzxcvbnmqwertyuiopasdf
ghjklzxcvbnmqwertyuiopasdfghjklzxc
Universidad Autónoma de Baja
California
ECITEC Valle de las Palmas
Ingeniería en Electrónica
Diseño Digital a Alta Escala
Reporte Practica 3
Marcos Marcos Fernando
11 Octubre del 2015
Planteamiento del problema
Creacion de un Test Bench para simulación
Se simulara un contador universal, para ello se creara un Test Bench en el cual se
ingresaran los estimulas necesarios para observar que el contador funciones de acuerdo a la
siguiente tabla.
Figura 1.
1
DESARROLLO
El programa del contador es el siguiente
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
entity univ_bin_counter is
GENERIC( N:integer:=8);
PORT( clk, reset: in std_logic;
syn_clr, load, en, up: in std_logic;
d: in std_logic_vector(N-1 downto 0);
max_tick, min_tick: out std_logic;
q: out std_logic_vector(N-1 downto 0)
);
end univ_bin_counter;
architecture Behavioral of univ_bin_counter is
signal r_reg: unsigned(N-1 downto 0);
signal r_next: unsigned(N-1 downto 0);
begin
process(clk,reset)
begin
if(reset = '1') then
r_reg <= (others => '0');
elsif(clk'event and clk = '1') then
r_reg <= r_next;
end if;
end process;
-- Next state logic
r_next <= (others => '0') when syn_clr = '1' else
unsigned(d) when load = '1' else
r_reg + 1 when en='1' and up='1' else
r_reg - 1 when en='1' and up='0' else
r_reg;
-- Output logic
q <= std_logic_vector(r_reg);
max_tick <= '1' when r_reg = (2**N-1) else '0';
min_tick <= '1' when r_reg = 0 else '0';
end Behavioral;
El programa desarrollado para la simulación es la mostrada a continuación
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--USE ieee.numeric_std.ALL;
ENTITY univ_bin_counter_tb IS
END univ_bin_counter_tb;
ARCHITECTURE behavior OF univ_bin_counter_tb IS
-- Component Declaration for the Unit Under Test (UUT)
COMPONENT univ_bin_counter
GENERIC(N:INTEGER:=8);
PORT(
clk : IN std_logic;
reset : IN std_logic;
syn_clr : IN std_logic;
load : IN std_logic;
en : IN std_logic;
up : IN std_logic;
d : IN std_logic_vector(N-1 downto 0);
max_tick : OUT std_logic;
min_tick : OUT std_logic;
q : OUT std_logic_vector(N-1 downto 0)
);
END COMPONENT;
constant three : integer:=3;
--Inputs
signal clk : std_logic := '0';
signal reset : std_logic := '0';
signal syn_clr : std_logic := '0';
signal load : std_logic := '0';
signal en : std_logic := '0';
signal up : std_logic := '0';
signal d : std_logic_vector(three-1 downto 0) := (others => '0');
--Outputs
signal max_tick : std_logic;
signal min_tick : std_logic;
signal q : std_logic_vector(three-1 downto 0);
-- Clock period definitions
constant clk_period : time := 20 ns;
BEGIN
-- Instantiate the Unit Under Test (UUT)
uut: univ_bin_counter
GENERIC MAP(N => three)
PORT MAP (
clk => clk,
reset => reset,
syn_clr => syn_clr,
load => load,
en => en,
up => up,
d => d,
max_tick => max_tick,
min_tick => min_tick,
q => q
);
-- Clock process definitions
clk_process :process
begin
clk <= '0';
wait for clk_period/2;
clk <= '1';
wait for clk_period/2;
end process;
reset <= '1', '0' after clk_period/2;
-- Stimulus process
stim_proc: process
begin
--***********************************
-- Initial input
--***********************************
syn_clr <= '0';
load <= '0';
en <= '0';
up <= '1'; -- Count up
d <= (others => '0');
wait until falling_edge(clk);
wait until falling_edge(clk);
--***********************************
-- Test load
--***********************************
load <= '1';
d <= "011";
wait until falling_edge(clk);
load <= '0';
-- Pause 2 clocks
wait until falling_edge(clk);
wait until falling_edge(clk);
--***********************************
-- Test syn_clear
--***********************************
syn_clr <= '1'; --Clear
wait until falling_edge(clk);
syn_clr <= '0';
--***********************************
-- Test up counter and pause
--***********************************
en <= '1';
up <= '1';
for i in 1 to 10 loop -- count 10 clock
wait until falling_edge(clk);
end loop;
en <= '0';
wait until falling_edge(clk);
en <= '1';
wait until falling_edge(clk);
wait until falling_edge(clk);
--***********************************
-- Test down counter
--***********************************
up <= '0';
for i in 1 to 10 loop --Run 10 clocks
wait until falling_edge(clk);
end loop;
--************************************
-- Other wait conditions
--************************************
--Continue wait conditions q=2
wait until q = "010";
wait until falling_edge(clk);
up <= '1';
-- Continue until min_tick change value
wait on min_tick;
wait until falling_edge(clk);
up <= '0';
wait for 4*clk_period;
en <= '0';
wait for 4*clk_period;
--************************************
-- Terminate simulation
--************************************
assert false
report "Simulation Completed"
severity failure;
end process;
END;
Asignación de pines en PlanAhead
Aquí no se realiza ninguna asignación de pines porque solo es una simulación.
Evidencia de Funcionamiento
De acuerdo a la tabla, nos dice que si syn_clr = 1 la salida será cero, y esto se puede ver en
la figura 2.
Figura 2.
Ahora, si load = 1, syn_clr = 0 la salida (q) toma el valor de la entrada (d) (Ver figura 3).
Figura 3.
Para que sea un contador ascendente, se debe cumplir que en y up estén en alto y que
syn_clr y load este en bajo (Ver figura 4).
Figura 4.
En los dos marcadores se puede apreciar que el contador es ascendente cuando se
cumplen estas condiciones.
Para que sea un contador descendente, se debe cumplir que en estén en alto y que
syn_clr, up y load estén en bajo (Ver figura 5).
Figura 5.
En los dos marcadores se puede apreciar que el contador es descendente cuando se
cumplen estas condiciones.
Para que se mantenga (Pause) la salida las condiciones que se deben cumplir son que
syn_clr, load y en estén en bajo, el estado de up no importa (Ver figura 6 y 7).
Figura 6.
Figura 7.

Weitere ähnliche Inhalte

Andere mochten auch

Circuitos Digitales - Contador Digital
Circuitos Digitales - Contador DigitalCircuitos Digitales - Contador Digital
Circuitos Digitales - Contador DigitalFernando Marcos Marcos
 
Procesamiento Digital de Señales Filtro Rechaza Banda - Matlab
Procesamiento Digital de Señales Filtro Rechaza Banda - MatlabProcesamiento Digital de Señales Filtro Rechaza Banda - Matlab
Procesamiento Digital de Señales Filtro Rechaza Banda - MatlabFernando Marcos Marcos
 
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLAB
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLABProcesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLAB
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLABFernando Marcos Marcos
 
Circuitos Digitales - Contador base 60 - Cronometro
Circuitos Digitales - Contador base 60 - CronometroCircuitos Digitales - Contador base 60 - Cronometro
Circuitos Digitales - Contador base 60 - CronometroFernando Marcos Marcos
 
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...Fernando Marcos Marcos
 
Circuitos Digitales - Contador ascendente y descendente con reset
Circuitos Digitales - Contador ascendente y descendente con resetCircuitos Digitales - Contador ascendente y descendente con reset
Circuitos Digitales - Contador ascendente y descendente con resetFernando Marcos Marcos
 
Circuitos Digitales - Corrimiento de bits
Circuitos Digitales - Corrimiento de bits Circuitos Digitales - Corrimiento de bits
Circuitos Digitales - Corrimiento de bits Fernando Marcos Marcos
 
Manual del operador torno cnc fanuc oi tb
Manual del operador torno cnc fanuc oi tbManual del operador torno cnc fanuc oi tb
Manual del operador torno cnc fanuc oi tbJose Mecanico
 
Mantenimiento Preventivo a Fresadoras y torno
Mantenimiento Preventivo a Fresadoras y tornoMantenimiento Preventivo a Fresadoras y torno
Mantenimiento Preventivo a Fresadoras y tornoFernando Marcos Marcos
 
Circuitos Digitales - Circuito Digital Sumador
Circuitos Digitales - Circuito Digital SumadorCircuitos Digitales - Circuito Digital Sumador
Circuitos Digitales - Circuito Digital SumadorFernando Marcos Marcos
 

Andere mochten auch (17)

Circuitos Digitales - Contador Digital
Circuitos Digitales - Contador DigitalCircuitos Digitales - Contador Digital
Circuitos Digitales - Contador Digital
 
Sistema nervioso central
Sistema nervioso centralSistema nervioso central
Sistema nervioso central
 
Arduino corrimiento de bits con leds
Arduino corrimiento de bits con ledsArduino corrimiento de bits con leds
Arduino corrimiento de bits con leds
 
Aparato reproductor femenino
Aparato reproductor femeninoAparato reproductor femenino
Aparato reproductor femenino
 
Procesamiento Digital de Señales Filtro Rechaza Banda - Matlab
Procesamiento Digital de Señales Filtro Rechaza Banda - MatlabProcesamiento Digital de Señales Filtro Rechaza Banda - Matlab
Procesamiento Digital de Señales Filtro Rechaza Banda - Matlab
 
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLAB
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLABProcesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLAB
Procesamiento Digital De Señales Filtro Pasa Altas 4to Orden - MATLAB
 
Filtros y oscilador de wien
Filtros y oscilador de wienFiltros y oscilador de wien
Filtros y oscilador de wien
 
Circuitos Digitales - Contador base 60 - Cronometro
Circuitos Digitales - Contador base 60 - CronometroCircuitos Digitales - Contador base 60 - Cronometro
Circuitos Digitales - Contador base 60 - Cronometro
 
La Ionosfera y las Comunicaciones
La Ionosfera y las ComunicacionesLa Ionosfera y las Comunicaciones
La Ionosfera y las Comunicaciones
 
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...
Circuitos Digitales - Registro de corrimiento bidireccional de 4 bits con var...
 
Circuitos Digitales - Contador ascendente y descendente con reset
Circuitos Digitales - Contador ascendente y descendente con resetCircuitos Digitales - Contador ascendente y descendente con reset
Circuitos Digitales - Contador ascendente y descendente con reset
 
Circuitos Digitales - Corrimiento de bits
Circuitos Digitales - Corrimiento de bits Circuitos Digitales - Corrimiento de bits
Circuitos Digitales - Corrimiento de bits
 
Tipos de moduladores
Tipos de moduladoresTipos de moduladores
Tipos de moduladores
 
Tipos de Osciladores
Tipos de OsciladoresTipos de Osciladores
Tipos de Osciladores
 
Manual del operador torno cnc fanuc oi tb
Manual del operador torno cnc fanuc oi tbManual del operador torno cnc fanuc oi tb
Manual del operador torno cnc fanuc oi tb
 
Mantenimiento Preventivo a Fresadoras y torno
Mantenimiento Preventivo a Fresadoras y tornoMantenimiento Preventivo a Fresadoras y torno
Mantenimiento Preventivo a Fresadoras y torno
 
Circuitos Digitales - Circuito Digital Sumador
Circuitos Digitales - Circuito Digital SumadorCircuitos Digitales - Circuito Digital Sumador
Circuitos Digitales - Circuito Digital Sumador
 

Ähnlich wie DDAA FPGA - Simulacion Contador Universal (Test Bench)

ARDUINO - LADDER - PROYECTO CIRCUITO ELECTRONEUMÁTICO 2 CILINDROS COMPLE...
ARDUINO - LADDER  - PROYECTO  CIRCUITO  ELECTRONEUMÁTICO  2  CILINDROS COMPLE...ARDUINO - LADDER  - PROYECTO  CIRCUITO  ELECTRONEUMÁTICO  2  CILINDROS COMPLE...
ARDUINO - LADDER - PROYECTO CIRCUITO ELECTRONEUMÁTICO 2 CILINDROS COMPLE...Jovanny Duque
 
PROBLEMAS.
PROBLEMAS.PROBLEMAS.
PROBLEMAS.Ali VB
 
Electrónica digital: Maquina de estado finitas (FSM´s)
Electrónica digital: Maquina de estado finitas (FSM´s)Electrónica digital: Maquina de estado finitas (FSM´s)
Electrónica digital: Maquina de estado finitas (FSM´s)SANTIAGO PABLO ALBERTO
 
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...
ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...Jovanny Duque
 
Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito SANTIAGO PABLO ALBERTO
 
ARDUINO- PROYECTO LADDER DISPOSITICO PARA EMBUTIR COMPLETO - LADDER.pdf
ARDUINO- PROYECTO   LADDER   DISPOSITICO  PARA  EMBUTIR  COMPLETO -  LADDER.pdfARDUINO- PROYECTO   LADDER   DISPOSITICO  PARA  EMBUTIR  COMPLETO -  LADDER.pdf
ARDUINO- PROYECTO LADDER DISPOSITICO PARA EMBUTIR COMPLETO - LADDER.pdfJovanny Duque
 
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...David Mora Cusicuna
 
ARDUINO - LADDER - EJEMPLO CX3 RESET TEMP EH EN 2 CIL BI MONO PARA AR...
ARDUINO - LADDER  -  EJEMPLO CX3 RESET TEMP  EH  EN   2  CIL BI MONO PARA  AR...ARDUINO - LADDER  -  EJEMPLO CX3 RESET TEMP  EH  EN   2  CIL BI MONO PARA  AR...
ARDUINO - LADDER - EJEMPLO CX3 RESET TEMP EH EN 2 CIL BI MONO PARA AR...Jovanny Duque
 
Estructura de instrucciones de control
Estructura de instrucciones de controlEstructura de instrucciones de control
Estructura de instrucciones de controlSusana Moyolema
 
So 07-concurrencia-6x1
So 07-concurrencia-6x1So 07-concurrencia-6x1
So 07-concurrencia-6x1DIEGODIEGO23
 
documento de ingieneria electronica .pdf
documento de ingieneria electronica .pdfdocumento de ingieneria electronica .pdf
documento de ingieneria electronica .pdfsergioandresrinconca1
 
Este es el mapa conceptual caminos de clio
Este es el mapa conceptual caminos de clioEste es el mapa conceptual caminos de clio
Este es el mapa conceptual caminos de cliok4rol1n4
 

Ähnlich wie DDAA FPGA - Simulacion Contador Universal (Test Bench) (20)

ARDUINO - LADDER - PROYECTO CIRCUITO ELECTRONEUMÁTICO 2 CILINDROS COMPLE...
ARDUINO - LADDER  - PROYECTO  CIRCUITO  ELECTRONEUMÁTICO  2  CILINDROS COMPLE...ARDUINO - LADDER  - PROYECTO  CIRCUITO  ELECTRONEUMÁTICO  2  CILINDROS COMPLE...
ARDUINO - LADDER - PROYECTO CIRCUITO ELECTRONEUMÁTICO 2 CILINDROS COMPLE...
 
PROBLEMAS.
PROBLEMAS.PROBLEMAS.
PROBLEMAS.
 
Test bench en vhdl
Test bench en vhdlTest bench en vhdl
Test bench en vhdl
 
Electrónica digital: Maquina de estado finitas (FSM´s)
Electrónica digital: Maquina de estado finitas (FSM´s)Electrónica digital: Maquina de estado finitas (FSM´s)
Electrónica digital: Maquina de estado finitas (FSM´s)
 
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...
ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...ARDUINO  - LADDER   PROYECTO  CX3 RESET  TEMP  EH  EN   2  CILINDROS  BI MONO...
ARDUINO - LADDER PROYECTO CX3 RESET TEMP EH EN 2 CILINDROS BI MONO...
 
Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito
 
ARDUINO- PROYECTO LADDER DISPOSITICO PARA EMBUTIR COMPLETO - LADDER.pdf
ARDUINO- PROYECTO   LADDER   DISPOSITICO  PARA  EMBUTIR  COMPLETO -  LADDER.pdfARDUINO- PROYECTO   LADDER   DISPOSITICO  PARA  EMBUTIR  COMPLETO -  LADDER.pdf
ARDUINO- PROYECTO LADDER DISPOSITICO PARA EMBUTIR COMPLETO - LADDER.pdf
 
7 funcion de_transferencia_primer_orden
7 funcion de_transferencia_primer_orden7 funcion de_transferencia_primer_orden
7 funcion de_transferencia_primer_orden
 
7 funcion de_transferencia_primer_orden
7 funcion de_transferencia_primer_orden7 funcion de_transferencia_primer_orden
7 funcion de_transferencia_primer_orden
 
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...
463941896-1-4-Diseno-de-compensador-adelanto-atraso-y-controlador-PID-pptx (1...
 
Clase 7 pid
Clase 7   pidClase 7   pid
Clase 7 pid
 
ARDUINO - LADDER - EJEMPLO CX3 RESET TEMP EH EN 2 CIL BI MONO PARA AR...
ARDUINO - LADDER  -  EJEMPLO CX3 RESET TEMP  EH  EN   2  CIL BI MONO PARA  AR...ARDUINO - LADDER  -  EJEMPLO CX3 RESET TEMP  EH  EN   2  CIL BI MONO PARA  AR...
ARDUINO - LADDER - EJEMPLO CX3 RESET TEMP EH EN 2 CIL BI MONO PARA AR...
 
Wero
WeroWero
Wero
 
Proyecto Mano Robotica
Proyecto Mano RoboticaProyecto Mano Robotica
Proyecto Mano Robotica
 
Estructura de instrucciones de control
Estructura de instrucciones de controlEstructura de instrucciones de control
Estructura de instrucciones de control
 
1 er informe
1 er informe1 er informe
1 er informe
 
Control pid
Control pidControl pid
Control pid
 
So 07-concurrencia-6x1
So 07-concurrencia-6x1So 07-concurrencia-6x1
So 07-concurrencia-6x1
 
documento de ingieneria electronica .pdf
documento de ingieneria electronica .pdfdocumento de ingieneria electronica .pdf
documento de ingieneria electronica .pdf
 
Este es el mapa conceptual caminos de clio
Este es el mapa conceptual caminos de clioEste es el mapa conceptual caminos de clio
Este es el mapa conceptual caminos de clio
 

Mehr von Fernando Marcos Marcos

LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...
LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...
LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...Fernando Marcos Marcos
 
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328P
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328PMultiplexor Display de 7 Segmentos con Arduino UNO ATmega328P
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328PFernando Marcos Marcos
 
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINOFernando Marcos Marcos
 
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINOFernando Marcos Marcos
 
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINOFernando Marcos Marcos
 
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOFernando Marcos Marcos
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOFernando Marcos Marcos
 
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328P
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328PMATRIZ LED 4x10 CON ARDUINO - ATMEGA328P
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328PFernando Marcos Marcos
 
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATOR
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATORGENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATOR
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATORFernando Marcos Marcos
 
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINO
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINODISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINO
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINOFernando Marcos Marcos
 
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41Fernando Marcos Marcos
 
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328 DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328 Fernando Marcos Marcos
 
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGA
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGADISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGA
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGAFernando Marcos Marcos
 
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATOR
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATORPLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATOR
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATORFernando Marcos Marcos
 
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...Fernando Marcos Marcos
 
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...Fernando Marcos Marcos
 
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...Fernando Marcos Marcos
 

Mehr von Fernando Marcos Marcos (20)

LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...
LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...
LECTOR DE TEMPERATURA CON LM35 Y MULTIPLEXOR DE DISPLAY DE 7 SEGMENTOS CON AR...
 
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328P
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328PMultiplexor Display de 7 Segmentos con Arduino UNO ATmega328P
Multiplexor Display de 7 Segmentos con Arduino UNO ATmega328P
 
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE-DESCENDENTE DE 14 BITS CON ARDUINO
 
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 14 BITS CON ARDUINO
 
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 14 BITS CON ARDUINO
 
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO DESCENDENTE DE 8 BITS CON ARDUINO
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
 
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328P
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328PMATRIZ LED 4x10 CON ARDUINO - ATMEGA328P
MATRIZ LED 4x10 CON ARDUINO - ATMEGA328P
 
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATOR
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATORGENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATOR
GENERADOR DE SEÑALES CON LM741 - SIGNAL GENERATOR
 
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINO
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINODISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINO
DISEÑO DE UN DETECTOR DE VELOCIDAD CON ARDUINO
 
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41
DISEÑO DE PCB CON MODULO DE TRANSMISIÓN Y RECEPCIÓN RN41
 
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328 DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328
DISEÑO Y DESARROLLO DE UNA PLACA PCB CON ATMEGA 328
 
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGA
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGADISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGA
DISEÑO DEL JUEGO PING PONG EN FPGA - VHDL - VGA
 
APLICACIONES DE FOURIER
APLICACIONES DE FOURIERAPLICACIONES DE FOURIER
APLICACIONES DE FOURIER
 
APLICACIONES DE LAPLACE
APLICACIONES DE LAPLACEAPLICACIONES DE LAPLACE
APLICACIONES DE LAPLACE
 
CONTROL AUTOMATICO DE GANANCIA (AGC)
CONTROL AUTOMATICO DE GANANCIA (AGC)CONTROL AUTOMATICO DE GANANCIA (AGC)
CONTROL AUTOMATICO DE GANANCIA (AGC)
 
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATOR
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATORPLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATOR
PLL (OSCILADOR POR CAMBIO DE FASE) - PHASE SHIFT OSCILLATOR
 
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...
USO DEL TRANSISTOR COMO SWITCH - TRANSISTOR EN CORTE Y EN SATURACION - TRANSI...
 
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...
SISTEMA DE CONTROL Y MONITOREO DE HUMEDAD EN LOMBRICOMPOSTA - HUMIDITY MONITO...
 
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...
DISEÑO ANALOGICO Y ELECTRONICA - ADC - CONVERTIDOR ANALÓGICO DIGITAL - ANALOG...
 

Kürzlich hochgeladen

TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismosaultorressep
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajasjuanprv
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolicalf1231
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxChristopherOlave2
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricoalexcala5
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 

Kürzlich hochgeladen (20)

TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismo
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
07 MECANIZADO DE CONTORNOS para torno cnc universidad catolica
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptx
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
presentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctricopresentacion medidas de seguridad riesgo eléctrico
presentacion medidas de seguridad riesgo eléctrico
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 

DDAA FPGA - Simulacion Contador Universal (Test Bench)

  • 2. Planteamiento del problema Creacion de un Test Bench para simulación Se simulara un contador universal, para ello se creara un Test Bench en el cual se ingresaran los estimulas necesarios para observar que el contador funciones de acuerdo a la siguiente tabla. Figura 1. 1
  • 3. DESARROLLO El programa del contador es el siguiente library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; entity univ_bin_counter is GENERIC( N:integer:=8); PORT( clk, reset: in std_logic; syn_clr, load, en, up: in std_logic; d: in std_logic_vector(N-1 downto 0); max_tick, min_tick: out std_logic; q: out std_logic_vector(N-1 downto 0) ); end univ_bin_counter; architecture Behavioral of univ_bin_counter is signal r_reg: unsigned(N-1 downto 0); signal r_next: unsigned(N-1 downto 0); begin process(clk,reset) begin if(reset = '1') then r_reg <= (others => '0'); elsif(clk'event and clk = '1') then r_reg <= r_next; end if; end process; -- Next state logic r_next <= (others => '0') when syn_clr = '1' else unsigned(d) when load = '1' else r_reg + 1 when en='1' and up='1' else r_reg - 1 when en='1' and up='0' else r_reg; -- Output logic q <= std_logic_vector(r_reg); max_tick <= '1' when r_reg = (2**N-1) else '0'; min_tick <= '1' when r_reg = 0 else '0'; end Behavioral;
  • 4. El programa desarrollado para la simulación es la mostrada a continuación LIBRARY ieee; USE ieee.std_logic_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --USE ieee.numeric_std.ALL; ENTITY univ_bin_counter_tb IS END univ_bin_counter_tb; ARCHITECTURE behavior OF univ_bin_counter_tb IS -- Component Declaration for the Unit Under Test (UUT) COMPONENT univ_bin_counter GENERIC(N:INTEGER:=8); PORT( clk : IN std_logic; reset : IN std_logic; syn_clr : IN std_logic; load : IN std_logic; en : IN std_logic; up : IN std_logic; d : IN std_logic_vector(N-1 downto 0); max_tick : OUT std_logic; min_tick : OUT std_logic; q : OUT std_logic_vector(N-1 downto 0) ); END COMPONENT; constant three : integer:=3; --Inputs signal clk : std_logic := '0'; signal reset : std_logic := '0'; signal syn_clr : std_logic := '0'; signal load : std_logic := '0'; signal en : std_logic := '0'; signal up : std_logic := '0'; signal d : std_logic_vector(three-1 downto 0) := (others => '0'); --Outputs signal max_tick : std_logic; signal min_tick : std_logic; signal q : std_logic_vector(three-1 downto 0);
  • 5. -- Clock period definitions constant clk_period : time := 20 ns; BEGIN -- Instantiate the Unit Under Test (UUT) uut: univ_bin_counter GENERIC MAP(N => three) PORT MAP ( clk => clk, reset => reset, syn_clr => syn_clr, load => load, en => en, up => up, d => d, max_tick => max_tick, min_tick => min_tick, q => q ); -- Clock process definitions clk_process :process begin clk <= '0'; wait for clk_period/2; clk <= '1'; wait for clk_period/2; end process; reset <= '1', '0' after clk_period/2; -- Stimulus process stim_proc: process begin --*********************************** -- Initial input --*********************************** syn_clr <= '0'; load <= '0'; en <= '0'; up <= '1'; -- Count up d <= (others => '0'); wait until falling_edge(clk); wait until falling_edge(clk); --*********************************** -- Test load --*********************************** load <= '1'; d <= "011";
  • 6. wait until falling_edge(clk); load <= '0'; -- Pause 2 clocks wait until falling_edge(clk); wait until falling_edge(clk); --*********************************** -- Test syn_clear --*********************************** syn_clr <= '1'; --Clear wait until falling_edge(clk); syn_clr <= '0'; --*********************************** -- Test up counter and pause --*********************************** en <= '1'; up <= '1'; for i in 1 to 10 loop -- count 10 clock wait until falling_edge(clk); end loop; en <= '0'; wait until falling_edge(clk); en <= '1'; wait until falling_edge(clk); wait until falling_edge(clk); --*********************************** -- Test down counter --*********************************** up <= '0'; for i in 1 to 10 loop --Run 10 clocks wait until falling_edge(clk); end loop; --************************************ -- Other wait conditions --************************************ --Continue wait conditions q=2 wait until q = "010"; wait until falling_edge(clk); up <= '1'; -- Continue until min_tick change value wait on min_tick; wait until falling_edge(clk); up <= '0'; wait for 4*clk_period; en <= '0'; wait for 4*clk_period; --************************************ -- Terminate simulation --************************************
  • 7. assert false report "Simulation Completed" severity failure; end process; END;
  • 8. Asignación de pines en PlanAhead Aquí no se realiza ninguna asignación de pines porque solo es una simulación. Evidencia de Funcionamiento De acuerdo a la tabla, nos dice que si syn_clr = 1 la salida será cero, y esto se puede ver en la figura 2. Figura 2. Ahora, si load = 1, syn_clr = 0 la salida (q) toma el valor de la entrada (d) (Ver figura 3). Figura 3.
  • 9. Para que sea un contador ascendente, se debe cumplir que en y up estén en alto y que syn_clr y load este en bajo (Ver figura 4). Figura 4. En los dos marcadores se puede apreciar que el contador es ascendente cuando se cumplen estas condiciones. Para que sea un contador descendente, se debe cumplir que en estén en alto y que syn_clr, up y load estén en bajo (Ver figura 5). Figura 5. En los dos marcadores se puede apreciar que el contador es descendente cuando se cumplen estas condiciones.
  • 10. Para que se mantenga (Pause) la salida las condiciones que se deben cumplir son que syn_clr, load y en estén en bajo, el estado de up no importa (Ver figura 6 y 7). Figura 6. Figura 7.