You are on page 1of 39

LENGUAJES DE ALTO NIVEL PARA

DESCRIPCIN DE CIRCUITOS
Ing. Milton Tipn

LENGUAJES DE PROGRAMACIN
HDL
VHDL
VERILOG
ABEL
OTROS
ESQUEMATICOS
DIAGRAMA DE ESTADOS
SYSTEM GENERATOR (MATLAB)
RIO (LABVIEW)

FABRICANTES

XILINX

ALTERA

FAMILIAS DE FPGAs

SOFTWARE DE PROGRAMACIN XILINX

SOFTWARE DE PROGRAMACIN ALTERA

HARDWARE DE PROGRAMACIN

PROPIETARIO

PARTNERS

DIGILENT

Entorno de Desarrollo

Para el desarrollo de la materia se usaran:


Entorno de programacin ISE de Xilinx
Tarjeta de desarrollo Spartan 3E de la empresa Digilent
Lenguaje de Programacin VHDL
Enlace con MATLAB y/o LabView

Hardware Description Language (VHDL)


organizacin y arquitectura
Ing. Milton Tipn

Contenido

Elementos bsicos
Entidad
Arquitectura

Elementos bsicos

La estructura general de un programa en VHDL est formada por 5


mdulos o unidades de diseo

declaracin de entidad (entity declaration)

arquitectura (architecture)

configuracin (configuration)

declaracin del paquete (package declaration)

cuerpo del paquete (package body)

En ISE de Xilinx

Entidad

Una entidad (entity) es el bloque elemental de diseo en VHDL, Las


entidades son todos los elementos electrnicos que forman de
manera individual o en conjunto un sistema digital

Puertos y modos

Un modo puede tener uno de cuatro valores:


in (entrada)
out (salida)
inout (entrada/salida)
buffer

Tipos de datos

Los tipos son los valores (datos) que el diseador establece para los
puertos de entrada y salida dentro de una entidad. Algunos de los
tipos ms utilizados en VHDL son:

Bit, el cual tiene valores de 0 y 1 lgico.


Boolean (booleano) que define valores de verdadero o falso en una
expresin
Bit_vector (vectores de bits) que representa un conjunto de bits para cada
variable de entrada o salida.
Integer (entero) que representa un nmero entero.

Operadores lgicos, relacionales y


aritmticos

Operadores lgicos

Misma Prioridad: and, nand, or, nor y xor.

Mayor Prioridad: not

Operadores relacionales

Menor que, <

Menor o igual que, < =

Mayor que, >

Mayor o igual que, > =

Igual que, =

Distinto que, /=

Operadores aritmticos

Suma (+) y Resta (-)

Multiplicacin (*) y Divisin (/)

Exponencial (**)

Valor absoluto (abs)

Mdulo (mod) y Resto (rem)

Palabras reservadas en VHDL

Declaracin de la entidad

Declaracin de Vectores

Libreras

Las libreras en VHDL son conjuntos definiciones de tipos de datos,


funciones aritmticas, de conversin y comparaciones.

IEEE Standard Logic 1164

USE IEEE.std_logic_1164.all:
Std_logic: Un bit. (1,0, Z, X, H, L, U, -....)
Std_logic_vector(MSB downto LSB): Bus. (1100)
Integer: Entero. (5);
Logica booleano (NOT, XOR, etc)

IEEE Standard Logic arith

USE IEEE.std_logic_arith.all:
Tipos de vectores con/sin signo

Signed(MSB downto LSB)


unsigned(MSB downto LSB)

Operaciones aritmticos entre enteros, signed y unsigned.


Comparacion entre enteros, signed y unsigned
La operacin de divisin por valores no 2n

Declaracin de libreras

Arquitectura

Una arquitectura (architecture) se define como la estructura que


describe el funcionamiento de una entidad
De manera general, los estilos de programacin utilizados en el
diseo de arquitecturas se clasifican como:
Estilo funcional
Estilo por flujo de datos
Estilo estructural

Estilo funcional

Se trata de una descripcin funcional de la forma en que trabaja el


sistema

Estilo flujo de datos

Indica la forma en que los datos se pueden transferir de una seal a


otra sin necesidad de declaraciones secuenciales (if- then- else).
Se pueden utilizar:
Instrucciones when- else
Ecuaciones booleanas.

Estilo flujo de datos (When Else)

Estilo flujo de datos (Ecuaciones Booleanas)

Estilo estructural

Una descripcin estructural basa su comportamiento en modelos lgicos establecidos


(compuertas, sumadores, contadores, etc.) para instanciarlos en una sola arquitectura

EJEMPLO COMPUERTA EN VHDL

TEST BENCH
Ing. Milton Tipn

Compuerta AND

Crear test bench

Test bench (comentar todos los del clocks)

Cambiar a modo
simulacin

Test bench (colocar los estmulos)

Comentar todo lo
del reloj 1

Insertar estmulos 2
Comprobar y
simular 3

Para poner comentarios

Simulacin ISIM (comprobar la tabla)

You might also like