Professional Documents
Culture Documents
2016
Diseo Digital
INTEGRANTES
10190263
10190237
PROBLEMA
Los actuales sistemas temporizadores son muy complejos, de alto costo y se no permiten
aadir conexiones para futuras mejoras, por lo que necesitamos de un sistema sencillo de
comprender y que sea verstil respecto a la inclusin de hardware para su mejora.
JUSTIFICACIN
Realizar un temporizador a base de electrnica digital discreta, puede resultar costoso, sobre
todo cuando el diseo amerita el uso de una gran cantidad de componentes digitales. En este
punto se podra pensar que la solucin ms econmica sera un microcontrolador; bien quizs
uno de esos que cueste menos de 55$ USD, pudiera servir, pero que sucedera si al pasar el
tiempo se tiene la necesidad de implementar ms hardware al mismo temporizador para otras
aplicaciones, lo primero que se piensa es que no hay problema en el software, pero hay que
implementar un nuevo hardware, es decir, hay que instalar una nueva tarjeta de circuito
impreso y hasta podra haber problemas por limitacin de espacio, entonces al final se piensa
en comprar mejor un nuevo temporizador que incluya la actualizacin que se desea realizar,
ya que podra salir demasiado costoso el rediseo. Por lo tanto la solucin que se plantea es
poder disear y redisear la cantidad de veces que sea necesario, a menor costo, en un mismo
dispositivo lgico programable, sin necesidad de implementar un nuevo hardware. Todo el
diseo digital se desarrolla en lenguaje simblico y VHDL, a travs del software de
programacin del fabricante ALTERA.
OBJETIVOS
MARCO TERICO
Con la creciente complejidad de los diseos digitales ha aparecido una necesidad de describir un
circuito de la forma ms eficiente y prctica posible. Un lenguaje de programacin ofrece la
posibilidad de un alto nivel de abstraccin y es la solucin adecuada para dicha tarea.
Los lenguajes de descripcin hardware son lenguajes de alto nivel con una sintaxis similar a los de
programacin (C, ADA, Pascal, Modula, etc.) y una semntica que permite el modelado y simulacin
de los dispositivos hardware a diferentes niveles de abstraccin. Los primeros lenguajes de este tipo
slo pretendan servir de vehculo de comunicacin del diseo. Los actuales lenguajes han adquirido
2
Diseo Digital
un alto grado de estandarizacin y han adoptado los nuevos conceptos de la ingeniera de software,
permitiendo la verificacin de la especificacin del diseo mediante simulacin.
VHDL:
VHDL es un lenguaje de descripcin de circuitos electrnicos digitales que utiliza distintos niveles de
abstraccin. El significado por sus siglas VHDL es VHSIC (Very High Speed Integrated Circuits)
Hardware Description Language. Esto significa que VHDL permite acelerar el proceso de diseo.
VHDL no es un lenguaje de programacin, por ello conocer su sintaxis no implica necesariamente
saber disear con l. VHDL es un lenguaje de descripcin de hardware genrico, que permite
describir circuitos sncronos y asncronos. Para realizar esto debemos:
Pensar en puertas y biestables, no en variables ni funciones.
Evitar bucles combinacionales y relojes condicionados.
Saber qu parte del circuito es combinacional y cul secuencial.
Los circuitos descritos en VHDL pueden ser simulados utilizando herramientas de simulacin para
reproducir el funcionamiento del circuito. Adems utilizando herramientas de sntesis se puede
implementar dicho circuito en un dispositivo lgico programable o en un circuito integrado.
Dentro del VHDL hay varias formas con las que se puede disear el mismo circuito y es tarea del
diseador elegir la ms apropiada.
Funcional o Comportamental: Se describe la forma en que se comporta el circuito digital, se
tiene en cuenta solo las caractersticas del circuito respecto al comportamiento de las entradas
y las salidas. Esta es la forma que ms se parece a los lenguajes de software ya que la
descripcin puede ser secuencial, adems de combinar caractersticas concurrentes. Estas
sentencias secuenciales se encuentran dentro de los llamados procesos en VHDL. Los procesos
son ejecutados en paralelo entre s, y en paralelo con asignaciones concurrentes de seales y
con las instancias a otros componentes.
Flujo de datos: Se describen asignaciones concurrentes (en paralelo) de seales.
Estructural: Se describe el circuito con instancias de componentes. Estas instancias forman un
diseo de jerarqua superior, al conectar los puertos de estas instancias con las seales
internas del circuito, o con puertos del circuito de jerarqua superior. Es la recomendada
cuando el diseo digital se vuelve complejo o est conformado por mltiples bloques de
hardware.
Mixta: combinacin de todas o algunas de las anteriores.
En VHDL tambin existen formas metdicas para el diseo de mquinas de estados, filtros digitales,
bancos de pruebas etc.
DISEO DE UN SISTEMA USANDO VHDL:
El flujo de diseo de un sistema podra ser:
Divisin del diseo principal en mdulos separados. La modularidad es uno de los conceptos
principales de todo diseo. Normalmente se diferencia entre dos metodologas de diseo: topdown y bottom-up. La metodologa top-down consiste en que un diseo complejo se divide en
diseos ms sencillos que se puedan disear (o describir) ms fcilmente. La metodologa
bottom-up consiste en construir un diseo complejo a partir de mdulos, ya diseados, ms
simples. En la prctica, un diseo usa generalmente ambas metodologas.
Entrada de diseos, pueden usarse diversos mtodos tal como se vio anteriormente.
Simulacin funcional, es decir, comprobaremos que lo escrito en el punto anterior realmente
funciona como queremos, si no lo hace tendremos que modificarlo. En este tipo de simulacin
se comprueba que el cdigo VHDL o Verilog (u otro tipo de lenguaje HDL) ejecuta
correctamente lo que se pretende.
3
Diseo Digital
Sntesis. En este paso se adapta el diseo anterior (que sabemos que funciona) a un hardware
en concreto, ya sea una FPGA o un ASIC. Hay sentencias del lenguaje que no son sintetizables,
como por ejemplo divisiones o exponenciaciones con nmeros no constantes. El hecho de que
no todas las expresiones en VHDL sean sintetizables es que el VHDL es un lenguaje genrico
para modelado de sistemas (no slo para diseo de circuitos digitales), por lo que hay
expresiones que no pueden ser transformadas a circuitos digitales. Durante la sntesis se tiene
en cuenta la estructura interna del dispositivo, y se definen restricciones, como la asignacin
de pines. El sintetizador optimiza las expresiones lgicas con objeto de que ocupen menor
rea, o bien son eliminadas las expresiones lgicas que no son usadas por el circuito.
Simulacin post-sntesis. En este tipo de simulacin se comprueba que el sintetizador ha
realizado correctamente la sntesis del circuito, al transformar el cdigo HDL en bloques
lgicos conectados entre s. Este paso es necesario ya que, a veces, los sintetizadores
producen resultados de sntesis incorrectos, o bien realiza simplificaciones del circuito al
optimizarlo.
Ubicacin y enrutamiento. El proceso de ubicacin consiste en situar los bloques digitales
obtenidos en la sntesis de forma ptima, de forma que aquellos bloques que se encuentran
muy interconectados entre s se siten prximamente. El proceso de enrutamiento consiste en
interconectar adecuadamente los bloques entre s, intentando minimizar retardos de
propagacin para maximizar la frecuencia mxima de funcionamiento del dispositivo.
Anotacin final. Una vez ha sido completado el proceso de ubicacin y enrutamiento, se
extraen los retardos de los bloques y sus interconexiones, con objeto de poder realizar una
simulacin temporal (tambin llamada simulacin post-layout). Estos retardos son anotados en
un fichero SDF (Standard Delay Format) que asocia a cada bloque o interconexin un retardo
mnimo/tpico/mximo.
Simulacin temporal. A pesar de la simulacin anterior puede que el diseo no funcione
cuando se programa, una de las causas puede ser por los retardos internos del chip. Con esta
simulacin se puede comprobar, y si hay errores se tiene que volver a uno de los anteriores
pasos.
Programacin en el dispositivo. Se implementa el diseo en el dispositivo final y se comprueba
el resultado.
ELEMENTOS BSICOS VHDL
VHDL es un lenguaje y como tal, posee sus tipos de datos y operadores. Los datos se almacenan en
objetos que contienen valores de un tipo dado.
IDENTIFICADORES.
CONSTANT. Los objetos de esta clase tienen un valor inicial que es asignado de forma
previa a la simulacin y que no puede ser modificado durante sta. constant identificador:
tipo:= valor;
VARIABLE. Los objetos de esta clase contienen un nico valor que puede ser cambiado
durante la simulacin con una sentencia de asignacin. Las variables generalmente se
utilizan como ndices, principalmente en instrucciones de bucle, o para tomar valores que
permitan modelar componentes. Las variables NO representan conexiones o estados de
memoria. variable identificador: tipo [:= valor];
SIGNAL. Los objetos de esta clase contienen una lista de valores que incluye el valor actual
y un conjunto de valores futuros. Las seales representan elementos de memoria o
conexiones y si pueden ser sintetizadas.
Los puertos de una entidad son implcitamente declarados como seales en el momento de
la declaracin, ya que estos representan conexiones. Tambin pueden ser declaradas en la
4
Diseo Digital
arquitectura antes del BEGIN, lo cual nos permite realizar conexiones entre diferentes
mdulos. signal identificador: tipo;
VHDL permite utilizar tipos predefinidos, as como otros definidos por el usuario.
BIT 0, 1
BIT_VECTOR (range*)
BOOLEAN TRUE, FALSE
CHARACTER {ascii}
STRING {ascii}
SEVERITY_LEVEL {WARNING, ERROR, FALURE}
INTEGER range*
NATURAL range*
POSITIVE range*
REAL range*
TIME
*(range: n_min TO n_max; n_max DOWNTO n_min)
STD_LOGIC. Tipo predefinido en el estndar IEEE 1164. Este tipo representa una lgica
multivaluada de 9 valores. Adems del 0 lgico y el 1 lgico, posee alta impedancia Z,
desconocido X sin inicializar U entre otros. Igual que se permite crear un vector de bits
se puede crear un vector de std_logic, STD_LOGIC_VECTOR. Para poder utilizar el tipo
std_logic hay que aadir la librera que lo soporta.
Para poder utilizar el tipo:
use ieee.std_logic_1164.all.
Para poder utilizar las funciones aritmeticolgicas definidas (suma, resta multiplicacin)
use ieee.std_logic_arith.all.
Si los vectores estn en representacin binaria pura
use ieee.std_logic_unsigned.all.
Los vectores estn en C2
use ieee.std_logic_unsigned.all.
TIPO ENUMERADO es un tipo de dato con un grupo de posibles valores asignados por el
usuario. Los tipos enumerados se utilizan principalmente en el diseo de mquinas de
estados
type nombre is (valor1, valor2, );
Los tipos enumerados se ordenan de acuerdo a sus valores. Los programas de sntesis
automticamente codifican binariamente los valores del tipo enumerado para que estos
puedan ser sintetizados. Algunos programas lo hacen mediante una secuencia binaria
ascendente, otros buscan cual es la codificacin que mejor conviene para tratar de
minimizar el circuito o para incrementar la velocidad del mismo una vez que la descripcin
ha sido sintetizada. Tambin es posible asignar el tipo de codificacin mediante directivas
propias de la herramienta de sntesis.
TIPOS COMPUESTOS un tipo compuesto es un tipo de dato formado con elementos de otros
tipos, existen dos formas de tipos compuestos, arrays y records.
UN ARRAY es un objeto de datos que consiste en una coleccin de elementos del mismo
tipo.
type nombre is array (rango) of tipo;
UN RECORD es un objeto de datos que consiste en una coleccin de elementos de
distintos tipos.
type nombre is record
elemento1: tipo_de_dato1;
elemento2: tipo_de_dato2;
end record;
Diseo Digital
OPERADORES
Un operador nos permite construir diferentes tipos de expresiones mediante los cuales podemos
calcular datos utilizando diferentes objetos de datos con el tipo de dato que maneja dicho objeto. En
VHDL existen distintos operadores de asignacin con lo que se transfieren valores de un objeto de
datos a otro, y operadores de asociacin que relacionan un objeto de datos con otro, lo cual no existe
en ningn lenguaje de programacin de alto nivel.
abs
*, /, mod, rem
+ (sig.), - (sig)
+, -, &
and, or, nand, nor, xor
:= asignacin de valores a constantes y variables.
<= asignacin de valores a seales.
entity F is
port (A, B: in bit; Y out bit);
end F;
Diseo Digital
Los puertos pueden ser para seales de entrada in, salida out, entrada-salida o un buffer; que
utilizar el modo in/out.
Adems, la entidad puede definir un valor genrico (GENERIC) que se utilizar para declarar las
propiedades y constantes del circuito, independientemente de cul sea la arquitectura.
entity nombre is
generic (cte1: tipo := valor1; cte2: tipo:= valor 2; );
port (entrada1, entrada2, : in tipo;
salida1, salida2, : out tipo;
puertoi : modo tipo);
end nombre;
ARQUITECTURA (ARCHITECTURE)
Los pares de entidades y arquitecturas se utilizan para representar la descripcin completa de un
diseo. Una arquitectura describe el funcionamiento de la entidad a la que hace referencia. Si una
entidad la asociamos con una caja en la que se enumeran las interfaces de conexin hacia el
exterior, entonces la arquitectura representa la estructura interna de esa caja. Sus principales
funciones son:
1. Define internamente el circuito.
2. Seales internas, funciones, procedimientos, constantes.
3. La descripcin de la arquitectura puede ser estructural o por comportamiento.
Lo siguiente muestra un ejemplo de su contenido:
architecture arch_name of entity_name is
-- declaraciones de la arquitectura
-- tipos
-- seales
-- componentes
begin
-- cdigo de descripcin
-- instrucciones concurrentes
-- ecuaciones booleanes
process
begin
-- cdigo de descripcin
end process;
end arch_name;
Una arquitectura se describe por comportamiento o por estructura. Una entidad puede tener ms de
una arquitectura, pero cuando se compile se debe indicar cul es la arquitectura que queremos
utilizar.
PROCESS: Cuando en VHDL se escribe un process, dentro de l aparece la parte secuencial del
circuito. La simulacin no entra en el process hasta que no haya variado alguna de las seales o
variables de su lista de sensibilidad independientemente de lo que este contenido dentro del process.
Por otro lado nicamente dentro de un process pueden aparecer las sentencias de tipo if y else y
nunca puede aparecer una sentencia del tipo wait.
Sentencias de descripcin
WAIT esta instruccin es utilizada en procesos que no tienen lista de sensibilidad:
wait on signal_list;
7
Diseo Digital
Diseo Digital
Existen dos tipos de mquinas de estado: Moore y Mealy. Para esta parte del marco terico,
se dar un ejemplo de mquina moore.
Consiste en 3 pasos:
Definicin de los estados
Descripcin de los registros de estado
Descripcin de los bloques combinacionales de prximo estado y de salida.
Diseo Digital
10
Diseo Digital
TEMPORIZADOR:
Un temporizador es un aparato con el que podemos regular la conexin desconexin de un circuito
elctrico despus de que se ha programado un tiempo. El elemento fundamental del temporizador
es un contador binario, encargado de medir los pulsos suministrados por algn circuito oscilador, con
una base de tiempo estable y conocida. El tiempo es determinado por una actividad o proceso que se
necesite
controlar.
Se diferencia del rel, en que los contactos del temporizador no cambian de posicin
instantneamente.
Podemos clasificar los temporizadores en:
De conexin: el temporizador recibe tensin y mide un tiempo hasta que libera los
contactos.
11
Diseo Digital
Hay diversos tipos de temporizadores desde los que son usados en el hogar para cocinar, hasta los
que son usados en la automatizacin de procesos de industriales, tienen diferentes clases de
componentes que tienen como fin la misma funcin, pero cada uno sirve para algn proceso en
especfico:
Temporizador trmico que acta por calentamiento de una lmina bimetlica, el tiempo se
determina por la curva que adquiere la lmina.
12
Diseo Digital
METODOLOGA DE DESARROLLO
La elaboracin de este proyecto tiene dos etapas importantes: hardware y el software.
En la parte de hardware nos enfocaremos en el diseo utilizando diferentes circuitos integrados
bsicos, conectados de tal forma que emulen el funcionamiento de un tpico temporizador.
Y cuando nos referimos a software utilizaremos el paquete informtico Quatus-2, para realizar la
descripcin de hardware utilizando el lenguaje vhdl, para describir nuestro circuito cerradura
electrnica.
ANLISIS Y MODELAMIENTO
Como bien se sabe en VHDL existen varios niveles que permiten la programacin en VHDL, y la que
se desarroll en este proyecto fue el nivel algortmico o conocido tambin por descripcin a alto nivel
HDL. Para el diseo se utilizaron los fundamentos bsicos de una descripcin como lo es:
Biblioteca (library)
13
Diseo Digital
Entidad (entity)
Arquitectura (architectures)
Se dise la descripcin de las entidades y arquitecturas empleando elementos almacenados en las
bibliotecas: STD_LOGIC_1164 y Standard; de la librera IEEE y STD, respectivamente. En la entidad se
defini la entrada y salidas del sistema completo del temporizador. En la arquitectura se desarrolla
todo el proceso del conteo regresivo del reloj y las diferentes manipulaciones de incremento y
decremento del tiempo. Por la naturaleza del diseo se utiliz sentencias secuenciales y el tipo de
descripcin fue por procedimiento.
El temporizador diseado cumple con las siguientes especificaciones:
1- El tiempo mximo a temporizar ser de 59 minutos y 59 segundos.
2- El conteo ser de manera descendente o ascendente y se debe de tener al llegar a cero o 59.
3- Debe poseer un pulsador para incrementar los segundos de manera manual.
4- Debe poseer un pulsador para decrementar los segundos de manera manual.
6- Debe poseer un pulsador para incrementar los minutos de manera manual.
7- Debe poseer un pulsador para decrementar los minutos de manera manual.
8- Debe tener un pulsador para resetear el temporizador en cualquier momento.
9- Debe tener una salida que indique el momento en que el temporizador llega a cero.
Conocidas las especificaciones del diseo se pueden definir las seales de entrada y salida del
sistema:
- Seales de entrada:
segundos_1_canal: Seala la cantidad de segundos a contar en el canal 1.
minutos_1_canal: Seala la cantidad de minutos a contar en el canal 1.
segundos_2_canal: Seala la cantidad de segundos a contar en el canal 2.
minutos_2_canal: Seala la cantidad de minutos a contar en el canal 2.
clk: Reloj interno que marca el proceso.
Load_1_canal: Switch que habilita el canal 1.
Load_2_canal: Switch que habilita el canal 2.
Reset: Reinicia el contador a 0 en ambos canales.
- Seales de salida:
Q1_seg: Muestra el proceso de conteo de los segundos del canal 1.
Q1_min: Muestra el proceso de conteo de los minutos del canal 1.
Q2_seg: Muestra el proceso de conteo de los segundos del canal 2.
Q2_min: Muestra el proceso de conteo de los minutos del canal 2.
salida1_canal: Habilita o deshabilita la alimentacin del sistema controlado por el canal 1.
salida2_canal: Habilita o deshabilita la alimentacin del sistema controlado por el canal 2.
El dispositivo ser de la siguiente forma:
14
Diseo Digital
Como se ve, el circuito cuento con compuertas lgicas, FF tipo D y multiplexores. Aparte se puede
observar correctamente las entradas y salidas de cada canal.
15
Diseo Digital
16
Diseo Digital
SIMULACIN Y SNTESIS
CDIGO EN VHDL:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity contador_carga is
port (segundos_1_canal: in std_logic_vector (5 downto 0);
minutos_1_canal: in std_logic_vector (5 downto 0);
segundos_2_canal: in std_logic_vector (5 downto 0);
minutos_2_canal: in std_logic_vector (5 downto 0);
clk, Load_1_canal, Load_2_canal, Reset: in std_logic;
Q1_seg: out std_logic_vector (5 downto 0);
Q1_min: out std_logic_vector (5 downto 0);
Q2_seg: out std_logic_vector (5 downto 0);
Q2_min: out std_logic_vector (5 downto 0);
salida1_canal: out std_logic;
salida2_canal: out std_logic);
end contador_carga;
architecture arq_contador_carga of contador_carga is
signal cnt1_seg: std_logic_vector(5 downto 0);
signal cnt1_min: std_logic_vector(5 downto 0);
signal cnt2_seg: std_logic_vector(5 downto 0);
17
Diseo Digital
Diseo Digital
end if;
end if;
end process;
end arq_contador_carga;
EXPLICACIN DE LA ESTRUCTURA DEL CDIGO:
ESTRUCTURA DEL CODIGO:
1. LIBRERIAS
Las libreras usadas fueron la bsicas en todo programa vhdl, ya que el proyecto solo requiero
las operacin aritmticas bsicas con arreglos de vectores y bits de habilitacin.
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_arith.all;
19
Diseo Digital
Use ieee.std_logic_unsigned.all;
2. ENTIDAD
En esta parte declaramos las entradas y salidas de nuestro sistema, las cuales consisten en
vectores de 6 bits como mnimo ya que la entrada del tiempo es en binario (60 = 111100). El
reloj, reset y los bits de control para la carga de informacin se definen solo como bits. Las
salidas son tambien vectores de 6 bits que mediante un bloque de conversin dentro del
cdigo se puede transformar a cdigo BCD 7 segmentos para utilizarlos con displays, y por
ultimo las salidas de activacin de cada canal.
Entity contador_carga is
Port (segundos_1_canal: in std_logic_vector (5 downto 0);
minutos_1_canal: in std_logic_vector (5 downto 0);
segundos_2_canal: in std_logic_vector (5 downto 0);
minutos_2_canal: in std_logic_vector (5 downto 0);
Clk, Load_1_canal, Load_2_canal, Reset: in std_logic;
Q1_seg: out std_logic_vector (5 downto 0);
Q1_min: out std_logic_vector (5 downto 0);
Q2_seg: out std_logic_vector (5 downto 0);
Q2_min: out std_logic_vector (5 downto 0);
salida1_canal: out std_logic;
salida2_canal: out std_logic);
End contador_carga;
3. ARQUITECTURA
a. SEALES
En la arquitectura del temporizador, como primera instancia se tuvo que crear seales
las cuales son de uso exclusivo del programa, estas seales han sido definidas para
almacenar la informacin de entrada y tambien para actuar como registros en el
proceso de conteo descendente, a su vez fue necesario definir dos seales de
habilitacin para asegurar que las salidas de los canales no se activen a menos que se
haya realizado una carga de informacin.
Architecture arq_contador_carga of contador_carga is
Signal cnt1_seg: std_logic_vector (5 downto 0);
Signal cnt1_min: std_logic_vector (5 downto 0);
Signal cnt2_seg: std_logic_vector (5 downto 0);
Signal cnt2_min: std_logic_vector (5 downto 0);
Signal habilitador1_canal: bit:= '0';
Signal habilitador2_canal: bit:= '0';
b. LECTURA DE DATOS (MINUTOS Y SEGUNDOS)
20
Diseo Digital
Diseo Digital
else
if cnt1_min="000000" and cnt1_seg="000000" then
Q1_seg<="000000";
Q1_min<="000000";
salida1_canal <= '0';
else
if cnt1_seg="000000" then
cnt1_seg<="111100";
cnt1_min<=cnt1_min-1;
Q1_seg<=cnt1_seg;
Q1_min<=cnt1_min;
else
cnt1_seg<=cnt1_seg-1;
Q1_seg<=cnt1_seg;
Q1_min<=cnt1_min;
end if;
end if;
end if;
end if;
Este proceso se realiza en paralelo al del segundo canal, siendo parte ambos de un
mismo if, para ser precisos ambos procesos de conteo son parte de las instrucciones
contenidas en el ELSE del primero IF el cual contena el RESET
if Load_2_canal='1' then
cnt2_seg<=segundos_2_canal;
cnt2_min<=minutos_2_canal;
habilitador2_canal<='1';
else
if cnt2_min="000000" and cnt2_seg="000000" and habilitador2_canal='1' then
Q2_seg<="000000";
Q2_min<="000000";
salida2_canal <= '1';
else
if cnt2_min="000000" and cnt2_seg="000000" then
Q2_seg<="000000";
Q2_min<="000000";
salida2_canal <= '0';
else
if cnt2_seg="000000" then
cnt2_seg<="111100";
cnt2_min<=cnt2_min-1;
Q2_seg<=cnt2_seg;
Q2_min<=cnt2_min;
else
cnt2_seg<=cnt2_seg-1;
Q2_seg<=cnt2_seg;
Q2_min<=cnt2_min;
22
Diseo Digital
end
end
end
end
end
end
SIMULACIN EN VHDL:
23
Diseo Digital
24
Diseo Digital
25
Diseo Digital
Constar de un contador 74192, un decodificador BCD-7 segmento 7448, un Flip-Flop 7476 y las
compuertas AND, OR y NOT necesarias para la implementacin del temporizador. Se realizan la
interconexin de estos dispositivos para formar tanto el tiempo en segundo como en minutos. En
total se utilizarn cuatro contadores, un Flip-Flop con cuatro decodificadores BCD-7 segmentos y
varias compuertas lgicas. Para la simulacin en tiempo real se seleccionar un dispositivo lgico
programable FPGA del fabricante Altera, especficamente se seleccionar la Altera FPGA Cyclone IV
4CE115.
26
Diseo Digital
DISPOSITIVOS DE MEMORIA:
27
Diseo Digital
CONEXIONES:
CLOCK:
AUDIO:
Codificador/decodificador de 24 bits(CODEC).
Line-in, line-out, y microphone incorporados.
DISPLAY:
LCD 16x2.
SWITCHES E INDICADORES:
OTRAS CARACTERSTICAS:
POTENCIA:
Entrada DC.
Reguladores de cambio y paso-bajo LM3150MH.
28
Diseo Digital
RESULTADOS OBTENIDOS
DIAGRAMA DE TIEMPOS:
1. MUESTRA 1: Conteo sin cruce de canales
29
Diseo Digital
30
Diseo Digital
31
Diseo Digital
32
Diseo Digital
33
Diseo Digital
CONCLUSIONES
BIBLIOGRAFA
34
Mc Graw Hill
Stephen Brown Zvonko Vranesic
Volnei A. Pedroni
S.A. Prez, E. Soto, S. Fernndez