Skip to main content

O que é um FPGA?

Um arranjo de portas programável em campo (FPGA) é um chip lógico de computador que não é conectado pelo fabricante. Isso significa que pode ser programado após a compra. Existem milhares de opções de personalização disponíveis em um FPGA típico. Essas entidades programáveis ​​são os portões, também conhecidos como arquivos de blocos lógicos ou de tabela de consulta (LUT).

Como o número de blocos lógicos em um FPGA é muito numeroso para ser criado manualmente, eles são gerados por meio de um programa de software. Os programadores podem escolher entre uma variedade de categorias para personalizá-las para um sistema específico. Eles podem usar seus próprios programas para interagir com o programa no chip FPGA e fazer as alterações.

Ao programar um FPGA, vários elementos interconectados podem ser usados ​​para configurar os blocos lógicos conforme necessário. O conteúdo das LUTs varia, dependendo da maneira como foram programadas. Alguns executam funções únicas, enquanto outros são capazes de uma matriz mais complexa de tarefas. Alguns FPGAs também podem conter elementos analógicos e digitais. Esses chips geralmente também têm a capacidade de permitir que esses elementos funcionem juntos.

Os LUTs são conectados por uma rede de fios. Dependendo da função necessária, os fios podem passar pelos arquivos em uma linha reta ou em uma rede mais complexa de conexões diagonais. Um LUT pode ser conectado a vários outros arquivos através de várias conexões de fio. Os arquivos também podem ser conectados por uma série de fios chamados de transporte ou cadeias de roteamento dedicadas, que ajudam a mover apenas certos tipos de informações para que possam ser processadas mais rapidamente.

Para programar uma função lógica com um FPGA, ele deve ser descrito primeiro em arquivos de texto ou visuais. Em seguida, as informações são baixadas no software que acompanha o FPGA. Quando esse processo é concluído, a função geralmente está operacional.

Embora um FPGA seja mais caro que um chip lógico conectado, ele pode ajudar a economizar recursos à medida que os usuários podem programar para atender a seus requisitos específicos. Isso pode reduzir a necessidade de trabalho extra e o tempo adicional necessário para acomodar um chip que não é personalizado. Um chip programável também pode ser mais fácil de usar, pois suas funções de usuário, como menus, podem ser personalizadas.

Os circuitos de matriz de portas programáveis ​​em campo são uma alternativa ao circuito integrado específico da aplicação (ASIC). Esses circuitos são conectados antes da saída da fábrica. Eles são componentes no nível da placa, em oposição aos elementos de nível da porta programáveis ​​em campo.