Sei sulla pagina 1di 24

FPGA

VHDL
Programmable
Logic
Programmable Logic Systems
Typical System Design Actual System Design
Programmable Systems Ejemplos
Los Comienzos: TTL Logic
TTL Implementacion
Pocos componentes son requeridos
Bajo Costo
Menos tarjetas
Ahorro de Energia
Sencillos de testing y debugging
Design Security ( Ingenieria Inversa)
Design Flexibility
Ventajas de los Programadores Logicos
LABS conectados en un serie o array
Columna y fila interconectados
Interconecciones pueden abarcar toda la matriz
FPGA ( Field Programmable Gate Array)
Usados para reducir el uso de componentes y espacio
FPGA Hardware y performance lo hace viable, y una
alternaativa de bajo costo dedicado a los ASICs
El diseno del software lo hace facil para crear e implementar
disenos logicos en CPLD y FPGA hardware
Porque se usan los FPGAs
Todos los devices se pueden alimentar o alimentarse de
cualquier coneccion en los dispositivos
Diferentes distancias para ajustar la sincronizacion
Conecciones locales
Conecciones entre LEs o ALMs con LAB
Pueden incluirse conecciones entre LABs adyacentes
Columna y fila conectadas
Segmentos de enroutamiento de longitud fija
FPGA Routing
Ventajas de los FPGA
Aptos para crear muchas funciones logicas complejas

Alto rendimiento

Bajo Costo

Integracion de muchas funciones

Muchos I\O disponibles, asi como estandares y aplicaciones

Rapida programacion

IEEE Industry estandar hardware description language
High level description language para simulacion y
sintetizacion
HDL Hardware Description Language es un software de
programacion de lenguaje utilizado para modelar una
pieza del equipo
Behaivor Modeling Un component es descripto por su
input\output respuesta
Structural Modeling Un component es descripto por sus
interconecciones
VHDL ( Very High Description Language)
Los estudios para la creacin del lenguaje VHDL comenzaron
en el ao 1981, bajo la cobertura de un programa para el
desarrollo de Circuitos Integrados de Muy Alta Velocidad
(VHSIC), del Departamento de Defensa de los Estados Unidos.
En 1983 las compaas Intermetrics, IBM y Texas Instruments
obtuvieron la concesin de un proyecto para la realizacin del
lenguaje y de un conjunto de herramientas auxiliares para su
aplicacin.
Finalmente, en el ao 1987, el lenguaje VHDL se convierte en la
norma IEEE-1076 como todas las normas IEEE, se somete a
revisin peridica, por lo que en 1993 sufri algunas leves
modificaciones



El Lenguaje VHDL
El lenguaje VHDL fue creado con el propsito de
especificar y documentar circuitos y sistemas digitales
utilizando un lenguaje formal. En la prctica se ha
convertido, en un gran nmero de entornos de CAD, en el
HDL de referencia para realizar modelos sintetizables
automticamente.

Caracteristicas del Lenguaje
Descripcin textual normalizada: El lenguaje VHDL es un
lenguaje de descripcin que especifica los circuitos
electrnicos en un formato adecuado para ser interpretado
tanto por mquinas como por personas
Se trata adems de un lenguaje formal, es decir, no resulta
ambiguo a la hora de expresar el comportamiento o
representar la estructura de un circuito.
Amplio rango de capacidad descriptiva: El lenguaje VHDL
posibilita la descripcin del hardware con distintos niveles de
abstraccin, pudiendo adaptarse a distintos propsitos y
utilizarse en las sucesivas fases que se dan en el desarrollo de los
diseos.


Caracteristicas mas Importantes
Las unidades de diseo VHDL se realizan componiendo
cdigo con las construcciones que se definen en el
lenguaje: cabeceras de unidades, declaraciones de
objetos, sentencias, etc. Todas ellas estn definidas en la
norma IEEE-1176
. Los diseadores del lenguaje tomaron la decisin de que
los tipos de datos predefinidos (INTEGER, REAL, etc.) y las
operaciones de entrada-salida sobre ficheros se
declararn en Paquetes VHDL
Estructura Basica del Lenguaje VHDL
Configuraciones Basicas del VHDL
Funcional: Describimos la forma en que se comporta el circuito. Esta
es la forma que ms se parece a los lenguajes de software ya que la
descripcin es secuencial. 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: describe 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.
Mixta: combinacin de todas o algunas de las anteriores.

Formas de Describir un Circuito en VHDL
Divisin del diseo principal en mdulos separados. La modularidad es
uno de los conceptos principales de todo diseo
Entrada de diseos
Simulacin funcional, es decir, comprobaremos que lo escrito en el
punto anterior realmente funciona como queremos, si no lo hace
tendremos que modificarlo
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
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
Secuencia de Diseo en VHDL
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
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)
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
Programacin en el dispositivo. Se implementa el diseo en el
dispositivo final y se comprueba el resultado.
Secuencia de Diseo en VHDL
VHDL fue diseado con base a los principios de la
programacin estructurada. La idea es definir la interfaz
de un mdulo de hardware mientras deja invisible sus
detalles internos. La entidad (ENTITY) en VHDL es
simplemente la declaracin de las entradas y salidas de
un mdulo mientras que la arquitectura (ARCHITECTURE)
es la descripcin detallada de la estructura interna del
mdulo o de su comportamiento
Estructura del Programa en VHDL
En VHDL existen diferentes operadores entre los que
tenemos:
Operadores Definidos en VHDL para los tipos: Lgicos
AND, OR, XOR, NOT, NAND, NOR, XNOR Bit y Booleanos De
relacin =, /=, <, >, >=, <= Integer, Bit y Bit_Vector
Concatenacin & Bit, Bit_Vector y para las cadenas
Aritmticos +, -, *, /, Mod, Rem, Abs, ** Integer* Mod:
Modulo de la divisin. Rem: Resto de la divisin Abs: valor
absoluto.

Operadores en VHDL
Este ejemplo simula un multiplexor de dos entradas. Es un
ejemplo sencillo que muestra como describir un elemento
a partir de su funcionamiento.
Ejemplos en VHDL: Multiplexor
A continuacin se muestra el proceso que describe un biestable D activado
por el flanco de subida del reloj (CLK). Este biestable tiene una seal de reset
asncrona (RST). El dato D se guarda en el biestable hasta el siguiente flanco
de subida del reloj
Ejemplos en VHDL ( Biestable)
Este es un ejemplo de un sistema que contar pulsos de un reloj digital (CLK)
hasta llegar a 1000 y entonces volver a empezar. La inicializacin se
consigue con un reset (RST).
Ejemplos en VHDL ( Contador)

Potrebbero piacerti anche