2a. Introducción y SPLDs_a(Curso 2015L)

Embed Size (px)

DESCRIPTION

introduccion a los SPLDs, GAL22V10

Citation preview

  • Circuito Digital Configurable

    DR. ENRIQUE GUZMN RAMREZ

  • Circuito Digital Configurable

    } Estructura general de la lgica digital

  • Circuito Digital Configurable

    } Definicin: Un Circuito Digital Configurable (CDC) es aquel dispositivo digital (CI) cuya funcin se puede modificar utilizando solamente una parte de los elementos que lo componen y/o cambiando la interconexin entre ellos

    } Dicha modificacin se lleva a cabo mediante la programacin del estado de un conjunto de variables binarias, a este proceso se le denomina configuracin.

  • Clasificacin de los CDCs segn el tipo

    de organizacin

    CDCs con recursos concentrados

    (Dispositivos lgicos Programables, PLDs)

    CDCs con recursos distribuidos

    (Conjunto configurable de compuertas, FPGA)

    Bsicos o simples

    Avanzados

    Complejos

    Segn la complejidad de los recursos lgicos internos

    Segn la tecnologa de las celdas programables

    Segn la topologa de los recursos de interconexin

    Segn la organizacin de los recursos lgicos internos

    Circuito Digital Configurable

  • } El diseo de los Circuitos Digitales Configurables se basa en los siguientes conceptos: } Funcionalidad Completa. } Distribucin y organizacin de sus recursos.

    } Funcionalidad completa } En el ambito de la logica digital, este concepto se refiere al

    paradigma que permite implementar cualquier funcin lgica. Actualmente, existen dos paradigmas en operacin: } SOPs } LUTs (Tablas de busqueda), Celdas de funciones

    universales, Generadores de funciones.

    Circuito Digital Configurable

  • } Considerando los SOPs, Qu elementos de hardware (MSI), de acuerdo a su estructura, cumplen con esta cualidad?

    Para implementar una funcin es necesario elementos externos.

    Decodificadores. Un decodificador est formado por: nn 2: trminos producto (min-trminos). n2

    F1 = A' B C' D + A' B' C D + A B C D F2 = A B C' D + A B C F3 = (A' + B' + C' + D')

    A B

    0 A'B'C'D' 1 A'B'C'D 2 A'B'CD' 3 A'B'CD 4 A'BC'D' 5 A'BC'D 6 A'BCD' 7 A'BCD 8 AB'C'D' 9 AB'C'D 10 AB'CD' 11 AB'CD 12 ABC'D' 13 ABC'D 14 ABCD' 15 ABCD

    4:16 DEC Ena

    C D

    F1

    F2

    F3

    Ejemplo:

    Circuito Digital Configurable

  • I0 I1 I2 I3

    A B

    4:1 mux

    Z= A' B' I0 + A' B I1 + A B' I2 + A B I3

    =

    =12

    0

    n

    kkk Im

    Ejemplo: F(A,B) = m0 + m2 + m3

    =>

    A B

    4:1 mux

    Z

    Multiplexores. Un mux puede implementar

    2:1 mux Z F(A,B) = m0 + m2 + m3

    =>

    1 0 1 1

    B 1

    12 :ncualquier funcin de n o n+1 variables.

    A

    Circuito Digital Configurable

  • ROM. Una ROM de puede implementar: mn 2m funciones de hasta trminos producto y n variables. n2

    Ejemplo:

    block diagram

    ROM 8 words x 4 bits/word

    address outputs A B C F0 F1 F2 F3

    F0 = A' B' C + A B' C' + A B' C

    F1 = A' B' C + A' B C' + A B C

    F2 = A' B' C' + A' B' C + A B' C'

    F3 = A' B C + A B' C' + A B C' truth table

    A B C F0 F1 F2 F3 0 0 0 0 0 1 0 0 0 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 1 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 1 1 0 1 0 0

    Qu estructura tiene una ROM?

    Circuito Digital Configurable

  • } Con respecto a las LUTs (Look Up Table Tabla de Busqueda) } Tambin conocidas como celdas de funciones universales o

    generadores de funciones.

    Funcin requerida:

    Circuito Digital Configurable

  • } Distribucin y organizacin de sus recursos.

    Circuito Digital Configurable

  • } Un CDC est formado por los siguientes recursos lgicos: } Bloques lgicos.

    } Planos AND-OR-biestables o Tablas de bsqueda-biestables. } Recursos de interconexin.

    } Local, globales y retroalimentaciones. } Bloques de entrada/salida.

    } Bi-direccionales, latches, registros, buffers, resistencias pullup y pulldown.

    } Bloques de funciones especficas. } Las que consumen muchos recursos o son muy comunes.

    Circuito Digital Configurable

  • } Existe una gran cantidad de fabricantes de CDCs => Gran variedad de CDCs.

    } Los fabricantes de semiconductores no asignan el mismo nombre al mismo concepto. } Bloques lgicos: Macrocelda, Bloque Funcional (Functional

    Blok), Bloque Lgico Configurable (Configurable Logic Block). } Recursos de interconexin: Lneas de interconexin rpida

    (Fast Track Interconnect), Asignadores de trminos producto (Product Term Allocation).

    Circuito Digital Configurable (CDC)

    } Estandarizacin de los CDCs:

  • } Nombres diferentes para las mismas arquitecturas.

    } SPLD PAL (Programmable Array Logic) PLA (Programmable Logic Array ) GAL (Generic Array Logic)

    } CPLD CPLD (Complex Programmable Logic Device) EPLD (Electrical Programmable Logic Device) EEPLD (Electrically Erasable Programmable Logic Device) SPLD (Segmented Programmable Logic Device) XPLD (eXpanded Programmable Logic Device)

    Circuito Digital Configurable (CDC) } Estandarizacin de los CDCs:

  • } Nombres diferentes para las mismas arquitecturas.

    } FPGA FPGA (Field Programmable Gate Array) LCA (Logic Cell Array) pASIC (programmable ASIC) SPGA (System Programmable Gate Array) XPGA (eXpanded Programmable Gate Array)

    Circuito Digital Configurable (CDC) } Estandarizacin de los CDCs:

    } Cada fabricante tiene su propio sistema CAD. } HDLs.

  • } PLD Simples. Basados en arquitecturas bsicas (50,000 compuertas). } PLD Avanzados. Integracin de SPLD`s (500,000 compuertas) } PLD Complejos. Integracin de APLDs + funciones especficas.

    (2,000,000 compuertas) } FPGA`s. Basados en Look up Table. } (10,000,000 compuertas) } CDC con procesadores. FPGAs + Hardware especfico.

    (>10,000,000 compuertas)

    Densidad de integracin

    Circuito Digital Configurable (CDC)

  • } Tecnologas de Configuracin de los CDCs. Tecnologa utilizada en la construccin de los elementos programables. } Tecnologa Fuse PROM.

    } Tecnologa inicial de los CDCs. } Tecnologa OTP. } No voltil. } Texas Instruments.

    } Tecnologa Anti-Fuse. } Fusibles ms pequeos que uno tipo Fuse. } Tecnologa OTP. } No voltil. } Actel, QuickLogic.

    } Tecnologa EPROM. } Similar a la tecnologa usada en las memorias EPROM. } Programables elctricamente. } Borrables con luz ultravioleta. } No voltil. } AMD, Philips, Atmel, ICT, Waferscale Integration (WSI).

    Circuito Digital Configurable

  • } Tecnologa EEPROM. } Fsicamente una celda EEPROM es de mayor tamao que una EPROM. } Programables elctricamente. } Borrables elctricamente. } Programables y re-programables en sistema. } No voltil. } Xilinx, Altera, AMD, Cypress, Philips, Atmel, ICT, WSI.

    } Tecnologa FLASH. } Mismos beneficios elctricos que la EEPROM. } Celdas mas pequeas que una EEPROM. } Mas velocidad que una celda EEPROM. } Programables y re-programables en sistema. } No voltil. } Xilinx, Altera, AMD, Cypress, Philips, Atmel, ICT, WSI.

    } Tecnologa de Memoria Esttica. } Tecnologa similar a las SRAM. } Configuracin voltil. } Programables y re-programables en sistema. } Auto-booteables. } Xilinx, Altera, Actel, Lucent, Motorola, DynaChip.

    Circuito Digital Configurable

  • Dispositivos Lgicos Programables

    Introduccin

    DR. ENRIQUE GUZMN RAMREZ

  • } DEFINCION.

    Son CDCs basados en el paradigma SOP, su estructura bsica est formada por un arreglo de compuertas AND seguido por un arreglo de compuertas OR

    Los arreglos pueden ser programables o fijos.

    La generalizacin (CPLDs) se da interconectado conjuntos de estos arreglos a travs de un bloque de interconexin global.

    Dispositivos Lgicos Programables

  • Arquitecturas bsicas

    } La gran mayora de los PLDs actuales estn basados en dos arquitecturas: } PLA. Programmable Logic Array (Signetics Corporations, 1975). } PAL. Programmable Array Logic (Monolithics

    Devices, 1976).

    Dispositivos Lgicos Programables

  • Arquitecturas bsica PLA

    S1= AC+CD S2=ABD+AB

    Dispositivos Lgicos Programables

    Arquitecturas bsica PAL

  • } Limitante de las arquietecturas PLA y PAL? } La siguiente evolucin fue el secuenciador lgico programable (PLS). } Un PLS es una combinacin de una matriz lgica PAL con un

    biestable.

    Dispositivos Lgicos Programables

  • } Limitantes del PLS: } El nmero de variables de entrada y de salida era fijo. } El nmero de TPs asignado a cada biestable era limitado. } Bistables bsicos.

    Dispositivos Lgicos Programables

  • } Al superar estas limitaciones el nombre PLS es substituido por el de PLD.

    } El aumento de caractersticas existentes en un PLD provoca su evolucin y la necesidad de clasificarlos. } Bsicos o Simples (SPLD). } Avanzados (APLD). } Complejos (CPLD).

    Dispositivos Lgicos Programables

  • } Aplicaciones: } SPLDs:

    } Lgica de pegado.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } SPLDs:

    } Maquinas de estado de funciones especficas.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } SPLDs:

    } Integracin de CI SSI y MSI y/o adecuacin a la aplicacin.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } APLDs y CPLDs:

    } Integracin de sistemas que usan varios SPLD`s.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } APLDs y CPLDs:

    } Subsistemas I/O.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } APLDs y CPLDs:

    } Lgica de mediana velocidad.

    Dispositivos Lgicos Programables

  • } Aplicaciones: } APLDs y CPLDs:

    } Perifricos.

    Dispositivos Lgicos Programables

  • Dispositivos Lgicos Programables Simples o Bsicos

    DR. ENRIQUE GUZMN RAMREZ

  • } DEFINICION. Los Dispositivos Lgicos Programables Simples (SPLD) son dispositivos configurables formados por una arquitectura bsica, PAL o PLA, y elementos lgicos que le otorgan caractersticas funcionales adicionales.

    Dispositivos Lgicos Programables Simples

  • } Tipos de SPLDs: } PROM

    } Programmable Read only Memories. } American Bosch Arma Corporation , 1956.

    } PLA } Programmable Logic Array. } Signetics Corporations, 1975.

    } PAL } Programmable Array Logic. } Monolithics Memories Devices, 1976.

    } GAL } Generic Array logic. } Lattice Semiconductors, 1984.

    Dispositivos Lgicos Programables Simples

  • } GAL (Generic Array Logic). } ltima evolucin de los SPLD. } Mayor densidad de integracin que una PAL o PLA.

    PLA, PAL GAL Tecnologa Re-configurabilidad I/O

    GAL, marca registrada de Lattice, GAL22V10. Vantis: PALCE22V10. TI: TIBPAL22V10

    Son el mismo dispositivo.

    EEPROM Fuse

    Reconfigurable OTP

    Funcin fija; Combinacional

    Seleccionable: Entrada o salida; combinacional o secuencial.

    Dispositivos Lgicos Programables Simples

  • } Estructura bsica de un SPLD

    Dispositivos Lgicos Programables Simples

  • } Configuraciones bsicas de un SPLD

    Dispositivos Lgicos Programables Simples

  • Dispositivos Lgicos Programables Simples

  • } SPLD } Surge del PLS. } Elementos lgicos que le proporcionan nuevas caractersticas

    funcionales. } Terminales cuasi-bidireccionales. } Biestables ms verstiles. } Control de inversin de la salida. } Anulacin de la retencin de datos (Bypass).

    Dispositivos Lgicos Programables Simples

  • } Terminales cuasi-bidireccionales.

    Dispositivos Lgicos Programables Simples

  • } Biestables ms verstiles.

    Dispositivos Lgicos Programables Simples

  • } Control de inversin de la salida.

    Dispositivos Lgicos Programables Simples

  • } Anulacin de la retencin de datos (Bypass).

    Dispositivos Lgicos Programables Simples

  • } SPLD con todas las caractersticas anteriores:

    Dispositivos Lgicos Programables Simples

  • } La unin de estas caractersticas, que le otorgan funcionalidad adicional al PLD, es conocida como Macrocelda.

    Dispositivos Lgicos Programables Simples

  • } Existen diversos tipos de macroceldas. } Macroceldas de salida. } Macroceldas de entrada. } Macroceldas buried. } Macroceldas entrada/salida. } Macroceldas entrada/salida/buried.

    Dispositivos Lgicos Programables Simples

  • } Las seales de una macrocelda se pueden dividir en dos tipos: } Seales de datos. La modificacin de las seales de entrada. } Seales de control. Aquellas cuyo estado influye en la forma

    de operacin de la macrocelda.

    Dispositivos Lgicos Programables Simples

  • } Las seales de control se pueden realizar de 3 formas diferentes: } Mediante un interruptor programable independiente de la

    matriz. } Mediante un trmino producto del array AND. } Mediante una conexin externa a travs de una terminal o pin.

    Dispositivos Lgicos Programables Simples

  • } Clasificacin de los SPLD.

    Dispositivos Lgicos Programables Simples

  • } Implementacin practica de una Macrocelda con un biestable y una retroalimentacin. } EP200 y 224 (Altera), PALCE20V8 (Cypress).

    Dispositivos Lgicos Programables Simples

  • } Implementacin practica de una Macrocelda con un biestable y una retroalimentacin. } 10H20EV8 (Philips).

    Dispositivos Lgicos Programables Simples

  • } Qu inconveniente presenta el que una macrocelda tenga slo una retroalimentacin?

    Dispositivos Lgicos Programables Simples

  • } SPLD con un biestable y doble retroalimentacin.

    Dispositivos Lgicos Programables Simples

  • Dispositivos Lgicos Programables Simples

    } Esquema prctico. PALCE29MA16H (AMD)

  • } Al poseer un slo biestable, en una macrocelda no es posible sincronizar la variable de entrada al mismo tiempo que se retroalimenta la variable interna memorizada.

    } SPLD con dos biestables y doble retroalimentacin } Este tipo de arquitectura tiene dos variantes:

    } Macrocelda con dos biestables y dos retroalimentaciones exclusivas.

    } Macrocelda con dos biestables y una retroalimentacin compartida.

    Dispositivos Lgicos Programables Simples

  • Macrocelda con dos biestables y dos retroalimentaciones exclusivas

    } GAL6001 (lattice).

    Dispositivos Lgicos Programables Simples

  • } CY7C335 (Cypress)

    Dispositivos Lgicos Programables Simples

    Macrocelda con dos biestables y dos retroalimentaciones, una de ellas compartida

  • Diseo sobre SPLD } Para implementar un diseo ptimo en un PLD Simple, es

    necesario: } Conocer la arquitectura interna del dispositivo a utilizar. } Saber como acceder los recursos del dispositivo mediante

    una herramienta de diseo. } Utilizar una metodologa de diseo adecuada. } Describir con un enfoque orientado al modelado de

    hardware.

    Dispositivos Lgicos Programables Simples