You are on page 1of 12

Diseo Lgico Hoy Da

La mayor parte de los diseos de nivel de sistema incorporan diversos dispositivos, como son las
memorias RAM, ROM, controladores, procesadores, etc., que se interconectan mediante gran cantidad
de dispositivos lgicos de propsito general, frecuentemente denominados lgica de unin ("glue
logic"). En los ltimos aos, los dispositivos PLD (Programmable Logic Device) han comenzado a
reemplazar muchos de los antiguos dispositivos de unin, SSI y MSI.
El uso de dispositivos PLD proporciona una reduccin en el nmero de circuitos integrados. Por
ejemplo, en los sistemas de memoria de las computadoras, los PLD pueden utilizarse para decodificar
direcciones de memoria y generar seales de escritura en memoria.
En muchas aplicaciones, los PLD y, en concreto, las matrices lgicas programables (PAL, Programmable
Array Logic) y las matrices lgicas genricas (GAL, Generic Array Logic) pueden emplearse para
reemplazar dispositivos lgicos SSI y MSI, consiguiendo con ello una reduccin de etapas y de los
costos.
Por las razones anteriores el diseo lgico hoy da se realiza con PLDs. Un PLD est formado por una
matriz de puertas AND y puertas OR, que se pueden programar para conseguir funciones lgicas
especficas.
El diseo con PLDs seala las siguientes ventajas en relacin a la lgica cableada:
Economa.
Menos espacio en los impresos.
Se mantiene la reserva del diseo.
Se requiere tener menos inventarios que con circuitos estndar SSI, MSI.
Menos alambrado.
Tipos de PLD
Los PLD se dividen en dos clases:
1. PLDs combinatorios.
Constituidos por arreglos de compuertas AND OR. El usuario define las interconexiones y en
esto consiste la programacin.
2. PLDs secuenciales.
Adems de los arreglos de compuertas, incluyen flip flops para programar funciones
secuenciales como contadores y mquinas de estado.
Estructura de los Dispositivos Lgicos Programables Bsicos
Los PLD se clasifican de acuerdo con su estructura, la cual es bsicamente la ordenacin funcional de
los elementos internos que proporciona al dispositivo sus caractersticas de operacin especficas.

Memoria programable de slo lectura PROM (PROM, Programable Read Only Memory)
La PROM est formada por un conjunto fijo (no programable) de puertas AND conectadas como
decodificador y una matriz programable OR. La PROM se utiliza como una memoria direccionable y no
como un dispositivo lgico (Ver Fig 4.1.1.).

Figura 4.1.1. Diagrama de bloques de una PROM (Programmable Read-Only Memory).
Arreglo Lgico Programable PLA (PLA, Programmable Logic Array)
El PLA es un PLD formado por una matriz AND programable y una matriz OR programable. La PLA ha
sido desarrollada para superar algunas de las limitaciones de las memorias PROM (Ver Fig 4.1.2.).

Figura 4.1.2. Diagrama de bloques de una PLA (Programmable Logic Array).
Los dispositivos lgicos programables como las PAL y las GAL se vern en la siguiente leccin.
En la actualidad existen soluciones con Dispositivos Lgicos programables complejos que combinan
arquitectura superior y software de gran alcance, ofreciendo un nivel sin precedente en la flexibilidad
del diseo.

Herramientas Computacionales Utilizadas en las Metodologias de Diseo Descendentes (Top-Down)
En el diseo Top - Down se captura una idea en un nivel de abstraccin alto y se implementa a partir
de sta descripcin, en un proceso hacia abajo incrementando el nivel de detalle segn lo requerido.
La figura 4.3.1. muestra la forma de diseo Top- Down. En el primer nivel de la figura se aprecia un
sistema inicial dividido en mdulos, los cuales se dividen sucesivamente hasta llegar a los
componentes bsicos del circuito o elementos primarios. Estos elementos se enmarcan en un
cuadrado con la lneas ms gruesa. Los mtodos de diseo se basan en programas computacionales
conocidos como herramientas de automatizacin del diseo electrnico (EDA Tools), las cuales
sobresalen por ofrecer una reduccin significativa en el tiempo del diseo.





Figura 4.2.1. Metodologia De Diseo Top - Down
Las herramientas siguen el diagrama de flujo de la figura 4.4.2.
Este proceso se resume en los siguientes pasos:
1. Planteamiento de las especificaciones.
2. Entrada del diseo:En esta etapa se realiza una descripcin del circuito, para la cual existen
varias alernativas,
a. Captura Esquemtica: Dibujo del circuito mediante interfaz grfica, puede ser un
diagrama de bloques.
b. Mediante lenguajes de descripcin HDL como VHDL, Verilog, Abel y CUPL.
c. Diagramas de transicin de estados.
d. Formas de onda Tablas de verdad.
3. Simulacin HDL (Opcional): Simula el comportamiento del circuito que se acaba de describir
antes de la sntesis.
4. Sntesis lgica: Consiste en tomar la descripcin HDL y a partir de ella, generar y simplificar las
ecuaciones lgicas correspondientes al circuito descrito.
Figura 4.2.2. Diagrama de Flujo con herramientas EDA
5. Simulacin funcional: Simula las ecuaciones lgicas, sin tener en cuenta los retardos.
6. Implementacin del diseo: Los pasos a seguir dependen del tipo de PLD que se est utilizando
en el diseo. Trazado del mapa, Colocacin y enrutamiento, Creacin del archivo para la
programacin del dispositivo. Revisa si el circuito se adapta al chip; No. salidas, No. de
trminos productos por salida.
7. Simulacin temporal: Despus de la implementacin ya se conoce como queda programado el
circuito y se puede realizar una simulacin teniendo en cuenta los retardos.
8. Programacin: La implementacin genera un archivo que indica el estado de las conexiones.
Este archivo se usa para programar (o quemar el chip).
Ventajas del Diseo Top - Down
La metodologa de diseo descendente disminuye el tiempo de diseo. Por medio de los programas
CAD para diseo de impresos se ha logrado disminuir el tiempo a 1/10 parte de lo que se gastaba
antes, cuando esto se hacia antes manualmente. En la realizacin de las simulaciones no es necesario
slo un prototipo, ya que este generalmente funciona; antes se deba repetir el proceso 2 o 3 veces
hasta que el prototipo funcionara.
Las ltimas herramientas de diseo electrnico permiten implementar de forma automtica la
metodologa de diseo Top - Down.
Lenguajes de Descripcin de Hardware (HDL - Hardware Description Language)
Los lenguejes HDL permiten realizar el primer paso de la metodologa del diseo descendente. Se
describen en un lenguaje de alto nivel el comportamiento requerido del circuito a disear. Esta
descripcin se puede hacer mediante tablas de verdad, lista de transiciones de estados, ecuaciones
lgicas. Con base a la descripcin, el programa realiza los siguientes pasos:
1. Sintetiza y simplifica las ecuaciones lgicas.
2. Simula las ecuaciones.
3. Sintetiza el circuito lgico.
4. Simula el circuito lgico.
5. Sintetiza el archivo para programar un PLD.
Entre otras ventajas, se pueden mencionar las siguientes:
1. EL programa HDL es el mismo as cambie la tecnologa, Ejemplo: FPGA, transistores 2.5m ., 1.2
m .
2. Facilita la comunicacin entre los diseadores.
3. Facilita el uso de las partes de un diseo en otros (Reutilizacin).
4. Es posible verificar el funcionamiento del sistema dentro del proceso de diseo sin necesidad
de implementar el circuito.
5. Las simulaciones del diseo, antes de que este sea implementado, permiten probar la
arquitectura del sistema para tomar decisiones en cuanto a cambios en el diseo.
6. Las herramientas de sntesis tienen la capacidad de convertir una descripcin hecha en un
HDL, VHDL por ejemplo, a compuertas lgicas y adems, optimizar dicha descripcin de
acuerdo a la tecnologa utilizada.
7. Las descripciones en un HDL proporcionan documentacin de la funcionalidad de un diseo
independientemente de la tecnologa utilizada.
8. Una descripcin realizada en un HDL es ms fcil de leer y comprender que los nestlist o
circuitos esquemticos.
9. Un circuito hecho mediante una descripcin en un HDL puede ser utilizado en cualquier tipo
de dispositivo programable capaz de soportar la densidad del diseo. Es decir, no es necesario
adecuar el circuito a cada dispositivo porque las herramientas de sntesis se encargan de ello.
Lenguajes HDL ms populares
En la actualidad existen diversas herramientas de diseo para integrar sistemas de gran complejidad.
Los lenguajes de descripcin de hardware constituyen una opcin de diseo de soluciones de sistemas
electrnicos.
ABEL
El lenguaje ABEL es el ms utilizado en los PLDs. El lenguaje ABEL facilita la programacin de PLDs
combinatorios y secuenciales. Un circuito en ABEL se puede describir en forma de ecuacin lgicas,
tabla de verdad o en transicin de estados.
El programa ABEL cumple los siguientes pasos:
1. Verifica si existen errores en la sintaxis del programa fuente.
2. Simplifica o sintetiza las ecuaciones segn sea el caso.
3. Simula las ecuaciones.
4. Puede escoger el dispositivo que mejor se adapte, o verificar si el dispositivo especificado s se
adapta a la aplicacin.
5. Genera el archivo JEDEC para la programacin del PLD.
VHDL
El VHDL es un lenguaje de descripcin y modelado diseado para descibir en forma entendible la
funcionalidad y la organizacin del hardware de los sistemas digitales y otros componentes. VHDL
maneja una sintaxis amplia y flexible. El lenguaje VHDL permite el diseo Top -Down o en otras
palabras; modelar los bloques de alto nivel, simularlos y adecuar la funcionalidad en alto nivel antes de
llegar a los niveles bajos de abstraccin en la implementacin del diseo.
CUPL
Herramientas para la Automatizacin del Diseo Electrnico (EDA Tools)
Las herramientas EDA ("Electronic Design Automation") son las herramientas de hardware y software
utilizadas en el diseo de sistemas electrnicos.
El diseo de hardware tiene un inconveniente que no existe en el desarrollo de software. El problema
es el alto costo en el ciclo de diseo, desarrollo del prototipo, pruebas y reinicio del ciclo. La etapa de
costo ms elevado es el prototipo. Por necesidad del mercado, se impone la reduccin de costos en
esta etapa, con el fin de incluir la fase de desarrollo del prototipo al final del proceso, evitando la
repeticin de varios prototipos, razn por la cual se encarece el ciclo. La introduccin de la fase de
simulacin y verificacin de circuitos utilizando herramientas EDA, hace no necesaria la comprobacin
del funcionamiento del circuito por medio de la implementacin fsica del prototipo.
Las herramientas EDA estn presentes en todas las fases del ciclo de diseo de circuitos. Primero en la
fase de generacin del sistema que puede representarse en un diagrama esquemtico, en bloques o
de flujo.
Se encuentra tambin la fase de simulacin y comprobacin de circuitos, donde diferentes
herramientas permiten verificar el funcionamiento del sistema. Estas simulaciones pueden ser de
eventos, funcionales, digitales o elctricas, de acuerdo al nivel requerido. Despus estn las
herramientas EDA utilizadas en la sntesis y programacin de circuitos digitales en dispositivos lgicos
programables. Existen, adems, las herramientas EDA orientadas a la fabricacin de circuitos. En el
caso del diseo de hardware estas herramientas sirven para la realizacin de PCBs ("Printed Circuit
Boards" o placas de circuito impreso), o para desarrollar circuitos integrados de aplicacin especifica
como ASICs ("Aplication Specific Integrated Circuits").
Las principales caractersticas y finalidad de algunas herramientas EDA que intervienen en el diseo de
circuitos son:
1. Lenguajes de Descripcin de Circuitos.
2. Diagramas Esquemticos.
3. Grafos y Diagramas de Flujo.
4. Simulacin de Eventos.
5. Simulacin Funcional.
6. Simulacin Digital.
7. Simulacin Elctrica.
8. Diseo de PCBs.
9. Diseo de Circuitos Integrados.
10. Diseo con Dispositivos Programables.
Para la automatizacin del diseo electrnico se utilizan herramientas EDA. Ventajas de la
metodologia de diseo que usa herramientas EDA
Entre las ventajas de la metodologia de diseo con el empleo de herramientas EDA est la reduccin
del diseo, la posibilidad de dividir un proyecto en mdulos que se desarrollan por separado, la
independencia del diseo con respecto a la tecnologa, la posibilidad de la reutilizacin de los diseos,
la optimizacin de los circuitos y las simulaciones posibles con las herramientas.
Con la aparicin de herramientas EDA cada vez ms complejas, que integran en el mismo marco de
trabajo las herramientas de descripcin, sntesis, simulacin y realizacin; apareci la necesidad de
disponer de un mtodo de descripcin de circuitos que permitiera el intercambio de informacin entre
las diferentes herramientas que componen el ciclo de diseo. En principio se utiliz un lenguaje de
descripcin que permita, mediante sentencias simples, describir completamente un circuito. A estos
lenguajes se les llam Netlist puesto que eran simplemente eso, un conjunto de instrucciones que
indicaban las interconexiones entre los componentes de un diseo.
Principios y Aplicaciones de los Dispositivos Lgicos Programables como las PALs y las GALs.
Una matriz programable es una red de conductores distribuidos en filas y columnas con un fusible en
cada punto de interseccin. Las matrices pueden ser fijas o programables. Todos los PLD estn
formados por matrices programables.
Estrucutura Interna de un PLD
La estructura bsica de un PLD et formada por un arreglo de puetas AND y OR interconectadas a
travs de fusibles.
Matriz AND
La matriz AND est formada por una red de compuertas AND conectadas a travs conductores y
fusibles en cada punto de interseccin. Cada punto de interseccin entre una fila y una columna se
denomina celda. La figura 4.4.1 muestra un arreglo de compuertas no programado.

Figura 4.4.1. Arreglo AND No Programado.
Cuando se requiere una conexin entre una fila y una columna, el fusible queda intacto y en caso de
no requerirse la conexin, el fusible se abre en el proceso de programacin. La figura muestra 4.4.2 un
arreglo AND programado.

Figura 4.4.2. Arreglo AND Programado.
Matriz OR
La matriz OR est formada por una red de compuertas OR conectadas a travs conductores y fusibles
en cada punto de interseccin. La figura 4.4.3 muestra un arreglo de compuertas no programado.

Figura 4.4.3. Arreglo OR No Programado.
La figura muestra 4.4.4 un arreglo OR programado.

Figura 4.4.4. Arreglo OR Programado.
Los dispositivos lgicos programables que se usan ms comnmente para la implementacin lgica
son la PAL y la GAL.
Lgica de Arreglos Programables (PAL, Programmable Array Logic)
La PAL es un PLD que se ha desarrollado para superar ciertas desventajas de la PLA, tales como los
largos retardos debidos a los fusibles adicionales que resultan de la utilizacin de dos matrices
programables y la mayor complejidad del circuito. La PAL bsica est formada por una matriz AND
programable y una matriz OR fija con la lgica de salida (Ver figura 4.4.5). Esta estructura permite
implementar cualquier suma de productos lgica con un nmero de variables definido, sabiendo que
cualquier funcin lgica puede expresarse como suma de productos. La PAL se implementa con
tecnologa bipolar (TTL o ECL).

Figura 4.2.5. Diagrama de bloques de una PAL (Programmable Logic Array)
Nomenclatura de una PAL
Los lderes en fabricacin de PLDs, Texas Instruments y AMD, tienen una notacin para identificar los
dispositivos. Por ejemplo, la estructura en PLD AMD es:

Figura 4.2.6. Diagrama de bloques de una PAL (Programmable Logic Array)
Dentro de la estructura de salida se tienen las posibilidades contenidas en la tabla 4.2.1.
Cdigos Tipos de Salidas
L Combinatoria con nivel bajo activo.
H Combinatoria con nivel alto activo.
R Registro.
RA Registro asncrono.
X Registro O exclusivo.
V Vestil.
M Macroclula.
Tabla 4.2.1. Tipos de Salidas de una PAL.
PALs comerciales
En el mercado se manejan referencias como la PAL16L8, PAL20L8, PAL20V8 y PAL20X8.
Matriz Lgica Genrica (GAL, Generic Array Logic)
La GAL se forma con una matriz AND reprogramable y una matriz OR fija , con una salida lgica
programable. La figura 4.4.7. muestra el diagrama de bloques de una GAL. Esta estructura permite
implementar cualquier expresin lgica suma de productos con un nmero de variables limitado.

Figura 4.4.7. Diagrama de Bloques de una GAL (Generic Array Logic).
Las dos principales diferencias entre los dispositivos GAL y PAL son:
a) la GAL es reprogramable y
b) la GAL tiene configuraciones de salida programables. La GAL se puede programar una y otra vez, ya
que usa tecnologa ECMOS (Electrically Erasable CMOS, CMOS borrable elctricamente).
En la figura 4.4.8. se ilustra la estructura bsica de una GAL con dos variables de entrada y una de
salida. La matriz reprogramable es esencialmente una red de conductores ordenados en filas y
columnas, con una celda CMOS elctricamente borrable (E
2
CMOS) en cada punto de interseccin, en
lugar de un fusible como en el caso de las PAL. Estos PLDs son borrables y reprogramables. El transistor
CMOS tiene 2 compuertas, una de ellas totalmente aislada, flotante. Para programar cada celda se
aplica o no una tensin mayor a V
DD
(alta) en la compuerta no flotante. Al aplicar esta tensin el
dielctrico conduce y la compuerta flotante se carga negativamente, dejando en operacin normal
siempre abierto el transistor.

