Sie sind auf Seite 1von 38

Universidad Nacional San Lus Gonzaga de ICA

Esc. de Ingeniera Electrnica

Introduccin

El incremento de uso de los Dispositivos Lgicos


Programables
es
parecido
al
de
los
Microprocesadores hace unos aos.
La realidad de diseo lgico actual es:
Tiempo de desarrollo cortos
Complejidad creciente
Bsquedas de costos cada vez menores

Las exigencias que se plantean:


Confiabilidad
Testeabilidad

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Las exigencias del Diseo

Tiempos de desarrollo cada vez ms cortos.


Especificaciones variables o aun indefinidas en el
momento de desarrollo.

Necesidad de adaptabilidad a nuevas exigencias o


especificaciones.
Circuitos cada vez mas baratos y ms complejos.

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Beneficios del uso de los PLDs

Fcil adaptabilidad a cambios de diseo.


Aumento de la vida comercial til del producto
Mayor performance.
Ms rpido, ms pequeo, ms confiable, ms
fcil de armar.
Mejora en cuanto al aprovechamiento de los
recursos de ingeniera
Menor costo de desarrollo

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Beneficios del uso de los PLDs

Los PLDs al tener fusibles de seguridad impiden la


lectura de los programas, protegiendo los diseos
frente a las copias de los piratas tecnolgicos.
La lgica programable se acomoda especialmente
a los pases en desarrollo como el nuestro, por
La baja inversin inicial del prototipo
La posibilidad de fabricar series reducidas
La reduccin de la diversidad de componentes
en Stock.

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

DISPOITIVOS LOGICOS
PROGRAMABLES
Definicin:

Los PLDs, son pequeos ASICS


(Circuitos integrados de Aplicacin Especifica),
configurables por el usuario.
Son capaces de realizar una determinada funcin
de tipo combinacional o secuencial.

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clasificacin de los PLDs


DISPOSITIVOS LOGICOS PROGRAMABLES

PLDs

CPLDs

FPGAS

PLA
(Fusibles)

GAL, CMOS, PAL


(Borrable elctricamente)

LCA
(FPGA-Tablas)

PAL
(Fusibles)

EPLDs
(Borrable elctricamente)

FPGA
(de antifusibles)

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Ing. RAUL HINOJOSA

Esquema
simplificado
de un PLD

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

CARACTERISTICAS GENERALES DE LOS


PLDs

En la fabricacin de PLDs se utiliza tecnologa bipolar


TTL o ECL y tecnologa CMOS.
Los dispositivos bipolares son ms rpidos y
consumen ms que los dispositivos CMOS.
Actualmente los PLDs bipolares presentan retardos de
propagacin inferiores a 7 nsg y los consumos tpicos
rondan los 100-200 mA para un chip con 20-24
patillas.
Mientras los PLDs bipolares slo pueden programarse
una vez, la mayora de los PLDs CMOS son
reprogramables y permiten una fcil verificacin por
parte del usuario.
A los PLDs CMOS borrables por radiacin ultravioleta
se les denomina EPLD y a los borrables elctricamente
se los conoce por EEPLD.

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

CARACTERISTICAS GENERALES DE LOS


PLDs

Si consultamos las hojas de datos de una PALCE16V8H-20,


encontramos claves que permiten extraer valiosa
informacin del nombre del dispositivo.
PAL
Programamble Array Logic
CE
C-MOS Electrically Erasable
16V8 16 entradas a la matriz de puertas AND y 8
salidas
H
Half Power ( ICC = 90 mA)
20
Tiempo de propagacin (20 mSeg)
Tambin existen:
PALCE16V8Q (Quarter Power Icc = 55 mA)
PALCE16V8Z (Zero Power) con un bajsimo consumo
esttico de potencia. ( < 10mA)

Ing. RAUL HINOJOSA

Sistemas

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs

1. PLA (Programable Logic Array)


Es un PLD formado por una matriz AND y OR
programables.
Entradas

Ing. RAUL HINOJOSA

Salidas

Matriz AND

