Sunteți pe pagina 1din 3

Instituto Tecnolgico de

Veracruz
Tabla Comparativa
Microcontroladores
Arquitectura no configurable
Ejecucin de un programa
(firmware)
Lenguaje de bajo nivel (assembler)
Lenguaje de alto nivel (C)
Programar consiste en establecer
las instrucciones para la CPU

DISPOSITIVOS LGICOS
PROGRAMABLES (PLDS)
Equipo No. 5
Barrios Ochoa Joaqun
Crisanto Bez Luis Alfredo
Delgado Chi Mara Daniela
Salinas Ricci Jos Antonio

Introduccin
Un dispositivo lgico programable, o PLD (De sus siglas
Programmable Logic Device), es un dispositivo cuyas
caractersticas pueden ser modificadas y almacenadas
mediante programacin.
La mayora de los PLDs estn formados por una matriz
de conexiones; la cual es una red de conductores
distribuidos en filas y columnas con un fusible en cada
punto de interseccin, mediante la cual se seleccionan
cuales entradas del dispositivo sern conectadas al
arreglo AND cuyas salidas son conectadas al arreglo OR.
Dicha matriz de conexiones esta compuesta
generalmente compuesta por una matriz de compuertas
AND, y una matriz de compuertas OR y en algunos
casos con registros. Las matrices pueden ser fijas o
programables. Con estos recursos se implementan las
funciones lgicas deseadas mediante un software
especial y un programador de dispositivos.

Circuitos bsicos para la mayora de los PLDs

Ejecucin secuencial
Cambia el SW

PLDS

Arquitectura configurable
Configuracin por: Mtodos
tabulares, ecuaciones lgicas.
Lenguajes de alto nivel (HDL
Hardware
Description
Language)
Programar consiste en cambiar
las
conexiones
y
entradas/salidas de la lgica del
dispositivo: se configura
Ejecucin en paralelo
Cambia el HW

La fabricacin de dispositivos de lgica programable se


basa en los siguientes dos conceptos:

FUNCIONALIDAD COMPLETA
La cual se fundamenta en el hecho de que cualquier
funcin lgica se puede realizar mediante una suma de
productos.
CELDAS DE FUNCIONES UNIVERSALES
Tambin denominadas generadores de funciones, son
bloques lgicos configurados para procesar cualquier
funcin lgica, similares en su funcionamiento a una
memoria. En estas celdas se almacenan los datos de
salida del circuito combinacional en vez de implementar
fsicamente la ecuacin booleana.

Cmo funciona una GAL, un CPLD y una


FPGA?
MATRIZ GENRICA PROGRAMABLE
Una Matriz Genrica Programable, GAL (Generic Array
Logic), es una denominacin que utilizaba originalmente
Lattice Semiconductor y que ms tarde se licenci a
otros fabricantes. Un GAL en su forma bsica es un PLD
con una matriz AND reprogramable, una matriz OR fija y
una lgica de salida programable mediante una
macrocelda. Esta estructura permite implementar
cualquier funcin lgica en forma de suma de productos
con un nmero de trminos definido. En los PLDs no
reprogramables la sntesis de las ecuaciones lgicas se
realiza mediante la quema de fusibles en cada punto de
interseccin de los pines de entrada con las compuertas.
En un GAL el fusible se reemplaza por una celda CMOS
elctricamente borrable (EECMOS) y mediante
programacin se activa o desactiva cada celda
EECMOS.
Una celda activada conecta su correspondiente
interseccin de fila y columna, y una celda desactivada
desconecta dicha interseccin. Con esta estructura se
puede aplicar cualquier combinacin de variables de
entrada, o sus complementos, a una compuerta AND
para generar cualquier operacin producto que se desee.

A continuacin se muestran las estructuras tpicas de un


dispositivo GAL y la macrocelda de salida del GAL22V10.

Estructura tpica de un GAL

multiplexor por cada entrada al bloque lgico. Las vas de


interconexin programables son conectadas a las
entradas de un nmero fijo de multiplexores por cada
bloque lgico. Las entradas de seleccin de estos
multiplexores son programadas para permitir que sea
seleccionada nicamente una va de la matriz de
interconexiones por cada multiplexor, la cual se propaga
hacia el bloque lgico. Cabe mencionar que estos
multiplexores no tienen acceso a todas las vas de la
matriz por lo que la rutabilidad se incrementa usando
multiplexores de mayor tamao, permitiendo as que
cualquier combinacin de seales de la matriz de
interconexin pueda ser enlazada hacia cualquier bloque
lgico. Sin embargo, el uso de grandes multiplexores
incrementa el tamao de dispositivo y reduce su
desempeo.

Macrocelda de un GAL22V10

