Diseño de un piano digital utilizando una up3 de altera

Solo disponible en BuenasTareas
  • Páginas : 5 (1070 palabras )
  • Descarga(s) : 0
  • Publicado : 1 de diciembre de 2011
Leer documento completo
Vista previa del texto
una

LABORATORIO FINAL DE MICROPROCESADORES
(PIANO DE 16 TECLAS)

PRESENTADO POR:

ING. ALEXANDER MORALES SEVILLA

ING. MARIO JOSE PUERTA GARCIA

ING. FRANCISCO JAVIER TEHERAN ZUÑIGA

ING. MIGUEL DAVID CORDERO RICARDO

PRESENTADO A:

ING. LUIS ENRIQUE ACOSTA GALVAN

UNIVERSIDAD TECNOLOGICA DE BOLIVAR
FACULTA DE INGENIERIAS

CARTAGENA COLOMBIA

ABRIL DEL 2011LABORATORIO
DIAGRAMA DE BLOQUES
Diagrama de bloques general

Diagrama de bloques especifico

Señal | Tipo | Nº de Bits | Descripción de la señal |
CICLO_PWM | E | 32 | Señal correspondiente al dato de entrada para configurar el ciclo útil |
CLK_PWM | E | 1 | Reloj del sistema |
PERIODO_PWM | E | 32 | Señal que permite configurar el periodo del PWM |
RESET_PWM | E | 1 | Reinicia el móduloPWM |
ENABLE_PWM | E | 32 | Habilita el modulo para generar la señal PWM |
PWM_O | S | 1 | Señal de salida módulo PWM |
Descripción de la interfaz del módulo PWM
DESCRIPCION VHDL DE UNIDADES FUNCIONLES BASICAS

Compuerta AND
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA AND
--EN MODO DE FLUJO DE DATOS
--AND
--NUMERO DE CEDULA 1082847699

library ieee;
useieee.std_logic_1164.all;

entity andm_699 is
port(
a,b: in std_logic;
y: out std_logic
);
end andm_699;

architecture desc of andm_699 is begin
y <= a and b;
end desc;

Compuerta OR
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA or
--EN MODO DE FLUJO DE DATOS
--or
--NUMERO DE CEDULA 1082847699

library ieee;
use ieee.std_logic_1164.all;

entityorm_699 is
port(
a,b: in std_logic;
y: out std_logic
);
end orm_699;

architecture desc of orm_699 is begin
y <= a or b;
end desc;

Compuerta NOT
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA NOT
--EN MODO DE FLUJO DE DATOS
--NOT
--NUMERO DE CEDULA 1082847699

library ieee;
use ieee.std_logic_1164.all;

entity notm_699 is
port(
a:in std_logic;y:out std_logic
);
end notm_699;

architecture desc of notm_699 is begin
y <= not a;
end desc;

Compuerta NAND
----CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA NAND
--EN MODO DE FLUJO DE DATOS
--NAND
--NUMERO DE CEDULA 1143358530

library ieee;
use ieee.std_logic_1164.all;

entity nand_530 is

port(
a,b: in std_logic;
y: out std_logic);

end nand_530;

architecture desc of nand_530 is begin
y <= a nand b;
end desc;

Compuerta XOR
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA XOR
--EN MODO FLUJO DE DATOS
--XOR
--NUMERO DE CEDULA 1082847699

library ieee;
use ieee.std_logic_1164.all;

entity xorm_699 is
port(
a,b: in std_logic;
y: out std_logic
);
end xorm_699;architecture desc of xorm_699 is begin
y <= a xor b;
end desc;

Compuerta XNOR
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UNA COMPUERTA XNOR
--EN MODO DE FLUJO DE DATOS
--XNOR
--NUMERO DE CEDULA 1082847699

library ieee;
use ieee.std_logic_1164.all;

entity xnorm_699 is
port(
a,b: in std_logic;
y: out std_logic
);
end xnorm_699;

architecture desc of xnorm_699 isbegin
y <= a xnor b;
end desc;

Flip-flop tipo D
--CURSO DE MICROPROCESADORES 2011
--DESCRIPCION DE UN FLIP FLOP D
--EN MODO DE COMPORTAMIENTO
--FLIP FLOP
--NUMERO DE CEDULA 1082847699

library ieee;
use ieee.std_logic_1164.all;

entity ffdm_699 is
port(
rst,enable,set,clk,d: in std_logic;
q: out std_logic
);
end ffdm_699;

architecture desc of ffdm_699 is beginprocess(clk,rst,enable,set) begin
if(rst='1') then
q <= '0';
elsif(set = '1') then
q <= '1';
elsif(rising_edge(clk) and enable='1') then
q <= d;
end if;
end process;
end desc;

Flip-flop tipo T
--DESCRIPCION DE UN FLIP FLOP T CON CARGA DE DATO EMPLEANDO FLIP FLOP D
--EN MODO ESTRUCTURAL
--FLIP FLOP T
--NUMERO DE CEDULA 1082847699

library ieee;
use...
tracking img