Matriz OR

Programable

Programable

Sistemas

10

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs
Estructura Interna del PLA
Variables de Entradas

Salidas Programadas
Ing. RAUL HINOJOSA

Sistemas

11

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs

Ejemplo 1
Implementar con
funciones lgicas:

un

PLA

las

siguientes

F1 (A,B,C,D,E) = ABD+ BC D + AB C D E
F2 (A,B,C,D,E) = AB E + BC D E
F3 (A,B,C,D,E) = ABD+ BCDE + AB C D

Solucin:
Se tiene 5 variables, entonces el PLA debe tener 5
entradas.
Se van a generar 7 trminos productos nicos.
Como hay 3 funciones se debe tener 3 trminos OR.

Ing. RAUL HINOJOSA

Sistemas

12

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs - PLA

Entradas

Representacin
de un PLA del
Ejemplo 1

Ing. RAUL HINOJOSA

Salidas

Sistemas

13

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs - PAL

2. PAL (Programable Array Logic)


Es un PLD formado por una matriz AND
programable y una OR fija con una lgica de
salida.

Entradas
Lgica de Salida
Matriz AND

Matriz OR

Programable

FIJA

Lgica de Salida

Salidas

Lgica de Salida

Ing. RAUL HINOJOSA

Sistemas

14

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs - PAL


Entradas

Estructura Interna del PAL

Salidas

Ing. RAUL HINOJOSA

Sistemas

15

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs - PAL

Ejemplo 2:
Disear un PAL que realice las siguientes dos
funciones lgicas y muestre las conexiones
internas.
F1 (A,B,C,D) = (0,1,3,7,13,15)
F2 (A,B,C,D) = (0,2,4,5,8,10)
Solucin:
Simplificando las funciones lgicas tenemos:
F1 = ABC+ AC D + A B D
F2 = BD+ AB C

Ing. RAUL HINOJOSA

Sistemas

16

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs - PAL


Representacin de un PAL del Ejemplo 2

Entradas

Salidas

Ing. RAUL HINOJOSA

Sistemas

17

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Estructura de un PAL16L8

1er fusible

Termino producto para control


de salida

Lneas de entrada
Realimentacin

Fusibles de Programacin

Ing. RAUL HINOJOSA

Suma de hasta 7 trminos


productos

Sistemas

18

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Estructura de un PAL16R8
1er fusible

Un nico clock general

Salidas de los
registros a
travez de un
tri-state

Lneas de entrada
Realimentacin
desde los
registros

Fusibles de Programacin

Ing. RAUL HINOJOSA

Sistemas

19

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs -GAL

3. GAL( Generic Logic Array)


Al igual que la Pal, tiene una matriz AND
programable y una matriz OR fija, con una salida
lgica programable.
Las principales diferencias entre los GALs y los
PALs son:

Es repogramable porque usa tecnologa E 2CMOS


(Electrically Erasable CMOS) en lugar de tecnologa
bipolar y fusibles.

Las salidas tienen unas macroceladas lgicas (OLMC)


que estn formadas por unos circuitos lgicos que
pueden programarse como lgica combinacional o lgica
secuencial.

Ing. RAUL HINOJOSA

Sistemas

20

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs -GAL

Ejemplo 3:

Disear un GAL que realice las siguientes tres funciones


lgicas y muestre las conexiones internas.
F1 (A,B,C,D) = (0,2,7,10) + d(12,15)
F2 (A,B,C,D) = (2,4,5)+ d(6,7,8,10)
F3 (A,B,C,D) = (2,7,8) + d(0,5,13)
Solucin:
Simplificando las funciones lgicas tenemos:
F1 = ABD+ BC D+ AB C D
F2 = AB + BC D
F3 = ABD+ BCD+ AB C D

Ing. RAUL HINOJOSA

Sistemas

21

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Implementacin del ejemplo 3

Ing. RAUL HINOJOSA

Sistemas

22

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Caractersticas de la GAL 22V10

Diagrama en bloques con los pines de entrada/salida de la GAL 22V10

