Download - Circuitos Digitales

Transcript
  • 1Arreglo de Compuertas y Funcionamiento en laProgramacin de un FPGA

    Julio Fernando Siguencia [email protected]

    Circuitos Digitales AvanzadosUniversidad Politcnica Salesiana

    I. ARREGLOS DE COMPUERTAS

    Los circuitos integrados o arreglos de compuertas, contienenun gran nmero de compuertas libres es decir sin conectar.Asiduamente incluye arreglos de celdas individuales en las quela adicin de una interconexin crea una compuerta especificaNAND o NOR. La programacin del arreglo hace que lascompuertas se interconecten para crear lgica combinacional,flip-flops, registros,contadores,memorias,etc El chip originalque se puede fabricar en grandes cantidades puede hacer quelleve acabo una tarea determinada especificando las inter-conexiones entre las compuertas. La programacin de estosdispositivos requiere normalmente de un software de muy altocosto, complejidad y de una computadora con una capacidadelevada para llevar a cabo la ubicacin y envi de conexiones.Hay reglas de diseo que limitan el nmero de cruces en elpatrn de conexiones generado por la computadora. Junto aestas reglas con frecuencia se necesita mucha interaccion enel proceso de diseo. Ademas, una vez que se han hecho lasiterconexiones no se puede modificar. El resultado es tal que eluso de los arreglos de compuertas esta limitado a productos dealto volumen y requiere de un ciclo de desarrollo relativamentemas largo.[1]

    Se construye una versin de arreglos de compuertas sinincluir las interconexiones metlicas. La programacin, quepersonaliza el diseo, resulta un trabajo artesanal de fotoli-tografia(proceso empleado en la fabricacin de dispositivossemiconductores) para las mascarillas necesarias y asi podercrear el paso final de interconexion en el proceso de fabri-cacin. El dispositivo esta listo en una cuantas semanas y seentrega al usuario final.

    En otra versin se fabrican dos capas de interconexionen el diseo de la rejilla con rutas interconstruidas paraconectar las capas. El programa del usuario se convierte enun patrn de metal para la capa superior la que sera grabada(mediante un ataque qumico) para formar las interconexionespara ambas capas. Este segundo caso requiere la adicin dealgunos pasos en el proceso de fabricacin y menos tiempopara el diseo. Los arreglos de compuertas emplean solo unapequea variedad de celdas estndar de transistores, lo quehace que el diseo no se pueda optimizar completamente conrespecto a la disipacin de potencia o velocidad para todas lasaplicaciones.[1][2]

    Los arreglos de compuertas no emplean eficientemente to-dos los recursos del silicio como en los diseos completamente

    a la medida. En una computadora o estacin de trabajoel arreglo de compuertas se programa de manera similar alos dispositivos PAL o PLA pero necesita un software masavanzado y una computadora de mayor poder.

    El PAL es un dispositivo programable especialmente tilen aplicaciones donde hay un nmero relativamente grandede entradas y al mismo tiempo un numero significativo derestricciones sobre ellas. Sirven para crear trminos no im-portan lo que significa que un numero de los reglones de latabla e verdad no necesita ser implantado.[1]

    El PLA proporciona mas libertad a los diseadores graciasa que se pueden hacer las conexiones tanto de los arreglos decompuertas AND como los de compuertas OR .[1]

    Ademas del manejo de conexiones y ruteo, se deben consi-derar problemas trmicos como los puntos calientes. El progra-ma del diseador se puede ingresar en forma booleana,comose describi, o mediante una tabla de estados. Otro mtodocomn de programacin es la captura esquemtica . Aqu,el diseador crea el diagrama lgico en el monitor de unacomputadora mediante el llamado de los componentes de unabiblioteca de software y conectndolos como se desee.

    Se cuenta con una buena cantidad de ayuda dentro delsoftware en la forma de rutear las pistas, algoritmos deubicacion y en macros en los que frecuentemente se tratancombinaciones usuales de compuertas(tales como registros)con nombres preestablecidos. Normalmente el usuario puedecrear sus propios macros en software.

    La programacin de un arreglo de compuertas da comoresultado un conjunto de instrucciones de computadora ge-nerados por el propio software par crear el trabajo de fotolito-grafia() necesario para formar las conexiones requeridas entretodas las compuertas en el circuito. El arreglo de compuertasse emplea con frecuencia en la implantacin de sistemascompletos en chips VLSI.[2]

    Es muy importante evaluar el desempeo del diseo antesde construirlo. Puesto que la construccin de un dispositivode prueba es muy costoso y no predice de manera precisalos retardos de tiempo debido a la diferencia en tamao, lamejor herramienta para evaluar el desempeo es la simulacin.Casi todo el software de diseo para la creacin de circuitosintegrados grandes cuentan con un paquete de simulacin elcual se puede emplear para evaluar el desempeo y prepararlas seales de prueba que se van a usar durante la produccin.

  • 2Figura 1. Arquitectura general de un PLA.[1]

    II. ARREGLOS DE COMPUERTAS PROGRAMABLES

    Se ha desarrollado un producto que es, de alguna forma,intermedio entre los PAL y los PLA, denominado arreglode compuertas programable(PGA) o arreglo de compuertasprogramable de campo (FPGA). Este arreglo, presenta unaestructura interna considerablemente menos firme que la deuna PLA, pero mucho mas solida que la del arreglo decompuertas completo.

    El FPGA, algunas veces llamado arreglo de celdas logicas(LCA), es un PLD cuya estructura no cambia con la programa-cin. En su lugar, se emplean seales electrnicas de controlpara modificar la funcin de un circuito de estructura fija.

    Los dispositivos FPGA se basan en lo que se conocecomo arreglos de compuertas, los cuales consisten en la partede la arquitectura que contiene tres elementos configurables:bloques lgicos configurables (CLB), bloques de entrada y desalida (IOB) y canales de comunicacin [2]. A diferencia delos CPLD, la densidad de los FPGA se establece en cantidadesequivalentes a cierto nmero de compuertas. Por adentro, unFPGA est formado por arreglos de bloques lgicos configura-bles (CLB), que se comunican entre ellos y con las terminalesde entrada/salida (E/S) por medio de alambrados llamadoscanales de comunicacin. Cada FPGA contiene una matriz debloques lgicos idnticos, por lo general de forma cuadrada,conectados por medio de lneas metlicas que corren verticaly horizontalmente entre cada bloque.[1][2]

    Mediante una herramienta electrnica de automatizacin dediseo, se genera una lista de conexiones tecnologa asignada.La lista de conexiones puede ser instalado en la arquitectura deFPGA real mediante un proceso denominado lugar y la ruta,por lo general realizado por el lugar propio de la compaade FPGA y el software de ruta. El usuario deber validar losmapas, lugar y la ruta a travs de los resultados de anlisis detiempos, la simulacin, y otros mtodos de verificacin. Unavez que el proceso de diseo y validacin se ha completado, elarchivo binario generado se utiliza para configurar el FPGA.Este archivo se transfiere a la FPGA/CPLD a travs de una

    interfaz en serie o a un dispositivo de memoria externa, comouna EEPROM. Las ms comunes son las HDL y VHDLVerilog aunque en un intento de reducir la complejidad en eldiseo de las HDL que se han comparado con el equivalentede las lenguas de montaje, hay movimientos para aumentar elnivel de abstraccin a travs de la introduccin de lenguajesalternativos. Lenguaje de programacin grfica de LabVIEWde National Instruments tiene un FPGA mdulo complemen-tario a disposicin de destino y hardware FPGA programa.[2]

    Con el objeto de simplificar el diseo de los sistemascomplejos en FPGAs se han creado bibliotecas de funcionescomplejas predefinidas y circuitos que se han probado yoptimizado para acelerar el proceso de diseo.

    III. CONCLUSIONES

    Los arreglos de compuertas son un conjunto de chipssin conectar la programacin del arreglo hace que lascompuertas se interconecten para crear lgica combina-cional, flip-flops, registros,contadores,memorias, etc, unavez desarrollado no se puede modificar.

    Este tipo de dispositivos requiere normalmente de unsoftware muy avanzado para la programacin y unacomputadora con una capacidad elevada para llevar acabo la ubicacin y envi de conexiones.

    Una consideracin es que los arreglos de compuertasno emplean eficientemente todos los recursos del siliciocomo suele pesar en los diseos completamente a lamedida.

    REFERENCIAS[1] Palmer, James E., and Perlman, David E.. Introduccin a los sistemas

    digitales. Mxico: McGraw-Hill Interamericana, 2010. ProQuest ebrary.Web. 13 May 2015..

    [2] D. L. Programables, EXACTAS E INGENIERIAS PLD S DISPO-SITIVOS LOGICOS PROGRAMABLES .


Top Related