O FPGA e CPLD dispositivos foram criados para obter a densidade do circuito e a velocidade de ASIC (Circuito Integrado Específico de Aplicação) dispositivos, mas com um tempo de resposta mais curto para dispositivos programáveis. A principal distinção entre um FPGA e um CPLD é que um FPGA possui mais recursos lógicos do que um CPLD, que é mais simples e possui menos interconexões. Dois fatores são considerados principalmente ao segregar o FPGA e o CPLD. A primeira é sua arquitetura e como ela implementa as diversas funções lógicas. Em segundo lugar, a tecnologia específica de semicondutores utilizada no hardware.
Neste artigo você aprenderá sobre a diferença entre CPLD e FPGA . Mas antes de discutir as diferenças, você deve conhecer o CPLD e o FPGA com suas vantagens e desvantagens.
O que é CPLD?
CPLD é uma abreviatura para 'Dispositivos lógicos programáveis complexos' . É um circuito integrado que auxilia na execução de sistemas digitais. Um CPLD é composto de blocos funcionais programáveis, e cada bloco possui macrocélulas . Os principais blocos de construção do CPLD são as macrocélulas. A E/S dos blocos funcionais é conectada através Matriz de Interconexão Global (GIM) . Esta matriz de interligação é reconfigurável porque é impossível alterar os contactos entre os blocos funcionais. Estes blocos funcionais são equivalentes a um conjunto de portas lógicas.
Lógica de 1ª ordem
É importante considerar a técnica de programação, a capacidade de I/P e as capacidades dos blocos funcionais ao projetar CPLDs. Em geral, os CPLDs são não voláteis e simples de utilizar, além de serem baratos.
Os CPLDs vêm em vários tipos de pacotes IC e famílias lógicas. A tensão de alimentação, a corrente de espera, a corrente operacional e a dissipação de energia dos CPLDs também são diferentes. Além disso, estão disponíveis com diferentes capacidades de memória e opções de suporte de memória. A memória é normalmente medida em bits ou megabits, e o suporte de memória contém ROM, RAM e RAM de porta dupla . Também inclui FIFO (primeiro a entrar, primeiro a sair) e LIFO (último a entrar, último a sair) memória, e CAM (memória endereçável de conteúdo) .
Componentes do CPLD
Existem vários componentes do CPLD. Alguns componentes principais do CPLD são os seguintes:
Em um CPLD, um bloco funcional possui um plano AND que pode aceitar entradas de blocos de E/S, blocos funcionais ou até mesmo a resposta do mesmo bloco funcional. Depois disso, os termos são adicionados ao array OR e escolhidos usando um grande multiplexador. A saída do MUX pode ser movida diretamente do bloco ou através de um flip-flop com clock. Este bloco funcional também pode ter lógica adicional, como um OR exclusivo selecionável, um sinal de reset mestre e a opção de programar a polaridade em vários estágios.
Os blocos de entrada/saída são utilizados para enviar sinais aos pinos CPLD nos níveis apropriados de tensão e corrente. Ele permite a remoção de atrasos, a redução dos requisitos de tempo de espera do dispositivo e a adição de recursos extras ao dispositivo.
A interconexão de um CPLD é uma grande matriz de chaves programáveis que direciona a transferência de sinais de uma parte do dispositivo para outra.
Ele também utiliza componentes programáveis como PROM, EPROM, EEPROM e flash EPROM.
Vantagens e desvantagens do CPLD
Existem várias vantagens e desvantagens do CPLD. Algumas principais vantagens e desvantagens do CPLD são as seguintes:
Vantagens
- É fácil de projetar.
- Possui baixo custo de desenvolvimento.
- Ajuda a reduzir a área do tabuleiro.
- Oferece alta confiabilidade.
Desvantagens
- É um dispositivo lógico programável mais complicado.
O que é FPGA?
FPGA é uma abreviatura para 'Matrizes de portas programáveis em campo' . É um dispositivo semicondutor composto por uma matriz de blocos lógicos configuráveis interligados por meio de interconexões programáveis. Após a produção, um FPGA pode ser reprogramado para atender aos requisitos. Os FPGAs atuais têm aproximadamente 330.000 blocos lógicos com 1100 E/S .
Os usuários podem utilizar o Linguagem de descrição de hardware (HDL) para projetar e configurar o circuito. Depois disso, ele pode executar uma porta simples como uma porta AND ou um sistema complicado como um processador multi-core. Salva todas as configurações na memória principal. Como resultado, uma falha de energia pode eliminar todas estas configurações.
conversão de string java para número inteiro
Componentes do FPGA
Existem vários componentes do FPGA. Alguns componentes principais do FPGA são os seguintes:
Permite a implementação de funções lógicas.
Ele permite a implementação de funções.
É utilizado para fazer conexões de chip.
Vantagens e desvantagens do FPGA
Existem várias vantagens e desvantagens do FPGA. Algumas principais vantagens e desvantagens do FPGA são as seguintes:
Vantagens
- Os ICs FPGA são amplamente acessíveis e podem ser programados rapidamente usando código HDL. Com isso, a solução é oferecida ao mercado com mais rapidez.
- No projeto FPGA, o software lida com roteamento, posicionamento e tempo. Requer menos envolvimento manual. O fluxo de projeto elimina análises demoradas e complicadas de localização e roteador, planejamento de piso e tempo.
- Os FPGAs têm a capacidade de serem programados em nível lógico. Como resultado, pode implementar um processamento de sinal mais rápido e paralelo. É um desafio para a CPU executar.
- Ao contrário do desenvolvimento ASIC, que envolve NRE (Despesas Não Recorrentes) e ferramentas caras, o desenvolvimento de FPGA é mais barato devido a ferramentas mais baratas e sem NRE.
- Os FPGAs podem ser programados em nível de software a qualquer momento. Como resultado, o IC FPGA pode ser reprogramado ou reutilizado inúmeras vezes. FPGAs também podem ser programados à distância.
Desvantagens
- O consumo de energia é maior e os programadores têm pouco controle sobre a otimização de energia no FPGA.
- FPGAs são ideais para prototipagem e produção de baixo volume. Quando o número de FPGAs a serem criados aumenta, o custo por produto também aumenta.
- A programação FPGA precisa de familiaridade com as linguagens de programação VHDL/Verilog, bem como com os fundamentos do sistema digital. A programação não é tão simples quanto a utilizada em equipamentos baseados em processador. Os engenheiros também devem aprender como usar ferramentas de simulação.
- Uma vez escolhido e empregado no projeto um FPGA, os desenvolvedores devem utilizar os recursos presentes no IC do FPGA, o que limita o tamanho e os recursos do projeto. Um FPGA adequado deve ser selecionado desde o início para evitar tal problema.
Principais diferenças entre CPLD e FPGA
Existem várias diferenças importantes entre CPLD e FPGA . Algumas das principais diferenças entre CPLD e FPGA são as seguintes:
- CPLD é uma abreviatura de Dispositivos Lógicos Complexos Programáveis. Em contraste, FPGA é uma abreviatura de Field Programmable Gate Arrays.
- Um CPLD é um circuito integrado que auxilia na execução de sistemas digitais. Em contraste, um FPGA é um circuito integrado criado principalmente para ser customizado após a fabricação por um cliente ou desenvolvedor.
- FPGAs podem incluir até 100.000 pequenos blocos lógicos. Em contraste, os CPLDs podem armazenar apenas alguns milhares de blocos lógicos.
- FPGA é apropriado para aplicativos complicados. Por outro lado, o CPLD é mais adequado para aplicativos mais simples.
- FPGA tem um maior consumo de energia. Em contraste, o CPLD tem menor consumo de energia.
- Em termos de desempenho, o FPGA oferece desempenho estável independente do roteamento interno. Em contraste, o CPLD tem um desempenho imprevisível baseado no roteamento.
- O CPLD equivale ao AMIGO . Por outro lado, o FPGA é semelhante a um Matriz de portas .
- FPGA é um chip lógico digital baseado em BATER . Em contrapartida, os CPLDs são Baseado em EEPROM .
- FPGA é classificado como grão fino. Em contraste, CPLD é grão grosso.
- O CPLD oferece mais proteção do que o FPGA porque possui memória não volátil.
- Os atrasos nos CPLDs são significativamente mais previsíveis do que nos FPGAs.
Comparação direta entre CPLD e FPGA
Aqui, você aprenderá as comparações diretas entre CPLD e FPGA. As principais diferenças entre CPLD e FPGA são as seguintes:
Características | CPLD | FPGA |
---|---|---|
Todas as formas | CPLD é uma abreviatura de Dispositivos Lógicos Complexos Programáveis. | FPGA é uma abreviatura de Field Programmable Gate Arrays. |
Definição | É um circuito integrado que auxilia na execução de sistemas digitais. | É um circuito integrado criado principalmente para ser customizado após a fabricação por um cliente ou desenvolvedor. |
Proporção de flip-flops | Possui uma taxa de flip-flop baixa que o FPGA. | Tem uma taxa de flip-flop mais alta que o CPLD. |
Densidade | Possui densidade baixa a média. | Possui densidade média a alta. |
Estrutura se assemelha | É equivalente ao PAL. | É semelhante a uma matriz Gate. |
Blocos Lógicos | Pode armazenar apenas alguns milhares de blocos lógicos. | Pode incluir até 100.000 pequenos blocos lógicos. |
Consumo de energia | Tem um maior consumo de energia. | Possui menor consumo de energia. |
Baseado em | É baseado em EEPROM. | É baseado em RAM. |
Custo | É mais barato que FPGA. | É mais caro que o CPLD. |
Arquitetura | É classificado como grão grosso. | É classificado como grão fino. |
Formulários | É mais adequado para aplicativos mais simples. | É apropriado para aplicativos complicados. |
Segurança | Ele fornece mais segurança que o FPGA. | Ele fornece menos segurança que o CPLD. |
Desempenho | Seu desempenho depende do roteamento. | Ele fornece desempenho estável independente do roteamento interno. |
Volatilidade | Os dados não serão perdidos se a energia for desligada. | Se a energia estiver desligada, os dados poderão ser perdidos. |
Conclusão
Os FPGAs oferecem maior complexidade e flexibilidade e recursos como RAM no chip, gerenciamento de clock, operações DSP, multiplicadores, etc. Por outro lado, o CPLD consome menos energia que o FPGA, e os dispositivos FPGA são mais propensos a serem usados com frequência em projetos onde as alterações são aplicadas. Em contraste, os dispositivos CPLD são usados quando uma lógica de colagem simples é necessária e quando circuitos instantâneos são necessários para o aplicativo porque o FPGA funciona inicialmente em uma velocidade mais lenta devido ao carregamento da configuração da ROM externa.