Ing. RAUL HINOJOSA

Sistemas

23

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Caractersticas de la GAL 22V10


MUX de Salida

Activacin de Salida

MUX de Realimentacin

Fusibles
Representacin de una OLMC ( OUTPUT LOGIC MACRO CELL)

Ing. RAUL HINOJOSA

Sistemas

24

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Caractersticas de la GAL 22V10


Puede ser usada como
entrada de clock o de datos

17 entradas
dedicadas
Ing. RAUL HINOJOSA

Matriz Programable de 132*44


terminos producto

10 Macroceldas

10 entradas/salidas

Sistemas

25

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Clases de PLDs -GAL

Matriz Programable ALTERA EPLD

Ing. RAUL HINOJOSA

Sistemas

26

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Caractersticas de la GAL 22V10

Tiene 12 entradas dedicadas y 10 E/S

Dispone de 10 macroceldas, de las cuales:


Dos tienen 8 operaciones producto (nmero de lneas de
la matriz AND a la puerta OR)
Dos tienen 10 operaciones producto. Otras dos doce,
otras dos catorce, y otras dos diecisis.
Cada OLMC puede programarse para que el nivel activo
de salida sea alto o bajo y tambin, pueden
programarse como entradas.

Ing. RAUL HINOJOSA

Sistemas

27

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Caractersticas de la GAL 22V10

Cada OLMC puede configurarse como entrada o


salida combinacional, o como salida secuencial.
La configuracin se establece automticamente
mediante programacin.
Las cuatro configuraciones de las macroceldas
lgicas programables son:

Modo
Modo
Modo
Modo

Ing. RAUL HINOJOSA

Combinacional con salida activa a nivel bajo


Combinacional con salida activa a nivel alto
Secuencial con salida activa a nivel bajo
secuencial con salida activa a nivel alto

Sistemas

28

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

SOFTWARE PARA DISEO DE PLDs

Para
programar
PLDs
hay
herramientas
especficas y herramientas universales. Las
herramientas especficas las suministran los
propios fabricantes de PLDs, que se preocupan de
actualizadas rpidamente para soportar a los
nuevos dispositivos fabricados.
Algunas de las compaas ms conocidas que
ofrecen software de programacin de PLDs son:

Ing. RAUL HINOJOSA

Sistemas

29

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

SOFTWARE PARA DISEO DE PLDs

Altera Corporation Suministra los paquetes de


software A + PLUS para trabajar con las familias de
dispositivos EP300..EP1800, MAX + PLUS para la
familia MAX de arquitectura modular y SAM + PLUS
para los usuarios del secuenciador SAM de Altera.
AMD (Advanced Micro Devices) Se trata de un
fabricante de microprocesadores que ofrece una
herramienta llamada PALASM para programar sus
PALs. El ensamblador PALASM, junto con la abundante
documentacin de diseo ofrecida por MMI, fueron en
gran parte responsables de la rpida aceptacin (que
todava perdura) de las PALs de MMI

Ing. RAUL HINOJOSA

Sistemas

30

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

SOFTWARE PARA DISEO DE PLDs

National Semiconductor Distribuye el software


PLAN (Programmable Logic Analysis) para soportar a
sus PLDs. Admite ms formas de entrada que
PALASM y no necesita que se especifique el
dispositivo. De hecho, un programa de PLAN es capaz
de seleccionar el dispositivo adecuado y realizar la
asignacin de patillas.
OrCAD Systems Corporation. Dispone de un
compilador
universal
de
lgica
programable
OrCAD/PLD que acepta ecuaciones, ecuaciones
indexadas, mapas numricos, esquemas, mquinas de
estados, tablas de verdad y streams. Le acompaa un
simulador funcional que genera automticamente los
vectores de test
..

Ing. RAUL HINOJOSA

Sistemas

31

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

SOFTWARE PARA DISEO DE PLDs

Philips-Signetics. Es un fabricante de circuitos


