Está en la página 1de 33

PLA, PAL, CPLD, FPGA

SEBASTIAN ESLAVA G. MS. C. - PH. D.


UNIVERSIDAD NACIONAL DE COLOMBIA 2010-1

DIVISIN DE PLDs [1]

Programmable Logic Array PLA [6]


Solucin a limitaciones

de velocidad y entradas de las PROMs. Consisten:

Arreglo AND: Las entradas se conectan adecuadamente para realizar las operaciones AND necesarias. Las salidas de las compuertas AND son llevadas al arreglo OR mediante Implicants. Programable

M-Inputs * N-Implicants * P-Outputs

Programmable Logic Array PLA [6]


Consisten: Arreglo OR: A las salidas del plano AND se les aplica la operacin OR y se consigue finalmente la suma de productos requerida. Programable Tanto en

las entradas como en las salidas se dispona de compuertas NOT para obtener mayor versatilidad.

SOP Sum-of-Products

Programmable Logic Array PLA [6]


PLAs

pueden ser conectadas externamente a Flip-Flops para formar mquinas de estado

Cada conexin dentro del

plano AND y plano OR pueden ser programada mediante la conexin o desconexin

Ejemplo de una implementacin en PLA [3]

Programmable Array Logic PAL [6]


Variacin de los PLAs Consisten: Arreglo AND: Programable Arreglo OR: Fija XOR: Inversores de las salidas

Ley

de Morgan que fundamenta el correcto funcionamiento de las PALs a | b = !(!a & !b) Un gran arreglo AND o un gran arreglo OR, pero no ambos grandes.

Al incluir inversores, se reduce

el arreglo OR y se ahorra rea para ubicar ms lgica. Uso de Flip-Flops (salida de estos al arreglo AND y a pines)

Programmable Array Logic PAL [6]

Tecnologa de switches programables por usuario [5]

Tecnologa de switches programables por usuario [5]

Complex Programmable Logic Device CPLD [6]


Gran nmero de PALs en

un solo chip y una matriz de conexiones.


Consisten de:

Matriz de conexin (Interconnect Matrix) Bloques Funcionales (Function Blocks) Bloques de entrada-salida (Input/Output Block)

Complex Programmable Logic Device CPLD [6]


Son

ISP (In System Programmable), es decir, tienen la capacidad de reconfigurar su lgica y funcionalidad durante o despus del proceso de manufactura. Al ser reprogramable es muy sencillo modificar su configuracin en terreno y permite actualizar el funcionamiento a travs de la red.

MAX 7000E Cortesa ALTERA [2]

Complex Programmable Logic Device CPLD [6]


BLOQUES FUNCIONALES Similar a una PAL. Entradas: I/O Block, otros bloques funcionales y realimentacin del mismo bloque. Salida directa del bloque o al Flip-Flop del Bloque. Es posible configurar el Flip-Flop como T, JK, RS o D. Multiplexores con su respectivo transistor FET, que permite la programacin del mux segn la lnea de control.

CPLD function block (courtesy of Altera Corporation)

Complex Programmable Logic Device CPLD [6]

CPLD complex macrocell (courtesy of Altera Corporation)

Complex Programmable Logic Device CPLD [6]


BLOQUES ENTRADAS/SALIDAS Dirige las seales a los pines del CPLD en el nivel de voltaje adecuado (maneja diferentes niveles). Configuracin: Entrada, Salida y Bidireccional. Los pines I/O tienen buffers triestado controlados por seales de habilitacin de salida glogal o llevando a GND o a VCC. Pueden configurarse como open drain. Control slew-rate, que controlan el ruido, reflexiones y niveles fuera del estndar a alta velocidad.

Complex Programmable Logic Device CPLD [6]

MATRIZ DE CONEXIN Permite conectar cualquier bloque funcional o bloque E/S con cualquier otro. Los retardos a travs del CPLD son determinsticos (fijos).

Complex Programmable Logic Device CPLD [5]

Complex Programmable Logic Device CPLD [5]

Complex Programmable Logic Device CPLD [5]