CPLD
Un CPLD (Complex Programmable Logic Device) extiende el
concepto de un PLD a un mayor nivel de integracin ya que
permite implementar sistemas ms eficientes porque utilizan
menos espacio, mejoran la confiabilidad en el circuito, y
reducen costos. Un CPLD se forma con mltiples bloques
lgicos, cada uno similar a un PLD. Los bloques lgicos se
comunican entre s utilizando una matriz programable de
interconexiones lo cual hace ms eficiente el uso del silicio y
conduce a un mejor desempeo. A continuacin se explican
brevemente las principales caractersticas de la arquitectura de
un CPLD.
MATRIZ DE INTERCONEXIONES
PROGRAMABLES
La matriz de interconexiones programables,
PIM Programmable Interconect Matrix (vase la figura
2.4), permite unir los pines de entrada/salida a las
entradas del bloque lgico, o las salidas del bloque lgico
a las entradas de otro bloque lgico, o inclusive a las
entradas del mismo bloque. La mayora de los CPLDs
usan una de dos configuraciones para esta matriz:
interconexin mediante arreglo o interconexin
mediante multiplexores. La primera se basa en una
matriz de filas y columnas con una celda EECMOS en
cada interseccin. Al igual que en el GAL esta celda
puede ser activada para conectar/desconectar la
correspondiente fila y columna. Esta configuracin
permite una total interconexin entre las entradas y
salidas de los bloques lgicos.
Sin embargo, estas ventajas provocan que disminuya el
desempeo del dispositivo adems de aumentar el
consumo de energa y el tamao del componente. En la
interconexin mediante multiplexores, existe un

Arquitectura Bsica de un CPLD

BLOQUES LGICOS
Un bloque lgico es muy similar a un PLD, cada uno de
ellos poseen generalmente una matriz de compuertas
AND, una matriz de compuertas OR y una configuracin
para la distribucin de los productos en las diferentes
macroceldas del boque.
El tamao del bloque lgico es una medida de la
capacidad del CPLD, ya que de esto depende el tamao
de la funcin booleana que pueda ser implementada
dentro del bloque. Los bloques lgicos usualmente tienen
de cuatro a veinte macroceldas. La cantidad de bloques
lgicos que puede poseer un CPLD depende de la familia
y fabricante del dispositivo.

retroalimentar un producto hacia otra macrocelda y con


esto disminuye la velocidad de trabajo del circuito. La
forma en que son distribuidos los productos repercute en
la flexibilidad que proporciona el dispositivo para el
diseador. Adems, que estos esquemas proporcionan
tambin flexibilidad para los algoritmos del programa de
sntesis que es el que finalmente selecciona la mejor
forma en que deben ser distribuidas las ecuaciones
lgicas en el componente.

Figura 2.5 Estructura de un Bloque Lgico en


dispositivos de las familias MAX340 y MAX5000

DISTRIBUCIN DE PRODUCTOS
Existen pequeas diferencias en cuanto a la distribucin
de los productos en un CPLD, esto depender de la
familia del dispositivo y del fabricante. Obviamente el
tamao de las sumas sigue siendo el factor ms
importante para la implementacin de funciones lgicas.
Pero cada fabricante distribuye los productos de diferente
forma.
La familia MAX de CPLDs que fue desarrollada por
Cypress Semiconductor conjuntamente con Altera
Corporation, siendo los primeros en sacar al mercado
unan familia de CPLDs, Altera la llam MAX5000 y
Cypress por su parte la clasific como MAX340, la
distribucin de productos no es igual a la de un PLD. En
un dispositivo como el 22V10 tenemos que la suma de
productos es fija por cada macrocelda -8, 10, 12, 14 o 16
productos-, en la familia MAX se colocan 4 productos por
macrocelda los cuales pueden ser compartidos con otras
macroceldas. Cuando un producto puede ser nicamente
utilizado por una macrocelda se le conoce como termino
- producto dirigido, y cuando estos pueden ser
utilizados por otras macroceldas se le llama termino
producto compartido. Mediante estos productos
compartidos se mejora la utilizacin del dispositivo, sin
embargo, esto produce un retardo adicional al tener que

Distribucin de Productos en
dispositivos de las familias MAX340 y MAX5000
MACROCELDAS
Las macroceldas de un CPLD son similares a las de un
PLD. Estas tambin estn provistas con registros, control
de polaridad, y buffers para utilizar salidas con alta
impedancia. Por lo general un CPLD tiene macroceldas
de entrada/salida, macroceldas de entrada y
macroceldas internas u ocultas (buried macrocells), en
tanto que un 22V10 tiene solamente macroceldas de
entrada/salida. Una macrocelda interna es similar a una
macrocelda de entrada/salida, slo que esta no puede
ser conectada directamente a una terminal del
dispositivo. La salida de una macrocelda

S-ar putea să vă placă și