integrados con una gran oferta en dispositivos FPLA.
Posee un software especfico para sus PLDs llamado
AMAZE (Automated Map And Zap Equations) que
acepta ecuaciones, tablas de estados y esquemas
capturados con OrCAD/SDT o con FutureNet.
AMAZE est formado por cinco mdulos, entre los que
se encuentra un simulador funcional y temporal que
genera automticamente los vectores de test.
Tambin dispone de un software destinado a sus
dispositivos
ms avanzados, los Programmable
Macro Logic o PML
llamado SNAP (Syntesis,
Netlist, Analysis And
Programming).

Ing. RAUL HINOJOSA

Sistemas

32

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

PROCESO DE DESARROLLO DE PLDs

Diseo

Es la etapa en la que se concibe y describe la


funcin lgica o los datos que se almacenarn en
el PLD.
El diseo se realiza utilizando un editor de textos
o un software de captura de esquemas. Mediante
el editor de textos, la lgica puede expresarse en
forma de tablas de verdad, ecuaciones de alto
nivel, mquinas de estados, etc.

Ing. RAUL HINOJOSA

Sistemas

33

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

PROCESO DE DESARROLLO DE PLDs


Ciclo de compilacin y verificacin lgica .

En este ciclo tiene lugar la simplificacin de las formas de


entrada definidas en la etapa de diseo o se sealan los fallos
de sintaxis detectados.
Si en la etapa de diseo se especifica un determinado PLD, se
genera un fichero en formato JEDEC que contiene informacin
sobre el estado en que deben quedar los fusibles del PLD
elegido.
El fichero en formato JEDEC servir para la programacin
posterior del chip en un equipo comercial. Si en la etapa de
diseo en lugar de una PAL o FPLA se especifica una PROM, la
mayora de los compiladores de PLDs generan un fichero
ASCII con un formato diferente al JEDEC.

Ing. RAUL HINOJOSA

Sistemas

34

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

PROCESO DE DESARROLLO DE PLDs


Programacin

Para transportar la salida del compilador


contenida en el fichero JEDEC al chip, se utiliza
un programador de PLDs.
La mayora de los equipos de programacin
verifican el estado de los fusibles para asegurarse
de que la programacin ha sido correcta.

Ing. RAUL HINOJOSA

Sistemas

35

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

PROCESO DE DESARROLLO DE PLDs


Verificacin del dispositivo

Consiste en aplicar fsicamente los vectores de test


al dispositivo programado y comparar la salida real
con la salida esperada. Este paso se realiza en el
programador de PLDs, inmediatamente despus de
la programacin.
Es importante que los vectores de test hayan sido
diseados de forma que pongan a prueba la
totalidad de los nodo s internos del PLD, de esta
forma se evita que puedan utilizarse PLD
defectuosos que resultaran ms difciles de
detectar una vez montados en placas de circuito
impreso.

Ing. RAUL HINOJOSA

Sistemas

36

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

Programacin de los PLDs

Para poder programar estos PLDs, son


necesarios los siguientes componentes:
Computador que cumpla los requerimientos del
Compilador.
Editor de texto (Edit, Word Pad, etc)
Compilador de PLDs:
( Orcad-PLD, CUPL, Altera)
Programador Universal de Circuitos Integrados.

Ing. RAUL HINOJOSA

Sistemas

37

Universidad Nacional San Lus Gonzaga de ICA


Esc. de Ingeniera Electrnica

EJEMPLO CON EL COMPILADOR OrCAD/PLD

EJEMPLO DE PUERTAS BASICAS

|PAL12H6
|in: (A, B, C, D, E, F, G), out:Y[1..6]
|Y1 = A & B
|AND
|Y2 = C # D
|OR
|Y3 = B ## F |XOR
|Y4 = G
|NOT
|Y5 = (B & C) |NAND
|Y6 = (E # F) |NOR
|Vectors:
|{
| display A, B, C, A & B = Y1, (B & C) = , Y5
|test A,B,C
|end
|}

Ing. RAUL HINOJOSA

Sistemas

38

Das könnte Ihnen auch gefallen