Professional Documents
Culture Documents
Departamento de Electrnica
Febrero 2008
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
La mejor
Documentacin
es el cdigo
fuente
Utilizar HDLs
para hacer las
especificaciones
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
if A = 1 And B=1
then s<= ?1? After 5 ns;
else s<=0 after 4 ns;
end if;
Simulacin
post Layout
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Que es el VHDL?
VHDL es un acrnimo en donde la letra V se utiliza para (Very high
speed integrated circuit) los circuitos integrados de alta velocidad, y
las letras HDL provienen de (Hardware Description Language),
lenguaje de descripcin de HW.
Este nombre fue aceptado por primera ves por el departamento de
defensa de los EUA, el cual fue la primera institucin en entender la
importancia y los beneficios de contar con un lenguaje de diseo til
para la documentacin, modelado y simulacin de circuitos
electrnicos.
Bajo el patrocinio de sta, el VHDL fue introducido en el mundo de
las aplicaciones del diseo.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Historia
Alrededor
de
1981
el
Departamento de Defensa de los Estados Unidos desarrolla un
proyecto llamado VHSIC (Very High Speed Integrated Circuit ) su
objetivo era rentabilizar las inversiones en hardware haciendo
ms sencillo su mantenimiento. Se pretenda con ello resolver el
problema de modificar el hardware diseado en un proyecto
para utilizarlo en otro, lo que no era posible hasta entonces
porque no exista una herramienta adecuada que armonizase y
normalizase dicha tarea. ( HDL's )
En 1983, IBM, Intermetrics y Texas Instruments empezaron a
trabajar en el desarrollo de un lenguaje de diseo que permitiera
la estandarizacin, facilitando con ello, el mantenimiento de los
diseos y la depuracin de los algoritmos, para ello el IEEE
propuso su estndar en 1984.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Historia
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Historia
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Historia
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
VHDL: Evolucin
CONCEPTOS
VHDL
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Interior del TV
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Generalmente un sistema se
describe como una red elementos
interconectados.
La especificacin de un sistema es
dado en funcin del comportamiento
esperado de ste.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Introduccin VHDL
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Introduccin al VHDL
La estructura de un programa en VHDL est formado por:
Mdulos / unidades.
Cada uno de ellos est compuesto por declaraciones e
instrucciones, los cuales definen, describen, estructuran,
analizan y evalan el comportamiento de un sistema digital.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
(package declaration)
(package body)
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Entidad ( entity )
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Nivel Sistema
Nivel Compuertas
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Entidad y arquitectura
En VHDL la caja
denomina entidad
negra
se
La architecture describe el
contenido del diseo.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
(1)
(2)
(3)
(4)
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
library ieee;
use ieee.std_logic_1164.all
Entity nombre_entity is
Declaraciones
de puertos
Nombre de
la entidad
Port (
);
End nombre_entity;
architecture nombre_Arq of nombre_entity is
Parte declarativa
de la arquitectura
begin
cuerpo de la
arquitectura
end nombre_Arq;
Nombre de la
arquitectura
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
nombre
Modo
In
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
entrada
Modo out
salida
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
El objeto en VHDL es la seal, que se utiliza para modelar los hilos del
circuito.
Puesto que modela nodos fsicos, incluye informacin de tiempo.
No slo contiene unos valores ( 0, 1, Z etc..) sino tambin el tiempo en el
que se toman estos valores.
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
-- rango ascendente
-- rango descendente
a <= 0101;
b <= 0101;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Un solo bit:
tmp (7) <= 1;
Un rango de bits:
tmp(7 downto 4) <= 1011;
Notacin:
1 bit : comilla ( )
Mltiples Bits : comilla doble ( )
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Ms sobre Operadores
a <= 1010;
b <= 0011
c <= a & b;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
begin
end
En el cuerpo de la arquitectura se
modela el comportamiento del
circuito con asignaciones,
architecture
circuito; y Procesos.
instanciaciones
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Iniciando a programar
con VHDL
Cmo se declara
la entidad?
Cmo se
declara la
arquitectura?
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
(1)
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
(2)
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
(3)
-- declaracin de la entidad
Entity sumador is
Port(vector_A,vector_B:in std_logic_vector(10 downto 0);
Cin:in_std_logic;
Suma:out_std_logic_vector (10 downto 0);
Cout:out std_vector);
End andmultiple;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Ejercicio declare la
entidad del siguiente
circuito:
-- declaracin de la entidad
Entity multiplicador is
Port (A0,A1,A2: in std_logic;
B0,B1,B2: in std_logic;
Result:out std_logic_vector(5 downto 0));
End multiplicador;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Paquetes
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Arquitectura
La arquitectura es la parte del programa que describe el
funcionamiento de la entidad, es la que describe como funciona el
circuito representado por nuestra entidad.
El lenguaje de programacin VHDL permite definir una arquitectura
de diferentes formas. Por ejemplo se puede describe un circuito a
nivel de compuertas o mediante algn algoritmo de programacin.
Estilo comportamental
Estilo de flujo de datos
Estilo estructural
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Estilo comportamental
Comportamiento
Si A = B entonces Salida = 1
Si A B entonces Salida = 0
If A = B then
salida <=1;
else salida <= 0;
end if
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Arquitectura comportamental
proceso
lista de sensibilidad
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Ejercicio:
library ieee;
use ieee.std_logic_1164.all
entity comparador is
port (A,B in std_logic_vector (3 downto 0);
Salida out std_logic);
end comparador;
architecture comportamental of comparador is
begin
Process (A,B)
begin
If A = B then
Salida <=1;
else salida <= 0;
end if;
end process comparador;
end comportamental;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
c toma el valor 1
Cuando a=b
end flujodatos;
Si no el valor 0
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Ejercicio:
library ieee;
use ieee.std_logic_1164.all
entity comparador is
port (a,b in std_logic_vector (3 downto 0);
c out std_logic);
end comparador;
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Cursos de Actualizacin PICASA
1 Por ejemplo:
Universidad de Guadalajara
Centro Universitario de Ciencias Exactas e Ingenieras
Divisin de Electrnica y Computacin
Flujo de datos
and