Agregar favorito Set Homepage
posición:casa >> noticia >> electrón

produtos Categoría

produtos Etiquetas

sitios Fmuser

Introdución a FPGA | Estrutura, compoñentes, aplicacións

Date:2021/10/18 21:55:31 Hits:
Neste artigo, veremos un tema especial chamado Field Programmable Gate Arrays ou simplemente FPGA. Exploraremos o concepto de dispositivos lóxicos programables e diferentes tipos de dispositivos programables de campo (FPD) como PLA, PAL, CPLD, FPGA. Ademais, veremos a arquitectura dun dispositivo FPGA típico xunto coas súas vantaxes. Esquema IntroduciónUnha breve nota sobre PLD (dispositivo lóxico programable)Diferentes tipos de PLDMatrices lóxicas programables (PLA)Lóxicas de matriz programables (PAL)Complexo de lóxica de matriz xenérica (GAL) Dispositivos lóxicos programables (CPLD) Arrays de portas programables de campo (FPGA) ¿Que é un FPGA? Compoñentes dun FPGABloque lóxicoRoutingTecnoloxías de programación FPGASRAMEEPROM / FlashAnti-FuseAplicaciónsIntrodución As matrices de portas programables de campo (FPGA) son CI dixitais (circuítos integrados de hardware) unha lóxica dixital personalizada segundo os seus requisitos. O termo "programable en campo" implica que a lóxica dixital do IC non está fixada durante a súa fabricación (ou fabricación), senón que é programada polo usuario final (deseñador). Bloques lóxicos (ou programables) e interconexións configurables entre estes bloques. Esta lóxica configurable e as interconexións (enrutamento) dos FPGA fai que sexan de propósito xeral e flexibles pero, ao mesmo tempo, tamén os fai lentos e con fame de enerxía en comparación cun ASIC de calibre similar con celas estándar. Hai máis de tres décadas desde que a introdución de FPGA no mercado e, neste longo período, sufriron un severo avance tecnolóxico e gañaron unha popularidade en continuo crecemento. Unha breve nota sobre PLD (Dispositivo lóxico programable)Antes de mergullarme no tema principal, quero discutir brevemente o concepto de dispositivos lóxicos programables. Entón, que é un PLD. É un IC que contén un gran número de portas lóxicas e flip-flops que o usuario pode configurar para implementar unha gran variedade de funcións. O máis sinxelo dos dispositivos lóxicos programables consiste nunha matriz de portas E e OU e a lóxica destas. As portas e as súas interconexións pódense configurar mediante un proceso de programación. Os PLD son especialmente útiles cando un enxeñeiro quere implementar unha lóxica personalizada e está restrinxido polos circuítos integrados preconfigurados. Os PLD proporcionan unha forma de implementar un circuíto dixital personalizado mediante o poder da configuración de hardware en lugar de implementalo mediante un software. Diferentes tipos de PLDBasicamente, os PLD pódense clasificar en tres tipos. Son: Dispositivos lóxicos programables simples (SPLD) Dispositivos lóxicos programables complexos (CPLD) Arrays de portas programables de campo (FPGA) Os dispositivos lóxicos programables simples divídense ademais en: Matriz lóxica programable (PLA) Lóxica de matriz programable (PAL) Lóxica de matriz xenérica ( GAL) Vexamos agora algúns detalles básicos sobre todos estes PLD. Array lóxico programable (PLA)Un PLA consta dun plano de porta AND con interconexións programables e un plano de porta OR con interconexións programables. O seguinte é un PLA sinxelo de catro entradas: catro saídas con portas AND e OU. Calquera entrada pódese conectar a calquera porta AND conectando as liñas de interconexión horizontais e verticais. As saídas de diferentes portas AND pódense aplicar entón a calquera das portas OU con interconexións programables. Lóxica de matriz programable (PAL) Un PAL é semellante ao PLA, pero a diferenza é que en PAL, só o plano de porta AND é programable mentres que o O plano de porta OR está fixado durante a fabricación. Aínda que os PAL son menos flexibles que os PLA, eliminan os atrasos de tempo asociados ás portas OR programables. En canto á arquitectura, un GAL é semellante a un PAL pero a diferenza reside na estrutura programable. Os PAL usan PROM, que se pode programar unha soa vez, mentres que GAL usa EEPROM, que se pode reprogramar.  Dispositivos lóxicos programables complexos (CPLD) A partir dos dispositivos SPLD, obtemos CPLD. Desenvólvese enriba de dispositivos SPLD para crear deseños máis grandes e complexos. Un CPLD consta de bloques lóxicos numéricos (ou bloques funcionais), que internamente consiste nun PAL ou PAL xunto cunha Macrocelda. A macrocélula consta de calquera circuíto adicional e control de polaridade do sinal para proporcionar o sinal verdadeiro ou o seu complemento.  Field Programmable Gate Arrays (FPGA) En canto á complexidade, os CPLD son moito máis complexos que os SPLD. Pero as FPGA son aínda máis complexas que as CPLD. A arquitectura dun FPGA é completamente diferente, xa que consiste en células lóxicas programables, interconexións programables e bloques de E/S programables. Que é unha FPGA?Field Programmable Gate Arrays ou FPGA, en definitiva, son dispositivos de silicio prefabricados que consisten nunha matriz de lóxica reconfigurable. circuítos e interconexións programables dispostas nunha matriz bidimensional. As celas lóxicas programables pódense configurar para realizar calquera función dixital e as interconexións programables (ou interruptores) proporcionan as conexións entre diferentes celas lóxicas. Usando un FPGA, pode implementar calquera deseño personalizado especificando a lóxica ou función de cada bloque lóxico e configuración. a conexión de cada interruptor programable. Dado que este proceso de deseñar un circuíto personalizado realízase no campo e non nunha fábrica, o dispositivo coñécese como "programable en campo". A seguinte imaxe mostra unha estrutura interna típica dunha FPGA nun sentido moi amplo. Como podes ver , o núcleo da FPGA está formado por celas lóxicas configurables e interconexións programables. Estes están rodeados por unha serie de bloques de E/S programables, que se usan para falar co mundo externo. Compoñentes dunha FPGA Vexamos agora a estrutura dunha FPGA. Normalmente, un FPGA consta de tres compoñentes básicos. Son: Células lóxicas programables (ou bloques lóxicos) - responsables de implementar as funcións lóxicas básicas. Enrutamento programable - responsables de conectar os bloques lóxicos. Bloques IO - que están conectados aos bloques lóxicos a través do enrutamento e axudan a facer conexións externas. Bloque lóxicoO bloque lóxico dos FPGA baseados en Xilinx chámase bloques lóxicos configurables ou CLB, mentres que as estruturas similares dos FPGA baseados en Altera chámanse bloques lóxicos ou LAB. Usemos o termo CLB para esta discusión. Un CLB é o compoñente básico dunha FPGA, que proporciona tanto a lóxica como as funcionalidades de almacenamento. O bloque lóxico básico pode ser calquera cousa como un transistor, unha porta NAND, multiplexor, táboa de busca (LUT), unha estrutura tipo PAL ou incluso un procesador. Tanto Xilinx como Altera usan bloques lóxicos baseados na táboa de consulta (LUT) para implementar a lóxica e as funcionalidades de almacenamento. Un bloque lóxico pode estar formado por un único elemento lóxico básico ou un conxunto de elementos lóxicos básicos interconectados, onde se Elemento lóxico básico é unha combinación dunha táboa de busca (que á súa vez está formada por SRAM e multiplexores) e un flip-flop. Unha LUT con entradas 'n' consta de 2n bits de configuración, que son implementados por células SRAM. Usando estes bits SRAM 2n, a LUT pódese configurar para implementar calquera función lóxica. EnrutamentoSe a funcionalidade computacional é proporcionada polos bloques lóxicos, entón a rede de enrutamento programable é responsable da interconexión destes bloques lóxicos. A rede de enrutamento proporciona interconexións entre un bloque lóxico a outro, así como entre o bloque lóxico e o bloque de E/S para implementar completamente un circuíto personalizado. Basicamente, a rede de enrutamento consiste en conectar cables con interruptores programables, que se poden configurar mediante calquera dos tecnoloxías de programación. Hai basicamente dous tipos de arquitecturas de enrutamento. Son: Enrutamento estilo illa (tamén coñecido como enrutamento en malla) Enrutamento xerárquicoNa arquitectura de enrutamento estilo illa, os bloques lóxicos están dispostos nunha matriz bidimensional e están interconectados mediante unha rede de enrutamento programable. Este tipo de enrutamento úsase amplamente nas FPGA comerciais. Moitos bloques lóxicos están confinados a un conxunto local de conexións e a arquitectura de enrutamento xerárquico fai uso desta función dividindo os bloques lóxicos en varios grupos ou clústeres. Se os bloques lóxicos residen no mesmo clúster, entón o enrutamento xerárquico conéctaos nun nivel baixo de xerarquía. Se os bloques lóxicos residen en clústeres diferentes, entón o cableado realízase nun nivel superior de xerarquía. FPGA Programming TechnologiesFalamos sobre a arquitectura reprogramable das FPGA, pero agora vexamos algunhas das técnicas de programación máis utilizadas que son responsables de tal arquitectura reconfigurable. A continuación móstranse tres das coñecidas tecnoloxías de programación utilizadas nas FPGA.SRAMEEPROM / FlashAnti-FuseOther tecnoloxías inclúen EPROM e Fusible Link pero utilízanse en CPLD e outros PLD pero non en FPGA. Polo tanto, imos limitar a discusión ás tecnoloxías de programación relacionadas con FPGA.SRAMSabemos que hai dous tipos de RAM de semicondutores chamados SRAM e DRAM. SRAM é a abreviatura de RAM estática mentres que DRAM é a abreviatura de RAM dinámica. A SRAM está deseñada usando transistores e o termo estático significa que o valor cargado nunha célula de memoria SRAM básica permanecerá o mesmo ata que se cambie deliberadamente ou se desconecte a alimentación. Na seguinte imaxe móstrase unha célula SRAM de 6 transistores típica para almacenar 1 bit. .Isto contrasta coa DRAM, que consiste nunha combinación dun transistor e un capacitor. O termo Dinámico refírese ao feito de que o valor cargado na célula de memoria DRAM básica é válido ata que haxa carga no capacitor. Como o capacitor perde a súa carga co paso do tempo, a célula de memoria ten que ser recargada periodicamente para manter a carga. Isto tamén se coñece como refreshing.Moitos vendedores de FPGA implementan celas de memoria estáticas en FPGA baseadas en SRAM para a programación. As FPGA baseadas en SRAM utilízanse para programar tanto as células lóxicas como as interconexións e volvéronse bastante predominantes debido á súa reprogramabilidade e ao uso da tecnoloxía CMOS, coñecida polo seu baixo consumo de enerxía dinámica, a súa alta velocidade e unha maior integración.EEPROM / FlashA alternativa próxima á tecnoloxía de programación baseada en SRAM baséase en tecnoloxías de programación EEPROM ou Flash. A principal vantaxe da programación baseada en flash é a súa natureza non volátil. Aínda que o flash admite a reprogramabilidade, o número de veces que se pode facer é moi pequeno en comparación cunha tecnoloxía SRAM. Anti-FuseA tecnoloxía de programación anti-fusible é unha técnica antiga de producir dispositivos programables únicos. Impléntanse mediante un enlace denominado antifusible, que no seu estado non programado ten unha resistencia moi elevada e pode considerarse un circuíto aberto.Ao programar, entrégase unha alta tensión e corrente á entrada. Como resultado, o antifusible, que inicialmente ten forma de silicio amorfo (basicamente un illante de moi alta resistencia) que une dúas pistas metálicas, cobra vida converténdose nun polisilicio condutor. Cando se compara coas outras dúas tecnoloxías, o antifusible. un ocupa a menor cantidade de espazo pero vén só como opción programable dunha soa vez.  AplicaciónsNos primeiros anos da introdución das FPGA, adoitaban utilizarse para implementar máquinas de estado complexas pequenas e medianas e tarefas de procesamento de datos en pequenos datos. A medida que a súa complexidade e capacidade aumentaron co paso dos anos, incorporáronse en varias aplicacións industriais, de consumo e de automoción. Inicialmente, os FPGA proporcionaban unha opción sinxela para prototipar deseños ASIC xa que se poden reconfigurar facilmente para probar e probar varias variacións do hardware antes. finalizando o deseño principal. Pero a súa capacidade de funcionar como un produto final cun tempo de comercialización relativamente curto e pequenos custos de implementación, implementáronse como competidores directos para algúns ASIC. Os FPGA modernos con multiplicadores, enrutamento complexo e memoria RAM no chip poden facilitar as operacións DSP. que antes eran posibles en procesadores de sinais dixitais dedicados. Co custo das FPGA que baixan, están recibindo serios candidatos a aplicacións de control integrado. Unha FPGA pódese usar para implementar un procesador de núcleo suave de calquera microcontrolador xunto con capacidades de E/S personalizadas. Publicacións relacionadas:Introdución á tecnoloxía ASIC | Diferentes tipos,... Que é a automatización industrial?

Deixar unha mensaxe 

nome *
email *
teléfono
dirección
código Ver o código de verificación? Prema refrescar!
mensaxe
 

Lista de mensaxes

Comentarios Loading ...
casa| Sobre nós| produtos| noticia| descargar| apoio| Suxestións| Contacto| servizo

Contacto: Zoey Zhang Web: www.fmuser.net

Whatsapp / Wechat: + 86 183 1924 4009

Skype: tomleequan Correo electrónico: [protexido por correo electrónico] 

Facebook: FMUSERBROADCAST Youtube: FMUSER ZOEY

Enderezo en inglés: Room305, HuiLanGe, No.273 HuangPu Road West, TianHe District., GuangZhou, China, 510620 Enderezo en chinés: 广州市天河区黄埔大道西273号惠兿305号惠兰(E)3