Figura 4.4.8. Estructura Bsica de una GAL (Generic Array Logic)
En la figura 4.2.9. se muestra un ejemplo de una sencilla matriz GAL programada para obtener la suma
de tres productos.

Figura 4.4.9. Programacin de una GAL (Generic Array Logic).
El borrado se puede hacer de dos formas:
Con luz ultravioleta(UV): exponiendo el transistor de 5 a 20 minutos a luz UV, el dielctrico
conduce y permite la descarga de la compuerta flotante. Para este borrado el chip lleva una
ventana de cuarzo transparente.
Borrado elctrico: Es el ms usado hoy en da. La capa que aisla la compuerta flotante es ms
delgada. Al aplicar una tensin alta con polaridad contraria , la compuerta flotante se descarga
porque el dielctrico conduce. Las ventajas ms importantes de esta tcnica son una descarga
rpida, no se requiere UV y no se requiere sacar el chip de su base.
GALs comerciales
Las diversas GAL tienen el mismo tipo de matriz programable. Se diferencian en el tamao de la matriz,
en el tipo de OLMC (Las macroceldas Lgicas de Salida que contienen circuitos lgicos programables
que se pueden configurar como entrada o salida combinacional y secuencial) y en los parmetros de
funcionamiento, tales como velocidad y disipacin de potencia.
Referencia Nmero de Pines t
PD
I
CC
(mA) Caractersticas
GAL16V8A 20 10, 15, 25 55, 115 E
2
CMOS PLD Genrica
GAL18V10 20 15, 20 115 E
2
CMOS PLD Universal
GAL22V8A 24 10, 15, 25 55, 115 E
2
CMOS PLD Genrica
GAL22RA10 24 15, 20 115 E
2
CMOS PLD Universal
GAL22V10 24 10, 15, 25 130 E
2
CMOS PLD Universal
GAL26CV12 28 15, 20 130 E
2
CMOS PLD Universal
GAL6001 24 30, 35 150 E
2
CMOS FPLA
ispGAL16Z8 24 30, 35 190 E
2
CMOS PLD Programable en Circuito
.2.2. Familias GAL del fabricante Lattice

You might also like