reporte de investigacion de los pld´s
TRANSCRIPT
-
8/18/2019 Reporte de Investigacion de los PLD´s
1/21
UNIVERSIDAD TECNOLOGICA DEL VALLE DEL
MEZQUITAL
REPORTE DE investigación
ING. Mecatrónica
Materia: dispositivos digitales
Catedrático:
Cuatrimestre:
Grupo:
INTEGRANTES:
-
8/18/2019 Reporte de Investigacion de los PLD´s
2/21
Contenido
Introducción a los PLD ............................................................................................................................ 3
Simbología adoptada en los PLD´S ...................................................................................................... 4
Estado del Arte de los PLD´s ............................................................................................................... 4
Clasificación entre la arquitectura de los PLD´s ................................................................................. 7
PLD’s (PAL, GAL, CPLD, FPGA) ................................................................................................................. 8
PAL (Programmable Array Logic) ........................................................................................................ 8
GAL (Generic Array Logic) ................................................................................................................... 8
CPLD (Complex Programmable Logic Devices) ................................................................................... 9
Las FPGAs (Field Programmable Gate Arrays). ................................................................................. 11
Arquitectura de los FPGAS. ........................................................................................................... 11
ARQUITECTURA DE LOS PLDS ............................................................................................................... 13
Tipos de Memorias ............................................................................................................................... 15
APLICACIÓN DE LOS PLD´S .................................................................................................................... 16
ENTORNO DE PROGRAMACIÓN CON VHDL. ......................................................................................... 16
Elementos sintácticos de VHDL ......................................................................................................... 16
EJEMPLOS DE PROGRAMACIÓN EN VHDL ............................................................................................ 17
Referencias bibliográficas ..................................................................................................................... 21
-
8/18/2019 Reporte de Investigacion de los PLD´s
3/21
Introducción a los PLD
Los dispositivos lógicos programables o PLD por sus siglas en inglés (Programmable
Logic Device) son circuitos integrados que ofrecen a los diseñadores en un solo chip,
un arreglo de compuertas lógicas y flip-flop’s, que pueden ser programados por el
usuario para implementar funciones lógicas; y así, una manera más sencilla de
reemplazar varios circuitos integrados estándares o de funciones fijas. Las ventajas
que trae con respecto a los circuitos integrados de funciones fijas (series 74XX y
40XX) son variadas, entre ellas las que considero más importantes son:
Los PLD’s representan menor costo para los fabricantes.
Pueden reemplazar funciones de otros dispositivos lógicos.
Reducción de espacio en las tarjetas de circuito impreso.
Simplificación del alambrado entre unos chips y otros.
Disminución en los requerimientos de potencia (por consiguiente menor
consumo de energía).
Realización de aplicaciones especiales no encontradas en circuitos integrados
de funciones fijas.
Puede reflejarse menor costo para el usuario al ver las ventajas de tener menorcantidad de circuitos integrados; por consiguiente, procesos de ensamblado
más rápidos, menor probabilidad de que puedan ocurrir fallas, así como
menores procedimientos en la detección de fallas cuando estas se presenten.
Un PLD típico está compuesto de arreglos de compuertas lógicas, uno de ellos a base
de compuertas AND al que se le denomina Plano AND y el otro de compuertas OR,
denominado Plano OR; estos pueden ser programables y dependiendo del plano olos planos que lo sean, será la clasificación que reciba el PLD.
Las variables de entrada (que vienen de las terminales externas del dispositivo) tienen
interconexiones hacia uno de los planos, a través de compuertas con salidas
complementarias (es decir con una salida inversora y una no-inversora); y salidas de
los planos, conectadas a las terminales externas del dispositivo, por elementos
lógicos como pueden ser: inversores, compuertas OR y flip-flop’s; además, en
algunos casos existe retroalimentación de las salidas hacia uno de los planos, para
tomarlas como entradas nuevamente ( aplicación utilizada frecuentemente en el caso
-
8/18/2019 Reporte de Investigacion de los PLD´s
4/21
de lógica secuencial ). La programación se lleva a cabo por medio de conexiones
fusibles; de tal forma que en una compuerta OR, una entrada con conexión fusible
“Fundida o Quemada” (fusible abierto) funcione como un cero lógico y una conexión
intacta como el valor de la(s) variable(s) de entrada.
Simbología adoptada en los PLD´S
Los fabricantes han sustituido el símbolo del inversor y del no-inversor en uno solo;pero, con dos salidas complementadas. Han simplificado las líneas de entrada a unacompuerta AND u OR, por medio de una sola línea. Las conexiones entre compuertasse representan mediante una “ X ” o un punto. Las “ X ” se encuentran en el Planoprogramable y describen una conexión fusible intacta. En el Plano fijo, un puntorepresenta una conexión fija y que por supuesto, ya no puede cambiarse. La ausencia
de estos dos símbolos en un cruce de líneas significa que no existe conexión entreellas.
Estado del Arte de los PLD´s
1948: Se inventa el transistor de contacto puntual en los Laboratorios Bell Telephone
en Estados Unidos, resultado de una investigación sobre semiconductores llevada acabo por Walter Brattain, John Bardeen y William Shockley, quienes recibirían el
premio Nobel por su enorme contribución en 1956.
1951: Se logra un transistor con una estructura como la que se conoce actualmente.
1957: John Wallmark de RCA patenta el FET ( Field Effect Transistor ).
1959: Se concibe el primer Circuito Integrado Digital en la compañía Texas
Instruments y es
Jack Kilby quién desarrolla un Flip-Flop sobre una base de substrato de Germanio y
contenía solo cuatro transistores.
-
8/18/2019 Reporte de Investigacion de los PLD´s
5/21
1961: Se presenta la primera familia de Circuitos Integrados Digitales comerciales,
denominada
R.T.L. ( Resistor - Transistor - Logic ) y que fue introducida por Fairchild
Semiconductor bajo la serie 900, está familia operaba a 3.2 Voltios, poco tiempo
después nace otra familia denominada D.T.L. ( Diode - Transistor - Logic ).
1962 Aparece la familia T.T.L. ( Transistor - Transistor - Logic ), con características
como el de ser más rápida que sus predecesoras, los primeros trabajos hechos en
TTL los realizó James Buie de Pacific Semiconductor ( hoy subsidiaria de TRW ). En
ese mismo año Steven Hofstein y Frederick Heiman de RCA, desarrollan el MOSFET
y a finales del mismo, fabrican el primer Circuito Integrado MOS ( Metal - Oxide -
Silicon ) que contenía 16 transistores sobre una pastilla de silicio de 0.063 mm por
lado.
1963 La compañía RCA producía un Circuito Integrado con cientos de MOSFET´S en
un área muy reducida, al mismo tiempo nacían familias como la MOS de canal N y de
canal P, NMOS y PMOS respectivamente y así como la CMOS ( Complementary MOS
). La CMOS se impuso con el tiempo bajo la serie 40XX lanzada por RCA. Y poco
tiempo después la 74CXX de National Semiconductor. A mediados de los 60´s surge
el primer PLD, una matriz de diodos configurables y fusibles desarrollado por Harris
Semiconductor (conocida en ese tiempo como Radiation, Inc. ).
1967 Fairchild lanza al mercado una ROM de 64 bits con tecnología MOS.
1969 Nace el primer PLA, desarrollado por IBM y descrito como ROAM ( Read – Only
Associative - Memory ).
1970 La compañía Harris crea la PROM, que combinaba la tecnología de fusibles de
nicromo con una simplificación en la estructura de la ROM. En este mismo año Texas
Instruments fabrica el TMS 200 y era un Circuito Integrado de máscara programable
basado en el ROAM de IBM, este manejaba diecisiete entradas y ocho salidas,
contenía ocho Flip - Flops JK como elementos de memoria.
1971 Collins Radio ofrece otro PLA de máscara programable denominado CRC
3506/7, similar al TMS 200. Intel hace una innovación tecnológica al introducir la
EPROM borrable con rayos UV. General Electric abre una puerta más con una nueva
tecnología PROM, desarrollada por David Greer, donde la estructura consistía de un
Plano-Or y señales que van hacia un Plano-And; permitiendo el uso de lógica de
multinivel sin desperdicio de pines I/O.
-
8/18/2019 Reporte de Investigacion de los PLD´s
6/21
1971 Al mismo tiempo General Electric hace experimentos con PLD´s de tecnología
MOS, usando las características de los PLA y con la tecnología de borrado con rayos
UV. En junio Intel ofrece al mercado el primer microprocesador MOS ( el 4004, de 4
bits ) que contenía 2300 transistores.
1972 MOSTEK Corporation lanza la primera Memoria de Alta Densidad (una RAM
dinámica de 1024 bits e Intel ofrece los primeros microprocesadores de 8 bits ( el
8008 y el 8080 ).
1973 National Semiconductor crea su propio PLA de máscara programable similar al
TMS 200 pero con catorce entradas y ocho salidas sin elementos de memoria. El
mérito a este dispositivo consistió en su menor complejidad en el diseño, mostrando
así un avance en la nueva tecnología. Este dispositivo fue conocido como
DM7575/DM8575.
1974 Monolithic Memories fabrica un dispositivo denominado PALA ( Programable
Associative Logic Array ) bajo el número de parte MMT 5760/6760 implementaba
multiniveles y circuitos secuenciales de más de 100 compuertas e incorporó bajo
acuerdo de General Electric innovaciones en el dispositivo de máscara programable.
1975 Intersil anuncia el IM5200 un FPLA; poco después, Signetics hace lo mismo con
el 82S100 que logró encabezar la carrera de los PLD´s durante un tiempo.
1978 En el verano de este año nace el dispositivo PAL, como un proyecto de MMI
encabezado por John Birkner, en el que se pretendían satisfacer varias necesidades
del mercado, entre ellas las de reemplazar la lógica estándar, mejorar los tamaños y
la velocidad de los ya existentes; bajo esta idea los PAL invaden el mercado. El PAL
que conocemos actualmente se basa en un diseño de H.T. Chua. MMI ofrece soporte
para el manejo de los nuevos dispositivos en el “ PAL Handbook “ escrito por John
Birkner y que en el mismo se acompañaba de un programa hecho en Fortran para
ayudar a programar los dispositivos.
-
8/18/2019 Reporte de Investigacion de los PLD´s
7/21
Clasificación entre la arquitectura de los PLD´s
ROM: Mask Read-Only Memory (Memoria de Máscara Programable de Solo Lectura).
Dispositivo programado solamente por el fabricante y como se muestra en el esquema
anterior este se subdivide en tres partes que son:
PROM: Programmable Read-Only Memory (Memoria Programable de Solo
Lectura). Dispositivo programado por el usuario y no borrable o reprogramable.
EPROM: Erasable Programmable Read-Only Memory (Memoria Programable
y Borrable de solo Lectura ); este tipo de Memorias se borran Mediante Luz
ultravioleta; con la ventaja de que puede ser programada por el usuario.
EEPROM: Electrically Erasable Programmable Read-Only Memory (Memoria
Programable y borrable Eléctricamente de Solo Lectura); al igual que la anterior
está puede ser programada por el usuario.
-
8/18/2019 Reporte de Investigacion de los PLD´s
8/21
PLD’s (PAL, GAL, CPLD, FPGA)
PAL (Programmable Array Logic)
PAL: Programmable Array Logic (Lógica en un Arreglo Programable), la arquitectura
de éste PLD está compuesta por AND programable y el OR fijo. Este dispositivo es
el intermedio entre una PROM y un PLA. Al revés de las PROM, la parte programable
es la matriz AND
GAL (Generic Array Logic)Las GAL (Generic Array Logic) son variaciones de las PAL, más sofisticados (EE)
Todos estos dispositivos, aparecen en el mercado con una variedad de opciones:
inversión de las salidas, salidas triestado, salidas registradas, etc. Además de tener
un número más grande de entradas y salidas.
La GAL se forma con una matriz AND reprogramable y una matriz OR fija, con una
salida lógica programable. La figura siguiente muestra el diagrama de bloques de una
GAL. Esta estructura permite implementar cualquier expresión lógica suma de
productos con un número de variables limitado.
-
8/18/2019 Reporte de Investigacion de los PLD´s
9/21
En la figura siguiente se ilustra la estructura básica de una GAL con dos variables de entrada y una
de salida.
CPLD (Complex Programmable Logic Devices)Las PAL y PLA son útiles para implementar una gran variedad de pequeños/medianos
circuitos digitales (Entradas más salidas que no superen el número de 32). Cuando
-
8/18/2019 Reporte de Investigacion de los PLD´s
10/21
se requiere mayor cantidad de entradas/salidas se recurre a un CPLD (Complex
Programmable Logic Devices).
Un CPLD comprende múltiples bloques en un único chip con recursos de cableado
interno para conectar los bloques. Cada bloque es similar a una PLA o PAL.
-
8/18/2019 Reporte de Investigacion de los PLD´s
11/21
Las FPGAs (Field Programmable Gate Arrays).Son dispositivos semiconductores reprogramables, basados en matrices de bloques
de lógica configurables (conocidos como CLBs) cuyas conexiones se pueden
modificar según las necesidades del diseñador.
Esta capacidad de reprogramación, unida a un proceso de desarrollo y fabricación
menos costoso y largo que el de otros dispositivos otorga a las FPGAs una posición
privilegiada para una gran variedad de aplicaciones frente a otros circuitos integrados.
En la actualidad las FPGAs está implantada en muchos sectores de la industria, tales
como procesamiento digital de señales, sistemas militares, prototipo de la
funcionalidad de otros dispositivos electrónicos (por ejemplo un ASIC), etc.
Arquitectura de los FPGAS.
Para poder hablar de las características y las ventajas de una FPGA frente a otros
dispositivos es necesario describir la arquitectura interna de una FPGA.
Básicamente, una FPGA consiste en:
Una matriz de bloques de lógica configurables (CLB): bloques lógicos cuyos
parámetros se pueden modificar de forma que presente diferentes funcionalidades.
Cada CLB consiste, de forma genérica, en varias tablas de LUTs (look-up tables, o
tablas de consulta) cuyas salidas están multiplexadas y unos parámetros de
configuración de dicho CLB. El diseño de un CLB varía de un fabricante a otro. En
la figura puede verse un CLB de una XC4000 de Xilinx:
-
8/18/2019 Reporte de Investigacion de los PLD´s
12/21
Una matriz de rutado, encargada de conectar los CLBs entre ellos, y a su vez
éstos con las celdas de entrada y salida.
Celdas de entrada y salida (IOB): su misión es comunicar la lógica interna de la
FPGA con el exterior. No sólo los bloques de lógica son configurables, sino que
tanto la matriz de rutado como las celdas de entrada y salida son programables,
otorgándole a las FPGAs de una gran flexibilidad a la hora de ajustarse a lasespecificaciones de cada diseño.
Las FPGAs son un producto intermedio entre los dispositivos de lógica programable
(PLD), y los circuitos integrados de aplicación específica (ASIC).
Los PLD’s surgieron por la necesidad de disponer de circuitos cuya funcionalidad
no estuviera definida de forma estática, como un simple conjunto de puertas lógicasconectadas entre sí. Esta funcionalidad se modifica cuando se programa el
dispositivo.
Los primeros dispositivos PLD fueron las matrices de lógica programable (PLA),
que aparecieron en los años 70. Los PLD’s eran chips programables que contenían
una serie de puertas AND y OR conectadas por unas matrices de conmutación.
Presentaban la desventaja de que podían ser programados una única vez,
presentando desde el momento de su programación la misma funcionalidad.
-
8/18/2019 Reporte de Investigacion de los PLD´s
13/21
ARQUITECTURA DE LOS PLDSLas entradas del PLD entran al arreglo lógico los cuales son hechos de columnas y
filas (en la figura se muestra tal arreglo) cada par de columnas representa la entrada
negada o complementada y la misma entrada sin negar, cada fila constituye un
término AND. Las conexiones lógicas se establecen entre diferentes columnas y filas
en la matriz para determinar cual combinación de entradas llevaran al termino AND
a un nivel alto. Más de un término AND alimenta una compuerta OR. La salida es la
suma de productos.
-
8/18/2019 Reporte de Investigacion de los PLD´s
14/21
-
8/18/2019 Reporte de Investigacion de los PLD´s
15/21
Tipos de Memorias
ROM: Mask Read-Only Memory (Memoria de
Máscara Programable de Solo Lectura). En un
circuito combinacional que genera 2 a la n
miniterminos de n variables en su plano AND.
A pesar de tener solo 2 niveles cuando tiene
muchas entradas y salidas tienden a ser lentas
las comparaciones con los circuitos lógicos.
PROM: Programmable Read-Only Memory
(Memoria Programable de Solo Lectura),
Dispositivo el cual es programado por el
usuario y no borrable o reprogramable.
EPROM: Erasable Programmable Read-Only
Memory (Memoria Programable y Borrable de
Solo Lectura); este tipo de Memorias se borran
Mediante Luz ultravioleta; con la ventaja de que
puede ser programada por el usuario.
EEPROM: Electrically Erasable Programmable
Read-Only Memory (Memoria Programable y
Borrable Eléctricamente de Solo Lectura); al
igual que EPROM puede ser programada por el
usuario.
-
8/18/2019 Reporte de Investigacion de los PLD´s
16/21
APLICACIÓN DE LOS PLD´SLa flexibilidad y programabilidad de los PLD’s hacen que su diseño con ellos sea
mucho más rápido que diseñar con lógica discreta. Esto es, se puede utilizar el PLD
para implementar la mayoría de las funciones hechas con los cientos de dispositivos
de la familia lógica "7400". También cabe recalcar que toman menos espacio sobre
el circuito impreso que con los dispositivos discretos.
Una vez tomada la decisión de cambiar de lógica discreta a los PLD´s. Hay que
escoger PLD's que sean compatibles con los otros dispositivos que se estén
utilizando. Hay que tomar en consideración la potencia que se requiere, ya que varía
la potencia necesaria de un PLD a otro y otro factor importante es su estabilidad.
ENTORNO DE PROGRAMACIÓN CON VHDL.
VHDL, viene de VHSIC (Very High Speed Integrated Circuit) Hardware Descripción
Lenguaje. VHDL es un lenguaje de descripción y modelado diseñado para describir
(en una forma que los humanos y las maquinas puedan leer y entender) la
funcionalidad y la organización de sistemas hardware digitales, placas de circuitos, y
componentes.
VHDL fue desarrollado como un lenguaje para el modelado y simulación lógica
dirigida por eventos de sistemas digitales, y actualmente se lo utiliza también para la
síntesis automática de circuitos. El VHDL fue desarrollado de forma muy parecida al
ADA debido a que el ADA fue también propuesto como un lenguaje puro pero que
tuviera estructuras y elementos sintácticos que permitieran la programación de
cualquier sistema hardware sin limitación de la arquitectura. El ADA tenada una
orientación hacia sistemas en tiempo real y al hardware en general, por lo que se lo
escogido como modelo para desarrollar el VHDL.
Elementos sintácticos de VHDLComentarios: Cualquier linea que empieza por dos guiones es un comentario.
Identificadores: Son cualquier cosa que sirve para identificar variables, señales,
nombres de rutina, etc. Puede ser cualquier nombre compuesto por letras incluyendo
-
8/18/2019 Reporte de Investigacion de los PLD´s
17/21
el símbolo de subrayado \”. Las mayúsculas y minúsculas son consideradas iguales,
Saque JOSE y José representan el mismo elemento.
Números: Cualquier número se considera que se encuentra en base 10. Se admite
La notación científica convencional para números en coma flotante. Es posible
Poner números en otras bases utilizando el símbolo del sostenido \#". Ejemplo:
2#11000100# y 16#C4# representan el entero 196.
Caracteres: Es cualquier letra o carácter entre comillas simples: 'l','3','t'.
Cadenas: Son un conjunto de caracteres englobados por comillas dobles: "Esto es
Una cadena".
Cadenas de bits: Los tipos bit y bit vector son en realidad de tipo carácter y matriz de
caracteres respectivamente.
EJEMPLOS DE PROGRAMACIÓN EN VHDL
-
8/18/2019 Reporte de Investigacion de los PLD´s
18/21
Ejemplo 2 (comparadores)
Diseñe un comparador de dos números (A) y (B), cada número está formado 2 bits (A1,A0) y
(B1 B0), la salida del comparador también es de 2 bits (Z1, Z0).
a) Realizar tabla de verdad
b) Obtener la función mínima utilizando mapas de K.
c) Programar en VHDL {if-then-else}
Si:
A=B entonces Z= 11
A
-
8/18/2019 Reporte de Investigacion de los PLD´s
19/21
A>B entonces Z= 10
a)
b)
F=C’B+C’A+D’A+BD’+A’C’D’+AD’
F= A’D+A’C+B’D+B’C+ACD
A1 A0 B1 B0 Z1 Z0
0 0 0 0 1 1
0 0 0 1 0 1
0 0 1 0 0 1
0 0 1 1 0 1
0 1 0 0 1 0
0 1 0 1 1 1
0 1 1 0 0 1
0 1 1 1 0 1
1 0 0 0 1 0
1 0 0 1 1 0
1 0 1 0 1 1
1 0 1 1 0 1
1 1 0 0 1 0
1 1 0 1 1 0
1 1 1 0 1 0
1 1 1 1 1 1
1 0 0 0
1 1 0 1
1 1 1 1
1 1 0 1
1 1 1 1
0 1 1 1
0 0 1 0
0 1 1 1
-
8/18/2019 Reporte de Investigacion de los PLD´s
20/21
c) Programación VHDL.
//Programación en VHDL
Library ieee;
Use ieee.std_logic_1164.all;
Entity comp is
Port (A, B: in std_logic_vector (1down Ǿ));
Z: out std_logic_vector (1 down Ǿ);
End comp;
// declaracion de arquitectura
Architecture funcionamiento of comp is
Begin
Process
Begin
If (A=B) then
Z= “11”;
If (A
-
8/18/2019 Reporte de Investigacion de los PLD´s
21/21
Referencias bibliográficas
VHDL Maxnez.pdf
Lenguaje para descripción y modelado de circuitos en vhdl.pdf
QUE SON LOS PLD´s? pdf
Lenguaje VHDL EUP Teruel.pdf
Introducción FPGAs.pdf
Dispositivos Lógicos Programables (PLD’s). Pdf
CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIERIAS PLD´S.pdf