Complex Programmable Logic Device CPLD [5]

Field Programmable Gate Array FPGA [6]


Estan mucho ms cerca a los

ASIC que los CPLDs. Es dficil predecir los retardos que se producen al rutear ciertas Logic Blocks. Se constituyen bsicamente de: Bloque lgico Configurable (Configurable Logic Block), Bloque configurable Entrada/Salida (Configurable I/O Block) y Recursos de interconexin (Interconnection Resources) Poseen un arbol especial para el reloj, para minimizar el retardo en esta importante seal

Diagrama bsico constitutivo de una FPGA

Field Programmable Gate Array FPGA [6]


Tambin contienen una

circuitera especial de reloj y lgica (ALU, decodificadores, ) Tipos mas comunes: Antifusible y SRAM. Su arquitectura es regular, lo cual la hace una mejor opcin para diseos lgicos.

Diagrama bsico constitutivo de una FPGA

Field Programmable Gate Array FPGA [6]


Los mux tambin permiten

BLOQUES LGICOS CONFIGURABLES (CLBs) Contiene la lgica programable de la FPGA. Adems, posee una RAM para generar lgica combinacional arbitraria. Cuenta con Flip-Flops para almacenar informacin y un conjunto de multiplexores para escoger llevar los datos al mismo bloque o a otro o poder adquirir los mismo.

el reset, el clear y la polaridad. Manejan 2 LUTs de 4 entradas (generadores de lgica combinacional) y 1 LUT de 3 entradas donde interviene la informacin de los LUTs de 4 entradas e informacin procedente de otro CLB (4 entradas de la parte superior) Los mux tambien permiten escoger que los Flip-Flops se activen por flanco de subida o de bajada.

Field Programmable Gate Array FPGA [6]

Field Programmable Gate Array FPGA [6]


BLOQUES CONFIGURABLES ENTRADA/SALIDA Pueden ser usados como: entrada, salida o bidireccional. Manejan diferentes voltajes de threshold: TTL o CMOS Control slew-rate, que controlan el ruido, reflexiones y niveles fuera del estndar a alta velocidad. Cuentan con resistencias de pull-up.

Field Programmable Gate Array FPGA [6]


INTERCONEXIN PROGRAMABLE Existe una jerarqua entre las conexiones dependiendo de la cercana entre los CLBs. Lineas Cortas. Para las conexiones entre CLBs lejanos se utilizan las Matrices de Switches, el problema de esto es el retardo que se genera que es mucho mayor al de la lgica. Para las conexiones ms lejanas se utilizan las Lineas Largas, las cuales minimizan el retardo de las seales

Field Programmable Gate Array FPGA [5]

Field Programmable Gate Array FPGA [5]

Field Programmable Gate Array FPGA [5]

DIFERENCIAS ENTRE CPLD y FPGA


Arquitectura Interna del Dispositivo y

como la arquitectura implementa las funciones


Tecnologa

del semiconductor que permite al dispositivo ser programado y ser conectado internamente

DIFERENCIAS ENTRE CPLD y FPGA

Tiempo de diseo en ASICs y FPGAs [4]

Joint Test Action Group - JTAG


IEEE

1149.1: Comprobar funcionalidad de un dispositivo y las conexiones a otros CI. Desplazar datos a travs de las celdas boundary scan BIST (built-in self-test): Modo en el que se genera un conjunto de vectores de test pseudo-aleatorio como vectores de estmulo. Se comparan los resultados y se presentan los posibles errores.

BIBLIOGRAFA
[1] Borromeo L., Susana. Diseo con FPGAs. Universidad Rey Juan Carlos. [2] Campos, J. C. Dispositivos Programables Bsicos. Universidad de Oviedo. [3] Harris, D.; Harris, S. Digital Design and Computer Architecture. Editorial Morgan Kaufmann. [4] MIT. Introductory Digital Systems Laboratory. [5] Rose, J. FPGA AND CPLD ARCHITECTURES: A
TUTORIAL

[6] Zeidman, B. Designing with FPGAs and CPLDs. CMP Books.

También podría gustarte